@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
@import url("https://use.typekit.net/kmv1zfw.css");

/* CSS Document */
*{ margin:0; padding:0; box-sizing:border-box; word-break:break-all;}
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; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
ul,ol{ list-style:none;}
html,body {
margin:0 auto;
padding:0;
font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif;
font-size:20px;
text-align:left;
color:#000;
min-width:1100px;
}
@media screen and (max-width:767px){
html,body{ font-size:4vw; min-width:240px; max-width:767px;}
}

/*img*/
img{ border-style:none; vertical-align:bottom; padding:0; line-height:0em; max-width:100%; height:auto;}
figure{margin:0 auto; text-align:center;}

/*youtube*/
.youtube{ position:relative; width:100%; padding-top:56.25% !important;}
.youtube iframe{ position: absolute; top:0; right:0; width:100% !important; height:100% !important;}

/*txt*/
.din{ font-family: "din-2014", sans-serif;}
p{ line-height:1.75em; margin:0 0 1em; padding:0;}
p:last-child{ margin:0;}
strong{ font-weight:bold;}
.bold { font-weight:bold;}
.normal{ font-weight:normal;}
.under_line{ text-decoration:underline;}
.line_through{ text-decoration:line-through;}

.white{ color:#fff;}
.black{ color:#333;}
.gy{ color:#aaa;}
.red{ color:#c83232;}
.blue{ color:#326496;}

.left{ text-align:left;}
.right{ text-align:right;}
.center{ text-align:center;}

/*link*/
a{ color:inherit; text-decoration:none;}
a:hover{}
.opa{ transition: opacity 0.3s;}
.opa:hover{ opacity: 0.7;}



/*ヘッダー*/
header{ overflow: hidden; background: linear-gradient(45deg,  #6dd17c 0%,#f5fde8 100%);}

/*fv*/
#fv{ padding: 40px 40px 200px; margin: 30px; border-radius: 10px; background: url("../images/fv_bg.png") center center no-repeat; background-size: cover; box-shadow:rgba(0, 0, 0, 0.1) 0 0 6px 0; position: relative;}
#fv figure.logo{ text-align: left; width: 120px; margin: 0 0 90px;}
@media screen and (max-width:1300px){
#fv{ background-size: 1240px;}
}
@media screen and (max-width:767px){
#fv{ padding: 5vw 5vw 33.33vw; margin: 3.75vw; border-radius: 1.25vw; background: url("../images/fv_bg_smp.png") center top no-repeat; background-size: cover; box-shadow:rgba(0, 0, 0, 0.1) 0 0 6px 0; position: relative;}
#fv figure.logo{ width: 24vw; margin: 0 0 47.5vw;}
}

#fv #fv_tit{ display: flex; flex-direction: column; align-items: flex-start;}
#fv #fv_tit #fv_tit_top{ display: flex; align-items: center; justify-content: center; font-size: 1.6rem; font-weight: bold; color: #fff; background: linear-gradient(45deg,  #95e321 0%,#4ad352 100%); padding: 0.33em 1em; margin-bottom: 20px;}
#fv #fv_tit h1{ display: flex; flex-direction: column; align-items: flex-start;}
#fv #fv_tit h1 span{ display: flex; align-items: center; justify-content: flex-start; font-size: 2.1rem; background: #fff; padding: 0.5em; margin-top: 8px;}
#fv #fv_tit h1 span small{ font-size: 2rem;}
#fv #fv_tit h1 span strong{ color: #2D8C3C;}
@media screen and (max-width:767px){
#fv #fv_tit #fv_tit_top{ font-size: 1rem; margin-bottom: 1.875vw;}
#fv #fv_tit h1 span{ font-size: 1.3rem; margin-top: 1.25vw;}
#fv #fv_tit h1 span small{ font-size: 1.2rem;}
}

#fv #fv_foot{ position: absolute; left: 0; bottom: 0; width: 100%; padding: 15px 0; z-index: 1;}
#fv #fv_foot:before{ content: ""; position: absolute; left: 0; bottom: 0; z-index: -1; width: 100%; height: calc(100% + 5px); background: rgba(255,255,255,0.6);}
#fv #fv_foot:after{ content: ""; position: absolute; left: 0; bottom: 0; z-index: -1; width: 100%; height: calc(100% + 5px); background: rgba(255,255,255,0.6); filter: blur(5px);}
#fv #fv_foot dl{ display: flex; align-items: center; justify-content: center; width: 980px; margin: auto;}
#fv #fv_foot dl dt{ width: 560px; margin-right: 40px;}
#fv #fv_foot dl dt a{ display: flex; align-items: center; justify-content: center; text-align: center; padding: 0.33em; font-size: 1.5rem; line-height: 1.25em; font-weight: bold; color: #fff; background: linear-gradient(135deg,  #f2e110 0%,#ffa63e 100%); border-radius: 10px; box-shadow:rgba(0, 0, 0, 0.1) 0 0 6px 0; transition: 0.3s;}
#fv #fv_foot dl dt a:hover{ opacity: 0.7;}
#fv #fv_foot dl dd{ width: calc(100% - 600px);}
#fv #fv_foot dl dd p{ font-size: 1.3rem; font-weight: bold; text-align: center; margin-bottom: 0.125em;}
#fv #fv_foot dl dd p strong{ display: block; background: #000; color: #fff; font-size: 1.2rem;}
@media screen and (max-width:767px){
#fv #fv_foot{ padding: 1.875vw 3.75vw;}
#fv #fv_foot dl{ display: block; width: 100%;}
#fv #fv_foot dl dt{ width: 100%; margin: 0 auto 1.875vw;}
#fv #fv_foot dl dt a{ width: 100%; padding: 0.33em; font-size: 1.2rem; border-radius: 1.25vw;}
#fv #fv_foot dl dd{ width: 100%;}
#fv #fv_foot dl dd p{ display: flex; align-items: center; justify-content: space-between; font-size: 0.9rem; margin: 0 auto;}
#fv #fv_foot dl dd p strong{ font-size: 0.95em; padding: 0 0.25em;}
}

/*ca*/
#ca{ margin: 50px auto 80px;}
#ca figure.logo{ width: 240px; margin-bottom: 20px;}
#ca h2{ display: flex; flex-direction: column; align-items: center; text-align: center; margin-bottom: 20px;}
#ca h2 strong{ display: flex; align-items: center; justify-content: center; font-size: 2rem; color: #fff; background: linear-gradient(45deg,  #2fd93c 0%,#88d523 100%); padding: 0.33em 0.25em 0.5em; margin-top: 8px;}
#ca p.lead{ text-align: center; font-size: 1.2rem; font-weight: bold; margin-bottom: 50px;}
@media screen and (max-width:767px){
#ca{ margin: 15% auto 10%;}
#ca figure.logo{ width: 50%; margin-bottom: 5%;}
#ca h2{ margin-bottom: 7.5%;}
#ca h2 strong{ font-size: 1.5rem; margin-top: 1.25vw;}
#ca p.lead{ text-align: center; font-size: 1.2rem; font-weight: bold; margin-bottom: 50px;}
}

#ca .about{ background: #fff; padding: 50px; width: 1100px; margin: auto; border-radius: 10px;}
#ca .about h3{ text-align: center; font-size: 1.6rem; line-height: 1em; color: #2D8C3C; margin-bottom: 40px; position: relative;}
#ca .about h3 strong{ display: inline-block; padding-bottom: 20px; position: relative;}
#ca .about h3 strong:before{ content: ""; width: calc(50% - 8px); height: 1px; position: absolute; left: 0; bottom: -1px; background: #2C8C3C;}
#ca .about h3 strong:after{ content: ""; width: calc(50% - 8px); height: 1px; position: absolute; right: 0; bottom: -1px; background: #2C8C3C;}
#ca .about h3:after{ content: ""; width: 20px; height: 10px; background: url("../images/tit_arrow.png") center center no-repeat; background-size: 100%; position: absolute; left: 0; right: 0; bottom: -10px; margin: auto;}
#ca .about ul{ display: flex; width: calc(100% + 20px); margin-left: -10px;}
#ca .about ul li{ width: calc(33.33% - 20px); margin: 0 10px; background: #F4F4F4; border-radius: 10px; overflow: hidden;}
#ca .about ul li .about_txt{ padding: 20px;}
#ca .about ul li .about_txt h4{ display: flex; align-items: center; justify-content: center; margin-bottom: 1em;}
#ca .about ul li .about_txt h4 strong{ display: flex; align-items: center; justify-content: center; background: #2D8C3C; color: #fff; font-size: 1rem; padding: 0.33em 0.5em;}
#ca .about ul li:first-child .about_txt h4{ letter-spacing: -0.05em;}
#ca .about ul li .about_txt h5{ font-size: 0.8rem; margin-top: 1em;}
#ca .about ul li .about_txt p{ font-size: 0.8rem; text-align: justify;}
@media screen and (max-width:767px){
#ca .about{ padding: 7.5% 3.75% 3.75%; width: 92.5%; border-radius: 1.25vw;}
#ca .about h3{ font-size: 1.33rem; margin-bottom: 7.5%;}
#ca .about h3 strong{ padding-bottom: 3.75vw;}
#ca .about h3 strong:before{ width: calc(50% - 2vw);}
#ca .about h3 strong:after{ width: calc(50% - 2vw);}
#ca .about h3:after{ width: 5vw; height: 2.5vw; bottom: -2.5vw}
#ca .about ul{ display: block; width: 100%; margin: 0;}
#ca .about ul li{ width: 100%; margin: 0 auto 5%; border-radius: 1.25vw;}
#ca .about ul li:last-child{ margin-bottom: 0;}
#ca .about ul li .about_txt{ padding: 5%;}
#ca .about ul li .about_txt h4 strong{ font-size: 1.2rem; padding: 0.5em 0.75em;}
#ca .about ul li:first-child .about_txt h4{ letter-spacing: 0em;}
#ca .about ul li .about_txt h5{ font-size: 1.0rem; margin-top: 1em; margin-bottom: 0.25em;}
#ca .about ul li .about_txt p{ font-size: 1.0rem; line-height: 1.5em;}
}


/*フッター*/
footer{ padding: 60px 0 15px; background: #fff; text-align: center;}
footer figure.logo{ width: 160px; margin-bottom: 40px;}
footer p{ font-size: 0.8rem; line-height: 1em; color: #707070;}
#footer_fixed{ position: fixed; left: 0; bottom: 0; width: 100%; min-width: 1100px; display: flex; align-items: center; justify-content: center; padding: 10px; z-index: 99;}
#footer_fixed:before{ content: ""; position: absolute; left: 0; bottom: 0; z-index: -1; width: 100%; height: calc(100% + 5px); background: rgba(45,140,60,0.75);}
#footer_fixed:after{ content: ""; position: absolute; left: 0; bottom: 0; z-index: -1; width: 100%; height: calc(100% + 5px); background: rgba(45,140,60,0.75);}
#footer_fixed a{ display: flex; align-items: center; justify-content: center; text-align: center; width: 480px; height: 60px; padding: 0.33em; font-size: 1.2rem; line-height: 1.25em; font-weight: bold; color: #fff; background: linear-gradient(135deg,  #f2e110 0%,#ffa63e 100%); border-radius: 10px; box-shadow:rgba(0, 0, 0, 0.1) 0 0 6px 0; transition: 0.3s;}
#footer_fixed a:hover{ opacity: 0.7;}
#pagetop{ position: fixed; right: 20px; bottom: 16px; width: 48px; z-index: 100;}
@media screen and (max-width:767px){
footer{ padding: 10% 0 6.875%;}
footer figure.logo{ width: 33.33%; margin-bottom: 7.5%;}
footer p{ font-size: 0.7rem;}
#footer_fixed{ min-width: 100%; padding: 1.875vw;}
#footer_fixed a{ width: 100%; height: 12.5vw; font-size: 1.2rem; border-radius: 1.25vw;}
#pagetop{ right: 2.5vw; bottom: 20vw; width: 8.75vw;}
}


/*cv*/
.cv{ overflow: hidden; padding: 60px; background: linear-gradient(45deg,  #c8f7cb 0%,#f8ffed 100%); transform: skewY(-1.25deg); position: relative; z-index: 5;}
.cv .maincontent{ transform: skewY(1.25deg);}
.cv figure.btn{ margin-bottom: 30px;}
.cv figure.btn a{ display: flex; align-items: center; justify-content: center; text-align: center; margin: auto; width: 560px; height: 100px; font-size: 1.5rem; line-height: 1.25em; font-weight: bold; color: #fff; background: linear-gradient(135deg,  #f2e110 0%,#ffa63e 100%); border-radius: 10px; box-shadow:rgba(0, 0, 0, 0.1) 0 0 6px 0; transition: 0.3s;}
.cv figure.btn a:hover{ opacity: 0.7;}
.cv .att{ display: flex; align-items: center; justify-content: center; margin: auto;}
.cv .att span{ width: 60px; margin-right: 15px;}
.cv .att p{ font-size: 1rem; line-height: 1em; font-weight: bold;}
.cv .att p strong{ color: #2D8C3C;}
@media screen and (max-width:767px){
.cv{ padding: 10% 5%; transform: skewY(-5deg);}
.cv .maincontent{ transform: skewY(5deg);}
.cv figure.btn{ margin-bottom: 5%;}
.cv figure.btn a{ width: 100%; height: 15vw; font-size: 1.2rem; border-radius: 1.25vw;}
.cv .att span{ width: 17.5%; margin-right: 2.5%;}
.cv .att p{ font-size: 1.05rem; line-height: 1.5em;}
}



/*メイン*/
#content{}
section{ width:100%; margin:0 auto;}
.maincontent{ padding:0; margin:0 auto; width:1100px;}
@media screen and (max-width:767px){
.maincontent{ padding:0; margin:0 auto; width:92.5%;}
}

/*tit*/
h1,h2,h3,h4,h5,h6{ line-height: 1.25em;}



/*reason*/
#reason{ margin-bottom: -20px; padding: 80px 0 80px; background: #F2F2F2; position: relative; z-index: 1;}
#reason figure.logo{ width: 200px; margin: 0 auto 30px;}
#reason h2{ text-align: center; font-size: 2rem; color: #2D8C3C; padding-bottom: 20px; margin-bottom: 30px;}
#reason p.lead{ text-align: center; font-size: 0.8rem;}
@media screen and (max-width:767px){
#reason{ margin-bottom: -5%; padding: 10% 0 20%;}
#reason .maincontent{ width: 87.5%;}
#reason figure.logo{ width: 50vw; margin: 0 auto 7.5%;}
#reason h2{ text-align: center; font-size: 2rem; color: #2D8C3C; padding-bottom: 20px; margin-bottom: 30px;}
#reason p.lead{ text-align: center; font-size: 0.8rem;}
#reason h2{ display: flex; flex-direction: column; align-items: flex-start; text-align: left; padding: 0; margin-bottom: 5%;}
#reason h2 span{ display: flex; align-items: center; justify-content: center; font-size: 1.6rem; color: #fff; background: linear-gradient(45deg,  #2fd93c 0%,#88d523 100%); padding: 0.125em 0.5em 0.25em; margin-top: 1.25vw;}
#reason p.lead{ text-align: justify; font-size: 1.0rem; margin-bottom: 15%;}
}

#reason .reason_list{ width: 900px; margin: auto;}
#reason .reason_list .reason_list_box{ margin-top: 60px; background: #fff; padding: 50px 40px 40px; border-radius: 10px; box-shadow:rgba(0, 0, 0, 0.16) 0 3px 6px 0; position: relative; z-index: 1;}
#reason .reason_list .reason_list_box:before{ content: ""; width: 96px; height: 96px; background: url("../images/reason_ico.png") center center no-repeat; background-size: 100%; position: absolute; left: -40px; top: -30px; z-index: 1;}
#reason .reason_list .reason_list_box .num{ width: 105px; position: absolute; left: 30px; top: 20px; z-index: 3;}
#reason .reason_list .reason_list_box h4{ font-size: 1.6rem; color: #2D8C3C; position: relative; z-index: 5; padding-left: 70px; margin-bottom: 40px;}
#reason .reason_list .reason_list_box dl{ display: flex;}
#reason .reason_list .reason_list_box dl dt{ width: 410px; margin-right: 50px;}
#reason .reason_list .reason_list_box dl dd{ width: calc(100% - 460px);}
#reason .reason_list .reason_list_box dl dd h5{ font-size: 1rem; color: #2D8C3C; margin-bottom: 0.25em; position: relative;}
#reason .reason_list .reason_list_box dl dd h5:before{ content: ""; width: 16px; height: 16px; background: url("../images/reason_check.png"); background-size: 100%; position: absolute; left: -1.125em; top: 0.25em;}
#reason .reason_list .reason_list_box dl dd p{ font-size: 0.8rem; text-align: justify; margin-bottom: 1.25em;}
#reason .reason_list .reason_list_box dl dd p:last-child{ margin-bottom: 0;}
@media screen and (max-width:767px){
#reason .reason_list{ width: 100%;}
#reason .reason_list .reason_list_box{ margin-top: 15%; padding: 5vw; border-radius: 1.25vw;}
#reason .reason_list .reason_list_box:before{ width: 12.5vw; height: 12.5vw; left: -2.5vw; top: -2.5vw;}
#reason .reason_list .reason_list_box .num{ width: 17.5vw; left: 5vw; top: 3.75vw;}
#reason .reason_list .reason_list_box h4{ font-size: 1.33rem; padding-left: 15vw; margin-bottom: 5%;}
#reason .reason_list .reason_list_box dl{ display: block;}
#reason .reason_list .reason_list_box dl dt{ width: 100%; margin: 0 auto 5%;}
#reason .reason_list .reason_list_box dl dd{ width: 100%; padding-left: 5vw;}
#reason .reason_list .reason_list_box dl dd h5{ font-size: 1rem;}
#reason .reason_list .reason_list_box dl dd h5:before{ width: 3.25vw; height: 3.25vw;}
#reason .reason_list .reason_list_box dl dd p{ font-size: 1rem; line-height: 1.5em;}
}



/*interview*/
#interview{ margin-top: -20px; padding: 80px 0 80px; background: #F2F2F2; position: relative; z-index: 1;}
#interview figure.txt_ico{ position: absolute; left: 40px; top: -140px; width: 146px; z-index: -1;}
#interview h2{ text-align: center; font-size: 2rem; color: #2D8C3C; padding-bottom: 20px; margin-bottom: 40px; position: relative;}
#interview h2:after{ content: ""; width: 260px; height: 8px; background: url("../images/tit_line.png") center center no-repeat; background-size: 100%; position: absolute; left: 0; right: 0; bottom: -8px; margin: auto;}
#interview h3{ text-align: center; font-size: 1.6rem; color: #6C6C6C; margin-bottom: 20px;}
#interview p.lead{ text-align: center; font-size: 0.8rem;}
@media screen and (max-width:767px){
#interview{ margin-top: -5%; padding: 20% 0 10%;}
#interview figure.txt_ico{ left: -1.25vw; top: -5vw; width: 16.66vw;}
#interview h2{ tfont-size: 1.5rem; padding-bottom: 7.5%; margin-bottom: 10%;}
#interview h2:after{ width: 50vw; height: 1.66vw; background: url("../images/tit_line_smp.png") center center no-repeat; background-size: 100%; bottom: 0;}
#interview h3{ font-size: 1.33rem; margin-bottom: 5%;}
#interview p.lead{ font-size: 1.0rem;}
}

#interview ul{ display: flex; flex-wrap: wrap; width: 1040px; margin-top: 70px;}
#interview ul li{ width: calc(50% - 60px); margin: 30px; padding: 1px 40px 40px; background: #fff; border-radius: 5px; box-shadow:rgba(0, 0, 0, 0.16) 0 3px 6px 0; position: relative;}
#interview ul li:nth-child(2n+1){ margin-bottom: 110px;}
#interview ul li:nth-child(2n){ margin-top: 110px;}
#interview ul li figure.img{ margin-top: -70px; width: 140px;}
#interview ul li p.name{ text-align: center; font-size: 0.8rem; font-weight: 500; color: #82BE28; margin: 10px auto 15px;}
#interview ul li h4{ display: flex; align-items: center; justify-content: center; margin: auto;}
#interview ul li h4 span{ font-size: 0.7rem;}
#interview ul li h4 figure{ margin: 0 8px; line-height: 0.5em;}
#interview ul li h4 img{ height: 8px;}
#interview ul li h4 strong{ font-size: 0.9rem; font-weight: bold; color: #2D8C3C;}
#interview ul li p.txt{ border-top: 1px solid #ccc; padding-top: 20px; margin-top: 15px; font-size: 0.8rem; text-align: justify;}
@media screen and (max-width:767px){
#interview ul{ display: block; width: 100%; margin-top: 0;}
#interview ul li{ width: 100%; margin: 25% auto 0; padding: 1px 7.5% 7.5%; border-radius: 1.25vw;}
#interview ul li:nth-child(2n+1){ margin-bottom: 0;}
#interview ul li:nth-child(2n){ margin-top: 25%;}
#interview ul li figure.img{ margin-top: -15vw; width: 30vw;}
#interview ul li p.name{ font-size: 1.0rem; margin: 1.25% auto 3.75%;}
#interview ul li h4 span{ font-size: 1.0rem;}
#interview ul li h4 figure{ margin: 0 2.5vw;}
#interview ul li h4 img{ height: 2.5vw;}
#interview ul li h4 strong{ font-size: 1.2rem;}
#interview ul li p.txt{ padding-top: 5%; margin-top: 5%; font-size: 1.0rem;}
}



/*service*/
#service{ padding: 180px 0 120px; position: relative; z-index: 1;}
#service figure.txt_ico{ position: absolute; right: 40px; top: 0; width: 146px; z-index: -1;}
#service h2{ text-align: center; font-size: 2rem; color: #2D8C3C; padding-bottom: 20px; margin-bottom: 40px; position: relative;}
#service h2:after{ content: ""; width: 260px; height: 8px; background: url("../images/tit_line.png") center center no-repeat; background-size: 100%; position: absolute; left: 0; right: 0; bottom: -8px; margin: auto;}
#service h3{ text-align: center; font-size: 1.6rem; color: #6C6C6C; margin-bottom: 20px;}
#service p.lead{ text-align: center; font-size: 0.8rem;}
@media screen and (max-width:767px){
#service{ overflow: hidden; padding: 10% 0 15%;}
#service figure.txt_ico{ right: 1.25vw; top: -5vw; width: 16.66vw;}
#service h2{ tfont-size: 1.5rem; padding-bottom: 7.5%; margin-bottom: 10%;}
#service h2:after{ width: 50vw; height: 1.66vw; background: url("../images/tit_line_smp.png") center center no-repeat; background-size: 100%; bottom: 0;}
#service h3{ font-size: 1.33rem; margin-bottom: 5%;}
#service p.lead{ font-size: 1.0rem; text-align: justify;}
}

#service dl{ display: flex; align-items: center; justify-content: center; width: 980px; margin: 40px auto 0; padding: 40px; border: 1px solid #2D8C3C; border-radius: 10px;}
#service dl dt{ width: calc(100% - 532px);}
#service dl dd{ width: 532px;}
#service dl dt p{ font-size: 0.9rem; line-height: 1.5em;}
#service dl dd iframe{ width: 100%; height: 264px; vertical-align: bottom;}
@media screen and (max-width:767px){
#service dl{ display: block; width: 100%; margin: 5% auto 0; padding: 7.5%; border-radius: 1.25vw;}
#service dl dt{ width: 100%; margin-bottom: 7.5%}
#service dl dd{ width: 100%;}
#service dl dt p{ font-size: 1.0rem;}
#service dl dd iframe{ width: 100%; height: 50vw;}
}





/*thanks*/
body.thanks{ min-height: 100dvh; background: linear-gradient(45deg, #6dd17c 0%,#f5fde8 100%);}
body.thanks footer{ background: none; padding-top: 0;}
#thanks{ display: flex; flex-direction: column; align-items: center; justify-content: center; width: auto; padding: 40px 40px 80px; margin: 30px; border-radius: 10px; background: #fff;  box-shadow: rgba(0, 0, 0, 0.1) 0 0 6px 0; position: relative;}
#thanks .maincontent{ width: 100%;}
@media screen and (max-width:767px){
body.thanks footer{ padding-top: 8.75%;}
#thanks{ min-height: 1px !important; display: block; padding: 10% 7.5%; margin: 3.75vw; border-radius: 1.25vw;}
}

#thanks h2{ display: flex; flex-direction: column; align-items: center; text-align: center; margin-bottom: 20px;}
#thanks h2 strong{ display: flex; align-items: center; justify-content: center; font-size: 2rem; color: #fff; background: linear-gradient(45deg,  #2fd93c 0%,#88d523 100%); padding: 0.33em 0.25em 0.5em; margin-top: 8px;}
#thanks p.lead{ text-align: center; font-size: 1.2rem; font-weight: bold; margin-bottom: 50px;}
@media screen and (max-width:767px){
#thanks h2{ margin-bottom: 7.5%;}
#thanks h2 strong{ font-size: 1.5rem; margin-top: 1.25vw;}
#thanks p.lead{ text-align: center; font-size: 1.2rem; font-weight: bold; margin-bottom: 20%;}
}

#thanks h3{ text-align: center; font-size: 1.6rem; line-height: 1em; color: #2D8C3C; margin-bottom: 40px; position: relative;}
#thanks h3 strong{ display: inline-block; width: 440px; padding-bottom: 20px; position: relative;}
#thanks h3 strong:before{ content: ""; width: calc(50% - 8px); height: 1px; position: absolute; left: 0; bottom: -1px; background: #2C8C3C;}
#thanks h3 strong:after{ content: ""; width: calc(50% - 8px); height: 1px; position: absolute; right: 0; bottom: -1px; background: #2C8C3C;}
#thanks h3:after{ content: ""; width: 20px; height: 10px; background: url("../images/tit_arrow.png") center center no-repeat; background-size: 100%; position: absolute; left: 0; right: 0; bottom: -10px; margin: auto;}
@media screen and (max-width:767px){
#thanks h3{ font-size: 1.33rem; margin-bottom: 25%;}
#thanks h3 strong{ width: 100%; padding-bottom: 3.75vw;}
#thanks h3 strong:before{ width: calc(50% - 2vw);}
#thanks h3 strong:after{ width: calc(50% - 2vw);}
#thanks h3:after{ width: 5vw; height: 2.5vw; bottom: -2.5vw}
}

#thanks .thanks_contact{ background: #F4F4F4; border-radius: 10px; width: 680px; padding: 30px; text-align: center; margin: auto;}
#thanks .thanks_contact dl{ display: flex; align-items: center; justify-content: center; margin: auto;}
#thanks .thanks_contact dl dt{ font-size: 0.8rem; font-weight: bold;}
#thanks .thanks_contact dl dd{ font-size: 0.8rem; margin-left: 0.25em;}
#thanks .thanks_contact dl dd a{ color: #2D8C3C; text-decoration: underline; margin-left: 1em;}
@media screen and (max-width:767px){
#thanks .thanks_contact{ border-radius: 1.25vw; width: 100%; padding: 10% 12.5%;}
#thanks .thanks_contact dl{ display: block; text-align: left;}
#thanks .thanks_contact dl dt{ font-size: 1rem;}
#thanks .thanks_contact dl dd{ font-size: 1rem; margin-left: 0;}
#thanks .thanks_contact dl dd a{ margin-left: 0;}
}





itp_iframe_tag{ position: absolute; left: 0; bottom: 0;}



@media print, screen and (min-width:768px){
.smp{ display:none !important;}
}
@media screen and (max-width:767px){
.pc{ display:none !important;}
}
