﻿/***** Zbg ************************************************************************/

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td{
margin:0; padding:0;
list-style:none;}
table{border-collapse:collapse; border-spacing:0;}
img{border:0;}

/**TOP**/

/* ----pc  {^gÝíš---- */
.flatbtn {
box-sizing: border-box;
text-align: center;
border-radius: 40px;
color: #333; 
display: flex;
opacity: 1.0;
width: auto; 
height: 100%;
align-items: center;
justify-content: center;
cursor: pointer;
}
@media screen and (min-width: 768px){
.flatbtn.sp-only {
display: none;
}
}
@media screen and (max-width: 767px){
.flatbtn.pc-only {
display: none;
}
}

.flatbtn:hover,
.flatbtn:focus {
text-decoration: none;
opacity: 0.75;
transition: 0.6s; 
}
.flatbtn:active,
.flatbtn.active {
outline: 0;
box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.125); 
}
.flatbtn.disabled,
.flatbtn[disabled],
.flatbtn.disabled:hover,
.flatbtn[disabled]:hover,
.flatbtn.disabled:active,
.flatbtn[disabled]:active {
cursor: not-allowed;
opacity: 0.65;
filter: alpha(opacity=65);
box-shadow: none !important;
}
.default-btn{
background:#979797;
}
.orange-btn{
background:#EA6D0D;
}
.red-btn{
background:#E50012;
}
.blue-btn{
background:#19499c;
}
.mustard-btn{
background:#d7ab1a;
}
.default-btn,.orange-btn,.red-btn,.blue-btn,.mustard-btn {
color: #fff; 
}
.border-btn {
border: 1px solid #B6B6B6;
}
.border-btn:hover{
border-color: #E5002D;
}
.border-btn.selected {
border-color: #d4122c;
}
.border-btn-orange {
border: 1px solid #EA6D0D;
color: #EA6D0D;
}
.arrow-r,.arrow-d {
position: relative
}
.arrow-r::after {
content: "";
position: absolute;
right: 18px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
width: 8px;
height: 8px;
-webkit-transform: rotate( 45deg);
transform: rotate( 45deg);
top: 0;
bottom: 0;
margin: auto;
}
.arrow-r-orange::after {
border-color: #EA6D0D;
}
.arrow-r-red::after {
border-color: #E5002D;
}
.border-btn.arrow-r::after {
border-color: #B6B6B6;
}
.arrow-d::after {
content: "";
position: absolute;
right: 15px;
border-top: 2px solid #B6B6B6;
border-right: 2px solid #B6B6B6;
width: 8px;
height: 8px;
-webkit-transform: rotate( 135deg);
transform: rotate( 135deg);
top: 0;
bottom: 0;
margin: auto;
}
.arrow-d-red::after {
border-color: #E5002D;
}
.arrow-d-orange::after {
border-color: #EA6D0D;
}
.border-btn.arrow-d::after {
border-color: #B6B6B6;
}
.mwbtn{
max-width: 480px;
margin: 0 auto
}
.etcbtn{
font-size: 1.2rem
}
.fs-small { font-size: 0.8em; padding: 0.8rem 1.2rem; }
.fs-medium { font-size: 1.0em; 	padding: 0.8rem 0.2rem; }
.fs-large { font-size: 1.62em; padding: 1.05rem 1rem; }
.fs-medium-2line{font-size: 1.0em;padding: 0.8rem 1.2rem;height: 3em;}
@media screen and (max-width: 767px){.fs-medium-2line{font-size: 0.8em;}}
/* -- pc  {^gÝíšend --  */

.reform_btn {
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    font-feature-settings: "palt" 1;
}

/***** y[Wp ************************************************************************/

body {
	overflow: hidden;
	}

.webfont{
	font-family: "Noto Sans JP","ŕSVbN", "Yu Gothic",Meiryo,"qMmpS Pro W3","Hiragino Kaku Gothic Pro",verdana,Osaka,Sans-Serif;
}

header {
	padding: 20px;
    background-color: #fff;
    text-align: center;
    width: 100% !important;
    margin: 0 auto !important;
	}

.breadcrumb{
    padding: 10px 10px 20px;
    margin: auto;
    max-width: 1200px;
    color: #83838f
}
	
.breadcrumb p a{
    text-decoration: none;
    color: #83838f
}
article.contents-block{
    margin: auto auto 40px;
    max-width: 1200px;
    background: #fff;
    border-radius: 5px;
    box-shadow: 0 0 5px #ccc;
    box-sizing: border-box;
}

.block_h2{
    text-align: left;
    position: relative;
    font-size: 1.25em;
    margin: 20px 0 30px;
    padding: 10px 0;
    font-weight: normal;
}
.lv_h1{
    font-size: 2.5em;
    line-height: 1.2;
    margin: 10px 0;
    font-weight: bold;
    font-feature-settings: "palt" 1;
}
.block_h2.mb10{
    margin: 20px 0 10px;
}
.block_h2.mb20{
    margin: 20px 0 20px;
}
.block_h2::before{
position: absolute;
    content: " ";
    border-bottom: solid 3px #E5002D;
    bottom: -3px;
    width: 100%;
    display: block;
}

.block_h2.jirei_h2::before{
    display: none;
}

.block_txt{
    line-height: 1.2;
    margin: 10px 0;
}

img.border_box{
     border: 1px solid #bbb;
    box-sizing: border-box;
}

.block-main{

}
.block-main .main_title{
    text-align: center;
    padding: 20px 10px;
}
.block-main .main_title p{
    line-height: 1.2;
}
 
.block-main h1{
    font-size: 2.5em;
    line-height: 1.2;
    margin: 10px 0;
    font-weight: bold;
    font-feature-settings: "palt" 1;
}
.block-main .main_img{
margin: 0 0 40px;
}
.block-main .main_img img{
width: 100%;
    height: auto;
    margin: 0 0 20px;
}

.block-main .main_img p{
padding: 0 10px;
}
.block-main .main_img p.main_txt{
line-height: 1.2;
}
.img_container {
    position: relative;
}
.icon_container {
    position: absolute;
    width: 30%;
}
 .img_container img,
 .icon_container img {
    width: 100%;
    height: auto;
}
@media screen and (max-width: 767px){
 .block-main .main_title{
    text-align: left;
}   
    .block-main h1{
    font-size: 1.75em;
        text-align: center;
    margin: 10px 0 20px;
}
    .lv_h1{
    font-size: 2em;
}

 }    
 
@media screen and (max-width: 767px){
.block-main.spot h1 {
}
}
.price .price_title{
    margin: 10px 0;
    font-size: 1.5em;
    font-weight: bold;
}
.price .price_title.main_goods{
    line-height: 1.2;
    font-feature-settings: "palt" 1;
}
.price .price_title span{
    font-size: 16px;
    font-weight: normal;
}

