@charset "utf-8";


*, *::before, *::after {
  box-sizing: border-box;
}

/*cssのリセット*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,
blockquote,pre,abbr,address,cite,code,del,dfn,em,img,
ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,
ol,ul,li,fieldset,form,label,legend,table,caption,
tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,
figcaption,figure,footer,header,hgroup,menu,nav,section,
summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    border: 0;
    outline: 0;
    background: transparent;
}
html{
	margin-top: 0!important;
}
 
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
     display: block;
}
 
ul,ol {
    list-style: none;
}
 
blockquote,
q {
    quotes: none;
}
 
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}
 
a{
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
    transition: all .3s;
}

ins {
    text-decoration: none;
    color: #000;
    background-color: #ff9;
}
 
mark {
    font-weight: bold;
    font-style: italic;
    color: #000;
    background-color: #ff9;
}
 

abbr[title],
dfn[title] {
    cursor: help;
    border-bottom: 1px dotted;
}
 
table {
    border-spacing: 0;
    border-collapse: collapse;
}
 
hr {
    display: block;
    height: 1px;
    margin: 1em 0;
    padding: 0;
    border: 0;
    border-top: 1px solid #ccc;
}
input[type="submit"],input[type="text"],input[type="email"],input[type="tel"],input[type="button"], input[type="reset"] {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
  }
  button{
    outline: none;
    padding: 0;
    appearance: none;
    background-color: transparent;
    border: none;

  }
html {
    font-size: 62.5%;
}
 
body.lpbody {
    font-family: 'Noto Sans JP', sans-serif !important;
    font-weight: 400;
    margin: 0;
    padding: 0;
    font-size:1.6rem;/* 16px*/
    color: #000000;
    line-height: 1.5;
	max-width: none !important;
}
img{
    width: 100%;
    image-rendering: -webkit-optimize-contrast;
    vertical-align: bottom;
}

.inner{
    width: 95%;
    max-width:1135px;
    margin: 0 auto;
}
article{
    overflow: hidden;
}

/*-----------------------
         header
-------------------------*/
header {
    width: 100%;
    height: 100px;
    position: fixed;
    top: 0;
    z-index: 999999;
    background-color: #fff;
}


.header_inner{
    width: 95%;
    margin: 0 auto;
    max-width: 1500px;
    height: 100%;
}
@media screen and (max-width: 800px) {

	header {
	    height: 64px;
	}
}



.header-fx {
    display: flex;
    align-items: center;
    height: 100%;
    justify-content: space-between;
}
.header_logo {
    width: 30%;
    max-width: 340px;
}
.header_logo h1 {
    line-height: 1;
}

.header_nav {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    column-gap: 30px;
    align-items: center;
}

.header_nav ul{
    display: flex;
    align-items: center;
    column-gap: 20px;
}
.header_nav ul li a{
    font-size: clamp(16px, 1.389vw, 18px);
    color: #000000;
    line-height: 1.44;
}


.sp_menu,.header_logo_sp{
    display: none;
}
@media screen and (max-width: 800px) {
    .header_logo {
        width:65%;
        max-width: 340px;
    }
    
	.g-menu .f_btn{
		margin: 0 auto;
	}
  
    .sp_menu,.header_logo_sp{
        display: block;
        margin-top: 12px;
        max-width: 171px;
    }
    .header-fx {
        display: none;
    }
    
    .nav-menu {
        position: fixed;
        overflow-y: scroll;
        z-index: 99;
        width: 100%;
        top: 0;
        height: 100vh;
        display: none;
        background-color: #000000;
    }
    .g-menu .cta_btn{
		font-size: 16px !important;
        padding: 20px 0 !important;
        margin-top: 60px; 
	}
    .g-menu ul{
        margin-top: 140px;
    }
    .g-menu ul li a{
        display: block;
        font-size: 24px;
        font-weight: 400;
        color: #fff;
        text-align: center;
        line-height: 1.4;
        letter-spacing: .1em;
        margin-bottom: 30px;
    }
    
/* hamburger */
    .toggle {
        position: fixed;
        right: 15px;
        top: 12px;
        width: 36px;
        height: 36px;
        cursor: pointer;
        z-index: 999;
        display: block;
    }

   
        
    .toggle span {
        display: block;
        position: absolute;
        width: 30px;
        border-bottom: solid 4px  #707070;
        -webkit-transition: .35s ease-in-out;
        -o-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
        left: 50%;
        transform: translateX(-50%);
    }

    .toggle span:nth-child(1) {
        top: 9.3px;
    }
    .toggle span:nth-child(2) {
        top: 19px;
    }
    .toggle span:nth-child(3) {
        top: 28px;
    }
   
    .toggle.active span:nth-child(1) {
        top: 10%;
        left: 47%;
        -webkit-transform: rotate(-45deg) translate(-50%,-50%);
        -ms-transform: rotate(-45deg) translate(-50%,-50%);
        transform: rotate(-45deg) translate(-50%,-50%);
        border-bottom: solid 4px  #fff;
    }
    .toggle.active span:nth-child(2),
    .toggle.active span:nth-child(3) {
        top: 69%;
        left: 41%;
        -webkit-transform: rotate(45deg) translate(-50%,-50%);
        -ms-transform: rotate(45deg) translate(-50%,-50%);
        transform: rotate(45deg) translate(-50%,-50%);
        border-bottom: solid 4px  #fff;
    }
}

