@charset "utf-8";

/* ----------------------------------
style
---------------------------------- */
sup.bttm{vertical-align: text-bottom;}

#content_Wrap {
font-feature-settings: "palt";
}

inner_1000{
width: 94%;
max-width: 1000px;
margin: 0 auto;
}

.cap_Txt {
position: absolute !important;
}

#content_Wrap {
position: relative;
}

.fig_border figure{
border: 1px solid #bebebe;
box-sizing: border-box;
}

#content_Wrap figure {
position: relative;
height: fit-content;
}

.main_Wrap {
background: linear-gradient(to right, rgb(30, 62, 27) 0%, rgba(47, 94, 41, 1) 50%, rgb(30, 62, 27) 100%);
}

.main_Wrap .page_ttl {
position: absolute;
top: 25.55555556%;
left: 50%;
transform: translate(-50%, 0);
width: fit-content;
text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.93);
}

.main_Wrap .page_ttl h3 {
color: #fff;
text-align: center;
font-size: clamp(26px, 2.7vw, 32.4px);
line-height: 1.5;
letter-spacing: 0.18em;
font-family: "Cinzel", serif;
}

.main_Wrap .page_ttl h4 {
color: #fff;
text-align: center;
font-size: clamp(12px, 1.125vw, 13.5px);
line-height: 1.5;
letter-spacing: 0.06mm;
}

.txt_note{
display: inline-block;
font-size: 10px;
line-height: 1.3;
}
figure + .txt_note{
padding-top: 1em;
}
p + .txt_note{
padding-top: 1em;
}

/* 設備仕様 / 共通 */
.sub_ttl {
color: #00958f;
font-size: clamp(16px,1.5vw,18px);
letter-spacing: 0.06em;
line-height: 1.8;
}
.sub_copy {
font-size: 14px;
letter-spacing: 0.06em;
line-height: 1.8;
}

.sec_copy {
position: relative;
padding: 2em 0;
margin: 0 auto 40px;
}
.sec_copy::before {
content: "";
display: block;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
width: 100vw;
    height: 100%;
background: #eae5dd;
z-index: -1;
}

.sec_copy.flex{
justify-content: center;
align-items: center;
gap: 10px 20px;
}
.sec_copy .sec_logo {
}
.sec_copy .sec_logo.rinnai {
width: 40%;
max-width: 140px;
}
.sec_copy .sec_logo.jcom {
width: 40%;
max-width: 140px;
}
.sec_copy .sec_logo.fulltime {
width: 40%;
max-width: 140px;
mix-blend-mode: darken;
}


.sec_copy .copy {
color: #00958f;
}
.sec_copy p {
font-size: clamp(11px,1.5vw,18px);
letter-spacing: 0.06em;
}
.sec_copy h3 {
font-size: clamp(18px,2.167vw,26px);
letter-spacing: 0.06em;
}
.sec_copy p + h3{
padding-top: 0.3em;
}


.content_box {
}

.content_box h4 + p{
padding-top: 0.5em;
}
.content_box figure + h4{
padding-top: 0.7em;
}
.content_box figure + .text_box{
padding-top: 0.7em;
}
.content_box p + figure {
padding-top: 0.8em;
}
.content_box p + ul {
padding-top: 0.8em;
}
.content_box .txt_note + p {
padding-top: 0.8em;
}
.content_box figure + .small_txt {
padding-top: 0.3em;
}



.text_box h4 {
position: relative;
text-align: center;
font-size: clamp(16px,1.5vw,18px);
color: #4c4948;
letter-spacing: 0.08em;
line-height: 1.4;
}
.text_box h4.l-height-lo {
line-height: 0.8;
padding: 0 0 0.7em;
}
.text_box h4 {
text-align: left;
display: flex;
width: 100%;
flex-direction: column;
justify-content: center;
margin: 0 auto;
padding: 0 0 0.4em;
}
.text_box h4::before {
content: "";
position: absolute;
bottom: 0;
left: 0;
display: block;
width: 100%;
height: 1px;
background: #00958f;
}
.text_box h4.size-L {
font-size: clamp(24px,3vw,36px);
line-height: 1.2;
display: inline-block;
padding: 0 0 0.2em;
}
.text_box h4.size-M {
font-size: clamp(21px,2.167vw,26px);
}
.text_box h4 span{
margin: 0 auto;
line-height: 0.5;
}

.text_box p {
text-align: left;
font-size: 14px;
letter-spacing: 0.06em;
line-height: 1.8;
}
p.small_txt {
text-align: left;
font-size: 12px;
letter-spacing: 0.06em;
line-height: 1.8;
}
.text_box p + h4{
padding-top: 1.5em;
}