.price .price_block{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.price .price_block p{
    line-height: 1.2;
    font-size: 1.25em;
}
.price .price_block .price-cols{
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    margin: 9px 0 7px;
}
.price .price_block .price-cols.const-cols{
    width: calc(50% - 20px);
    border: 1px solid #bbb;
    margin: 0 0 0 20px;
    padding: 0px 20px;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.price .price_block .price-cols.const-cols .price_title{
    width: 30%;
    line-height: 1.2;
    margin: 10px 0;
}
.price .price_block .price-cols.const-cols .price_title span{
    font-size: 16px;
    font-weight: normal;
}
.price .price_block .price-cols.const-cols .const_block{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    width: 70%;
    align-items: center;
}
.price .price_block .price-cols.const-cols .const_block .price_value {
    font-size: 4em;
}
@media screen and (max-width: 767px){
    
.price .price_block .price-cols.const-cols{
    width: 100%;
    margin: 10px 0;
}    
.price .price_block .price-cols.const-cols .price_title {
    width: 100%;
    margin: 10px 0 10px;
}    
    
.price .price_block .price-cols.const-cols .const_block {
    width: 100%;
    margin: 0 0 7px;
}    
.price .price_block .price-cols.const-cols .const_block .price_value {
    font-size: 10vw;
}    
    
    
}



.price .price_block .price-cols.solo{
    width: auto;
}

.price .price_block .price-cols .price_value{
    text-align: right;
    font-size: 5em;
    font-weight: bold;
}
.price_value .price_tax,.price_value .price_en{
    font-size: 0.3em;
}
.price_value .price_plus{
    margin: 0 10px 0 0;
    font-weight: normal;
}
.price_value{
    font-size: 3em;
    font-weight: bold;
    line-height: 1.2;
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
}
@media screen and (max-width: 767px){
   .price .price_block .price-cols{
    width: 100%;
       margin: 0 0 20px;
}
    .price .price_block .price-cols:last-child{
       margin: 0 0 0px;
}
    .price .price_block .price-cols.solo{
    width: 100%;
    margin: 9px 0 7px;
}

    .price .price_block .price-cols .price_value{
    font-size: 12vw;
}
.price .price_block .price-cols .price_value{
    font-size: 12vw;
} 
}

.kome{
    text-align: right;
    margin: 10px 0;
}
#atsample{
border: 1px solid #000;
margin-top: 15px;
padding: 5px;
}

.price-box{
    width: calc(100% - 20px);
    margin: 40px auto 30px;
    padding: 10px;
    box-sizing: border-box;
}
.price .price_block p.const_exp{
    width: 100%;
    text-align: right;
    font-size: 16px;
    margin: 10px 0;
}
.const-box{
    width: calc(100% - 40px);
    border: 1px solid #bbb;
    margin: 0px auto 30px;
    padding: 0px 20px 0px;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.const-box .price_block{
    justify-content: flex-end;
}
.const-box .price_block .price-cols {
    margin: 9px 20px 7px;
}
.const-box .price_block .price-cols .price_value {
    font-size: 4em;
}
@media screen and (max-width: 767px){
    .const-box {
    padding: 5px 10px 0px;
    justify-content: space-between;
}
    .const-box .price_title {
    margin: 0 20px 20px 0;
}
    .const-box .price_block{
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}
    .const-box .price_block.spw100{
    width: 100%;
}
    .const-box .price_block p {
    font-size: 1em;
}
    .const-box .price_block .price-cols .price_value {
    font-size: 10vw;
}
    .const-box .price_block .price-cols {
    margin: 9px 20px 7px;
}
}

.block-point{
    padding: 10px;
}
.block-point.spot{
    padding: 20px;
}
.block-spec{
    padding: 10px;
}
.block-option{
    padding: 10px;
}
.block-cont{
    padding: 10px;
}
.block_list{
    display: flex;
    flex-wrap: wrap;
}
.block_list li p{
    line-height: 1.2;
}
.block_list li p span{
    display: inline-block;
    margin: 0 10px 0 0;
}
.block_list li img{
    width: 100%;
    height: auto;
    margin: 10px 0;
}
.topic_title{
    font-size: 1.25em;
    margin: 10px 0 10px;
}
.topic_up{
    margin: 10px 0;
}
.topic_list{
    margin: 10px 0;
}
.block_list.cols1-1 li{
    width: 100%;
    margin: 0 0 30px 0;
}
.block_list.cols2-1 li{
    width: calc(50% - 5px);
    margin: 0 10px 30px 0;
}
.block_list.cols2-1 li:nth-child(2n){
    margin: 0 0 30px 0;
}
.block_list.cols3-2 li,.block_list.cols3-1 li{
    width: calc(100% / 3 - 6px);
    margin: 0 9px 40px 0;
}
@media screen and (min-width: 768px){
.block_list.cols3-2 li:nth-child(3n),.block_list.cols3-1 li:nth-child(3n){
    margin: 0 0 20px 0;
}
}
@media screen and (max-width: 767px){
 .block_list.cols2-1 li{
    width: 100%;
    margin: 0 0 30px 0;
}  
    .block_list.cols3-2 li{
    width: calc(50% - 5px);
    margin: 0 10px 30px 0;
}  
    .block_list.cols3-2 li:nth-child(2n){
    margin: 0 0px 30px 0;
}  
    .block_list.cols3-1 li{
    width: calc(50% - 5px);
    margin: 0 10px 30px 0;
}  
}
.btn_list{
    display: flex;
    flex-wrap: wrap;
    margin: 20px 0 30px;
}
.btn_list.cols2-1 li{
    width: calc(50% - 5px);
    margin: 0 10px 20px 0;
}
.btn_list.cols2-1 li:nth-child(2n){
    margin: 0 0 20px 0;
}
.btn_list.cols3-2 li{
    width: calc(100% / 3 - 6px);
    margin: 0 9px 20px 0;
}
@media screen and (min-width: 768px){
.btn_list.cols3-2 li:nth-child(3n){
    margin: 0 0 20px 0;
}
}
@media screen and (max-width: 767px){
 .btn_list.cols2-1 li{
    width: 100%;
    margin: 0 0 20px 0;
}  
    .btn_list.cols3-2 li{
    width: calc(50% - 5px);
    margin: 0 10px 20px 0;
}  
    .btn_list.cols3-2 li:nth-child(2n){
    margin: 0 0px 20px 0;
}  
}

.cont_block{
    background: #ededed;
    padding: 10px;
    border-radius: 10px;
}
.cont_list{
    display: flex;
    flex-wrap: wrap;
}
.cont_list li{
    display: flex;
    flex-wrap: wrap;
    width: calc(50% - 5px);
    margin: 0 10px 20px 0;
}
.cont_list li:nth-child(2n){
    margin: 0 0 20px 0;
}
.cont_list_icon{
    width: 30%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cont_list_icon img{
    width: 100%;
    max-width: 150px;
    height: auto;
}
.cont_list_txt{
    width: 70%;
    padding: 0 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.cont_list_title{
    font-size: 1.25em;
    margin: 0 0 10px;

}
@media screen and (max-width: 767px){
 .cont_list li{
    width: 100%;
}
.cont_list_icon{
    width: 25%;
}
.cont_list_txt{
    width: 75%;
}   
    
}

.block-goods{
    padding: 10px;
}
.block-goods-spec{
    padding: 10px;
}
.point_list{
    
}
.point_list li{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 40px;
}
.point_list li .goods_img{
    width: 50%;
}
.point_list li .goods_img img{
    width: 100%;
    height: auto;
}
.point_list li .goods_img{
    width: 50%;
}
.point_list li .goods_img p.goods_title{
    position: absolute;
    font-size: 2em;
    font-weight: bold;
    margin: 30px;
}
.point_list li .goods_exp{
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.point_list li .goods_sub{
    border: 1px solid #000;
    padding: 10px;
    box-sizing: border-box;
    margin: auto 0;
}
.point_list li .goods_sub img{
    width: 100%;
    height: auto;
}
.point_list li .goods_sub_title{
    text-align: center;
    font-size: 1.25em;
    margin: 10px 0;
}
.point_list li .goods_price{

}
.point_list li .goods_title{
    font-size: 1.5em;
    margin: 0 0 20px;
}
.point_list li p.annotation{
    text-align: right;

}
@media screen and (max-width: 767px){
.point_list li .goods_img{
    width: 100%;
}
.point_list li .goods_exp{
    width: 100%;
}   
.point_list li .goods_sub {
    margin: 10px 0;
}   
.point_list li .goods_img p.goods_title{
    margin: 0;
}
}

.func_list li{
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 5px;
}

ul.disc_list{
    padding: 0 0 0 30px;
    line-height: 1.2;
}
@media screen and (max-width: 767px){
ul.disc_list{
    padding: 0 0 0 20px;
}      
}
ul.disc_list li{
    margin: 0 0 10px;
    list-style-type: disc;
}

.exp_list{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 0 20px;
}
.exp_list .goods_img{
    width: 50%;
}
.exp_list .goods_img img{
    width: 100%;
    max-width: 600px;
    display: block;
    margin: auto;
}
.exp_list .goods_exp{
    width: 50%;
}
.exp_list .goods_exp p{
    font-size: 1em;
    line-height: 1.2;
}
@media screen and (max-width: 767px){
.exp_list .goods_img{
    width: 100%;
    margin: 0 0 30px;
}    
.exp_list .goods_exp{
    width: 100%;
}    
    
}
.border-box{
    border: 1px solid #bbb;
    margin: 0px auto 30px;
    padding: 20px;
    box-sizing: border-box;
}
.slide-box{
    margin-bottom: 20px;
}
@media screen and (max-width: 767px){
.slide-box{
    overflow: hidden;
    position: relative;
    overflow-x: scroll;
    margin-bottom: 20px;
}

.slide-box table{
    width: 1200px;
}
.slide-box.w600 table{
    width: 600px;
}
}
img.solo-img{
    width: 100%;
    max-width: 600px;
}
.scroll_supplement span {
    border: 2px solid #ff0000;
    display: inline-block;
    font-weight: bold;
    color: #ff0000;
    padding: 5px 10px;
}
.scroll_supplement {
    margin: 10px 0;
}

.m10{
    margin: 10px
}

.m20{
    margin: 20px
}

.m60{
    margin: 60px
}

.mb10{
    margin-bottom: 10px
}

.mb20{
    margin-bottom: 20px
}

.mb60{
    margin-bottom: 60px
}

/*{Há*/

.block-main .main_img.jirei_img{
display: flex;
    align-items: flex-end;
    max-width: 1200px;
    padding: 0 10px;
    margin: auto;
    flex-wrap: wrap;
}
.block-main .rotation .rotation--box a{
    position: relative;
    display: flex;
    min-height: 450px;
    max-height: 450px;
    align-items: center;
    justify-content: center;
}
.block-main .rotation .rotation--box a p{
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 3;
    color: #fff;
    font-size: 2em;
    background: rgb(0,0,0,0.6);
    padding: 5px 10px;
}
.block-main .rotation .rotation--box .after_img{
    position: relative;
}
.block-main .rotation .rotation--box .before_img{
    position: relative;
}
.block-main .rotation .rotation--box .after_img::after{
    content: "After";
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 3;
    color: #fff;
    font-size: 2em;
}
.block-main .rotation .rotation--box .before_img::after{
    content: "Before";
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 3;
    color: #fff;
    font-size: 2em;
}

.block-main .main_img.jirei_img .before_img .before_txt{
    margin: 0 0 10px;
}
.block-main .main_img.jirei_img .smn_img{
    max-width: 300px;
    margin: 0 10px 20px 0;
}
.block-main .main_img.jirei_img .smn_img .smn_txt{
    margin: 0 0 10px;
}
.block-main .main_img.jirei_img .smn_img a{
    overflow: hidden;
    max-height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 200px;
    border: 1px solid #bbb;
    border-radius: 5px;
background: #ccc;
}
.block-main .main_img.jirei_img .smn_img a img {
    margin: 0;
    transition: all 0.3s ease 0s;
}
@media screen and (min-width: 768px){

.block-main .main_img.jirei_img .smn_img a img:hover {
    transform: scale(1.05, 1.05);
    opacity: .8;
}
}
@media screen and (max-width: 767px){
 .block-main .main_img.jirei_img .after_img{
    width: 100%;
     margin: auto;
}   
.block-main .main_img.jirei_img .before_img{
    max-width: 640px;
    margin: auto;
    width: 100%;
    padding: 0 10px;
} 
.block-main .main_img.jirei_img .smn_img{
    max-width: 300px;
    width: calc(50% - 5px);
    margin: 0 10px 20px 0;
}
    .block-main .main_img.jirei_img .smn_img:nth-child(2n){
    margin: 0 0 20px 0;
}
.block-main .main_img.jirei_img .before_img img{
    width: calc(40% - 10px);
}
.block-main .rotation .rotation--box a p{
    font-size: 1em;
}    
.block-main .main_img.jirei_img .smn_img a img {
max-width: 300px;
}
}
.point_txt{
    line-height: 1.2;
}

.result .result_block{
display: flex;
    flex-wrap: wrap;
    justify-content: center;
    border: 1px solid #bbb;
    margin: 10px;
    padding: 10px;
    }

.result .result_block .result_clos{
    width: auto;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    margin: 0 10px;
}
.result .result_block .result_clos .result_value{
    text-align: right;
    font-size: 6em;
    font-weight: bold;
    margin: 0 0.1em;
}
.result .result_block .result_clos .result_value .value_unit{
    font-size: 0.5em;
}

@media screen and (max-width: 767px){
.result .result_block .result_clos{
    margin: 10px;
}
}


@media screen and (max-width: 767px){
    .result .result_block {
    justify-content: flex-start;
    padding: 10px;
}
    .result .result_block .result_clos{
        justify-content: space-between;
    }
.result .result_block .result_clos .result_value{
        font-size: 14vw;
}      
}

.spot-box{
display: flex;
flex-wrap:wrap;
justify-content: space-between;
}

.spot-box .spot-cols{
width:calc(50% - 10px);
margin:0 10px 10px 0;
}

.spot-box .spot-cols:nth-child(2n){
margin:0 0 10px 0;
}

@media screen and (max-width: 767px){
.spot-box .spot-cols {
    width: 100%;
    margin: 0 0 10px 0;
}
}

.backtop {
	text-align:right;
	margin-top: 10px;
	margin-bottom: 5px;
	clear: both;
	}	
.backtop.mb20 {
	margin-bottom: 20px;
	}
.backtop a{
	color: #005FC3;}

.jirei_comment{
    display: flex;
    background: #ddd;
    padding: 1.5em 1em;
    border-radius: 0.5em;
    align-items: center;
    position: relative;
}
.jirei_comment::before{
    content: "";
    position: absolute;
    border-style: solid;
    border-color: transparent transparent #ddd transparent;
    top: -36px;
    left: 30px;
    border-width: 20px;
}
.jirei_comment.manager{
    background: #36549b;
    color: #fff;
}
.jirei_comment.manager::before{
    border-color: transparent transparent #36549b transparent;
}
.goods_list{
    padding: 10px 0px 0px 10px;
}
.goods_list li{
    line-height: 1.2;
    margin: 0 0 5px;
}
.spot-cols .goods_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 10px 0 0 25px;
    font-feature-settings: "palt" 1;
}
.spot-cols .goods_list li:first-child{
    width: 30%;
    list-style-type: disc;
    position: relative;
}
.spot-cols .goods_list li:nth-child(2n + 1){
    width: 30%;
    list-style-type: disc;
    position: relative;
}
.spot-cols .goods_list li:nth-child(2n){
    width: 70%;
    position: relative;
    display: flex;
    align-items: center;
}
@media screen and (min-width: 767px){
.spot-cols .goods_list li:first-child::after{
    content: ":";
    position: absolute;
    right: 5px;
    transform: translate(-50%,-50%);
    top: 50%;
}
.spot-cols .goods_list li:nth-child(2n + 1)::after{
    content: ":";
    position: absolute;
    right: 5px;
    transform: translate(-50%,-50%);
    top: 50%;
}
.spot-cols .goods_list li.no-side::after{
    content: none;
}
    }
@media screen and (max-width: 767px){
.spot-cols .goods_list {
    padding: 10px 0 0 20px;
}
.spot-cols .goods_list li:first-child{
    width: 100%;
}
.spot-cols .goods_list li:nth-child(2n + 1){
     width: 100%;
}
.spot-cols .goods_list li:nth-child(2n){
     width: 100%;
    margin: 0 0 20px;
}   
    
}
.const_list{
    padding: 10px 0px 0px 10px;
}
.const_list li{
    line-height: 1.2;
    margin: 0 0 5px;
}

.prev-next{
    
}
.prev-next .prev-next_block{
     display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    /* margin: 10px; */
    padding: 10px;
}
.prev-next .prev-next_block.frist_block{
     justify-content: flex-end;
}
.prev-next .prev-next_block.last_block{
     justify-content: flex-start;
}
.prev-next .prev-next_block a:hover{
     text-decoration: underline;
    opacity: 0.75;
    transition: 0.6s;
}
.prev-next .prev-next_block a.prev-btn{
     position: relative;
    padding: 0 0 0 1.75rem;
}
.prev-next .prev-next_block a.next-btn{
     position: relative;
    padding: 0 1.75rem 0 0;
}
.prev-next .prev-next_block a.prev-btn::after{
    content: "";
    background-image: url(/contents/reform/common/img/2302/spot/arow_l.svg);
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
}
.prev-next .prev-next_block a.next-btn::after{
     content: "";
    background-image: url(/contents/reform/common/img/2302/spot/arow_r.svg);
    position: absolute;
    top: 0;
    right: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
}
/* ----wb_[CSS---- */

@media screen and (min-width:768px){
	#header{
		padding: 0;
  box-shadow: rgb(0 0 0 / 7%) 0px 4px 3px -1px, rgb(0 0 0 / 6%) 0px 2px 4px -1px;
		color: #333;
		position: relative;
        height: 100px;
	}
	#header .header-band{
		height: 55px
	}
	#header  .header-logo{
		grid-area:header-logo;
	}
	#header  .header-search{
		grid-area:header-search;
	}
	#header  .header-usr{
		grid-area:header-usr;
	}
	#header  .header-cart{
		grid-area:header-cart;
	}
	#header  .header-store{
		grid-area:header-store;
	}
    #header  .header-est{
		grid-area:header-est;
        /*background: #EA6D0D;*/
    height: 100%;
    display: flex;
    align-items: center;
    min-height: 80px;
        justify-content: center;
	}
    #header  .header-est a{
		display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
	}
    #header  .header-est a:hover {
    opacity: 0.75;
    transition: 0.6s;
}
    #header  .header-est img{
		width: 100px;
        height: 100px;
	}
    #header  .header-est p{
		color: #fff;
	}
    #header  .header-contact{
		grid-area:header-contact;
        /*background: #979797;*/
    height: 100%;
    display: flex;
    align-items: center;
    min-height: 80px;
        justify-content: center;
	}
    #header  .header-contact p{
		color: #fff;
	}
    #header  .header-contact a:hover {
    opacity: 0.75;
    transition: 0.6s;
}
    #header  .header-contact.sp-only{
		display: none;
	}
	#header  .header-nav{
		grid-area:header-nav;
		position: relative;
	}
	#header .header-container{
  display: grid;
    grid: "header-logo header-nav black-bg" / auto 52% 0px;
    gap: 0rem 0rem;
    align-items: center;
    width: 1200px;
    margin: 0 0 0 auto;
    /* padding: 0 20px; */
    position: relative;
    background: #fff;
        height: 100%;
	}
	#header .header-logo--img a{
        display: flex;
    flex-wrap: nowrap;
    align-items: center;
		    }
    #header .header-logo--img p{
        text-align: justify;
    padding: 0.5em;
    box-sizing: border-box;
    font-feature-settings: "palt" 1;
    line-height: 1.2;
    color: #15489E;
		    }
	#header .header-nav ul.header-nav--list{
		display: flex;
    flex-wrap: wrap;
    padding: 0 0 0 70px;
			}
    #header .header-nav ul.header-nav--list li{
		font-size: 0.8em;
        height: 2.2em;
    display: flex;
    align-items: center;
			}
	#header .header-nav ul.header-nav--list li a{
		position: relative;
		padding: .8rem 1rem;
		display: block;
  transition: all .3s;
	}
    #header .header-nav ul.header-nav--list li a:hover {
    text-decoration: underline;
    transition: 0.3s;
    text-underline-offset: 0.35em;
}
		#header .header-nav ul.header-nav--list li a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: '';
  background: #F1F1F1;
  transform-origin: bottom;
  transform: scale(0, 1);
  transition: transform .3s;
}
	#header .header-nav ul.header-nav--list li a:hover::before {
  transform-origin:top;
  transform: scale(1, 1);
}
    #header .header-nav ul.header-nav--list li.sp-only{
		display: none;
			}

	#header .header-search{
		display: flex;
		align-items: center;
		border: 1px solid #333;
		box-sizing: border-box;
		border-radius: 4px;
		overflow: hidden
	}

	#header .header-search--input input{
   font-size: 1rem;
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   border: 0;
   background: #fff;	
   padding: .8em .8em;
   box-sizing: border-box;
   width: 417px;
   height: 42px;
   border-radius: 3px;
   color: #757575;
	}
	#header .header-search--input-btn{
	  background: #E30012;
		 height: 42px;
		 display: flex;
		 justify-content: center;
	 	align-items: center;
		 border-radius: 0 3px 3px 0;
	}
	#header .header-search--input-btn input{
		 width: 20px;
		 height: auto;
		 padding: 0 11px;
		-webkit-appearance: none;
   -moz-appearance: none;
  appearance: none;
		border: 0;
		}
	#header .header-usr{
		display: flex;
		align-items: center
	}
	#header .header-usr .header-usr--icon{
		margin-right: .6rem
	}
	#header .header-usr--name{
		font-size: .85rem
	}
	#header .header-usr--name a{
		display: block;
		margin-top: 5px;
		color: #333;
		font-weight: bold;
		font-size: .95rem
	}
	#header .header-cart{
		display: flex;
		align-items: center;
		justify-content: space-between
	}
	#header .header-cart .header-cart--icon{
		position: relative;
		margin-right: 1rem
	}
	#header .header-cart .header-cart--bag{
  display: inline-flex;
  fill: #fff;
  background: #E30012;
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  text-align: center;
  justify-content: center;
  align-items: center;
  padding: 1px;
  position: absolute;
  top: -0.35rem;
  right: -0.7rem;
  line-height: 1.1;
  font-size: .75rem;
  color: #fff;
  text-transform: uppercase;
 	transform: scale(.85);
  transform-origin: 50% 50%;
	}
	#header .header-cart--count{
		
	}
	#header .header-cart--count-txt{
		display: block;
		font-size: .9rem
	}
	#header .header-cart--total-count{
		display: block;
		text-align: right;
		margin-top: 5px;
		font-size: .95rem
		}
	#header .header-store{
		display: flex;
		align-items: center;
	 justify-content: flex-end;
		position: relative;
	}
		#header .header-store--icon{
		margin: 0 .8rem
	}
	#header .header-store--dt .header-store--dt__head{
		font-size: .95rem;
		display: block
	}
	#header .header-store--dt-cont{
		display: flex;
		align-items: center;
		margin-top: 5px
	}
	#header .header-store--dt-name{
		font-size: .95rem;
		cursor: pointer;
	 position: relative;
	 padding-right: 1.5rem;
	}
	#header .header-store--dt-name::after {
  content: "";
  position: absolute;
  right: 5px;
  border-top: 1px solid #969694;
  border-right: 1px solid #969694;
  width: 7px;
  height: 7px;
  -webkit-transform: rotate( 135deg);
  transform: rotate( 135deg);
  top: 0;
  bottom: 0;
  margin: auto;
}
	#header .header-store--dt-time{
		font-size: .95rem;
		margin: 0 1rem 0 .8rem
	}
	#header .header-store--dt-btn__change{margin: -18px 0 0 0;}
	#header .header-store--dt-btn__change a{
		box-sizing: border-box;
	 padding: .6rem;
	 box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
		color: #fff;
		font-size: 13px;
	 background: #969694;
  border-radius: 40px;
  display: flex;
  opacity: 1.0;
  width: auto;
  height: 100%;
  align-items: center;
  justify-content: center;
  cursor: pointer;
	}
	#header .header-store--dt-btn__change a:hover{
		opacity: 0.75;
  transition: 0.6s;
}

	#header .hamburger{
		display: none
	}
	#header  .header-contact{
		grid-area:header-contact;
	}
	#header .header-contact a{
		display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
		}
		#header .header-contact p{
