/* html  */
*	{margin:0;padding:0;border:0;/*box-sizing:border-box;*/}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html,body{
	font-size:1.00em;line-height:1.8em;
	font-family: 'Quicksand', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo,
	"ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	-webkit-text-size-adjust:none;font-feature-settings : "palt";}
body	{
	min-width:1000px;background-position:center top;color:#000;}

@media all and (-ms-high-contrast:none) {
body{
	font-family: 'メイリオ', Meiryo, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro",
	"ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-weight:normal !important;}
}

ul,li	{list-style:none;}

img{
	margin:0;
	padding:0;
	vertical-align:bottom;}
img.w{
	width:auto;
}

/* font  */
.txt_s	{font-size:0.88em;line-height:1.8em;font-weight:bold;}
.txt	{font-size:1.00em;line-height:1.8em;}
.txt_bs	{font-size:1.14em;line-height:1.6em;}
.txt_b	{font-size:1.33em;line-height:1.8em;}
.txt_m	{font-size:1.53em;line-height:1.6em;}
.txt_t	{font-size:1.73em;line-height:1.6em;}
.txt_p	{font-size:2.33em;line-height:1.6em;}

.txt_n	{font-size:0.94em !important;line-height:1.8em;}
.txt_gm	{font-size:0.94em !important;line-height:1.5em !important;}

.t_bold		{font-weight:bold;}
.t_center	{text-align:center !important;}
.t_right	{text-align:right !important;}
.t_left		{text-align:left !important;}

.t_red		{color:#f00000;}
.t_white	{color:#fff;}
.t_brown	{color:#946134;}
.t_blue		{color:#0064ae;} /*#036eb8;*/
.t_purple	{color:#b44c94;}
.t_green	{color:#00853c;}

.indent		{text-indent:-1em;padding-left:1em;}
.indent1	{text-indent:-0.5em;padding-left:0.5em;}

.t_line		{text-decoration:line-through;}

/* link  */
a{
	color:#000 !important;
	opacity:1.0;
	transition: 0.5s ease-in-out;
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	text-decoration:underline;}

a:hover,a:focus{
	opacity:0.6;
	color:#000 !important;
	text-decoration:none;}

/* clear  */
.cf:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;}

.sp	{display:none;}

@media screen and (max-width:640px) {
body	{min-width:100%}
.pc	{display:none;}
.sp	{display:inline;}
img.w	{width:100%;}
}

h2	{margin-bottom:0;text-align:center;}
p	{margin-bottom:0;line-height:1.8rem !important;}


/*--------------------
/* class container
/*--------------------*/
.container{
	/*width:960px;*/
	width:100%;
	margin:0 auto;
	padding:0;
	box-sizing:border-box;}

@media screen and (max-width:640px) {
.container{
	width:100%;
	padding:0 15px;
	box-sizing:border-box;}
}

/*--------------------
/* class header
/*--------------------*/
.header{
	width:960px;
	margin:0 auto;
	padding:0;
	box-sizing:border-box;}

@media screen and (max-width:640px) {
.header{
	width:100%;}

h1 img	{padding-left:0;}

}

/*--------------------
/* class box
/*--------------------*/
.box{
	width:960px;
	margin:0 auto;
	padding:0;
	box-sizing:border-box;}

.box dl{
	margin-bottom:1.5em;}

.box dt{
	float:left;
	width:190px;}

.box dd{
	margin-left:220px;
	margin-bottom:0.5em;}

.box dl.youkou{
	background:none;}

.box dl.youkou dt{
	width:220px;
	padding:20px;
	border-top:1px solid #000;
	border-bottom:none;
	background:none;
	box-sizing:border-box;
	font-weight:normal;
	color:#000;}

.box dl.youkou dd{
	width:740px !important;
	margin-left:0px;
	margin-bottom:0;
	padding:20px;
	border-top:1px solid #000;
	border-left:1px solid #000;
	border-bottom:none;
	box-sizing:border-box;
	background:none;}

.box dl.chui{
	background:none;}

.box dl.chui dt{
	width:90px;
	padding:0;
	border-top:none;
	border-bottom:none;
	background:none;
	box-sizing:border-box;
	font-weight:normal;
	color:#000;}

.box dl.chui dd{
	width:830px !important;
	margin-left:20px;
	margin-bottom:0;
	padding:0;
	border-top:none;
	border-left:none;
	border-bottom:none;
	box-sizing:border-box;
	background:none;}

h2.bunkatsu{
	width:100%;
	background:#d92f67;
	padding:20px 0;
	margin:0 auto 30px;
	font-size:1em;
	line-height:1em;
	text-align:center;
	border-radius:10px;}

h3	{
	margin-top:30px;
	color:#009944;}

h3 span.line
	{color:#000;border-bottom:3px solid #ff0;}

.num_1{
	padding-left:2em;
	background:url(../img/num_1.png) left top no-repeat;}

.num_2{
	padding-left:2em;
	background:url(../img/num_2.png) left top no-repeat;}

.num_3{
	padding-left:2em;
	background:url(../img/num_3.png) left top no-repeat;}

.flex.column2 > div {
    width: 460px;}

.button a{
    color:#fff !important;}

.choice ul li{
	float:left;
	width:347px;
	margin-right:10px;
	padding-right:10px;
	border-right:2px dotted #f00;
	box-sizing:border-box;}

.choice ul.nitty li{
	border-right:2px dotted #f00;}

.choice ul.senty li{
	border-right:2px dotted #009fe8;}

.choice ul.renty li{
	border-right:2px dotted #f7b400;}

.choice ul li:first-child{
	width:246px;}

.choice ul li:last-child{
	margin-right:0;}

.choice ul li img{
	width:100%;}

ul.riyou{
	}

ul.riyou li{
	float:left;
	width:470px;
	margin:0 20px 0 0;
	padding:0;
	border:none;
	box-sizing:border-box;}

ul.riyou.kei li{
	float:left;
	width:470px;
	margin:0 20px 0 0;
	padding:20px;
	border:2px solid #009944;
	border-radius:10px;
	box-sizing:border-box;}

ul.riyou li:last-child{
	margin:0;}

ul.riyou li img{
	width:100%;}

.kaisuhyo img.w{
	width:100%;
	vertical-align:bottom;}


@media screen and (max-width:640px) {

h2.bunkatsu{
	width:100%;
	margin:0 auto 20px !important;
	padding:10px 20px;
	box-sizing:border-box;}

.box{
	width:100%;}

.box dt{
	float:none;
	width:100%;
	margin-bottom:15px;}

.box dd{
	margin-left:0;}

.box dl.youkou dt{
	width:100%;
	margin-bottom:0;
	padding:8px;
	border-top:1px solid #000;
	background:#f0f0f0;
	box-sizing:border-box;}

.box dl.youkou dd{
	margin-left:0px;
	margin-bottom:0;
	padding:8px;
	border-top:1px solid #000;
	border-left:none;
	box-sizing:border-box;}

.box dl.chui{
	background:none;}

.box dl.chui dt{
	width:100%;
	padding:0;
	border-top:none;
	border-bottom:none;
	background:none;
	box-sizing:border-box;
	font-weight:normal;
	color:#000;}

.box dl.chui dd{
	width:100% !important;
	margin-left:0;
	margin-bottom:0;
	padding:0;
	border-top:none;
	border-left:none;
	border-bottom:none;
	box-sizing:border-box;
	background:none;}

.choice ul li{
	float:none;
	width:100%;
	margin-right:0;
	padding-right:0;
	border-right:none;
	margin-bottom:10px;
	padding-bottom:10px;
	box-sizing:border-box;}

.choice ul.nitty li{
	border-right:none;
	border-bottom:2px dotted #f00;}

.choice ul.senty li{
	border-right:none;
	border-bottom:2px dotted #009fe8;}

.choice ul.renty li{
	border-right:none;
	border-bottom:2px dotted #f7b400;}

.choice ul li:first-child{
	width:100%;}

.choice ul li:last-child{
	margin-right:0;}

ul.riyou{
	}

ul.riyou li{
	float:none;
	width:100%;
	margin:0 0 20px 0;}

ul.riyou li:last-child{
	margin:0;}

ul.riyou.kei li{
	float:none;
	width:100%;
	margin:0 0 20px 0;}

ul.riyou.kei li:last-child{
	margin:0;}

.kaisuhyo{
	overflow-x:scroll;}
}

.footer{
	background:#f0f0f0;}

.footer ul{
	padding:40px 0 0;}

.footer ul.btm{
	padding:0 0 40px;
	border-bottom:1px solid #c9caca;}

.footer li{
	display:inline-block;
	margin-right:1em;}

.footer li:last-child{
	margin-right:0;}

@media screen and (max-width:640px) {
.footer ul{
	padding:20px 0 0;}

.footer ul.btm{
	padding:0 0 20px;}
}


table{
	}


table th,
table td{
	padding:10px;
	font-size:0.8em;
	line-height:1.5em;
	text-align:center;
	vertical-align:middle;
	font-weight:bold;
	white-space:nowrap;}

@media screen and (max-width:640px) {
.hyo{	overflow: scroll;}
h2{	line-height:1em;}
}



.bunkatsu_l{
	float:left;
	width:180px;}

.bunkatsu_r{
	float:right;
	width:760px;}

dl.bunkatsu {
	display:block;
	width:100%;
	height:auto;
	background:none;}

dl.bunkatsu dt {
	float:left;
	width:250px;
	padding:0;
	font-weight: bold;
	background:none;
	border:none;}

dl.bunkatsu dd {
	width:auto;
	margin:0 0 0 250px;
	padding:0;
	line-height:1.5em;
	background:none;
	border:none;
	box-sizing:border-box;}

.lgreen_back{
	background:#f2ecdc;
	border-radius:20px;
	box-sizing:border-box;}

.lgreen_back .flex.column2 > div{
	width:420px;}

.lgreen_back .ml40{
	margin-left:40px;}

@media screen and (max-width:640px) {
.bunkatsu_l{
	float:none;
	margin:0 0 15px;
	width:100%;}

.bunkatsu_l h2.bunkatsu_title{
	width:100%;
	margin:0;
	padding:15px 0;
	font-size:1em;
	background:#45b035;}

.bunkatsu_r{
	float:none;
	width:100%;}

dl.bunkatsu {
	display:block;
	width:100%;
	height:auto;
	background:none;}

dl.bunkatsu dt {
	float:none;
	width:100%;
	margin:0 0 5px;
	padding:0;
	font-weight: bold;
	background:none;
	border:none;
	text-align:center;}

dl.bunkatsu dt img{
	margin:0 auto;}

dl.bunkatsu dd {
	width:auto;
	margin:0;
	padding:0;
	line-height:1.5em;
	background:none;
	border:none;
	box-sizing:border-box;}

dl.bunkatsu dd.top {
	margin:0 0 15px;
	padding:0 0 10px;
	border-bottom:1px dotted #c9caca;}

dl.nb {
	margin-bottom:0;}

dl.nb dd{
	border-bottom:none;}

div.bb {
	padding-bottom:5px !important;
	margin-bottom:20px !important;
	border-bottom:1px solid #c9caca;}

.lgreen_back .flex.column2 > div{
	width:90%;
	margin:0 auto;}

.lgreen_back .ml40{
	margin-left:0;}

.lgreen_back p.ml20{
	margin-left:20px;}
}

@media screen and (max-width:640px) {
dl#answer,
dl#bunkatsu{
	background:none !important;}

dl#answer dt,
dl#bunkatsu dt.acc{
	display:block;
	margin:0 !important;
	padding:0 !important;
	background:none !important;
	border:none !important;}

dl#answer dd,
dl#bunkatsu dd.acc{
	display:none;
	margin:0 !important;
	padding:0 !important;
	background:none !important;
	border:none !important;}
}


/*
------------------------------------------------------------------------------------------------

水色：69D4EA
薄桃：FFDFF0
黄色：FFEC00
薄ベージュFFFDE5
蛍光ピンク：ff2191
蛍光グリーン：00c600
蛍光ブルー：23a8d2

*/

.indent{
/*	font-size:0.9em;*/
}

.box{
	text-align:center;
}
.box h2 .icon{
	display:block;
	margin:0 auto 30px;
}

.gift{
	padding:20px;
	background:#ffffff;
}

.box.main_image{
	background:#91D3E9;
	width:100%;
	text-align:center;
	position:relative;
	margin-bottom:60px;
	padding-bottom:150px;
	overflow:hidden;
}.box.main_image:after{
	content:"";
	position:absolute;
	display:block;
	width:100%;
	height:101px;
	background-image:url('../img/wave_bottom_w.png');
    background-repeat: no-repeat;
    background-size: contain;
	background-position:bottom;
	left:0;	bottom:0;
	z-index:2;
    transform: translateY(2px);
	pointer-events: none;
}.box.main_image .main_back{
	position:absolute;
    top: -17px;
    left: 50%;
    transform: translateX(-50%);
	pointer-events: none;
}

.box.main_image .main_card{
	width:fit-content;
	margin:0 auto;
	padding:40px;
	background:#FFDFF0;
	border:2px solid #000000;
	border-radius:20px;
	transform: translateY(-35px);
}
.box.main_image .main_card h2{
	width:780px;
}


.box.main_image .card_naiyou{
	display:inline-flex;
	margin-top:20px;
	margin-bottom:20px;
	justify-content: space-between;
	width:100%;
}
.box.main_image .card_naiyou .card_box{
	border:2px solid #000000;
	border-radius:10px;
	background:#FFEC00;
	width:45%;
	padding:25px 0;
	display: flex;
    align-items: center;
    justify-content: center;
}.box.main_image .card_naiyou .sarani{
	position:relative;
	font-size:1.15em;
	font-weight:bold;
	padding-top:20px;
}.box.main_image .card_naiyou .sarani img.plas{
	position:absolute;
	top:50%;	left:50%;
    transform: translate(-50%, -50%);
	width:80%;
}.box.main_image .card_naiyou .card_box p{
	font-size:2em;
	font-weight:bold;
}.box.main_image .card_naiyou .card_box p img{
	display:inline-block;
}.box.main_image .card_naiyou .card_box.mini p{
	font-size:1.7em;
}.box.main_image .card_naiyou .card_box.mini p span{
	font-size:0.8em;
}.box.main_image .card_naiyou .card_box.mini p img{
	display:inline-block;
}



.kokoii_list{
	margin-top:160px;
}
.kokoii_list .kokoii_box{
	width:100%;
	background:#FFFDE5;
	border-radius:20px;
	position:relative;
	padding:80px 80px 50px;
	margin-bottom:130px;
}

.kokoii_list .kokoii_box.kokoii_01{	border:2px solid #ff2191;	}
.kokoii_list .kokoii_box.kokoii_02{	border:2px solid #00c600;	}
.kokoii_list .kokoii_box.kokoii_03{	border:2px solid #23a8d2;	}

.kokoii_list .kokoii_human{
	position:absolute;
	top:-105px;
    z-index: -1;
}
.kokoii_list .kokoii_01 .kokoii_human{	left:160px;	}
.kokoii_list .kokoii_02 .kokoii_human{	right:130px;	left:unset;	}
.kokoii_list .kokoii_03 .kokoii_human{	left:160px;	}

.kokoii_list .kokoii{
	position:absolute;
	left:50%;	top:-10px;
    transform: translate(-50%, -50%);
	color:#ffffff;
	padding: 30px 20px 10px;
	font-weight:bold;
	background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.kokoii_list .kokoii span{	font-size:2em;	}
.kokoii_list .kokoii_01 .kokoii{	background-image:url('../img/icon_cat1.svg');	}
.kokoii_list .kokoii_02 .kokoii{	background-image:url('../img/icon_cat2.svg');	}
.kokoii_list .kokoii_03 .kokoii{	background-image:url('../img/icon_cat3.svg');	}

.kokoii_list h3{
	font-size:2.7em;
	margin:0 auto;
	font-weight:bold;
}
.kokoii_list .kokoii_01 h3{	color:#ff2191;	}
.kokoii_list .kokoii_02 h3{	color:#00c600;	}
.kokoii_list .kokoii_03 h3{	color:#23a8d2;	}


.kokoii_list .backcolor{
	background:#00c600;
	color:#ffffff;
	font-size:2.6em;
	font-weight:bold;
	padding:4px 25px 3px;
	display:inline-block;
	line-height: 1.4;
	margin:20px auto;
}
.kokoii_list .kokoii_02 h4{
	background:#00c600;
	color:#ffffff;
	font-size:1.7em;
	font-weight:bold;
	border-radius:100px;
	padding:4px 0 3px;
	line-height: 1.4;
}
.kokoii_list .ltext{
	font-size:1.3em;
	font-weight:bold;
}.kokoii_list .ltext span{
	font-size:0.8em;
}
.kokoii_list ul.point_bornasu_list{
	margin-top:40px;
	margin-bottom:30px;
	display:flex;
    justify-content: space-between;
}.kokoii_list ul.point_bornasu_list li{
	width:22%;
}.kokoii_list ul.point_bornasu_list li .price{
	border-radius:10px;
	padding:15px 0;
	background:#05E37A;
	font-size:1.15em;
	font-weight:bold;
}.kokoii_list ul.point_bornasu_list li .point{
	border-radius:10px;
	padding:20px 0 15px;
	background:#00c600;
	color:#ffffff;
	font-size:1.3em;
	font-weight:bold;
	margin-top:40px;
	position:relative;
}.kokoii_list ul.point_bornasu_list li .point:before{
	content:"";
	position:absolute;
	top: -30px;   	left: 50%;
    width: 15px;    height: 15px;
    transform: translateX(-50%) rotate(135deg);
    border-right: 3px solid #000000;
    border-top: 3px solid #000000;
}

.kokoii_list .point_box_list{
	margin-top:50px;
	display:flex;
    justify-content: space-between;
}.kokoii_list .point_box_list .point_box{
	width:31%;
	background:#CDF6D9;
	border-radius:15px;
	padding:22px;
	text-align:left;
	display: flex;
	flex-direction: column;
}.kokoii_list .point_box_list .point_box .point_title{
	text-align:center;
	height:90px;
	display: flex;
    align-items: center;
    justify-content: center;
	font-weight:bold;
	font-size:1.2em;
}.kokoii_list .point_box_list .point_box .point_title span{
	color:#00c600;
	font-size:1.3em;
}.kokoii_list .point_box_list .point_box .img_area{
	height:105px;
	display: flex;
    align-items: center;
    justify-content: center;
}


.kokoii_list .service_list{
	display:flex;
	flex-wrap:wrap;
    justify-content: space-between;
	width:100%;
	margin-top:50px;
}

.kokoii_list .service_list .service_box{
	border:1px solid #23a8d2;
	width:32%;
	background:#ffffff;
	text-align:left;
	padding-bottom:20px;
	display: flex;
	flex-direction: column;
}
.kokoii_list .service_list .service_box h4{
	background:#23a8d2;
	margin:0 0 20px;
	color:#ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
	height:90px;
	font-size:1.7em;
	text-align:center;
	font-weight:600;
}.kokoii_list .service_list .service_box h4 span{
	font-size:0.7em;
}
.kokoii_list .service_list .service_box p{
	margin:0 15px;
}.kokoii_list .service_list .service_box.wd p{
	margin:0 30px;
}
.kokoii_list .service_list .service_box .img_area{
	width:100%;
	display: flex;
    align-items: flex-start;
    justify-content: center;
	flex-wrap:wrap;
	height:105px;
	margin-bottom:15px;
}.kokoii_list .service_list .service_box .img_area img{
	display:inline-block;
	margin:0 auto
}.kokoii_list .service_list .service_box .img_area .free_fee{
	display:inline-block;
	background:#ffeb00;
	border:2px solid #000000;
	padding:3px 10px 2px;
	font-size:1.15em;
	font-weight:bold;
}
.kokoii_list .service_list .service_box.wd .img_area{
	height:230px;
}

.kokoii_list .service_list .service_box.wd{
	width:100%;
	margin-top:20px;
}

.service_box.wd ul.wd_service_list{
	display:flex;
    justify-content: space-between;
}
.service_box.wd ul.wd_service_list li{
	display: flex;
	flex-direction: column;
	border-right:1px solid #000000;
}.service_box.wd ul.wd_service_list li:last-child{
	border-right:none;
}

.box_bottom{
	margin-top:auto;
	text-align:center;
}
.box_bottom a{
/*	display:inline-block;*/
	border-radius:50px;
	width:200px;
	color:#ffffff !important;
	background:#23a8d2;
	font-weight:bold;
	font-size:1.15em;
	text-decoration:none;
/*	text-align:center;*/
	margin:7px auto 0;
	padding:5px 0 4px;
	padding-right:7px;
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
}.box_bottom a:after{
	content:"";
	position:absolute;
	top: 50%;
    right: 25px;
    width: 12px;
    height: 12px;
    transform: translateY(-50%) rotate(45deg);
    border-right: 3px solid #ffffff;
    border-top: 3px solid #ffffff;
}.box_bottom a sup{
	font-size:0.5em;
}.box_bottom a sup.flex-sup {
  display: flex;
  align-items: start; /* Flex項目を上方に揃える */
  font-size: smaller;
  position: relative;
	font-size:0.5em;
  top: -0.5em; /* 必要に応じて調整 */
}




.campaign_ou{
	background:#91D3E9;
	width:100%;
	text-align:center;
	position:relative;
	margin-top:150px;
	margin-bottom:150px;
	padding-top:60px;
	padding-bottom:150px;
    overflow: hidden;
}.campaign_ou:before,
.campaign_ou:after{
	content:"";
	position:absolute;
	display:block;
	width:100%;
	height:101px;
	background-image:url('../img/wave_top_w.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top;
	left:0;	top:0;
	z-index:2;
    transform: translateY(-2px);
	pointer-events: none;
}.campaign_ou:after{
	background-image:url('../img/wave_bottom_w.png');
    background-position: bottom;
	top:unset;	bottom:0;
    transform: translateY(2px);
}
.box.campaign_in h2{
	position:relative;
	padding-top:100px;
}.box.campaign_in h2 .sakura{
	position:absolute;
	left:50%;
	top:0;
    transform: translateX(-50%);
	pointer-events: none;
}
.campaign_list{
	display:flex;
	justify-content: space-between;
	margin-top:100px;
}.campaign_list .campaign_box{
	width:48%;
	position:relative;
	border:2px solid #000000;
	border-radius:15px;
	background:#ffffff;
	padding:60px 40px;
}.campaign_list .campaign_box .campaign_tab{
	position:absolute;
	top:-2px;	left:50%;
	transform: translateX(-50%) translateY(-50%);
	background:#ffeb00;
	border:2px solid #000000;
	border-radius:50px;
	font-size:1.3em;
	font-weight:bold;
	width:240px;
	padding:4px 0 3px;
	text-align:center;
}.campaign_list .campaign_box p{
	text-align:left;
}.campaign_list .campaign_box .campaign_title{
	font-size:1.9em;
	font-weight:bold;
	line-height:1.3;
	margin-bottom:20px;
}.campaign_list .campaign_box .campaign_title span{
	font-size:0.8em;
}.campaign_list .campaign_box .campaign_title img{
	width:100%;
	height:auto;
}
.campaign_list .campaign_box .date_area{
	display:flex;
	font-weight:bold;
}.campaign_list .campaign_box .date_area .title_block{
	background:#000000;
	color:#ffffff;
	line-height:1.1;
	width:30%;
	display: flex;
    align-items: center;
    justify-content: center;
	margin-right:15px;
}.campaign_list .campaign_box .date_area .date_block{
	text-align:left;
	font-size:1.2em;
}


.join_box_list{
	display:flex;
	margin-top:90px;
	justify-content: space-between;
}
.join_box_list .join_box{
	border:2px solid #00c600;
	border-radius:15px;
	background:#FFFDE5;
	width:30%;
	position:relative;
	padding:70px 30px 30px;
	text-align:left;
}
.join_box_list .join_box .step{
	position:absolute;
	text-align:center;
	top:-3px;	left:50%;
	height:85px;	width:85px;
	border-radius:50%;
	background:#00c600;
	color:#ffffff;
	transform: translateX(-50%) translateY(-50%);
	display: flex;
    align-items: center;
    justify-content: center;
	font-weight:bold;
	font-size:2em;
}.join_box_list .join_box .step span{
	border-bottom:1px solid #ffffff;
	font-size:0.5em;
}.join_box_list .join_box .step div{
	margin-top:-5px;
}
.join_box_list .join_box .img_area{
	height:110px;
	display: flex;
    align-items: center;
    justify-content: center;
}
.join_box_list .join_box .join_title{
	color:#00c600;
	font-size:1.7em;
	font-weight:bold;
	text-align:center;
	margin:30px 0;
}
.join_box_list .join_box:after{
	content:"";
	position:absolute;
	top: 50%;
    right:-38px;
    width: 15px;
    height: 15px;
    transform: translateY(-50%) translateX(-50%) rotate(45deg);
    border-right: 3px solid #000000;
    border-top: 3px solid #000000;
}.join_box_list .join_box:last-child:after{
	display:none;
}


.important_area{
}

.important_area .acc_box{
}

.important_area .acc_box .acc_btn{
	
}.important_area .acc_box .acc_btn a{
	text-decoration:none;
    cursor: pointer;
}.important_area .acc_box .acc_btn a h2{
	background:#ff2191;
	color:#ffffff;
	padding:10px 40px;
	font-size:2.5em;
	font-weight:bold;
	line-height:1.5;
	display:flex;
    align-items: center;
    justify-content: space-between;
	position:relative;
}.important_area .acc_box .acc_btn a h2 span{
	font-size:0.6em;
	margin-right:60px;
}.important_area .acc_box .acc_btn a h2:before,
.important_area .acc_box .acc_btn a h2:after{
	position:absolute;
	content:"";
	top:50%;	right:20px;
}.important_area .acc_box .acc_btn a h2:before{
	width:44px;	height:44px;
	background:#ffffff;
	border-radius:50%;
    transform: translateY(-50%);
}.important_area .acc_box .acc_btn a h2:after{
	width: 15px;   height: 15px;
	right:27px;
    transform: translateY(-55%) translateX(-50%) rotate(135deg);
	transition: 0.5s ease-in-out;
    border-right: 3px solid #ff2191;
    border-top: 3px solid #ff2191;
}.important_area .acc_box .acc_btn a.on h2:after{
    transform: translateY(-35%) translateX(-50%) rotate(-45deg);
}

.important_area .acc_box .acc_open_area{
	text-align:left;
}
.important_area .acc_box .acc_open_area .text{
	margin:30px 0 0;
}
.important_area .acc_box .acc_open_area h3{
	border-bottom:1px solid #000000;
	color:#000000;
	padding: 5px;
	padding-left:25px;
	position:relative;
	font-size:1.3em;
	margin-top:0;
	margin-bottom:15px;
}.important_area .acc_box .acc_open_area h3:before{
	content:"";
	position:absolute;
	background:#ff2191;
	width:10px;		height:100%;
	top:0;	left:0;
	
}
.important_area .acc_box .acc_open_area h4{
	color:#ff2191;
	font-size:1.17em;
	
}
.important_area .acc_box .acc_open_area{
	display:none;
}



.last_area{
	width:750px;
	margin:0 auto;
}
.inquiry_box{
	width:100%;
	margin:110px auto 140px;
}
.inquiry_box .btn_l{
	border:2px solid #000000;
	box-shadow: rgba(0, 0, 0) 0px 6px 0px;
	background:#23a8d2;
	color:#ffffff !important;
	font-size:2.7em;
	font-weight:bold;
	text-decoration:none;
	border-radius:100px;
	display:block;
	width:100%;
	line-height:1.5;
	padding:15px 0;
    -webkit-transition: 0.3s ease-in-out;
	position:relative;
	corsor:pointer;
}.inquiry_box .btn_l:hover,
.inquiry_box .btn_l:focus{
	opacity:1;
	box-shadow: rgba(0, 0, 0) 0px 0px 0px;
	transform: translateY(6px);
}.inquiry_box .btn_l:before,
.inquiry_box .btn_l:after{
	position:absolute;
	content:"";
	top:50%;	right:40px;
}
.inquiry_box .btn_l:before{
	width:44px;	height:44px;
	background:#ffffff;
	border-radius:50%;
    transform: translateY(-50%);
}
.inquiry_box .btn_l:after{
	width: 15px;   height: 15px;
	right:50px;
    transform: translateY(-55%) translateX(-50%) rotate(45deg);
	transition: 0.5s ease-in-out;
    border-right: 3px solid #23a8d2;
    border-top: 3px solid #23a8d2;
}
.inquiry_box input:hover,
.inquiry_box input:focus{
	cursor:pointer;}

.inquiry_box .buttons{
	position:relative;
}
.inquiry_box .buttons::before{
	content:'';
	position:absolute;
	top:50%;
	right:40px;
	width:44px;
	height:44px;
	background:#ffffff;
	border-radius:50%;
	transform: translateY(-50%);
	z-index:10;
	transition: 0.5s;
	pointer-events: none;
}
.inquiry_box .buttons::after{
	content:'';
	position:absolute;
	top:50%;
	right:40px;
	width: 15px;
	height: 15px;
	right:50px;
	transform: translateY(-55%) translateX(-50%) rotate(45deg);
	transition: 0.5s;
	border-right: 3px solid #23a8d2;
	border-top: 3px solid #23a8d2;
	z-index:11;
	pointer-events: none;
}
.inquiry_box .buttons:hover::before {
  transform: translateY(-30%);
}
.inquiry_box .buttons:hover::after {
  transform: translateY(1px) translateX(-50%) rotate(45deg);
}

.inquiry_box .meyasu_box{
	margin-top:40px;
	border-top:1px solid #000000;
	border-bottom:1px solid #000000;
	padding:15px 0;
	display:flex;
}.inquiry_box .meyasu_box .title_box{
	background:#23a8d2;
	border-radius:10px;
	margin-right:20px;
	color:#ffffff;
	padding:10px 20px;
	font-weight:bold;
	display: flex;
    align-items: center;
    justify-content: center;
}.inquiry_box .meyasu_box .text_box{
	text-align:left;
}
.inquiry_box .meyasu_box .text_box p:first-letter{
	color:#23a8d2;
}


.contact_box{
	display:flex;
}.contact_box .title_box{
	background:#00c600;
	border-radius:10px;
	margin-right:20px;
	color:#ffffff;
	padding:10px 20px;
	font-size:1.3em;
	font-weight:bold;
	display: flex;
    align-items: center;
    justify-content: center;
	width:210px;
}.contact_box .text_box{
	width:100%;
}.contact_box img{
	width:100%;
	height:auto;
}.contact_box p{
	font-size:1.2em;
	font-weight:bold;
}.contact_box p.mail{
	color:#00c600;
}.contact_box h6{
	border:1px solid #00c600;
	border-radius:50px;
	margin-top:10px;
	color:#00c600;
	font-size:1.1em;
	font-weight:bold;
	padding:3px 0 2px;
}


@media screen and (max-width:640px) {
	.container {
	    padding: 0;
	}.box{
		padding: 0 15px;
	}

	.box h2 .icon{
		width:100px;
		margin:0 auto 30px;
	}
	.box h2 img{
		max-width:100%;
	}
	.gift{
		padding:10px;
	}

	.box.main_image{
		width:100%;
		margin-bottom:60px;
		padding-bottom:90px;
	}.box.main_image:after{
		height:101px;
		pointer-events: none;
	}.box.main_image .main_back{
	    top: -17px;
	    left: 50%;
	    transform: translateX(-50%);
	}.box.main_image .main_title{
		position:relative;
		z-index:2;
	}
	.box.main_image img{
		max-width:100%;
	}
	.box.main_image .main_card{
		width:95%;
		margin:0 auto;
		padding:15px;
		border-radius:15px;
		transform: translateY(-5px);
		position:relative;
		z-index:3;
	}
	.box.main_image .main_card h2{
		width:100%;
	}.box.main_image .main_card h2 .gift{
		width:75%;
	}


	.box.main_image .card_naiyou{
		flex-wrap:wrap;
		width:100%;
	}
	.box.main_image .card_naiyou .card_box{
		border-radius:7px;
		width:100%;
		padding:15px 0;
	}.box.main_image .card_naiyou .sarani{
		width:100%;
		font-size:1.2em;
		padding:20px 0;
	}.box.main_image .card_naiyou .sarani img.plas{
		width:unset;
		height:70%;
	}.box.main_image .card_naiyou .sarani p{
		margin-right:100px;
		line-height:0;
	}
	.box.main_image .card_naiyou .card_box p{
		font-size:1.2em;
	}.box.main_image .card_naiyou .card_box p img{
		width:7em;
	}.box.main_image .card_naiyou .card_box.mini p{
		font-size:1.2em;
	}.box.main_image .card_naiyou .card_box.mini p span{
		font-size:0.8em;
	}.box.main_image .card_naiyou .card_box.mini p img{
		width:7em;
	}



	.kokoii_list{
		margin-top:130px;
	}
	.kokoii_list .kokoii_box{
		padding:70px 10px 30px;
		margin-bottom:130px;
	}.kokoii_list .kokoii_box.kokoii_03{
		margin-bottom:60px;
	}

	.kokoii_list .kokoii_human{
		top:-105px;
		transform: scale(0.75);
	}
	.kokoii_list .kokoii_01 .kokoii_human{	left:5px;	transform-origin: left;	}
	.kokoii_list .kokoii_02 .kokoii_human{	right:5px;	left:unset;	    transform-origin: right;	}
	.kokoii_list .kokoii_03 .kokoii_human{	left:5px;	transform-origin: left;	}

	.kokoii_list .kokoii{
		padding: 30px 20px 10px;
	}
	.kokoii_list .kokoii span{	font-size:2em;	}

	.kokoii_list h3{
		font-size:1.8em;
	}

	.kokoii_list .backcolor{
		font-size:2em;
		padding:4px 25px 3px;
	}.kokoii_list .backcolor+p{
		text-align:left;
	}
	.kokoii_list .kokoii_02 h4{
		font-size:1.1em;
		padding:9px 0 7px;
		line-height: 1.4;
	}
	.kokoii_list .ltext{
		font-size:1.1em;
	}.kokoii_list .ltext span{
		font-size:0.8em;
	}
	.kokoii_list ul.point_bornasu_list{
		margin-top:40px;
		margin-bottom:30px;
		flex-wrap:wrap;
	}.kokoii_list ul.point_bornasu_list li{
		width:100%;
		display:flex;
	    justify-content: space-between;
		margin-bottom:15px;
	}.kokoii_list ul.point_bornasu_list li:last-child{
		margin-bottom:0;
	}.kokoii_list ul.point_bornasu_list li .price{
		width:45%;
		padding:12px 2px;
		line-height: 1.3;
		font-size:1.0em;
		display: flex;
	    align-items: center;
	    justify-content: center;
	}.kokoii_list ul.point_bornasu_list li .point{
		width:45%;
		padding:0 2px;
		font-size:1.1em;
		margin-top:0;
		display: flex;
	    align-items: center;
	    justify-content: center;
	}.kokoii_list ul.point_bornasu_list li .point:before{
		top: 50%;   	left: -14%;
	    transform: translateX(-50%) translateY(-50%) rotate(45deg);
	}.kokoii_list ul.point_bornasu_list li .point img{
		height:1.3em;	width:auto;
	}.kokoii_list ul.point_bornasu_list li .point p{
		margin-top:7px;
	}

	.kokoii_list .point_box_list{
		margin-top:30px;
		flex-wrap:wrap;
	}.kokoii_list .point_box_list .point_box{
		width:100%;
		padding:20px;
		margin-bottom:20px;
	}.kokoii_list .point_box_list .point_box .point_title{
		height:unset;
	}

	.kokoii_list .service_list{
		margin-top:20px;
	}

	.kokoii_list .service_list .service_box{
		width:100%;
		margin-bottom:20px;
	}
	.kokoii_list .service_list .service_box h4{
		background:#23a8d2;
		height:70px;
		font-size:1.4em;
	}.kokoii_list .service_list .service_box h4 span{
		font-size:0.7em;
	}
	.kokoii_list .service_list .service_box p{
		margin:0 15px;
	}.kokoii_list .service_list .service_box.wd p{
		margin:0;
	}
	.kokoii_list .service_list .service_box .img_area{
		height:unset;
		margin-bottom:20px;
	}
	.kokoii_list .service_list .service_box.wd .img_area{
		height:unset;
	}.kokoii_list .service_list .service_box.wd .img_area img{
	    margin: 0px 100% 15px;
	}

	.kokoii_list .service_list .service_box.wd{
		width:100%;
		margin-top:20px;
		margin-bottom:0;
	}

	.service_box.wd ul.wd_service_list{
		flex-wrap:wrap;
	}
	.service_box.wd ul.wd_service_list li{
		width:calc(100% - 30px);
		display: flex;
		flex-direction: column;
		border-right:none;
		border-bottom:1px solid #000000;
		margin:0 auto 30px;
		padding-bottom:30px;
	}.service_box.wd ul.wd_service_list li:last-child{
		border-bottom:none;
		padding-bottom:0;
	}



	.campaign_ou{
		margin-top:60px;
		margin-bottom:60px;
		padding-top:60px;
		padding-bottom:90px;
	}
	.box.campaign_in h2{
		position:relative;
		padding-top:10px;
	}.box.campaign_in h2 img{
		z-index:2;
		position:relative;
	}.box.campaign_in h2 .icon{
		width:90%;
	}.box.campaign_in h2 .sakura{
		position:absolute;
		left:50%;
		top:70%;
	    transform: translateY(-50%) translateX(-50%);
		pointer-events: none;
		z-index:1;
	}
	.campaign_list{
		flex-wrap:wrap;
		margin-top:60px;
	}.campaign_list .campaign_box{
		width:100%;
		border-radius:15px;
		background:#ffffff;
		padding:40px 20px 30px;
		margin-bottom:50px;
	}.campaign_list .campaign_box:last-child{
		margin-bottom:0;
	}

	.join_box_list{
		margin-top:90px;
		flex-wrap:wrap;
	}
	.join_box_list .join_box{
		width:100%;
		padding:50px 30px 30px;
		margin-bottom:100px;
	}.join_box_list .join_box:last-child{
		margin-bottom:0;
	}
	.join_box_list .join_box .img_area{
		height:110px;
		transform: scale(0.7);
	}
	.join_box_list .join_box .join_title{
		font-size:1.4em;
		margin:10px 0 20px;
	}
	.join_box_list .join_box:after{
		top: unset;   right:unset;
		bottom:-45px;	left:50%;
    	width: 20px;    height: 20px;
	    transform: translateY(-50%) translateX(-50%) rotate(135deg);
	}


	.important_area .acc_box .acc_btn a h2{
		padding:10px 40px;
		font-size:1.8em;
		line-height:1.5;
		display:flex;
	    align-items: center;
	    justify-content: center;
		flex-wrap:wrap;
	}.important_area .acc_box .acc_btn a h2 span{
		font-size:0.6em;
		margin-right:0;
	}.important_area .acc_box .acc_btn a h2:before,
	.important_area .acc_box .acc_btn a h2:after{
		position:absolute;
		content:"";
		top:50%;	right:20px;
	}.important_area .acc_box .acc_btn a h2:before{
		width:30px;	height:30px;
		background:#ffffff;
		border-radius:50%;
	    transform: translateY(-50%);
	}.important_area .acc_box .acc_btn a h2:after{
		width: 12px;   height: 12px;
		right:23px;
	}


	.last_area{
		width:100%;
		margin:0 auto;
	}
	.inquiry_box{
		width:100%;
		margin:60px auto 60px;
	}
	.inquiry_box .btn_l{
		font-size:1.7em;
		line-height:1.5;
		padding:15px 0;
	}.inquiry_box .btn_l:before,
	.inquiry_box .btn_l:after{
		position:absolute;
		content:"";
		top:50%;	right:20px;
	}.inquiry_box .btn_l:before{
		width:30px;	height:30px;
	    transform: translateY(-50%);
	}.inquiry_box .btn_l:after{
		width: 12px;   height: 12px;
		right:26px;
	    transform: translateY(-55%) translateX(-50%) rotate(45deg);
	}

	.inquiry_box .meyasu_box{
		margin-top:40px;
		padding:10px 0;
		flex-wrap:wrap;
	}.inquiry_box .meyasu_box .title_box{
		margin-right:0;
		margin-bottom:10px;
		padding:6px 20px 5px;
		width:100%;
		font-size:1.2em;
	}.inquiry_box .meyasu_box .text_box{
		width:100%;
	}


	.contact_box{
		flex-wrap:wrap;
	}.contact_box .title_box{
		margin-right:0;
		margin-bottom:20px;
		padding:6px 20px 5px;
		font-size:1.2em;
		width:100%;
	}.contact_box .text_box{
		width:100%;
	}.contact_box p.mail{
		font-size:1.4em;
	}



}