.sec_ttl h3{
	text-align: center;
	font-size: clamp(30px, 2.25vw, 36px) !important;
    line-height: 1.425 !important;
    font-weight: bold !important;
	    margin: 0 !important;
}
.sec_ttl h3 span{
	font-size: clamp(20px, 1.625vw, 26px);
}
@media screen and (max-width: 768px) {

	.sec_ttl h3{
		font-size: 24px !important;
		line-height: 1.45 !important;
	}
	.sec_ttl h3 span{
		font-size: 20px;
	}

}


/*-----------------------
         top
-------------------------*/

#top{
    margin-top: 100px;
    position: relative;
}
@media screen and (max-width: 800px) {

	#top{
	    margin-top: 64px;
	    position: relative;
	}
	#top img:first-child{
        display: none;
    }
    #top {
        background-image: url('../image/top.jpeg');
        background-size: cover;
        background-position: center;
        object-fit: contain;
        height: 100vh;
        max-height: 570px;
    }
}

.fv_txt{
    width: 100%;
    background-color: rgba(0,0,0,.7);
    position: absolute;
    top: 100px;
    left: 50%;
    transform: translate(-50%,-50%);
    color: #fff;
    text-align: center;
    height: 250px;
}
.fv_txt_inner{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.fv_txt h2{
    font-family: "Noto Serif JP", serif;
    font-size: clamp(30px, 3.93vw, 40px);
    line-height:1.1;
    font-weight: 400;
}
.fv_txt h1{
	line-height: 1;
}
.fv_txt h1 img{
	width: 34%;
	display: block !important;
	max-width: 477px;
	margin: 0 auto;
}
@media screen and (max-width: 850px) {

	.fv_txt{
	    top: 82px;
	    height: 190px;
	}
}


@media screen and (max-width: 768px) {

	.fv_txt{
	    top: 57px;
	    padding: 30px 0;
	    height: 120px;
	}

	.fv_txt h2{
	    font-size: 25px;
	    margin-left: 10px;
	}
	.fv_txt h1 img{
		width: 65%;
		max-width: 477px;
	}

}
/*-----------------------
         sec_link
-------------------------*/
#sec_link{
    padding-top: 60px;
    text-align: center;
}
#sec_link ul{
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 30px;
    margin-bottom: 55px;
}
#sec_link ul li{
    width: 25%;
    max-width: 260px;
    background-color: #EAEAEA;
    border: 2px solid #8B4513;
    border-radius: 5px;
    font-size: clamp(14px, 1.249999vw, 20px);
    line-height: 1.45;
    position: relative;
}
#sec_link ul li::after{
    content: '';
    display: inline-block;
    width: 31%;
    max-width: 60px;
    height: 2px;
    background-color: #707070;
    position: absolute;
    right: -47px;
    top: 50%;
    transform: translate(-50%,-50%);
    transition: all .5s;
}
#sec_link ul li:hover:after{
    right: -55px;

}

#sec_link ul li a{
    display: block;
    color: #000000;
    width: 100%;
    padding: 16px 26px;
    text-align: left;
}

#sec_link h2{
    line-height: 1;
	    margin: 0;
}
#sec_link img{
	width: 36%;
    max-width: 389px;
    min-width: 342px;
}
#sec_link p{
    font-size: clamp(18px, 1.625vw, 26px);
    line-height: 1.42;
}

@media screen and (max-width: 768px) {

	#sec_link{
	    padding-top: 60px;
	}
	#sec_link ul{
	    flex-wrap: wrap;
	    column-gap: 15px;
	    row-gap: 15px;
	    margin-bottom: 32px;
	}
	#sec_link ul li{
	    width: 45%;
	    max-width: 230px;
	}
	#sec_link ul li a{
	    padding: 10px 10px;
	    text-align: left;
	}
	
	#sec_link h2{
	    font-size:clamp(65px, 4.999999vw, 80px);
	}
	#sec_link p{
	    font-size: 18px;
	}
	#sec_link p:last-child{
	    font-size: 16px;
	}
	#sec_link ul li::after{
	    width: 31%;
        max-width: 30px;
        height: 1px;
        right: -23px;
	}
	#sec_link ul li:hover:after{
	    right: -30px;
	}
}



/*-----------------------
         service
-------------------------*/

#service{
    padding-top: 80px;
}

/* service_bg01 */