font-size: 0.8rem;
line-height: 1.35;
		}
	.menu-category-list {
  width: 15em;
  background-color: #FFF;
  position: absolute;
  top: 58px;
  left: 0;
  z-index: 100;/* 2020/09/14 bita-a0179 mod  10 -> 100 */
  transition: all .2s;
  overflow-x: hidden;
  overflow-y: hidden;
  display: none;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 12px;
}
.menu-category-list > ul {
  padding-bottom: 70px;
}
.menu-category-list.open {
  transform: translateZ(0);
}
.menu-category-list.depth2-open {
  width: 30em;
}
.menu-category-list.depth3-open {
  width: 45em;
}
.menu-category-list li {
  border-bottom: 1px dotted #ccc;
  cursor: pointer;
  margin: 0 1em;
  padding: 0.3em;
}
.menu-category-list li a {
  color: #333;
}
.menu-category-list li a:hover {
  opacity: 1;
}
.menu-category-list li.active > [class$="-nm"] {
  font-weight: bold;
}
.menu-category-list li.depth1-back, .menu-category-list li.depth2-back {
  border-bottom: 1px solid #d5dbdb;
}
.menu-category-list li .depth1-lower, .menu-category-list li .depth2-lower {
  width: 15em;
  min-height: 100%;
  background-color: #FFF;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  transform: translate(-30em);
  transition: all 5ms;
}
.menu-category-list .depth1 .lnk1, .menu-category-list .depth2 .lnk2 {
  display:block;
}
.menu-category-list .depth1 .lnk1 a, .menu-category-list .depth2 .lnk2 a, .menu-category-list .depth3 a{
  display:block;
}
.menu-category-list li .depth1-lower.open {
  left: 15em;
  transform: translateZ(30em);
}
.menu-category-list li .depth2-lower.open {
  left: 15em;
  transform: translateZ(45em);
}
.menu-category-list .depth3:hover {
  font-weight: bold;
}
.header-sp-store{
		display: none
	}
	.header-store-map{
	display: none;
 background: #fff;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
 position: absolute;
 padding: 0 10px 10px 10px;
 right: 0;
 top: 113px;
 width: 400px;
 z-index: 2000;
	border-radius: 0 0 6px 6px;
	}
	.header-store-map::before{
	}
	.header-store-map-container{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.header-store-map--detail{
		width: calc(50% - 5px);
		font-size: .85rem;
		line-height: 1.5;
		}
	.header-store-map--detail dl{
		display: grid;
		grid-template-rows: repeat(2, auto);
  grid-template-columns: 4.5em 1fr;
  gap: .5rem .3rem;
	}
	.header-store-map--detail a.flatbtn{
		width: fit-content;
  padding: 0.5rem 0.8rem;
	 margin: .5rem auto 0 auto;
	 box-shadow: rgb(0 0 0 / 10%) 0px 4px 6px -1px, rgb(0 0 0 / 6%) 0px 2px 4px -1px;
		font-size: .85em;
	}
	.header-store-map--img{
		width: calc(50% - 5px);
		position: relative;
		}

	.header-store-map--img img{
		width: 100%;
		height: auto;
	}
.header-store-map--img img.header-store-map--img-copy{
		position: absolute;
		left: 0;
		bottom: 0;
		width: 137px;
	}
	#header .header-logo-second a{
		display: flex;
		align-items: center;
		font-size: 1.25rem;
		font-weight: bold;
	}
	#header .header-logo-second a .header-logo-second--img{
		margin-right: 12px
	}
	}
	
