@charset "UTF-8";
a:hover {
        color: #1e1e1e;
        text-decoration: none !important;
        cursor: pointer;
    }
.otherPageTtl1 {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
    font-weight: bold;
    font-size: 28px;
    line-height: 1.25em;
    margin-bottom: 30px;
}
.small_ttl {
    font-size: 1.25rem;
}
.otherPageTtl2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 24px !important;
  border-bottom: 1px solid #333;
  margin: 0 0 30px;
}
.otherPageTtl2-2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 26px;
  border-bottom: 1px solid #333;
  margin: 0 0 30px;
}
.otherPageTtl3 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 24px;
  border-bottom: 1px solid #333;
  margin: 0px;
}
.otherPageTtl3-2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 24px;
  border-bottom: 1px solid #333;
  margin: 0 0 40px;
  padding-bottom: 7px;
}

.otherPageBoxOtl2.column-module-5_6 .twoClm {
    width: 100% !important;
    margin: 40px auto 0;
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width: 767px) {
    .otherPageBoxOtl2.column-module-5_6 .twoClm {
        flex-direction: column;
    }
}
.otherPageBoxOtl2.column-module-5_6 .areaL {
    float: left;
    width: 48% !important;
}
.otherPageBoxOtl2.column-module-5_6 .areaR {
    float: left;
    width: 48% !important;
    margin-left: 4%;
}
@media screen and (min-width: 1024px) and (max-width: 1279px) {
.otherPageBoxOtl2.column-module-5_6 .areaR {
    margin-left: 9%;
}
    }


.otherPageBoxOtl2.column-module-5_6 .areaL .imgArea,
.otherPageBoxOtl2.column-module-5_6 .areaR .imgArea {
    margin-top: 15px;
    max-width:100% !important;
}
.otherPageBoxOtl2.column-module-5_6 .areaL .imgArea img, 
.otherPageBoxOtl2.column-module-5_6 .areaR .imgArea img {
    width: 100%;
}
.otherPageBoxOtl2.column-module-5_6 .areaL p,
.otherPageBoxOtl2.column-module-5_6 .areaR p{
    padding: 30px 0 5px;
    margin: 0 auto;
    width: 100%;
    text-align: left;
}
@media screen and (max-width: 767px) {
  .otherPageBoxOtl2.column-module-5_6 .areaL p,
  .otherPageBoxOtl2.column-module-5_6 .areaR p {
    padding: 30px 0 30px;    
  }
}
.pad_adjust {
  padding: 7px 0 0 !important;
}

.item-detail-title {
    border-top: solid 1px #d2d2d2;
}
/*--- ★★★ファインバブルバス追加分★★★ ---*/
/* pc用 共通用*/
.const__partner__price p {
    margin-top: 10px;
}
.link_border {
    border-bottom: 1px solid #333 !important;
}
/* 文字左寄せ*/
.txt_l {
    text-align: left;
}
@media screen and (min-width: 1024px) and (max-width: 1279px) {
    .txt_l_tab {
        text-align: left !important;
    }
}

@media screen and (min-width: 767px) {
    .MT01 .txt_l,.MT01 .txt_l_tab {
        margin-bottom: 80px;
    }
}


/* intoro */
.item-detail-intro {
    display: flex;
    width: 1000px;
    margin: auto;
    align-items: center;
}
.item-detail-intro .item-detail-intro__image_wrap {
    width: 57%;
}
.item-detail-intro .twoclm_item-detail-intro__image {
    display: flex;
    margin-top: 25px;
}
.item-detail-intro .twoclm_item-detail-intro__image .item-detail-intro__image:first-child {
    padding-right: 25px;
}
.item-detail-intro .item-detail-intro__text {
    padding-left: 50px;
}
.item-detail-intro__text--inner .item-detail-intro__hdg {
    font-size: 1.35rem;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
    font-weight: bold;
}
.item-detail-intro__text--inner .item-detail-intro__desc {
    font-size: 0.93rem;
    margin-top: 30px;
}
.item-detail-intro__desc .break {
    margin-bottom: 10px;
}

