@charset "utf-8";
/* ------------------------------------------------------------- */
/* common */
body div.wrapper { margin-top: 165px; }
@media screen and (max-width: 599px) { 
  body div.wrapper {   margin-top: 80px; }
}
.wrapper.wrapper--column-1 .__inner { width: 100% !important; max-width: 100% !important; padding: 0 !important; }
body div.wrapper.wrapper--column-1 .__inner div.main { max-width: 100% !important; }
* { box-sizing: border-box; }
body { margin: 0; font-feature-settings: "palt"; color: #000; }
section:not(.__news-notifier.p-news-notifier) { margin: 4em auto; }
.p-news-notifier { display: none !important; }
body.body-page section.__content { margin-bottom: 0 !important; }
.contents section h2 { width: 85%; margin: 0 auto 1em; }
img { width: 100%; }
ul { list-style: none; padding-left: 0; margin: 0; }
th,
td { padding: 0; }
h3 { font-weight: bold; }
.__content h2 { font-size: 24px; text-align: center; font-weight: bold; margin-bottom: 1em; }
.__content h2:after { content: ""; display: block; background-image: url(https://files.bcart.jp/sjl/uploads/lp/solar/img_sjl_color.jpg); background-repeat: no-repeat; width: 180px; height: 20px; margin: 0.5em auto; transform: scale(0.5); }
.__content p { line-height: 2; letter-spacing: 0.02em; margin: 0; font-size: 18px; }
p span.blue { color: #3877c0; }
.inner { width: 100%; max-width: 1100px; margin: 0 auto; }
p.fw-bold { font-weight: bold; }
.mt-2em { margin-top: 2em; }
/*#headerBottom { display:none; }*/
footer { display: none !important; }
div#footer { display: none; }
.pc-only { display: block; }
.sp-only { display: none; }
/* ------------------------------------------------------------- */
/* PC */

/* anc */
.anc { width: 100%; }
.anc ul { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid #dddddd; border-left: 1px solid #dddddd; }
.anc ul li { width: auto; position: relative; font-weight: bold; background-color: #f3f3f3;  border-bottom: 1px solid #dddddd; }
.anc ul li a::after { content: ""; position: absolute; right: 18px; /* 20px固定なので“整数”で中央合わせ（丸め誤差を避ける） */
  top: calc(50% - 10px); width: 20px; height: 20px; background-image: url(https://files.bcart.jp/sjl/uploads/lp/aiolfactory/img/btn_sankaku.png?1); background-repeat: no-repeat; background-position: center; background-size: contain; /* ← coverだと切れやすい */
}
.anc ul li a { padding: 18px 22px; display: block; }

/* solar_news */
.solar_news { padding: 0.81em; background-color: #f7d364; text-align: center; line-height: 1.5; }
.solar_news p { font-size: 16px; font-weight: 600; letter-spacing: 0.08em; }
.solar_news a { font-size: 15px; font-weight: 700; letter-spacing: 0.08em; text-decoration: underline; }

/* section1 悩み */
#section1 { max-width: 900px; margin-top: 4em; }
.bgWrapper { background-image: url(https://files.bcart.jp/sjl/uploads/lp/solar/bg.jpg); padding: 2em 0; }
/* section2 youtube */
#section2 { max-width: 996px; margin-top: 8em; }
#section2 .inner { text-align: center; box-shadow: 13px 10px 21px -16px #878787; border-radius: 10px; padding: 2em; background-color: #e7edf5; }
/* 注目のポイント */
#section3 { margin: 8em auto 0; }
#section3 .inner { max-width: 1000px; padding: 4em 0; }
#section3 .inner .content { display: grid; grid-template-columns: 42% auto; gap: 4em; }
#section3 .inner .content .point ul { display: flex; flex-direction: column; justify-content: space-between; height: 100%; }
#section3 .inner .content .point ul li { display: flex; align-items: center; background-color: #fff; gap: 1em; padding: 0.2em 1em; }
#section3 .inner .content .point ul li img { width: 20px; height: 20px; }
#section3 .inner { text-align: center; box-shadow: 13px 10px 21px -16px #878787; border-radius: 10px; padding: 2em; background-color: #e7edf5; }
#section3 h2:before { content: ""; background-image: url(https://files.bcart.jp/sjl/uploads/lp/solar/img_solor_nasi.png); display: inline-block; width: 4em; height: 2em; background-size: contain; background-repeat: no-repeat; transform: translateY(0.5em); }
#section3 .inner ul li { border: 2px solid #34b4f5; border-radius: 15px; background-color: white; display: flex; padding: 1em; margin: 2em 1em; align-items: center; }
#section3 .tabs { display: flex; flex-wrap: wrap; justify-content: space-around; gap: 1em 0; margin-top: 1em; }
#section3 .tabs a { width: calc(100% / 3 - 2em) }
#section3 .detail { display: flex; flex-direction: column; justify-content: space-evenly; gap: 1em; margin: 1em; width: 100%; }
#section3 .detail .title { color: white; border-radius: 20px; font-weight: bold; width: 10em; background: linear-gradient(0deg, #00a3d8, #5fc4ff); }
#section3 .detail .sub_title { font-size: 2.5em; background: linear-gradient(transparent 50%, #fff151 50%); width: fit-content; font-weight: 500; padding: 0 0.2em; letter-spacing: 2px; }
#section3 .detail .sub_title .min { font-size: 0.6em; }
#section3 .detail .notes { letter-spacing: 0; text-align: left; line-height: 1.88; }
#section3 .detail .notes span { font-size: 0.888em; }
#section3 .inner ul li button,
#section7 .inner button { width: 241px; margin: auto; line-height: 37px; text-align: center; font-size: 1em; border-radius: 0.625em; border: 2px solid #34b4f5; background-color: #fff; position: relative; cursor: pointer; }
#section3 .inner ul li button span,
#section7 .inner button span { position: relative; padding-left: 1.5em; font-weight: 600; }
#section3 .inner ul li button span::after,
#section7 .inner button span::after { content: ''; display: inline-block; margin-left: 2em; width: 0; height: 0; border-top: 6.5px solid transparent; border-bottom: 6.5px solid transparent;  border-left: 8px solid #404040; }
/* modal */
#section3 .inner .data_modal { position:fixed; inset:0; z-index:1000; display:none; background:rgba(0,0,0,.7); overflow:auto; }
#section3 .inner .data_modal.__is_open { display:block; }
#section3 .inner .data_modal_scroll { min-height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; padding:7vh 2%; }
#section3 .inner .data_modal_body { width:min(960px,100%); max-height:unset; padding:54px 60px 38px; border-radius:20px ;background:#fff; box-shadow:0 6px 20px #83838380; }
#section3 .inner .data_modal_title { margin:0 0 28px; padding-bottom:25px; border-bottom:1px solid #838384; font-weight: 700; text-align:center; line-height:1.88; letter-spacing:0.08em; }
#section3 .inner .data_modal_item { display:grid; grid-template-columns:135px 1fr; gap:30px; margin-bottom:26px; align-items:stretch; }
#section3 .inner .data_modal_label { display:flex; align-items:center; justify-content:center; padding:10px; background:linear-gradient(#3db8ff,#00a3d8); color:#fff; font-size:1.0625em; letter-spacing: 0.08em; }
#section3 .inner .data_modal_detail { text-align-last: left; }
#section3 .inner .data_modal_detail h3{ margin-bottom: 0.6em; font-size:1em; letter-spacing: 0.08em; line-height: 1; }
#section3 .inner .data_modal_detail p { font-size:0.9375em; line-height: 1.6; text-align: justify; letter-spacing: 0.04em; }
#section3 .inner .data_modal_detail span{ color:#ff0000; font-weight:700; }
#section3 .inner .data_modal_sub_title{ margin: 38px 0 5px; font-size: 1em; font-weight:700; text-align-last: left; }
#section3 .inner .data_modal_close{ display:flex; gap:12px; align-items:center; margin:1em auto 0; border:0; background:transparent; color:#fff; font-size:1em;font-weight:700; cursor:pointer; }
#section3 .inner .data_modal_close span{ position:relative; width:27px; height:27px; border:2px solid #fff; border-radius:50%; }
#section3 .inner .data_modal_close span::before,
#section3 .inner .data_modal_close span::after { content:""; position:absolute; left:0; top:10.5px; width:23.5px; height:2px; background:#fff; transform:rotate(45deg); }
#section3 .inner .data_modal_close span::after { transform:rotate(-45deg); }
.__is_modal_open{ overflow:hidden; }
/* @media(prefers-reduced-motion:no-preference){
.data_modal.__is_open .data_modal_body{animation:modal_in .25s ease-out;}
@keyframes modal_in{from{opacity:0;transform:translateY(16px);}
to{opacity:1;transform:none;}
}
} */

/* section5 2つの製品タイプ */
#section5 { padding: 4em !important; margin: 0; background-color: #f0f0f0; }
#section5 .items { display: flex; justify-content: center; gap: 2em; text-align: center; }
#section5 .section5__note { font-size: 0.8em; color: #3a3a3a; }
#section5 .section5__note2 { margin-top: 1em; font-size: 0.9375em; font-weight: 600; letter-spacing: 0.08em; line-height: 1.6; }
#section5 .section5__note2 a { display: block; text-decoration: underline; }
/* section6 設置工法 */
#section6 { padding: 4em 0 !important; margin: 0; }
#section6 .inner { max-width: 880px; }
#section6 .inner .section6__items { display: flex; gap: 2em; }
#section6 .inner .section6__item { padding: 0; border: 2px solid #34b4f5; background-color: white; width: calc(50% - 1em); }
#section6 .inner .section6__item h3 { background: linear-gradient(0deg, #00a3d8, #5fc4ff); color: white; padding: 0; line-height: 3em; text-align: center; letter-spacing: 3px; font-size: 1.5em; }
#section6 .inner .section6__item .disc { padding: 1.5em; display: flex; flex-direction: column; gap: 1em; }
#section6 .inner .section6__item .disc img { width: auto; }
.contactButton { margin-bottom: 1em; }
.contactButton a { width: 50%; display: block; margin: 3em auto 0; }
/* section7 採用事例 */
#section7 { margin: 4em auto; }
#section7 .inner ul { margin: 2.5em auto; display: flex; flex-direction: column; gap: 1em; }
#section7 .inner ul li { padding: 1.5em 3em; display: flex; flex-direction: column; gap: 0.75em; }
#section7 .inner ul li .question { position: relative; font-size: 1.1em; font-weight: bold; padding-left: 30px; }
#section7 .inner ul li .question::after { content: ""; position: absolute; left: 0; top: 8px; width: 16px; height: 14px; background-image: url(https://files.bcart.jp/sjl/uploads/lp/motheye/img/icon_Q.png); background-repeat: no-repeat; background-position: center; background-size: contain; }
#section7 .inner ul li .answer { position: relative; padding-left: 32px; }
#section7 .inner ul li .answer::after { content: ""; position: absolute; left: 0; top: 8px; width: 16px; height: 14px; background-image: url(https://files.bcart.jp/sjl/uploads/lp/motheye/img/icon_A.png); background-repeat: no-repeat; background-position: center; background-size: contain; }
#section7 .inner .section7__items { display: flex; gap: 1em; }
.section7__item img { width: 100%; height: 320px; }
.section7__item h3 { white-space: nowrap; }
.section7__item .section7__item__note { display: block; margin-bottom: 9px; font-size: 0.8125em; line-height: 1.5; }
/* #section8 商品情報 */
#section8 { margin: 7em auto; }
#section8 .sub_title { display: block; margin: 4px 0 16px; font-size: 1rem; font-weight: 600; }
#section8 .table_scroll { width: 100%; height: 750px; max-height: calc(90vh - 70px); overflow: auto; padding-bottom: 15px; scrollbar-color: #b8b8b8 #f3f3f3; scrollbar-width: auto; }
#section8 .table_scroll::-webkit-scrollbar { height: 12px; }
#section8 .table_scroll::-webkit-scrollbar-track { background: #f3f3f3; }
#section8 .table_scroll::-webkit-scrollbar-thumb { background: #b8b8b8; border-radius: 10px; }
#section8 table { width: 1468px; table-layout: fixed; font-size: 0.8125em; line-height: 1.25; letter-spacing: 0; }
#section8 .item_col { width: 160px; }
#section8 .product_col { width: 262px; }
#section8 th, #section8 td { height: 35px; padding: 6px 1rem; border: 0; border-right: 1px solid #aaa; border-bottom: 1px solid #aaa; vertical-align: middle; }
#section8 tbody th { font-weight: 600; text-align: center; }
#section8 tbody tr:nth-child(even) th, #section8 tbody tr:nth-child(even) td { background: #f5f5f5; }
#section8 thead th { padding: 4px 8px; color: #fff; font-weight: 600; line-height: 1.15; text-align: center; position: sticky; z-index: 4; }
#section8 .maker_row th { height: 27px; background: #0072d2; top: 0; font-size: 0.875rem; border-top: 1px solid #aaa; }
#section8 .type_row th { height: 28px; background: #00a7ec; top: 26px; font-size: 0.875rem; }
#section8 thead .blank { padding: 0; border: 0; background: #fff; z-index: 9; }
#section8 .type_row .item_head { color: #000; background: #eaf6fa; }
#section8 tbody tr > th { position: sticky; left: 0; z-index: 1; background: #fff; }
#section8 tbody tr:nth-child(even) > th { background: #f5f5f5; }
#section8 thead .sticky_corner, #section8 thead .item_head { z-index: 7; }
#section8 .maker_row .item_cap { left: 0; z-index: 9; background: #fff; border-right: 1px solid #aaa; border-bottom: 1px solid #aaa; }
#section8 .type_row .sticky_item { position: sticky; top: 26px; left: 0; z-index: 8; background: #eaf6fa; font-size: 0.8125rem; }
#section8 .item_cap, #section8 .item_head, #section8 tbody tr > th { border-left: 1px solid #aaa; border-right: 2px solid #aaa; }
#section8 .feature th, #section8 .feature td { height: 50px; }
#section8 .wind th, #section8 .wind td { height: 52px; }
#section8 .center { text-align: center; }
#section8 .detail_button { display: flex; width: 296px; height: 49px; margin: 33px auto 0; align-items: center; justify-content: center; color: #fff; background: linear-gradient(#3db8ff, #00a3d8); border-radius: 18px; box-shadow: inset 0 1px 0 rgba(255,255,255,.28); font-size: 17px; font-weight: 600; text-decoration: none; }
table { border-collapse: collapse; }
#section8 table { border-collapse: separate; border-spacing: 0; }
.scroll-hint-icon-wrap.is-active .scroll-hint-icon { z-index: 1; } 
/* #section8 .detail_button:hover { filter: brightness(.95); } */
/* #section8 .detail_button:focus-visible, #section8 .table_scroll:focus-visible { outline: 3px solid #f7b900; outline-offset: 3px; } */
/* faq */
#faq { margin-top:8em; }   
#faq .faq-nav { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-bottom: 3.5em; }   
#faq .faq-nav li { max-width: 250px; width: 30%; }
#faq .faq-nav li a { display: block; line-height: 49px; text-align: center; font-size: 1.1em; border-radius: 3px; border: 2px solid #34b4f5; font-weight: 700; border-radius: 20px; position: relative; }
#faq .faq-nav li a::after { content: '▼'; position: absolute; right: 0.8em; color: #34b4f5; }
#faq .faq-list { border-bottom: 1px solid #34b4f5; margin-bottom: 3.5em; }
#faq .faq-title { font-size: 1.55em; margin-bottom: 0.58em; }
#faq .faq-q { padding: 1.1em 3.2em 1.1em 4.6em; text-indent: -2.9rem; font-size: 1.05em; position: relative; cursor: pointer; z-index: 1; border-top: 1px solid #34b4f5; font-weight: 700; letter-spacing: 0.08em; }          
#faq .faq-q::before,
#faq .faq-a::before{ display: inline-block; margin-right: 1.15em; font-family: "Inter", sans-serif; font-optical-sizing: auto; font-weight: 500; font-size: 1.55em; text-align: center; text-indent: 0; color: #34b4f5; }
#faq .faq-q::before{ content: "Q"; }
#faq .faq-a::before{ content: "A"; }
#faq .faq-q::after{ content: '▼'; position: absolute; top: 1.1em; right: 0; color: #34b4f5; }
#faq .faq-q.active { padding-bottom: 0.3em; background-color: #f5f5f5; }
#faq .faq-q.active::after { content: '▲'; }
#faq .faq-a { padding: 0 8.2em 1.1em 4.7em; font-size: 1.05em; text-indent: -2.9rem; line-height: 1.4; letter-spacing: 0.01em; background-color: #f5f5f5; }
/* flow */
#flow h2 { margin-bottom: 1.5em; }
#flow .flow_list { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
#flow .flow_item { position: relative; min-height: 246px; padding: 22px 15px 16px; border: 1px solid #00a3d8; border-radius: 10px; background: #fff; }
#flow .flow_item:not(:last-child)::after { content: ""; position: absolute; z-index: 2; top: 50%; right: -15px; width: 0; height: 0; border-top: 7px solid transparent; border-bottom: 7px solid transparent; border-left: 15px solid #00a3d8; transform: translateY(-50%); }
#flow .flow_number { position: absolute; top: -6px; left: -3px; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 10px; background: linear-gradient(#3db8ff, #00a3d8); color: #fff; font-family: Inter, Arial, sans-serif; font-size: 26px; font-weight: 400; line-height: 1; }
#flow .flow_heading { min-height: 52px; margin: 0 0 20px; padding-left: 42px; font-size: 18px; line-height: 1.45; }
#flow .flow_text { font-size: 15px; line-height: 1.6; letter-spacing: 0.04em; text-align: justify; }
#flow .flow_text span { font-size: 0.875em; }
#flow .flow_text sup { vertical-align: middle; font-size: 0.7em; }

/* btn_blog */
.btn_blog { max-width: 570px; margin: 4em auto 4.6em; }

/* section9 ダウンロード */
#section9 { padding: 4em 0 10em!important; margin: 0; }
#section9 .inner .download_list { display: grid; gap: 2.6875em; }
#section9 .inner .download_list .cover { position: relative; margin-bottom: 0.8125em; padding: 2.75em 1.5em 1.28em; background-color: #f5f5f5; }
#section9 .inner .download_list .download_list_member { position: absolute; top: 0; left: 0; margin: 0; padding: 0 1.13rem; color: #fff; background-color: #00a3d8; font-size: 0.875em; font-weight: 700; line-height: 26px; letter-spacing: 0.08em; text-align: center; }
#section9 .inner .download_list .member_only .download_list_member { background-color: #e9a600; }
#section9 .inner .download_list .cover > img { display: block; max-width: 186px; max-height: 135px; margin: 0 auto 25px; object-fit: contain; object-position: center; filter: drop-shadow(4px 4px 9px rgba(115, 115, 115, 0.4)); }
#section9 .inner .download_list li .cover > img.portrait { margin-bottom: 1em; }
#section9 .inner .download_list .title { font-size: 0.875em; line-height: 1.55; letter-spacing: 0.08em; }
#section9 .inner .download_list li .link_btn a { width: 80%; margin: auto auto 0; position: relative; display: block;  max-width: 224px; color: #FFF; line-height: 100%;  font-weight: 700; text-decoration: none; padding: 18px; background-color: #333; transition: all 0.3s ease; }
#section9 .inner .download_list li .link_btn a .material-symbols-outlined {  position: absolute; top: 50%;  right: 15px; color: #FFF; transform: translateY(-50%); }
#section9 .inner .download_list .member_only .link_btn_download { display: none; }
body.__is-member #section9 .inner .download_list .member_only .link_btn_login { display: none; }
body.__is-member #section9 .inner .download_list .member_only .link_btn_download { display: block; }

/* float-contact */
#float-contact { position: fixed; bottom: 8%; right: 0; width: 285px; z-index: 100; display: none; }
#float-contact.__is-visible { display: block; }
#float-contact div { position: relative; }
#float-contact div button { position: absolute; background-color: #00000000; top: 0; right: 0; width: 40px; height: 40px; border-radius: 50%; border: none; cursor: pointer; }
#float-contact2 { position: fixed; bottom: 6em; right: 1.5em; width: 3.5em; z-index: 100; display: none; }
#float-contact2.__is-visible { display: block; }
@media screen and (max-width: 749px) { 
  #float-contact { position: fixed; bottom: 1%; right: 10%; width: 285px; }
  #float-contact div button { position: absolute; right: 10px; top: 6px; width: 36px; height: 36px; }
  #float-contact2 { right: 1em; bottom: 5em; width: 3.2em; }
  #float-contact2.__is-visible { display: none !important; }
}

/* footer */
.footer { background-color: #000000; color: #fff; padding: 110px 0 125px; }
.footer .inner { display: flex; align-items: center; }
.footer .inner .left,
.footer .inner .right { width: 50%; }
.footer .inner .left { display: flex; flex-direction: column; gap: 25px; }
.footer .inner .left a img { max-width: 430px; }
.footer .inner .left p { line-height: 1.6; }
.footer .inner .left table tr th,
.footer .inner .left table tr td { color: #fff; text-align: left; font-size: 14px; }
.footer .inner .left table tr th { padding: 0.2em 1em 0.2em 0; }
.footer .inner .left table tr td a { color: #fff; }
.footer .inner .right { display: flex; flex-direction: column; align-items: center; }
.footer .inner .right p { text-align: center; }
.footer .inner .right p.btn { margin-top: 1em; }
.footer .inner .right p.btn a { display: block; background-color: #e8a600; width: 390px; border-radius: 40px; color: #fff; text-decoration: none; padding: 1em 0; }
/* ------------------------------------------------------------- */
@media (max-width: 1280px) { 
  .anc { font-size: 15px; }
  .anc ul li a{ padding: 1em 1em 1em 0.8em; line-height: 1.5em; letter-spacing: 0; }
}
/* TB */
@media (max-width: 980px) {
  .anc ul { grid-template-columns: repeat(2, 1fr); }
  .anc ul li:not(:nth-of-type(2n)) { border-right: 1px solid #dddddd; }
  #section3 #tab5 .detail .sub_title .sp-only { display: block; }
}
/* ------------------------------------------------------------- */
/* SP */
@media (max-width: 767px) { 
  div#headerTop div.headerInner div#headerTopLeft div#headerTopLeftLeft a h2 { text-align: left !important; font-weight: normal; }
  .header .__banner { margin: 0 auto !important; }
  section { margin-top: 10.67vw; }
  h2 { font-size: min(6.67vw, 50px); line-height: 1.4; }
  .pc-only { display: none; }
  .sp-only { display: block; }
  .inner { max-width: 670px; width: 89.33%; margin: auto; }
  .__content h2 { font-size: 6.0vw; }
  .__content p { line-height: 1.75; font-size: 4.2vw; }

  /* kv */
  #kv { margin-top: 12.2%; }
  /* anc */
  .anc ul li a { font-size: 3vw; }
  .anc ul li a::after { width: 18px; height: 18px; right: 0.6em; }
  /* solar_news */
  .solar_news { padding: 0.68em; }
  .solar_news p { font-size: 12.5px; }
  .solar_news a { font-size: 11.5px; display: block; line-height: 2.1; }
  /* section2 youtube */
  .youtube iframe { width: -webkit-fill-available; height: auto; }
  #section2 { margin-top: 0; }  

  /* section3 */
  #section3 { margin-top: 10%; }
  #section3 h2:before { display: none; }
  #section3 .tabs a { width: calc(100% / 2 - 0.5em); }
  #section3 .detail .sub_title { font-size: 2em; }
  #section3 .inner .content { display: flex; flex-direction: column; gap: 2em; }
  #section3 .inner .content .point ul { gap: 0.5em; }
  #section3 .inner .content .point ul li { padding: 0.4em 0.5em; }
  #section3 .inner .content .point ul li p { line-height: 1.3; font-size: 4vw; }
  #section3 .inner ul li { flex-direction: column; margin: 2em 0; }
  #section3 .detail { align-items: center; }
  #section3 .detail .sub_title { background: linear-gradient(transparent 70%, #fff151 30%); }
  #section3 .inner ul li button,
  #section7 .inner button   { max-width: 225.6px; line-height: 35px; font-size: 15px; border-radius: 0.53em; color: #000; }
  #section3 .inner ul li button { margin: 1.5666em auto; }
  #section3 .inner ul li button span::after,
  #section7 .inner button span::after { margin-left: 1.8em; }
  /* modal */
  #section3 .inner .data_modal_body { padding:20px 10px; border-radius:1em; }
  #section3 .inner .data_modal_title { margin-bottom:1em; padding:0; border:0; font-size:0.875em; line-height:1.75; }
  #section3 .inner .data_modal_item { display:block; margin-bottom: 1em; }
  #section3 .inner .data_modal_label{ display:block; padding:3px 9px; text-align:left; font-size:0.9375em; line-height:1.35; }
  #section3 .inner .data_modal_detail h3 { margin:7px 0 3px; font-size:0.875em;line-height:1.4;}
  #section3 .inner .data_modal_detail p { font-size:0.8125em; line-height:1.62; }
  #section3 .inner .data_modal_close{ font-size:0.875em; }
  /* section5 */
  #section5 { padding: 3em 0 !important; }
  #section5 .items { gap: 1em; }
  .section5__item p { font-size: 0.9em; }
  /* section6 */
  #section6 { padding: 0 !important; }
  #section6 .inner { padding: 3em 0 3em; }
  #section6 .inner .section6__items { flex-direction: column; }
  #section6 .inner .section6__item { width: 100%; }
  .contactButton a { width: 100%; }
  /* section7 */
  #section7 .inner ul li { padding: 1em; }
  #section7 .inner ul li .question { font-size: 3.6vw; }
  #section7 .inner ul li .answer { font-size: 3.4vw; line-height: 1.75; }
  #section7 .inner ul li .answer::after { top: 5px; }
  #section7 .inner .section7__items { flex-wrap: wrap; gap: 2em; }  .section7__item h3 { white-space: wrap; }
  /* section8 */
  #section8 .sub_title { font-size: 14px; }
  #section8 th, #section8 td { padding-left: 1em; padding-right: 1em; }
  #section8 table { width: 1408px; }
  #section8 .item_col { width: 98px; }
  #section8 .maker_row th { text-align: left; padding-left: 2.5em; }
  #section8 .detail_button { max-width: 100%; }
  

  /* flow */
  #flow .flow_list { display: block; }
  #flow .flow_item { min-height: 0; margin-bottom: 1em; padding: 1em 1.5em 1em 2.5em; border-radius: 10px; }
  #flow .flow_item:last-child { margin-bottom: 0; }
  #flow .flow_item:not(:last-child)::after { top: auto;   right: auto;   bottom: -21.5px;   left: 50%;   border-top: 21.5px solid #00a5dc;   border-right: 11.5px solid transparent;   border-bottom: 0;   border-left: 11.5px solid transparent;   transform: translateX(-50%); }
  #flow .flow_number { left: -5px; width: 35px;   height: 35px;  font-size: 22px; }
  #flow .flow_heading { min-height: 0; margin-bottom: 0.5em; padding-left: 0; font-size: 1em;}
  #flow .flow_text { font-size: 0.875em; line-height: 1.65; }

  /* faq */
  #faq { margin-top:6em; }   
  #faq .inner { width: 100%; }
  #faq .faq-nav { margin-bottom: 1.5em; }
  #faq .faq-nav li { width: 46%; }
  #faq .faq-nav li a { font-size: 0.8em; border-radius: 0.88em; line-height: 40px; }
  #faq .faq-nav li a::after { font-size: 0.88em; }
  #faq .faq-title { font-size: 1.05em; margin-bottom: 0.4em; margin-left: 0.45em; }
  #faq .faq-q::before{ font-size: 1.2em; margin-right: 0.8em; }
  #faq .faq-a::before { font-size: 1.2em; margin-right: 0.8em; top: 0em; }
  #faq .faq-q { display: flex; align-items: center; font-size: 0.88em; font-weight: 600; text-indent: 0; padding: 0.7em 3.2em 0.7em 0.88em; line-height: 1.4; min-height: 66px; }
  #faq .faq-a {  padding: 0 2em 1.1em 2.7em; font-size: 0.88em; text-indent: -1.7em; line-height: 1.5; }
  #faq .faq-q::after { top: 50%; transform: translateY(-50%); font-size: 0.88em; right: 1.5em; }  

  /* btn_blog */
  .btn_blog { width: 90%; max-width: 310px; }

  /* section9 */
  #section9 .inner { width: 77.333%; margin: 0 auto; }
  
  /* footer */
  .footer { padding: 10.67vw 0 26.67vw; }
  .footer .inner { flex-direction: column; gap: 14.67vw; }
  .footer .inner .left,
  .footer .inner .right { width: 100%; }
  .footer .inner .left a img { max-width: 584px; width: 77.87vw; }
  .footer .inner .left table tr th,
  .footer .inner .left table tr td { font-size: min(3.2vw, 24px); }
  .footer .inner .right p.btn,
  .footer .inner .right p.btn a { width: 100%; }
  .footer .inner .right p.btn a { font-size: min(5.33vw, 40px); line-height: 1; }
  }


  @media (max-width: 599px) { 
  p { font-size: min(4vw, 30px); }
  }

  @media (min-width: 768px) { 
  #section3 .inner .data_modal_label_long{ letter-spacing: -1.5px; font-size: 1em; line-height: 1.3; }
  .section5__item img { width: 70%; }
  
  /* #section9 .inner .download_list { grid-template-columns: repeat(3,1fr); gap: 1.5625em; } */ /* 3カラムの時 */
  #section9 .inner .download_list { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5625em; } /* 2カラムの時 */
  #section9 .inner .download_list li { width: calc((100% - 3.125em) / 3); } /* 2カラムの時 */
  #section9 .inner .download_list li { display: flex; flex-direction: column; }
  #section9 .inner .download_list .cover {  flex: 1; display: flex; flex-direction: column; /*justify-content: space-between;*/ }
  #section9 .inner .download_list .cover > img { margin: auto; }
  }

  @media (min-width: 981px) { 
  .anc ul li:not(:nth-of-type(4n)) { border-right: 1px solid #dddddd; }

  #section9 .inner .download_list .download_list_member { line-height: 36px; font-size: 0.9375em; font-weight: 600; }
  #section9 .inner .download_list .cover { padding: 3.8125em 2.1875em 1.7em; }
  #section9 .inner .download_list .cover > img { display: block; max-width: 253px; max-height: 234px;  }
  #section9 .inner .download_list li .cover > img.portrait { margin-bottom: 2em; }
  #section9 .inner .download_list .title { font-size: 1.0625em; line-height: 1.4; }
  #section9 .inner .download_list li .link_btn a:hover { background-color: #000; }
  }