@media screen and (max-width:767px){
	#header{
		padding:0 0 0 0;
		background: #fff;
		transition-duration: 0.3s;
		box-sizing: border-box;
		color: #333;
        box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
	}
 .header-band{
		height: 42px
	}
	#header  .header-logo{
		grid-area: header-logo;
        display: flex;
        align-items: center;
        min-height: 70px;
	}
    #header .header-logo--img {
        margin: auto;
        position: static;
        width: 100%;
    }
    #header #top_header .header-logo--img {
        position: absolute;
    }
	#header  .header-search{
		grid-area:header-search;
	}
	#header  .header-usr{
		grid-area:header-usr;
	}
	#header  .header-cart{
		grid-area:header-cart;
	}
	#header  .header-store{
 display: none
	}
	#header  .header-nav{
		grid-area:header-nav;
	}
	#header  .header-contact{
		grid-area:header-contact;
	}
        
	#header .header-container{
  display: grid;
  grid:
   "header-logo header-est header-contact" / auto 70px 70px;
		/*gap: 1rem .5rem;*/
		align-items: center;
  width: 100%;
		margin: 0 auto;
  padding: 0 0 0 15px;
		box-sizing: border-box;
		position: relative;
	}
        
	#header .header-logo--img img{	
		    width: 22vw;
    height: auto;
    max-width: 165px;}
    #header .header-logo--img img.catch{
        display: none;
		    }
    #header  .header-est{
		grid-area:header-est;
	}
    #header .header-est a{

	}
    #header .header-est p{

	}
    #header .header-est img{
        display: block;
        width: 100%;
        height: auto;
    }    
    #header .header-contact{
		grid-area:header-contact;
	}
    #header .header-contact a{

	}
    #header .header-contact p{

	}
    #header .header-contact img{
        display: block;
        width: 100%;
        height: auto;
    }
	#header .black-bg {
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		z-index: 9994;
		background-color: #000;
		opacity: 0;
		visibility: hidden;
		transition: all .6s;
		cursor: pointer;
}
	#header .header-nav{
	position: fixed;
	left: -240px; 
	top: 0;
	width: 240px; 
	height: 100vh;
	background: #F1F1F1;
	transition: all .6s;
	z-index: 9999;
	}
	#header .hamburger {
		position: relative;
  width: 22px; 
  height: 22px; 
  cursor: pointer;
  z-index: 10000;
		margin-right: 1rem
}
	#header.nav-open .hamburger {
  position: fixed;
  top:45px;
  left: 260px		
		}
	#header .hamburger__line {
  display: block;
  position: absolute;
  right: 0;
  width: 22px;
  height: 2px;
  background-color: #333333;
  transition: .1s;
  border-radius: 4px;
}
	#header .hamburger__line--1 {
  top: 2px;
}
	#header .hamburger__line--2 {
  top: 10px;
}
	#header .hamburger__line--3 {
  top: 18px;
}
	#header .hamburger__line--1,.hamburger__line--2,.hamburger__line--3{
  background: #333;
}
	#header.nav-open .hamburger__line--1,#header.nav-open .hamburger__line--2,#header.nav-open .hamburger__line--3{
  background: #fff;
}
	#header.nav-open .header-nav {
  left: 0;
}
	#header.nav-open .black-bg {
  opacity: .7;
  visibility: visible;
	    touch-action: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.nav-open .hamburger__line--1{
  transform: translateY(14px) rotate(-45deg);
  top: 0;
}
.nav-open .hamburger__line--2 {
  opacity: 0;
}
.nav-open .hamburger__line--3 {
  transform: translateY(-2px) rotate(45deg);
  bottom: 0;
}
	#header .header-nav ul.header-nav--list li a{
		padding: 1rem;
		display: block;
  border-bottom: 1px solid #707070;
		font-size: .95rem;
                text-align: left;
	}

	#header .header-nav .header-nav--list ul li:last-child a{
	}
		#header .header-nav ul.header-nav--list li.header-nav--head{
			background: #15489E;
            color: #fff;
			font-size: 1rem;
			line-height: 1.3
		}
        #header .header-nav ul.header-nav--list li.header-nav--head a{
            color: #fff;
		}
		#header .header-nav ul.header-nav--list li.header-nav--head span{
			font-weight: bold;
			padding-left: .4rem
		}
	#header .header-search{
		display: flex;
		align-items: center;
		
	}
		#header .header-search--input{
			width: calc(100% - 42px);
			border: 1px solid #333;
			border-right: 0;
   box-sizing: border-box;
   border-radius: 4px 0 0 4px;
   overflow: hidden
		}
	#header .header-search--input input{
    font-size: 1rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
		  border: 0;
  		background: #fff;	
    padding: .8em .8em;
    box-sizing: border-box;
		  width: 100%;
    height: 42px;
    border-radius: 0;
		  color: #757575;
	}
	#header .header-search--input-btn{
    background: #E30012;
    width: 42px;
    height: 44px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #333;
    border-left: 0;
    box-sizing: border-box;
    border-radius:0 4px 4px 0;
    overflow: hidden
	}
	#header .header-search--input-btn input{
    width: 20px;
    height: auto;
     padding: 0 11px;
    -webkit-appearance: none;
      -moz-appearance: none;
    appearance: none;
    border: 0;
	}
	#header .header-usr{
		display: flex;
		align-items: center
	}
	#header .header-usr .header-usr--icon img{
		width: 32px
	}
	#header .header-usr--name{
		display: none
	}
	#header .header-usr--name a{
		display: block;
		margin-top: 3px;
		color: #333;
		font-weight: bold;
		font-size: .7rem
	}
	#header .header-cart{
		display: flex;
		align-items: center;
	}
	#header .header-cart .header-cart--icon{
		position: relative;
			}
		#header .header-cart .header-cart--icon img{
			width: 27px;
			height: auto
		}
	#header .header-cart .header-cart--bag{
  display: inline-flex;
  fill: #fff;
  background: #E30012;
  width: 1.1rem;
  height: 1.1rem;
  border-radius: 50%;
  text-align: center;
  justify-content: center;
  align-items: center;
  padding: 1px;
  position: absolute;
  top: -0.35rem;
  right: -0.55rem;
  line-height: 1.1;
  font-size: .75rem;
  color: #fff;
  text-transform: uppercase;
 	transform: scale(.85);
  transform-origin: 50% 50%;
	}
	#header .header-cart--count{
		display: none
	}


		#header .header-cart--icon p{
			font-size: 0.6rem;
   margin-top: 3px
		}
		.menu-category-list{
			display: none
		}
