@charset "UTF-8";
/* ========================
  plan
======================== */
.contents { overflow: hidden; }
/*img{width: 100%;}*/

.inner_800{
width: 94%;
max-width: 800px;
margin: 0 auto;
}

figure{position: relative;}

.f-50{font-size: 50%;}
.f-60{font-size: 60%;}
.f-70{font-size: 70%;}
.f-80{font-size: 80%;}
.f-90{font-size: 90%;}
.f-110{font-size: 110%;}
.f-120{font-size: 120%;}
.f-130{font-size: 130%;}
.f-140{font-size: 140%;}
.f-150{font-size: 150%;}
.f-160{font-size: 160%;}
.f-170{font-size: 170%;}
.f-180{font-size: 180%;}
.f-190{font-size: 190%;}
.f-200{font-size: 200%;}
.f-210{font-size: 210%;}
.f-220{font-size: 220%;}
.f-230{font-size: 230%;}
.f-240{font-size: 240%;}
.f-270{font-size: 270%;}
.f-318{font-size: 318%;}

.cinzel{
font-family: "Cinzel", serif;
}

#main_Wrap {
  position: relative;
  text-align: center;
}
#main_Wrap h2 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: clamp(20px,3.333333333333333vw,40px);
  color: #fff;
/*  text-shadow: 0px 0px 6px #28432e;*/
  text-shadow: 0px 0px 4px #000000, 0px 0px 6px rgba(0,0,0,0.8);
  letter-spacing: 0.12em;
  font-family: "Cinzel", serif;
  line-height: 0.8;
}
#main_Wrap h2 span {
  font-size: 30%;
}


.madori_Wrap {
margin: 80px auto 50px;
}
.type_area {
display: flex;
align-items: center;
flex-wrap: wrap;
margin: 0 auto 40px;
}
.type_area .type {
position: relative;
width: 30%;
text-align: center;
padding: 5px;
background: rgb(36,75,51);
background: linear-gradient(90deg, rgba(36,75,51,1) 0%, rgba(6,23,25,1) 100%);
z-index: 0;
box-sizing: border-box;
}
.type_area .type .type_inner{
position: relative;
width: 100%;
text-align: center;
padding: 1em 0;
background: rgb(36,75,51);
background: linear-gradient(90deg, rgba(36,75,51,1) 0%, rgba(6,23,25,1) 100%);
z-index: 0;
border: 1px solid #ccb685;
box-sizing: border-box;
}
.type_area .type.red,
.type_area .type.red .type_inner {
background: rgb(93,2,2);
background: linear-gradient(90deg, rgba(93,2,2,1) 0%, rgba(47,1,1,1) 100%);
}

.type_area .type h3 {
color: #ccb685;
font-size: clamp(20px,2.142857142857143vw,30px);
}
.type_area .type p {
display: block;
width: 60%;
color: #314848;
font-size: clamp(11px,0.928571428571429vw,13px);
margin: 0.5em auto 0;
padding: 0.3em 0;
background: #fff;
line-height: 0.9;
}
.type_area .type.red p {
color: #000;
}
.type_area .type p.menu {
color: #000;
background: #ddcca6;
}
.type_area .area {
width: 70%;
padding: 0 0 0 2em;
color: #314848;
display: flex;
align-items: flex-end;
gap: 1em;
}

.type_area .area > div{
display: flex;
flex-direction: column;
justify-content: space-between;
gap: 0.5em;
}
.type_area .area h3 {
font-size: clamp(12px,1.428571428571429vw,13.2px);
letter-spacing: 0.1em;
}
.type_area .area p {
font-size: 14px;
letter-spacing: 0.1em;
}
.type_area .area h3.flex {
align-items: flex-end;
}
.type_area .area h3.flex div:nth-of-type(1){
display: flex;
align-items: baseline;
}
.type_area .area h3.flex div:nth-of-type(2){
padding:0 0 0.25em 0.25em;
letter-spacing: 0.1em;
font-feature-settings: "palt";
}
.type_area .area h3 .f-column {
    display: inline-block;
    padding: 0 0 0 0.3em;
}