@media screen and (min-width: 767px) and (max-width: 999px) {
    .item-detail-intro {
        width: 760px;
    }
    .item-detail-intro__text--inner .item-detail-intro__hdg {
        font-size: 1.1rem;
    }
}
@media screen and (max-width: 767px) {
.item-detail-intro {
    flex-direction: column;
    width: 100%;
    margin: auto;
    align-items: flex-start
}
.item-detail-intro .item-detail-intro__image_wrap {
    width: 100%;
}
.item-detail-intro .twoclm_item-detail-intro__image {
    margin: auto;
    width: 90%;
    padding-top: 4%;
}
.item-detail-intro .item-detail-intro__text {
    padding-left: 5%;
    margin-top: 20px;
}
.item-detail-intro__text--inner .item-detail-intro__hdg {
    font-size: 5.02vw;
    letter-spacing: 0.05em;
    line-height: 1.5;
}

}


.otherPageBox {
    padding: 50px 0 50px !important;
}
@media screen and (max-width: 767px) {
    .otherPageBox {
        padding: 40px 0 0 !important;
    }
}
.h3font {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
    font-size: 1.37rem;
    margin: 20px 0;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .h3font {
        font-size: 18px;
        margin: 25px 0 20px;
    }
}

.mb30 {
  margin-bottom: 60px !important;
}
@media screen and (max-width: 767px) {
    .mb30 {
  margin-bottom: 30px !important;
    }
}


/*--- 01・02 ---*/
    .headnumber {
        border-bottom: 1px solid #d2d2d2;
        border-top: 1px solid #d2d2d2;
    }
    .headnumber_inner {
        width: 940px;
        margin: auto;
    }
    .NumberArea {
        display: flex;
        justify-content: center;
        width: 940px;
        margin: auto;
    }
    .Number {
        width: 50%;
        position: relative;
    }
    .Number img {
    width: 160px;
        position: absolute;
        top: 170px;
        right: 38%;
    }
    .Number img:nth-child(2) {
        width: 180px;
    }

.item-detail-intro__notes {
    font-size: 0.72rem;
    color: #737373;
    text-align: left;
    line-height: 2;
}
@media screen and (min-width: 767px) and (max-width: 999px) {
    .headnumber_inner {
        width: 760px;
    }
    .NumberArea {
        width: 760px;
    }
}

@media screen and (max-width: 767px) {
    .headnumber {
        border-bottom: 0px;
        border-top: 0px;
        margin-top: 70px;
    }
    .headnumber_inner {
        width: 100%;
    }
    .NumberArea {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
.otherPageBoxOtl2 {
    width: 90%;
    margin: auto;
}
}
.otherPageBoxOtl2.column-module-5_6 .imgArea,
.otherPageBoxOtl2.column-module-5_6 .areaL .imgArea img,
.otherPageBoxOtl2.column-module-5_6 .areaR .imgArea img {
    margin-top: 0 !important;
}

@media screen and (max-width: 767px) {
.otherPageBoxOtl2.column-module-5_6 .areaL .imgArea img,
.otherPageBoxOtl2.column-module-5_6 .areaR .imgArea img { 
    margin-top: 0 !important;    }
}

.image-L p,.image-R p {
    text-align: left;
}

@media screen and (max-width: 767px) {
    .full_vw {
        width: 100vw;
        margin: 0 calc(50% - 50vw);
    }
}
@media screen and (max-width: 767px) {
    .mt50 {
        margin: 20px 0 20px !important;
    }
}

.MR01 {
    padding-bottom: 40px;
}
@media screen and (max-width: 767px) {
    .MR01 {
        padding-bottom: 0;
    }
}
/*--- ★★ファインバブルバス追加分★★ ---*/

@media screen and (min-width: 1280px) {
.item-detail-features {
    margin-bottom: 0;
}

/*--- 画像4カラム ---*/
.container {
    display: flex;
    width: 960px;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
 }
.item {
    width: 220px;
	margin: 0 10px 20px 10px;
 }
.item-txt {
	margin-top: 7px;
	font-size: 14px;
	text-align: left;
	line-height: 1.3em;
 }
.font-bold {
	font-weight: bold;
 }
.PageBox01 {
    width: 960px;
    margin: 0 auto;
    padding: 0 0 50px;
    position: relative;
    z-index: 1;
  }
}

@media screen and (min-width: 767px) and (max-width: 1279px) {
.item-detail-intro__desc,
.txtArea {
    font-size: 13.9px;
}
.otherPageTtl1 {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
    font-weight: bold;
    font-size: 24px;
    line-height: 1.5em;
    margin-bottom: 20px;
}
.otherPageTtl2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 24px;
  border-bottom: 1px solid #333;
  margin: 0 0 20px;
 }
.otherPageTtl2-2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 24px;
  border-bottom: 1px solid #333;
  margin: 0 0 20px;
 }
