@charset "UTF-8";

/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&display=swap');

html,body {
	height:100%;
}
html {
	font-size:62.5%;
  overflow-y: scroll;
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form, figure {
	margin: 0;
	padding: 0;
	border: none;
	font-size: 2.2rem;
	line-height: 1.3636;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-family:"メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	text-align: left;
	color:#333;
}
div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd,
ol, ul, li, form, input, textarea, button,
table, tr, th, td, article, aside, footer, header,
hgroup, nav, section, a, span, img {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	min-width: 750px;
}

a {
	color: #000;
	text-decoration: none;
}
a:hover {
	opacity: .7;
}

a img {
	transition: opacity 0.3s ease-out;
}
a:hover img {
	opacity: 0.7;
}
figure {
	text-align: center;
	line-height: 0;
  margin: 0;
  padding: 0;
}

.wrap {
	width: 100%;
	max-width: 750px;
	margin: auto;
}

/* ------------------------------
    text/font
------------------------------ */
.ta_c {
	text-align: center;
}
.fwb {
	font-weight: bold;
}
.color_pink {
	color: #b41961;
}
.color_red {
	color: #c42530;
}
.highlight {
  background: linear-gradient(transparent 54%, #fffb90 54%, #fffb90 88%, transparent 88%);
}
.udl {
  background: linear-gradient(transparent 88%, #333 88%, #333 92%, transparent 92%);
}
.mac .udl{
  border-bottom: 1px solid #333;
  padding-bottom: .1em;
  background: none;
}
.font_gos {
  font-family: var(--main_font_gos);
}
.font_serif {
  font-family: 'Noto Serif JP', serif;
}
:root {
  --main_font_gos: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 'Noto Sans JP', "メイリオ", "Meiryo", sans-serif;
}
.through{
  text-decoration: line-through;
}

@media screen and (min-width: 768px) {
  .pc {
    display: block !important;
  }
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
	body {
		min-width: inherit;
    -webkit-text-size-adjust: 100%;
  }
	figure {
		width: 100%;
		text-align: center;
	}
	img {
		display: block;
		margin: 0 auto;
		max-width: 100%;
		height: auto;
	}
	p {
		font-size: 3.8vw;
    line-height: 1.5;
	}
  .wrap{
    width: 96%;
  }
	.sp {
		display: block !important;
	}
	.pc {
		display: none !important;
	}
  .udl{
    background: linear-gradient(transparent 85%, #333 88%, transparent 95%);
    display: inline;
    padding: 0 0 0.8vw;
  }
}


/* ------------------------------
    flex
------------------------------ */
.flex {
	display: flex;
	display: -webkit-flex;
	display: -ms-flex;
}
.justifycontent_spacebetween {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.justifycontent_center {
	-webkit-justify-content: center;
	justify-content: center;
}
.alignitems_center {
	-webkit-align-items: center;
	align-items: center;
}
.order1 {
	order: 1;
}
.order2 {
	order: 2;
}

/* ------------------------------
    float
------------------------------ */
.f_left{
  float: left;
}
.f_right{
  float: right;
}


/* ------------------------------
    clearfix
------------------------------ */

.cf:after {
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */

.clear{
  clear: both;
}


/* ------------------------------
*  form
------------------------------ */

input[type="text"],
input[type="tel"],
textarea, select,
input[type=button],
input[type=submit],
button[type=submit],
input[type=reset] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
	font-family:"メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #999999;
}

select::-ms-expand {
  display: none;
}

input[type="text"],
input[type="tel"],
textarea {
  width: 100%;
  max-width: 100%;
}

textarea {
  resize: vertical;
  overflow: auto;
}

input[type=button],
input[type=submit] {
  border-style: none;
}

select::-ms-expand {
  display: none;
}
::placeholder {
  color: #999999;
  font-size: 2.5rem;
}

@media screen and (max-width: 767px) {
  input[type="text"],
  input[type="tel"],
  textarea {
    width: 100%;
    font-size: 1.6rem !important;
  }
  ::placeholder {
    font-size: 3.6vw;
  }
}

/* ------------------------------
*  header
------------------------------ */
#mv{
  width: 100%;
  position: relative;
  background: #fef4f2;
  overflow: hidden;
}
#mv::before{
  position: absolute;
  content: "";
  background: #171717;
  width: 100%;
  top: 0;
  left: 0;
}
.mv_inner{
  position: relative;
  width: 100%;
  margin: auto;
}
.mv_main_ttl{
  position: relative;
  z-index: 2;
}
.mv_photo{
  position: absolute;
  right: 0;
  z-index: 1;
}
.mv_sub_ttl{
  line-height: 0;
}
.mv_tbl{
  position: relative;
  width: 100%;
  margin: 0 auto;
  background: url("../img/bg_pink.png") repeat;
}
.mv_tbl_inner{
  position: relative;
  z-index: 2;
  width: 100%;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #acacac;
}
.mv_tbl table{
  width: 100%;
}
.mv_tbl table tr{
  display: flex;
}
.mv_tbl table td{
  position: relative;
  line-height: calc(34/26);
  padding-left: 1.2em;
}
.mv_tbl table td:nth-child(1)::before{
  position: absolute;
  content: "●";
  color: #b41961;
  top: 0;
  left: 0;
}
.mv_tbl table td:nth-child(2){
  padding-left: 10px;
}
.mv_tbl .color_accent{
  color: #ff3333;
  font-weight: bold;
}
.mv_tbl .color_filled{
  color: #ff3333;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  #mv{
    padding-bottom: 4.267vw;
    padding-top: 1.333vw;
    border-top: 4px solid #fcdaed;
  }
  #mv::before{
    height: 1.333vw;
  }
  .mv_inner{
    width: 98%;
  }
  .mv_photo{
    top: 17.333vw;
  }
  .mv_photo img{
    width: 29.333vw;
  }
  .mv_sub_ttl{
    margin-bottom: 2.667vw;
  }
  .mv_tbl{
    width: 98%;
    padding-bottom: 2.133vw;
  }
  .mv_tbl_inner{
    width: 98%;
    padding: 3.733vw 0 1.6vw;
  }
  .mv_tbl table{
    padding: 0 5.333vw;
    margin-bottom: 1.333vw;
  }
  .mv_tbl table td{
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  #mv{
    padding-bottom: 33px;
    padding-top: 9px;
    border-top: 8px solid #fcdaed;
  }
  #mv::before{
    height: 9px;
  }
  .mv_inner{
    max-width: 750px;
  }
  .mv_photo{
    top: 122px;
  }
  .mv_sub_ttl{
    margin-bottom: 20px;
  }
  .mv_tbl{
    max-width: 717px;
    padding-bottom: 11px;
  }
  .mv_tbl_inner{
    max-width: 697px;
    padding: 28px 0 8px;
  }
  .mv_tbl table{
    margin: 0 auto 12px;
    padding: 0 40px;
  }
  .mv_tbl table td{
    font-size: 2.6rem;
    padding-left: 1.2em;
  }
}