.service_bg01{
    background-image: url('../image/service_bg01.jpg');
    background-size: cover;
    text-align: center;
    padding: 88px 0;
}
.service_bg01 p{
    margin-top: 5px;
    line-height: 1.42;
    font-size: clamp(18px, 1.625vw, 26px);
}
.service_bg01 .sec_ttl h3{
    font-family: "Noto Serif JP", serif;
	font-size: clamp(30px, 2.499999vw, 40px) !important;
    margin: 0 !important;
}
.underline{
    background: linear-gradient(transparent 70%, #F5FF00 70%);
}
.sp_br{
    display: none;
}
@media screen and (max-width: 768px) {

    .sp_br{
        display: block;
    }
    .pc_br{
        display: none;
    }
    #service{
        padding-top: 32px;
    }
    
    /* service_bg01 */
    
    .service_bg01{
        padding: 20px 0 30px;
    }
    .service_bg01 p{
        margin-top: 20px;
        font-size: 20px;
    }
    .service_bg01 .sec_ttl h3{
        font-size: clamp(30px, 2.499999vw, 40px);
    }
}



/* service_bg02 */

.service_bg02{
    background-image: url('../image/service_bg02.jpg');
    background-size: cover;
    text-align: center;
    padding: 74px 0 126px;
}

.service_list{
    display: flex;
    justify-content: space-between;
    column-gap: 15px;
    margin-top: 40px;

}
.service_list li{
    width: 33%;
    max-width: 358px;
    text-align: center;
}

.service_list01 .service_col{
    border: 4px solid #523825;
    border-radius: 10px;
    background-color: #fff;
    height: 395px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding-top: 34px;
    margin-bottom: 40px;
}
.service_list01 li:nth-of-type(1) .service_col img{
	max-width: 195px;
	margin-top: 30px;
}
.service_list01 li:nth-of-type(2) .service_col img{
	margin-top: 5px;
	max-width: 236px;
}
.service_list01 li:nth-of-type(3) .service_col img{
	max-width: 212px;
	margin-top: auto;
}
.service_list01 li .service_col p{
	font-size: clamp(14px, 1.249999vw, 20px);
	font-weight: 500;
}
.service_list01 li .service_col h4{
	font-size: clamp(18px, 1.625vw, 26px);
	font-weight: bold;
	color: #BE4C4B;
	    margin: 0;
}
.service_list01 li .service_col h4 .txtbig{
	font-size: clamp(30px, 2.25vw, 36px);
}


.service_list02 {
    border: 4px solid #523825;
    border-radius: 10px;
    background-color: #fff;
    height: 395px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding-top: 25px;
    margin-bottom: 40px;
}
.service_list02 img{
	width: 90%;
	margin-top: 40px;
}
.service_list li:last-child .service_list02 img{
	margin-top: 10px;
}
.service_list02 p{
	font-size: clamp(14px, 1.249999vw, 20px);
	font-weight: 500;
	line-height: 1.5;
}
.service_list02 h5{
	font-weight: bold !important;
	margin: 0 !important;
	margin-top: 7px!important;
	line-height: 1.45 !important;
	font-size: clamp(18px, 1.625vw, 25px) !important;
	color: #BE4C4B;
}

@media screen and (max-width: 768px) {

    /* service_bg02 */

    .service_bg02{
        padding: 27px 0 25px;
    }

    .service_list{
        margin-top: 48px;
        flex-direction: column;
        align-items: center;
        row-gap: 26px;
    }
    .service_list li{
        width: 95%;
        max-width: 385px;
    }

    .service_list01 li .service_col{
        height: 344px;
        padding-top: 29px;
		margin-bottom: 35px;
    }
    .service_list01 li:nth-of-type(1) .service_col img{
        max-width: 169px;
        margin-top: 19px;
    }
    .service_list01 li:nth-of-type(2) .service_colimg{
        margin-top: 3px;
        max-width: 250px;
    }
    .service_list01 li:nth-of-type(3) .service_col img{
        max-width: 183px;
    }
    .service_list01 li .service_col p{
        margin-bottom: 6px;
        font-size: clamp(18px, 1.249999vw, 20px);
		        line-height: 1 !important; 
    }
    .service_list01 li .service_col h4{
        font-size: 26px;
    }
    .service_list01 li .service_col h4 .txtbig{
        font-size: 36px;
    }


    .service_list02 p{
        font-size: clamp(18px, 1.249999vw, 20px);
        margin-top: 10px;
    }
    .service_list02 h5{
        font-size: clamp(20px, 1.499999vw, 24px) !important;
        margin-top: 0;
    }
	.service_list02 img {
	    max-width: 260px;
	    margin-top: 30px;
	}
	.service_list li:last-child .service_list02 img{
		margin-top: 30px;
	}
}

/* service_bg03 */

