@charset "UTF-8";

/* =BreakPoint
--------------------------------------------------------------
PC and TABLET ( and SP landscape )
@media ( min-width: 480px ){

PC ( and TABLET landscape )
@media ( min-width: 897px ){

TABLET ( and SP landscape )
@media ( min-width: 480px ) and ( max-width: 896px ){

TABLET and SP ( not TABLET landscape )
@media ( max-width: 896px ){

SP ( only portrait )
@media ( max-width: 479px ){

over
@media ( min-width: 1101px )

under
@media ( max-width: 1100px )
--------------------------------------------------------------
*/

/* =Reset
-------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;word-wrap:break-word;overflow-wrap:break-word;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:inherit;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:super;}
sub{vertical-align:text-bottom;}
input,textarea,select,button{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select,button{*font-size:100%;}
legend{color:#000;}
img {vertical-align:top;}
input[type="radio"],input[type="checkbox"] {vertical-align: -2px;}
label {cursor: pointer;}


/* =Common
-------------------------------------------------------------- */
body {
	text-align: center;
	line-height: 1;
	-webkit-text-size-adjust: 100%;
}
@media (hover){
	a, a img, input[type="submit"], input[type="reset"], svg * {
		transition-property: color, background-color, border-color, fill;
		transition-duration: .3s;
	}
}
img {
	max-width: 100%;
	height: auto;
}
input[type="submit"],input[type="reset"] {
	-webkit-appearance: none;
}

/* clearfix */
.cf:before, .cf:after {content:"";display:table;}
.cf:after {clear:both;}
.clr {clear: both;}


/* =Styles 
-------------------------------------------------------------- */
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #222;
	background: #fff;
}
a {
	text-decoration: none;
	color: #000;
}
@media ( min-width: 480px ){
	body {
		font-size: 14px;
	}
	.sp {
		display: none !important;
	}
	.inner {
		max-width: 1000px;
		margin: 0 auto;
		padding: 0 20px;
	}
}
@media ( min-width: 897px ){
	.sptab {
		display: none !important;
	}
}
@media ( max-width: 896px ){
	.pc {
		display: none !important;
	}
}
@media ( max-width: 479px ){
	body {
		font-size: 3.2vw;
	}
	.pctab {
		display: none !important;
	}
	.inner {
		padding: 0 5.33vw;
	}
}

@media ( min-width: 1101px ){
	.menu_btn {
		display: none;
	}
}
@media ( max-width: 1100px ){
	.gnav {
		display: none;
	}
}

