@charset "utf-8";
/* ==========================================================
   sub.css : SEO改修で追加したページ・セクション用スタイル
   既存の style.css / top.css の後に読み込む
   ========================================================== */

img{height:auto;max-width:100%;}
.item img{width:35px;}

/* ---- header ---- */
header .section__in .hlogo{width:24.2%;max-width:290px;line-height:0;}
header .section__in .hlogo a{display:block;}
@media screen and (max-width:800px){
  header .section__in .hlogo{width:160px;max-width:290px;}
}
@media screen and (min-width:801px){
  header .section__in div.menulistin{width:78%;max-width:940px;}
  header .section__in ul{font-size:clamp(11px,1.25vw,14px);}
  header .section__in ul a{padding:0 .7em;}
  header .section__in ul a[aria-current="page"]{color:#8A6F08;font-weight:700;}
}
@media screen and (max-width:800px){
  header .section__in ul a[aria-current="page"]{color:#8A6F08;font-weight:700;}
  header .section__in div.menulistin.active{overflow-y:auto;}
}

/* ---- top h1 (section02) ---- */
#section02 .section__in h1{text-align:center;margin-bottom:40px;font-weight:500;color:#8A6F08;}
@media screen and (max-width:800px){
  #section02 .section__in h1{margin-bottom:25px;}
}

/* ---- breadcrumb ---- */
.bc{background:#fff;border-bottom:1px solid #E0DDD8;}
.bc ol{width:92%;max-width:1100px;margin:0 auto;padding:10px 0;display:flex;flex-wrap:wrap;font-size:12px;line-height:1.4;list-style:none;}
.bc li{list-style:none;}
.bc li+li::before{content:"›";margin:0 .6em;color:#999;}
.bc a{color:#8A6F08;text-decoration:underline;}

/* ---- sub hero ---- */
.sub-hero{background:#F5F4F0;padding:60px 0 54px;text-align:center;}
.sub-hero .in{width:90%;max-width:900px;margin:0 auto;}
.sub-hero .en{font-size:13px;letter-spacing:.2em;color:#8A6F08;margin-bottom:10px;}
.sub-hero h1{font-size:34px;line-height:1.4;font-weight:500;color:#8A6F08;}
.sub-hero .lead{margin-top:20px;font-size:16px;line-height:1.9;}
@media screen and (max-width:800px){
  .sub-hero{padding:34px 0 30px;}
  .sub-hero h1{font-size:6vw;}
  .sub-hero .lead{font-size:3.6vw;margin-top:14px;text-align:left;}
}

/* ---- main content ---- */
.sub-main{background:#fff;padding:70px 0 40px;}
.sub-main .in{width:90%;max-width:960px;margin:0 auto;}
.sub-sec{margin-bottom:70px;}
.sub-sec h2,.sec-h2{font-size:28px;line-height:1.45;font-weight:500;color:#8A6F08;border-left:6px solid #8A6F08;padding-left:.6em;margin-bottom:26px;}
.sub-sec h3{font-size:20px;line-height:1.5;font-weight:700;margin:34px 0 12px;color:#1A1A1A;}
.sub-sec p{font-size:16px;line-height:1.95;margin-bottom:1.2em;}
.sub-sec p.small,.small{font-size:13px;color:#666;}
.sub-sec figure{margin:26px 0;}
.sub-sec figure img{border-radius:6px;}
.sub-sec figcaption{font-size:13px;color:#666;margin-top:8px;line-height:1.6;}
.sub-sec a.tx,.tx{color:#7A6208;text-decoration:underline;}
.sub-sec a.tx:hover{opacity:.7;}
@media screen and (max-width:800px){
  .sub-main{padding:40px 0 20px;}
  .sub-sec{margin-bottom:46px;}
  .sub-sec h2,.sec-h2{font-size:5.4vw;margin-bottom:18px;}
  .sub-sec h3{font-size:4.6vw;margin:24px 0 10px;}
  .sub-sec p{font-size:3.8vw;line-height:1.85;}
}

.check{margin:0 0 1.4em;padding:0;}
.check li{list-style:none;position:relative;padding:.4em 0 .4em 1.8em;font-size:16px;line-height:1.7;border-bottom:1px dotted #E0DDD8;}
.check li::before{content:"\f00c";font-family:FontAwesome;position:absolute;left:0;top:.45em;color:#8A6F08;}
@media screen and (max-width:800px){.check li{font-size:3.8vw;}}

.note{background:#F5F4F0;border:1px solid #E0DDD8;border-radius:6px;padding:18px 22px;margin:26px 0;font-size:15px;line-height:1.8;}
.note strong{color:#8A6F08;}

/* ---- cards ---- */
.cards{display:flex;flex-wrap:wrap;margin:0 -1.5% 10px;padding:0;}
.cards>li,.cards>div{list-style:none;width:30.33%;margin:0 1.5% 26px;background:#fff;border:1px solid #E0DDD8;border-radius:8px;padding:22px 20px 20px;position:relative;}
.cards.c2>li,.cards.c2>div{width:47%;}
.cards.c4>li,.cards.c4>div{width:22%;}
.cards .no{display:block;font-size:13px;letter-spacing:.15em;color:#8A6F08;margin-bottom:4px;}
.cards h3,.cards .ct{font-size:18px;line-height:1.5;font-weight:700;margin:0 0 10px;color:#1A1A1A;}
.cards p{font-size:14.5px;line-height:1.8;margin:0;}
.cards img{border-radius:4px;margin-bottom:12px;}
.cards a.more{display:inline-block;margin-top:10px;font-size:14px;color:#7A6208;text-decoration:underline;}
@media screen and (max-width:800px){
  .cards{margin:0 0 10px;}
  .cards>li,.cards>div,.cards.c2>li,.cards.c2>div,.cards.c4>li,.cards.c4>div{width:100%;margin:0 0 16px;}
  .cards h3,.cards .ct{font-size:4.4vw;}
  .cards p{font-size:3.7vw;}
}

/* ---- steps ---- */
.steps{margin:0 0 20px;padding:0;counter-reset:st;}
.steps>li{list-style:none;position:relative;padding:20px 20px 20px 78px;margin-bottom:14px;border:1px solid #E0DDD8;border-radius:8px;background:#fff;counter-increment:st;}
.steps>li::before{content:counter(st);position:absolute;left:18px;top:18px;width:44px;height:44px;border-radius:50%;background:#8A6F08;color:#fff;font-size:20px;line-height:44px;text-align:center;font-weight:700;}
.steps h3{font-size:18px;margin:0 0 6px;color:#1A1A1A;}
.steps p{font-size:15px;line-height:1.8;margin:0;}
@media screen and (max-width:800px){
  .steps>li{padding:16px 14px 16px 62px;}
  .steps>li::before{left:12px;top:14px;width:36px;height:36px;line-height:36px;font-size:17px;}
  .steps h3{font-size:4.3vw;}
  .steps p{font-size:3.7vw;}
}

/* ---- tables ---- */
.tbl-wrap{overflow-x:auto;margin:20px 0 28px;-webkit-overflow-scrolling:touch;}
table.spec{width:100%;min-width:560px;border-collapse:collapse;font-size:15px;line-height:1.7;}
table.spec th,table.spec td{border:1px solid #E0DDD8;padding:12px 14px;text-align:left;vertical-align:top;}
table.spec thead th{background:#8A6F08;color:#fff;font-weight:500;}
table.spec tbody th{background:#FAFAF8;width:9em;font-weight:700;white-space:nowrap;}
table.spec td.em{background:#FBF6E0;font-weight:700;}
table.outline-t{min-width:0;}
table.outline-t th{width:12em;white-space:normal;}
@media screen and (max-width:800px){
  table.spec{font-size:3.5vw;}
  table.outline-t th{width:7em;}
  table.outline-t{min-width:0;}
}

/* ---- toc ---- */
.toc{background:#FAFAF8;border:1px solid #E0DDD8;border-radius:8px;padding:18px 24px;margin:0 0 50px;}
.toc p{font-weight:700;margin:0 0 6px;color:#8A6F08;font-size:15px;}
.toc ol,.toc ul{margin:0;padding:0 0 0 1.2em;}
.toc li{list-style:decimal;font-size:15px;line-height:1.9;}
.toc a{color:#7A6208;text-decoration:underline;}

/* ---- works list ---- */
.works-list{margin:0;padding:0;}
.works-list>li{list-style:none;display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:46px;padding-bottom:40px;border-bottom:1px solid #E0DDD8;}
.works-list figure{width:44%;margin:0;}
.works-list .txt{width:52%;}
.works-list h2,.works-list h3{font-size:21px;line-height:1.5;font-weight:700;color:#1A1A1A;margin:0 0 8px;border:0;padding:0;}
.works-list .tags{margin:0 0 10px;padding:0;display:flex;flex-wrap:wrap;}
.works-list .tags li{list-style:none;font-size:12px;background:#F5F4F0;color:#1A1A1A;border-radius:12px;padding:2px 10px;margin:0 6px 6px 0;}
.works-list p{font-size:15px;line-height:1.85;margin:0 0 .8em;}
@media screen and (max-width:800px){
  .works-list figure,.works-list .txt{width:100%;}
  .works-list figure{margin-bottom:14px;}
  .works-list h2,.works-list h3{font-size:4.6vw;}
  .works-list p{font-size:3.8vw;}
}

/* ---- FAQ page ---- */
.faq-item{border:1px solid #E0DDD8;border-radius:8px;margin-bottom:16px;background:#fff;overflow:hidden;}
.faq-item h3{margin:0;padding:16px 18px 16px 3em;position:relative;font-size:17px;line-height:1.6;font-weight:700;color:#1A1A1A;background:#FAFAF8;}
.faq-item h3::before{content:"Q";position:absolute;left:14px;top:13px;width:26px;height:26px;border-radius:50%;background:#8A6F08;color:#fff;text-align:center;line-height:26px;font-size:14px;}
.faq-item .ans{padding:16px 18px 6px 3em;position:relative;}
.faq-item .ans::before{content:"A";position:absolute;left:14px;top:15px;width:26px;height:26px;border-radius:50%;background:#e6a300;color:#fff;text-align:center;line-height:26px;font-size:14px;}
.faq-item .ans p{font-size:15px;line-height:1.85;margin:0 0 .9em;}
@media screen and (max-width:800px){
  .faq-item h3{font-size:4.1vw;}
  .faq-item .ans p{font-size:3.7vw;}
}

/* ---- top page: additional sections ---- */
.top-sec{padding:90px 0;}
.top-sec .in{width:90%;max-width:1100px;margin:0 auto;}
.top-sec.alt{background:#F5F4F0;}
.top-sec.green{background:#F5F4F0;}
.top-sec>.in>h2{text-align:center;font-weight:500;color:#8A6F08;margin-bottom:46px;}
.top-sec>.in>h2 span{display:block;text-align:center;margin-top:4px;font-size:14px;}
.top-sec .lead-c{text-align:center;font-size:16px;line-height:2;margin:-20px auto 40px;max-width:820px;}
.top-more{text-align:center;margin-top:20px;}
.top-more a,.btn-g{display:inline-block;background:#8A6F08;color:#fff !important;font-weight:700;border-radius:8px;padding:.7em 2.4em;letter-spacing:.08em;transition:all .3s;}
.top-more a:hover,.btn-g:hover{opacity:.7;}
@media screen and (max-width:800px){
  .top-sec{padding:46px 0;}
  .top-sec>.in>h2{margin-bottom:28px;}
  .top-sec .lead-c{font-size:3.7vw;text-align:left;margin:-8px 0 26px;}
}

/* ---- gallery (top): link ---- */
ul.listgl li a{display:block;}

/* ---- CTA ---- */
.cta{background:#8A6F08;color:#fff;padding:56px 0;text-align:center;}
.cta .in{width:90%;max-width:760px;margin:0 auto;}
.cta h2{font-size:26px;font-weight:500;line-height:1.5;margin-bottom:14px;color:#fff;}
.cta p{font-size:15px;line-height:1.9;margin-bottom:18px;color:#fff;}
.cta .tel-no{display:inline-block;font-size:42px;line-height:1.2;font-weight:700;color:#fff !important;letter-spacing:.04em;}
.cta .tel-no i{margin-right:.3em;font-size:80%;}
.cta .fax{font-size:14px;margin-top:8px;margin-bottom:0;}
@media screen and (max-width:800px){
  .cta{padding:36px 0;}
  .cta h2{font-size:5.4vw;}
  .cta p{font-size:3.7vw;}
  .cta .tel-no{font-size:9vw;}
}

/* ---- related / links ---- */
.related{background:#FAFAF8;padding:50px 0;}
.related .in{width:90%;max-width:960px;margin:0 auto;}
.related h2{font-size:20px;font-weight:700;color:#8A6F08;margin-bottom:18px;}
.related ul{margin:0;padding:0;display:flex;flex-wrap:wrap;}
.related li{list-style:none;width:48%;margin:0 2% 10px 0;}
.related li a{display:block;padding:12px 16px;background:#fff;border:1px solid #E0DDD8;border-radius:6px;font-size:15px;line-height:1.5;color:#7A6208;}
.related li a::before{content:"\f105";font-family:FontAwesome;margin-right:.6em;}
.related li a:hover{opacity:.7;}
@media screen and (max-width:800px){
  .related li{width:100%;margin-right:0;}
  .related li a{font-size:3.8vw;}
}

/* ---- column ---- */
.col-meta{font-size:13px;color:#666;margin-bottom:24px;}
.col-list{margin:0;padding:0;}
.col-list>li{list-style:none;margin-bottom:22px;}
.col-list>li a{display:block;border:1px solid #E0DDD8;border-radius:8px;padding:20px 22px;background:#fff;}
.col-list>li a:hover{opacity:.7;}
.col-list .ct{display:block;font-size:19px;line-height:1.5;font-weight:700;color:#1A1A1A;margin-bottom:6px;}
.col-list .cd{display:block;font-size:14.5px;line-height:1.8;color:#333;}
.col-list .cm{display:block;font-size:12px;color:#888;margin-top:6px;}
@media screen and (max-width:800px){
  .col-list .ct{font-size:4.5vw;}
  .col-list .cd{font-size:3.7vw;}
}

/* ---- company (top + company page) ---- */
.company_content{margin-top:6px;}
.company_content .item{margin-bottom:18px;padding-bottom:16px;border-bottom:1px dotted #bbb;}
.company_content .item:last-child{border-bottom:0;}
.company_content .item_content{margin-bottom:6px;}
.company_content .content_title{font-weight:700;}
.company_content .content_title img{vertical-align:middle;margin-right:4px;}
.company_content .content_link a{text-decoration:underline;color:#7A6208;}
.company_content .content_text{line-height:1.7;}
.map-wrap{margin-top:24px;}
.map-wrap iframe{width:100%;height:340px;border:0;}

/* ---- footer sitemap ---- */
footer .foot-sitemap{display:flex;flex-wrap:wrap;justify-content:center;margin:0 auto 26px;padding:0;max-width:960px;}
footer .foot-sitemap li{list-style:none;margin:0 .9em 8px;}
footer .foot-sitemap a{color:#fff;font-size:14px;text-decoration:underline;}
footer .foot-sitemap a:hover{opacity:.7;}
footer .foot-addr{text-align:center;color:#fff;font-size:13px;line-height:1.8;margin-bottom:20px;}
footer .foot-addr a{color:#fff;}
@media screen and (max-width:800px){
  footer ul.footlist{display:none;}
  footer .foot-sitemap a{font-size:3.6vw;}
  footer .foot-addr{font-size:3.2vw;}
}

/* ---- print / misc ---- */
.skip{position:absolute;left:-9999px;}

/* ---- top: 主な商品 テキスト部 ---- */
#section03 .flexbox .ibody{width:45%;max-width:500px;line-height:180%;}
#section03 .flexbox2 .ibody{width:48.5%;max-width:500px;line-height:180%;}
#section03 .ibody h3{line-height:140%;}
@media screen and (max-width:800px){
  #section03 .flexbox .ibody,#section03 .flexbox2 .ibody{width:100%;margin-bottom:25px;order:2;}
}
@media screen and (min-width:801px) and (max-width:1000px){
  header .section__in ul{font-size:11px;}
  header .section__in ul a{padding:0 .4em;}
}

/* ---- contact form ---- */
.req{display:inline-block;margin-left:.6em;padding:0 .5em;font-size:11px;line-height:1.7;background:#9A3B2E;color:#fff;border-radius:3px;font-weight:400;vertical-align:middle;}
.form-tbl{width:100%;border-collapse:collapse;margin-bottom:24px;}
.form-tbl th,.form-tbl td{border-bottom:1px solid #E0DDD8;padding:16px 12px;text-align:left;vertical-align:top;font-size:15px;line-height:1.7;}
.form-tbl th{width:13em;background:#FAFAF8;font-weight:700;}
.form-tbl input[type=text],.form-tbl input[type=email],.form-tbl input[type=tel],.form-tbl textarea{width:100%;padding:10px 12px;font-size:16px;font-family:inherit;border:1px solid #C9C5BC;border-radius:4px;background:#fff;}
.form-tbl input:focus,.form-tbl textarea:focus{outline:2px solid #8A6F08;outline-offset:0;}
.opt{display:block;margin:0 0 6px;cursor:pointer;line-height:1.6;}
.opt input{margin-right:.4em;}
.hint{font-size:12.5px;color:#666;margin:6px 0 0;line-height:1.6;}
.agree{text-align:center;margin:10px 0 20px;font-size:15px;}
.agree .opt{display:inline-block;}
.submit{text-align:center;margin:0;}
.submit .btn-g{border:0;cursor:pointer;font-size:17px;padding:.9em 3em;font-family:inherit;}
@media screen and (max-width:800px){
  .form-tbl,.form-tbl tbody,.form-tbl tr,.form-tbl th,.form-tbl td{display:block;width:100%;}
  .form-tbl th{padding:10px 12px;border-bottom:0;}
  .form-tbl td{padding:10px 12px 18px;}
  .form-tbl th,.form-tbl td{font-size:3.9vw;}
}

/* ---- MailformPro 上書き（サイトのトーンに合わせる） ---- */
.sub-main form#mailformpro dl{margin:0 0 20px;overflow:hidden;}
.sub-main form#mailformpro dl dt{width:14em;font-size:15px;font-weight:700;line-height:1.6;text-align:left;padding:18px 10px 14px 12px;border-top:1px solid #E0DDD8;background:#FAFAF8;}
.sub-main form#mailformpro dl dd{font-size:15px;line-height:1.7;padding:14px 10px 16px 14.8em;border-top:1px solid #E0DDD8;}
.sub-main form#mailformpro .must{float:none;display:inline-block;margin:0 .6em 0 0;padding:0 .5em;font-size:11px;line-height:1.7;border-width:1px;background-image:none;text-shadow:none;box-shadow:none;vertical-align:middle;}
.sub-main form#mailformpro label{white-space:normal;font-size:15px;line-height:1.6;}
.sub-main form#mailformpro input[type=text],.sub-main form#mailformpro input[type=email],.sub-main form#mailformpro input[type=tel],.sub-main form#mailformpro textarea{width:100% !important;max-width:100%;font-size:16px;padding:9px 12px;font-family:inherit;border:1px solid #C9C5BC;border-radius:4px;}
.sub-main form#mailformpro .hint{font-size:12.5px;color:#666;margin:6px 0 0;line-height:1.6;}
.sub-main form#mailformpro .mfp_buttons{padding:24px 0 10px;}
.sub-main form#mailformpro .mfp_buttons button{background:#8A6F08;border:0;color:#fff;border-radius:8px;font-size:17px;font-weight:700;padding:.9em 3em;cursor:pointer;font-family:inherit;letter-spacing:.08em;background-image:none;box-shadow:none;text-shadow:none;}
.sub-main form#mailformpro .mfp_buttons button:hover{opacity:.7;}
@media screen and (max-width:800px){
  .sub-main form#mailformpro dl dt{float:none;width:100%;padding:12px 10px 8px;font-size:4vw;}
  .sub-main form#mailformpro dl dd{padding:10px 10px 16px;font-size:3.8vw;border-top:0;}
  .sub-main form#mailformpro label{font-size:3.8vw;}
}

/* MailformPro 確認画面をサイトのヘッダー(z-index:99999)より前面に表示 */
div#mfp_overlay_background{z-index:100000 !important;}
div#mfp_overlay{z-index:100001 !important;}
div#mfp_loading_screen{z-index:100002 !important;}
div#mfp_loading{z-index:100003 !important;}

/* ---- CTA: フォームボタン ---- */
.cta .cta-btn{margin:6px 0 4px;}
.cta a.btn-form{display:inline-block;background:#fff;color:#1A1A1A !important;font-size:20px;font-weight:700;border-radius:8px;padding:.9em 2.6em;letter-spacing:.06em;transition:all .3s;}
.cta a.btn-form:hover{opacity:.8;}
.cta .cta-or{margin:16px 0 4px;font-size:14px;}
@media screen and (max-width:800px){
  .cta a.btn-form{font-size:4.6vw;padding:.9em 1.6em;display:block;}
}

/* ==========================================================
   デザインタイルラボ：ダーク × ゴールド のテーマ上書き
   ========================================================== */
header .section__in .hlogo{width:24%;max-width:290px;line-height:0;}
header .section__in .hlogo a{display:block;}
@media screen and (max-width:800px){
  header .section__in .hlogo{width:160px;max-width:290px;}
}
/* ヘッダーのナビは元デザイン（style.css）を優先 */
@media screen and (min-width:801px){
  header .section__in div.menulistin{width:76%;max-width:980px;}
  header .section__in ul{font-size:inherit;}
  header .section__in ul a{padding:0 .85em;}
}
@media screen and (min-width:801px) and (max-width:1100px){
  header .section__in ul a{padding:0 .5em;font-size:11px;}
}
header .section__in ul a[aria-current="page"]{color:#8A6F08;font-weight:600;}
@media screen and (max-width:800px){
  header .section__in ul a[aria-current="page"]{color:#C9A52E;}
}

.bc{background:#FAFAF8;border-bottom:1px solid #E0DDD8;}
.bc a{color:#7A6208;}

.sub-hero{background:#1A1A1A;border-bottom:1px solid #B8960C;padding:72px 0 64px;}
.sub-hero .en{font-family:'Cormorant Garamond','Playfair Display',Georgia,serif;font-size:12px;letter-spacing:.45em;color:#B8960C;text-transform:uppercase;}
.sub-hero h1{font-family:'Noto Serif JP','Yu Mincho',serif;font-weight:400;color:#fff;letter-spacing:.05em;line-height:1.55;}
.sub-hero .lead{color:rgba(232,228,220,.85);}
@media screen and (max-width:800px){ .sub-hero{padding:40px 0 34px;} }

.sub-sec h2,.sec-h2{font-family:'Noto Serif JP','Yu Mincho',serif;font-weight:400;color:#1A1A1A;border-left:3px solid #B8960C;letter-spacing:.04em;}
.sub-sec h3{color:#1A1A1A;}
.cards h3,.cards .ct,.steps h3{color:#1A1A1A;}
.cards>li,.cards>div,.steps>li{border-radius:0;border:1px solid #E0DDD8;background:#fff;}
.cards .no{font-family:'Cormorant Garamond',Georgia,serif;color:#8A6F08;letter-spacing:.3em;}
.steps>li::before{background:#1A1A1A;color:#B8960C;border:1px solid #B8960C;border-radius:0;}
table.spec thead th{background:#1A1A1A;color:#E8E4DC;font-weight:400;}
table.spec tbody th{background:#FAFAF8;}
.note{background:#FBF6E0;border:1px solid #E6D9A3;border-radius:0;}
.note strong{color:#7A6208;}
.check li::before{color:#B8960C;}
.faq-item{border-radius:0;}
.faq-item h3{background:#FAFAF8;color:#1A1A1A;}
.faq-item h3::before{background:#1A1A1A;color:#B8960C;border-radius:0;}
.faq-item .ans::before{background:#B8960C;border-radius:0;}
.works-list .tags li{background:#F5F4F0;color:#5a4a06;border-radius:0;}
.works-list h2,.works-list h3{color:#1A1A1A;font-family:'Noto Serif JP',serif;font-weight:500;}
.sub-sec figure img,.cards img{border-radius:0;}
.toc{border-radius:0;background:#FAFAF8;}
.toc p{color:#7A6208;}

.cta{background:#1A1A1A;border-top:1px solid #B8960C;}
.cta h2{font-family:'Noto Serif JP','Yu Mincho',serif;font-weight:400;letter-spacing:.05em;}
.cta p{color:rgba(232,228,220,.85);}
.cta a.btn-form{background:#B8960C;color:#1A1A1A !important;border-radius:0;}
.cta .tel-no{color:#B8960C !important;}
.cta .fax{color:rgba(232,228,220,.7);}

.related{background:#F5F4F0;}
.related h2{color:#7A6208;}
.related li a{border-radius:0;color:#7A6208;}

.top-more a,.btn-g{background:#1A1A1A;color:#B8960C !important;border:1px solid #B8960C;border-radius:0;}
.top-more a:hover,.btn-g:hover{background:#B8960C;color:#1A1A1A !important;opacity:1;}

.col-list>li a{border-radius:0;}
.col-list .ct{font-family:'Noto Serif JP',serif;font-weight:500;color:#1A1A1A;}

footer .foot-sitemap a{color:#E8E4DC;}
footer .foot-addr,footer .foot-addr a{color:#E8E4DC;}

/* MailformPro */
.sub-main form#mailformpro .mfp_buttons button{background:#1A1A1A;color:#B8960C;border:1px solid #B8960C;border-radius:0;}
.sub-main form#mailformpro .mfp_buttons button:hover{background:#B8960C;color:#1A1A1A;opacity:1;}
.sub-main form#mailformpro .must{background:#9A3B2E;border-color:#9A3B2E;color:#fff;border-radius:0;}
.sub-main form#mailformpro dl dt{background:#FAFAF8;}

/* トップ：追加セクション（強みの下のコラム・設計者向け導線） */
.top-extra{padding:100px 0;}
.top-extra .in{width:90%;max-width:1200px;margin:0 auto;}
.top-extra.dark{background:#1A1A1A;}
.top-extra.light{background:#F5F4F0;}
.top-extra .head{text-align:center;margin-bottom:56px;}
.top-extra .head .lb{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:11px;letter-spacing:.45em;color:#B8960C;margin-bottom:16px;}
.top-extra .head h2{font-family:'Noto Serif JP',serif;font-weight:400;font-size:34px;line-height:1.55;letter-spacing:.05em;color:#1A1A1A;}
.top-extra.dark .head h2{color:#fff;}
.top-extra .lead-c{text-align:center;line-height:2;max-width:820px;margin:-20px auto 40px;}
.top-extra.dark .lead-c{color:rgba(232,228,220,.8);}
@media screen and (max-width:800px){
  .top-extra{padding:56px 0;}
  .top-extra .head{margin-bottom:32px;}
  .top-extra .head h2{font-size:6.2vw;}
  .top-extra .lead-c{font-size:3.7vw;text-align:left;margin:-10px 0 28px;}
}
.top-extra .cards>li,.top-extra .cards>div{background:#fff;}
.top-extra.dark .col-list .cd,.top-extra .col-list .cd{color:#333;}

/* ==========================================================
   既存CSSの a:link{color:#333} がボタン等の文字色を上書きしてしまうため、
   詳細度を上げて意図した色に戻す（ダーク背景のボタンの文字が見えない問題の修正）
   ========================================================== */
a.hero__btn--primary,a.hero__btn--primary:link,a.hero__btn--primary:visited,a.hero__btn--primary:hover,
a.contact__btn--primary,a.contact__btn--primary:link,a.contact__btn--primary:visited,a.contact__btn--primary:hover,
a.btn--gold,a.btn--gold:link,a.btn--gold:visited,a.btn--gold:hover{color:#1A1A1A;}
a.hero__btn--secondary,a.hero__btn--secondary:link,a.hero__btn--secondary:visited,a.hero__btn--secondary:hover,
a.btn--outline-white,a.btn--outline-white:link,a.btn--outline-white:visited,a.btn--outline-white:hover{color:#fff;}
a.contact__btn--secondary,a.contact__btn--secondary:link,a.contact__btn--secondary:visited,a.contact__btn--secondary:hover{color:#E8E4DC;}
a.btn--outline-dark,a.btn--outline-dark:link,a.btn--outline-dark:visited{color:#1A1A1A;}
a.btn--outline-dark:hover{color:#fff;}
a.btn--outline-gold,a.btn--outline-gold:link,a.btn--outline-gold:visited{color:#8A6F08;}
a.btn--outline-gold:hover{color:#fff;}
.section__more a:link,.section__more a:visited,.section__more a:hover{color:#8A6F08;}
#section_contact .section__more a:link,#section_contact .section__more a:visited{color:#B8960C;}