.otherPageTtl3 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 20px;
  border-bottom: 1px solid #333;
  margin: 0px;
 }
.otherPageTtl3-2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 22px;
  border-bottom: 1px solid #333;
  margin: 0 0 30px;
  width: 740px;
 }
.otherPageBoxOtl2.column-module-5_6 .twoClm h3 {
   font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
   font-weight: bold;
   font-size: 18.5px !important;
   padding-bottom: 7px;
   border-bottom: 1px solid #333;
}
.otherPageBoxOtl2.column-module-5_6 .twoClm {
    width: 100% !important;
    max-width: 760px;
    margin: 30 auto;
}
.otherPageBoxOtl2.column-module-5_6 .areaL p,
.otherPageBoxOtl2.column-module-5_6 .areaR p{
    padding-top: 12px;
    margin: 0 auto;
    width: 340px;
    text-align: left;
    font-size: 13.5px;
    line-height: 1.7;
}

/*--- 画像4カラム ---*/
.container {
    display: flex;
	max-width: 930px;
    width: 100%;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
 }
.item {
    width: 30%;
	margin: 0 9px 20px 9px;
 }
.item-txt {
	margin-top: 7px;
	font-size: 13px;
	text-align: left;
	line-height: 1.3em;
 }
.font-bold {
	font-weight: bold;
 }
.PageBox01 {
    position: relative;
    z-index: 1;
    max-width: 760px;
	margin: 0 30px 30px;
  }
  
.otherPageBoxOtl2.column-module-5_6 .imgArea {
    margin-top: 20px;
}
}

@media screen and (min-width: 768px) {
    .otherPageBoxOtl2.itemClm01 {
        margin-top: 60px;
    }
}


@media screen and (max-width: 767px) {
.item-detail-features {
    margin-top: 40px;
}
.otherPageTtl1 {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
    font-weight: bold;
    font-size: 21px;
    margin-bottom: 20px;
}
.otherPageTtl2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 18px !important;
  border-bottom: 1px solid #333;
  margin: 0 0 20px;
}
.otherPageTtl2-2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 20px !important;
  border-bottom: 1px solid #333;
  margin: 0 0 20px;
}
.otherPageTtl3 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 18px !important;
  border-bottom: 1px solid #333;
  margin: 0px;
}
.otherPageTtl3-2 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif !important;
  font-weight: bold;
  font-size: 18px !important;
  border-bottom: 1px solid #333;
  margin: 0 0 20px;
  width: 100%;
}
.otherPageBoxOtl2.itemClm01-2 .otherPageBox .imgArea img {
  width: 100% !important;
  min-width: 325px !important;
  margin: 0 auto 0 -5px !important;
  text-align: center;
}
.otherPageBoxOtl2.column-module-5_6 .twoClm {
    width: 100% !important;
    margin: 0 auto;
}
.otherPageBoxOtl2.column-module-5_6 .areaL {
    width: 100% !important;
    margin-top: 30px;
}
.otherPageBoxOtl2.column-module-5_6 .areaR {
    width: 100% !important;
    margin-left: 0px;
    margin: 25px auto 0px auto !important;
}
.otherPageBoxOtl2.column-module-5_6 .areaL .imgArea, 
.otherPageBoxOtl2.column-module-5_6 .areaR .imgArea {
    margin-top: 0px;
    width: 100%;
    text-align: center;
    max-width: 100% !important;
}
.otherPageBoxOtl2.column-module-5_6 .areaL .imgArea img, 
.otherPageBoxOtl2.column-module-5_6 .areaR .imgArea img {
     width: 100% !important;
}
.otherPageBoxOtl2.column-module-5_6 .areaL p,
.otherPageBoxOtl2.column-module-5_6 .areaR p{
    padding-top: 12px;
    margin: 0 auto;
    width: 100% !important;
   text-align: left;
}
/*--- 画像4カラム ---*/
.container {
    display: flex;
	max-width: 800px;
    width: 100%;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 auto 0;
 }