#header .fixed{
   position: fixed;
   top:0;
   left: 0;
   width: 100%;
   z-index: 9998;
   padding: 0 0 0 15px;
   background: #fff;
   transition-duration: 0.3s;
   box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
		}
#header.nav-open .fixed{
   z-index: 9995
}		
.header-sp-store{
display: grid;
    grid:
        "h-sp-icon h-sp-head h-sp-head h-sp-change" auto
        "h-sp-icon h-sp-name h-sp-time h-sp-change" auto / 36px auto minmax(6em, 1fr) 50px;
    gap: 3px 0.5rem;
  padding: .8rem 15px;
  box-sizing: border-box;
  border-top: 1px solid #cfcfcf;
  box-shadow: rgb(0 0 0 / 7%) 0px 4px 3px -1px, rgb(0 0 0 / 6%) 0px 2px 4px -1px;
	 color: #333;
	 position: relative;
	}
.header-sp-store--icon{
  grid-area: h-sp-icon;
	 align-self: center;
	}

 .header-sp-store--dt__head{
		font-size: .8rem;
		font-weight: bold;
	 grid-area: h-sp-head;
	}

.header-sp-store--dt-name{
		font-size: 13px;
  grid-area: h-sp-name;
	 position: relative;
	 padding-right: 1rem;
	 line-height: 1.2;
	 cursor: pointer;
	}
.header-sp-store--dt-name::after {
  content: "";
  position: absolute;
  right: 2px;
  border-top: 1px solid #969694;
  border-right: 1px solid #969694;
  width: 6px;
  height: 6px;
  -webkit-transform: rotate( 135deg);
  transform: rotate( 135deg);
  top: 0;
  bottom: 0;
  margin: auto;
}
.header-sp-store--dt-time{
		font-size:13px;
  grid-area: h-sp-time;
	}
		.header-sp-store--dt-btn__change{
   display: flex;
			justify-content: flex-end;
		grid-area: h-sp-change;
			align-self: center;
		}
	.header-sp-store--dt-btn__change a{
		box-sizing: border-box;
	 padding: .35rem .6rem;
	 box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
		color: #fff;
		font-size: 14px;
	 background: #969694;
  border-radius: 40px;
  display: flex;
  opacity: 1.0;
  width: 50px;
  height: 2em;
  align-items: center;
  justify-content: center;
  cursor: pointer;
	}
		.header-store-map{
	display: none;
 background: #fff;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
 position: absolute;
 padding: 0 1rem 1rem 1rem;
 right: 0;
 top: 182px;
 z-index: 2000;
	width: 100%;
	box-sizing: border-box;
	}
	.header-store-map::before{
	}
	.header-store-map-container{
		display: flex;
		flex-direction: column-reverse;
	}
	.header-store-map--detail{
		font-size: .9rem;
		line-height: 1.5;
	 margin-top: 1rem;
		}
	.header-store-map--detail dl{
		display: grid;
		grid-template-rows: repeat(2, auto);
  grid-template-columns: 4.5em 1fr;
  gap: .5rem .3rem;
	}
	.header-store-map--detail a.flatbtn{
		width: fit-content;
  padding: 0.6rem 1rem;
	 margin: 1rem auto 0 auto;
	 font-size: .9em;
	}
	.header-store-map--img{
		position: relative;
		}
	.header-store-map--img img{
		width: 100%;
		height: auto;
	}
.header-store-map--img img.header-store-map--img-copy{
		position: absolute;
		left: 0;
		bottom: 0;
		width: 137px;
	}
		#header .header-logo-second a{
		display: flex;
		align-items: center;
		font-size: 1.2rem;
		font-weight: bold;
	}
	#header .header-logo-second a .header-logo-second--img{
		width: 32px;
		margin-right: 13px
	}
	}
@media screen and (min-width:1200px){
#header .header-container{
    margin: 0 auto 0 auto;
	}
}
#sub-header{
	overflow: hidden;
}
#sub-header .js-category-container{
  opacity: 0;
  transition: opacity .3s linear;
}
#sub-header .js-category-container.slick-initialized{
  opacity: 1;
}

@media only screen and (min-width: 768px){
	#sub-header{
		background: #F1F1F1;
		height: 152px;
}
#sub-header	.container{
}
#sub-header .js-category-container {
margin: 0 auto;
width: 1200px;
overflow:visible;
}
#sub-header .js-category-container .js-category--list {
margin: 1rem 0
}
#sub-header .js-category-container .js-category--list span{
 display: flex;
 align-items: center;
 justify-content: center;
 width: 110px;
 height: 80px;
 box-sizing: border-box;
 margin: 0 auto .4rem auto;
 transition: all 0.3s ease 0s;
 z-index: 5
		}
#sub-header .js-category-container .js-category--list a span img:hover{
 transform: scale(1.1, 1.1);
	}