.service_bg03{
    background-image: url('../image/service_bg03.jpg');
    background-size: cover;
    padding: 101px 0 108px;
	color: #fff;
}
.service_bg03 ul{
    margin-top: 55px;
}
.service_bg03 ul li{
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 30px;
    margin-bottom: 25px;
}
.service_bg03 ul li:last-child{
    margin-bottom: 0;
}
.service_bg03 ul li:nth-child(even){
    flex-direction: row-reverse;
}
.service03_img{
    max-width: 780px;
    width: 49%;
}
.service03_txt{
    width: 50%;
    max-width: 788px;
}
.service03_txt h4{
    font-family: "Noto Serif JP", system-ui;
    font-size: clamp(25px, 2.25vw, 36px) !important;!i;!;
    font-weight: bold !important;!i;!I;!;
    padding-bottom: 13px;
    margin-bottom: 22px !important;!i;!;
    line-height: 1.41 !important;!i;!;
    border-bottom: 2px solid #F5A1A0;
}
.service03_txt p{
    font-size: clamp(16px, 1.249999vw, 20px);
    line-height: 2;
    max-width: 552px;
    width: 98%;
}
.service_bg03 ul li:nth-child(even) .service03_txt span{
    width: 97%;
    max-width: 552px;
    margin-left: auto;
    display: block;
}
.service_bg03 ul li:nth-child(even) .service03_txt p{
    width: 98%;
    max-width: 552px;
    margin-left: auto;
}
@media screen and (max-width: 768px) {


    /* service_bg03 */
   
    .service_bg03{
        padding: 37px 0 48px;
    }
    .service_bg03 ul{
        margin-top: 16px;
    }
    .service_bg03 ul li{
        flex-direction: column;
        column-gap: 30px;
        margin-bottom: 40px;
    }
    .service_bg03 ul li:last-child{
        margin-bottom: 0;
    }
    .service_bg03 ul li:nth-child(even){
        flex-direction: column;
    }
    .service03_img{
        max-width: 550px;
        width: 100%;
    }
    .service03_txt{
        width: 100%;
        max-width: 550px;
    }
    .service03_txt h4{
        width: 95%;
        margin-left: auto !important;
        margin-top: 15px !important;
        font-size: 28px !important;
        padding-bottom: 7px;
        margin-bottom: 15px !important;
    }
    .service03_txt p{
        margin: 0 auto;
        line-height: 2.22;
        max-width: none;
        font-size: 18px;
        width: 87%;
    }
    .service_bg03 ul li:nth-child(even) .service03_txt span{
        max-width: none;
        margin-left: auto;
        display: block;
    }
    .service_bg03 ul li:nth-child(even) .service03_txt p{
        max-width: none;
        margin: 0 auto;
        width: 87%;
    }

}


.cta_btn{
    display: block;
    text-align: center;
    color: #fff !important;
    width: 66%;
    max-width: 749px !important;
    font-size: clamp(20px, 1.875vw, 30px) !important;
    font-weight: bold !important;
    padding: 1.094% 0 !important;
    background-color: #BE4C4B;
    border-radius: 40px;
    margin: 0 auto;
}
.service_bg03 .cta_btn{
    margin-top: 66px;
}


@media screen and (max-width: 768px) {

    .cta_btn{
        width: 90%;
        max-width: 400px !important;
        padding: 10px 0 !important;
    }
    .service_bg03 .cta_btn{
        margin-top: 54px;
        padding: 28px 0 !important;
        font-size: 16px !important;
    }
    


}


/*-----------------------
        voice
-------------------------*/
#voice{
    padding-top: 106px;
    text-align: center;
    position: relative;
}
.voice_bg01{
    position: absolute;
    top: 35%;
    left: 22%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 55%;
    max-width: 871px;
}
#voice p{
    font-size: clamp(16px, 1.249999vw, 20px);
    line-height: 2;
    margin-top: 22px;
}

@media screen and (max-width: 768px) {

    #voice{
        padding-top: 25px;
    }
    .voice_bg01{
        top: 22%;
        left: 24%;
        z-index: -1;
        width: 65%;
        max-width: 500px;
    }
    #voice p{
        line-height: 2.22;
        margin-top: 16px;
        font-size: 18px;
    }
    



}


.voice_list{
    display: flex;
    justify-content: space-between;
    column-gap: 15px;
    align-items: center;
    margin-top: 37px;
}
.voice_list li{
    width: 33%;
    max-width: 358px;
    text-align: center;
    padding: 19px 17px 35px;
    border-radius: 10px;
    border: 1px solid #A7A7A7;
    background-color: #fff;
}
.voice_img{
    height: 230px;
    margin: 0 auto;
    position: relative;
}
.voice_img span{
    position: absolute;
    top: 15px;
    left: 17px;
    color: #fff;
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    background-color: #523825;
    padding: 5px 12px 6.5px;
}
.voice_img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.voice_txt h4{
	margin: 0 !important;
    margin-top: 12px !important;
    font-size: clamp(16px, 1.249999vw, 20px) !important;
    font-weight: 500 !important;
    line-height: 2 !important;
}
.voice_txt .cta_btn{
    max-width: 190px !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    padding: 2.5% 0 !important;
    margin-top: 25px;
}

@media screen and (max-width: 768px) {

    .voice_list{
        flex-direction: column;
        align-items: center;
        row-gap: 15px;
        column-gap: 15px;
        margin-top: 33px;
    }
    .voice_list li{
        width: 95%;
        max-width: 358px;
        padding: 19px 17px 32px;
    }
    .voice_img{
        height: 230px;
    }
    .voice_img span{
        top: 15px;
        left: 17px;
        font-size: 14px;
        padding: 4px 12px 4.5px;
    }
    .voice_txt h4{
        margin-top: 12px !important;
        font-size: 20px !important;
        line-height: 2 !important;
    }

	.voice_txt .cta_btn{
	    max-width: 174px !important;
	    font-size: 14px !important;
	    padding: 8px 0 !important;
	    margin-top: 20px;
	}
}


