@charset "utf-8";

.flex{ display: flex; justify-content: space-between; flex-wrap: wrap;}
.btn__more {  display: block; margin: 0 auto; border: 1px solid #424242; position: relative; transition: 0.2s linear; margin-top: 70px; width: 224px; height: 52px; margin: 114px 0px 0px;}
.btn__more::after { content: ""; position: absolute; display: inline-block; width: 0;height: 0; border-top: 8px solid transparent; border-left: 14px solid #000000; border-bottom: 8px solid transparent; bottom: 7px; right: 7px;}
.btn__more span { font-size: 1.6rem; line-height: 1; position: absolute; top: 8px; left: 10px;}
.btn__more:hover{ background: #000000; color: #ffffff;}
.btn__more:hover::after{ border-left-color: #ffffff;}


.contents{  padding: 100px 0 90px; background: #f5f5f5;}
.customize .titBox{ padding-bottom: 30px;}
.customize .subtitBox{ padding: 100px 0 95px;}

h2{ font-size: 5rem; font-weight: bold; max-width: 1200px; width: calc(100% - 50px); line-height: 1.5; margin:0 auto;}
h2 span{ display: block; font-size: clamp(16px,1.5vw,1.8rem); }
h3{ font-size: 3.6rem; line-height: 1.5;}
.bigTxt{ font-size: 3rem; text-align: center;}
h4.bigTxt{ margin-bottom: 60px;}
.caption{ font-size: 1.2rem; display: block; margin-top: 10px;}

.imgBox{ padding: 0 0 45px;}
.imgBox figure{ margin: 0 auto; text-align: center;}

.concept{ margin: 0 0 150px 0;}
.concept .copy .imgBox{ margin-bottom: 100px;}
.concept .copy{ font-size: 1.8rem; line-height: 1.8;  padding: 85px 0 90px; text-align: center;}
.concept .copy h3{ font-weight: bold; margin-bottom: 50px;}
.concept figure{ text-align: center;} 
.concept .support .bigTxt{ font-size: 3rem; font-weight: bold; text-align: center; width: 100%; margin-bottom: 70px;}
.concept .support .txt{ width: 58.33%;}
.concept .support figure{ width: 33.33%;}

.box{ padding: 55px 0; border-top: 1px solid #000;}
.box .subtit{ font-size: 2.4rem; font-weight: bold; margin-bottom: 30px;}
.box .step{ width: 100%; font-weight: bold;}

.flow .box .txtBox{ width: 59%;}
.flow .box figure{ width: 20.75%; }

.flow_chart{ margin: 90px auto 0;}
.flow_chart li:not(:first-of-type){ margin: 70px auto 0;}
.flow_chart li{ position: relative; max-width: 928px;  background: #f8f7f3; border: 1px solid #000; padding: 25px;}
.flow_chart li:not(:last-of-type)::after{ position: absolute; content: ""; display: block; background: url(../imgs/customize/arrow.png); width: 33px; height: 59px; bottom: -66px; left: 50%; transform: translateX(-50%);}
.flow_chart .txt{ margin-top: 20px;}
.flow_chart .arrow_txt{ position: absolute; font-size: 1.8rem; font-weight: bold; bottom: -60px; left: 54.3%; bottom: -3em;}

.faq{ margin: 180px auto 0;}
.faq .box{ padding: 30px 0; }
.faq .box .subtit{ margin-bottom: 25px;}
.faq .box .txt:not(:last-of-type) { margin-bottom: 40px;}


@media (max-width: 1400px){
    .contents{ padding:100px 0 95px;}
    .customize.titBox{ padding-bottom: 30px;}
    h2{ font-size: 4.5rem; }
}

@media (max-width: 1200px){
    .flow_chart .arrow_txt{ left: 52px;}
    .flow_chart li:not(:last-of-type)::after{ left: 18px;}

}

@media (max-width: 768px){

    .btn__more { width: 170px; height: 40px; margin: 70px 0 0 0;}
    .btn__more span { font-size: 1.3rem; left: 5px;}
    .btn__more::after { border-top: 6px solid transparent; border-left: 10px solid #000000; border-bottom: 6px solid transparent;}


    .contents{  padding: 70px 0 65px;}

    .customize .titBox{ padding-bottom: 20px;}
    h2{ font-size: clamp( 2rem , 6.5vw, 5rem); margin-bottom: 0;}
    h3{ font-size: min(4.5vw, 3.6rem); }
    .bigTxt{ font-size: clamp( 20px,3.9vw, 3rem);}
    h4.bigTxt{ margin-bottom: 20px;}

    .copy{ font-size: min(4VW , 3rem); padding: 40px 0;}
    
    .concept { margin: 0 0 55px 0;}
    .concept .copy{ font-size: 1.8rem; line-height: 1.8;  padding: 35px 0 40px; text-align: center;}
    .concept .copy h3 { margin-bottom: 20px;}
    .concept .support .bigTxt{ font-size: clamp( 20px,3.9vw, 3rem); font-weight: bold; text-align: center; width: 100%; margin-bottom: 15px;}
    .concept .support .txt,.concept .support figure{ width: 100%;}
    .concept .support .txt{ margin-bottom: 15px;}

    .box{ padding: 30px 0;}
    .box .subtit{ margin-bottom: 15px; font-size: clamp( 1.7rem,3.38vw, 2.6rem)}

    .flow .box .txtBox{ width: 100%;}
    .flow .box figure{ width: 100%; margin-top: 15px; text-align: center;}
    .flow_chart{ margin: 40px auto 0;}
    .flow_chart .arrow_txt{ left: 55.6%; font-size: 1.2rem; line-height: 1.2em; bottom: -4em;}
    .flow_chart li:not(:first-of-type){ margin: 70px auto 0; }
    .flow_chart li:not(:last-of-type)::after{ left: 50%; transform: translateX(-50%); }
    .flow_chart .caption { display: inline;}

    .faq {
        margin: 50px auto 0;
      }

}