/* ------------------------------
*  cta
------------------------------ */
.cta_btn{
  text-align: center;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .cta_btn{
    width: 100%;
  }
  .cta_btn .btn a{
    width: 98%;
  }
}


/* ------------------------------
*  footer
------------------------------ */
.footer {
  text-align: center;
  background: #1c1a1a;
}
.footer * {
  line-height: 1;
  color:#ffffff;
}
.footer p.copy {
	text-align: center;
}
.footer ul{
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.footer ul li {
  position: relative;
  line-height: 1;
}
/*
.footer ul li:first-child::before {
	position: absolute;
  content: "|";
  right: -.1em;
  top: -.1em;
}
*/

@media screen and (max-width: 767px) {
  .footer {
    padding: 8% 0;
  }
  .footer * {
    font-size: 3.4vw;
  }
  .footer p.copy {
    line-height: 1.4;
  }
  .footer ul{
    margin: 0 auto 5%;
  }
  .footer ul li {
    padding-right: 4.8%;
    padding-left: 4.8%;
  }
}
@media screen and (min-width: 768px) {
  .footer {
    padding: 40px 0 38px;
  }
  .footer * {
    font-size: 2.4rem;
  }
  .footer ul{
    margin: 0 auto 20px;
  }
  .footer ul li {
    padding-right: 36px;
    padding-left: 36px;
  }

}

/* ------------------------------
*  main
------------------------------ */
.contents_wrap {
  width: 100%;
  margin: auto;
	box-shadow:0 0 4px 2px rgba(153,153,153, .3);
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .contents_wrap {
    max-width: 726px;
  }
}



/* ------------------------------
*  btn
------------------------------ */
.btn{
	transition: 0.5s;
  margin: auto;
  text-align: center;
  line-height: 0;
}
.btn:hover{
	opacity: 0.7;
}
.btn a{
  position: relative;
	display: block;
  margin: auto;
}
@media screen and (max-width: 767px) {
  .btn a{
    width: 96%;
  }
}
@media screen and (min-width: 768px) {
  .btn a img{
    max-width: 100%;
  }
}

/* ------------------------------
*  obi
------------------------------ */
.obi{
  line-height: 0;
}
.obi{
  background: url("../img/img_obi.jpg") repeat-x center center;
  background-size: auto 100%;
  width: 100%;
}
.obi img{
  display: none;
}

@media screen and (max-width: 767px) {
  .obi{
    height: 24vw;
    background-position: center center;
  }
  .obi.obi02{
    background-position: calc(50% + 13vw) center;
  }
  .obi.obi03{
    background-position: calc(50% + 24vw) center;
  }
  .obi.obi04{
    background-position: calc(50% + 10.667vw) center;
  }
  .obi.obi05{
    background-position: calc(50% - 16vw) center;
  }
}
@media screen and (min-width: 768px) {
  .obi{
    height: 179px;
  }
  .obi.obi02{
    background-position: calc(50% + 100px) center;
  }
  .obi.obi03{
    background-position: calc(50% + 200px) center;
  }
  .obi.obi04{
    background-position: calc(50% + 80px) center;
  }
  .obi.obi05{
    background-position: calc(50% - 120px) center;
  }
}



/* ------------------------------
*  sec01
------------------------------ */
.sec01{
  position: relative;
  background: #f3f1f4;
  overflow: hidden;
}
.sec01 .ttl *{
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  display: block;
  font-weight: 500;
  letter-spacing: -.01em;
  line-height: 1.2;
}
.sec01 .ttl .ttl_sub{
  color: #323736;
}
.sec01 .txt_wrap p{
  letter-spacing: -.02em
}

@media screen and (max-width: 767px) {
  .sec01{
    padding-top: 5.333vw;
    padding-bottom: 10.133vw;
  }
  .sec01 .ttl01{
    margin-bottom: 3.2vw;
  }
  .sec01 .ttl02{
    margin-bottom: 10.667vw;
  }
  .sec01 .ttl .ttl_sub{
    font-size: 7.5vw;
  }
  .sec01 .ttl .ttl_sub.btm{
    margin-bottom: 2.133vw;
  }
  .sec01 .ttl .ttl_main{
    font-size: 12vw;
  }
  .sec01 .sec01_img{
    width: 66.4vw;
    margin: 0 auto 6vw;
  }
  .sec01 .txt_wrap{
    padding: 0 2.4vw;
  }
  .sec01 .txt_wrap01{
    margin-bottom: 7.733vw;
  }
  .sec01 .txt_wrap p + p{
    margin-top: 5%;
  }
}
@media screen and (min-width: 768px) {
  .sec01{
    padding-top: 40px;
    padding-bottom: 76px;
  }
  .sec01 .ttl01{
    margin-bottom: 23px;
  }
  .sec01 .ttl02{
    margin-bottom: 80px;
  }
  .sec01 .ttl *{
    white-space: nowrap;
  }
  .sec01 .ttl .ttl_sub{
    font-size: 5.91rem;
  }
  .sec01 .ttl .ttl_sub.btm{
    margin-bottom: 15px;
  }
  .sec01 .ttl .ttl_main{
    font-size: 9.282rem;
  }
  .sec01 .sec01_img{
    margin-bottom: 56px;
  }
  .sec01 .txt_wrap{
    padding: 0 18px;
  }
  .sec01 .txt_wrap01{
    margin-bottom: 58px;
  }
  .sec01 .txt_wrap p + p{
    margin-top: 30px;
  }
}

/* ------------------------------
*  sec02
------------------------------ */
.bg_pink{
  background: #fef4f2;
}
.sec02{
  position: relative;
  overflow: hidden;
  background: #ffffff;
}
.sec02 .ttl{
  line-height: 0;
}
.sec02 .inner{
  position: relative;
}
.sec02 .inner.reason::before,
.sec02 .inner.reason::after{
  position: absolute;
  content: "";
  background: url("../img/img_triangle.png") no-repeat center center /cover;
  left: 50%;
  transform: translateX(-50%);
}
.sec02 .inner:last-child{
  margin-bottom: 0;
}
.sec02 .num_wrap{
  display: flex;
}
.sec02 .num_wrap .icn_step{
  line-height: 0;
}
.sec02 .num_wrap .sub_ttl{
  flex: 1;
  color: #001111;
  font-weight: 600;
  font-family: var(--main_font_gos);
  line-height: calc(45/36);
  text-align: left;
  letter-spacing: -.01em;
}
.sec02 .num_wrap .marker {
  background: linear-gradient(transparent 66%, #ffc800 66%, #ffc800 93%, transparent 93%);
}
.sec02 .board_wrap {
  background: #ffcc7b;
}
.sec02 .board_wrap_inner {
  position: relative;
  background: #ffcc7b;
	box-shadow:0 0 4px 2px rgba(153,153,153, .3);
  background-color: #fff;
}
.sec02 .board_wrap_inner::before {
  position: absolute;
  content: "";
  background: url("../img/img_clip.png") no-repeat center center /cover;
  left: 50%;
  transform: translateX(-50%);
}
.sec02 .board_wrap_cont {
  border-bottom: 1px solid #948d99;
  width: 100%;
}
.sec02 .board_wrap_cont:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.sec02 .reason_wrap{
  display: flex;
  align-items: center;
}
.sec02 .reason_wrap .icn_reason{
  line-height: 0;
}
.sec02 .reason_wrap .sub_ttl{
  flex: 1;
  color: #111;
  font-weight: 600;
  font-family: var(--main_font_gos);
  text-align: left;
  letter-spacing: -.03em;
}
.sec02 .reason_wrap .sub_ttl.nrw10{
  letter-spacing: -.1em;
}
.sec02 .reason_wrap .sub_ttl.nrw12{
  letter-spacing: -.12em;
}
.sec02 .img_wrap img{
  display: block;
}
.sec02 .list_dot li{
  position: relative;
  padding-left: 1.2em;
  line-height: calc(36/28);
}
.sec02 .list_dot li::before{
  position: absolute;
  content: "●";
  color: #d26423;
  left: 0;
  top: 0;
}
@media screen and (max-width: 767px) {
  .bg_pink{
    border-top: 4px solid #b8a979;
    padding: 1.867vw 0 8vw;
  }
  .sec02{
    padding-top: 6.933vw;
  }
  .sec02 .contents_wrap{
    padding: 6.667vw 0 8vw;
  }
  .sec02 .contents_wrap .btn img{
    width: 96%;
  }
  .sec02 .inner{
    padding: 0 3%;
    margin-bottom: 13.333vw;
  }
  .sec02 .inner.reason{
    margin-bottom: 21.333vw;
  }
  .sec02 .inner.reason::before,
  .sec02 .inner.reason::after{
    width: 38.4vw;
    height: 12.533vw;
  }
  .sec02 .inner.reason::before{
    top: -64vw;
  }
  .sec02 .inner.reason::after{
    bottom: -18.667vw;
  }
  .sec02 .num_wrap{
    padding: 0 0 5.333vw;
  }
  .sec02 .num_wrap .sub_ttl{
    font-size: 5vw;
    padding-left: 1.867vw;
  }
  .sec02 .num_wrap .icn_step{
    width: 11.733vw;
  }
  .sec02 .txt_wrap figure{
    margin-bottom: 8vw;
  }
  .sec02 .inner .txt_wrap{
    padding: 0;
  }
  .sec02 .txt_wrap p + p{
    margin-top: 5%;
  }
  .sec02 .board_wrap {
    padding: 1.867vw 1.867vw 2.667vw;
  }
  .sec02 .board_wrap_inner {
    padding: 30px 3% 20px;
  }
  .sec02 .board_wrap_inner::before {
    width: 26.133vw;
    height: 7.467vw;
    top: -2.133vw;
  }
  .sec02 .board_wrap_cont {
    padding: 0 0 5.333vw;
    margin: 0 auto 22px;
    max-width: inherit;
  }
  .sec02 .reason_wrap{
    padding: 0 0 2.667vw;
  }
  .sec02 .reason_wrap .icn_reason{
    width: 12.8vw;
  }
  .sec02 .reason_wrap .sub_ttl{
    font-size: 5.6vw;
    padding-left: 2.667vw !important;
    letter-spacing: -.03em !important;
  }
  .sec02 .img_wrap{
    margin: 0 auto 4.267vw;
    display: block;
  }
  .sec02 .img_wrap img:nth-child(2n){
    margin-top: 3%;
  }
  .sec02 .img_wrap img{
    width: 86%;
  }
  .sec02 .list_dot{
    margin: 3.733vw 0 3.2vw;
  }
  .sec02 .list_dot li{
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .bg_pink{
    border-top: 8px solid #b8a979;
    padding: 13px 0 60px;
  }
  .sec02{
    padding-top: 52px;
  }
  .sec02 .contents_wrap{
    padding: 50px 0 90px;
  }
  .sec02 .inner{
    padding: 0 10px;
    margin-bottom: 90px;
  }
  .sec02 .inner.reason{
    margin-bottom: 160px;
  }
  .sec02 .inner.reason::before,
  .sec02 .inner.reason::after{
    width: 288px;
    height: 93px;
  }
  .sec02 .inner.reason::before{
    top: -480px;
  }
  .sec02 .inner.reason::after{
    bottom: -138px;
  }
  .sec02 .num_wrap{
    padding: 0 15px 42px;
  }
  .sec02 .num_wrap .sub_ttl{
    font-size: 3.6rem;
    padding-left: 15px;
    white-space: nowrap;
  }
  .sec02 .txt_wrap figure{
    margin-bottom: 60px;
  }
  .sec02 .inner .txt_wrap{
    padding: 0 5px;
  }
  .sec02 .txt_wrap p + p{
    margin-top: 30px;
  }
  .sec02 .board_wrap {
    padding: 15px 15px 20px;
  }
  .sec02 .board_wrap_inner {
    padding: 60px 0 42px;
  }
  .sec02 .board_wrap_inner::before {
    width: 196px;
    height: 56px;
    top: -16px;
  }
  .sec02 .board_wrap_cont {
    padding-bottom: 28px;
    margin: 0 auto 38px;
    max-width: 630px;
  }
  .sec02 .reason_wrap{
    padding: 0 0 20px;
    margin-left: -12px;
  }
  .sec02 .reason_wrap .sub_ttl{
    font-size: 4.2rem;
    padding-left: 10px;
    white-space: nowrap;
  }
  .sec02 .reason_wrap .sub_ttl.nrw10{
    padding-left: 6px;
  }
  .sec02 .reason_wrap .sub_ttl.nrw12{
    padding-left: 6px;
  }
  .sec02 .img_wrap{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0 auto 32px;
  }
  .sec02 .img_wrap img:nth-child(2n){
    margin-left: 24px;
  }
  .sec02 .list_dot{
    margin: 28px 0 25px;
  }
  .sec02 .list_dot li{
    font-size: 2.8rem;
  }
}


/* ------------------------------
*  sec03
------------------------------ */
.sec03{
  background: #fff;
  overflow: hidden;
}
.sec03 .sec_ttl{
  background: url("../img/bg_pink.png") repeat;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec03 .sec_ttl .ttl{
  font-family: var(--main_font_gos);
  color: #fff;
  font-weight: 600;
}
.sec03 .name_txt_jp{
  font-family: 'Noto Serif JP', serif;
  font-weight: 600;
  color: #1c1a1a;
  line-height: 1;
}
.sec03 .name_txt_en{
  font-family: var(--main_font_gos);
  font-weight: 500;
  color: #b41961;
  line-height: 1.27;
  letter-spacing: .075em;
}
.sec03 .pos_txt{
  font-family: var(--main_font_gos);
  color:#111;
  line-height: 1.2;
  letter-spacing: .075em;
}
.sec03 .txt_wrap p{
  letter-spacing: -.02em;
}

@media screen and (max-width: 767px) {
  .sec03 .sec_contents{
    padding: 6.133vw 0 8vw;
  }
  .sec03 .sec_ttl{
    height: auto;
    padding: 5% 0;
    border-top: 2px solid #998d2c;
  }
  .sec03 .sec_ttl .ttl{
    font-size: 5.333vw;
  }
  .sec03 .name_wrap{
    margin-bottom: 3.2vw;
  }
  .sec03 .name_txt_jp{
    font-size: 8vw;
  }
  .sec03 .name_txt_en{
    font-size: 4.8vw;
    margin: 1.6vw auto 1.867vw;
  }
  .sec03 .pos_txt{
    font-size: 4vw;
  }
  .sec03 .txt_wrap {
    padding: 10.667vw 2.4vw 0;
  }
  .sec03 .txt_wrap p + p{
    margin-top: 5%;
  }
  .sec03 figure img{
    width: 82.133vw;
  }
}
@media screen and (min-width: 768px) {
  .sec03 .sec_contents{
    padding: 46px 0 72px;
  }
  .sec03 .sec_ttl{
    height: 108px;
    border-top: 4px solid #998d2c;
  }
  .sec03 .sec_ttl .ttl{
    font-size: 4rem;
  }
  .sec03 .name_wrap{
    margin-bottom: 24px;
  }
  .sec03 .name_txt_jp{
    font-size: 6rem;
  }
  .sec03 .name_txt_en{
    font-size: 1.8rem;
    margin: 12px auto 15px;
  }
  .sec03 .pos_txt{
    font-size: 3rem;
  }
  .sec03 .txt_wrap {
    padding: 80px 18px 0;
  }
  .sec03 .txt_wrap p + p{
    margin-top: 30px;
  }
}



/* ------------------------------
*  sec04
------------------------------ */
.sec04{
  background: url("../img/bg_dia.png") repeat;
  overflow: hidden;
}
.sec04 .sec_ttl{
  background: #b41961;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec04 .sec_ttl .ttl{
  line-height: calc(50.58/42);
  font-family: var(--main_font_gos);
  color: #fff;
  font-weight: 600;
}

.sec04 .movie_box{
  text-align: center;
  margin: auto;
}
.sec04 .movie_box .voice_ttl{
  text-align: center;
  color: #b41961;
  font-family: var(--main_font_gos);
  line-height: calc(36/30);
}
.sec04 .movie_box .voice_name{
  text-align: center;
  color: #001111;
  font-family: var(--main_font_gos);
  line-height: calc(36/30);
}
.sec04 .movie_inn{
  width: 100%;
  line-height: 0;
}
.sec04 .movie_inn iframe {
	border: none;
  margin: auto;
}
.sec04 .sub_txt{
  text-align: center;
  font-family: var(--main_font_gos);
  color: #000;
}
@media screen and (max-width: 767px) {
  .sec04{
    border-bottom: 4px solid #fcdaed;
    padding: 0 0 6vw;
  }
  .sec04 + .obi{
    border-top: 4px solid #171717;
    height: 24vw;
  }
  .sec04 .sec_contents{
    padding: 8vw 0;
  }
  .sec04 .sec_ttl{
    height: auto;
    padding: 5% 0;
    border-top: 2px solid #998d2c;
  }
  .sec04 .sec_ttl .ttl{
    font-size:  5vw;
    white-space: nowrap;
  }
  
  .sec04 .movie_box{
    width: 90%;
  }
  .sec04 .movie_box + .movie_box{
    margin-top: 10vw;
  }
  .sec04 .movie_box .voice_ttl{
    margin-bottom: 2.667vw;
    font-size: 4vw;
  }
  .sec04 .movie_box .voice_name{
    margin-bottom: 3.467vw;
    font-size: 4vw;
  }
	.sec04 .movie_inn{
		position: relative;
		padding-top: 55.075%;
    margin: 2.7vw auto 1.5vw;
	}
	.sec04 .movie_inn iframe {
		width: 100% !important;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
  .sec04 .sub_txt{
    font-size: 2.8vw;
  }
  .sec04 .btn{
    margin-top: 10vw;
    width: 100%;
  }
  .sec04 .btn img{
    width: 96%;
  }
}
@media screen and (min-width: 768px) {
  .sec04{
    border-bottom: 9px solid #fcdaed;
  }
  .sec04 + .obi{
    border-top: 9px solid #171717;
    height: 188px;
  }
  .sec04 .sec_contents{
    padding: 58px 0 110px;
  }
  .sec04 .sec_ttl{
    height: 148px;
    border-top: 4px solid #998d2c;
  }
  .sec04 .sec_ttl .ttl{
    font-size: 4.2rem;
  }
  .sec04 .movie_box + .movie_box{
    margin-top: 75px;
  }
  .sec04 .movie_box .voice_ttl{
    margin-bottom: 20px;
    font-size: 3rem;
  }
  .sec04 .movie_box .voice_name{
    margin-bottom: 26px;
    font-size: 3rem;
  }
  .sec04 .movie_inn{
    margin: 0 auto 5px;
  }
  .sec04 .sub_txt{
    font-size: 1.4rem;
  }
  .sec04 .btn{
    margin-top: 80px;
  }
}


/* ------------------------------
*  sec05
------------------------------ */
.sec05{
  background: url("../img/bg_babypink.png") repeat;
  overflow: hidden;
}
.sec05 .ttl{
  font-family: var(--main_font_gos);
  font-weight: 900;
  color: #1c1a1a;
  text-align: center;
  line-height: calc(66.86/47.79);
  transform: skewX(-12deg);
}
.sec05 .btn + .txt_wrap{
  position: relative;
}
.sec05 .btn + .txt_wrap::before{
  position: absolute;
  content: "";
  background: url("../img/img_triangle.png") no-repeat center center /cover;
  left: 50%;
  transform: translateX(-50%);
}
.sec05 .txt_wrap p{
  letter-spacing: -.02em;
}
.sec05 .step_wrap{
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.sec05 .step_wrap dt{
  line-height: calc(55/42);
  color: #111;
  font-weight: 600;
  font-family: var(--main_font_gos);
  text-align: center;
}
.sec05 .step_wrap dt .marker {
  background: linear-gradient(transparent 67%, #ffc800 67%, #ffc800 94%, transparent 94%);
}
.sec05 .step_wrap .icn_step{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: #b41961;
  border-radius: 5px;
}
.sec05 .step_wrap .icn_step span{
  color: #fff;
  font-family: var(--main_font_gos);
  font-weight: 500;
}
.sec05 .apply_ttl{
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: 1px solid #666;
  border-bottom: 1px solid #666;
  width: 100%;
}
.sec05 .apply_ttl span{
  display: inline-block;
  line-height: calc(66.21/42);
  font-weight: 600;
  font-family: var(--main_font_gos);
  letter-spacing: -.025em;
}
@media screen and (max-width: 767px) {
  .sec05{
    padding: 4.533vw 0 5.6vw;
  }
  .sec05 .ttl{
    font-size: 6.373vw;
    margin-bottom: 11.2vw;
  }
  .sec05 .btn + .txt_wrap{
    margin-top: 6.933vw;
    margin-bottom: 25.6vw;
  }
  .sec05 .btn + .txt_wrap::before{
    width: 38.4vw;
    height: 12.4vw;
    bottom: -19.733vw;
  }
  .sec05 .txt_wrap{
    padding: 0 3%;
  }
  .sec05 .txt_wrap p + p{
    margin-top: 5%;
  }
  .sec05 .txt_wrap + .btn{
    margin-top: 5.6vw;
  }
  .sec05 .step_wrap + .step_wrap{
    margin-top: 8.533vw;
  }
  .sec05 .step_wrap + .txt_wrap{
    margin-top: 10.133vw;
  }
  .sec05 .step_wrap dt{
    font-size: 5.6vw;
    margin-bottom: 6.667vw;
  }
  .sec05 .step_wrap img{
    width: 78.4vw;
  }
  .sec05 .step_wrap .icn_step{
    padding: 0.6vw 4vw;
    margin: 0 auto 14px;
  }
  .sec05 .step_wrap .icn_step span{
    font-size: 4.96vw;
  }
  .sec05 .apply_ttl{
    height: auto;
    padding: 3% 0;
    width: 96%;
    margin: 8.533vw auto 5.067vw;
  }
  .sec05 .apply_ttl span{
    font-size: 5.6vw;
  }
}
@media screen and (min-width: 768px) {
  .sec05{
    padding: 34px 0 42px;
  }
  .sec05 .ttl{
    font-size: 4.779rem;
    margin-bottom: 85px;
  }
  .sec05 .btn + .txt_wrap{
    margin-top: 52px;
    margin-bottom: 192px;
  }
  .sec05 .btn + .txt_wrap::before{
    width: 288px;
    height: 93px;
    bottom: -148px;
  }
  .sec05 .txt_wrap{
    padding: 0 12px;
  }
  .sec05 .txt_wrap p + p{
    margin-top: 30px;
  }
  .sec05 .txt_wrap + .btn{
    margin-top: 42px;
  }
  .sec05 .step_wrap + .step_wrap{
    margin-top: 63px;
  }
  .sec05 .step_wrap + .txt_wrap{
    margin-top: 76px;
  }
  .sec05 .step_wrap dt{
    font-size: 4.2rem;
    margin-bottom: 50px;
  }
  .sec05 .step_wrap .icn_step{
    padding: 2px 20px;
    margin: 0 auto 28px;
  }
  .sec05 .step_wrap .icn_step span{
    font-size: 3.72rem;
  }
  .sec05 .apply_ttl{
    height: 72px;
    max-width: 672px;
    margin: 63px auto 38px;
  }
  .sec05 .apply_ttl span{
    font-size: 4.2rem;
  }
}


/* ------------------------------
*  tbl_info
------------------------------ */
.common_seminar_area{
  position: relative;
  margin: 0 auto;
  background: #ffbbc7;
}
.common_seminar_inner{
  position: relative;
  width: 100%;
  margin: auto;
}
.common_seminar_ttl{
  position: relative;
  line-height: 0;
}
.common_seminar_photo{
  position: absolute;
  z-index: 1;
}
.common_seminar_sub_ttl{
  line-height: 0;
}
.common_seminar_inner{
  position: relative;
  width: 100%;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #acacac;
  z-index: 2;
}
.common_seminar_inner > table{
  width: 100%;
}
.common_seminar_inner > table tr{
  display: flex;
}
.common_seminar_inner > table td{
  position: relative;
  line-height: calc(34/26);
  padding-left: 1.2em;
}
.common_seminar_inner > table td:nth-child(1)::before{
  position: absolute;
  content: "●";
  color: #b41961;
  top: 0;
  left: 0;
}
.common_seminar_inner .color_accent{
  color: #ff3333;
  font-weight: bold;
}
.common_seminar_inner .color_filled{
  color: #ff3333;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .common_seminar_area{
    padding-bottom: 3.467vw;
  }
  .common_seminar_photo{
    right: 3.467vw;
    top: -8.8vw;
  }
  .common_seminar_photo img{
    width: 22.933vw;
  }
  .common_seminar_inner{
    width: 97%;
    padding: 6.133vw 0;
  }
  .common_seminar_inner > table{
    width: 92%;
    margin: 0 auto 4.267vw;
  }
  .common_seminar_inner > table td{
    font-size: 4vw;
  }
  .common_seminar_inner > table td:nth-child(2){
    padding-left: 1.333vw;
  }
}
@media screen and (min-width: 768px) {
  .common_seminar_area{
    max-width: 717px;
    padding-bottom: 27px;
  }
  .common_seminar_photo{
    right: 25px;
    top: -67px;
  }
  .common_seminar_inner{
    max-width: 697px;
    padding: 46px 0;
  }
  .common_seminar_inner > table{
    max-width: 615px;
    margin: 0 auto 32px;
  }
  .common_seminar_inner > table td{
    font-size: 2.6rem;
  }
  .common_seminar_inner > table td:nth-child(2){
    padding-left: 10px;
  }
}

/* ------------------------------
*  tbl_info
------------------------------ */
.tbl_info{
  width: 100%;
  margin-bottom: 50px;
  margin: 0 auto;
}
.tbl_info table{
  width: 100%;
  margin: 0 auto;
  pading: 0;
  border: 1px solid #a5a5a5;
  border-collapse: collapse;
}
.tbl_info table th,
.tbl_info table td{
  border: 1px solid #a5a5a5;
  line-height: 1;
  vertical-align: top;
}
.tbl_info table th{
  background-color: #fbdee2;
  font-weight: bold;
  letter-spacing: .07em;
}
.tbl_info table td{
  background: #fff;
}
@media screen and (max-width: 767px) {
  .tbl_info{
    margin-bottom: 6vw;
  }
  .tbl_info table th,
  .tbl_info table td{
    font-size: 4vw;
    padding: 3.8% 2% 3%;
    line-height: 1.2;
  }
  .tbl_info table th{
    width: 30%;
  }
  .tbl_info table td{
    width: 70%;
  }
  .tbl_info table tr:nth-child(-n + 3) td{
    padding-left: 4%;
  }
  .tbl_info table td p + p{
    margin-top: 5%;
  }
}
@media screen and (min-width: 768px) {
  .tbl_info{
    margin-bottom: 60px;
    max-width: 667px;
  }
  .tbl_info table th,
  .tbl_info table td{
    font-size: 2.4rem;
  }
  .tbl_info table th{
    padding: 22px 14px 17px;
    width: 20%;
  }
  .tbl_info table td{
    padding: 22px 20px 17px;
    width: 80%;
  }
  .tbl_info table tr:nth-child(-n + 3) td{
    padding-left: 36px;
  }
  .tbl_info table td p{
    font-size: 2.4rem;
    line-height: 1.24;
  }
  .tbl_info table td p + p{
    margin-top: 25px;
  }
}

/* ------------------------------
*  tbl_online
------------------------------ */
.tbl_online table{
  width: 100%;
  pading: 0;
  border: 1px solid #a5a5a5;
  border-collapse: collapse;
}
.tbl_online table th,
.tbl_online table td{
  border-bottom: 1px solid #a5a5a5;
  line-height: 1.26;
}
.tbl_online table th{
  background-color: #b41961;
  color: #ffffff;
  font-weight: 600;
  text-align: center;
  letter-spacing: .07em;
  font-family: var(--main_font_gos);
}
.tbl_online table th.ptn02{
  background-color: #fff;
  color: #000;
  border-bottom: 3px solid #000;
}
.tbl_online table td{
  margin:0 auto;
  background: #fff;
}
.tbl_online table td:last-of-type{
  text-align: center;
}
.tbl_online .color_accent{
  color: #333;
  font-weight: 400;
}
.tbl_online .color_filled{
  color: #f52764;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .tbl_online{
    margin: 5vw auto;
  }
  .tbl_online table{
    width: 100%;
    margin:0 auto 5vw;
  }
  .tbl_online table td:nth-child(1){
    width: 65%;
  }
  .tbl_online table td:nth-child(2){
    width: 35%;
  }
  .tbl_online table th{
    padding: 3% 2%;
    font-size: 4.8vw;
  }
  .tbl_online table td{
    padding: 3% 2%;
    font-size: 4vw;
  }
  .tbl_online table tr td:nth-of-type(2){
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .tbl_online{
    margin: 0 auto 42px;
  }
  .tbl_online table{
    margin: 0 auto 46px;
    max-width: 667px;
  }
  .tbl_online table th{
    font-size: 3rem;
  }
  .tbl_online table th.ptn02{
    font-size: 3.5rem;
  }
  .tbl_online table td{
    font-size: 2.4rem;
  }
  .tbl_online table td:nth-child(1){
    width: 62%;
  }
  .tbl_online table td:nth-child(2){
    width: 38%;
  }
  .tbl_online table th{
    padding: 10px 0 9px 14px;
  }
  .tbl_online table td{
    padding: 12px 0 10px 14px;
  }
}


/* ------------------------------
*  contact_form
------------------------------ */
.contact_form{
  background: url("../img/bg_babypink.png") repeat;
}
.contact_form .sec_ttl{
  background: #b41961;
  display: flex;
  justify-content: center;
  align-items: center;
}
.contact_form .sec_ttl .ttl{
  line-height: calc(50.58/42);
  font-family: var(--main_font_gos);
  color: #fff;
  font-weight: 600;
}
.contact_form .inner{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.contact_form .inner p{
  line-height: calc(28/18);
}

.contact_form .form_wrap table{
  width: 100%;
  max-width: 667px;
  margin: 0 auto;
}
.contact_form .form_wrap th,
.contact_form .form_wrap td{
  position: relative;
  display: block;
  line-height: 1;
  vertical-align: middle;
}
.contact_form .form_wrap tr:last-of-type td{
  margin-bottom: 0;
}
.contact_form .form_wrap input[type="text"],
.contact_form .form_wrap select,
.contact_form .form_wrap textarea{
  border: 1px solid #cccccc;
  background: #f6f6f6;
  width: 100% !important;
}
.contact_form .form_wrap input[type="text"]{
  padding: .5em .8em;
}
.contact_form .form_wrap select{
  padding: .6em 1.2em .5em;
}
.contact_form .form_wrap .select_element{
  position: relative;
}
.contact_form .form_wrap .select_element::before{
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #111111 transparent transparent transparent;
  top: 1.4em;
  z-index: 100;
}
.contact_form .form_wrap th .required{
  display: inline-block;
  background: #222222;
  color: #fff;
  font-weight: 600;
  text-align: center;
  line-height: 1;
  position: relative;
}
.contact_form .form_wrap textarea{
  padding: .5em .8em;
}
.contact_form .form_wrap ::placeholder{
  padding: .5em .5em;
}

/* submit */
.contact_form .submit_btn{
  text-align: center;
}
.contact_form .submit_btn button{
  margin: auto;
  background: url("../img/btn_apply.png") no-repeat top center /cover;
  cursor: pointer;
	transition: opacity 0.3s ease-out;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
.contact_form .submit_btn button:hover{
  opacity: .7;
}

  /* 名前 2カラム */
  .contact_form .form_wrap .formtable_inner{
    display: flex;
    justify-content: space-between;
  }
  .contact_form .form_wrap .formtable_inner .col2{
    width: 48.5%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  .contact_form .form_wrap .formtable_inner .col2 input{
    flex: 1;
  }


@media screen and (max-width: 767px) {
  .contact_form .wrap{
    padding: 14vw 0 6vw;
  }
  .contact_form .sec_ttl{
    height: auto;
    padding: 5% 0;
    border-top: 2px solid #998d2c;
  }
  .contact_form .sec_ttl .ttl{
    font-size: 5.6vw;
  }
  .contact_form .common_seminar_ttl{
    margin-bottom: 1.333vw;
  }
  .contact_form .common_seminar_inner{
    padding: 3.2vw 1.5% 8.267vw;
  }
  .contact_form .inner{
    width: 100%;
  }
  .contact_form .inner p{
    font-size: 3.8vw;
    padding: 0;
  }
  
  .contact_form .form_wrap{
    margin-top: 8vw;
  }
  .contact_form .form_wrap th{
    margin-bottom: 1.333vw;
    font-size: 4vw;
  }
  .contact_form .form_wrap td{
    margin-bottom: 5.333vw;
    font-size: 4vw;
  }
  .contact_form .form_wrap .type01 th{
    margin-bottom: 4vw;
  }
  .contact_form .form_wrap .type01 td{
    margin-bottom: 9.6vw;
  }
  .contact_form .form_wrap input[type="text"],
  .contact_form .form_wrap select,
  .contact_form .form_wrap textarea{
    height: 10.667vw;
    font-size: 3.6vw;
  }
  .contact_form .form_wrap .select_element::before{
    border-width: 1.867vw 1.067vw 0 1.067vw;
    right: 2.667vw;
    top: 1.2em;
  }
  .contact_form .form_wrap th .required{
    font-size: 3vw;
    padding: 0.8vw 2.133vw;
    top: -0.533vw;
    left: 1.333vw;
    margin-right: 2.667vw;
  }
  .contact_form .form_wrap th .sm{
    font-size: 3.2vw;
  }
  .contact_form .form_wrap textarea{
    height: 26.667vw;
  }
  .contact_form .form_wrap input[type="checkbox"]{
    width: 4.267vw;
    height: 4.267vw;
    margin-right: 2.133vw;
  }
  .contact_form .submit_btn{
    width: 100%;
    margin: 5vw auto 0;
  }
  /* submit */
  .contact_form .submit_btn button{
    width: 88.533vw;
    aspect-ratio: 684 / 113;
  }
  
  /* 名前 2カラム */
  .contact_form .form_wrap .formtable_inner .col2 p{
    font-size: 4vw;
  }
  .contact_form .form_wrap .formtable_inner .col2 input{
    margin-left: 2%;
  }  
}
@media screen and (min-width: 768px) {
  .contact_form .wrap{
    padding: 99px 0 131px;
  }
  .contact_form .sec_ttl{
    height: 148px;
    border-top: 4px solid #998d2c;
  }
  .contact_form .sec_ttl .ttl{
    font-size: 4.2rem;
  }
  .contact_form .common_seminar_ttl{
    margin-bottom: 10px;
  }
  .contact_form .common_seminar_inner{
    padding: 25px 0 63px;
  }
  .contact_form .inner{
    max-width: 667px;
  }
  .contact_form .inner p{
    font-size: 1.8rem;
    padding: 0 5px;
  }

  .contact_form .form_wrap{
    margin-top: 32px;
  }
  .contact_form .form_wrap th{
    margin-bottom: 11px;
    font-size: 2.5rem;
  }
  .contact_form .form_wrap td{
    margin-bottom: 35px;
    font-size: 2.5rem;
  }
  .contact_form .form_wrap .type01 th{
    margin-bottom: 30px;
  }
  .contact_form .form_wrap .type01 td{
    margin-bottom: 76px;
  }
  
  .contact_form .form_wrap input[type="text"],
  .contact_form .form_wrap select,
  .contact_form .form_wrap textarea{
    height: 77px;
    font-size: 2.4rem;
  }
  .contact_form .form_wrap .select_element::before{
    border-width: 10px 6px 0 6px;
    right: 18px;
  }
  .contact_form .form_wrap th .required{
    font-size: 1.2rem;
    padding: 4px 12px;
    top: -3px;
    left: 10px;
    margin-right: 20px;
  }
  .contact_form .form_wrap th .sm{
    font-size: 1.6rem;
  }
  .contact_form .form_wrap textarea{
    height: 160px;
  }
  .contact_form .form_wrap input[type="checkbox"]{
    width: 20px;
    height: 20px;
    margin-right: 10px;
  }
  .contact_form .submit_btn{
    margin: 64px auto 0;
  }
  
  /* submit */
  .contact_form .submit_btn button{
    width: 684px;
    height: 113px;
  }
  
  /* 名前 2カラム */
  .contact_form .form_wrap .formtable_inner .col2 p{
    font-size: 2.5rem;
  }
  .contact_form .form_wrap .formtable_inner .col2 input{
    margin-left: 8px;
  }
}


/* ------------------------------
*  privacy
------------------------------ */
.privacy {
	max-width: 660px;
	width: 100%;
	height: 268px;
	padding: 3% 3% 3% 1%;
	margin: 53px auto 31px;
	overflow: hidden;
	overflow-y: scroll;
	background: #fff;
	border: 1px solid #ccc;
}
.privacy p,
.privacy a,
.privacy dt,
.privacy dd,
.privacy li{
	font-size: 1.87rem !important;
	line-height: 1.4;
}
.privacy > p:first-child{
  font-weight: 600;
}
.privacy dl{
  margin-top: 12px;
}
.privacy dt{
  font-weight: bold;
  margin-bottom: 5px;
}
.privacy p + p,
.privacy li + li,
.privacy p + ol,
.privacy ol > li > ol{
  margin-top: 10px;
}
.privacy ol li{
  list-style-type: decimal;
  margin-left: 1.5em;
}
@media screen and (max-width: 767px) {
  .privacy {
    width: 100%;
    height: 28vw;
    margin: 7% auto 4%;
  }
  .privacy p,
  .privacy a,
  .privacy dt,
  .privacy dd,
  .privacy li {
    font-size: 3.2vw !important;
  }
}


	/* ------------------------------
	*  thanks
	------------------------------ */
.thanks{
  background: #fff;
}
.thanksWrap{
  padding-bottom: 100px;
}
.thanksWrap .contents_box01{
	padding: 50px 0;
  max-width: 1000px;
  margin: auto;
}
.thanksWrap .contents_box01 .contents_wrap{
	padding: 3em 0;
  margin: 0 auto 2em;
}
.thanksWrap .contents_title{
  background: #B41961;
	font-size: 5rem;
  font-weight: 600;
  padding: .5em 0;
  color: #fff;
  font-family: var(--main_font_gos);
}
.thanksWrap .ttl{
	font-weight: bold;
	font-size: 3rem;
  color: #111;
	text-align: center;
  font-family: var(--main_font_gos);
  margin-bottom: 1em;
}
.thanksWrap .txt_wrap{
	padding: 0 40px;
	margin: 40px 0;
}
.thanksWrap p{
  line-height: 1.6;
  word-break: break-all;
}
.thanksWrap p > a{
  color: #0066cc;
}
.thanksWrap p + p{
  margin-top: 25px;
}
.thanksWrap .btn{
	width: 300px;
	text-align: center;
	margin: 60px auto 0;
}
.thanksWrap .btn a{
	display: block;
	background: #139b16;
  font-family: var(--main_font_gos);
  font-weight: 600;
	color: #fff;
	line-height: 1.0;
	font-size: 1.8rem;
	border-radius: 9999px;
	padding: 1em 0;
	transition: 0.3s;
}
.thanksWrap .notes_wrap{
  background: #e7e7e7;
  padding: 1em;
  margin: 1em auto;
}

@media screen and (max-width: 767px) {
.thanksWrap{
  padding-bottom: 15%;
}
  .thanksWrap .contents_box01{
    padding: 8% 0;
  }
  .thanksWrap .contents_box01 .contents_wrap{
    padding: 1.6em 0 2.6em;
    width: 90% !important;
  }
  .thanksWrap .contents_title{
    font-size: 9.2vw;
  }
	.thanksWrap .contents_box01 .txt{
		width: 100%!important;
		text-align: justify;
		margin: 5% auto 8%;
    padding:0 20px;
	}
	.thanksWrap .ttl{
		font-size: 6.8vw;
    line-height: 1.2;
		margin-bottom: 1em;
	}
  .thanksWrap .txt_wrap{
    padding: 0 5%;
    margin: 5% 0 0;
  }
  .thanksWrap p + p{
    margin-top: 5%;
  }
	.thanksWrap .btn{
		width: 92%;
    margin-top: 8%;
	}
	.thanksWrap .btn a{
		font-size: 1.6rem;
	}
}



/* ------------------------------
*  fixbtn
------------------------------ */
.fixbtn{
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    padding: 10px 0;
    max-width: 100%;
    z-index: 10;
}
.fixbtn img{
    max-width:100%;
    margin: 0 auto;
}

@media screen and (max-width : 767px){
  .fixbtn{
    padding: 3% 0;
  }
  .fixbtn img{
    max-width: 88.6%;
  }
}


/*--エラー用--*/
p.error{
	font-weight: 600;
	color: #ed1c24;
	font-size: 1.4rem !important;
	margin-top: 5px;
}
.form_wrap .col2 .error{
  width: 100%;
}

@media screen and (max-width: 767px) {
	/*--エラー用--*/
	p.error{
		font-size: 3vw !important;
		margin-top: 1vw;
	}
}