@charset "utf-8";

/*====================================================================
  parts.css - 株式会社東洋ケミカル コーポレートサイト
  インラインstyle属性から移設した各種パーツ・ユーティリティクラス
  （旧デザイン期の未使用テンプレートは撤去し、現行サイトの実装内容に
    合わせて再構成）
====================================================================*/

/* ================================================================
   インラインstyle属性からの移設クラス（東洋ケミカル本サイト）
================================================================ */
/* -- 共通画像 -- */
.logoImgDefault { max-width: 100% !important; height: auto !important; display: block !important; }
.logoImgSp { height: 26px !important; width: auto !important; display: block !important; }
.logoImgFooter { max-width: 180px !important; height: auto !important; filter: brightness(0) invert(1) !important; }

/* -- レイアウト系一回性クラス -- */
.jcCenter { justify-content: center !important; }
.posRelZ2 { position: relative !important; z-index: 2 !important; }
.posRelZ2Mt48 { position: relative !important; z-index: 2 !important; margin-top: 48px !important; }
.mt28o { margin-top: 28px !important; }
.mb48c { margin-bottom: 48px !important; }
.mb36c { margin-bottom: 36px !important; }
.mb08w { margin-bottom: 8px !important; }

/* -- 背景画像（ページ固有） -- */
.pgHeroBgF01 { background-image: url('../../f-index/f_01.jpg') !important; }
.pgHeroBgP09 { background-image: url('../../f-optical/p_09.jpg') !important; }
.pgHeroBgC02 { background-image: url('../../f-index/c_02.jpg') !important; }

/* -- テキスト系 -- */
.txtCompanyEn { font-family: var(--fen) !important; font-size: 1.2rem !important; color: #999 !important; letter-spacing: .08em !important; }
.txtOfficeLabel { font-size: 1.2rem !important; letter-spacing: .08em !important; color: var(--gy) !important; font-family: var(--fen) !important; }
.txtAddressBlock { font-size: 1.4rem !important; line-height: 2 !important; color: #555 !important; margin-bottom: 32px !important; }
.txtFaint40sm { color: rgba(255,255,255,.4) !important; font-size: 1.2rem !important; }
.txtFaint15 { color: rgba(255,255,255,.15) !important; }
.txtAccent { color: var(--ac) !important; }
.txtAccentFaint { color: rgba(200,168,75,.7) !important; }
.txtWhite { color: #fff !important; }
.txtSubGy4 { font-size: 1.4rem !important; color: #999 !important; margin-bottom: 4px !important; }
.bgAccent { background: var(--ac) !important; }

/* -- リンク系 -- */
.linkPdf { color: var(--ac) !important; font-size: 1.2rem !important; letter-spacing: .04em !important; }
.linkAccent { color: var(--ac) !important; }
.linkAccentBold { color: var(--ac) !important; font-weight: 600 !important; }

/* -- お問い合わせページ（漂うパーティクル） -- */
.ctParticle1 { width: 8px !important; height: 8px !important; left: 15% !important; animation-duration: 9s !important; animation-delay: 0s !important; }
.ctParticle2 { width: 5px !important; height: 5px !important; left: 35% !important; animation-duration: 13s !important; animation-delay: 2s !important; }
.ctParticle3 { width: 10px !important; height: 10px !important; left: 55% !important; animation-duration: 8s !important; animation-delay: 4s !important; }
.ctParticle4 { width: 4px !important; height: 4px !important; left: 72% !important; animation-duration: 11s !important; animation-delay: 1s !important; }
.ctParticle5 { width: 7px !important; height: 7px !important; left: 88% !important; animation-duration: 14s !important; animation-delay: 3s !important; }
.ctFaxNote { margin-top: 6px !important; font-size: 1.2rem !important; color: rgba(255,255,255,.4) !important; }
.ctFormH2 { font-family: var(--fen) !important; font-weight: 300 !important; font-size: clamp(1.8rem,2.5vw,2.6rem) !important; letter-spacing: .06em !important; color: #e0e4f0 !important; margin-bottom: 40px !important; }
.ctFormGrid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 0 32px !important; }
.fLabelAdj { top: 2px !important; font-size: 1.1rem !important; color: var(--ac) !important; }
.ctTextareaTall { min-height: 140px !important; }

/* -- 光学部品ページ 国内調達フロー図（グリッド配置） -- */
.gc3r1 { grid-column: 3 !important; grid-row: 1 !important; }
.gc3r2 { grid-column: 3 !important; grid-row: 2 !important; }
.gc1r3 { grid-column: 1 !important; grid-row: 3 !important; }
.gc2r3 { grid-column: 2 !important; grid-row: 3 !important; }
.gc3r3 { grid-column: 3 !important; grid-row: 3 !important; }
.gc4r3 { grid-column: 4 !important; grid-row: 3 !important; }
.gc5r3 { grid-column: 5 !important; grid-row: 3 !important; }

/* -- プライバシーポリシーページ -- */
.pvNoteBox { margin-top: 20px !important; padding: 24px 28px !important; background: #131926 !important; font-size: 1.35rem !important; line-height: 2.2 !important; }

/* -- スクロール演出の遅延（transition-delay）ユーティリティ -- */
.delay05 { transition-delay: .05s !important; }
.delay08 { transition-delay: .08s !important; }
.delay10 { transition-delay: .1s !important; }
.delay12 { transition-delay: .12s !important; }
.delay15 { transition-delay: .15s !important; }
.delay17 { transition-delay: .17s !important; }
.delay20 { transition-delay: .2s !important; }
.delay21 { transition-delay: .21s !important; }
.delay25 { transition-delay: .25s !important; }
.delay30 { transition-delay: .3s !important; }
.delay35 { transition-delay: .35s !important; }
.delay39 { transition-delay: .39s !important; }
.delay40 { transition-delay: .4s !important; }
.delay44 { transition-delay: .44s !important; }
.delay48 { transition-delay: .48s !important; }
.delay53 { transition-delay: .53s !important; }
.delay57 { transition-delay: .57s !important; }
.delay62 { transition-delay: .62s !important; }