/*-----------------------
          flow
-------------------------*/

#flow{
    padding-top: 80px;
    text-align: center;
    position: relative;
}
.voice_bg02{
    position: absolute;
    top: 54%;
    left: 85%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 42%;
    max-width: 664px;
}
.flow_list{
    display: flex;
    justify-content: space-between;
    column-gap: 15px;
    align-items: center;
    margin-top: 25px;
}
.flow_list li{
    width: 16%;
    max-width: 164px;
    height: 347px;
    text-align: center;
    padding: 13px 5px 14px;
    background-color: #DCD7D3;
}
.step{
    font-family: "Nanum Brush Script", system-ui;
    font-size: clamp(18px, 1.499999vw, 24px);
    line-height: 1;
    color: #BE4C4B;
}
.step span{
    font-size: clamp(40px, 3.75vw, 60px);
    line-height: .5;
}
.flow_list li img{
    max-width: 131px;
}
.flow_list li h5{
    font-size: 18px;
    font-weight: bold;
	margin: 0;
    margin-top: 12px;
}
.flow_list li p{
    font-size: 14px;
    text-align: left;
    line-height: 1.42;
    margin-top: 5px;
}


@media screen and (max-width: 990px) {

    #flow{
        padding-top: 36px;
    }
    .voice_bg02{
        display: none;
    }
    .flow_list{
		max-width: 500px;
		margin: 0 auto;
		flex-wrap: wrap;
		column-gap: 27px;
		row-gap: 29px;
		align-items: center;
		margin-top: 20px;
		justify-content: center;
		}
    .flow_list li{
        width: 32%;
        max-width: 164px;
        min-width: 151px;
        height: 347px;
        padding: 13px 5px 14px;
    }
    .step{
        font-size: 24px;
    }
    .step span{
        font-size: 60px;
    }
    .flow_list li img{
        max-width: 120px;
    }
    .flow_list li h5{
        font-size: 16px;
        font-weight: bold;
        margin-top: 11px;
    }
    .flow_list li p{
        font-size: 12px;
        text-align: left;
        line-height: 1.42;
        margin-top: 0;
    }
    


}


/*-----------------------
        aftercare
-------------------------*/

#aftercare{
    padding-top: 107px;
    text-align: center;
    position: relative;
}
.read{
    font-size: clamp(16px, 1.249999vw, 20px);
    line-height: 2;
    margin-top: 22px;
}
.voice_bg03{
    position: absolute;
    top: 36%;
    left: 3%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 26%;
    max-width: 415px;
}
.aftercare_list{
    display: flex;
    justify-content: space-between;
    column-gap: 15px;
    margin-top: 22px;
}
.aftercare_list li{
    width: 33%;
    max-width: 358px;
}
.aftercare_list li h4{
    font-size: clamp(16px, 1.249999vw, 20px);
    line-height: 1.25;
    font-weight: bold;
    margin-top: 18px;
    color: #523825;
}
.aftercare_list li p{
    color: #000000;
    font-size: 16px;
    line-height: 1.875;
    margin-top: 12px;
    text-align: left;
}

@media screen and (max-width: 768px) {

    #aftercare{
        padding-top: 45px;
    }
	#aftercare .sec_ttl h3{
        font-size: 24px;
    }
    .read{
        font-size: 20px;
        line-height: 2;
        margin-top: 0;
    }
    .voice_bg03{
        display: none;
    }
    .aftercare_list{
        flex-direction: column;
        align-items: center;
        row-gap: 34px;
        margin-top: 11px;
    }
    .aftercare_list li{
        width: 95%;
        max-width: 358px;
    }
    .aftercare_list li h4{
        font-size: 20px;
        margin-top: 11px;
    }
    .aftercare_list li p{
        line-height: 1.875;
        font-size: 16px;
        margin-top: 11px;
    }

}



/*-----------------------
          faq
-------------------------*/

#faq {
    background-image: url(../image/faq_bg.jpg);
    background-size: cover;
    padding: 78px 0 76px;
    margin-top: 110px;
}
#faq .sec_ttl{
	color: #fff;
}
.faq_area{
	background-color: #fff;
	border-radius: 20px;
	padding: 50px 40px 30px;
    margin-top: 40px;
}
.accordion-list{
	border-bottom: 1px solid #B5B5B5;
	padding-right: 30px;
	padding-bottom: 15px;
	margin-bottom: 20px;
}
.accordion-list:last-child{
    margin-bottom: 0;
}
  
.accordion-title {
    cursor: pointer;
    font-size: clamp(16px, 1.249999vw, 20px);
    position: relative;
    display: flex;
    align-items: center;
    column-gap: 10px;
}

