/* Verified hard-coat range. A visible form follows the LINE contact route. */
.social-icon{width:28px;height:28px;display:block;flex:0 0 auto;object-fit:contain}
.social-symbol{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:#fff;border-radius:8px;flex:0 0 auto}
.coating-story{grid-template-columns:.95fr 1.25fr;gap:6%}
.coating-copy h2{font-size:clamp(28px,2.5vw,39px);line-height:1.85;letter-spacing:.02em}
.coating-finished img{height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center}
.coating-copy .coating-fact{max-width:390px}
.price-editorial .price-menu-layout{align-items:center}
.price-still img{height:auto;aspect-ratio:4/5;object-fit:cover}
.price-editorial .price-menu-row{padding:18px 0 19px}
.price-editorial .price-menu-row h3{margin-top:10px}
.price-editorial .other-items{font-size:12px;line-height:2.1;padding:21px 0 0;border-top:1px solid #45607390;color:#b4c7d3}
.price-editorial .price-note{margin-top:18px;line-height:1.9}
.journal-heading .under-link{gap:12px;align-items:center}
.journal-heading .under-link .social-icon{width:23px;height:23px}
.journal-heading .under-link>span:last-child{margin-left:16px}
.contact-header{margin-bottom:30px}
.contact-shortcuts{display:flex;gap:25px;margin:0 0 34px}
.contact-shortcuts a{display:flex;align-items:center;gap:12px;min-height:49px;font-size:13px;color:#dce8ed;border-bottom:1px solid #6b8596;padding:5px 2px}
.contact-shortcuts a .social-icon{width:25px;height:25px}
.contact-shortcuts a>span:last-child{margin-left:26px}
.contact-shortcuts a:hover{border-color:#fff;color:#fff}
.channel-heading{display:flex;align-items:center;gap:15px;margin:14px 0 18px}
.line-reservation-copy .channel-heading h3{margin:0;font-size:clamp(18px,1.55vw,23px);line-height:1.75;letter-spacing:.015em}
.line-reservation-copy p{font-size:13px;line-height:2.1;max-width:520px}
.line-reservation{grid-template-columns:1.2fr 1fr;gap:6%;padding:30px 0}
.contact-service .line-button{justify-content:flex-start;gap:14px;background:#f0f4f1;color:#173c37;padding:19px 22px;min-height:68px}
.contact-service .line-button>span:last-child{margin-left:auto}
.contact-service .line-button:hover{background:#fff}
.contact-service .line-button .social-icon{width:30px;height:30px}
.contact-form-panel{scroll-margin-top:35px;margin-top:46px}
.contact-service .form-wrap{background:#f2f5f3;color:#203c4e;max-width:none;padding:46px 6% 50px}
.contact-service .form-heading{border-color:#c8d4d9;padding-bottom:30px;margin-bottom:31px;gap:30px;align-items:center}
.contact-service .form-heading h3{font-family:GPowerMincho,serif;font-size:clamp(25px,2vw,31px);font-weight:400;line-height:1.6;letter-spacing:.025em}
.contact-service .form-heading .form-eyebrow{font:9px Arial,sans-serif;color:#658192;letter-spacing:.17em;margin:0 0 12px}
.contact-service .form-heading .preview-notice{font-size:11px;color:#647b89;line-height:1.9;flex:0 0 auto;margin:0}
.form-heading .preview-notice>span{display:inline-block;font-size:10px;background:#e0e8e7;color:#4e6b75;padding:1px 8px;margin-bottom:6px}
.contact-service .form-grid{gap:25px 32px;margin-bottom:27px}
.contact-service .form-wrap label{font-size:14px;line-height:1.8}
.contact-service .form-wrap label>small{font-size:10px;background:#dce7e8;color:#416575;padding:0 6px;margin-left:8px}
.contact-service .form-wrap label>small.optional{background:none;color:#708793}
.contact-service .form-wrap input,.contact-service .form-wrap select,.contact-service .form-wrap textarea{background:#fff;color:#243e4e;border:1px solid #c7d5db;font-size:16px;padding:16px;box-shadow:none;border-radius:0;width:100%}
.contact-service .form-wrap input::placeholder,.contact-service .form-wrap textarea::placeholder{color:#7c909c;opacity:1}
.contact-service .form-wrap input:focus,.contact-service .form-wrap textarea:focus,.contact-service .form-wrap select:focus{outline:2px solid #567c92;outline-offset:2px}
.contact-service .form-wrap textarea{min-height:155px;line-height:1.9}
.contact-service .confirm-button{background:#163b51;color:#fff;font-size:15px;padding:18px 27px;width:min(420px,100%);margin-top:31px;min-height:60px}
.contact-service .confirm-button:hover{background:#24566d}
.contact-service #inquiry-confirm>h3{font-size:24px}
.contact-service #inquiry-confirm .preview-notice{color:#5e7888;font-size:12px}
.contact-service #inquiry-values>div{border-color:#c8d4d9}
.contact-service #inquiry-values dt{color:#607e8e}
.contact-service #inquiry-values dd{color:#203c4e}
.contact-service .confirm-actions button{border:1px solid #476e83;color:#24485c;background:#fff;min-height:49px}
.contact-service .confirm-actions button[disabled]{border-color:#c7d1d4;color:#81949f;background:#e3e9e9}
.footer-social>a{display:grid;grid-template-columns:42px 1fr 16px;align-items:center;gap:14px;max-width:280px;min-height:80px;padding:17px 0}
.footer-social>a>span{float:none}
.footer-social>a>.social-label{font-size:14px;letter-spacing:.025em;min-width:0}
.footer-social>a>.social-arrow{font-size:17px;color:#b8cbd5}
.footer-social small{font-size:10px;line-height:1.65;margin-top:7px;letter-spacing:0}
.footer-social .social-icon{width:28px;height:28px}
.footer-social>a:hover .social-label{color:#fff}
@media(max-width:1100px){
 .coating-story{grid-template-columns:1fr 1.15fr;gap:5%}.coating-copy h2{font-size:30px}.coating-lead{font-size:17px}.coating-finished img{aspect-ratio:3/2;object-fit:cover;background:none}
 .price-editorial .price-menu-row h3{font-size:15px}.price-editorial .price-menu-row{padding:15px 0 17px}.price-editorial .price-menu-row .menu-amount{font-size:36px}.price-still img{aspect-ratio:3/4}
 .footer-grid{grid-template-columns:1.3fr 1fr 1.1fr;gap:5%}.footer-social>a{gap:11px;grid-template-columns:36px 1fr 12px}.footer-social .social-symbol{width:36px;height:36px}.footer-social .social-icon{width:25px;height:25px}.footer-social>a>.social-label{font-size:13px}.footer-social small{font-size:9px}
}
@media(max-width:850px){
 .line-reservation{display:block}.line-reservation-action{max-width:100%;margin-top:25px}.line-reservation-copy .channel-heading h3{font-size:22px}.line-reservation-copy p{max-width:none}
 .footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-social>a{max-width:270px}
 .contact-service .form-heading{display:block}.contact-service .form-heading .preview-notice{margin-top:16px}
}
@media(max-width:700px){
 .coating-story{display:flex;gap:26px}.coating-copy h2{font-size:29px;margin-bottom:21px}.coating-finished{margin-left:-8.14%;margin-right:-8.14%}.coating-finished img{aspect-ratio:3/2;background:none;object-fit:cover;height:auto}
 .price-still img{aspect-ratio:4/5;max-height:none;margin-bottom:30px}.price-editorial .price-menu-row{padding:21px 0 23px}.price-editorial .price-menu-row h3{font-size:17px}.price-editorial .price-menu-row .menu-amount{font-size:40px}.price-editorial .other-items{font-size:11px}.price-editorial .other-items br{display:none}
 .contact-header{margin-bottom:23px}.contact-shortcuts{gap:18px;margin-bottom:25px;align-items:stretch}.contact-shortcuts a{font-size:11px;gap:6px;line-height:1.8}.contact-shortcuts a>span:last-child{margin-left:5px}.contact-shortcuts a .social-icon{width:22px;height:22px}
 .channel-heading{gap:12px;margin:13px 0 18px}.channel-heading .social-symbol{width:38px;height:38px}.channel-heading .social-icon{width:26px;height:26px}.line-reservation-copy .channel-heading h3{font-size:18px;letter-spacing:0;line-height:1.75}.line-reservation-copy p{font-size:13px}.line-reservation{padding:25px 0}.contact-service .line-button{font-size:14px;min-height:65px;gap:13px;padding:17px 19px}
 .contact-form-panel{margin-top:34px;scroll-margin-top:24px}.contact-service .form-wrap{margin-left:-8.14%;margin-right:-8.14%;padding:32px 7% 37px}.contact-service .form-heading{padding-bottom:25px;margin-bottom:26px}.contact-service .form-heading h3{font-size:26px}.contact-service .form-heading .form-eyebrow{font-size:9px;margin-bottom:10px}.contact-service .form-heading .preview-notice{font-size:11px;line-height:1.9;margin-top:15px}.contact-service .form-grid>label+label{margin-top:23px}.contact-service .form-wrap label{font-size:13px}.contact-service .form-wrap input,.contact-service .form-wrap select,.contact-service .form-wrap textarea{padding:14px 12px}.contact-service .form-wrap textarea{min-height:185px}.contact-service .confirm-button{font-size:14px;width:100%;min-height:58px}
 .footer-grid{gap:32px 18px;grid-template-columns:1fr 1fr}.footer-social>a{grid-template-columns:30px 1fr;gap:10px;min-height:79px}.footer-social .social-symbol{width:30px;height:30px;border-radius:6px}.footer-social .social-icon{width:21px;height:21px}.footer-social>a>.social-label{font-size:12px}.footer-social>a>.social-arrow{display:none}.footer-social small{font-size:9px;line-height:1.8;margin-top:6px}.footer-identity>p:not(.footer-store-name){font-size:11px;line-height:2}
}
@media(max-width:370px){.contact-shortcuts{gap:12px}.contact-shortcuts a{font-size:10px}.line-reservation-copy .channel-heading h3{font-size:17px}.coating-copy h2{font-size:27px}.contact-service .form-heading h3{font-size:24px}.item-lines h3{font-size:14px}}

/* 本公開 2026-09-15: 電話導線・送信状態 */
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.contact-shortcuts a .tel-number{display:block;font-size:.8em;letter-spacing:.04em;opacity:.85}
.footer-tel{display:block;margin:8px 0 6px;color:inherit;text-decoration:none;font-size:14px;letter-spacing:.06em}
.footer-tel:hover{text-decoration:underline}
.form-status{font-size:13px;color:#a33;line-height:1.8;margin:0}
.confirm-note{font-size:13px;color:#5e7888;margin:8px 0 0}
.contact-shortcuts{flex-wrap:wrap}