#sub-header .js-category-container .js-category--list a:hover{
 box-shadow: rgba(17, 17, 26, 0.05) 0px 4px 16px, rgba(17, 17, 26, 0.05) 0px 8px 32px;
	}
#sub-header .js-category-container .js-category--list img {
width: auto;
height: 60px;
transition: all 0.3s ease 0s
}
#sub-header .js-category-container .js-category--list a {
	width: 120px;
 padding: 5px 0 10px;
 box-sizing: border-box;
 background: #fff;
 border-radius: 12px;
 display: flex;
 align-items: center;
 justify-content: center;
 box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
}
#sub-header .js-category-container .js-category--list p {
color: #333;
font-size: 0.9em;
font-weight: bold;
line-height: 1.3;
text-align: center;
letter-spacing: 1px;
font-feature-settings: "palt";
}
}
	@media only screen and (max-width: 767px){
	#sub-header{
 background: #F1F1F1;
 padding: .8rem 0 6px 0;
		height: 117px;
		box-sizing: border-box;
	}
#sub-header .container {
 width: calc(100% - 0px);
 margin: 0 auto;
}

#sub-header .js-category-container {
margin: 0 auto;
overflow:visible;
}

	#sub-header .js-category-container .js-category--list span{
 display: flex;
 align-items: center;
 justify-content: center;
 width: 50px;
 height: 50px;
 box-sizing: border-box;
 margin: 0 auto 5px auto;
		}
#sub-header .js-category-container .js-category--list a span img:hover{
 transform: scale(1.1, 1.1);
	}
#sub-header .js-category-container .js-category--list a:hover{
 box-shadow: rgba(17, 17, 26, 0.05) 0px 4px 16px, rgba(17, 17, 26, 0.05) 0px 8px 32px;
	}
#sub-header .js-category-container .js-category--list img {
	width: 50px;
	height: auto;
	max-height: 44px;
	transition: all 0.3s ease 0s
}
#sub-header .js-category-container .js-category--list a {
	background: #fff;
 border-radius: 12px;
 margin: 0 auto 0.4rem auto;
 box-shadow: rgb(0 0 0 / 10%) 0px 4px 6px -1px, rgb(0 0 0 / 6%) 0px 2px 4px -1px;
 box-sizing: border-box;
 width: 92px;
 height: 92px;
	display: flex;
	align-items: center;
	justify-content: center;
	
}

#sub-header .js-category-container .js-category--list p {
color: #333;
font-size: 0.75rem;
font-weight: bold;
line-height: 1.3;
text-align: center;
letter-spacing: 1px;
font-feature-settings: "palt";
}
}

/*  header end   */


/* ----tb^[CSS---- */
footer {
background-color: #004897; 
}
@media screen and (min-width: 768px) { 
 
.layout-footer {
width: 1240px;
padding: 0 20px;
margin: 0 auto;
box-sizing: border-box;
background: #004897;
color: #fff;
}
.footer__inner {
padding: 2em 0 2.5em;
} 
.layout-footer_sns--arrea {
width: 100%;
margin: 2.5rem 0; 
border-bottom: 1px solid #c5c1c1;
padding-bottom: 2.5rem;
box-sizing: border-box; 
} 
.footer-sns__list {
display: flex;
flex-wrap: wrap;
justify-content: center;
padding: 0 1.5rem; 
} 
.footer-sns__list li {
width: calc((100% - 60px)/6);  
} 
.footer-sns__list li a {
display: flex;
align-items: center;
justify-content: center; 
padding: 5px 0;
} 
.footer-sns__list li a:hover, .footer-sns__list li a:focus {
text-decoration: underline;
opacity: 0.8;
transition: 0.6s;
} 
.footer-sns__list li a img {
max-width: 100%;
height: auto;
max-height: 100%;
} 
.footer-sns__list .icon-pc__title {
padding-left:  0.8rem;
font-size: 0.9rem;
line-height: 1.2 
}
.layout-footer_nav {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 2.5rem;
}
.layout-footer_nav li {
width: calc((100% - 40px)/4);
margin: 1.5rem 0;
} 
.layout-footer_nav li a {
position: relative;
padding-left: 1.75rem;
display: flex;
align-items: center; 
color: #fff;
} 
.layout-footer_nav li a:hover,
.layout-footer_nav li a:focus {
text-decoration: underline;
opacity: 0.75;
transition: 0.6s; 
}   
.layout-footer_nav li a span::before {
content:"";
background-image: url(/contents/jukyuban/common/img/2405/arow_jukyuban.svg);
position: absolute;
top: 0;
left: 0;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 20px;
height: 20px;
} 
.footer-menu {
margin-top: 2rem;
border-top: 1px solid #c5c1c1;
border-bottom: 1px solid #c5c1c1;
box-sizing: border-box; 
padding-bottom: 2.5rem 
}
.footer-menu .footer-menu__title {
font-size: 1.6rem;
font-weight: bold;
margin: 2.5rem 2.5rem 1rem;
}  
.footer-menu__column {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 2.5rem;
}
.footer-menu__column li {
width: calc((100% - 40px)/4);   
margin: 1.5rem 0;
} 
.footer-menu__column li a {
position: relative;
display: flex;
align-items: center; 
padding-left: 1.75rem; 
color: #fff;
} 
.footer-menu__column li a.sp-only {
display: none;
} 
.footer-menu__column li a.pc-only {
} 
.footer-menu__column li a:hover,
.footer-menu__column li a:focus {
text-decoration: underline;
opacity: 0.75;
transition: 0.6s; 
}   
.footer-menu__column li a::before {
content: "";
background-image: url(/contents/jukyuban/common/img/2405/arow_jukyuban.svg);
position: absolute;
top: 0;
left: 0;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 20px;
height: 20px;
}
.footer__foot {
} 
.footer__foot__inner {
text-align: center;
margin-top: 2rem 
} 
.footer-logo__area {
display: flex;
justify-content: center;
align-items: center; 
}
.footer-logo__area img {
max-width: 100%;
max-height: 100%;  
width: 360px; 
height: auto;
}
.footer-logo__area .detail-text  {
font-size: 0.875rem;
padding-top: 0.8rem;  
} 
.footer_copyright {
text-align: center; 
margin-top: 2.5rem;
font-size: 0.8rem
} 
}  

@media screen and (max-width: 767px) { 
.layout-footer {
padding: 0 15px;
}
.footer__inner {
padding: 2em 0 2.5em;
} 
.layout-footer_sns--arrea {
width: 100%;
} 
.footer-sns__list {
display: flex;
flex-wrap: wrap;
justify-content: space-between
} 
.footer-sns__list li {
width: calc((100% - 40px)/3); 
margin-top: 0.8em; 
} 
.footer-sns__list li:nth-child(-n+3) {
margin-top: 0 
} 
.footer-sns__list li a {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 100%;
} 
.footer-sns__list li a:hover, .footer-sns__list li a:focus {
text-decoration: underline;
opacity: 0.8;
transition: 0.6s;
}  
.footer-sns__list li a img {
max-width: 100%;
height: auto;
max-height: 100%;
} 
.footer-sns__list .icon-sp__title {
font-size: 0.75em;
text-align: center;
line-height: 1.2;
margin-top: 0.5em;
}
.footer-sns__list .icon-pc__title.text-hide { 
display: none
}
.layout-footer_nav {
display: flex;
flex-wrap: wrap;
flex-direction: column; 
margin: 2rem 0
}
.layout-footer_nav li {
border-bottom: 1px solid #c5c1c1;
box-sizing: border-box;
position: relative;
} 
.layout-footer_nav li:last-child {
border: none;
} 
.layout-footer_nav li a {
display: flex;
align-items: center;
padding: 1.5rem 1rem 1.5rem 0.8rem;
font-size: 0.875rem ;
color: #fff;
} 
.layout-footer_nav li a:hover,
.layout-footer_nav li a:focus {
text-decoration: underline;
opacity: 0.75;
transition: 0.6s; 
}    
.layout-footer_nav li a span::after {
content:"";
background-image: url(/contents/jukyuban/common/img/2405/arow_jukyuban.svg);
position: absolute;
top: 50%;
right: 0;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 18px;
height: 18px;
transform: translate(-50%, -50%);
margin-right: 0.8rem;
} 
.layout-footer_nav li a span {
background-image: none;
}  
.footer-menu {
margin-top: 2rem;
color: #fff;
}
.footer-menu .footer-menu__title {
font-size: 1rem;
font-weight: bold;
margin: 1.75rem 0.8rem 1.5rem 0.8rem;
}  
.footer-menu__column {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0.8rem; 
}
.footer-menu__column li {
width: calc((100% - 20px)/2);   
margin-bottom: 1.5rem; 
} 
.footer-menu__column li:last-child {
margin-bottom: 0 
} 
.footer-menu__column li a {
position: relative;
display: flex;
align-items: center; 
padding-left: 1.25rem; 
font-size: 0.875rem ;
color: #fff;
} 

.footer-menu__column li a.sp-only {

} 
.footer-menu__column li a.pc-only {
display: none;
}   

.footer-menu__column li a:hover,
.footer-menu__column li a:focus {
text-decoration: underline;
opacity: 0.75;
transition: 0.6s; 
}    
.footer-menu__column li a::before {
content: "";
background-image: url(/contents/jukyuban/common/img/2405/arow_jukyuban.svg);
position: absolute;
top: 5%;
left: 0;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
width: 14px;
height: 14px;
}
 .footer__foot {
 } 
 .footer__foot__inner {
 text-align: center;
 margin-top: .9rem 
 } 
 .footer-logo__area {
 display: flex;
 justify-content: center;
 align-items: center; 
 }
.footer-logo__area img {
 max-width: 100%;
 max-height: 100%;  
 width: 180px; 
height: auto;
 }
 .footer-logo__area .detail-text  {
font-size: 0.75rem;
padding-top: 0.5rem  
 } 
.footer_copyright {
text-align: center; 
margin-top: 2.5rem;
font-size: 0.7rem;
color:#fff;
}
} 
.block_title_top{
margin: 0 auto 30px;
    text-align: center;
    font-size: 2em;
    font-weight: bold;
}
/*  tb^[ end   */