/*------------------------------------------------------
common
------------------------------------------------------*/
.common_title {
	text-align: left;
}
.common_title .bg_title {
	color: #fff;
	background: #222;
	display: inline-block;
}
.common_title .bg_title .title_text {
	font-weight: 700;
}
@media ( min-width: 480px ){
	.common_title .lead_image {
		margin: 0 0 13px;
	}
	.common_title .bg_title {
		padding: 3px 15px 5px;
	}
	.common_title .bg_title .title_text {
		font-size: 30px;
	}
	.common_title .bg_title .title_text .eng {
		font-size: 33px;
	}
}
@media ( max-width: 479px ){
	.common_title .lead_image {
		margin: 0 0 4vw;
	}
	.common_title .bg_title {
		padding: 0.93vw 2.67vw 2.67vw;
	}
	.common_title .bg_title .title_text {
		font-size: 9.07vw;
	}
	.common_title .bg_title .title_text .eng {
		font-size: 9.47vw;
	}
}
.round_top,
.round_bottom {
	width: 100%;
	font-size: 0;
	line-height: 0;
}
@media ( min-width: 480px ){
	.round_top,
	.round_bottom {
		background-repeat: no-repeat;
		background-position: bottom right;
	}
	.round_top {
		padding-bottom: calc(100%*195/2560);
	}
	.round_bottom {
		padding-bottom: calc(100%*180/2560);
	}
	.round_top.red {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='2560px' height='195px'%3E%3Cpath fill-rule='evenodd' fill='rgb(242, 74, 80)' d='M835.500,0.000 C1582.719,0.000 2232.102,73.387 2560.000,181.000 C2560.000,181.109 2560.000,195.000 2560.000,195.000 C2560.000,195.000 199.764,195.000 -0.000,195.000 C-0.000,195.000 -0.000,87.589 -0.000,33.000 C253.278,12.032 536.521,0.000 835.500,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
		margin: -15px 0 -1px;
	}
	.round_bottom.red {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='2560px' height='180px'%3E%3Cpath fill-rule='evenodd' fill='rgb(242, 74, 80)' d='M-0.000,0.000 C853.248,0.000 1706.752,0.000 2560.000,0.000 C2560.000,59.994 2560.000,120.006 2560.000,180.000 C2343.842,131.711 2132.382,77.073 1892.000,50.000 C1310.611,-15.479 598.535,-3.723 -0.000,33.000 C-0.000,22.001 -0.000,10.999 -0.000,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
	}
	.round_top.gray {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='2560px' height='195px'%3E%3Cpath fill-rule='evenodd' fill='rgb(237, 237, 237)' d='M835.500,0.000 C1582.719,0.000 2232.102,73.387 2560.000,181.000 C2560.000,181.109 2560.000,195.000 2560.000,195.000 C2560.000,195.000 199.764,195.000 -0.000,195.000 C-0.000,195.000 -0.000,87.589 -0.000,33.000 C253.278,12.032 536.521,0.000 835.500,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
	}
	.round_bottom.gray {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='2560px' height='180px'%3E%3Cpath fill-rule='evenodd' fill='rgb(237, 237, 237)' d='M-0.000,0.000 C853.248,0.000 1706.752,0.000 2560.000,0.000 C2560.000,59.994 2560.000,120.006 2560.000,180.000 C2343.842,131.711 2132.382,77.073 1892.000,50.000 C1310.611,-15.479 598.535,-3.723 -0.000,33.000 C-0.000,22.001 -0.000,10.999 -0.000,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
	}
}
@media ( max-width: 479px ){
	.round_top,
	.round_bottom {
		background-repeat: no-repeat;
		background-position: bottom right;
	}
	.round_top {
		height: 7.47vw;
	}
	.round_bottom {
		height: 8vw;
	}
	.round_top.red {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='750px' height='56px'%3E%3Cpath fill-rule='evenodd' fill='rgb(242, 74, 80)' d='M231.000,0.000 C418.546,0.000 595.244,20.212 750.000,56.000 C666.818,56.000 0.000,56.000 0.000,56.000 C0.000,56.000 0.000,16.635 0.000,10.496 C74.503,3.619 151.779,0.000 231.000,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
	}
	.round_top.gray {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='750px' height='56px'%3E%3Cpath fill-rule='evenodd' fill='rgb(237, 237, 237)' d='M231.000,0.000 C418.546,0.000 595.244,20.212 750.000,56.000 C666.818,56.000 0.000,56.000 0.000,56.000 C0.000,56.000 0.000,16.635 0.000,10.496 C74.503,3.619 151.779,0.000 231.000,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
	}
	.round_bottom.red {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='750px' height='60px'%3E%3Cpath fill-rule='evenodd' fill='rgb(242, 74, 80)' d='M0.000,0.000 C249.975,0.000 500.025,0.000 750.000,0.000 C750.000,19.998 750.000,40.002 750.000,60.000 C655.704,39.544 556.248,23.164 451.000,13.000 C394.672,10.000 338.328,7.000 282.000,4.000 C184.580,2.613 89.118,8.634 0.000,14.000 C0.000,9.334 0.000,4.666 0.000,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
	}
	.round_bottom.gray {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='750px' height='60px'%3E%3Cpath fill-rule='evenodd' fill='rgb(237, 237, 237)' d='M0.000,0.000 C249.975,0.000 500.025,0.000 750.000,0.000 C750.000,19.998 750.000,40.002 750.000,60.000 C655.704,39.544 556.248,23.164 451.000,13.000 C394.672,10.000 338.328,7.000 282.000,4.000 C184.580,2.613 89.118,8.634 0.000,14.000 C0.000,9.334 0.000,4.666 0.000,0.000 Z'/%3E%3C/svg%3E");
		background-size: cover;
	}
}
#scroll_arw {
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 5;
}
#scroll_arw a {
	display: block;
	background: url('img/down_arw.png') no-repeat;
	background-size: auto 100%;
	width: 100%;
}
@media ( min-width: 480px ){
	#scroll_arw {
		width: 13px;
		height: 28px;
		bottom: 21px;
	}
	#scroll_arw a {
		height: 28px;
	}
}
@media ( max-width: 479px ){
	#scroll_arw {
		width: 3.6vw;
		bottom: 4vw;
	}
	#scroll_arw a {
		height: 7.47vw;
	}
}
@media ( min-width: 480px ){
	#right_sns {
		box-sizing: border-box;
		position: fixed;
/*		top: 295px;
*/		right: 0;
		width: 25px;
		padding: 0 15px 0 0;
		z-index: 50;

		top: 50%;
		transform: translate(0, -50%);

	}
	#right_sns li {
		width: 8px;
		padding: 0 2px;
		border-bottom: 1px solid #c1141a;
	}
	#right_sns li:last-child {
		border-bottom: none;
	}
	#right_sns li a {
		display: block;
		width: 8px;
		margin: 25px 0;
	}
}
@media ( max-width: 479px ){
	#right_sns {
		display: none;
	}
}
/*------------------------------------------------------
#header
------------------------------------------------------*/
#header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
@media ( min-width: 480px ){
	#header {
		height: 65px;
	}
}
@media ( max-width: 479px ){
	#header {
		height: 13.33vw;
	}
	#header .menu_btn {
		width: 13.33vw;
	}
	#header .menu_btn a {
		height: 13.33vw;
	}
	#header .menu_btn a .line_wrap {
		top: 4.8vw;
		width: 5.07vw;
		height: 3.73vw;
	}
	#header .menu_btn a .line_wrap span {
		width: 5.07vw;
		height: 0.53vw;
	}
	#header .menu_btn a span:nth-of-type(2) {
		top: 1.6vw;
	}
	#header .menu_btn a.on span:nth-of-type(1) {
		-webkit-transform: translateY(1.6vw) rotate(-45deg);
		transform: translateY(1.6vw) rotate(-45deg);
	}
	#header .menu_btn a.on span:nth-of-type(2) {
		opacity: 0;
	}
	#header .menu_btn a.on span:nth-of-type(3) {
		-webkit-transform: translateY(-1.6vw) rotate(45deg);
		transform: translateY(-1.6vw) rotate(45deg);
	}
	#sptab_menu .spnav {
		padding: 13.33vw 0 0;
		margin: 0 0 10vw;
	}
	#sptab_menu .spnav li {
		font-size: 4.53vw;
		margin: 0 0 8vw;
	}
	#sptab_menu .sns_area {
		font-size: 3.2vw;
	}
	#sptab_menu .sns_area .title {
		margin: 0 0 4vw;
	}
	#sptab_menu .sns_area li {
		width: 12.53vw;
		margin: 0 4vw 0 0;
	}
	#sptab_menu .sns_area li a {
		height: 12.53vw;
	}
	#sptab_menu .sns_area li a span {
		width: 4vw;
		height: 4vw;
	}
	#sptab_menu .sp_conversion_btn {
		height: 17.33vw;
	}
	#sptab_menu .sp_conversion_btn a {
		height: 17.33vw;
		font-size: 4.53vw;
	}
	#sptab_menu .sp_conversion_btn a span {
		line-height: 17.33vw;
	}
	#sptab_menu .sp_conversion_btn a span:after {
		width: 5.07vw;
		height: 2.67vw;
		margin: 0 0 0 1.33vw;
	}
}
@media ( min-width: 1101px ){
	#header.fix {
		position: fixed;
		top: 0;
		left: 0;
	}
	#header::before {
		content: '';
		display: block;
		width: 100%;
		height: 65px;
		background: #fff;
		position: absolute;
		top: 0;
		left: 0;
		transform: translateY(-65px);
		transition: transform 0.3s;
	}
	#header.fix::before {
		transform: translateY(0);
		transition: transform 0.3s;
	}
	#header .logo {
		position: relative;
		float: left;
		width: 135px;
		padding: 12px 0 0 20px;
		opacity: 0;
		transition: opacity 0.5s;
	}
	#header .logo.fix {
		opacity: 1;
		transition: opacity 0.5s;
	}
	#header .gnav {
		position: relative;
		float: right;
	}
	#header .gnav ul {
		float: left;
		margin: 0 0 0 auto;
	}
	#header .gnav li {
		float: left;
		font-size: 13px;
		padding: 25px 0 0;
		margin: 0 30px 0 0;
	}
	#header .gnav li:last-child {
		margin: 0;
	}
	#header .gnav .conversion_btn {
		float: left;
		margin: 0 0 0 82px;
	}
	#header .gnav .conversion_btn a {
		position: relative;
		box-sizing: border-box;
		display: block;
		width: 178px;
		height: 65px;
	}
	#header .gnav .conversion_btn a span {
		display: none;
	}
	#header .gnav .conversion_btn a::before {
		content: '';
		display: block;
		width: 178px;
		height: 65px;
		background: url('img/conversion_btn.png') no-repeat;
		background-size: cover;
		left: 0;
		top: 0;
	}
	#header .gnav .conversion_btn a:hover::before {
		background: url('img/conversion_btn_on.png') no-repeat;
		background-size: cover;
		transition-property: background;
		transition-duration: .3s;
	}
	#sptab_menu {
		display: none;
	}
}
@media ( max-width: 1100px ) {
	#header .logo {
		display: none;
	}
	#header .menu_btn {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 101;
	}
	#header .menu_btn a {
		box-sizing: border-box;
		display: block;
		width: 100%;
		background: #111;
	}
	#header .menu_btn a .line_wrap {
		position: relative;
		margin: 0 auto;
	}
	#header .menu_btn a .line_wrap span {
		display: block;
		background: #fff;
		position: absolute;
		transition-property: transform;
		transition-duration: .3s;
	}
	#header .menu_btn a .line_wrap span:nth-of-type(1) {
		top: 0;
	}
	#header .menu_btn a .line_wrap span:nth-of-type(3) {
		bottom: 0;
	}
	#sptab_menu {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: #222;
		visibility: hidden;
		opacity: 0;
		transition: all .5s;
	}
	#sptab_menu.on {
		transition: all .5s;
		visibility: visible;
		opacity: 1;
	}
	#sptab_menu .spnav li a {
		color: #fff;
	}
	#sptab_menu .spnav li {
		text-align: left;
	}
	#sptab_menu .spnav li:last-child {
		margin: 0;
	}
	#sptab_menu .sns_area {
		text-align: left;
		color: #fff;
	}
	#sptab_menu .sns_area li {
		float: left;
		width: 100%;
	}
	#sptab_menu .sns_area li a {
		text-align: center;
		font-size: 18px; 
		color: aqua;
	}
	#temp{
		position: relative;
		display: inline-block;
		width: 100%;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	#sptab_menu .sp_conversion_btn {
		width: 100%;
		position: fixed;
		bottom: 0;
		left: 0;
	}
	#sptab_menu .sp_conversion_btn a {
		color: #fff;
		background: #f24a50;
		display: inline-block;
		width: 100%;
		font-weight: 700;
	}
	#sptab_menu .sp_conversion_btn a span {
		display: inline-block;
		position: relative;
	}
	#sptab_menu .sp_conversion_btn a span:after {
		content: '';
		display: inline-block;
		background: url('img/conversion_arw.png') no-repeat;
		background-size: cover;
	}
}
@media ( max-width: 1100px ) and ( min-width: 480px ) {
	#header .menu_btn {
		width: 65px;
	}
	#header .menu_btn a {
		height: 65px;
	}
	#header .menu_btn a .line_wrap {
		top: 23px;
		width: 26px;
		height: 20px;
	}
	#header .menu_btn a span {
		width: 26px;
		height: 2px;
	}
	#header .menu_btn a span:nth-of-type(2) {
		top: 9px;
	}
	#header .menu_btn a.on span:nth-of-type(1) {
		-webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
	}
	#header .menu_btn a.on span:nth-of-type(2) {
		opacity: 0;
	}
	#header .menu_btn a.on span:nth-of-type(3) {
		-webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-9px) rotate(45deg);
	}
	#sptab_menu .spnav {
		padding: 65px 0 0;
		margin: 0 0 60px;
	}
	#sptab_menu .spnav li {
		font-size: 20px;
		margin: 0 0 30px;
	}
	#sptab_menu .sns_area {
		font-size: 16px;
	}
	#sptab_menu .sns_area .title {
		margin: 0 0 20px;
	}
	#sptab_menu .sns_area li {
		width: 47px;
		margin: 0 15px 0 0;
	}
	#sptab_menu .sns_area li a {
		height: 47px;
	}
	#sptab_menu .sns_area li a:hover {
		background: #111;
	}
	#sptab_menu .sns_area li a span {
		width: 15px;
		height: 15px;
	}
	#sptab_menu .sp_conversion_btn {
		width: 100%;
	}
	#sptab_menu .sp_conversion_btn a {
		width: 100%;
		font-size: 20px;
	}
	#sptab_menu .sp_conversion_btn a span {
		line-height: 65px;
	}
	#sptab_menu .sp_conversion_btn a span:after {
		width: 19px;
		height: 10px;
		margin: 0 0 0 10px;
	}
}
/*------------------------------------------------------
#kv
------------------------------------------------------*/
#kv {
	overflow: hidden;
	box-sizing: border-box;
	position: relative;
	background: #f24a50;
}
#kv .inner {
	position: relative;
}
#kv .kv_arw {
	position: absolute;
	left: 0;
	z-index: 1;
	width: 100%;
}
#kv .text_block {
	position: absolute;
	z-index: 2;
	left: 20px;
	top: 0;
	top: 40%;
	-webkit-transform: translate(0, -40%);
	transform: translate(0, -40%);
}
#kv .text_block .round_wrap li {
	float: left;
}
@media ( min-width: 480px ){
	#kv {
		padding: 65px 0 0;
	}
	#kv .kv_arw {
		top: 0;
		background: url('img/kv_arw.png') no-repeat;
		background-size: auto 100%;
	}
	#kv .text_block {
		width: 100%;
		max-width: 1000px;
	}
	#kv .text_block .round_wrap li:last-child {
		margin: 0;
	}
}
@media ( min-width: 1367px ){
	#kv .text_block .kv_title {
		width: 602px;
		margin: 0 0 18px;
	}
	#kv .text_block .kv_logo {
		width: 372px;
		margin: 0 0 32px;
	}
	#kv .text_block .kv_lead {
		width: 539px;
		margin: 0 0 34px;
	}
	#kv .text_block .round_wrap li {
		width: 190px;
		margin: 0 18px 0 0;
	}
}
@media ( max-width: 1366px ) and ( min-width: 897px ) {
	#kv .text_block .kv_title {
		width: 572px;
		margin: 0 0 18px;
	}
	#kv .text_block .kv_logo {
		width: 342px;
		margin: 0 0 32px;
	}
	#kv .text_block .kv_lead {
		width: 509px;
		margin: 0 0 25px;
	}
	#kv .text_block .round_wrap li {
		width: 150px;
		margin: 0 12px 0 0;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#kv .text_block .kv_title {
		width: 67%;
		margin: 0 0 20px;
		min-width: 400px;
	}
	#kv .text_block .kv_logo {
		width: 40%;
		margin: 0 0 20px;
		min-width: 300px;
	}
	#kv .text_block .kv_lead {
		width: 60%;
		margin: 0 0 30px;
		min-width: 380px;
	}
	#kv .text_block .round_wrap li {
		width: 19%;
		max-width: 190px;
		min-width: 95px;
		margin: 0 2% 0 0;
	}
}
@media ( max-width: 479px ){
	#kv {
		padding: 13.33vw 0 0;
	}
	#kv .kv_arw {
		top: 0;
		background: url('img/kv_arw_sp.png') no-repeat;
		background-size: cover;
	}
	#kv .text_block .kv_title {
		width: 89.33vw;
		margin: 0 0 5.33vw;
	}
	#kv .text_block .kv_logo {
		width: 67.47vw;
		margin: 0 0 5.33vw;
	}
	#kv .text_block .kv_lead {
		width: 80.27vw;
		margin: 0 0 7.33vw;
	}
	#kv .text_block .round_wrap li {
		width: 21.73vw;
		margin: 0 0 0 1.07vw;
	}
	#kv .text_block .round_wrap li:first-child {
		margin: 0;
	}
}
/*------------------------------------------------------
#info
------------------------------------------------------*/
#info dl {
	width: 100%;
	box-sizing: border-box;
	background: #f1f1f1;
	margin: 0 auto;
}
#info dt {
	line-height: 1;
}
#info dd {
	text-align: left;
}
#info dd .title {
	font-weight: 700;
	line-height: 1.31;
}
#info dd .text {
	line-height: 1.58;
}
@media ( min-width: 480px ){
	#info {
		padding: 20px 20px 0;
	}
	#info dl {
		max-width: 1280px;
	}
	#info dt {
		line-height: 1.3;
		font-size: 20px;
	}
	#info dt .image_block {
		width: 44px;
	}
	#info dd .title {
		font-size: 20px;
		margin: 0 0 15px;
	}
	#info dd .text {
		font-size: 13px;
	}
}
@media ( min-width: 897px ){
	#info dl {
		padding: 34px 0;
		display: table;
	}
	#info dt,
	#info dd {
		display: table-cell;
		vertical-align: middle;
	}
	#info dt {
		width: 145px;
	}
	#info dt .image_block {
		margin: 0 auto;
	}
	#info dd {
		padding: 0 60px 0 28px;
	}
	#info dd {
		border-left: 1px solid #dedede;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#info dl {
		padding: 34px 15px;
	}
	#info dt {
		margin: 0 0 10px;
	}
}
@media ( max-width: 896px ){
	#info dt {
		text-align: left;
	}
}
@media ( max-width: 479px ){
	#info {
		padding: 2.67vw 2.67vw 0;
	}
	#info dl {
		padding: 6.67vw 4vw;
	}
	#info dt {
		font-size: 3.2vw;
		margin: 0 0 2.67vw;
	}
	#info dt .image_block {
		width: 7.47vw;
	}
	#info dd .title {
		font-size: 4.27vw;
		margin: 0 0 4vw;
	}
}
/*------------------------------------------------------
#whats_buyon
------------------------------------------------------*/
#whats_buyon .inner {
	position: relative;
	overflow: hidden;
}
#whats_buyon .image_block {
	z-index: 2;
}
#whats_buyon .content_block {
	z-index: 3;
}
#whats_buyon .content_block .text {
	text-align: left;
	line-height: 1.85;
}
#whats_buyon .content_block .todaimon {
	background: #fff;
	text-align: left;
}
#whats_buyon .content_block .todaimon dt {
	font-weight: 700;
}
#whats_buyon .content_block .todaimon dd {
	line-height: 1.75;
}
@media ( min-width: 480px ){
	#whats_buyon {
		padding: 120px 0 0;
	}
	#whats_buyon .inner {
		padding: 0 20px 120px 0 0;
	}
	#whats_buyon .image_block {
		position: relative;
	}
	#whats_buyon .content_block .common_title {
		margin: 0 0 30px;
	}
	#whats_buyon .content_block .common_title .lead_image {
		width: 115px;
	}
	#whats_buyon .content_block {
		position: absolute;
	}
	#whats_buyon .content_block .text {
		font-size: 14px;
	}
	#whats_buyon .content_block .todaimon {
		border: 1px solid #ccc;
		border-radius: 5px;
		padding: 30px;
	}
	#whats_buyon .content_block .todaimon dt {
		margin: 0 0 15px;
		line-height: 1.3;
	}
	#whats_buyon .content_block .todaimon dt .kana {
		font-size: 10px;
	}
}
@media ( min-width: 897px ){
	#whats_buyon .image_block {
		padding: 5px 0 0;
		width: 62%;
		min-width: 580px;
		margin: 40px 0 0;
	}
	#whats_buyon .content_block {
		width: 45%;
		top: 26px;
		right: 20px;
	}
	#whats_buyon .content_block .text {
		margin: 0 0 55px 15%;
	}
	#whats_buyon .content_block .todaimon {
		margin: 0 0 0 15%;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#whats_buyon .image_block {
		width: 95%;
		margin: 0 -40px 0 auto;
		padding: 20px 0 0;
		min-width: 480px;
	}
	#whats_buyon .image_block img {
		margin: 0 0 0 auto;
	}
	#whats_buyon .content_block {
		top: 0;
		right: 0;
		padding: 0 20px;
	}
	#whats_buyon .content_block .text {
		margin: 0 0 30px;
	}
}
@media ( max-width: 479px ){
	#whats_buyon {
		padding: 21.33vw 0;
	}
	#whats_buyon .image_block {
		width: 94.67vw;
		position: absolute;
		top: 21.33vw;
		right: 0;
		margin: 0 -1.33vw 0 0;
	}
	#whats_buyon .content_block {
		position: relative;
	}
	#whats_buyon .content_block .common_title .lead_image {
		width: 29.87vw;
	}
	#whats_buyon .content_block .text {
		margin: 0 0 92vw;
	}
	#whats_buyon .content_block .todaimon {
		border: 0.27vw solid #ccc;
		border-radius: 1.33vw;
		padding: 8vw;
	}
	#whats_buyon .content_block .todaimon dt {
		font-size: 3.47vw;
		margin: 0 0 4vw;
	}
	#whats_buyon .content_block .todaimon dt .kana {
		font-size: 2.67vw;
	}
	#whats_buyon .content_block .common_title {
		margin: 0 0 6.4vw;
	}
}
/*------------------------------------------------------
#worries
------------------------------------------------------*/
#worries {
	background: #f24a50;
}
#worries .worries_title {
	color: #fff;
	font-weight: bold;
}
#worries .worries_title .bg_block span {
	position: relative;
	display: inline-block;
	color: #f24a50;
	background: #fff;
}
#worries .worries_title .bg_block span::before,
#worries .worries_title .bg_block span::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto 0;
}
#worries .worries_title .bg_block span::before {
	background: url('img/worries_title_before.png') no-repeat;
	background-size: auto 100%;
}
#worries .worries_title .bg_block span::after {
	background: url('img/worries_title_after.png') no-repeat;
	background-size: auto 100%;
}
#worries .bubble {
	position: relative;
}
#worries .bubble .file {
	position: absolute;
	height: auto;
	font-weight: bold;
}
#worries .bubble .file .inn_block {
	position: relative;
}
#worries .bubble .file .text_block {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0;
}
#worries .bubble .file .text_block .icon {
	display: block;
}
#worries .bubble .file .text_block .text {
	line-height: 1.35;
}
#worries .title1 {
	color: #fff;
	font-weight: bold;
}
#worries .movie {
	background: #fff;
}
#worries .movie .movie_block .inn {
	width: 100%;
	position: relative;
	top: 0;
	left: 0;
}
#worries .movie .movie_block .inn iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
#worries .movie .content_block {
	text-align: left;
}
#worries .movie .content_block dt {
	font-weight: 700;
}
#worries .movie .content_block dd {
	line-height: 1.64;
}
#worries .title2 {
	box-sizing: border-box;
	position: relative;
	color: #fff;
	font-weight: 700;
	line-height: 1.6;
}
#worries .title2::before {
	content: '';
	display: block;
	background: url('img/worries_arw.png') no-repeat;
	background-size: auto 100%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
