@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Caslon+Text&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/css/yakuhanjp.min.css');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/css/yakuhanmp.min.css');
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');
body { background: #fff; line-height: 1.8; letter-spacing: 0.03em; font-size: 1.4rem; font-family: Roboto, YakuHanJP, 'Noto Sans JP', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif; color: #333;}

.bg { background: url(./assets/images/stripe.png) repeat 0 0 #FDF7E8;}

/*header----------------------------------*/
header { position: fixed; top: 0; left: 0; padding: 0 55px; width: 100%; height: 100px; transition: 0.3s; -webkit-transition: 0.3s; z-index: 9999;}
#headerInner { position: relative; width: 100%; height: 100%}
#headerInner h1 { position: relative; z-index: 999; display: inline-block;}
#headerInner h1 a img { width: 183px; height: auto; margin-top: 32px; transition: 0.3s; -webkit-transition: 0.3s;}

#naviBox ul { max-width: 583px; width: 100%; position: absolute; top: 32px; right: 0; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between;}
#naviBox ul li { width: 31%;}
#naviBox ul li a { background: #AA7F22; border-radius: 4px; height: 34px; color: #fff; transition: 0.3s; -webkit-transition: 0.3s; display:flex; flex-direction:column; justify-content:center; align-items:center; gap: 1ch;}
#naviBox ul li a span { font-size: 15px; font-weight: 500; padding-top: 2px;}
#naviBox ul li:nth-child(1) { display: none;}

#mainImg { text-align: center; padding: 64px 0 0 0; background: url(./assets/images/main_bg.png) repeat-x 50% 50%;}
@media screen and (max-width:1200px){
    #mainImg { background-size: 120vw; background-position: 50% 54%;}
}
@media screen and (max-width:959px){
    #mainImg { background-position: 50% 59%;}
}
@media screen and (max-width:767px){
    #mainImg { background-position: 50% 61%;}
}
@media screen and (max-width:640px){
    #mainImg { background: none; padding: 80px 0 0 0;}
}

#toggle {display: none;}

@media screen and (max-width:959px){
    header { height: 80px; padding: 0 32px;}
    #headerInner h1 a img { width: 108px; margin-top: 21px;}
    /* #naviBox { display: none;} */
}

/*ハンバーガーメニュー*/
/* スマホナビ ////////////////////////////////////////////////////////////////////////////////////////////*/
#navToggle { display: none; }
@media screen and (max-width:959px){
	#navToggle { position: fixed; top:0; right: 0; z-index: 101; display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: flex-end; align-items: flex-end; cursor: pointer;}
	#navToggle div { display: inline-block;text-align: center; }
	#navToggle #navMenu { position: relative; display: block; width: 80px; height: 79px; text-align: center; padding: 0; }
	#navToggle span { display: block; width: 40px; height: 2px; background: #AA7F22; position: absolute; left:calc(50% - 20px); -webkit-transition: 0.2s ease-in-out; -moz-transition: 0.2s ease-in-out; transition: 0.2s ease-in-out; }
	#navToggle span:nth-child(1) { top: 28px; }
	#navToggle span:nth-child(2) { top: 40px; }
	#navToggle span:nth-child(3) { top: 53px; }
	.open #navToggle span:nth-child(1) { top: 40px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); transform: rotate(135deg); }
	.open #navToggle span:nth-child(2) { width: 0; left: 50%; }
	.open #navToggle span:nth-child(3) { top: 40px; -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); transform: rotate(-135deg); }
}
@media screen and (min-width:960px){
#spNav { opacity: 1!important; position: static!important; padding: 0!important;}
.navScroll { opacity: 1!important; display: block!important; padding: 0!important;}
}
@media screen and (max-width:959px){
    #spNav { display: none; margin:0; position:fixed; width:100%; z-index:100; background: url(./assets/images/stripe.png) repeat 0 0 #FDF7E8; top: 0px;left: 0;right: 0;bottom: 0; overflow-y: auto; padding-top:160px; padding-bottom: 32px; opacity: 0;}
    .open #spNav { display: block;}
    #s-Nav { max-width: 360px; width: 90%; position:static; margin: 0 auto; transition: all 0.3s ease;}
    .navScroll { opacity: 0; transition: all 0.3s ease;}
    #naviBox ul { max-width: 360px; width: 100%; position: static; margin: 0 auto; transition: all 0.3s ease;}
    #naviBox ul li { width: 100%;}
    #naviBox ul li a { background: none; height: auto; color: #AA7F22; display: block; text-align: center;}
    #naviBox ul li a span { font-size: 16px; font-weight: 700; padding-top: 0;}
    #naviBox ul li + li { margin-top: 32px;}
    #naviBox ul li:nth-child(1) { display: block;}
}






.inner { max-width: calc(1200px + 64px); margin: 0 auto; padding: 0 32px;}
.inner2 { max-width: calc(1024px + 64px); margin: 0 auto; padding: 0 32px;}
@media screen and (max-width:767px){
    .inner { padding: 0 24px;}
    .inner2 { padding: 0 24px;}
}
/* @media screen and (max-width:560px){
    .inner { padding: 0 12px;}
    .inner2 { padding: 0 12px;}
} */


/*ガスファンヒーターの特長-------------------------------*/
#feature { margin-top: -14px;}
#feature h3 { color: #CC9141; font-weight: 500; font-size: 24px; line-height: 100%; margin: 0; padding: 0; text-align: center;}
#featureList { width:100%; margin: -12px auto 0; padding: 40px 28px 36px; border: 2px solid #CC9141; border-top: none; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between; gap: 24px 0; position: relative;}
#featureList::before { content: ""; width: 32%; height: 2px; background: #CC9141; position: absolute; top: 0; left: 0;}
#featureList::after { content: ""; width: 32%; height: 2px; background: #CC9141; position: absolute; top: 0; right: 0;}
#featureList dl { width: 24%; background: #fff; text-align: center;}
#featureList dt { padding: 8px 0 6px; background: #CC9141; font-size: 18px; font-weight: 700; color: #fff; text-align: center;}
#featureList dd { padding: 12px 32px; font-weight: 400; text-align: left;}
@media screen and (max-width:959px){
    #featureList::before { width: 22%;}
    #featureList::after { width: 22%;}
    #featureList dl { width: 48%;}
}
@media screen and (max-width:767px){
    #feature { margin-top: 32px;}
    #feature h3 { font-size: 18px; font-weight: 700;}
    #featureList { margin: -52px auto 0; padding: 76px 20px 20px; border-top: 2px solid #CC9141; gap: 18px 0; position: relative;}
    #featureList::before { display: none;}
    #featureList::after { display: none;}
    #featureList dl { width: 100%;}
    #featureList dt { padding: 6px 0 4px; font-size: 16px;}
    #featureList dd { padding: 10px 24px; font-size: 14px;}
}


/*お買い得品-------------------------------*/
#recommend { background: #fff; position: relative; margin: 112px auto 32px; padding: 112px 0 80px;}
#recommend h2 { text-align: center; width: 100%; margin: -164px auto 0; position: absolute;}
#recommend h2 img {max-width: 1096px; width: 90%; height: auto;}
@media screen and (max-width:1240px){
    #recommend { padding: 11vw 0 80px;}
    #recommend h2 { margin: -15vw auto 0;}
}
@media screen and (max-width:640px){
    #recommend { padding: 12vw 0 24px;}
    #recommend h2 { margin: -23vw auto 0;}
}

/*番号・ロゴ・製品名*/
.nameBox { padding: 0; margin: 0 0 32px; min-height: 50px; border-bottom: solid 1px #AA7F22; border-top: solid 1px #AA7F22; line-height: 1; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: flex-start;}
.nameBox .Number {display:flex; flex-direction:column; justify-content:center; align-items:center; gap: 1ch; background: #AA7F22; color: #fff; font-weight: 700; width: 56px; height: 56px; font-size: 30px; font-family: YakuHanJP, 'Noto Sans JP', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif; margin: 0 24px 0 0;}
.nameBox div { display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: flex-start;}
.nameBox .Logo { display:flex; flex-direction:column; justify-content:center;}
.nameBox .Name { margin-left: 1em; text-align: left; font-size: 22px; font-weight: 700; display:flex; flex-direction:column; justify-content:center;}
.productList .nameBox .Name { font-size: 16px; padding-top: 5px;}
.nameBox .Name > span { display: inline-block; margin-right: 0.7em; line-height: 1.3;}
@media screen and (max-width:640px){
    .nameBox { padding: 0; margin: 0 0 24px; min-height: 40px;}
    .nameBox .Number { width: 40px; height: 40px; font-size: 20px; margin: 0 16px 0 0;}
    .nameBox .Name { font-size: 16px; padding-top: 2px;}
    .nameBox .Logo img { width: auto; height: 20px;}
}
@media screen and (max-width:380px){
    .nameBox { padding: 0; margin: 0 0 24px; min-height: 60px;}
    .nameBox .Number { height: 60px;}
    .nameBox div { display: block; display:flex; flex-direction:column; justify-content:center;}
    .nameBox .Logo { display:block;}
    .nameBox .Name { margin-left: 0em; display:block;}
}

/*製品トップ*/
.product_top {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; gap: 24px;}
.product_topL { /*max-width: 300px;*/ width: 34%;}
.product_topC { max-width: 366px; width: 40%; text-align: center;}
.product_topR { width: 176px;}
.product_topC img {max-width: 366px; width: 100%;}
.product_topL .priceBox .nebiki { display: none;}
@media screen and (max-width:1024px){
    .product_top {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: center; gap: 32px;}
    .product_topL { width: 300px; order: 2;}
    .product_topC { width: 100%;max-width: 100%; order: 1;}
    .product_topR { width: 176px; order: 3;}
}
@media screen and (max-width:640px){
    .product_top {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: center; gap: 0px;}
    .product_topL { width: 100%; order: 3; display:flex; flex-flow: column;}
    .product_topL .nebiki { display: none;}
    .product_topL .priceBox .nebiki { display: block; margin-top: 24px;}
    .product_topR { width: 100%; order: 2;}
    .product_topC { margin-bottom: 24px;}
    .product_topC img {max-width: 80%; width: 100%;}
}
/*暖房の目安*/
.roomArea dt { background: #FCF3D3; font-size: 18px; width: 176px; line-height: 100%; font-weight: 700; padding: 6px; text-align: center; margin: 0 0 8px 0;}
.roomArea dd { line-height: 200%; font-weight: 500;}
@media screen and (max-width:767px){
    .roomArea dt { font-size: 14px;}
}
/*オプション*/
.product_topR ul { background: #fff; font-weight: 500; margin: 32px 0 0 0;}
.product_topR ul li { margin-left: 1.1em; text-indent: -1.1em; text-align: left;}
.product_topR ul li::before { content: "●"; margin-right: 0.25em; font-size: 1.2rem; color: #FFE510; }
@media screen and (max-width:767px){
    .product_topR ul { margin: 10px 0 0 0;}
}
/*値引き*/
.nebiki {padding: 16px; background: #FFEF96; text-align: center; line-height: 1.6; font-size: 16px; font-weight: 600; display: inline-block;}
.nebiki span { display: block; font-size: 20px; color: #e60012 }
.nebiki .intax { display: inline; font-size: 11px;}
.nebiki .discount { display: inline; font-size: 18px;}
@media screen and (max-width:1024px){
    .nebiki span { display: inline-block;}
}
@media screen and (max-width:640px){
    .nebiki {padding: 12px; font-size: 12px; width: 100%; text-align: center;}
    .nebiki span { font-size: 18px; display: inline-block;}
    .nebiki .intax { font-size: 10px;}
    .nebiki .discount { font-size: 16px;}
}
.nebiki_outer {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between; gap: 12px 0;}
.productList .nebiki { width: 48%; padding: 16px 10px; font-size: 13px;}
@media screen and (max-width:1024px){
    .productList .nebiki { width: 100%; padding: 12px 10px;}
}
/*オープン価格*/
.open_price { font-size: 16px; line-height: 160%; margin: 16px 0;}
@media screen and (max-width:767px){
    .open_price { font-size: 15px;}
}
@media screen and (max-width:640px){
    .open_price { font-size: 14px;}
}
/*セール価格*/
.salePrice { font-weight: 600; color: #e60012; }
.salePrice dt { font-size: 20px;}
.salePrice dd { font-size: 32px; font-weight: 500; line-height: 100%; margin-top: 16px;}
.salePrice dd .price { font-size: 66px;}
.salePrice dd .intax { font-size: 16px;}
@media screen and (max-width:640px){
    .salePrice {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: flex-start; gap: 0 16px; margin-top: -8px;}
    .salePrice dt { font-size: 16px; line-height: 120%; width: 56px; text-align-last: justify;display:flex; flex-direction:column; justify-content:center; align-items:center;}
    .salePrice dd { font-size: 21px;}
    .salePrice dd .price { font-size: 42px;}
    .salePrice dd .intax { font-size: 12px;}
}
.productList .salePrice {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: flex-start; gap: 0 16px; margin: 0 0 28px;}
.productList .salePrice dt { font-size: 20px; display:flex; flex-direction:column; justify-content:center; padding-top: 6px;}
.productList .salePrice dd { font-size: 32px; font-weight: 500;}
.productList .salePrice dd .price { font-size: 60px;}
.productList .salePrice dd .intax { font-size: 16px;}
@media screen and (max-width:1024px){
    .productList .salePrice dt { font-size: 18px;}
    .productList .salePrice dd { font-size: 24px;}
    .productList .salePrice dd .price { font-size: 48px;}
    .productList .salePrice dd .intax { font-size: 14px;}
}
@media screen and (max-width:640px){
    .productList .salePrice {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: flex-start; gap: 0 16px; margin-top: -8px;}
    .productList .salePrice dt { font-size: 16px; line-height: 120%; width: 56px; text-align-last: justify;display:flex; flex-direction:column; justify-content:center; align-items:center;}
    .productList .salePrice dd { font-size: 22px;}
    .productList .salePrice dd .price { font-size: 42px;}
    .productList .salePrice dd .intax { font-size: 12px;}
}
@media screen and (max-width:360px){
    .productList .salePrice dt { width: 100%; text-align-last:left; display:block;}
}

.serif { font-family: YakuHanMP, 'Noto Serif JP', 'Yu Mincho', YuMincho, 'Hiragino Mincho ProN', serif;}

ul.notes { margin-top: 24px;}
ul.notes li { line-height: 140%; font-weight: 400; font-size: 12px; padding: 0 0 0 16px; position: relative;}
ul.notes li::before { content: "※"; position: absolute; left: 0; top: 0px;}
ul.notes li + li { margin-top: 4px;}
ul.notes2 { margin-top: 24px;}
ul.notes2 li { line-height: 140%; font-weight: 400; font-size: 12px; padding: 0 0 0 16px; position: relative;}
ul.notes2 li::before { content: "▪"; position: absolute; left: 0; top: 0px;}
ul.notes2 li + li { margin-top: 4px;}
dd ul.notes2 { margin: 0 0 24px;}
dd ul.notes2 li { line-height: 140%; font-weight: 400; font-size: 14px;}
dd ul.notes2 li + li { margin-top: 8px;}

div.notes { font-size: 14px; line-height: 160%;}

/*商品のお申し込みはこちら*/
.linkBtn a { display: block; margin: 32px auto 0; height: 80px; max-width: 510px; text-align: center; font-weight: 600; font-size: 20px; color: #fff; background: #C2000A; display:flex; flex-direction:column; justify-content:center; align-items:center; gap: 1ch; position: relative;}
.linkBtn a::after {content: ""; position: absolute; top: calc(50% - 4px); right: 10%; width:12px; height: 12px; border-top: 2px double #FFF; border-right: 2px double #FFF; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
@media screen and (max-width:1024px){
    .linkBtn a { font-size: 18px;}
}
@media screen and (max-width:767px){
    .linkBtn a { margin: 24px auto 0; height: 64px; font-size: 16px;}
}
@media screen and (max-width:640px){
    .linkBtn a { margin: 12px auto 0; height: 48px; font-size: 14px;}
    .linkBtn a::after { top: calc(50% - 4px); width:8px; height: 8px; right: 3%;}
}

/*全機種対象*/
.subject { background: #FFEF96; padding: 24px 24px 20px; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: center; gap: 0 32px; margin: 0 0 80px;}
.subject dt { font-size: 20px; border: 1px solid #707070; padding: 14px; font-weight: 500; line-height: 100%;}
.subject dd { font-size: 20px; font-weight: 500; line-height: 160%;display:flex; flex-direction:column; justify-content:center;}
.subject dd div { padding-top: 5px;}
.subject dd span { font-size: 24px; color: #F20303; font-weight: 700; display: inline;}
.subject dd span span { font-size: 16px; display: inline;}
.subject div { font-size: 20px; font-weight: 500; line-height: 160%;}
.subject div span { font-size: 24px; color: #F20303; font-weight: 700; display: inline;}
.subject div span span { font-size: 16px; display: inline;}
.subject div div { font-size: 14px; font-weight: 400; text-align: center;}
h2 + .subject { margin: 0 0 32px;}
.subject br { display: none;}
@media screen and (max-width:900px){
    #regular .subject { text-align: center;}
    #regular .subject br { display: block;}
}
@media screen and (max-width:500px){
    .subject { text-align: center;}
    .subject br { display: block;}
}
@media screen and (max-width:767px){
    .subject { padding: 22px 16px 14px; display: block; margin: 0 0 64px; text-align: center;}
    .subject dt { font-size: 16px; padding: 10px; margin-bottom: 12px;}
    .subject dd { font-size: 16px;}
    .subject dd div { padding-top: 0px;}
    .subject dd span { font-size: 20px;}
    .subject dd span span { font-size: 12px;}
    .subject div { font-size: 16px;}
    .subject div span { font-size: 20px;}
    .subject div span span { font-size: 12px;}
    .subject div div { font-size: 12px;}
}
/*レギュラーシリーズ*/
#regular h2 { color: #CC9141; font-weight: 500; font-size: 28px; line-height: 100%; margin: 0 0 32px; padding: 0; text-align: center; position: relative;}
#regular h2::before { content: ""; width:28%; height: 10px; background: url(./assets/images/line.png) repeat-x 0 0; position: absolute; left: 0; top: 8px;}
#regular h2::after { content: ""; width:28%; height: 10px; background: url(./assets/images/line.png) repeat-x 0 0; position: absolute; right: 0; top: 8px;}
@media screen and (max-width:767px){
    #regular h2::before { width:22vw;}
    #regular h2::after { width:22vw;}
}
@media screen and (max-width:640px){
    #regular h2 { font-size: 20px; margin: 0 0 20px;}
    #regular h2::before { width:15vw; top: 6px;}
    #regular h2::after { width:15vw; top: 6px;}
}

.productList { margin: 0 auto 64px; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; gap: 32px;}
.productList > li { width:calc(50% - 16px); padding: 32px; background: #FFF;}
@media screen and (max-width:860px){
    .productList { gap: 24px;}
    .productList > li { width:100%; padding: 24px;}
}
@media screen and (max-width:640px){
    .productList { margin: 0 auto 24px;}
}
.pdtImgBox {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between;}
.pdtImgBox figure { width: calc(100% - 204px); text-align: center;}
.pdtImgBox figure img { max-width: 100%; height: auto;}
.pdtImgBox div { width: 176px;}
@media screen and (max-width:1024px){
    .pdtImgBox { gap: 24px;}
    .pdtImgBox figure { width: 100%; text-align: center;}
    .pdtImgBox figure img { max-width: 80%; height: auto;}
}


.detailsBox {
    position: relative;
    margin-top: 15px;
    border: solid 1px #966C11;
    background: #fff
}
.detailsBox .functionList { border: none; padding: 0;}
.detailsBox .functionList li { margin-left: 1.1em; text-indent: -1.1em; text-align: left;}
.detailsBox .functionList li::before { content: "●"; margin-right: 0.25em; font-size: 1.2rem; color: #FFE510; }
.detailsBox > a,
.detailsBox > div {
    padding: 10px 15px
}
.detailsBox > a {
    position: relative;
    display: block;
    cursor: pointer;
    line-height: 1.5;
    font-weight: 700;
    font-size: 1.5rem;
    color: #966C11;
}
.detailsBox > div {
    padding-top: 0 !important;
    display: none
}
.detailsOpen {
    text-align: center;
    font-weight: 500
}
.btnIcon, .btnIcon span { display: inline-block; -webkit-transition: all .3s; transition: all .3s; }
.btnIcon { position: absolute; top: 50%; right: 15px; margin-top: -1px; width: 26px; height: 26px; }
.btnIcon span { position: absolute; width: 100%; height: 2px; background: #966C11; }
.btnIcon span:nth-of-type(1) { transform: rotate(0); -webkit-transform: rotate(0); }
.btnIcon span:nth-of-type(2) { transform: rotate(90deg); -webkit-transform: rotate(90deg); }
.detailsBox .btnIcon { right: 20px; width: 18px; height: 18px;}
.detailsBox .btnIcon span { background: #966C11;}
.btnIcon.active span:nth-of-type(2) { transform: rotate(0deg); -webkit-transform: rotate(0deg); }




#gasCord { margin: 0 auto 144px; padding-bottom: 20px; border: solid 1px #333; background: #fff; text-align: center; max-width: 1000px;}
.gcTtl { padding: 12px; border-bottom: solid 1px #333; background: #333; line-height: 1.4; font-size: 20px; font-weight: 500; color: #fff}
.gcList { margin: 20px 0 12px; width: 100%; text-align: center; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between;}
.gcList li { width: 24%; font-size: 20px; font-weight: 500; position: relative;}
.gcList li + li:before { content: ""; position: absolute; left: -6px; top: 25%; display: block; width: 1px; height:32px; background: #333; transform: rotate(45deg); -webkit-transform: rotate(45deg);}
.gcList .price { margin-left: 10px; font-size: 24px;}
.gcList .intax { font-size: 14px;}
/* #gasCord p { padding: 0 5%;} */
@media screen and (max-width:959px){
    #gasCord { margin: 0 auto 96px; padding-bottom: 16px;}
    .gcList { margin: 12px 0 10px; padding: 0 16px;}
    .gcList li { width: 50%;}
    .gcList li:nth-child(3):before { display: none;}
    #gasCord .notes { font-size: 12px; padding: 0 16px; text-align: left;}
    /* .gcList li { font-size: 16px;}
    .gcList .price { margin-left: 10px; font-size: 20px;}
    .gcList .intax { font-size: 14px;} */
}
@media screen and (max-width:640px){
    #gasCord { margin: 0 auto 64px;}
    .gcList li { font-size: 13px;}
    .gcList .price { font-size: 16px;}
    .gcList .intax { font-size: 12px;}
    .gcList li + li:before { left: -6px; top: 20%; height:18px;}
}

/*ガス栓増設*/
#gasplug {}
#gasplug h2 { font-size: 35px; line-height: 120%; margin: 0 0 42px; font-weight: 700; text-align: center;}
#gasplug h2 span { font-size: 16px; font-weight: 400; display: block;}
.gasplug { background: #FFFBEB; padding: 80px 0;}
@media screen and (max-width:959px){
    .gasplug { padding: 48px 0;}
}
@media screen and (max-width:640px){
    #gasplug h2 { font-size: 24px; margin: 0 0 12px;}
    #gasplug h2 span { font-size: 14px;}
    .gasplug { background: #FFFBEB; padding: 24px 0;}
}

#withEquip { font-weight: 500; color: #000; text-align: center; line-height: 1.6; max-width: 688px; margin: 0 auto 48px;}
#withEquip dt { font-size: 24px; font-weight: 600; line-height: 60px; position: relative; height: 60px; margin: 0em 50px 1em; padding: 0 0rem; text-align: center;   background: #CC9141;}
#withEquip dt:before,
#withEquip dt:after { position: absolute; top: 0; display: block; height: 48px; content: ''; border: 30px solid #CC9141;}
#withEquip dt:before { left: -40px; border-left-width: 15px; border-left-color: transparent; }
#withEquip dt:after { right: -40px; border-right-width: 15px; border-right-color: transparent; }
#withEquip dt span { position: relative; display: block; color: #fff;}
@media screen and (max-width:959px){
    #withEquip dt { font-size: 20px;}
}
@media screen and (max-width:640px){
    #withEquip { margin: 0 auto 24px;}
    #withEquip dt { font-size: 18px; height: 80px; line-height: 160%; padding-top: 4px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap: 1ch;}
    #withEquip dt::after,
    #withEquip dt::before { height: 0px; border: 40px solid #CC9141;}
    #withEquip dt::before { left: -45px; border-left-width: 15px !important; border-left-color: transparent !important;}
    #withEquip dt::after { right: -45px; border-right-width: 15px !important; border-right-color: transparent !important;}
}
@media screen and (max-width:480px){
    #withEquip dt { font-size: 14px; height: 70px;}
    #withEquip dt::after,
    #withEquip dt::before { height: 0px; border: 35px solid #CC9141;}
}
@media screen and (max-width:340px){
    #withEquip dt { font-size: 13px;}
}

#withEquip dd {line-height: 1.4; font-size: 20px; font-weight: 500;}
#withEquip dd span { font-size: 20px; color: #e60012;}
#withEquip dd span b { font-weight: 700; font-size: 28px;}
#withEquip dd .intax { font-size: 16px; font-weight: 500;}
/* #withEquip dd .notes { margin-top: 0.3em;} */
/* @media screen and (max-width:767px){
    #withEquip dt { font-size: 18px;}
}
@media screen and (max-width:600px){
    #withEquip dt { font-size: 14px;}
} */
@media screen and (max-width:640px){
    #withEquip dd { font-size: 14px;}
    #withEquip dd span { font-size: 18px;}
    #withEquip dd span b { font-size: 22px;}
    #withEquip dd .intax { font-size: 12px;}
}


/*ガス栓増設*/
#plumbingWork { margin-top: 25px; background: #fff;}
#plumbing > p { padding: 12px 12px 10px; background: #AEDCE3; text-align: center; font-size: 20px; font-weight: 500;}
#partsList { margin-bottom: 15px; border-bottom: solid 1px #bbb; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between;}
#partsList li { margin: 20px 0; width: 33.33333%; width: calc(100% / 3); text-align: center; line-height: 1.5; font-weight: 500;}
#partsList li:not(:first-child) { border-left: dashed 1px #aaa;}
#partsList li dd { font-size: 16px;}
#partsList li span { font-size: 35px;}
#plugLayout { padding: 0 40px 35px;}
#layoutImg { margin: 50px auto 0px; max-width: 700px;}
@media screen and (max-width:767px){
    #partsList { display: block;}
    #partsList li { margin: 0; width:100%; padding: 10px 0;}
    #partsList li:not(:first-child) { border-top: dashed 1px #aaa; border-left: none;}
    #partsList li dd { font-size: 14px;}
#partsList li span { font-size: 30px;}
}
@media screen and (max-width:640px){
    #plumbingWork { margin-bottom: 16px;}
    #plumbing > p { padding: 12px 12px 10px; font-size: 16px;}
    #partsList li dd { font-size: 14px;}
    #partsList li span { font-size: 22px;}
    #plugLayout { padding: 0 32px 24px;}
    #layoutImg { margin: 32px auto 0px;}
}



#flow { padding: 128px 0 176px; position: relative;}
#flow h3 { font-size: 35px; font-weight: 700; line-height: 100%; position: relative; margin: 0 0 112px; text-align: center;}

#step { max-width: 1000px; width: 100%; margin: 0 auto; position: relative;}
#step .web_application { border: 1px solid #C2000A; color: #C2000A; width: 150px; height: 150px; border-radius: 50%; text-align: center; font-size: 18px; line-height: 120%;
    font-weight: 700; display:flex; flex-direction:column; justify-content:center; align-items:center; gap: 1ch; position: absolute; z-index: 1; top: -106px; left: -58px;}
#step ul { width: 100%; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between;}
#step li { position: relative; padding: 0 32px 32px; width: 30.6%; width: calc((100% - 48px) / 3); background: #fff; text-align: center; line-height: 1.5; letter-spacing: 0.01em; font-size: 1.7rem; font-weight: 500; color: #555;}
#step li:not(:last-child)::after { content: ""; position: absolute; top: 0; bottom: 0; right: -36px; margin: auto; width: 36px; height: 34px; background: url(./assets/images/arw.svg) no-repeat 50% 50% / contain; z-index: 1;}
#step li dl { height: 100%; position: relative;}
#step li dl dt { color: #C2000A; font-size: 55px; line-height: 100%; font-weight: 700; margin: -32px auto 32px;}
#step li dl dd+dd { margin-top: auto; padding-top: 15px;}
@media screen and (max-width:1068px){
    #flow.inner { max-width: calc(80% + 64px);}
}
@media screen and (max-width:959px){
    #flow.inner { max-width: calc(100% + 64px);}
    #flow { padding: 80px 32px;}
    #flow h3 { font-size: 24px; margin: 0 0 56px;}
    #step .web_application { width: 96px; height: 96px; font-size: 14px; left: auto; right: -4px; top: -45px;}
    #step ul { display:block;}
    #step li { width: 100%; padding: 24px 16px 24px;}
    #step li:not(:last-child) { margin-bottom: 64px;}
    #step li:not(:last-child)::after {top:auto; bottom: -42px; right: calc(50% - 12px); width: 24px; height: 23px; transform:rotate(90deg); margin-left: -17px;}
    #step li dl dt { font-size: 40px; position: absolute; margin: 0; top: -42px; }
    #step li dl dd+dd { font-size: 14px; padding-top: 15px;}
}




#faq { padding: 120px 0 0; width: 100%; margin: 0 auto 96px;}
#faq h3 { font-size: 35px; font-weight: 700; line-height: 100%; position: relative; margin: 0 0 80px; text-align: center;}
#faqList { margin: 0 auto 32px;}
#faqList dt { padding: 20px 20px 20px 128px; line-height: 160%; position: relative; background: #FFFBEB;}
#faqList dd { padding: 20px 20px 20px 128px; line-height: 160%; background: #fff; position: relative;}
#faqList dt::before { content: "Q"; font-size: 24px; line-height: 100%; font-weight: 700; position: absolute; top: 18px; left: 58px; font-family: noto sans;}
#faqList dd::before { content: "A"; font-size: 24px; line-height: 100%; font-weight: 700; position: absolute; top: 18px; left: 58px; font-family: noto sans; color: #C2000A;}
@media screen and (max-width:640px){
    #faq { padding: 64px 0 0; margin: 0 auto 32px;}
    #faq h3 { font-size: 28px; margin: 0 0 64px;}
    #faqList dt { padding: 16px 16px 16px 68px;}
    #faqList dd { padding: 16px 16px 16px 68px;}
    #faqList dt::before { top: 16px; left: 26px;}
    #faqList dd::before { top: 16px; left: 26px;}
}


footer { text-align: center;}

#contact { background: #AA7F22; padding: 96px 0 80px; width: 100%; margin: 0 0 52px;}
#contact .contact h3 { font-size: 35px; font-weight: 700; line-height: 100%; position: relative; margin: 0 0 45px; text-align: center; color: #fff;}
#contact .contact p { color: #fff; margin: 0 0 16px; font-size: 16px; font-weight: 700;}
#contact .contact p span { border: 1px solid #fff; font-size: 14px; padding: 2px 6px; margin: 0 8px; display: inline-block;}
#contact .contact dl {display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between;}
#contact .contact dl div { width: 48%; background: #fff; padding: 32px 24px 24px;}
#contact .contact dl div dt { font-size: 24px; font-weight: 700; line-height: 140%; margin-bottom: 10px; color:#AA7F22;}
#contact .contact dl div dt span { display: block; font-size: 16px; font-weight: 500; color: #333;}
#contact .contact dl div dd span { font-family: Roboto, sans-serif; font-size: 32px; color: #333; font-weight: 700; line-height: 100%;}
#contact .contact dl div dd span::before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    margin: -4px 10px 0 0;
    width: 29px;
    height: 29px;
    background: url('assets/images/tel.svg') no-repeat;
    background-size: contain
}
@media screen and (max-width:640px){
    #contact { padding: 48px 16px 32px; margin: 0 0 32px;}
    #contact .contact h3 { font-size: 28px; margin: 0 0 32px;}
    #contact .contact dl {display:block;}
    #contact .contact dl div { width: 100%; margin: 0 auto 16px; padding: 20px 12px 8px;}
    #contact .contact dl div dt { font-size: 18px;}
    #contact .contact dl div dt span { font-size: 14px;}
    #contact .contact dl div dd span { font-size: 24px;}
}


#specificBtn { margin-top: 64px;}
#specificBtn a { display: block; font-size: 14px; font-weight: 500;}
#copyright { margin-top: 16px; padding-bottom: 32px; letter-spacing: 0.05em; font-family: Roboto, sans-serif; font-size: 1.1rem;}

@media screen and (max-width:640px){
    footer img { width: 147px; height: auto;}
    #specificBtn { margin-top: 32px;}
}


/* #pagetop {
    position: fixed;
    display: none;
    bottom: 3vw;
    right: 3vw;
    width: 56px;
    height: 56px;
    border: solid 1px #F08C00;
    border-radius: 50%;
    background: #fff;
    text-indent: 200%;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    z-index: 999
}
#pagetop a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%
}
#pagetop a::after {
    content: '';
    position: absolute;
    top: 24px;
    left: 19px;
    width: 16px;
    height: 16px;
    border-top: solid 1px #F08C00;
    border-left: solid 1px #F08C00;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
} */


/*特定商取引法に基づく表示*/
.dl_Tbl { margin: 0 auto; border-top: 1px solid #ddd;}
.dl_Tbl div { border-bottom: 1px solid #ddd; border-left: 1px solid #ddd;border-right: 1px solid #ddd; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; justify-content:space-between;}
.dl_Tbl div dt { background: #F2F2F2; padding: 16px; width: 25%;}
.dl_Tbl div dd { padding: 16px; width: 75%; background: #fff;}
@media screen and (max-width:767px){
    .dl_Tbl div dt { padding: 10px; width: 100%;}
    .dl_Tbl div dd { padding: 16px; width: 100%;}
}

#specific main { padding: 240px 0 160px;}
#specific .inner2 h2 { font-size: 35px; line-height: 100%; font-weight: 700; margin: 0 0 80px; padding: 0; text-align: center;}

@media screen and (max-width:959px){
    #specific main { padding: 160px 0 128px;}
    #specific .inner2 h2 { font-size: 30px; margin: 0 0 64px;}
}
@media screen and (max-width:767px){
    #specific main { padding: 128px 0 96px;}
    #specific .inner2 h2 { font-size: 26px; margin: 0 0 48px;}
}
@media screen and (max-width:640px){
    #specific main { padding: 128px 0 64px;}
    #specific .inner2 h2 { font-size: 20px; margin: 0 0 24px;}
}


@media screen and (min-width:768px){
    a[href^="tel:"] {
        pointer-events: none;
    }
}