.column1 {
}

.column1 figure {
}

.column2 {

}
.column2 .flex{
flex-wrap: wrap;
gap: 60px 5%;
}
.column2.kantakun{
flex-wrap: wrap;
gap: 30px 5%;
margin: 40px auto 60px;
}

.column2 .flex li{
width: 47.5%;
}
.column2.kantakun > div{
width: 47.5%;
}

.column2.kantakun > div .kanta_head{
display: flex;
justify-content: flex-start;
align-items: center;
padding-bottom: 0.5em;
}
.column2.kantakun > div .kanta_head .num{
position: relative;
font-size: clamp(21px, 2.167vw, 26px);
color: #fff;
padding: 0.2em;
margin-right: 0.4em;
}
.column2.kantakun > div .kanta_head .num::before{
content: "";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
width: 100%;
height: 100%;
background: #51779e;
aspect-ratio: 1 / 1;
z-index: -1;
}
.column2.kantakun > div .kanta_head h4{
font-size: clamp(16px,1.5vw,18px);
line-height: 1.3;
}


.column2 .flex li.flex{
gap: 16px 2.80701754%;
}
.column2 .flex li.flex .text_box{
width: 55.0877193%;
}
.column2 .flex li.flex figure{
width: 42.10526316%;
}

.column2.flex-40-60 .flex{
gap: 20px 2.5%;
}
.column2.flex-40-60 .flex .text_box{
width: 37.5%;
}
.column2.flex-40-60 .flex figure{
width: 60%;
}
.column2.flex-35-65 .flex{
gap: 20px 2.5%;
margin: 0 auto 60px;
}
.column2.flex-35-65 .flex .text_box{
width: 32.5%;
}
.column2.flex-35-65 .flex figure{
width: 65%;
}
.column2.flex-65-35 .flex{
gap: 20px 2.5%;
}
.column2.flex-65-35 .flex .text_box{
width: 62.5%;
}
.column2.flex-65-35 .flex figure{
width: 35%;
}
.column2.flex-25-75 .flex{
gap: 20px 2.5%;
margin: 0 auto 60px;
}
.column2.flex-25-75 .flex .text_box{
width: 22.5%;
}
.column2.flex-25-75 .flex figure{
width: 75%;
}

.column3 {

}
.column3 ul.flex {
flex-wrap: wrap;
gap: 60px 2%;
}
.column3 ul li {
width: 32%;
}

.column4 ul.flex {
flex-wrap: wrap;
gap: 60px 2.66666667%;
}
.column4 ul li {
width: 23%;
}
.column4 ul li.list4-2 {
width: 48.66666667%;
}
.column4 ul li.list4-2.flex {
flex-wrap: wrap;
gap: 0 5.15463918%;
}
.column4 ul li.list4-2.flex > figure{
width: 47.42268041%;
}
.column4 ul li.list4-2.flex > .img_box{
width: 47.42268041%;
}
.column4 ul li.list4-2.flex > .img_box figure{
width: 100%;
}

.column4 ul li.list4-2.flex .text_box{
width: 47.42268041%;
}

.column2.postaku{
display: flex;
gap: 30px 3%;
}
.column2.postaku div.flex{
width: 45%;
gap: 10px 3%;
}
.column2.postaku ul.flex{
width: 52%;
gap: 30px 3%;
}

.postaku_01{
display: flex;
gap: 10px 4%;
}
.postaku_01 .text_box{
width: 42%;
}
.postaku_01 .text_box h4::before{
content: unset;
}
.postaku_01 .text_box p{
font-size: 13px;
}
.postaku_01 figure{
width: 54%;
}
.column2.postaku ul.flex {
display: flex;
gap: 20px 2%;
}
.column2.postaku ul.flex li{
display: flex;
justify-content: space-between;
flex-direction: column;
width: 32%;
background: #e6e6e6;
padding: 0.625em;
}
.column2.postaku ul.flex li .item{

}
.column2.postaku ul.flex li .item h5{
text-align: center;
color: #fff;
font-size: 13px;
padding: 0.3em;
border-radius: 6px;
background: #4c4948;
}
.column2.postaku ul.flex li .item p{
font-size: 13px;
line-height: 1.4;
padding-top: 0.75em;
}


.contents > section:not(:first-of-type){
margin: 100px 0 0;
}

.kodawari {
position: absolute;
top: 0;
right: 0;
transform: translate(20px,-20px);
width: clamp(70px,7.5vw,90px);
}