@media ( min-width: 480px ){
	#worries {
		padding: 35px 0 115px;
	}
	#worries .worries_title {
		margin: 0 0 34px;
	}
	#worries .worries_title .bg_block {
		margin: 14px 0 0;
	}
	#worries .bubble {
		margin: 0 auto 20px;
	}
	#worries .bubble .file .text_block .icon {
		width: 47px;
		margin: 0 0 10px;
	}
	#worries .title1 {
		margin: 0 0 25px;
	}
	#worries .movie {
		border-radius: 5px;
		padding: 32px 30px;
		margin: 0 0 25px;
	}
	#worries .movie .content_block dt {
		line-height: 1.34;
		font-size: 26px;
		margin: 0 0 20px;
	}
	#worries .movie .content_block dd {
		font-size: 14px;
	}
	#worries .title2 {
		font-size: 20px;
		height: 178px;
		padding: 60px 0 0;
		margin: 0 0 22px;
	}
	#worries .title2 span {
		font-size: 40px;
	}
	#worries .title2::before {
		width: 136px;
		height: 178px;
	}
}
@media ( min-width: 897px ){
	#worries .worries_title {
		font-size: 20px;
	}
	#worries .worries_title .bg_block span {
		font-size: 40px;
		padding: 2px 15px;
	}
	#worries .worries_title .bg_block span::before,
	#worries .worries_title .bg_block span::after {
		width: 15px;
		height: 51px;
	}
	#worries .worries_title .bg_block span::before {
		left: -35px;
	}
	#worries .worries_title .bg_block span::after {
		right: -35px;
	}
	#worries .bubble .no1 {
		width: 24.8%;
		max-width: 248px;
		top: 0;
		left: 18.5%;
	}
	#worries .bubble .no2 {
		width: 20.7%;
		max-width: 207px;
		top: 142px;
		left: 0;
	}
	#worries .bubble .no3 {
		position: relative;
		width: 24.8%;
		max-width: 248px;
		padding-top: 287px;
		top: 0;
		left: 14.2%;
	}
	#worries .bubble .no4 {
		width: 17.8%;
		max-width: 178px;
		top: 206px;
		left: 36.5%;
	}
	#worries .bubble .no5 {
		width: 20.7%;
		max-width: 207px;
		top: 14px;
		left: 45.2%;
	}
	#worries .bubble .no6 {
		width: 24.8%;
		max-width: 248px;
		top: 228px;
		left: 53.8%;
	}
	#worries .bubble .no7 {
		width: 17.8%;
		max-width: 178px;
		top: 61px;
		left: 67.9%;
	}
	#worries .bubble .no8 {
		width: 20.7%;
		max-width: 207px;
		top: 207px;
		right: 0;
	}
	#worries .bubble .file .text_block .icon {
		width: 47px;
		margin: 0 0 10px;
	}
	#worries .bubble .no1 .text_block .text {
		font-size: 20px;
	}
	#worries .bubble .no2 .text_block .text {
		font-size: 17px;
	}
	#worries .bubble .no3 .text_block .text {
		font-size: 18px;
	}
	#worries .bubble .no4 .text_block .text {
		font-size: 17px;
	}
	#worries .bubble .no5 .text_block .text {
		font-size: 15px;
	}
	#worries .bubble .no6 .text_block .text {
		font-size: 18px;
	}
	#worries .bubble .no7 .text_block .text {
		font-size: 15px;
	}
	#worries .bubble .no8 .text_block .text {
		font-size: 17px;
	}
	#worries .title1 {
		font-size: 40px;
	}
	#worries .movie .movie_block,
	#worries .movie .content_block {
		float: left;
	}
	#worries .movie .movie_block {
		width: 57%;
	}
	#worries .movie .movie_block .inn {
		padding-bottom: calc(100%*301/536);
	}
	#worries .movie .content_block {
		text-align: left;
		box-sizing: border-box;
		width: calc(100% - 57%);
		padding: 40px 0 40px 40px;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#worries .worries_title {
		font-size: 20px;
	}
	#worries .worries_title .bg_block span {
		font-size: 35px;
		padding: 1px 12px;
	}
	#worries .worries_title .bg_block span::before,
	#worries .worries_title .bg_block span::after {
		width: 14px;
		height: 49px;
	}
	#worries .worries_title .bg_block span::before {
		left: -25px;
	}
	#worries .worries_title .bg_block span::after {
		right: -25px;
	}
	#worries .bubble {
		max-width: 600px;
		height: 176.8vw;
	}
	#worries .bubble .no1 {
		width: 46.93%;
		top: 0.27vw;
		left: -0.8vw;
	}
	#worries .bubble .no2 {
		width: 39.2%;
		top: 0;
		right: 1.87vw;
	}
	#worries .bubble .no3 {
		width: 33.73%;
		top: 49.6vw;
		left: 2.93vw;
	}
	#worries .bubble .no4 {
		width: 47.07%;
		top: 42.13vw;
		right: 3.73vw;
	}
	#worries .bubble .no5 {
		width: 39.2%;
		top: 88.53vw;
		left: 0;
	}
	#worries .bubble .no6 {
		width: 33.73%;
		top: 90.67vw;
		right: 13.6vw;
	}
	#worries .bubble .no7 {
		width:47.07%;
		bottom: 0;
		left: 2.27vw;
	}
	#worries .bubble .no8 {
		width: 39.2%;
		bottom: 8vw;
		right: -1.73vw;
	}
	#worries .bubble .no1 .text_block .text {
		font-size: 18px;
	}
	#worries .bubble .no2 .text_block .text {
		font-size: 16px;
	}
	#worries .bubble .no3 .text_block .text {
		font-size: 14px;
	}
	#worries .bubble .no4 .text_block .text {
		font-size: 15px;
	}
	#worries .bubble .no5 .text_block .text {
		font-size: 13px;
	}
	#worries .bubble .no6 .text_block .text {
		font-size: 15px;
	}
	#worries .bubble .no7 .text_block .text {
		font-size: 15px;
	}
	#worries .bubble .no8 .text_block .text {
		font-size: 15px;
	}
	#worries .title1 {
		font-size: 35px;
	}
	#worries .movie .movie_block {
		margin: 0 0 25px;
	}
}
@media ( max-width: 896px ){
	#worries .worries_title {
		line-height: 1.3;
	}
	#worries .worries_title:last-of-type .bg_block:last-of-type span::before,
	#worries .worries_title:last-of-type .bg_block:last-of-type span::after {
		content: none;
	}
	#worries .movie .movie_block .inn {
		padding-bottom: calc(100%*324/590);
	}
}
@media ( max-width: 479px ){
	#worries {
		padding: 19.33vw 0 22.67vw;
	}
	#worries .worries_title {
		font-size: 5.33vw;
		margin: 0 0 10vw;
	}
	#worries .worries_title .bg_block span {
		font-size: 8vw;
		margin: 3.33vw 0 0;
		padding: 1.07vw 2.67vw;
	}
	#worries .worries_title .bg_block span::before,
	#worries .worries_title .bg_block span::after {
		width: 2.53vw;
		height: 8.53vw;
	}
	#worries .worries_title .bg_block span::before {
		left: -4.27vw;
	}
	#worries .worries_title .bg_block span::after {
		right: -4.27vw;
	}
	#worries .bubble {
		height: 176.8vw;
		margin: 0 0 12vw;
	}
	#worries .bubble .no1 {
		width: 46.93vw;
		top: 0.27vw;
		left: -0.8vw;
	}
	#worries .bubble .no2 {
		width: 39.2vw;
		top: 0;
		right: 1.87vw;
	}
	#worries .bubble .no3 {
		width: 33.73vw;
		top: 49.6vw;
		left: 2.93vw;
	}
	#worries .bubble .no4 {
		width: 47.07vw;
		top: 42.13vw;
		right: 3.73vw;
	}
	#worries .bubble .no5 {
		width: 39.2vw;
		top: 88.53vw;
		left: 0;
	}
	#worries .bubble .no6 {
		width: 33.73vw;
		top: 90.67vw;
		right: 13.6vw;
	}
	#worries .bubble .no7 {
		width:47.07vw;
		bottom: 0;
		left: 2.27vw;
	}
	#worries .bubble .no8 {
		width: 39.2vw;
		bottom: 8vw;
		right: -1.73vw;
	}
	#worries .bubble .file .text_block .icon {
		width: 10vw;
		margin: 0 0 2vw;
	}
	#worries .bubble .no1 .text_block .text {
		font-size: 3.73vw;
	}
	#worries .bubble .no2 .text_block .text {
		font-size: 3.2vw;
	}
	#worries .bubble .no3 .text_block .text {
		font-size: 3.47vw;
	}
	#worries .bubble .no4 .text_block .text {
		font-size: 3.73vw;
	}
	#worries .bubble .no5 .text_block .text {
		font-size: 3.2vw;
	}
	#worries .bubble .no6 .text_block .text {
		font-size: 3.47vw;
	}
	#worries .bubble .no7 .text_block .text {
		font-size: 3.73vw;
	}
	#worries .bubble .no8 .text_block .text {
		font-size: 3.2vw;
	}
	#worries .title1 {
		font-size: 8vw;
		margin: 0 0 7.33vw;
	}
	#worries .movie {
		padding: 6vw 5.33vw;
		border-radius: 1.33vw;
		margin: 0 0 6.27vw;
	}
	#worries .movie .movie_block {
		margin: 0 0 5.33vw;
	}
	#worries .movie .content_block dt {
		font-size: 5.33vw;
		line-height: 1.25;
		margin: 0 0 4vw;
	}
	#worries .movie .content_block dd {
		font-size:  3.47vw;
	}
	#worries .title2 {
		font-size: 5.33vw;
		height: 47.6vw;
		padding: 17.33vw 0 0;
		margin: 0 0 4vw;
	}
	#worries .title2::before {
		width: 36.4vw;
		height: 47.6vw;
	}
	#worries .title2 span {
		font-size: 8vw;
	}
}
/*------------------------------------------------------
#feature
------------------------------------------------------*/
#feature {
	overflow: hidden;
}
#feature .feature_wrap {
	position: relative;
	text-align: left;
}
#feature .feature_wrap .title {
	color: #f24a50;
	font-weight: 700;
	line-height: 1.42;
}
#feature .feature_wrap li {
	position: relative;
	padding: 0 0 0 1em;
}
#feature .feature_wrap li:last-child {
	margin: 0;
}
#feature .feature_wrap li::before {
	content: '・';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
