@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Playfair+Display:400,400i,700,700i,900,900i&display=swap');

/* Base Setting
==========================================================*/
html { font-size: 62.5%; } /* 10px */
body { font-size: 1.6rem; } /* 15px */
p  { font-size: 1.6rem; } /* 15px */
li { font-size: 1.6rem; } /* 15px */

body { font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; margin:0; padding: 0; color: #729996; -webkit-text-size-adjust: 100%; letter-spacing: 0.12em; overflow-x: hidden; line-height: 1.8; font-feature-settings: palt; color: #333333; }

section{ width: 100vw; overflow: hidden; }

a { text-decoration: none; color: #333333; outline:none; transition: .4s; }
a:hover { text-decoration: none;}
img { -ms-interpolation-mode: bicubic; max-width:100%; height: auto; vertical-align: middle;}
:focus { outline: 0; }
::-moz-selection { background: #729996; color: #fffcf7;}
::selection { background: #729996; color: #fffcf7;}

.fn_Helvetica{ font-family: "Helvetica Neue", "Segoe UI", sans-serif; letter-spacing: 0.05em; }
.fn_Playfair{ font-family: 'Playfair Display', serif; }
.c_green{ color: #3d5a5b; }
.fn_normal{ font-weight: 100; }
.h2ttl{ font-size: 3.2rem !important; font-weight: 700 !important; }



/* layout
==========================================================*/

.flex-wrap {
  -ms-flex-wrap: wrap; /*IE10*/
  -webkit-flex-wrap: wrap; /* Safari6.1以降 */
  flex-wrap: wrap;
}

.c_text { color: #4a4a4a;}
.c_white { color: #fff;}

/* IE11 HACK */
@media all and (-ms-high-contrast:none)
{
*::-ms-backdrop,
[data-aos^=fade][data-aos^=fade],[data-aos^=zoom][data-aos^=zoom]{
opacity: 1;
}
}

/* slick */
.slide_ul, .slide_imgwrap { display: none;}
.slide_ul.slick-initialized, .slide_imgwrap.slick-initialized { display: block; /*slick-initializedが付与されたら表示*/　}

/* common
==========================================================*/

#wrapper { }
.bg_thingray { background-color: #f6f7f8; }
.bg_f6f7f8 { background-color: #f6f7f8; }
.bg_white { background-color: #fff; border-radius: 10px; }
.w90{ /*max-width: 1240px;*/ width: 90%; margin: 0 auto; }
.w1240{ max-width: 1240px; width: 90%; margin: 0 auto; }

.line { margin-top: -3px; }
.title_a { font-size: 3.2rem; }
.title_a h2{ font-size: 3.2rem; line-height: 1.4; }

.en { opacity: 0.3; pointer-events: none; }

.underline{ text-decoration: underline; }
.underline:hover{ text-decoration: underline; }

.btn_white a{ display: inline-block; max-width: 520px; width: 100%; height: 65px; line-height: 65px; border: 1px solid #fff; color: #fff; }
.btn_black a{ display: inline-block; max-width: 480px; width: 100%; height: 65px; line-height: 65px; border: 1px solid #000; color: #fff; background-color: #000; text-align: center; }

.h2ttl h2{ font-size: 4rem; font-weight: bold; }

.js-fix-wrapper{ position: absolute; top: calc(100vh + 150px); right: 25px; writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; z-index: 40;  height: 400px; letter-spacing: 0.05em; }
.js-fix-wrapper.fixed{ position: fixed; top: 150px; }
.js-fix{ font-size: 1.2rem; }
.kasouBody .js-fix-wrapper{ position: absolute; top: calc(100vh - 150px); right: 25px; writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; z-index: 40;  height: 400px; letter-spacing: 0.05em; }
.kasouBody .js-fix-wrapper.fixed{ position: fixed; top: 150px; }

/* Header
==========================================================*/
.gnavwrap ul li:not(:last-child){ margin-right: 30px; }
.gnavwrap ul li{ letter-spacing: 0.05em; }
.sns_wrap li:first-child{ margin-right: 15px; }
.sns_wrap i{ font-size: 2rem; }
.headerwrapInner{ align-items: center; }
.kasouHeader .headerwrapInner{ width: 100%; height: 100px; background-color: #fff; position: fixed; top: 0; left: 0; z-index: 50; }
.headerwrapInner .logomenu{ width: calc(90% - 100px); align-items: center;
position: fixed; z-index: 50; top: 25px; left: 50%; transform: translateX(-50%); }
.gnavwrap { margin-right: 80px; }
.gnavwrap a{ color: #fff; }
.languagewrap.txc { display: inline-block; width: 100px; height: 100px; position: fixed; top: 0; right: 0; background-color: #000; z-index: 50; }
.languagewrap p { cursor: pointer; width: 100%; height: 100%; color: #fff; font-size: 20px; line-height: 100px;  }
.languagewrap .hide_language{ display: none; background-color: #7b7b7b; }
.languagewrap .hide_language li{ padding-top: 20px; font-weight: bold; font-size: 20px; }
.languagewrap .hide_language li:last-child{ padding: 8px 0 20px; }
.languagewrap p:first-child{ display: flex; align-items: center; justify-content: center; }
.languagewrap p .triangle{ margin-left: 3px; margin-top: -3px; }


/* main
==========================================================*/
.mainvisual .mainvisualInner{ width: 100vw; height: 100vh; position: relative; z-index: -1; display: flex; align-items: center; justify-content: center; }
.mainvisual .mainvisualInner::before{ content: ""; width: 100vw; height: 100vh; background-image: url(../images/index/top_fv.jpg); background-repeat: no-repeat; background-size: cover; background-position: center center; z-index: -1; position: fixed; top: 0; left: 0; }
.mainvisual .mainvisualInner p.copy{ font-size: 4.2rem; }

.mv_scroll{ flex-flow: column; align-items: center; position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); }
.mv_scroll .line{ width: 1px; height: 60px; margin-top: 20px;  }
.mv_scroll .line span{ display: block; width: 1px; height: 100%; background-color: #fff;  animation:scroll_effect 1.8s infinite; transform-origin: bottom; }
@keyframes scroll_effect {
 0% {
  height: 0;
 }
 100% {
  height: 100%;
 }
}


/* about
==========================================================*/
.ind_about .wrap{ width: 100%; height: 650px; background-color: #000; display: flex; justify-content: center; align-items: center; position: relative; }
.ind_about .wrap .wrapInner .txtwrap{ max-width: 700px; width: 100%;  margin: 20px auto 40px; }
.ind_about .wrap .wrapInner .txtwrap p{ font-size: 1.8rem; line-height: 2.2; }
.ind_about .wrap .word{ position: absolute; top: 30%; left: 0; width: 100%; height: 350px; }
.ind_about .wrap .word div{ width: 16800px; height: 100%; background: url(../images/index/word_bg.svg?a) 0 0 repeat-x; background-size: 4200px 350px; }
.ind_about .btn_white.txc { position: relative; z-index: 10; }

.ind_about .wrap .word div {
-webkit-animation: about-anim-sp 120linear infinite normal;
animation: about-anim-sp 120s linear infinite normal;
transform: translateX(10%);/*初期位置*/
    animation-delay: 1s;
}
@-webkit-keyframes about-anim-sp {
  100% {
    transform: translateX(-100%);
  }
}
@keyframes about-anim-sp {
  100% {
    transform: translateX(-100%);
  }
}


/* service
==========================================================*/
.ind_service{ background-color: #fff; }
.ind_service .wrap .wrapInner .left { width: 48%; display: flex; align-items: center; }
.ind_service .wrap .wrapInner .left .leftInner{ width: 70%; margin: 0 auto; }
.ind_service .wrap .wrapInner .right{ width: 52%; }
.ind_service .wrap .wrapInner .txtwrap{ margin: 20px 0 40px; }


/* recruit
==========================================================*/
.ind_recuit .wrap{ width: 100vw; height: 650px; background: url(../images/index/recruit01.jpg) center center no-repeat; background-size: cover; }
.ind_recuit .wrapInner{ width: 92%; height: 100%; position: relative; }
.ind_recuit .wrapInner .right{ position: absolute; top: 50%; transform: translateY(-50%); right: 0; max-width: 520px; width: 100%; }
.ind_recuit .wrapInner .right .txtwrap{ margin: 20px 0 40px; }
.ind_recuit .wrapInner .right .btn_black a{ border: 1px solid #fff; color: #fff; background-color: transparent; }


/* footer
==========================================================*/
.foot_contact .wrap{ background-color: #E72B5E; }
.foot_contact .wrapInner{ width: 85%; margin: 0 auto; padding: 100px 0; }

.foot_contact .wrapInner .left .h2ttl h2{ font-size: 8.4rem; line-height: 1; }
.foot_contact .wrapInner .left, .foot_contact .wrapInner .right{ width: 50%; }
.foot_contact .wrapInner .left{ margin-right: 7%; }
.foot_contact .wrapInner .left .txtwrap{ margin-top: 40px; }
.foot_contact .wrapInner .right .btn_black a{ max-width: 100%; height: 130px; background-color: transparent; border: 1px solid #fff; }
.foot_contact .wrapInner .right .btn_black.to_form a{ line-height: 130px; font-size: 2.1rem; margin-bottom: 50px; box-sizing: border-box; }
.foot_contact .wrapInner .right .detail{ width: 95%; margin: 25px auto 0; font-size: 1.4rem; line-height: 1.5; }
.foot_contact .wrapInner .right .tel_number{ margin: 0 auto; width: 95%; font-size: 4.2rem; font-weight: 100; letter-spacing: 0.18em; }
/*.foot_contact .wrapInner .right .mail_icon{ margin-right: 15px; }*/
.foot_contact .wrapInner .right .btn_black.to_form a p{ display: inline-block; }
.foot_contact .wrapInner .right .btn_black.to_form a p:nth-child(1){ max-width: 40px; width: 7%; margin-right: 5px; }
/*.foot_contact .wrapInner .right .btn_black.to_form a p::before{ content: ""; width: 40px; height: 20px; background: url(../images/common/mail_icon.svg) center center no-repeat; background-size: cover; position: absolute; top: 51%; transform: translateY(-50%); left: -55px; }*/

.footerwrap{ background-color: #000; }
.footerwrapInner{ width: 80%; height: 170px; margin: 0 auto; align-items: center;  }
.footerwrapInner .left{ align-items: center; }
.footerwrapInner .left .footer_logo{ margin-right: 35px; }
.footerwrapInner .left .access p{ font-size: 1rem; }
.footerwrapInner .left .access p:first-child{ margin-right: 30px; }
.footerwrapInner .right a{ color: #fff; font-size: 1.3rem;  }
.footerwrapInner .right ul li:not(:last-child){ margin-right: 20px; min-width: 20px; }
.footerwrapInner .right ul li:nth-child(4){ margin-right: 30px; }


/* kasou_about
==========================================================*/
.height100{ height: 1000px;}
.kasouHeader .gnavwrap li a{ color: #000; }
.kasouPage .mainvisual { width: 100vw; height: 600px; overflow: visible; }
.kasouPage .mainvisual .mainvisualInner { width: 100%; height: 100%; background: url(../images/about/about_main.jpg?191206) center center no-repeat; background-size: cover; margin-top: 100px; }
.kasouPage .mainvisual .mainvisualInner::before{ display: none; }
.kasouPage .h1ttl h1{ font-size: 7rem; line-height: 1.4; font-weight: bold; letter-spacing: 0.15em; }
.mgt110{ margin-top: 110px; }
.nav_current{ border-bottom: 1px solid #e72b5e; }

.kasouPage .enttl h2{ font-size: 2.7rem; font-weight: bold; }
.kasouPage .enttl { font-size: 2.7rem; font-weight: bold; }
.kasouPage .jpttl p{ font-size: 3.8rem; letter-spacing: 0.14em; }
.kasouPage .vision .wrap .wrapInner .jpttl, .kasouPage .recruit .wrap .wrapInner .jpttl{ margin: 30px auto; }
.kasouPage .vision .wrap .wrapInner, .kasouPage .recruit .wrap .wrapInner{ width: 80%; margin: 0 auto; }
.kasouPage .vision .wrap .wrapInner .txtwrapInner{ max-width: 1100px; width: 100%; margin: 0 auto; }

.kasouPage .company .wrap .wrapInner{ max-width: 1100px; width: 80%; margin: 0 auto; }
.kasouPage .company .wrapInner .itemwrap{ margin-top: 60px; }
.kasouPage .company .wrapInner .itemwrap dl{ display: flex;  border-top: 1px solid #808080; }
.kasouPage .company .wrapInner .itemwrap dl:last-child{ border-bottom: 1px solid #808080; }
.kasouPage.kasou_recruit .company .wrapInner .itemwrap dl:last-child{ border-bottom: 1px solid #808080; }
.kasouPage .company .wrapInner .itemwrap dl dt{ width: 20%; background-color: #dce0e2; padding: 20px 10px; text-align: center; border-right: 1px solid #808080; }
.kasouPage .company .wrapInner .itemwrap dl dd{ width: 80%; padding: 20px 0; padding-left: 30px; box-sizing: border-box; }
.gmap { height: 0; overflow: hidden; padding-bottom: 56.25%; position: relative; margin-top: 50px;  }
.gmap iframe { position: absolute; left: 0; top: 0; height: 100%; width: 100%; }

.kasouPage .history .wrap .wrapInner{ max-width: 1100px; width: 90%; margin: 0 auto; }
.kasouPage .history .wrap{ background-color: #f6f7f8; }
.kasouPage .history .wrap .wrapInner{ padding: 110px 0;}
.kasouPage .history .wrap .wrapInner .jpttl{ padding-bottom: 50px; border-bottom: 1px solid #808080; }
.kasouPage .history .wrap .wrapInner .itemwrap{ padding-top: 30px; position: relative; z-index: 10; }
.kasouPage .history .wrap .wrapInner .itemwrap.first-child{ padding-top: 60px; position: relative; z-index: 10; }
.kasouPage .history .wrap .wrapInner .itemwrap.first-child::after{ content: ""; display: inline-block; width: 76px; height: 590px; background: url(../images/about/history_year.svg) center center no-repeat; background-size: cover; position: absolute; top: 60px; right: 0; z-index: -1; }
.kasouPage .history .wrap .wrapInner .itemwrap.last-child { padding-bottom: 60px; border-bottom: 1px solid #808080; }
.kasouPage .history .wrap .wrapInner .itemwrap .out_dl{ align-items: center; }
.kasouPage .history .wrap .wrapInner .itemwrap .out_dl .bg_thingray{ width: 200px; margin-right: 25px; height: 180px; display: flex; justify-content: center; align-items: center; font-size: 20px;  }
.kasouPage .history .wrap .wrapInner .itemwrap.h130 .out_dl .bg_thingray{ height: 120px; }
.kasouPage .history .wrap .wrapInner .itemwrap .in_dl dt{ padding-right: 20px; width: 55px; }
.kasouPage .history .wrap .wrapInner .itemwrap .in_dl dd{ padding-left: 30px; }
.kasouPage .history .wrap .wrapInner .itemwrap .in_dl{ margin: 15px 0; }
.kasouPage .history .wrap .wrapInner .itemwrap .line{ position: relative; }
.kasouPage .history .wrap .wrapInner .itemwrap .line::before{ content: ""; width: 1px; height: calc(100% - 30px); background-color: #000; position: absolute; top: 15px; left: 70px; }

.kasouPage{ margin-bottom: 150px; }
.kasouPage .grupcommin{ margin-top: 40px;  }
.kasouPage .grupcommin img{ max-width: 1100px; width: 100%; margin: 0 auto; }

.message.mgt110 { padding-top: 200px; }
.message .wrap{ background-color: #f6f7f8; }
.message .wrap .wrapInner{ padding-bottom: 130px; }
.message .wrap_rela .underInner{ max-width: 1100px; width: 100%; padding: 11% 8% 6%; background-color: #fff; box-sizing: border-box; position: relative; }
.message .wrap_rela .underInner::after{ content: ""; width: 250px; height: 112px; background: url(../images/about/message_name.png?191209) center center no-repeat; background-size: cover; position: absolute; bottom: -65px; right: 5%; }
.message .wrap_rela{ position: relative; padding-top: 380px;  max-width: 1100px; width: 80%; margin: 0 auto; }
.message .wrap_rela .relaImgwrap{ max-width: 1300px; width: 100%; height: 600px; background: url(../images/about/message.jpg) center center no-repeat; background-size: cover; position: absolute; top: 0; left: 0; }
.wrap_rela::after{ content: ""; width: 120%; height: 600px; background:url(../images/about/message.jpg) center center no-repeat; background-size: cover; position: absolute; top: -162px; right: 0; }
.gmap iframe{ -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); }
/*.gmap::after{ content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background-color: #f6ebe8;  }*/
.wrap_rela .top{ position: absolute; top: 60px; right: -50px; z-index: 40; line-height: 1; color: #50646e; }
.wrap_rela .top p:nth-child(1){ font-size: 3.6rem; margin-bottom: 15px; }
.wrap_rela .top p:nth-child(2){ font-size: 10rem;  }

.company.groupcompany { padding: 110px 0; background-color:  #f6f7f8; }
.kasouPage.about { margin-bottom: 0; }



/* kasou_service
==========================================================*/
.kasou_service .mainvisual .mainvisualInner { background: url(../images/service/service_main.jpg?1206) center center no-repeat; background-size: cover; }

.service02 .wrapInner{ padding: 110px 0 140px; width: 80%; margin: 0 auto; }
.service02 .wrapInner .itemwrap .ttl{ align-items: center; }
.service02 .wrapInner .itemwrap .ttl p{ margin: 0 80px; white-space: nowrap; font-size: 2.5rem; font-weight: bold; letter-spacing: 0.18em; position: relative; }
.service02 .wrapInner .itemwrap .ttl p::after{ content: "01"; position: absolute; top: -35px; left: 50%; transform: translateX(-50%); font-size: 1.8rem; letter-spacing: 0; font-family: "Helvetica Neue", "Segoe UI", sans-serif; }
.service02 .wrapInner .itemwrap .ttl span{ display: inline-block; width: 100%; height: 1px; background-color: #000; }
.service02 .wrapInner .itemwrap .itemmainimg{ margin-top: 90px; }
.service02 .wrapInner .type01 div.flex { margin-top: 100px; }
.service02 .wrapInner .type01 .left { width: 50%; }
.service02 .wrapInner .type01 .right{ width: 45%; }
.service02 .wrapInner .type01 .enttl{ padding-bottom: 15px; margin-top: -10px; }
.service02 .wrapInner .type01 .txtwrap{ padding-top: 30px; position: relative; }
.service02 .wrapInner .type01 .txtwrap::after{ content: ""; width: 95px; height: 1px; background-color: #808080; position: absolute; top: 0; left: 0; }
.service02 .wrapInner .type01 .right div.flex{ align-items: center; margin-top: 50px; }
.service02 .wrapInner .type01 .right .logowrap{ margin-right: 20px; }
.service02 .wrapInner .type01 .right p.link{ font-size: 1.3rem; margin-top: 10px; }
.nav_openlogo{ opacity: 0; position: absolute; top: 0; left: 0; z-index: 5000; }
.service02 .wrapInner .itemwrap:not(:first-child){ margin-top: 180px; }
.service02 .wrapInner .itemwrap .ttl p.item02::after{ content: "02"; }
.service02 .wrapInner .itemwrap .ttl p.item03::after{ content: "03"; }
.service02 .wrapInner .itemwrap .ttl p.item04::after{ content: "04"; }
.kasouPage.kasou_service { margin-bottom: 0; }
@media screen and (max-width: 1150px){
  .service02 .wrapInner .type01 div.flex.link-box { display: block;}
}


/* kasou_recruit
==========================================================*/
.w1100{ max-width: 1100px; width: 90%; margin: 0 auto; }
.mgb20{ margin-bottom: 20px; }
.kasou_recruit .mainvisual .mainvisualInner { background: url(../images/recruit/recruit_main.jpg) center center no-repeat; background-size: cover; }
.kasouPage .company.recruit_detail .wrap .wrapInner{ max-width: 100%!important; width: 100%; }
.kasouPage .company.recruit_detail .wrap .itemwrap{ max-width: 1100px; width: 85%; margin: 0 auto; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap { margin-top: 60px; }
.kasouPage .company.recruit_detail .wrap .wrapInner .bg_f6f7f8{ padding: 60px 0; margin-top: 60px; }
.kasouPage .company.recruit_detail .wrap .wrapInner .bg_f6f7f8 .itemwrap{ margin-top: 0; }
.kasou_recruit .slide_wrap{ margin-top: 140px; }
.kasou_recruit .flow .wrapInner{ padding: 110px 0 140px; }
.kasou_recruit .imgwrap{ margin: 50px auto 60px; max-width: 1100px; width: 100%; }
.kasou_recruit .txtwrap{ max-width: 1100px; width: 100%; margin: 0 auto; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap dl dt{ display: flex; align-items: center; justify-content: center; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap.dtBlue dl dt{ background-color: #e72b5e; color: #fff; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap.dtPink dl dt{ background-color: #62747d; color: #fff; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap.dtYellow dl dt{ background-color: #96a2a8; color: #fff; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap dl { border-top: none; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap dl dt { border-top: 1px solid #fff; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap dl:first-child dt { border-top: 1px solid #808080; }
.kasouPage .company.recruit_detail .wrapInner .itemwrap dl dd { border-top: 1px solid #808080; }

.kasou_recruit .slide_wrap .slick-slide{ margin: 0 5px; }
.kasou_recruit .slide_wrap .slick-dots{ transform: translateX(-50%)!important; }
@media screen and (max-width: 500px){
    ul.slick-dots li button::before { font-size: 8px!important; }
    .kasou_recruit .slide_wrap .slick-dots{ bottom: 10px!important; }
}


/* kasou_contact
==========================================================*/
.w1100{ max-width: 1100px; width: 80%; margin: 0 auto; }
.mgb20{ margin-bottom: 20px; }
.mgl60{ padding-left: 60px; }
.kasou_contact .mainvisual .mainvisualInner { background-image: none; background-color: #000; }
.kasou_contact .mainvisual .mainvisualInner .txtwrap{ width: 90%; margin: 30px auto 0; }
.kasou_contact .mainvisual .mainvisualInner .h1ttl{ width: 100%; }
.kasou_contact .mainvisual .mainvisualInner .jpttl p{ font-size: 2.7rem; }

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {　border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer; }
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {　display: none;　}
input[type="submit"]::focus,
input[type="button"]::focus {　outline-offset: -2px; }
/*フォーム スタイル　リセット*/
input[type="text"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; border-radius: 0; outline: none; background: none; }
button,input[type="submit"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; outline: none; background: transparent; transition: all 0.3s ease 0s;  }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; outline: none; background: transparent; }
input[type=radio] { display: none; }

.formwrap .wrapInner{ max-width: 950px; width: 85%; margin: 0 auto; }
.form_wrap dl{ display: flex; justify-content: space-between; margin-bottom: 30px; align-items: center; }
.form_wrap dl dt{ width: 25%; box-sizing: border-box; }
.form_wrap dl dd{ width: 70%; }
.form_wrap dl dd textarea{ border: none; }
.form_wrap dl dd input, .form_wrap dl dd textarea{ width: 100%; padding: 20px 30px; line-height: 1.8; font-size: 1.4rem; box-shadow: none; box-sizing: border-box; letter-spacing: 0.05em; background-color: #f6f7f8; border-radius: 0; }
.form_wrap dl dt .colored{ color: #fff; padding: 5px; background-color: #e72b5e; font-weight: normal; font-size: 13px; margin-right: 20px;  }

.checkwrap dd{ display: flex; flex-flow: column; }
.checkwrap label{ padding-left: 50px; position: relative; margin-bottom: 25px; }
.checkwrap label::before{ content: ""; width: 30px; height: 30px; background-color: #f6f7f8; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }
.checkwrap label::after{ content: ""; width: 10px; height: 10px; background-color: #e72b5e; position: absolute; top: 50%; left: 10px; transform: translateY(-50%); opacity: 0; }
input[type="radio"]:checked + label::after { opacity: 1; }
input[type="submit"]{ width: 100%; padding: 8% 0; color: #fff; background-color: #e72b5e; font-size: 2.7rem; letter-spacing: 0.1em; margin-top: 50px; font-weight: normal!important; border-radius: 0; }

.privcy{ margin-top: 80px; }
.privcywrap{ width: 100%; border: 1px solid #000; margin-top: 30px;  }
.privcywrap .privcywrapInner{ width: 100%; padding: 35px 40px; box-sizing: border-box; height: 250px; overflow-y: scroll; }
.privcywrap .privcywrapInner dl{ display: block; margin-bottom: 35px; }
.privcywrap .privcywrapInner dl dt{ font-weight: bold; margin-bottom: 10px;  }
.colorpink{ color: #e72b5e; }

.error_box { display: none; width: 100%; text-align: center; box-sizing: border-box; border: 1px solid #e92b2b; color: #e92b2b; padding: 25px 20px; margin: 40px auto 20px; }

.thankswrap .h1ttl h1{ font-size: 5rem; }
.thankswrap .wrapInner{ width: 88%; max-width: 800px; margin: 0 auto; padding: 100px 0 0; }
.thankswrap .wrapInner .txtwrap{ margin: 30px 0 0; }
.thankswrap .wrapInner .txtwrap span{ margin-top: 40px; font-size: 1.2rem; display: inline-block; }