@media screen and (max-width: 768px) {

    #faq {
        background-position: center;
        padding: 50px 0 40px;
        margin-top: 52px;
    }
    .faq_area{
        border-radius: 20px;
        padding: 25px 16px 30px;
        margin-top: 23px;
    }
    .accordion-list{
        padding-bottom: 15px;
        margin-bottom: 20px;
    }
   
    .accordion-title {
        font-size: clamp(16px, 1.249999vw, 20px);
        column-gap: 10px;
    }
    

}


  
.q_icon,.a_icon{
    font-family: "Nanum Brush Script", system-ui;
    background-color: #523825;
    color:#fff;
    font-size: clamp(30px, 3.473vw, 40px);
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 45px;
    height: 45px;
    border-radius: 100%;
    flex-shrink: 0;
}
.a_icon{
	background-color: #BE4C4B;
	color: #fff;
    padding-top: 2px;
}


.accordion-text {
    display: none;
    padding: 11px 40px 3px;
}
.accordion-text_fx{
	display: flex;
	align-items: flex-start;
	column-gap: 10px;
}
.accordion-text_fx img{
	max-width: 350px;
	margin-bottom: 10px;
}
.accordion-text p{
	font-size: clamp(16px, 1.249999vw, 20px);
}
.accordion-title {
    position: relative;
}
.accordion-title::after {
    border-right: solid 2px #707070;
    border-top: solid 2px #707070;
    content: "";
    display: block;
    height: 10px;
    position: absolute;
    right: 0;
    top: 38%;
    transform: rotate(135deg);
    transition: transform .3s ease-in-out, top .3s ease-in-out;
    width: 10px;
}
  .accordion-title.selected::after {
    top: 45%;
    transform: rotate(-45deg);
}

@media screen and (max-width: 768px) {

    .question-item-contents {
        max-width: 550px;
        margin: 0 auto;
    }

    .q_icon,.a_icon{
        font-size: 25px;
        width: 35px;
        height: 35px;
    }
    
    .accordion-text {
        display: none;
        padding: 11px 0 3px 10px;
    }
    .accordion-text_fx{
        display: flex;
        column-gap: 10px;
    }
	
    .accordion-text p{
        font-size: clamp(16px, 1.249999vw, 20px);
    }

    .accordion-title::after {
        height: 10px;
        top: 38%;
        right: -25px;
        width: 10px;
    }
    .accordion-title.selected::after {
        top: 45%;
        transform: rotate(-45deg);
    }
}



/*-----------------------
        comparison
-------------------------*/

#comparison{
    padding-top: 118px;
    padding-bottom: 16.25%;
    position: relative;
	    background-image: url(../image/comparison_bg.jpg);
    background-size: cover;
}

#comparison .voice_bg01{
    position: absolute;
    top: 7%;
    left: 22%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 55%;
    max-width: 871px;
}
.comparison_bg{
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.table_area table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  border-collapse: separate;
  margin-top: 35px;
  border-radius: 20px;
  border-spacing: 0;
  border: none;
  border-left: 3px solid #707070;
  margin-bottom: 47px;
  background-color: #fff;
}

@media screen and (max-width: 768px) {

    
    #comparison{
        padding-top: 60px;
        padding-bottom: 60px;
    }

    #comparison .voice_bg01{
        top: 7%;
        left: 22%;
        width: 55%;
        max-width: 871px;
    }
    .comparison_bg{
        position: absolute;
        width: 100%;
        bottom: 0;
        left: 0;
        z-index: -1;
    }
    .table_area table {
        width: max-content;
        margin-top: 20px;
        margin-bottom: 0;
    }

    .table_area {
        overflow-x: auto;
        display: block;
    }

    .table_area table th,
    .table_area table td {
        white-space: nowrap;
    }
	.comparison .cta_btn{
		margin-top: 35px;
		font-size: 16px !important;
        padding: 28px 0 !important;
	}
}


.table_area table tr>*{
    padding: 2px 10px;
    border: none;
    border-right: 3px solid #707070;
    border-bottom: 1px solid #707070;
}
.table_area table tr:first-child th{
   border-top: 3px solid #707070;
}
.table_area table tr th:first-child{
    border-right: none;
}
.table_area table tr:last-child th,
.table_area table tr:last-child td:not(.main)
{
    border-bottom: 3px solid #707070 ;
}
.table_area table tr:first-child>*:first-child{
    border-radius: 20px 0 0 0;
}
.table_area table tr:first-child>*:last-child{
    border-radius: 0 20px 0 0;
}
.table_area table tr:last-child>*:first-child{
    border-radius: 0 0 0 20px;
}
.table_area table tr:last-child>*:last-child{
    border-radius: 0 0 20px 0;
}


.table_area table tr:first-child th{
    font-size: 16px;
    font-weight: 500;
    background-color: rgba(221, 214, 214, .3);
    vertical-align: middle;
}
.table_area table tr:first-child th.main{
    font-size: clamp(18px, 1.499999vw, 24px);
	line-height: 1.25;
	border-top: 5px solid #BE4C4B !important;
}
.main{
	background-color: rgba(252, 155, 148, .3) !important;
	border-left: 5px solid #BE4C4B !important;
	border-right: 5px solid #BE4C4B !important;
}
.table_area table tr:last-child td.main{
	border-bottom: 5px solid #BE4C4B !important;

}
.table_area table tr:not(:first-child) th,
.table_area table td{
    font-size: clamp(14px, 0.999999vw, 16px);
    line-height: 2;
    text-align: left;
    padding: 6px 20px;
    font-weight: 400;
}
.table_area table tr:not(:last-child) td{
    line-height: 1.4;
}
.table_area table td.main{
    font-weight: bold;
}
.table_area table tr:last-child td{
	padding-bottom: 30px;
}