#feature .feature_wrap .image_block {
	position: relative;
	z-index: 1;
}
#feature .feature3 {
	width: 100%;
}
#feature .other_service {
	background: #ededed;
}
#feature .other_service {
	text-align: left;
}
#feature .other_service .title {
	position: relative;
	font-weight: 700;
}
#feature .other_service .title .happy {
	position: absolute;
}
#feature .other_service .text_block {
	color: #f24a50;
	font-weight: 700;
	line-height: 1.35;
}
#feature .other_service .text_block .comment {
	display: block;
	color: #222;
}
@media ( min-width: 480px ){
	#feature {
		padding: 65px 0 154px;
	}
	#feature .common_title {
		margin: 0 0 55px;
	}
	#feature .common_title .lead_image {
		width: 151px;
	}
	#feature .feature_wrap .title {
		font-size: 21px;
		margin: 0 0 10px;
	}
	#feature .feature1 .text_block {
		margin: 0 0 25px;
	}
	#feature .feature_wrap li {
		margin: 0 0 4px;
		line-height: 1.58;
	}
	#feature .feature2 .image_block {
		margin: 0 0 30px;
	}
	#feature .other_service {
		border-radius: 5px;
		padding: 30px 40px;
	}
	#feature .other_service .title {
		font-size: 20px;
		margin: 0 0 24px;
	}
	#feature .other_service .title .happy {
		width: 68px;
		position: absolute;
		top: -48px;
		left: 86px;
	}
	#feature .other_service .image_block {
		margin: 0 0 15px;
	}
	#feature .other_service .text_block {
		font-size: 17px;
	}
	#feature .other_service .text_block .comment {
		font-size: 11px;
		margin: 4px 0 0;
	}
}
@media ( min-width: 897px ){
	#feature .feature1,
	#feature .feature2 {
		width: 45.2%;
	}
	#feature .feature1 {
		float: left;
	}
	#feature .feature2 {
		float: right;
	}
	#feature .feature_wrap::before {
		content: '';
		display: block;
		position: absolute;
	}
	#feature .feature_wrap.feature1::before {
		background: url('img/feature_number1.png') no-repeat;
		background-size: cover;
		width: 60px;
		height: 154px;
		top: 103px;
		right: -13px;
	}
	#feature .feature_wrap.feature2::before {
		background: url('img/feature_number2.png') no-repeat;
		background-size: cover;
		z-index: 3;
		width: 94px;
		height: 155px;
		top: 428px;
		left: -77px;
	}
	#feature .feature_wrap.feature3::before {
		background: url('img/feature_number3.png') no-repeat;
		background-size: cover;
		width: 98px;
		height: 155px;
		top: 145px;
		left: 330px;
	}
	#feature .feature3 {
		display: table;
		table-layout: fixed;
		position: relative;
		top: -71px;
		left: 0;
		margin: 0 0 123px;
	}
	#feature .feature3 .text_block,
	#feature .feature3 .image_block {
		display: table-cell;
		vertical-align: bottom;
	}
	#feature .feature3 .text_block {
		box-sizing: border-box;
		width: 48.2%;
	}
	#feature .feature3 .image_block {
		width: 51.8%;
	}
	#feature .other_service .service1,
	#feature .other_service .service2 {
		width: 47.8%;
	}
	#feature .other_service .service1 {
		float: left;
	}
	#feature .other_service .service2 {
		float: right;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#feature .feature1 {
		margin: 0 0 40px;
	}
	#feature .feature2 {
		margin: 0 0 35px;
	}
	#feature .feature3 {
		margin: 0 0 60px;
	}
	#feature .feature3 .image_block {
		margin: 0 0 30px;
	}
	#feature .feature_wrap.feature1 .text_block::before {
		width: 47px;
		height: 120px;
		bottom: -100px;
		left: 5px;
	}
	#feature .feature_wrap.feature2 .text_block::before {
		width: 73px;
		height: 120px;
		top: -70px;
		right: 20px;
		z-index: 3;
	}
	#feature .feature_wrap.feature3 .text_block::before {
		width: 76px;
		height: 120px;
		top: -100px;
		left: 0;
	}
	#feature .feature_wrap li {
		font-size: 14px;
	}
	#feature .other_service .service1 {
		margin: 0 0 40px;
	}
}
@media ( max-width: 896px ){
	#feature .feature_wrap .text_block {
		position: relative;
	}
	#feature .feature_wrap .text_block::before {
		content: '';
		display: block;
		position: absolute;
	}
	#feature .feature_wrap.feature1 .text_block::before {
		background: url('img/feature_number1.png') no-repeat;
		background-size: cover;
	}
	#feature .feature_wrap.feature2 .text_block::before {
		background: url('img/feature_number2.png') no-repeat;
		background-size: cover;
	}
	#feature .feature_wrap.feature3 .text_block::before {
		background: url('img/feature_number3.png') no-repeat;
		background-size: cover;
	}
	#feature .feature1 .image_block {
		padding: 0 0 0 23.3%;
	}
	#feature .feature2 .image_block {
		padding: 0 23.3% 0 0;
	}
	#feature .feature3 .image_block {
		padding: 0 0 0 23.3%;
	}
}
@media ( max-width: 479px ){
	#feature {
		padding: 9.33vw 0 26.67vw;
	}
	#feature .common_title {
		margin: 0 0 9.07vw;
	}
	#feature .common_title .lead_image {
		width: 40.27vw;
	}
	#feature .common_title .bg_title .title_text {
		letter-spacing: -0.05em;
	}
	#feature .feature1,
	#feature .feature2 {
		margin: 0 0 10.67vw;
	}
	#feature .feature3 {
		margin: 0 0 16.53vw;
	}
	#feature .feature_wrap .title {
		font-size: 5.6vw;
		margin: 0 0 4vw;
	}
	#feature .feature1 .text_block {
		margin: 0 0 7.33vw;
	}
	#feature .feature3 .image_block {
		margin: 0 0 4.67vw;
	}
	#feature .feature_wrap li {
		line-height: 1.75;
	}
	#feature .feature2 .image_block {
		margin: 0 0 5.33vw;
	}
	#feature .feature_wrap.feature1 .text_block::before {
		width: 11.07vw;
		height: 28.53vw;
		bottom: -22.67vw;
		left: 0.67vw;
	}
	#feature .feature_wrap.feature2 .text_block::before {
		width: 17.47vw;
		height: 28.8vw;
		top: 0;
		right: 6vw;
	}
	#feature .feature_wrap.feature3 .text_block::before {
		width: 18.27vw;
		height: 29.07vw;
		top: -26.4vw;
		left: 0;
	}
	#feature .other_service {
		border-radius: 1.33vw;
		padding: 4.67vw;
	}
	#feature .other_service .title {
		font-size: 4.53vw;
		margin: 0 0 4.67vw;
	}
	#feature .other_service .title .happy {
		width: 16.13vw;
		position: absolute;
		top: -10vw;
		left: 14.4vw;
	}
	#feature .other_service .service1 {
		margin: 0 0 8vw;
	}
	#feature .other_service .image_block {
		margin: 0 0 2vw;
	}
	#feature .other_service .text_block {
		font-size: 4.53vw;
	}
	#feature .other_service .text_block .comment {
		font-size: 2.93vw;
		margin: 0.8vw 0 0;
	}
}
/*------------------------------------------------------
#plan
------------------------------------------------------*/
#plan {
	background: #ededed;
}
#plan .plan_tbl table {
	width: 100%;
}
#plan .plan_tbl th,
#plan .plan_tbl td {
	box-sizing: border-box;
}
#plan .plan_tbl thead th {
	vertical-align: top;
}
#plan .plan_tbl thead th.basic {
	background: #eedcdd;
}
#plan .plan_tbl thead th.silver {
	background: #efacae;
}
#plan .plan_tbl thead th.gold {
	background: #f17b7f;
}
#plan .plan_tbl thead th.premium {
	background: #f24a50;
}
#plan .plan_tbl thead th .monthly_price {
	font-weight: bold;
	line-height: 1.3;
}
#plan .plan_tbl thead th .plan_name {
	font-weight: bold;
}
#plan .plan_tbl thead th .text {
	line-height: 1.58;
}
#plan .plan_tbl tbody th {
	background: #ddd;
	text-align: center;
}
#plan .plan_tbl tbody th .comment {
	padding: 0 0 0 0.2em;
}
#plan .plan_tbl tbody td {
	background: #fff;
}
#plan .plan_tbl tbody td .lump,
#plan .plan_tbl tbody td .supplement {
	display: block;
}
#plan .tbl_comment {
	text-align: left;
}
#plan .tbl_comment li {
	margin: 0 0 0.8em;
}
@media ( min-width: 480px ){
	#plan {
		padding: 70px 0 150px;
	}
	#plan .common_title {
		margin: 0 0 47px;
	}
	#plan .common_title .lead_image {
		width: 39px;
	}
	#plan .common_title .bg_title {
		margin: 0 0 6px;
	}
	#plan .plan_tbl table {
		margin: 0 0 20px;
	}
	#plan .plan_tbl th,
	#plan .plan_tbl td {
		border: 1px solid #ededed;
	}
	#plan .plan_tbl thead th {
		padding: 37px 10px;
	}
	#plan .plan_tbl thead th .monthly_price {
		font-size: 10px;
		margin: 0 0 15px;
	}
	#plan .plan_tbl thead th .plan_name {
		font-size: 17px;
		margin: 0 0 15px;
	}
	#plan .plan_tbl thead th.basic .plan_name .image_block {
		width: 101px;
	}
	#plan .plan_tbl thead th.silver .plan_name .image_block {
		width: 119px;
	}
	#plan .plan_tbl thead th.gold .plan_name .image_block {
		width: 89px;
	}
	#plan .plan_tbl thead th.premium .plan_name .image_block {
		width: 155px;
	}
	#plan .plan_tbl thead th .plan_name .image_block {
		margin: 0 0 10px;
	}
	#plan .plan_tbl thead th.basic .plan_name .image_block {
		width: 101px;
	}
	#plan .plan_tbl thead th.silver .plan_name .image_block {
		width: 119px;
	}
	#plan .plan_tbl thead th.gold .plan_name .image_block {
		width: 89px;
	}
	#plan .plan_tbl thead th.premium .plan_name .image_block {
		width: 155px;
	}
	#plan .plan_tbl tbody th {
		font-size: 13px;
	}
	#plan .plan_tbl tbody th .comment {
		font-size: 10px;
	}
	#plan .plan_tbl tbody td {
		padding: 25px 0;
		font-size: 17px;
	}
	#plan .plan_tbl tbody td .lump {
		font-size: 14px;
		margin: 9px 0 0;
	}
	#plan .plan_tbl tbody td .supplement {
		font-size: 14px;
		margin: 0 0 9px;
	}
	#plan .tbl_comment {
		font-size: 11px;
	}
}
@media ( min-width: 897px ){
	#plan .plan_tbl th,
	#plan .plan_tbl td {
		width: 20%;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#plan .plan_tbl {
		margin: 0 0 15px;
	}
	#plan .plan_tbl table {
		width: 1000px;
	}
	#plan .plan_tbl thead th {
		min-width: 165px;
	}
	#plan .plan_tbl::-webkit-scrollbar {
		height: 2px;
	}
	#plan .plan_tbl::-webkit-scrollbar-track {
		box-shadow: 0 0 4px #bebebe inset;
	}
}
@media ( max-width: 896px ){
	#plan .plan_tbl {
		overflow-x: auto;
	}
	#plan .plan_tbl::-webkit-scrollbar-thumb {
		background: #000;
	}
	#plan .tbl_comment {
		line-height: 1.7;
	}
}
@media ( max-width: 479px ){
	#plan {
		padding: 19.33vw 0 26.67vw;
	}
	#plan .common_title {
		margin: 0 0 10vw;
	}
	#plan .common_title .lead_image {
		width: 10.27vw;
	}
	#plan .common_title .bg_title {
		margin: 0 0 1.33vw;
	}
	#plan .inner.tbl_wrap {
		padding: 0 0 0 5.33vw;
	}
	#plan .plan_tbl {
		margin: 0 0 4.53vw;
	}
	#plan .plan_tbl table {
		width: 203.73vw;
		margin: 0 0 4vw;
	}
	#plan .plan_tbl th,
	#plan .plan_tbl td {
		border: 0.27vw solid #ededed;
	}
	#plan .plan_tbl thead th {
		width: 43.2vw;
		padding: 6vw 4vw;
	}
	#plan .plan_tbl thead th.emp {
		width: 15.2%;
	}
	#plan .plan_tbl thead th .monthly_price {
		font-size: 2.67vw;
		margin: 0 0 2vw;
	}
	#plan .plan_tbl thead th .plan_name {
		font-size: 4vw;
		margin: 0 0 4vw;
		letter-spacing: -0.05em;
		white-space: nowrap;
	}
	#plan .plan_tbl thead th .plan_name .image_block {
		margin: 0 0 2vw;
	}
	#plan .plan_tbl thead th.basic .plan_name .image_block {
		width: 26.93vw;
	}
	#plan .plan_tbl thead th.silver .plan_name .image_block {
		width: 31.6vw;
	}
	#plan .plan_tbl thead th.gold .plan_name .image_block {
		width: 23.87vw;
	}
	#plan .plan_tbl thead th.premium .plan_name .image_block {
		width: 41.33vw;
	}
	#plan .plan_tbl thead th .text {
		font-size: 2.93vw;
	}
	#plan .plan_tbl tbody th {
		white-space: nowrap;
	}
	#plan .plan_tbl tbody th .comment {
		font-size: 2.67vw;
	}
	#plan .plan_tbl tbody td {
		padding: 8vw 1em;
		font-size: 3.73vw;
	}
	#plan .plan_tbl tbody td .lump {
		font-size: 2.67vw;
		margin: 2vw 0 0;
	}
	#plan .plan_tbl tbody td .supplement {
		font-size: 2.67vw;
		margin: 0 0 2vw;
	}
	#plan .plan_tbl::-webkit-scrollbar {
		height: 0.27vw;
	}
	#plan .plan_tbl::-webkit-scrollbar-track {
		box-shadow: 0 0 0.27vw #bebebe inset;
	}
}
@media ( min-width: 1101px ) {
	#plan .plan_tbl thead th {
		padding: 37px 20px;
	}
}
/*------------------------------------------------------
#flow
------------------------------------------------------*/
#flow .flow_block {
	position: relative;
	background: #ededed;
	width: 100%;
	box-sizing: border-box;
}
#flow .flow_block:last-of-type {
	margin: 0;
}
#flow .flow_block::before,
#flow .flow_block::after {
	content: '';
	display: block;
}
#flow .flow_block::before {
	background: url('img/flow_circle.png') no-repeat;
	background-size: cover;
	position: absolute;
	z-index: 3;
}
#flow .flow_block::after {
	background: #f24a50;
	position: absolute;
	z-index: 2;
}
#flow .flow_block .text_block dt {
	font-weight: 700;
}
#flow .flow_block .text_block dd {
	line-height: 1.57;
}
#flow .flow_block .text_block dd .comment {
	display: block;
}
@media ( min-width: 480px ){
	#flow {
		padding: 70px 0 150px;
	}
	#flow .common_title {
		margin: 0 0 48px;
	}
	#flow .common_title .lead_image {
		width: 41px;
	}
	#flow .content_block {
		padding: 0 0 0 20px;
	}
	#flow .flow_block {
		margin: 0 0 40px;
		border-radius: 5px;
	}
	#flow .flow_block::before {
		width: 10px;
		height: 10px;
		left: -25px;
	}
	#flow .flow_block::after {
		width: 1px;
		left: -21px;
	}
	#flow .flow_block .step_title .image {
		width: 71px;
	}
	#flow .flow_block.step1 .image_block .image {
		width: 83px;
	}
	#flow .flow_block.step2 .image_block .image {
		width: 59px;
	}
	#flow .flow_block.step3 .image_block .image {
		width: 89px;
	}
	#flow .flow_block .text_block dt {
		font-size: 21px;
		margin: 0 0 17px;
	}
	#flow .flow_block .text_block dd .comment {
		font-size: 11px;
		margin: 8px 0 0;
	}
}
@media ( min-width: 897px ){
	#flow .flow_block {
		display: table;
		height: 200px;
		padding: 0 30px;
	}
	#flow .flow_block::before {
		top: 0;
		bottom: 0;
		margin: auto 0;
	}
	#flow .flow_block.step1::after {
		height: calc( 50% + 40px );
		top: 50%;
	}
	#flow .flow_block.step2::after {
		height: 100%;
		top: 0;
	}
	#flow .flow_block.step3::after {
		height: calc( 50% + 40px );
		top: -40px;
	}
	#flow .flow_block .step_title,
	#flow .flow_block .image_block,
	#flow .flow_block .text_block {
		display: table-cell;
		vertical-align: middle;
	}
	#flow .flow_block .step_title {
		width: 110px;
	}
	#flow .flow_block .image_block {
		width: 123px;
	}
	#flow .flow_block .text_block {
		width: calc( 100% - 283px );
		text-align: left;
	}
	#flow .flow_block .text_block dd {
		font-size: 14px;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#flow .content_block {
		max-width: 500px;
		margin: 0 auto;
	}
	#flow .flow_block {
		padding: 40px;
	}
	#flow .flow_block::before {
		top: 51px;
	}
	#flow .flow_block.step1::after {
		height: calc( 100% - 51px );
		top: 51px;
	}
	#flow .flow_block.step2::after {
		height: calc( 100% + 80px );
		top: -40px;
	}
	#flow .flow_block.step3::after {
		height: 51px;
		top: 0;
	}
	#flow .flow_block .image_block {
		margin: 0 0 30px;
	}
	#flow .flow_block .text_block dd {
		font-size: 16px;
	}
}
@media ( max-width: 896px ){
	#flow .flow_block .image_block .image {
		margin: 0 auto;
	}
	#flow .flow_block .text_block dd {
		text-align: left;
	}
}
@media ( max-width: 479px ){
	#flow {
		padding: 20vw 0 26.67vw;
	}
	#flow .common_title {
		margin: 0 0 9.33vw;
	}
	#flow .common_title .lead_image {
		width: 10.93vw;
	}
	#flow .content_block {
		padding: 0 0 0 5.33vw;
	}
	#flow .flow_block {
		margin: 0 0 5.33vw;
		border-radius: 1.33vw;
		padding: 5.33vw 4vw;
	}
	#flow .flow_block::before {
		width: 2.67vw;
		height: 2.67vw;
		top: 7.47vw;
		left: -5.33vw;
	}
	#flow .flow_block::after {
		width: 0.27vw;
		left: -4.27vw;
	}
	#flow .flow_block.step1::after {
		top: 7.47vw;
		height: calc( 100% - 7.47vw );
	}
	#flow .flow_block.step2::after {
		top: -6vw;
		height: calc( 100% + 11vw );
	}
	#flow .flow_block.step3::after {
		top: 0;
		height: 7.47vw;
	}
	#flow .flow_block .step_title .image {
		width: 17.87vw;
	}
	#flow .flow_block .image_block {
		margin: 0 0 6.67vw;
	}
	#flow .flow_block.step1 .image_block .image {
		width: 22vw;
	}
	#flow .flow_block.step2 .image_block .image {
		width: 15.73vw;
	}
	#flow .flow_block.step3 .image_block .image {
		width: 23.73vw;
	}
	#flow .flow_block .text_block dt {
		font-size: 5.6vw;
		margin: 0 0 17px;
	}
	#flow .flow_block .text_block dd {
		font-size: 3.73vw;
	}
	#flow .flow_block .text_block dd .comment {
		font-size: 2.93vw;
		margin: 1.07vw 0 0;
	}
}
/*------------------------------------------------------
#faq
------------------------------------------------------*/
#faq {
	background: #ededed;
}
#faq .faq_block {
	text-align: left;
	box-sizing: border-box;
	background: #fff;
}
#faq .faq_block .que {
	position: relative;
	color: #f2353c;
	font-weight: 700;
	line-height: 1.25;
}
#faq .faq_block .que::before {
	content: '';
	display: block;
	background: url('img/faq_que_icon.png') no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0;
}
#faq .faq_block .ans {
	line-height: 1.57;
}
@media ( min-width: 480px ){
	#faq {
		padding: 120px 0 110px;
	}
	#faq .common_title {
		margin: 0 0 40px;
	}
	#faq .common_title .lead_image {
		width: 27px;
	}
	#faq .faq_block {
		border-radius: 5px;
		padding: 35px 40px;
	}
	#faq .faq_block .que {
		font-size: 16px;
		margin: 0 0 20px;
		padding: 0 0 3px 33px;
	}
	#faq .faq_block .que::before {
		width: 25px;
		height: 25px;
	}
	#faq .faq_block .ans {
		font-size: 14px;
	}
}
@media ( min-width: 897px ){
	#faq .faq_block {
		float: left;
		width: 48%;
		min-height: 185px;
		margin: 0 0 40px 4%;
	}
	#faq .faq_block:first-child,
	#faq .faq_block:nth-child(2n+1){
		margin: 0 0 40px 0;
		clear: left;
	}
}
@media ( min-width: 480px ) and ( max-width: 896px ){
	#faq .faq_block {
		margin: 0 0 30px;
	}
}
@media ( max-width: 479px ){
	#faq {
		padding: 18vw 0 23.33vw;
	}
	#faq .common_title {
		margin: 0 0 9.6vw;
	}
	#faq .common_title .lead_image {
		width: 7.2vw;
	}
	#faq .faq_block {
		border-radius: 1.33vw;
		padding: 2.93vw 2.67vw;
		margin: 0 0 2.67vw;
	}
	#faq .faq_block .que {
		font-size: 3.73vw;
		padding: 0 8.53vw 0 8.8vw;
	}
	#faq .faq_block .que.on {
		margin: 0 0 4.67vw;
	}
	#faq .faq_block .que::before {
		width: 6.93vw;
		height: 6.93vw;
	}
	#faq .faq_block .que .toggle_btn {
		width: 3.47vw;
		height: 3.47vw;
		background: url('img/faq_que_open.png') no-repeat;
		background-size: cover;
		position: absolute;
		top: 0.53vw;
		right: 1.33vw;
	}
	#faq .faq_block .que.on .toggle_btn {
		background: url('img/faq_que_close.png') no-repeat;
		background-size: cover;
	}
	#faq .faq_block .ans {
		visibility: hidden;
		height: 0;
		font-size: 3.73vw;
		opacity: 0;
		transition: opacity .5s;
	}
	#faq .faq_block .ans.on {
		height: auto;
		visibility: visible;
		opacity: 1;
		transition: opacity .5s;
	}
}
/*------------------------------------------------------
#contact
------------------------------------------------------*/
#contact .form_wrap .answer{
	font-size: 12px; 
}

