@charset "UTF-8";

/*=== 共通 ===*/
#content_Wrap {
font-feature-settings: "palt";
overflow: hidden; 
}
figure{
position: relative;
height: fit-content;
}
img {
width: 100%;
}
.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%;}

sup{
vertical-align: super;
font-size: 9px;
}

#main_Wrap {
position: relative;
}
#main_Wrap h2 {
position: absolute;
top: 47%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
margin: 0 auto;
text-align: center;
font-size: clamp(24px,3.333333333333333vw,50px);
color: #fff;
letter-spacing: 0.12em;
font-family: "Cinzel", serif;
}

.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: #336ea7;
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;
}
.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 .text_box + figure{
padding-top: 0.7em;
}
.content_box .text_box + .img_box{
padding-top: 0.7em;
}
.content_box .flex_ttl + .flex_img{
padding-top: 0.5em;
}
.content_box .flex_img + figure{
padding-top: 0.5em;
}

.content_box figure + h6{
padding-top: 1em;
}
.content_box p + h6{
padding-top: 1em;
}
.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 h6 + .small_txt{
padding-top: 0.4em;
}

.text_box  h4 {
font-size: clamp(16px,1.5vw,18px);
color: #336ea7;
letter-spacing: 0.08em;
line-height: 1.4;
}
.column2 .flex .text_box .flex_ttl {
align-items: center;
gap: 10px 1em;
}
.column2 .flex .text_box .flex_ttl span {
font-size: 80%;
color: #fff;
background: #336ea7;
padding: 0.4em 0.6em;
line-height: 0.9;
}
.text_box  h6 {
font-size:14px;
letter-spacing: 0.08em;
line-height: 1.4;
}
.text_box p {
font-size: 14px;
letter-spacing: 0.06em;
line-height: 1.8;
}
.text_box p.small_txt {
font-size: 12px;
letter-spacing: 0.06em;
line-height: 1.8;
}

.text_box p + h4{
padding-top: 0.8em;
}
.column1 {
}

.column1 figure {
}

.column2 {

}
.column2 .flex{
flex-wrap: wrap;
gap: 60px 5%;
}
.column2.sec01 .flex{
gap: 10px 2%;
}
.column2 .flex li{
width: 47.5%;
}
.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 .text_box{
width: 47.5%;
}
.column2.sec01 .flex .text_box{
width: 65%;
}

.column2 ul.flex li .text_box{
width: 100%;
}

.column2.sec01 .flex .text_box figure{
width: 73.68421053%;
}

.column2 .flex .img_box{
width: 47.5%;
}
.column2.sec01 .flex .img_box.pc{
width: 30%;
}
.column2 .flex li .img_box{
width: 100%;
}

.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%;
}
.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%;
}

.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 .text_box{
width: 47.42268041%;
}

.sec05 .flex{
gap: 20px 2.5%;
}
.sec05 .flex .img_box{
width: 25%;
}
.sec05 > .text_box{
margin-bottom: 0.75em;
}
.sec05 .flex ul.flex{
width: 35%;
flex-direction: column;
gap: 1em 0;
}

.sec05 .flex ul.flex li > .flex{
align-items: flex-start;
}
.sec05 .flex ul.flex li .flex .text_box{
width: 69.04761905%;
}
.sec05 .flex ul.flex li .flex figure{
width: 28.57142857%;
padding-top: 0;
}
.sec05 .flex ul.flex li .flex .img_box{
width: 28.57142857%;
}
.sec05 .flex ul.flex li .flex .img_box figure{
width: 100%;
}

.sec05 .flex ul.flex li .flex .text_box > .flex{
    align-items: center;
}
.sec05 .flex ul.flex li > .text_box > .flex{
    align-items: center;
}


.sec05 .flex ul.flex li .flex .text_box > .flex + p{
padding-top: 0.5em;
}
.sec05 .flex ul.flex li .text_box .num{
display: block;
position: relative;
color: #fff;
padding: 0.58em 0.8em;
line-height: 1;
z-index: 1;
}
.sec05 .flex ul.flex li .text_box .num::before{
content: "";
width: 2em;
height: 2em;
background: #a40000;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
z-index: -1;
}
.sec05 .flex ul.flex li .text_box h4{
    font-size: clamp(14px, 1.5vw, 16px);
}
.sec05 .flex ul.flex li .text_box h4 span{
color: #000;
}
.sec05 .flex ul.flex li .thumbturn{
padding-top: 0.5em;
}
.sec05 .flex ul.flex li .thumbturn h4{
text-align: center;
font-size: clamp(14px, 1.34vw, 16px);
padding: 0.2em 0;
color: #fff;
background: #336ea7;
}

.sec06{
display: flex;
flex-wrap: wrap;
gap: 20px 2.417962%;
background: #fff;
border: 1px solid #e1e1e1;
box-sizing: border-box;
padding: 1.25em;
}
.sec06 > div{
width: 25.90673575%;
}
.sec06 .img_box{
width: 71.67530225%;
}
.column1.locker figure + figure{
padding-top: 2em;
}

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

.security_Area{
padding: 80px 0 0;
}
p.txt_narrow {
letter-spacing: 0.04em;
}

[class$="_Area"] {
display: flex;
flex-direction: column;
gap: 60px 0;
}
/*=========================================================================================================
tab
=========================================================================================================*/
@media screen and (min-width: 768px) and (max-width: 1024px) {



}

/*=========================================================================================================
sp
=========================================================================================================*/
@media screen and (max-width: 767px) {
.security_Area {
padding: 40px 0 0;
}
.column2 .flex {
flex-wrap: wrap;
gap: 30px 5%;
}
.column2.sec01 .flex .text_box {
width: 100%;
order: 2;
}
.column2.sec01 .flex .img_box {
width: 100%;
order: 1;
}
.column2.sec01 .flex .text_box figure {
width: 100%;
margin: 0 auto;
padding-top: 1em;
}
.column2.sec01 .flex .text_box .flex_img figure {
width: 70%;
margin: 0 auto;
padding-top: 0;
}
.column2.sec02 .flex {
flex-wrap: wrap;
gap: 10px 5%;
}
.column2.sec02 .flex .img_box {
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 .text_box{
width: 100%;
order: 2;
}
.column2.flex-35-65 .flex figure{
width: 100%;
order: 1;
}
.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;
}

.column3 ul.flex {
gap: 30px 4%;
}
.column3 ul li {
width: 48%;
}
.column3.sec04 ul li {
width: 100%;
}
.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.flex .text_box {
width: 100%;
}

.sec05 .flex {
    gap: 20px 2.5%;
    flex-wrap: wrap;
}
.sec05 .flex .img_box {
    width: 80%;
    margin: 0 auto;
}
.sec05 .flex ul.flex {
    width: 100%;
}
.sec05 .flex ul.flex li .flex .text_box {
    width: 68%;
}
.sec06 > div {
    width: 100%;
}
.sec06 > div figure{
    width: 70%;
    margin: 0 auto;
}
.sec06 > div .txt_note{
    padding: 0 15%;
}
.sec06 .img_box {
    width: 100%;
}
.sec06 .img_box figure{
    width: 100%;
}
.column1.locker figure + figure{
padding-top: 1em;
}
.text_box h4 {
letter-spacing: 0.02em;
}
.contents > section:not(:first-of-type){
margin: 60px 0 0;
}

[class$="_Area"] {
gap: 30px 0;
}

}