/* .type_area ul {
display: flex;
flex-direction: column;
gap:0.5em;
padding-bottom: 0.15em;
}
.type_area li {
font-size: 14px;
line-height: 1.3;
}
.type_area li:not(:first-child) {
padding-left: 1em;
} */

.point {
margin: 0 auto 40px;
}
.point ul {
}
.point li {
color: #314848;
letter-spacing: 0.1em;
line-height: 2;
padding-left: 1em;
text-indent: -1em;
}
.madori {
}
.madori figure {
}
.madori .hanrei {
width: 80%;
max-width: 349px;
margin: 40px auto 0;
}
.btn {
width: 80%;
max-width: 320px;
margin: 60px auto 0;
}
.btn a {
display: block;
width: 100%;
text-align: center;
color: #244b33;
font-size: clamp(14px,0.928571428571429vw,16px);
border: 1px solid #244b33;
padding: 1.3em 0;
transition: 0.3s;
}
.btn a:hover {
color: #fff;
background: #244b33;
}

.menuplan {
    font-size: 12px;
    width: 100%;
    margin: 40px auto 0;
    padding: 40px 0 0;
    border-top: 1px solid #ccc;
    line-height: 1.5;
}
.menuplan p {
    font-size: 14px;
    margin-bottom: 5px;
    color: #004646;
}
.menuplan ul {
}
.menuplan li {
padding-left: 1em;
text-indent: -1em;
}
/*=========================================================================================================
tab
=========================================================================================================*/
@media screen and (min-width: 768px) and (max-width: 1024px) {

}

/*=========================================================================================================
sp
=========================================================================================================*/
@media screen and (max-width: 767px) {
.contents {
padding: 0;
}

.madori_Wrap {
margin: 40px auto 20px;
}
.type_area {
    margin: 0 auto 20px;
}
.type_area .type {
    width: 100%;
    padding: 4px;
}
.type_area .type .deco {
    clip-path: polygon(100% 0, 92% 100%, 100% 100%);
}
.type_area .area {
    width: 90%;
    margin: 0 auto;
    padding: 1em 0 0 0;
    color: #314848;
    flex-direction: column;
    align-items: flex-start;
}
.type_area .area > div {
    justify-content: flex-start;
    gap: 0.5em;
    width: 100%;
}
.point {
    width: 90%;
    margin: 0 auto 20px;
}
.point li {
    font-size: 13px;
}
.madori {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
}
.madori figure {
    overflow: hidden;
}
.madori figure img {
    width: 114%;
    margin: 0 -7%;
}
/*個別*/
.madori.type_L figure img {
    width: 100%;
    margin: 0;
}
.madori figure.hanrei img {
    width: 100%;
    margin: 00;
}

.btn {
    margin: 40px auto 0;
}
.menuplan p {
    font-size: 13px;
}
}


/*図面タブ切り替え*/
.tab {
    position: relative;
    max-width: 600px;
    width: 100%;
    margin: 50px auto 50px;
    display: flex;
    justify-content: center;
    z-index: 1;
}
.tab li {
    text-align: center;
    padding: 12px 15px;
    width: 40%;
    color: #b5975c;
    background: #FFFFFF;
    border: 1px solid #b5975c;
    cursor: pointer;
    transition: 0.3s;
    margin: 0 10px;
    font-size: 18px;
}
.tab li.flex2 {
    width: 48%;
}
.tab li:hover {
    color: #fff;
    border: 1px solid #b5975c;
    background: #b5975c;
}
.tab li.select {
    color: #fff;
    border: 1px solid #b5975c;
    background: #b5975c;
}

.balloon {
    position: relative;
    background: #b5975c;
    padding: 1em;
}
.balloon:after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -9px;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #b5975c transparent transparent transparent;
    border-width: 8px 8px 0 8px;
}
.hide {
    display: none;
}

@media screen and (max-width: 767px) {
    .tab {
        margin: 30px auto 30px;
    }
    .tab li {
        padding: 15px;
        width: 45%;
        font-size: 14px;
    }
}  