#contact .form_wrap2 {
	border: 1px solid #ddd;
	padding: 15px; 
	background-color: #eee;
}
#contact .form_wrap .item {
	text-align: left;
}
#contact .form_wrap .item .radio {
	font-size: 0;
}
#contact .form_wrap .item .select {
	display: inline-block;
	overflow: hidden;
	text-align: center;
	position: relative;
	background: #fff;
}
#contact .form_wrap .item .select select {
	width: 100%;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
#contact .form_wrap .item .select select::-ms-expand {
	display: none;
}
#contact .form_wrap .item .select::before {
	position: absolute;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	pointer-events: none;
}
#contact .form_wrap .item .select select {
	color: #222;
}
#contact .form_wrap .item .radio span,
#contact .form_wrap .item .check span,
#contact .consent .check span {
	display: inline-block;
}
#contact .form_wrap .item input[type="checkbox"],
#contact .form_wrap .item input[type="radio"],
#contact .consent input[type="checkbox"] {
	display: none;
}
#contact .form_wrap .item input[type="checkbox"] + label,
#contact .form_wrap .item input[type="radio"] + label,
#contact .consent input[type="checkbox"] + label {
	display: block;
	position: relative;
}
#contact .form_wrap .item input[type="radio"] + label:before {
	display: block;
	position: absolute;
	content: '';
	left: 0;
	background: #fff;
	border-radius: 50%;
	box-sizing: border-box;
	transition: all .12s, border-color .08s;
}
#contact .form_wrap .item input[type="checkbox"] + label:before,
#contact .consent input[type="checkbox"] + label:before {
	display: block;
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	background: #fff;
	box-sizing: border-box;
	transition: all .12s, border-color .08s;
}
#contact .form_wrap .item input[type="radio"]:checked + label,
#contact .form_wrap .item input[type="checkbox"]:checked + label {
/*	color: #f2353c;*/
}
#contact .form_wrap .item input[type="checkbox"]:checked + label:after,
#contact .consent input[type="checkbox"]:checked + label:after {
	content: '';
	display: block;
	background: url('img/contact_check_checked.png') no-repeat;
	background-size: cover;
	position: absolute;
}
#contact .form_wrap .item input[type="radio"]:checked + label:after {
	display: block;
	position: absolute;
	content: '';
	background: #f2353c;
	border-radius: 50%;
}
#contact .form_wrap .item .item_title {
	font-weight: 700;
}
#contact input[type="text"],
#contact textarea {
	width: 100%;
	background: #ededed;
	box-sizing: border-box;
}
#contact textarea {
	resize: none;
}
#contact .terms {
	text-align: left;
	line-height: 1.69;
	overflow-y: auto;
	margin: 0 0 33px;
}
#contact .terms::-webkit-scrollbar-track{
	background: #bebebe;
}
#contact .terms::-webkit-scrollbar-thumb{
	background: #000;
}
#contact .submit input[type="submit"] {
	color: #fff;
	cursor: pointer;
	background: #f24a50;
	font-weight: 700;
	border: none;
}
#contact .submit input[type="submit"]:hover {
	background: #111;
}
#contact .submit input[type="button"] {
	margin-right: 5px;
	color: #fff;
	cursor: pointer;
	background: #02C1E3;
	font-weight: 700;
	border: none;
}
#contact .submit input[type="button"]:hover {
	background: #111;
}
#contact .err {
	display: inline-block;
	margin: 0.5em 0 0;
	font-size: 85%;
	color: #f2353c;
}
#contact .item .required_mark {
	position: relative;
}
#contact .item .required_mark::before {
	content: '必須';
	color: #fff;
	background: #f2353c;
	padding: 0.2em 0.7em 0.3em;
	margin: 0 0.5em 0 0;
	font-weight: 400;
}