/*vf*/

article.contents-block.legacy{
    padding: 10px;
}

.maindesign .details_2301{
    width: 100%;
    max-width: 715px;
    margin: 0 auto;
}

.maindesign .breadcrumb .panmb a{
color: #83838f;
}

article.contents-block.legacy h3{
    padding: 10px;
    background: #0174be;
    color: #fff;
    margin: 0 0 20px;
    font-family: "Noto Sans JP","ŕSVbN", "Yu Gothic",Meiryo,"qMmpS Pro W3","Hiragino Kaku Gothic Pro",verdana,Osaka,Sans-Serif;
}

.accordion_one {
    margin: auto;
    display: flex;
        flex-direction: column;
    justify-content: space-between;
}
    .accordion_one .accordion_header {
    background: #002060;
    color: #fff;
    display: flex;
    font-weight: bold;
    box-sizing: border-box;
    position: relative;
    z-index: +0;
    cursor: pointer;
    transition-duration: 0.2s;
    align-items: center;
    border: none;
    width: 90%;
    flex-wrap: wrap;
    align-content: center;
    max-width: 600px;
    margin: 20px auto 20px;
    height: 4em;
    padding: 1.2rem 0.2rem;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    text-align: center;
    border-radius: 40px;
    opacity: 1.0;
    justify-content: center;
}
    .accordion_one.set-01 .accordion_header{
    background-color: #002060;
}
    .accordion_one.set-01 .accordion_header__img{
    border: 1px solid #002060;
}
    .accordion_one.set-01 .accordion_inner{
    border-left: 1px solid #002060;
    border-right: 1px solid #002060;
    border-bottom: 1px solid #002060;
}
    .accordion_one.set-02 .accordion_header{
    background-color: #3a6873;
}
    .accordion_one.set-02 .accordion_header__img{
    border: 1px solid #3a6873;
}
    .accordion_one.set-02 .accordion_inner{
    border-left: 1px solid #3a6873;
    border-right: 1px solid #3a6873;
    border-bottom: 1px solid #3a6873;
}
    .accordion_one.set-03 .accordion_header{
    background-color: #73693a;
}
    .accordion_one.set-03 .accordion_header__img{
    border: 1px solid #73693a;
}
    .accordion_one.set-03 .accordion_inner{
    border-left: 1px solid #73693a;
    border-right: 1px solid #73693a;
    border-bottom: 1px solid #73693a;
}
    .accordion_one.set-04 .accordion_header{
    background-color: #73453a;
}
    .accordion_one.set-04 .accordion_header__img{
    border: 1px solid #73453a;
}
    .accordion_one.set-04 .accordion_inner{
    border-left: 1px solid #73453a;
    border-right: 1px solid #73453a;
    border-bottom: 1px solid #73453a;
}
    .accordion_one .accordion_header__img {
    display: flex;
    width: 30%;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
        position: relative;
}
    .accordion_one .accordion_header p{
    font-feature-settings: "palt" 1;
        width: 100%;
    }
    .accordion_one .accordion_header p.sub-p{
    font-size: 0.8em;
        margin: 5px 0 0;
    }
    .accordion_one .accordion_header p span{
    display: inline-block;
    }
    .accordion_one .accordion_header .i_box .one_i:before,.accordion_one .accordion_header .i_box .one_i:after {
    background-color: #fff;
}
    .accordion_one .accordion_inner {
    display: none;
    padding: 1em;
    box-sizing: border-box;
        width: 100%;
}
    .accordion_one .accordion_inner img{
        width: 100%;
        height: auto;
}
    .accordion_one .accordion_inner p.inner__txt{
    margin: 0 0 20px;
}
    @media screen and (max-width: 767px) {
    .accordion_one .accordion_header {
    font-size: 20px;
    }
    }

.accordion_one .accordion_header:hover {
  opacity: .8;
}
.accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 40px;
  height: 40px;
  /*  border: 1px solid #fff;*/
  margin-top: -20px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
.accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
.accordion_one .accordion_header.open .i_box {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.accordion_one .accordion_header .i_box .one_i:before, .accordion_one .accordion_header .i_box .one_i:after {
  display: flex;
  content: '';
  background-color: #fff;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
}
.accordion_one .accordion_header .i_box .one_i:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
}
.accordion_one .accordion_header.open .i_box .one_i:before {
  content: none;
}
.accordion_one .accordion_header.open .i_box .one_i:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.accordion_one .accordion_inner {
  display: none;
      padding: 1em;
    border: 1px solid #002060;
    box-sizing: border-box;
    max-width: 1200px;
    margin: auto;
    background: #fff;
}
.accordion_one .accordion_inner .box_one {
  height: 300px;
}
.accordion_one .accordion_inner p.txt_a_ac {
  margin: 0;
}
.accordion_one .accordion_inner .closeArea {
  width: 180px;
  margin: 0 auto;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #969494;
  padding: 15px 15px 15px 20px;
  text-decoration: none;
  line-height: 1.3;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  cursor: pointer;
  transition-duration: 0.2s;
}
/*.accordion_one:nth-of-type(2) .accordion_inner .closeArea .close_box a.close_btn {
    background-color: #ff9a05;
}
.accordion_one:nth-of-type(3) .accordion_inner .closeArea .close_box a.close_btn {
    background-color: #1c85d8;
}*/
.accordion_one .accordion_inner .closeArea .close_box a.close_btn:hover {
  opacity: .8;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  left: 10%;
  width: 30px;
  height: 30px;
  margin-top: -15px;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 18px;
  height: 18px;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i:before, .accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i:after {
  content: '';
  background-color: #fff;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(45deg);
  transform-origin: center center;
}
.accordion_one .accordion_inner .closeArea .close_box a.close_btn .i_box .one_i:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
}
@media screen and (max-width: 1024px) {
  .accordion_one .accordion_header {
    font-size: 18px;
  }
  .accordion_one .accordion_header .i_box {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
  .accordion_one .accordion_inner .closeArea .close_box a.close_btn {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .accordion_one .accordion_header {
    font-size: 16px;
    text-align: left;
    padding: 15px 15px 15px 15px;
  }
}

.exp_list.j_flow{
    line-height: 1.5;
    padding: 0 0 0 3.6em;
    margin: 0;
}
.exp_list.j_flow li{
    text-indent: -3.6em;
width: 100%;
}


      .service-btn_list{
          display: flex;
    flex-wrap: wrap;
          justify-content: space-between;
          margin: 20px 0 0;
      }
      .jukyuban_service_block-cols .service-btn_list li{
          border-radius: 10px;
    box-sizing: border-box;
    overflow: visible;
    background: #eee;
          margin: 0 0 20px;
          width: 100%;
          position: relative;
          box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
      }
      .jukyuban_service_block-cols .service-btn_list li.accordion_one {
    overflow: hidden;
}
      .service-btn_list li::after{
         content: '';
    position: absolute;
    border-bottom: 10px solid transparent;
    border-top: 10px solid transparent;
    border-left: 10px solid #000;
    border-right: 0px solid transparent;
    right: 0px;
    top: 50%;
    transform: translatey(-50%);
    z-index: 2;
    width: 10px;
      }
      .service-btn_list li a{
          display: flex;
    flex-wrap: nowrap;
      }
      .service-btn_list li a:hover{
          opacity: 0.6;
      }
      .service-btn_list li .service-btn__left{
          width: 35%;
    padding: 10px;
    box-sizing: border-box;
      }
      .service-btn_list li .service-btn__left img{
          height: auto;
    width: 100%;
      }
      .service-btn_list li .service-btn__left .service-btn__line01{
          text-align: center;
    padding: 5px;
    background: #238966;
    color: #fff;
          border-radius: 5px;
          font-size: 0.8em;
      }
      .service-btn_list li .service-btn__left .service-btn__line02{
          text-align: center;
    padding: 4px;
    background: #fff;
    color: #0066aa;
    border: 1px solid #0066aa;
    border-radius: 5px;
    font-size: 0.8em;
    box-sizing: border-box;
      }
      .service-btn_list li .service-btn__right{
          width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 10px;
      }
      .service-btn_list li .service-btn__right .service-btn__name{
          font-size: 1.25em;
    font-weight: bold;
          margin: 0 0 10px;
      }
      .service-btn_list li .service-btn__right .service-btn__price{
          display: flex;
    align-items: baseline;
    font-size: 1.25em;
    width: 100%;
    justify-content: flex-end;
      }
      .service-btn_list li .service-btn__right .service-btn__price span{
          
      }
      .service-btn_list li .service-btn__right .service-btn__price span:nth-child(1){
          font-size: 0.6em;
      }
      .service-btn_list li .service-btn__right .service-btn__price span:nth-child(2){
          font-weight: bold;
      }
      .service-btn_list li .service-btn__right .service-btn__price span:nth-child(3){
          font-size: 0.6em;
      }
.service-btn_list li .service-btn__right .service-btn__price_exp{
font-size: 0.7em;
    text-align: right;
    margin: 5px 0 0;
}
      @media screen and (max-width: 767px){
          .jukyuban_service_block-cols .service-btn_list li {
    border-radius: 5px;
    box-sizing: border-box;
    overflow: visible;
    background: #eee;
    margin: 0 0 20px;
    width: calc(100%);
    position: relative;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
}
          .jukyuban_service_block-cols .service-btn_list li:nth-child(4n) {
        margin: 0 0 20px;
    }
          .service-btn_list li::after {
        content: '';
        position: absolute;
        border-bottom: 10px solid transparent;
        border-top: 10px solid transparent;
        border-left: 7px solid #000;
        border-right: 0px solid transparent;
        right: -5px;
        top: 50%;
        transform: translatey(-50%);
        z-index: 2;
        width: 10px;
    }
          .service-btn_list li .service-btn__left {
    width: 20%;
    padding: 5px;
    box-sizing: border-box;
}
        .service-btn_list li .service-btn__left .service-btn__line01 {
    text-align: center;
    padding: 5px;
    background: #238966;
    color: #fff;
    border-radius: 5px;
    font-size: 2.5vw;
}  
          .service-btn_list li .service-btn__left .service-btn__line02 {
    font-size: 2.5vw;
}  
              .service-btn_list li .service-btn__right {
        width: 65%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 0 10px 0;
    }
          .service-btn_list li .service-btn__right .service-btn__name {
    font-size: 4vw;
    font-weight: bold;
              margin: 0;
}
          .service-btn_list li .service-btn__right .service-btn__price {
    display: flex;
    align-items: baseline;
    font-size: 1.75em;
    width: 100%;
    justify-content: flex-end;
              margin: 10px 0 0;
}
          .service-btn_list li .service-btn__right .service-btn__price span:nth-child(1) {
    font-size: 0.5em;
}
          .service-btn_list li .service-btn__right .service-btn__price span:nth-child(3) {
    font-size: 0.5em;
}
          .service-btn_list li .service-btn__right .service-btn__price_exp{
font-size: 0.8em;
}
      }

    .jukyuban_service_block-cols.construction{
    background: #fff;
}
    .jukyuban_service_block-cols.construction .jukyuban_service_block--txt {
    width: 100%;
}
    .jukyuban_service_block-cols.construction .service-btn_list{
    background: #fff;
}
      
    .jukyuban_service_block-cols.construction .service-btn_list li {
    width: calc(50% - 10px);
    height: max-content;
}
    .jukyuban_service_block-cols.construction .service-btn_list li:nth-child(4n) {
        margin: 0 0 20px;
    }
    .jukyuban_service_block-cols.construction .service-btn_list li::after {
    content: none;
}
    .jukyuban_service_block-cols.construction .service-btn_list li .service-btn__left {
    width: 20%;
    padding: 5px;
    box-sizing: border-box;
}
    .jukyuban_service_block-cols.construction .service-btn_list li .service-btn__right {
    width: 65%;
}
    .jukyuban_service_block-cols.construction .service-btn_list li .service-btn__right .service-btn__name {
    font-size: 1.5em;
    font-weight: bold;
}
      .jukyuban_service_block-cols.construction .service-btn_list li .service-btn__right .service-btn__name span {
    font-size: 0.8em;
}
      .jukyuban_service_block-cols.construction .service-btn_list li  .service-btn__right .service-btn__price {
    font-size: 1.75em;
}
    .jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header {
    background: none;
    color: #000;
    display: flex;
    font-weight: normal;
    box-sizing: border-box;
    position: relative;
    z-index: +0;
    cursor: pointer;
    transition-duration: 0.2s;
    align-items: normal;
    border: none;
    width: auto;
    flex-wrap: nowrap;
    max-width: none;
    margin: 0;
    height: auto;
    padding: 0;
    text-align: left;
    border-radius: unset;
    opacity: 1.0;
    justify-content: normal;
}
    
    .jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one  .accordion_inner {
    display: none;
    padding: 1em;
    border: none; 
    box-sizing: border-box;
    /* max-width: 1200px; */
    margin: auto;
    background: #fff;
}
    .jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 40px;
  height: 40px;
  /*  border: 1px solid #fff;*/
  margin-top: -20px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
.jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
}
.jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header.open .i_box {
  -webkit-transform: rotate(-180deg);
  transform: rotate(-180deg);
}
.jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header .i_box .one_i:before, .jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header .i_box .one_i:after {
  display: flex;
  content: '';
  background-color: #000;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
}
.jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header .i_box .one_i:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
}
.jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header.open .i_box .one_i:before {
  content: none;
}
.jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header.open .i_box .one_i:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.jukyuban_service_block-cols.construction .service-btn_list li .accordion_inner .const-heading{
    line-height: 1.2;
    font-size: 1.25em;
    font-weight: bold;
}       
.jukyuban_service_block-cols.construction .service-btn_list li .accordion_inner ul{
    line-height: 1.2;
    margin: 10px 0 20px;
    padding-left: 1em;
}      
.jukyuban_service_block-cols.construction .service-btn_list li .accordion_inner ul li{
    width: auto;
    background: none;
    box-shadow: none;
    border-radius: inherit;
    margin: 0 0 10px;
    overflow: unset;
    text-indent: -1em;
}
.jukyuban_service .jukyuban_service_block-cols.construction .jukyuban_service_block--txt .flatbtn.jukyuban_top-btn {
    max-width: 400px;
    width: 100%;
    margin: 20px auto 40px;
    height: 4em;
    padding: 1.2rem 0.2rem;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
}
.jukyuban_service .jukyuban_service_block-cols.construction .jukyuban_service_block--txt .flatbtn.jukyuban_top-btn:last-child {
    margin: 20px auto 0;
}
      
      @media screen and (max-width: 767px) {
        .jukyuban_service_block-cols.construction .service-btn_list li {
    width: 100%;
    height: max-content;
}  
          .jukyuban_service_block-cols.construction .service-btn_list li .service-btn__right {
    width: 65%;
              margin: 0 10px 0;
}
          .jukyuban_service_block-cols.construction .service-btn_list li .service-btn__right .service-btn__name {
    font-size: 4vw;
    font-weight: bold;
}
         .jukyuban_service_block-cols.construction .service-btn_list .service-btn.accordion_one .accordion_header .i_box {
    right: 0%;
} 
      }

#pageTop {
position: fixed;
bottom: 0;
right: 0;
z-index: 9999;
width: 80px;
height: 80px;
z-index: 9999;
}

#pageTop img {
    width: 100%;
    height: auto;
}

@media (max-width: 767px) and (min-width: 320px) {
#pageTop {
position: fixed;
bottom: 60px;
right: 10px;
width: 42px;
height: 42px;
}
 }   
@media screen and (min-width: 768px){
    .cap-icon{
        position: absolute;
        top: -10px;
        height: 20%;
        text-align: center;
        display: flex;
        right: -5px;
        color: #fff;
        background: #005cd3;
        padding: 2px 10px;
        box-sizing: border-box;
        font-size: 0.8em;
        line-height: 1.2;
        align-items: center;
        justify-content: center;
        border-radius: 5px;
        box-shadow: 0 2px 3px rgb(0 0 0 / 16%);
    }
}
@media screen and (max-width: 767px){
    .cap-icon{
        position: absolute;
        top: -10px;
        text-align: center;
        display: flex;
        right: -5px;
        z-index: 2;
        color: #fff;
        background: #005cd3;
        padding: 5px 10px;
        box-sizing: border-box;
        border-radius: 5px;
        font-size: 3vw;
        line-height: 1.2;
        align-items: center;
        justify-content: center;
        box-shadow: 0 2px 3px rgb(0 0 0 / 16%);
    }
}





/* header見積ボタン付きレイアウトstart */
#header .header-container.with-estimate {
    grid: "header-logo header-nav header-btn black-bg" / calc(38% - 115px) calc(60% - 115px) 230px 0;
}
#header .header-container.with-estimate .header--btn {
    grid-area: header-btn;
}
#header .header-container.with-estimate .header--btn > a {
    background: #EA6D0D;
    color: #fff;
    display: flex;
    text-decoration: none;
    padding: 5px;
    font-size: 1.0rem;
    font-weight: bold;
    line-height: 1.5;
    width: 100%;
    border-radius: 54px;
    height: 100%;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
}
#header .header-container.with-estimate .header--btn:hover,
#header .header-container.with-estimate .header--btn:active {
    opacity: 0.75;
    transition: 0.6s; 
}


@media screen and (max-width:767px) {
    #header .header-container.with-estimate {
        grid: "header-logo header-btn" / calc(98% - 120px) 120px;
    }
    #header .header-container.with-estimate .header--btn > a {
        font-size: 0.8rem;
    }
}

/* header見積ボタン付きレイアウトend */