@media screen and (max-width: 768px) {


    .table_area table tr:not(:first-child) th,
    .table_area table td{
        font-size: 11px;
    }
    .table_area table tr:first-child th.main{
        font-size: 17px;
    }

}


/*-----------------------
        postarea
-------------------------*/
.postarea{
    padding-top: 100px;
    position: relative;
}
.postarea .voice_bg02{
    position: absolute;
    top: 10%;
    left: 85%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 42%;
    max-width: 664px;
}
.postarea .voice_bg03{
    position: absolute;
    top: 53%;
    left: 3%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 26%;
    max-width: 415px;
}

@media screen and (max-width: 768px) {

    .postarea{
        padding-top: 52px;
    }
    .postarea .voice_bg02{
        top: 13%;
        left: 77%;
        width: 65%;
        max-width: 500px;
    }
    .postarea .voice_bg03{
        top: 53%;
        left: 6%;
        width: 54%;
        max-width: 415px;
    }


}


.postarea ul{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    column-gap: 15px;
    row-gap: 33px;
    margin-top: 30px;
}
.postarea ul:after {
    content: "";
    display: block;
    width: 33%; 
    max-width: 358px;
    height: 0;
}
.postarea ul li{
    width: 31.5%;
    max-width: 358px;
    border-radius: 20px;
    border: 2px solid #BE4C4B;
    padding: 19px 16px 28px;
    background-color: #fff;
	display: flex;
	flex-direction: column;
}
.postarea ul li .wp-block-post-featured-image{
    height: 230px;
}
.postarea ul li .wp-block-post-featured-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.postarea ul li h4 {
    font-size: 20px;
    margin: 0;
    margin-top: 12px;
    line-height: 2;
    font-weight: 400;
	    text-align: left;
}
.postarea ul li .cta_btn {
    width: 100%;
    max-width: 190px !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    padding: 2.5% 0 !important;
    margin-top: auto;
}

@media screen and (max-width: 768px) {

    .postarea ul{
        flex-direction: column;
        align-items: center;
        column-gap: 15px;
        row-gap: 10px;
        margin-top: 30px;
    }
  
    .postarea ul li{
        width: 95%;
    }
    
    .postarea ul li .post_txt h4{
        font-size: 18px;
        line-height: 1.45;
    }
    .postarea ul li .cta_btn {
        font-size: 14px;
        padding: 8px 0;
        margin-top: 40px;
    }
    


}

/*-----------------------
        production
-------------------------*/
.production{
    padding-top: 100px;
    position: relative;
}
.production .voice_bg04{
    position: absolute;
    top: 26%;
    left: 95%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 39%;
    max-width: 605px;
}
.production ul{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    column-gap: 15px;
    row-gap: 33px;
    margin: 0 auto;
    margin-top: 28px;
    max-width: 940px;
}

.production ul a{
    display: block;
    width: 22.6%;
    max-width: 216px;
    border-radius: 50%;
    color: #fff;
    overflow: hidden;
}
     
.production ul a li{
    position: relative;
    padding-top: 100%;
    padding-top: 100%;
    height: 0;
}


@media screen and (max-width: 768px) {

    .production{
        padding-top: 38px;
    }
    .production .voice_bg04{
        top: 26%;
        left: 78%;
        width: 65%;
        max-width: 500px;
    }
    .production ul{
        justify-content: center;
        column-gap: 22px;
        row-gap: 22px;
        margin-top: 45px;
        max-width: 400px;
    }
    
    .production ul a{
        display: block;
        width: 47%;
        max-width: 150px;
    }
         
}
     
.production ul a li .production_txt{
    position: absolute;
    padding: 7px 10px;
    top:50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    margin: 0;
    text-align: center;
    background-color: rgba(190, 76, 75, .7);
}
.production ul a li:last-child{
    background-color: #BE4C4B;
}
.production ul a:last-child .production_txt{
    background-color: transparent;
}
.production ul a li img {
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}
    
.production ul a li .production_txt h4{
    font-size: clamp(16px, 1.249999vw, 20px);
    font-weight: bold;
	    margin: 0;
}

.ggmap {
    position: relative;
    width: 100%;
    padding-top: 25%;
    height: 0;
}

.ggmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 768px) {

    .ggmap {
        position: relative;
        width: 100%;
        padding-top: 99%;
        height: 0;
    }
.production ul a li .production_txt h4{
    font-size: 13px;
}

}


/*-----------------------
         footer
-------------------------*/