@media ( min-width: 480px ){
	#contact {
		padding: 95px 0 110px;
	}
	#contact .common_title {
		margin: 0 0 45px;
	}
	#contact .common_title .lead_image {
		width: 67px;
	}
	#contact .form_wrap {
		margin: 0 0 25px;
	}
	#contact .form_wrap .item {
		font-size: 13px;
	}
	#contact .form_wrap .item .radio,
	#contact .form_wrap .item .check {
		margin: -15px 0 0;
	}
	#contact .form_wrap .item .select {
		border: 1px solid #ccc;
		border-radius: 5px;
	}
	#contact .form_wrap .item .select::before {
		top: 21px;
		right: 15px;
		border-left: 6px solid transparent;
		border-right: 6px solid transparent;
		border-top: 6px solid #f2353c;
	}
	#contact .form_wrap .item .select select {
		padding: 15px 60px 15px 15px;
	}
	#contact .form_wrap .item .radio span,
	#contact .form_wrap .item .check span,
	#contact .consent .check span {
		font-size: 13px;
		margin: 20px 20px 0 0;
	}
	#contact .form_wrap .item .radio span:last-of-type,
	#contact .form_wrap .item .check span:last-of-type {
		margin: 20px 0 0;
	}
	#contact .form_wrap .item input[type="checkbox"] + label,
	#contact .form_wrap .item input[type="radio"] + label,
	#contact .consent input[type="checkbox"] + label {
		padding: 0 0 0 22px;
		line-height: 16px;
	}
	#contact .form_wrap .item input[type="radio"] + label:before {
		width: 18px;
		height: 18px;
		top: -1px;
		border: 1px solid #ccc;
	}
	#contact .form_wrap .item input[type="checkbox"] + label:before,
	#contact .consent input[type="checkbox"] + label:before {
		width: 16px;
		height: 16px;
		border-radius: 5px;
		border: 1px solid #ccc;
	}
	#contact .form_wrap .item input[type="checkbox"]:checked + label:after,
	#contact .consent input[type="checkbox"]:checked + label:after {
		width: 9px;
		height: 8px;
		top: 4px;
		left: 4px;
	}
	#contact .form_wrap .item input[type="radio"]:checked + label:after {
		width: 10px;
		height: 10px;
		top: 3px;
		left: 4px;
	}
	#contact .form_wrap .item .item_title {
		margin: 0 0 15px;
	}
	#contact input[type="text"],
	#contact textarea {
		padding: 15px;
		border-radius: 5px;
		border: 1px solid #ededed;
	}
	#contact .terms {
		height: 145px;
		padding: 20px 25px 0;
		font-size: 13px;
		border-radius: 5px;
		border: 1px solid #ccc;
		margin: 0 0 33px;
	}
	#contact .terms::-webkit-scrollbar{
		width: 4px;
	}
	#contact .consent {
		font-size: 13px;
		margin: 0 0 33px;
	}
	#contact .submit input[type="submit"] {
		width: 275px;
		height: 55px;
		font-size: 16px;
		border-radius: 5px;
		transition-property: color, background-color, border-color, fill;
		transition-duration: .3s;
	}
	#contact .submit input[type="button"] {
		width: 275px;
		height: 55px;
		font-size: 16px;
		border-radius: 5px;
		transition-property: color, background-color, border-color, fill;
		transition-duration: .3s;
	}
	#contact .form_wrap .item {
		margin: 0 0 38px;
	}
	#contact input[type="text"].w800 {
		max-width: 800px;
	}
	#contact input[type="text"].w700 {
		max-width: 700px;
	}
	#contact input[type="text"].w600 {
		max-width: 600px;
	}
	#contact input[type="text"].w500 {
		max-width: 500px;
	}
	#contact input[type="text"].w400 {
		max-width: 400px;
	}
	#contact input[type="text"].w300 {
		max-width: 300px;
	}
	#contact .item .required_mark::before {
		border-radius: 3px;
		font-size: 11px;
	}
	#contact textarea {
		height: 5.4em;
	}
}
@media ( min-width: 897px ){
/*	#contact .form_wrap .item {
		float: left;
		width: 46.5%;
		margin: 0 0 38px 7%;
	}
	#contact .form_wrap .item:first-of-type,
	#contact .form_wrap .item:nth-of-type(2n+1) {
		clear: both;
		margin: 0 0 38px 0;
	}
*/}
@media ( min-width: 480px ) and ( max-width: 896px ){
/*	#contact .form_wrap .item {
		margin: 0 0 38px;
	}
*/}
@media ( max-width: 896px ){
}
@media ( max-width: 479px ){
	#contact {
		padding: 20.67vw 0;
	}
	#contact .common_title {
		margin: 0 0 10.67vw;
	}
	#contact .common_title .lead_image {
		width: 18vw;
	}
	#contact .form_wrap .item {
		margin: 0 0 6.67vw;
	}
	#contact .form_wrap .item .radio,
	#contact .form_wrap .item .check {
		margin: -4vw 0 0;
	}
	#contact .form_wrap .item .radio span,
	#contact .form_wrap .item .check span {
		font-size: 3.2vw;
	}
	#contact .form_wrap .item .radio.mw50 span,
	#contact .form_wrap .item .check.mw50 span {
		float: left;
		min-width: 50%;
	}
	#contact .form_wrap .item .select {
		box-sizing: border-box;
		width: 62vw;
		border: 0.27vw solid #ccc;
		border-radius: 1.33vw;
	}
	#contact .form_wrap .item .select::before {
		top: 6.13vw;
		right: 4vw;
		border-left: 1.6vw solid transparent;
		border-right: 1.6vw solid transparent;
		border-top: 1.6vw solid #f2353c;
	}
	#contact .form_wrap .item .select select {
		padding: 4.93vw 10.67vw 5.33vw 4.67vw;
	}
	#contact .form_wrap .item .radio span,
	#contact .form_wrap .item .check span,
	#contact .consent .check span {
		margin: 4vw 5.33vw 0 0;
	}
	#contact .form_wrap .item .radio.mw50 span,
	#contact .form_wrap .item .check.mw50 span,
	#contact .consent .check span {
		margin-right: 0;
	}
	#contact .form_wrap .item .radio span:last-of-type,
	#contact .form_wrap .item .check span:last-of-type {
		margin: 4vw 0 0;
	}
	#contact .form_wrap .item input[type="checkbox"] + label,
	#contact .form_wrap .item input[type="radio"] + label,
	#contact .consent input[type="checkbox"] + label {
		padding: 0 0 0 6vw;
		line-height: 4.13vw;
	}
	#contact .form_wrap .item input[type="radio"] + label:before {
		width: 4.53vw;
		height: 4.53vw;
		top: -0.4vw;
		border: 0.27vw solid #ccc;
	}
	#contact .form_wrap .item input[type="checkbox"] + label:before,
	#contact .consent input[type="checkbox"] + label:before {
		width: 4.13vw;
		height: 4.13vw;
		border-radius: 1.33vw;
		border: 0.27vw solid #ccc;
	}
	#contact .form_wrap .item input[type="checkbox"]:checked + label:after,
	#contact .consent input[type="checkbox"]:checked + label:after {
		width: 2.4vw;
		height: 2.13vw;
		top: 0.93vw;
		left: 0.93vw;
	}
	#contact .form_wrap .item input[type="radio"]:checked + label:after {
		width: 2.67vw;
		height: 2.67vw;
		top: 0.4vw;
		left: 1.07vw;
	}
	#contact .form_wrap .item .item_title {
		margin: 0 0 4vw;
	}
	#contact input[type="text"],
	#contact textarea {
		padding: 4.67vw 4vw;
		border-radius: 1.33vw;
		border: 0.27vw solid #ededed;
	}
	#contact textarea {
		height: 6.2em;
	}
	#contact .terms {
		height: 44.8vw;
		padding: 6vw 7.33vw 0;
		font-size: 3.47vw;
		border-radius: 1.33vw;
		border: 0.27vw solid #ccc;
		margin: 0 0 8vw;
	}
	#contact .terms::-webkit-scrollbar{
		width: 0.27vw;
	}
	#contact .consent {
		font-size: 3.47vw;
		margin: 0 0 8vw;
	}
	#contact .submit input[type="submit"] {
		width: 100%;
		height: 14.67vw;
		font-size: 4.27vw;
		border-radius: 1.33vw;
	}
	#contact .submit input[type="button"] {
		width: 100%;
		height: 14.67vw;
		font-size: 4.27vw;
		border-radius: 1.33vw;
	}
	#contact .item .required_mark::before {
		border-radius: 0.8vw;
		font-size: 2.93vw;
	}
}
/*===========================
#right_conversion_btn
===========================*/
#right_conversion_btn {
	position: fixed;
	z-index: 50;
	opacity: 0;
	transition: opacity 0.5s;
}
#right_conversion_btn.fix {
	opacity: 1;
}
#right_conversion_btn a {
	display: block;
	width: 100%;
}
@media ( min-width: 480px ){
	#right_conversion_btn {
		width: 110px;
		height: 110px;
		bottom: 50px;
		right: 15px;
	}
}
@media ( max-width: 479px ){
	#right_conversion_btn {
		width: 28vw;
		height: 28vw;
		bottom: 4vw;
		right: 5.33vw;
	}
}
/*===========================
#footer
===========================*/
#footer .sns li {
	display: inline-block;
}
#footer .sns li:last-child {
	margin: 0;
}
#footer .sns li a {
	position: relative;
	background: #f24a50;
	display: block;
	width: 100%;
	border-radius: 50%;
}
#footer .sns li a:hover {
	background: #111;
}
#footer .sns li a span {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
#footer .logo_copy .logo {
	float: left;
}
#footer .logo_copy .copy {
	float: right;
}
#footer .logo_copy .logo a {
	display: inline-block;
	width: 100%;
}
@media ( min-width: 480px ){
	#footer .sns {
		margin: 0 0 85px;
	}
	#footer .sns .title {
		width: 102px;
		margin: 0 auto 18px;
	}
	#footer .sns li {
		width: 47px;
		margin: 0 15px 0 0;
	}
	#footer .sns li a {
		height: 47px;
	}
	#footer .sns li a span {
		width: 15px;
		height: 15px;
	}
	#footer .logo_copy {
		padding: 0 20px;
		height: 54px;
	}
	#footer .logo_copy .logo {
		padding: 14px 0 0;
		width: 82px;
	}
	#footer .logo_copy .copy {
		font-size: 10px;
		line-height: 54px;
	}
	#footer .logo_copy .logo a:hover {
		opacity: 0.7;
		transition-property: opacity;
		transition-duration: .3s;
	}
}
@media ( max-width: 479px ){
	#footer .sns {
		margin: 0 0 17.33vw;
	}
	#footer .sns .title {
		width: 27.2vw;
		margin: 0 auto 4.67vw;
	}
	#footer .sns li {
		width: 12.53vw;
		margin: 0 4vw 0 0;
	}
	#footer .sns li a {
		height: 12.53vw;
	}
	#footer .sns li a span {
		width: 4vw;
		height: 4vw;
	}
	#footer .logo_copy {
		padding: 0 5.33vw;
		height: 11.73vw;
	}
	#footer .logo_copy .logo {
		padding: 2.53vw 0 0;
		width: 21.73vw;
	}
	#footer .logo_copy .copy {
		font-size: 2.67vw;
		line-height: 11.73vw;
	}
}