.item {
    width: 47.5%;
	margin: 0 0 20px;
 }
.item-txt {
	margin-top: 7px;
	font-size: 14px;
	text-align: left;
	line-height: 1.3em;
 }
.font-bold {
	font-weight: bold;
 }
.PageBox01 {
 padding: 0 10px 45px 10px;
 margin: 0 15px;
 position: relative;
 z-index: 1;
 }
}

/*-- グレー枠内：テキスト＆画像レイアウト  -----*/
.hdt_textAndImage {
padding: 70px 0 50px;
}
.hdt_textAndImage__inner {
max-width: 960px;
margin: 0 auto;
}
.hdt_textAndImage__content {
display: flex;
padding: 23px;
border: solid #ededed 3px;
}
.hdt_textAndImage__text {
width: calc(100% - 250px);
padding-right: 20px;
box-sizing: border-box;
}
.hdt_textAndImage__image {
width: 250px;
box-sizing: border-box;
}
.hdt_textAndImage__title {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", HiraMinPro-W3, "HG明朝B", "ＭＳ 明朝", "MS Mincho", serif;
font-size: 22px;
font-weight: bold;
margin-bottom: 10px;
}
.hdt_name {
font-weight:bold; 
text-align:right !important;
margin-right: 10px;
}
@media screen and (max-width: 1279px) {
.hdt_textAndImage {
padding: 70px 25px 50px;
}
.hdt_textAndImage__inner {
max-width: 760px;
}
.hdt_textAndImage__content {
display: flex;
padding: 23px;
border: solid #ededed 3px;
}
.hdt_textAndImage__text {
font-size: 13.5px;
}
}
@media screen and (max-width: 767px) {
.hdt_textAndImage {
padding: 25px 25px 45px;
}
.hdt_textAndImage__content {
flex-direction: column;
}
.hdt_textAndImage__text {
width: 100%;
padding: 0;
}
.hdt_textAndImage__image {
width: 100%;
margin-top: 20px;
text-align: center;
}
.hdt_textAndImage__title {
font-size: 18px;
}
.hdt_name {
font-weight:bold; 
text-align:left !important;
}
}

/*-- FBIA＆JWWA表示 -----*/
/* コンテナ全体のスタイル */
.box-container {
    width: 920px; /* 幅を920pxに変更 */
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 20px; /* 間の余白はそのまま */
}

/* 左側のボックス */
.fbia-box {
    width: 700px; /* 右側の幅200pxを考慮して調整 */
}

/* 右側のボックス */
.jwwa-box {
    width: 200px; /* 幅を200pxに変更 */
    display: flex;
    justify-content: center;
    align-items: center;
}

.jwwa-box img {
    max-width: 100%;
    height: auto;
}