.kodawari.left {
right: unset;
left: 0;
transform: translate(-20px,-20px);
}
.kodawari.title {
top: 50%;
transform: translate(-20px,-50%);
}
[class$="_Area"] {
display: flex;
flex-direction: column;
gap: 60px 0;
}

.gold{
color: #8a7342!important;
}
.pc_only {
display: block;
}

/*=============================
調整
=============================*/
@media only screen and (max-width: 1280px) {
.en_ttl {
font-size: 30px;
}

.subttl {
font-size: 20px;
}
}

/*=============================
tab
=============================*/
@media only screen and (max-width: 1024px) {
.pc_only {
display: none;
}
}


/*=============================
spから
=============================*/
@media screen and (max-width: 767px) {

.main_Wrap .page_ttl {
top: 19.28571429%;
}


.column2 .flex {
flex-wrap: wrap;
gap: 30px 5%;
}
.comfort_Area .column2 .flex li {
width: 100%;
}
.column2 .flex li {
width: 100%;
}

.column2.flex-40-60 .flex .text_box {
width: 100%;
order: 2;
}
.column2.flex-40-60 .flex figure {
width: 100%;
order: 1;
}
.column2.flex-35-65 .flex {
    margin: 0 auto 30px;
}
.column2.flex-35-65 .flex .text_box{
width: 100%;
order: 1;
}
.column2.flex-35-65 .flex figure{
width: 100%;
order: 2;
}

.column2.flex-65-35 .flex{
gap: 20px 2.5%;
}
.column2.flex-65-35 .flex .text_box{
width: 100%;
order: 2;
}
.column2.flex-65-35 .flex figure{
width: 100%;
order: 1;
}

.column2.flex-25-75 .flex{
gap: 20px 2.5%;
margin: 0 auto 30px;
}
.column2.flex-25-75 .flex .text_box{
width: 100%;
order: 2;
}
.column2.flex-25-75 .flex figure{
width: 100%;
order: 1;
}


.column3 ul.flex {
gap: 30px 4%;
}
.column3 ul li {
width: 48%;
}
.column4 ul.flex {
gap: 30px 4%;
}
.column4 ul li {
width: 48%;
}
.column4 ul li.list4-2 {
width: 100%;
}
.column4 ul li.list4-2.flex {
width: 48%;
flex-wrap: wrap;
flex-direction: column;
}
.column4 ul li.list4-2.linen {
width: 100%;
flex-direction: unset;
}
.column4 ul li.list4-2.flex figure {
width: 100%;
}
.column4 ul li.list4-2.linen figure {
width: 47.42268041%;
}

.column4 ul li.list4-2.flex .text_box {
width: 100%;
}
.text_box h4 {
letter-spacing: 0.02em;
}
.contents > section:not(:first-of-type){
margin: 60px 0 0;
}
.sec_copy {
    padding: 1em 0;
    margin: 0 auto 30px;
}
.sec_copy.flex {
    flex-direction: column;
    margin: 0 auto 20px;
}
.sec_copy::before {
    height: 100%;
}
.sec_copy .copy {
color: #00958f;
}
.sec_copy p {
text-align: center;
}
.sec_copy h3 {
text-align: center;
letter-spacing: 0.04em;
}
.sec_copy p + h3{
padding-top: 0.3em;
}
.column2.kantakun {
    flex-wrap: wrap;
    gap: 30px 5%;
    margin: 30px auto 60px;
}
.column2.kantakun > div {
    width: 100%;
}
.column2.postaku {
    flex-wrap: wrap;
}
.column2.postaku div.flex {
    width: 100%;
    gap: 10px 3%;
}
.column2.postaku ul.flex {
    flex-wrap: wrap;
    width: 100%;
    gap: 10px 2%;
 }
 .column2.postaku ul.flex li{
    width: 100%;
 }
 .column2.postaku ul.flex li figure{
   margin: 0.75em auto 0;
 }
 .column2.postaku ul.flex li:nth-child(1) figure,
 .column2.postaku ul.flex li:nth-child(2) figure{
 width: 60%;
 }
 .column2.postaku ul.flex li:nth-child(3) figure{
 width: 70%;
 }
 
.kodawari {
transform: translate(10px,-10px);
}
.kodawari.left {
transform: translate(-10px,-10px);
}
.kodawari.reverse {
right: unset;
left: 0;
transform: translate(-10px,-10px);
}
.kodawari.title {
    top: 50%;
    transform: translate(0px, -100%);
}
[class$="_Area"] {
gap: 30px 0;
}


}