/*--------------------------------------
effect
--------------------------------------*/
.bounce {
	animation: bounce_6914 4.6s ease infinite;
	transform-origin: 50% 50%;
}
@keyframes bounce_6914 {
	0% { transform:translateY(0) }
	4.34783% { transform:translateY(0) }
	8.69565% { transform:translateY(0) }
	17.3913% { transform:translateY(-3px) }
	21.73913% { transform:translateY(0) }
	26.08696% { transform:translateY(-3px) }
	34.78261% { transform:translateY(0) }
	100% { transform:translateY(0) }
}
.shake {
	animation: shake_312 4.875s ease infinite;
	transform-origin: 50% 50%;
}
@keyframes shake_312 {
	0% { transform:rotate(-0.5deg) }
	4.10257% { transform:rotate(0.5deg) }
	5.1282% { transform:rotate(1deg) }
	9.23077% { transform:rotate(-1deg) }
	10.25641% { transform:rotate(-1deg) }
	14.35897% { transform:rotate(1deg) }
	15.38462% { transform:rotate(1deg) }
	19.48718% { transform:rotate(-1deg) }
	20.51282% { transform:rotate(-1deg) }
	24.61538% { transform:rotate(1deg) }
	25.64103% { transform:rotate(1deg) }
	29.74359% { transform:rotate(-1deg) }
	30.76923% { transform:rotate(-1deg) }
	34.8718% { transform:rotate(1deg) }
	38.46154% { transform:rotate(0deg) }
	100% { transform:rotate(0deg) }
}
.double-flash {
	animation: double-flash_3841 2s ease infinite;
	transform-origin: 50% 50%;
}
@keyframes double-flash_3841 {
	0% { opacity:1 }
	12.5% { opacity:0 }
	25% { opacity:1 }
	37.5% { opacity:0 }
	50% { opacity:1 }
	100% { opacity:1 }
}
.vertical {
	animation: vertical_5469 3s ease infinite;
	transform-origin: 50% 50%;
}
@keyframes vertical_5469 {
	0% { transform:translate(0,-5px) }
	2.32558% { transform:translate(0,0) }
	4.65116% { transform:translate(0,-5px) }
	6.97674% { transform:translate(0,0) }
	9.30233% { transform:translate(0,-5px) }
	11.62791% { transform:translate(0,0) }
	12.7907% { transform:translate(0,0) }
	100% { transform:translate(0,0) }
}
@media ( max-width: 479px ){
	@keyframes vertical_5469 {
		0% { transform:translate(0,-0.67vw) }
		2.32558% { transform:translate(0,0) }
		4.65116% { transform:translate(0,-0.67vw) }
		6.97674% { transform:translate(0,0) }
		9.30233% { transform:translate(0,-0.67vw) }
		11.62791% { transform:translate(0,0) }
		12.7907% { transform:translate(0,0) }
		100% { transform:translate(0,0) }
	}
}