@media all and (min-width: 767px), print {
    .box-fbia {
        margin: 0 auto;
        padding: 25px;
        box-sizing: border-box;
        background-color: #f4f4f4;
        overflow: hidden;
    }
    .box-fbia_wrapper {
        padding: 0 10px;
    }
    .box-fbia_image {
        width: 95px;
        float: left;
        margin: 0 auto;
        text-align: center;
    }
    .box-fbia_image img {
        width: 100%;
    }
    .box-fbia_text {
        margin-top: 0;
        padding-left: 15px;
        margin-left: 105px;
        line-height: 1.4em;
    }
    .box-fbia_text_note {
        margin-top: 12px;
        font-size: 12px;
        line-height: 1.4em;
    }
}
@media screen and (min-width: 767px) and (max-width: 1279px) {
    .box-container {
        width: 100%; /* 幅を画面いっぱいに */
        padding: 0 10px; /* 余白を設定 */
        gap: 5px; /* 余白を半分に調整 */
    }
    .fbia-box {
        width: 74%; /* 左カラムの幅を画面に合わせて縮小 */
    }
    .jwwa-box {
        width: 24%; /* 右カラムの幅を調整 */
        display: flex;
        flex-direction: column; /* 画像を縦に配置 */
        justify-content: flex-start; /* 上部に寄せる */
        align-items: center; /* 横方向に中央揃え */
    }
    .box-fbia {
        padding: 20px; /* 内側の余白を少し縮小 */
        font-size: 14px; /* フォントサイズを調整 */
    }
    .box-fbia_image {
        width: 80px; /* 画像のサイズを調整 */
    }
    .box-fbia_text {
        margin-left: 85px; /* 画像に合わせたマージンを調整 */
        font-size: 15px;
        line-height: 1.4em;
    }
    .box-fbia_text_note {
        margin-top: 12px;
        font-size: 12px;
        line-height: 1.4em;
    }	
    .jwwa-box img {
        max-width: 100%; /* 画像はボックス内で最大サイズに */
        height: auto;
        margin-top: 0; /* 余白をなくして画像を上部に配置 */
    }
}

@media all and (max-width: 767px) {
    .box-container {
        width: 100%; /* 横幅いっぱいに */
		margin-left: -10px;
        padding: 0 10px; /* 余白を設定 */
        gap: 20px; /* 2要素間の余白 */
        flex-direction: column; /* 縦並びに変更 */
    }

    .fbia-box,
    .jwwa-box {
        width: 100%; /* 両カラムを横幅いっぱいに */
    }

    .box-fbia {
        margin: 50px auto 0;
        padding: 30px 15px;
        box-sizing: border-box;
        background-color: #f4f4f4;
        overflow: hidden;
    }
    .box-fbia_image {
        width: 88px; /* 画像サイズを調整 */
        margin: 0 auto; /* 画像を中央に配置 */
    }

    .box-fbia_text {
        margin-left: 0; /* 左のマージンを削除 */
		margin-top: 20px;
        font-size: 15px; /* テキストサイズを微調整 */
        line-height: 200%;
    }
    .box-fbia_text_note {
        margin-top: 12px;
        font-size: 12px;
        line-height: 1.5em;
    }	
    .jwwa-box img {
        max-width: 100%; /* 画像はボックス内で最大サイズに */
        height: auto;
    }
}

/*--- サイズ確認 ---*/
.size {
    width: 86%;
    max-width: 750px;
    margin: 0 auto 50px;
    background: #5c5c5c;
}
.size__title {
    width: 100%;
    text-align: center;
    line-height: 50px;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
}
@media screen and (max-width: 767px) {
    .size__title {
        line-height: min(9.3333333333vw, 35px);
        font-size: min(4vw, 15px);
    }
}
.size__main {
    padding: 30px 40px 35px;
    background: #efefef;
}
@media screen and (max-width: 767px) {
    .size__main {
        padding: 5.3333333333vw;
        font-size: min(3.4666666666vw, 13px);
        line-height: 1.84;
    }
}
.size__main ul,
.size__main li + li {
    margin-top: 1.5em;
}
@media screen and (max-width: 767px) {
    .size__main ul,
    .size__main li + li {
        margin-top: 1em;
    }
}
.size__main li {
    position: relative;
    padding-left: 30px;
}
@media screen and (max-width: 767px) {
    .size__main li {
        padding-left: min(4.5333333333vw, 17px);
        font-size: min(2.9333333333vw, 11px);
        line-height: 1.8;
    }
}
.size__main li::before {
    content: "□";
    position: absolute;
    top: 0;
    left: 0;
}