.lp_footer {
    padding-top: 46px;
    text-align: center;
}
.lp_footer h3{
    font-size: clamp(30px, 2.25vw, 36px);
    font-weight: 500;
    margin-bottom: 10px;
}
.lp_footer p{
    font-size: 14px;
    font-weight: 500;
    line-height: 2.06;
}
.lp_footer ul{
    display: flex;
    max-width: 705px;
    margin: 0 auto;
    margin-top: 25px;
    margin-bottom: 20px;
    justify-content: space-between;
    column-gap: 6px;
}
.lp_footer ul li a{
    font-size: 16px;
    font-weight: 500;
    color: #000000;
}
.lp_footer .sns{
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 20px;
    margin-top: 25px;
}
.lp_footer .sns img{
    max-width: 42px;
}
.lp_footer .sns img:last-child{
    max-width: 34px;
}
.lp_footer small{
    display: block;
    color: #fff;
    background-color: #523825;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    padding: 12px 0 15px;
}

@media screen and (max-width: 768px) {
	.lp_footer {
	    padding-top:12px;
	}
    .lp_footer ul{
        flex-wrap: wrap;
        justify-content: center;
        column-gap: 15px;
        row-gap: 7px;
        text-align: center;
        margin-top: 33px;
        margin-bottom: 33px;
    }
    .lp_footer ul li a{
        width: 49%;
        font-size: 14px;
    }
	.lp_footer .sns{
		margin-top: 22px;
	}

}

#bread_crumb { width:100%; margin:0 auto; }
#bread_crumb ul { width:1200px; margin:0 auto; height:60px; line-height:60px; padding:0; overflow:hidden; white-space: nowrap; text-overflow: ellipsis; visibility:visible; }
#bread_crumb li { display:inline; font-size:14px; margin:0 10px 0 0; padding:0 20px 0 0; position:relative; }
#bread_crumb li:after {
  font-family:'design_plus';
  content:'\e910';
  font-size:11px;
  color:#000;
  display:block;
  height:13px;
  line-height:13px;
  position:absolute;
  right:0px;
  top: 6px;
}
#bread_crumb li:last-of-type:after { display:none; }
#bread_crumb, #bread_crumb li.last { color:#999; }
#bread_crumb li a {
  color:#000; display:inline-block;
  -webkit-transition: opacity 0.2s ease-in-out; transition: opacity 0.2s ease-in-out;
}
#bread_crumb li a:hover { opacity:0.5; }
#bread_crumb li.category a { display:none; }
#bread_crumb li.category a:first-of-type, #bread_crumb li.category a:only-of-type { display:inline-block; }
#bread_crumb li.home a { position:relative; width:16px; }
#bread_crumb li.home a span {opacity:0;}
#bread_crumb li.home a:before {
  font-family:'design_plus'; content:'\e90c'; font-size:12px; color:#000;
  display:inline-block; top:0px; position:relative;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
@media screen and (max-height:1000px) {
  #bread_crumb ul { height:72px; line-height:72px; }
}

@media screen and (max-width:770px) {
	#bread_crumb {
	  background:#f5f5f5; 
	  width:100%; position:relative; padding:0 20px !important;
	  -webkit-box-sizing:border-box; box-sizing:border-box;
	}
	#bread_crumb ul { height:60px; line-height:60px; }
}

@media screen and (max-width:1024px) {
  #bread_crumb { padding:0 20px !important; }
  #bread_crumb ul { height:45px !important; line-height:45px !important; width:auto !important; }
  #bread_crumb li { font-size:12px; margin-right:5px; padding-right:15px; }
  #bread_crumb li:after { font-size:9px; top:4px; }
}

#pagebtnlink {
  position: fixed;
  bottom: 93px;
  right: 35px;
  font-size: 14px;
  line-height: 1;
  z-index: 99;
}
#pagebtnlink .cta_btn{
	width: 306px !important;
    max-width: 306px;
    margin: 0;
    padding: 17px 0 !important;
    font-size: clamp(20px, 1.875vw, 30px) !important;
}

@media screen and (max-width:768px) {
	#pagebtnlink {
	    bottom: 50px;
	    right: 10px;
	    font-size: 14px;
	}
	#pagebtnlink .cta_btn{
		width: 190px !important;
		padding: 20px 0 !important;
		font-size: 16px !important;
	}
}

#pagetop {
    position: fixed;
    right: 0;
    bottom: 70px;
    z-index: 10;
    -webkit-transform: translate3d(0, 120%, 0);
    transform: translate3d(0, 120%, 0);
    -webkit-transition: -webkit-transform 0.35s;
    transition: transform 0.35s;
}
#pagetop a {
    position: relative;
    display: block;
    height: 60px;
    width: 60px;
    text-decoration: none;
    background: #333;
}
#pagetop span {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: block;
}
#pagetop span:before {
    font-family: 'design_plus';
    color: #fff;
    font-size: 18px;
    display: block;
    position: absolute;
    width: 23px;
    height: 23px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
#pagetop a:before {
/*     content: '\e911';
    top: 15px;
    left: 0; */
	content: '';
    width: 10px;
    height: 10px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    position: absolute;
    transform: rotate(-45deg);
    left: 40%;
    top: 42%;
}