/*-----------------------------------
fade style
-----------------------------------*/
.file.delighter {
	transition: transform,opacity .5s ease-out;
	transform: translateY(20%);
	opacity: 0;
}
.file.no2.delighter {
	transition: transform,opacity 1s ease-out;
}
.file.no3.delighter {
	transition: transform,opacity 1.5s ease-out;
}
.file.no4.delighter {
	transition: transform,opacity 2s ease-out;
}
.file.no5.delighter {
	transition: transform,opacity 2.5s ease-out;
}
.file.no6.delighter {
	transition: transform,opacity 3s ease-out;
}
.file.no7.delighter {
	transition: transform,opacity 3.5s ease-out;
}
.file.no8.delighter {
	transition: transform,opacity 4s ease-out;
}
.file.delighter.started {
	transform: none;
	opacity: 1;
}

.feature_wrap.delighter {
	transition: transform,opacity .3s ease-out;
	transform: translateY(20%);
	opacity: 0;
}
.feature_wrap.feature2.delighter {
	transform: translateY(40%);
}
.feature_wrap.delighter.started {
	transform: none;
	opacity: 1;
}

.happy.delighter {
	transition: opacity .8s ease-out;
	opacity: 0;
}
.happy.delighter.started {
	opacity: 1;
}

.flow_block.delighter {
	transition: transform,opacity .3s ease-out;
	transform: translateY(20%);
	opacity: 0;
}
.flow_block.delighter.started {
	opacity: 1;
}

.common_title .bg_title.delighter {
	transition: background-color .5s ease-out;
	background-color: rgba(34,34,34,0);
}
.common_title .bg_title.delighter.started {
	background-color: rgba(34,34,34,1);
}

/* ms custom */
.ms_plan_sp {
    display: none;
}
#right_conversion_btn.fix {
	transition: .3s;
}
#right_conversion_btn.fix:hover, #right_conversion_btn.fix:active {
	opacity: 0.8;
	transition: .3s;
}
@media screen and (max-width:768px){
.inner.tbl_wrap {
    display: none;
}

.ms_plan_sp {
    margin: 64px 0 18px;
    display: block;
}

.ms_plan_block {
    padding: 0 5.33vw;
    margin-bottom: 62px;
	opacity: 0;
	transition: .8s;
}

.ms_plan_block.started {
	opacity: 1;
}

.ms_plan_block.block4 {
    margin-bottom: 0;
}

.ms_plan_head {
    padding: 24px 7vw;
}

.block1 .ms_plan_head {
	background-color: #EEDCDD;
}

.block2 .ms_plan_head {
	background-color: #EFACAE;
}

.block3 .ms_plan_head {
	background-color: #F17B7F;
}

.block4 .ms_plan_head {
	background-color: #F24A50;
}

.ms_plan_headinc {
    max-width: 500px;
    margin: 0 auto;
    text-align: left;
}

.ms_plan_headinc p {
    font-size: 14px;
    padding: 14px 0;
    line-height: 1.3;
}

p.ms_titleunder {
    font-size: 24px;
    font-weight: bold;
    padding: 8px 0 0;
}

.ms_plan_block dl dt {
    font-size: 18px;
    padding: 16px 0;
    background-color: #dddddd;
    border-left: 1px solid #EDEDED;
    border-right: 1px solid #EDEDED;
}

.ms_plan_block dl dd {
    font-size: 26px;
    padding: 19px 0;
    background-color: #ffffff;
    border: 1px solid #EDEDED;
}

.ms_plan_block dl dt span {
    font-size: 14px;
    padding-left: 8px;
}

.ms_plan_block dl dd span {
    font-size: 18px;
    display: block;
}
}


/* 최수원 */


#contact .inner .common_title .bg_title .title_text { font-size: 30px !important; }
#contact .form_wrap .answer { font-size: 12px; font-weight: normal !important; }



/* ms c */
.ms_bnr p.bnr_mid_bg {
    background-color: #222;
    display: inline-block;
    padding: 6px 8px;
    color: #fff;
    font-weight: bold;
    font-size: 32px;
}

.ms_bnr p.bnr_big {
    background-color: #222;
    display: inline-block;
    padding: 6px 14px;
    color: #fff;
    font-weight: bold;
    font-size: 48px;
    margin: 24px 0;
}

.ms_bnr span.red {
    color: #f24a50;
}

.ms_bnr span.bnr_sbig {
    font-size: 92px;
}

.ms_bnr p {
    font-size: 24px;
    font-weight: bold;
}

.ms_bnr {
    margin: 64px 0;
}

.ms_planbox {
    max-width: 500px;
    margin: 28px auto 0;
}

.ms_planbox dl {
    display: flex;
    justify-content: center;
}

.ms_planbox dl dt,.ms_planbox dl dd {
    background-color: #fff;
    padding: 8px 10px;
    margin: 1px;
    font-size: 18px;
    text-align: left;
}

.ms_planbox dl dt {
    width: 125px;
    background-color: #ddd;
}

.ms_planbox dl dd {
    width: 180px;
}