/*--- 水道工事業者への設置依頼 ---*/
.const {
    text-align: center; 
    letter-spacing: 0.05em;
    margin: 70px 0 100px;
}
@media screen and (max-width: 767px) {
    .const {
        margin: 45px 0 60px;
    }
}
.const__open {
    position: relative;
    width: 100%;
    background: #000;
    color: #fff;
    font-weight: 500;
    cursor: pointer;
    transition: all  0.3s ease;
}
.const__open:hover {
    opacity: 0.8;
}
@media screen and (min-width: 1280px) {
    .const__open {
        font-size: 22px;
        line-height: 65px;
        text-indent: 60px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1279px) {
    .const__open {
        font-size: 18px;
        line-height: 55px;
        text-indent: 20px;
    }
}
@media screen and (max-width: 767px) {
    .const__open {
        padding-left: 6.6666666666vw;
        font-size: min(4vw, 15px);
        line-height: min(14.66666666vw, 55px);
        text-align: left;
    }
}
.const__open::after {
    content: "＋";
    font-weight: 400;
}
@media screen and (min-width: 1280px) {
    .const__open::after {
        margin-left: 30px;
        font-size: 26px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1279px) {
    .const__open::after {
        margin-left: 20px;
        font-size: 21px;
    }
}
@media screen and (max-width: 767px) {
    .const__open::after {
        position: absolute;
        right: 6.6666666666vw;
    }
}
.is-open .const__open::after {
    content: "－";
}
.const__contents {
    padding: 40px 0 100px;
    background: #f6f6f6;
    margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
    .const__contents {
        padding: min(8vw, 30px) 0 min(10vw, 30px);
        font-size: min(3.4666666666vw, 13px);
        margin-bottom: 55px;
    }
}
@media screen and (max-width: 767px) {
    .const__intro {
        line-height: 1.85;
    }
}
.const__intro span {
    color: #FF0000;
    text-decoration: underline;
}
.const__sec {
    width: 86%;
    max-width: 750px;
    margin: 50px auto 0;
    background: #fff;
}
@media screen and (max-width: 767px) {
    .const__sec {
        margin-top: min(8vw, 30px);
        font-size: min(2.9333333333vw, 11px);
        line-height: 1.9;
    }
}
.const__sec__title {
    width: 100%;
    line-height: 50px;
    background: #7d97cd;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
    .const__sec__title {
        line-height: min(9.3333333333vw, 35px);
        font-size: min(4vw, 15px);
    }
}
.const__inner {
    padding-left: 40px;
    padding-right: 40px;
}
@media screen and (max-width: 767px) {
    .const__inner {
        padding-left: min(4.8vw, 13px);
        padding-right: min(4.8vw, 13px);
    }
}
.const__flow {
    padding-bottom: 50px;
}
@media screen and (max-width: 767px) {
    .const__flow {
        padding-bottom: min(5.3333333333vw, 20px);
    }
}
.const__flow__sec {
    margin-top: 35px;
}
@media screen and (max-width: 767px) {
    .const__flow__sec {
        margin-top: min(5.3333333333vw, 20px);
    }
}
@media screen and (max-width: 767px) {
    .const__flow__sec::after {
        content: "▼";
        display: block;
        margin-top: min(2.6666666666vw, 10px);
        margin-bottom: min(-1.3333333333vw, -5px);
        transform: scale(1.5, 1);
    }
}
@media screen and (max-width: 767px) {
    .const__flow__sec:last-child::after {
        content: none;
    }
}
.const__flow__sec__title {
    line-height: 50px;
    margin-bottom: 25px;
    background: #efefef;
    font-size: 16px;
    font-weight: 500;
    border-radius: 25px;
}
@media screen and (max-width: 767px) {
    .const__flow__sec__title {
        line-height: min(9.3333333333vw, 35px);
        margin-bottom: min(4vw, 15px);
        font-size: min(4vw, 15px);
    }
}
.const__flow__check {
    margin-top: 20px;
    padding: 20px 30px;
    border: 2px dotted #707070;
}
@media screen and (max-width: 767px) {
    .const__flow__check {
        margin-top: min(4vw, 15px);
        padding: min(4vw, 15px) min(4vw, 15px);
    }
}
.const__flow__check li {
    position: relative;
    padding-left: 30px;
}
@media screen and (min-width: 768px) {
    .const__flow__check li {
        font-size: 14px;
    }
}
@media screen and (max-width: 767px) {
    .const__flow__check li {
        padding-left: min(4.5333333333vw, 17px);
    }
}
.const__flow__check li + li {
    margin-top: 1.5em;
}
.const__flow__check li::before {
    content: "□";
    position: absolute;
    top: 0;
    left: 0;
}
@media screen and (max-width: 767px) {
    .const__flow__check li br {
        display: none;
    }
}
.const__partner__intro {
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .const__partner__intro {
        margin-top: min(5.3333333333vw, 20px);
        font-size: min(3.4666666666vw, 13px);
    }
}
.const__partner__inner {
    margin-top: 30px;
    padding-top: 30px;
    padding-bottom: 40px;
    background: #edf0f8;
}
@media screen and (max-width: 767px) {
    .const__partner__inner {
        margin-top: min(4vw, 15px);
        padding: min(5.8666666666vw, 22px) min(4.5333333333vw, 17px) min(5.3333333333vw, 20px);
    }
}
.const__partner__name {
    padding-bottom: 5px;
    border-bottom: 1px solid #000;
    font-size: 16px;
}
@media screen and (max-width: 767px) {
    .const__partner__name {
        font-size: min(3.4666666666vw, 13px);
    }
}
@media screen and (min-width: 768px) {
    .const__partner__details {
        font-size: 14px;
    }
}
.const__partner__detailbox {
    margin-top: 20px;
}
.const__partner__area dt {
    display: inline-block;
    padding: 0 1em;
    background: #000;
    color: #fff;
    text-align: center;
}
.const__partner__area dd {
    margin-top: 15px;
    line-height: 1.7;
}
@media screen and (min-width: 768px) {
    .const__partner__area dd {
        font-size: 14px;
    }
}
.const__partner__notice {
    margin-top: 15px;
    line-height: 1.8;
}
@media screen and (min-width: 768px) {
    .const__partner__notice {
        font-size: 12px;    
    }
}
@media screen and (max-width: 767px) {
    .const__partner__notice {
        font-size: min(2.66666666vw, 10px);   
    }
}
.const__partner__price dt {
    display: inline-block;
    padding: 0 1em;
    background: #7d97cd;
    color: #fff;
    text-align: center;
}
.const__partner__price dd {
    position: relative;
    margin-top: 15px;
    padding: 0 0 10px 25px;
    font-size: 14px;
    line-height: 1.7;
    border-bottom: 2px dotted #707070;
}
@media screen and (max-width: 767px) {
    .const__partner__price dd {
        font-size: min(3.2vw, 12px);
    }
}
.const__partner__price dd::before {
    content:"●";
    position: absolute;
    top: 0;
    left: 0;
    color: #aaa;
}
.const__partner__outro {
    margin-top: 30px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .const__partner__outro {
        margin-top: min(4vw, 15px);
        font-size: min(3.2vw, 12px);
    }
}
.const__outro {
    margin-top: 50px;
}
@media screen and (max-width: 767px) {
    .const__outro {
        margin-top: 50px;
        font-size: min(2.9333333333vw, 11px);
        line-height: 1.9;
    }
}

/*--- 水道管の口径(サイズ)確認方法 ---*/
.pipe {
    padding-bottom: 40px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .pipe {
        padding-bottom: 5.3333333333vw;
        font-size: 3.4666666666vw;
        line-height: 1.84;
    }
}
.pipe__title {
    font-size: 18px;
    font-weight: 500;
}
@media screen and (max-width: 767px) {
    .pipe__title {
        font-size: 4vw;
    }
}
.pipe__intro {
    margin-top: 30px;
}
@media screen and (max-width: 767px) {
    .pipe__intro {
        margin-top: 4.6666666666vw;
    }
}
.pipe__box {
    width: 86%;
    max-width: 670px;
    margin: 35px auto 0;
    padding: 30px 40px 40px;
    background: #efefef;
}
@media screen and (max-width: 767px) {
    .pipe__box {
        width: 78.6666666666vw;
        margin: 5.3333333333vw auto 0;
        padding: 5.3333333333vw 6vw 6vw;
        text-align: left;
    }
}
.pipe__box__title {
    margin-bottom: 20px;
    padding-bottom: 7px;
    font-size: 17px;
    font-weight: 500;
    border-bottom: 1px solid #000;
}
@media screen and (max-width: 767px) {
    .pipe__box__title {
        margin-bottom: 4vw;
        padding-bottom: 0;
        font-size: 4vw;
    }
}
.pipe__size {
    display: flex;
    justify-content: center;
    width: 380px;
    margin: 15px auto 0;
}
@media screen and (max-width: 767px) {
    .pipe__size {
        width: 100%;
        margin-top: 4vw;
    }
}
.pipe__size li {
    width: 180px;
}
@media screen and (max-width: 767px) {
    .pipe__size li {
        width: 32vw;
    }
}
.pipe__num {
    margin-top: 15px;
    font-size: 12px;
    line-height: 1.7;
}
@media screen and (max-width: 767px) {
    .pipe__num {
        text-align: center;
        font-size: min(2.9333333333vw, 11px);
    }
}
.pipe__meter div {
    margin-top: 35px;
}
@media screen and (max-width: 767px) {
    .pipe__meter div {
        margin-top: 6vw;
    }
}
.pipe__meter picture {
    display: block;
    width: 375px;
    margin: 20px auto 0;
}
@media screen and (max-width: 767px) {
    .pipe__meter picture {
        width: 100%;
        margin-top: 4vw;
    }
}



/*-- 画像＆画像レイアウト  -----*/
.image-image { margin: 40px auto 0 ; width: 100%; display: flex; }
.image-L { width: 100%; margin-left: 25px; margin-right: 10px;}
.image-R { width: 100%; margin-right: 25px; margin-left: 10px;}
.ml-5 { margin-left: -5px; }

/* sp */
@media screen and (max-width: 767px) {   
.image-image { margin: 0; width: 100%; display: flex; flex-wrap: wrap; flex-direction: column;}
.image-L { margin: 30px 0 0; width: 100%; }
.image-R { margin: 20px auto 0; width: 100%; }
.ml-5 { margin-left: 0px; }
}
/* tablet */
@media screen and (min-width: 767px) and (max-width: 1023px) {
.image-image { margin: 40px auto 0 ; width: 100%; max-width: 760px; display: flex; }
.image-L {width: 350px; margin-left: 15px; margin-right: 0px;}
.image-R {width: 350px; margin-right: 15px; margin-left: 0px;}
.ml-5 { margin-left: 0px; }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) {
.image-image { margin: 40px auto 0 ; width: 100%; max-width: 760px;  display: flex; }
.image-L {width: 100%; margin-left: 25px; margin-right: 0px;}
.image-R {width: 100%; margin-right: 25px; margin-left: 0px;}
.ml-5 { margin-left: 0px; }
}
/* PC/tablet */
@media screen and (min-width: 1280px) and (max-width: 1365px) {
.image-image { margin: 30px auto 0 ; max-width: 100%; display: flex; }
.image-L { width: 100%; margin-left: 25px; margin-right: 10px;}
.image-R { width: 100%; margin-right: 25px; margin-left: 10px;}
.ml-5 { margin-left: -30px; }
}


/*-- 余白調整  -----*/
.MT01 {margin: -10px 0 70px;}  

@media screen and (max-width: 767px) {  
.MT01 {margin: -10px 0 30px;} 
}


/* スマホ用<br> */
@media screen and (max-width:414px) {
	.br-sp { display: block; }
	.br-tb { display: none; }
	.br-pc { display: none; }
}
/* tablet用<br> */
@media only screen and (min-width:415px) and (max-width:834px) {
	.br-sp { display: none; }
	.br-tb { display: block; }
	.br-pc { display: none; }
}
/* pc用<br> */
@media screen and (min-width:835px) {
	.br-sp { display: none; }
	.br-tb { display: none; }
	.br-pc { display: block; }
}
/* text-align */
.al-left {
    text-align: left;
}

/* 20251024追加 */
#goodsspec_body .variationlist_ .variation_list_wrap_ > .varItem_ > div {
    padding: 12px;
    font-size: 18px;
}