@charset "utf-8";
body {
	-webkit-text-size-adjust: 100%;
	line-height: 1;
	font-size: 16px;
	background: #10112A;
	color: #fff;
	font-weight: 700;
	font-family: 'Noto Sans JP' , "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
}
a {
	color: #fff;
}

#border_display {
	width: 100%;
	min-width: 1200px;
	height: auto;
	overflow: hidden;
}

.yugo{
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
}

/* ============================================
cmn_parts
============================================ */
/* inner */
.mod_inner,
.mod_inner_02{
	height: 100%;
	margin:0 auto;
	position:relative;
}
.mod_inner{
	width:900px;
}
.mod_inner_02{
	width:1000px;
}
.mod_inner:after,
.mod_inner_02:after{
	content:"";
	display:block;
	clear:both;
}
.mod_marker{
	padding: 2px 8px;
	color: #fff;
	background: linear-gradient(transparent 0%, #6B88FF 0%);
}


/* =================== header =================== */
#header .inner{
	width: 1100px;
	background: #10112A;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#header .logo img{
	width: 160px;
	display: block;
	margin-top: 5px;
}
#header .head_btn{
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 460px;
	height: 90px;
}
#header .head_btn a{
	width: 48%;
	height: 55px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	border-radius: 3px;
	text-align: center;
	letter-spacing: 2px;
	font-weight: bold;
	padding-top: 4px;
}
#header .head_btn .btn_entry{
	background: #6B88FF;
}
#header .head_btn .btn_contact{
	background: #BE4FFF;
}
#header.type02{
	padding-top:15px;
	padding-bottom:10px;
}

/* =================== footer =================== */
#footer,
#footer a{
	color: #fff;
}
#footer .copy{
	padding: 21px 0 20px;
	letter-spacing: 2px;
	text-align: center;
	color: #fff;
	background: #10112A;
	font-size: 14px;
	font-weight: bold;
}

#footer .footer-wrapper{
	background: #2f2f2f;
	color: #fff;
	padding: 20px 0;
}

#footer .footer-wrapper ul{
	text-align: center;
	font-size:13px;
}

#footer .footer-wrapper ul li{
	font-weight: 500;
	display: inline-block;
	vertical-align: middle;
	border-right: 1px solid #fff;
	padding: 0 10px;
}

#footer .footer-wrapper ul li:last-child{
	border-right: none;
}

/* =================== mv =================== */
.mv{
	width: 100%;
	height: 500px;
	position: relative;
	background: url(../img/mv_bg01.jpg) no-repeat center center;
	background-size: cover;
}
.mv .inner{
	width: 1000px;
	height: 100%;
	margin: 0 auto;
	position: relative;
}
.mv .mv_img{
	position: absolute;
	right: -11px;
	bottom: 0;
}
.mv .mv_box{
	padding: 57px 0 0 10px;
}
.mv .mv_box .mv_logo{
	margin-bottom: 20px;
	max-width: 450px;
}
.mv .mv_box .mv_cth{
	margin-bottom: 30px;
}
.mv .mv_box .mv_cth p span{
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	display: inline-block;
	padding: 5px 8px;
	margin-bottom: 12px;
	letter-spacing: 5px;
	background: linear-gradient(transparent 0%, #ffc742 0%);
}
.mv .mv_link{
	position: relative;
	z-index: 1;
	max-width: 432px;
	border-radius: 15px;
	overflow: hidden;
	text-align: center;
	color: #fff;
	padding: 22px 0 27px;
	line-height: 1.4;
	font-weight: bold;
	letter-spacing: 0.5px;
}
.mv .mv_link a{
	display: block;
	max-width: 354px;
	border-radius: 5px;
	margin: 14px auto 0;
	background: #fff;
	color: #10112A;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 1px;
	padding: 15px 0;
}
.mv .mv_link:after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	opacity: 0.78;
	background: url(../img/mv_bg03.jpg) no-repeat center center;
	background-size: cover;
}
/* =================== first =================== */
.first .before{
	padding-top: 40px;
}
.first .before .hl01{
	text-align: center;
	font-size: 25px;
	font-weight: bold;
	line-height: 1.9;
	letter-spacing: 2px;
	margin-bottom: 16px;
}
.first .before .hl01 span{
	color: #fff;
	padding: 5px;
	background: linear-gradient(transparent 0%, #002f32 0%);
}
.first .before .img{
	text-align: center;
	position: relative;
	z-index: 2;
	margin: 0 -20px;
}
.first .before .bg01{
	margin-top: -53px;
	background: url(../img/first_bg01.jpg) no-repeat center center;
	background-size: cover;
	padding: 55px 0 27px;
}
.first .before .bg02{
	background: #002f32;
	padding: 30px 0;
	text-align: center;
}
.first .before .hl02{
	font-weight: bold;
	color: #fff;
	position: relative;
	line-height: 1.8;
	font-size: 25px;
	display: inline-block;
	letter-spacing: 2px;
}
.first .before .hl02 span{
	position: absolute;
	background: url(../img/first_icon01.png) no-repeat center center;
	background-size: 106px;
	width: 106px;
	height: 106px;
	text-align: center;
	padding-top: 30px;
	left: -95px;
	top: -105px;
}
.first .after{
	padding-top: 60px;
	position: relative;
	z-index: 5;
}
.first .after .hl01{
	font-weight: bold;
	text-align: center;
	font-size: 25px;
	line-height: 2;
	letter-spacing: 1px;
	margin-bottom: 50px;
}
.first .after .hl01 img{
	width: 340px;
	margin: 0 auto 24px;
	display: block;
}
.first .after .hl01 .mod_marker{
	padding-top:5px;
	padding-bottom:5px;
}
.first .after .box{
	background: #fff;
	border-radius: 5px;
	text-align: center;
	padding: 60px 60px 50px;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
.first .after .box .hl02{
	position: relative;
	z-index: 1;
	margin-bottom: 30px;
}
.first .after .box .hl02:after{
	content: "";
	width: 100%;
	height: 1px;
	background: #ffc742;
	position: absolute;
	z-index: -1;
	left: 0;
	right: 0;
	margin: auto;
	top: 50%;
}
.first .after .box .hl02 span{
	display: inline-block;
	position: relative;
	z-index: 2;
	background: #fff;
	padding: 0 15px;
	font-size: 25px;
	letter-spacing: 1px;
}
.first .after .box ul{
	display: flex;
	justify-content: space-between;
	margin-bottom:58px;
}
.first .after .box ul li{
	width: 29%;
}
.first .after .box .txt01{
	font-size: 25px;
	line-height:1.7;
	letter-spacing: 2px;
}
.first .after .box .txt01 img{
	width: 250px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
}
/* =================== reason =================== */
.reason .bg01{
	position: relative;
	z-index: 2;
	text-align: center;
	padding: 10px 0 30px;
	background: #fff;
}
.reason .bg01:after{
	content: "";
	position: absolute;
	z-index: -1;
	left: 0;
	right: 0;
	bottom: -40px;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 80px 140px 0 140px;
	border-color: #fff transparent transparent transparent;

}
.reason .bg01 .hl01{
	text-align: center;
	font-size: 25px;
	line-height: 2.4;
	letter-spacing: 4px;
}
.reason .bg01 .hl01 img{
	width: 210px;
	margin: 0 10px;
	display: inline-block;
	vertical-align: bottom;
}
.reason .bg01 .hl01 .mod_marker{
	background: linear-gradient(transparent 0%, #ff4338 0%);
}
.reason .bg02{
	position: relative;
	padding: 100px 0 60px;
	z-index: 1;
	background: url(../img/reason_bg.jpg) no-repeat center center;
	background-size: cover;
}
.reason .bg02 .hl01{
	text-align: center;
	font-size: 36px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 2px;
	margin-bottom: 28px;
}
.reason .bg02 .hl01 span{
	font-size: 25px;
}
.reason .bg02 .hl02{
	font-size: 18px;
	color: #ff4338;
	margin-bottom: 15px;
}
.reason .bg02 .box{
	font-weight: bold;
	position: relative;
	padding: 33px 40px;
	background: #fff;
	border-radius: 5px;
	line-height: 1.7;
	font-size: 14px;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
.reason .bg02 .box .image{
	position: absolute;
	right: -75px;
	top: -205px;
	z-index: 1;
}
.reason .bg02 .box p{
	margin-bottom: 20px;
}
.reason .bg02 .box p:last-child{
	margin-bottom: 0;
}
/* =================== reason2 =================== */
.reason2 .bg01{
	position: relative;
	z-index: 2;
	text-align: center;
	padding: 10px 0 30px;
	background: #fff;
}
.reason2 .bg01:after{
	content: "";
	position: absolute;
	z-index: -1;
	left: 0;
	right: 0;
	bottom: -40px;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 80px 140px 0 140px;
	border-color: #fff transparent transparent transparent;

}
.reason2 .bg01 .hl01{
	text-align: center;
	font-size: 25px;
	color: #000;
	line-height: 2.4;
	letter-spacing: 4px;
}
.reason2 .bg01 .hl01 img{
	width: 210px;
	margin: 0 10px;
	display: inline-block;
	vertical-align: bottom;
}
.reason2 .bg01 .hl01 .mod_marker{
	background: linear-gradient(transparent 0%, #ff4338 0%);
}
.reason2 .bg02{
	position: relative;
	padding: 100px 0 60px;
	z-index: 1;
	background: #fff;
	background: url(../img/media_bg.jpg) no-repeat center center;
	background-size: cover;
}
.reason2 .bg02 .hl01{
	text-align: center;
	font-size: 36px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 2px;
	margin-bottom: 28px;
}
.reason2 .bg02 .hl01 span{
	font-size: 25px;
}
.reason2 .bg02 .hl02{
	font-size: 18px;
	color: #000;
	margin-bottom: 15px;
}
.reason2 .bg02 .box{
	font-weight: bold;
	background: #fff;
	position: relative;
	padding: 33px 40px;
	background: #000;
	border-radius: 5px;
	line-height: 1.7;
	font-size: 14px;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
.reason2 .bg02 .box .image{
	position: absolute;
	right: -75px;
	top: -205px;
	z-index: 1;
}
.reason2 .bg02 .box p{
	margin-bottom: 20px;
}
.reason2 .bg02 .box p:last-child{
	margin-bottom: 0;
}
/* =================== flow =================== */
.flow{
	background: #10112A;
}
.flow .bg01{
	padding: 73px 0;
}
.flow .bg01 .hl01{
	text-align: center;
	font-size: 25px;
	line-height: 1.5;
	letter-spacing: 4px;
	margin-bottom:33px;
}
.flow .bg01 .hl01 span:not(.mod_marker){
	display: block;
	margin-bottom: 11px;
}
.flow .bg01 .hl01 .mod_marker{
	line-height: 0.7;
	padding-top: 0;
	padding-bottom: 0;
}
.flow .bg01 .hl01 img{
	width: 220px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 15px;
}
.flow .bg01 .box01{
	text-align: center;
	position: relative;
	margin-bottom: 108px;
}
.flow .bg01 .box01 .pop{
	position: absolute;
	left: 21px;
	bottom: -87px;
	z-index: 1;
	background: url(../img/flow_bg01.png) no-repeat center center;
	background-size: cover;
	width: 266.5px;
	height: 107px;
	text-align: left;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.7;
	letter-spacing: 1px;
	padding: 30px 0 30px 35px;
}
.flow .bg01 .box02{
	margin-bottom: 50px;
	border-radius: 5px;
	border-top: 6px solid #00b3e3;
	background: #10112A;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	padding: 40px 40px 55px;
	position: relative;
}
.flow .bg01 .box02 .txt01{
	text-align: center;
	font-size: 25px;
	color: #00b3e3;
	letter-spacing: 4px;
	margin-bottom: 36px;
}
.flow .bg01 .box02 .txt02{
	position: absolute;
	right: -25px;
	bottom: 56px;
	transform: rotate(-11deg);
}
.flow .bg01 .box02 .txt02 .mod_marker{
	padding: 2px 22px;
	letter-spacing: 3px;
	background: linear-gradient(transparent 0%, #6B88FF 0%);
	font-weight: 500;
}
.flow .bg01 .box02 .txt02 .mod_marker:before,
.flow .bg01 .box02 .txt02 .mod_marker:after{
	content: "";
	width: 20px;
	height: 1px;
	background: #fff;
	position: absolute;
	top: 8px;
}
.flow .bg01 .box02 .txt02 .mod_marker:before{
	left: 6px;
	transform: rotate(70deg);
}
.flow .bg01 .box02 .txt02 .mod_marker:after{
	right: 6px;
	transform: rotate(-70deg);
}
.flow .bg01 .box02 .list01{
	display: flex;
	justify-content: space-between;
}
.flow .bg01 .box02 .list01 li span{
	font-size: 18px;
	display: inline-block;
	vertical-align: middle;
	line-height: 1.9;
	margin-left: 6px;
	letter-spacing: 2px;
}
.flow .bg01 .box02 .list01 li img{
	width: 110px;
	display: inline-block;
	vertical-align: middle;
}
.flow .bg01 .box03 .hl02{
	text-align: center;
	font-size: 36px;
	line-height: 1.55;
	letter-spacing: 5px;
	margin-bottom: 50px;
}
.flow .bg01 .box03 .hl02 small{
	font-size: 25px;
	letter-spacing: 3px;
}
.flow .bg01 .box03 .list02,
.flow .bg02 .list01{
	display: flex;
	justify-content: space-between;
}
.flow .bg01 .box03 .list02 li{
	width: 48%;
	background: #10112A;
	border-radius: 5px;
	padding: 35px 60px 34px;
	line-height: 1.8;
	letter-spacing: 2px;
	font-size: 14px;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
.flow .bg01 .box03 .list02 li .sub_hl01{
	font-size: 25px;
	line-height: 1.4;
	color: #00b3e3;
	margin-bottom: 13px;
	letter-spacing: 2px;
}
.flow .bg02{
	background: #10112A;
	margin-top: 20px;
	padding: 25px 0 46px;
}
.flow .bg02 .hl01{
	text-align: center;
	font-size: 25px;
	line-height: 2;
	letter-spacing: 4px;
	margin-bottom: 50px;
}
.flow .bg02 .image{
	text-align: center;
	margin-bottom: 18px;
}
.flow .bg02 .list01{
	display: flex;
	align-items: center;
	margin-bottom: 12px;
	justify-content: space-between;
}
.flow .bg02 .list01 li:nth-child(1){
	width: 30%;
}
.flow .bg02 .list01 li:nth-child(2){
	width: 32%;
}
.flow .bg02 .list01 li:nth-child(3){
	width: 29%;
}
.flow .bg02 .list01 li span{
	font-size: 18px;
	line-height: 1.6;
	display: inline-block;
	padding: 5px 0 5px 44px;
	background: url(../img/flow_check.png) no-repeat left center;
	background-size: 32px;
}
.flow .bg02 .list01 li:last-child p{
	margin-left: 30px;
}
/* =================== media2 =================== */
.media2{
	padding: 70px 0 60px;
	background: #fff;
	background: url(../img/media_bg.jpg) no-repeat center center;
	background-size: cover;
}
.media2 .hl01{
	text-align: left
	font-size: 17px;
	letter-spacing: 0px;
	margin-bottom: 27px;
	line-height: 1.5;
	font-weight: 100;
	color: #fff;
}
.media2 .hl02{
	text-align: left
	font-size: 21px;
	letter-spacing: 0px;
	margin-bottom: 27px;
	line-height: 1.5;
	font-weight: 100;
	color: #fff;
}
.media2 .hl01 img{
	width: 215px;
	margin: 0 5px;
	display: inline-block;
	vertical-align: middle;
}
.media2 .img{
	background: #fff;
	border-radius: 5px;
	padding: 39px 71px 40px;
	text-align: center;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
/* =================== media =================== */
.media{
	padding: 70px 0 60px;
	background: url(../img/media_bg.jpg) no-repeat center center;
	background-size: cover;
}
.media .hl01{
	text-align: center;
	font-size: 25px;
	letter-spacing: 3px;
	margin-bottom: 27px;
}
.media .hl01 img{
	width: 215px;
	margin: 0 5px;
	display: inline-block;
	vertical-align: middle;
}
.media .img{
	background: #fff;
	border-radius: 5px;
	padding: 39px 71px 40px;
	text-align: center;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
/* =================== auto =================== */
.auto{
	padding: 43px 0 44px;
}
.auto .hl01{
	font-size: 36px;
	letter-spacing: 6px;
	text-align: center;
	line-height: 1.6;
	margin-bottom: 30px;
}
.auto .box{
	margin-bottom: 35px;
	border-radius: 5px;
	border-top: 6px solid #00b3e3;
	background: #fff;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	padding: 30px 40px 9px;
	position: relative;
	text-align: center;
}
.auto .box .txt01{
	font-size: 25px;
	line-height: 1.6;
	color: #00b3e3;
	margin-bottom: 24px;
	letter-spacing: 4px;
}
.auto .box .txt02{
	font-size: 24px;
	line-height: 1.9;
	letter-spacing: 2px;
}
.auto .box .txt03{
	position: absolute;
	right: -45px;
	bottom: 55px;
	transform: rotate(-10deg);
}
.auto .box .txt03 .mod_marker{
	font-size: 18px;
	padding: 2px 10px;
	letter-spacing: 1.5px;
	background: linear-gradient(transparent 0%, #ff4338 0%);
	font-weight: 500;
}
.auto .txt04{
	font-size: 25px;
	text-align: center;
	letter-spacing: 3px;
	line-height: 2.2;
}
.auto .txt04 .mod_marker{
	background: linear-gradient(transparent 0%, #00b3e3 0%);
}
/* =================== voice =================== */
.voice{
	padding:60px 0;
}
.voice .hl01{
	text-align: center;
	font-size: 36px;
	line-height:1.6;
	letter-spacing: 3px;
	color: #00b3e3;
	margin-bottom: 45px;
}
.voice .hl01 small{
	font-size: 25px;
}
.voice .hl01 img{
	display: inline-block;
	vertical-align: middle;
	width: 244px;
	margin-right: 10px;
}
.voice .voice_item{
	overflow: hidden;
	margin-bottom: 41px;
}
.voice .voice_item .image{
	width: 150px;
}
.voice .voice_item:nth-child(odd) .image,
.voice .voice_item:nth-child(even) .voice_box{
	float: left;
}
.voice .voice_item:nth-child(even) .image,
.voice .voice_item:nth-child(odd) .voice_box{
	float: right;
}
.voice .voice_item .voice_box{
	background: #eef8fd;
	border-radius: 5px;
	position: relative;
	width: 820px;
	padding: 30px 45px;
}
.voice .voice_item .voice_box:after{
	content: "";
	position: absolute;
	top: 50px;
	width: 0;
	height: 0;
	border-style: solid;
}
.voice .voice_item:nth-child(odd) .voice_box:after{
	left: -19px;
	border-width: 0 20px 10px 0;
	border-color: transparent #eef8fd transparent transparent;
}
.voice .voice_item:nth-child(even) .voice_box:after{
	right :-19px;
	border-width: 10px 20px 0 0;
	border-color:#eef8fd transparent transparent transparent;
}
.voice .voice_item .voice_head{
	border-bottom: 3px solid #fff;
	padding-bottom: 34px;
	margin-bottom: 30px;
}
.voice .voice_item .voice_hl{
	font-size: 24px;
	line-height: 1.6;
	margin-bottom: 20px;
	letter-spacing: 3px;
}
.voice .voice_item .voice_profile{
	font-size: 14px;
	letter-spacing: 2px;
}
.voice .voice_item .voice_cap p{
	line-height: 2.6;
	font-size: 14px;
	letter-spacing: 2px;
}
/* =================== service =================== */
.service{
	padding: 30px 0 48px;
	background: url(../img/service_bg01.jpg) no-repeat center bottom;
	background-size: cover;
}
.service .hl01{
	text-align: center;
	font-size: 36px;
	line-height: 1.8;
	letter-spacing: 4px;
	margin-bottom: 48px;
}
.service .hl01 .mod_marker{
	margin: 0 10px;
}
.service .hl01 small{
	font-size: 25px;
}
.service .list01{
	margin: 0 -25px;
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
}
.service .list01 li{
	background: #31287D;
	display: flex;
	width: 49%;
	margin-bottom: 15px;
	text-align: center;
}
.service .list01 li,
.service .list01 .bg{
	padding: 15px;
	border-radius: 10px;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
.service .list01 .item_hl{
	color: #fff;
	font-size: 25px;
	line-height: 1.4;
	margin: 10px auto 20px;
	letter-spacing: 2px;
}
.service .list01 .item_hl .icon{
	width: 38px;
	display: block;
	margin: 0 auto 8px;
}
.service .list01 .cap{
	line-height: 1.7;
	font-size: 14px;
	text-align: left;
	padding: 0 37px 16px;
	letter-spacing: 2px;
	font-weight: 500;
}
/* =================== message =================== */
.message .txt p{
	font-size: 16px;
	line-height: 1.8;
}
.message.type01{
	background: url(../img/message_type01_bg01.jpg) no-repeat center bottom;
	background-size: cover;
	text-align: center;
	position: relative;
	overflow: hidden;
	padding: 59px 0;
	width: 100%;
	min-height: 685px;
}
.message.type01 .bg_img{
	position: absolute;
	right: -65px;
	bottom: -62px;
}
.message.type01 .hl01{
	letter-spacing: 3px;
}
.message.type01 .hl01 img{
	width: 245px;
	margin: 0 10px 7px;
	display: inline-block;
	vertical-align: middle;
}
.message.type01 .hl01 .fr{
	display: block;
	margin-bottom: 17px;
}
.message.type01 .txt{
	max-width: 660px;
}
.message.type01 .txt p{
	font-size: 18px;
	line-height: 2.7;
	letter-spacing: 2px;
	margin-bottom: 29px;
}
.message.type01 .txt .item_btn{
	display: block;
	background: #00b3e3;
	color: #fff;
	border-radius: 5px;
	font-size: 18px;
	max-width: 440px;
	margin: 0 auto;
	padding: 30px 0;
}
.message.type02{
	background: url(../img/message_type02_bg01.jpg) no-repeat center bottom;
	background-size: cover;
	text-align: center;
	position: relative;
	padding: 56px 0 47px;
}
.message.type02 .bg_img{
	position: absolute;
	right: -120px;
	top: -68px;
}
.message.type02 .txt{
	text-align: left;
	max-width: 660px;
	position: relative;
	z-index: 2;
}
.message.type02 .hl01{
	font-size: 25px;
	letter-spacing: 2.5px;
	line-height: 1.9;
	margin-bottom: 34px;
}
.message.type02 .hl01 .mod_marker{
	margin: 0 0 0 -2px;
}
.message.type02 .hl01 .fr{
	display: block;
	margin-bottom: 20px;
}
.message.type02 .hl01 img{
	width: 245px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px;
}
.message.type02 p{
	line-height: 2.8;
	font-size: 18px;
	letter-spacing: 2px;
	margin-bottom: 37px;
}
.message.type02 p img{
	width: 145px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
.message.type02 .list01{
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: space-between;
}
.message.type02 .list01 li{
	width: 31.6%;
	height: 382px;
	background: #fff;
	border-top: 6px solid;
	border-radius: 5px;
	overflow: hidden;
	text-align: center;
	position: relative;
	padding: 40px 0 0;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
.message.type02 .list01 li:nth-child(1){
	border-color: #00299f;
}
.message.type02 .list01 li:nth-child(2){
	border-color: #da3ab3;
}
.message.type02 .list01 li:nth-child(3){
	border-color: #ffc742;
}
.message.type02 .list01 .item_hl{
	margin-bottom: 25px;
}
.message.type02 .list01 .item_hl span{
	display: inline-block;
	position: relative;
	padding: 0 10px;
	margin-bottom: 28px;
}
.message.type02 .list01 .item_hl span:after,
.message.type02 .list01 .item_hl span:before{
	content: "";
	width: 1px;
	height: 17px;
	background: #002f32;
	position: absolute;
	top: 0;
}
.message.type02 .list01 .item_hl span:before{
	left: 0;
	transform: skewX(22deg);
}
.message.type02 .list01 .item_hl span:after{
	right: 0;
	transform: skewX(-22deg);
}
.message.type02 .list01 .item_hl img{
	display: block;
	height: 88px;
	width: auto;
	margin: 0 auto;
}
.message.type02 .list01 .item_price{
	font-size: 62px;
	line-height: 1;
	letter-spacing: 0;
}
.message.type02 .list01 .item_price span{
	font-size: 28px;
}
.message.type02 .list01 .item_btn{
	display: block;
	color: #fff;
	font-size: 14px;
	padding: 18px 0;
	letter-spacing: 2px;
	background: #00b3e3;
	border-radius: 5px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 40px;
	margin: auto;
	width: 100%;
	max-width: 250px;
}
.message.type02 .att{
	margin: 6px 0 0;
	text-align: right;
	font-size: 14px;
}
.message.type03{
	background: url(../img/message_type03_bg01.jpg) no-repeat center bottom;
	background-size: cover;
	text-align: center;
	padding: 55px 0 63px;
	position: relative;
	overflow: hidden;
}
.message.type03 .hl01{
	letter-spacing: 3px;
}
.message.type03 .bg_img{
	position: absolute;
	left: -80px;
	bottom: -64px;
}
.message.type03 .hl01,
.message.type01 .hl01{
	font-size: 25px;
	line-height: 1.8;
	margin-bottom: 30px;
}
.message.type03 .txt{
	max-width: 590px;
	margin-left: auto;
}
.message.type03 .txt p{
	letter-spacing: 0;
	margin-bottom: 35px;
	line-height: 1.8;
	font-size: 16px;
	font-weight: 500;
}
.message.type03 .txxt p{
	letter-spacing: 0;
	margin-bottom: 35px;
	line-height: 1.0;
	font-size: 13px;
	font-weight: 100;
}
.message.type03 .txt p:last-child{
	margin-bottom: 0;
}

/* =================== 下層 =================== */

/*.mod_main*/

.mod_main_bg{
	background:url(../img/mod_main_bg.png) center center no-repeat;
	background-size:cover;
	position: relative;
	z-index: 1;
}

.mod_main .mod_inner_02{
	padding-top:65px;
	padding-bottom:50px;
}

.mod_main_pic{
	position: absolute;
	top:-10px;
	right:-50px;
	z-index: -1;
}

.mod_main_logo{
	margin-bottom:30px;
}

.mod_main_logo img{
	width:247px;
}

.mod_main_hl img{
	height:52px;
}

.mod_main_cth{
	margin-bottom: 15px;
}

.mod_main_cth p span{
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	display: inline-block;
	padding: 5px 8px;
	margin-bottom: 5px;
	letter-spacing: 0.1em;
	line-height:1.1;
}
.basic.mod_main_cth p span{
	background: linear-gradient(transparent 0%, #da3ab3 0%);
}
.light.mod_main_cth p span{
	background: linear-gradient(transparent 0%, #00299f 0%);
}
.pro.mod_main_cth p span{
	background: linear-gradient(transparent 0%, #ffc742 0%);
}



/*.mod_plan*/

.mod_plan .bg01{
	box-shadow:0px -3px 5px 1px rgba(0,0,0,0.1);
	-moz-box-shadow:0px -3px 5px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow:0px -3px 5px 1px rgba(0,0,0,0.1);
	background:rgba(255,255,255,0.59);
}

.mod_plan .mod_inner{
	padding-top:36px;
	padding-bottom:90px;
}
.mod_plan.pad_narrow .mod_inner{
	padding-bottom:55px;
}

/*.mod_card*/

.mod_card{
	text-align: center;
	font-size:0;
}

.mod_card li{
	font-size: 16px;
	display:inline-block;
	width: 35%;
	margin:0 2%;
	position: relative;
	padding-top:35px;
	text-align: center;
	vertical-align: top;
}
.mod_card_child{
	height: 420px;
	background: #fff;
	border-top: 6px solid;
	border-radius: 5px;
	overflow: hidden;
	text-align: center;
	position: relative;
	padding: 40px 0 0;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
}
.mod_card_child.basic {
	border-color: #da3ab3;
}
.mod_card_child.light {
	border-color: #00299f;
}
.mod_card_child.pro {
	border-color: #ffc742;
}
.mod_card_hl{
	margin-bottom:47px;
}
.mod_card_hl img {
	display: block;
	height: 88px;
	width: auto;
	margin: 0 auto;
}
.mod_card_plan{
	font-weight: bold;
	font-size:36px;
	letter-spacing: 0.1em;
	margin-bottom:30px;
}
.mod_card_plan.year{
	margin-top:-30px;
	margin-bottom:15px;
}
.mod_card_plan_small01{
	font-size:31px;
}
.mod_card_price {
	font-size: 60px;
	line-height: 1;
	letter-spacing: 0;
}
.mod_card_price_small01 {
	font-size: 30px;
}
.mod_card_btn {
	display: block;
	color: #fff;
	font-size: 14px;
	padding: 18px 0;
	letter-spacing: 2px;
	background: #00b3e3;
	border-radius: 5px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 35px;
	margin: auto;
	width: 100%;
	max-width: 250px;
}
.mod_card_deals {
	position: absolute;
	width:100%;
	top:0;
	left:0;
	text-align: center;
}
.mod_card_deals_text{
	display: inline-block;
	font-size:18px;
	padding: 0 10px;
	position: relative;
}
.mod_card_deals_text:after, .mod_card_deals_text:before {
	content: "";
	width: 1px;
	height: 17px;
	background: #002f32;
	position: absolute;
	top: 0;
}
.mod_card_deals_text:before {
	left: 0;
	transform: skewX(35deg);
}
.mod_card_deals_text:after {
	right: 0;
	transform: skewX(-35deg);
}
.mod_card_normal{
	font-weight: bold;
	font-size:18px;
	color:#ff4338;
	margin-bottom:20px;
}
.mod_card_normal_big01{
	font-size:24px;
}
.mod_card_note{
	font-weight: bold;
	font-size: 14px;
	letter-spacing: 0.15em;
	text-align: right;
	margin-top:20px;
}

/*.mod_campaign*/

.mod_campaign{
	text-align: center;
	position: relative;
	z-index: 2;
}

.mod_campaign_person{
	position: absolute;
	left:-105px;
	top:-34px;
}

.mod_campaign_bg01{
	background:url(../img/mod_campaign_bg01.jpg) center center no-repeat;
	background-size:cover;
}
.mod_campaign_desc{
	padding-top:81px;
	padding-bottom:50px;
}
.mod_campaign_balloon{
	display:inline-block;
	background:#f46b6d;
	width:266px;
	position: absolute;
	left:0;
	right:0;
	top:-28px;
	margin:0 auto;
	text-align: center;
	color:#fff;
	font-size: 18px;
	font-weight: bold;
	border-radius:5px;
	padding:18px 0;
}
.mod_campaign_balloon:before{
	content:"";
	display:block;
	width:14px;
	height:14px;
	background:url(../img/mod_campaign_balloon.png) center center no-repeat;
	background-size:100%;
	bottom:-14px;
	position: absolute;
	left:120px;
	margin:0 auto;
}
.mod_campaign_balloon > span{
	display: inline-block;
	font-size:18px;
	padding: 0 13px;
	position: relative;
}
.mod_campaign_balloon > span:after, .mod_campaign_balloon > span:before {
	content: "";
	width: 2px;
	height: 17px;
	background: #fff;
	position: absolute;
	top: 0;
}
.mod_campaign_balloon > span:before {
	left: 0;
	transform: skewX(40deg);
}
.mod_campaign_balloon > span:after {
	right: 0;
	transform: skewX(-40deg);
}
.mod_campaign_hl01{
	font-weight: bold;
	font-size:25px;
	margin-bottom:15px;
	letter-spacing: 0.1em;
}
.mod_campaign_text01{
	font-weight: bold;
	font-size:18px;
	line-height:2;
	letter-spacing: 0.1em;
}
.mod_campaign_text09{
	font-weight: normal;
	font-size:14px;
	line-height:1.5;
	letter-spacing: 0.1em;
}

/*.mod_character*/

.mod_character_bg01{
	background:#eef8fd;
}

.mod_character .mod_inner_02{
	padding-top:60px;
	padding-bottom:60px;
}

.mod_character_hl01{
	text-align: center;
	margin-bottom:56px;
}

.mod_character_hl01 img{
	height:36px;
}

.mod_character_box{
	background: #fff;
	border-radius: 5px;
	text-align: center;
	padding: 40px 50px 10px;
	-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	max-width:896px;
	margin:0 auto 30px;
}

.mod_character_hl02{
	font-weight: 700;
	font-size:25px;
	margin-bottom:30px;
	letter-spacing: 0.15em;
}

.mod_character_list:after {
	content: " ";
	display: block;
	clear: both;
}


.mod_character_list li{
	display:table;
	width:48%;
	margin-bottom:20px;
}

.mod_character_list li:nth-child(odd){
	float:left;
	clear:both;
}

.mod_character_list li:nth-child(even){
	float:right;
}

.mod_character_icon,
.mod_character_desc{
	display:table-cell;
	vertical-align: middle;
}

.mod_character_icon{
	width:140px;
}

.mod_character_icon img{
	width:100%;
}

.mod_character_desc{
	text-align: left;
	padding-left:20px;
	line-height:1.5;
}

.mod_character_text01{
	font-size: 20px;
}
.mod_character_text02{
	font-size: 18px;
}

.mod_character_catch01{
	font-weight: 700;
	font-size:25px;
	line-height:2;
	text-align: center;
	letter-spacing: 0.15em;
}

.mod_character_catch01+.mod_character_catch01{
	margin-top:50px;
}

.mod_character{
	position: relative;
	z-index: 2;
}

.mod_character:before{
	content:"";
	display:block;
	width:712px;
	height:84px;
	position: absolute;
	top:99%;
	left:0;
	right:0;
	margin:0 auto;
	background:url(../img/mod_character_arrow01.png) center center no-repeat;
	background-size:100% auto;
}

/*.mod_cost*/

.mod_cost_bg01{
	background:url(../img/mod_cost_bg.png) center center no-repeat;
	background-size:cover;
}

.mod_cost_bg02{
	background:#eef8fd;
}

.mod_cost .mod_inner{
	padding-top:110px;
	padding-bottom:60px;
}
.mod_cost .mod_cost_bg02 .mod_inner{
	padding-top:90px;
}
.mod_cost_note{
	font-size: 18px;
	line-height:2;
	text-align: center;
	margin-bottom:20px;
}

/*.mod_start*/
.mod_start{
	background:url(../img/mod_start_bg.png) center bottom no-repeat #eef8fd;
	background-size:cover;
	position: relative;
	z-index: 2;
}
.mod_start .mod_inner_02{
	padding-top:60px;
	padding-bottom:100px;
}
.mod_start_desc{
	padding-left:473px;
}
.mod_start_person{
	position: absolute;
	top:-10px;
	left:-60px;
	z-index: -1;
}

.mod_start_hl01{
	font-size:36px;
	color:#01b3e3;
	letter-spacing: 0.1em;
	margin-bottom:20px;
	line-height:1.4;
}

.mod_start_text01{
	font-size:25px;
	line-height: 2;
	letter-spacing: 0.1em;
	margin-bottom:20px;
}

.mod_start_list01{
	font-size: 14px;
	line-height:1.714;
	letter-spacing: 0.1em;
}
.mod_start_arrow img{
	position: absolute;
	left: 0;
	right: 0;
	bottom:-60px;
	margin:0 auto;
}

/* ============================================
breakpoint
============================================ */
@media only screen and (min-width:751px){
	.u_sp {
		display: none !important;
	}
	a:hover img,
	a:active img {
		opacity: 1.0;
	}
}
@media only screen and (max-width:750px){
	.u_pc {
		display: none !important;
	}
	.u_sp {
		display: block;
	}
	#border_display {
		min-width: 375px;
	}
    .mod_inner,
	.mod_inner_02{
        width: 100%;
        height: auto;
        padding:0 20px;
    }
	.mod_marker{
		line-height: 1.8;
		padding-top: 0!important;
		padding-bottom: 0!important;
	}
	/* =================== header =================== */
	#header .inner{
		width:100%;
		padding: 10px;
	}
	#header .logo{
		width: 32%;
	}
	#header .logo img{
		width: 100%;
		max-width: 80px;
	}
	#header .head_btn{
		width: 68%;
		height:auto;
	}
	#header .head_btn a{
		width: 49%;
		height: auto;
		padding: 11px 0;
		font-size: 12px;
		letter-spacing: 0;
	}
	#header.type02{
		padding-top:0;
		padding-bottom:0;
	}
	/* =================== footer =================== */
	#footer .copy{
		letter-spacing: 0;
		font-size: 10px;
	}

	/* =================== mv =================== */
	.mv{
		height: 360px;
		margin-bottom: 117px;
	}
	.mv .inner{
		width: 100%;
		max-width: 95%;
		margin: 0 auto;
	}
	.mv .mv_img{
		right: -60px;
		width: 290px;
		bottom: -1px;
	}
	.mv .mv_box{
		position: relative;
		height: 100%;
		z-index: 1;
		padding:75px 10px 0;
	}
	.mv .mv_box .mv_logo{
		margin-bottom:30px;
		max-width: 210px;
	}
	.mv .mv_box .mv_cth{
		margin-bottom: 0;
	}
	.mv .mv_box .mv_cth p span{
		font-size: 18px;
		letter-spacing: 0;
		margin-bottom: 5px;
	}
	.mv .mv_box .mv_cth p span.ex{
		padding-right:0;
	}
	.mv .mv_link{
		border-radius:0;
		margin: auto;
		max-width: 100%;
		padding: 10px;
		font-size: 14px;
		letter-spacing: 0;
	}
	.mv .mv_link a{
		margin-top: 7px;
		font-size: 16px;
	}
	/* =================== first =================== */
	.first .before{
		padding-top: 50px;
	}
	.first .before .hl01,
	.first .before .hl02{
		font-size: 20px;
		line-height: 1.6;
		letter-spacing: 1px;
	}
	.first .before .hl01{
		margin-bottom: 20px;
	}
	.first .before .hl01 span{
		padding: 2px;
		line-height: 1.8;
		margin: 0 5px;
	}
	.first .before .img{
		margin: 0;
		text-align: center;
	}
	.first .before .bg01{
		margin-top: -30px;
		padding: 60px 0 30px;
	}
	.first .before .bg02{
		padding: 60px 0 30px;
	}
	.first .before .hl02 span{
		background-size: cover!important;
		font-size: 12px;
		width: 60px;
		height:60px;
		padding-top: 21px;
		left: 0;
		right: 0;
		margin: auto;
		top: -75px;
	}
	.first .after{
		padding: 60px 0;
	}
	.first .after .hl01{
		font-size:20px;
		line-height: 1.8;
		margin-bottom: 40px;
	}
	.first .after .hl01 .mod_marker{
		padding-top:2px !important;
		padding-bottom:2px !important;
	}
	.first .after .hl01 img{
		width: 160px;
		margin: 0 auto 15px;
	}
	.first .after .box{
		padding: 20px;
	}
	.first .after .box .hl02{
		margin-bottom: 20px;
	}
	.first .after .box .hl02 span{
		font-size: 16px;
	}
	.first .after .box ul{
		display: block;
		margin-bottom:20px;
	}
	.first .after .box ul li{
		width: 100%;
		max-width: 126px;
		margin: 0 auto 15px;
	}
	.first .after .box .txt01{
		font-size: 20px;
		letter-spacing: 1px;
	}
	.first .after .box .txt01 img{
		width:120px;
	}
	/* =================== reason =================== */
	.reason .bg01{
		padding: 0;
	}
	.reason .bg01:after{
		bottom: -30px;
		border-width: 30px 70px 0 70px;
	}
	.reason .bg01 .hl01{
		font-size: 20px;
		line-height: 1.8;
		letter-spacing: 1px;
		padding-bottom: 50px;
	}
	.reason .bg01 .hl01 img{
		width: 120px;
	}
	.reason .bg01 .hl01 .mod_marker{
		line-height: 1.2;
	}
	.reason .bg02{
		padding:60px 0;
	}
	.reason .bg02 .box p{
		font-weight: 500;
	}
	.reason .bg02 .hl01{
		text-align: center;
		font-size: 24px;
		letter-spacing: 1px;
		margin-bottom: 30px;
		line-height: 1.4;
	}
	.reason .bg02 .hl01 span{
		font-size:20px;
	}
	.reason .bg02 .hl02{
		font-size: 16px;
	}
	.reason .bg02 .box{
		padding:20px;
	}
	.reason .bg02 .box .image{
		right: -15px;
		top: -35px;
		width: 100px;
	}
	/* =================== flow =================== */
	.flow .bg01{
		padding: 60px 0;
	}
	.flow .bg01 .hl01{
		font-size: 20px;
		letter-spacing: 1px;
		line-height: 1.8;
	}
	.flow .bg01 .hl01 span:not(.mod_marker){
		margin-bottom: 5px;
	}
	.flow .bg01 .hl01 img{
		width: 120px;
		margin: 0 5px;
	}
	.flow .bg01 .box01{
		margin-bottom: 30px;
	}
	.flow .bg01 .box01 .pop{
		position: relative;
		left:0;
		bottom: 0;
		background-size: 100%;
		width: 160px;
		height: 68px;
		font-size: 12px;
		line-height: 1.2;
		margin: -15px 0 0 -5px;
		padding: 24px 0 0 10px;
	}
	.flow .bg01 .box02{
		margin-bottom: 60px;
		padding:30px 20px;
	}
	.flow .bg01 .box02 .txt01{
		font-size: 20px;
		letter-spacing: 2px;
		margin-bottom: 30px;
	}
	.flow .bg01 .box02 .txt02{
		right: -15px;
		bottom: 20px;
	}
	.flow .bg01 .box02 .txt02 .mod_marker{
		font-size: 14px;
	}
	.flow .bg01 .box02 .txt02 .mod_marker::before,
	.flow .bg01 .box02 .txt02 .mod_marker::after{
		top: 13px;
		width: 15px;
	}
	.flow .bg01 .box02 .list01{
		display: block;
		text-align: center;
	}
	.flow .bg01 .box02 .list01 li{
		margin-bottom: 15px;
	}
	.flow .bg01 .box02 .list01 li:last-child{
		margin-bottom: 0;
	}
	.flow .bg01 .box02 .list01 li span{
		font-size: 14px;
		line-height: 1.6;
		margin-left:0;
		letter-spacing: 1px;
		width: 120px;
	}
	.flow .bg01 .box02 .list01 li img{
		width: 80px;
		margin-right: 10px;
	}

	.flow .bg01 .box03 .hl02{
		font-size: 20px;
		line-height: 1.4;
		letter-spacing: 1px;
		margin-bottom: 30px;
	}
	.flow .bg01 .box03 .hl02 small{
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 1.2;
		margin-bottom: 8px;
		display: block;
	}
	.flow .bg01 .box03 .list02,
	.flow .bg02 .list01{
		display: block;
	}
	.flow .bg02 .list01{
		max-width: 270px;
		margin: 0 auto;
	}
	.flow .bg01 .box03 .list02 li{
		width: 100%;
		padding: 20px 15px 20px 17px;
		line-height: 1.6;
		letter-spacing: 1px;
		margin-bottom: 15px;
	}
	.flow .bg01 .box03 .list02 li:last-child{
		margin-bottom: 0;
	}
	.flow .bg01 .box03 .list02 li .sub_hl01{
		font-size:18px;
		letter-spacing: 1px;
		margin-bottom: 10px;
	}
	.flow .bg02{
		margin-top: 0;
		padding: 60px 0;
	}
	.flow .bg02 .hl01{
		font-size: 20px;
		line-height: 1.8;
		letter-spacing: 0;
		margin-bottom: 30px;
	}
	.flow .bg02 .list01{
		display:block;
		margin-bottom: 30px;
	}
	.flow .bg02 .image{
		max-width: 300px;
		margin: 0 auto;
	}
	.flow .bg02 .list01 li:nth-child(1),
	.flow .bg02 .list01 li:nth-child(2),
	.flow .bg02 .list01 li:nth-child(3){
		width: 100%;
	}
	.flow .bg02 .list01 li span{
		font-size: 14px;
		padding: 5px 0 5px 25px;
		background-size: 16px;
	}
	.flow .bg02 .list01 li:last-child p{
		margin-left: 0;
	}
	/* =================== media =================== */
	.media{
		padding: 50px 0 60px;
	}
	.media .hl01{
		font-size: 20px;
		letter-spacing: 1px;
		line-height: 1.8;
	}
	.media .hl01 img{
		width: 120px;
		margin: 5px;
	}
	.media .img{
		padding: 10px;
	}
	/* =================== auto =================== */
	.auto{
		padding: 60px 0;
	}
	.auto .hl01{
		font-size: 20px;
		letter-spacing: 1px;
		line-height: 1.8;
	}
	.auto .box{
		margin-bottom:60px;
		padding: 20px 0 45px;
	}
	.auto .box .txt01{
		font-size: 16px;
		letter-spacing: 1px;
		margin-bottom: 10px;
	}
	.auto .box .txt02{
		font-size: 16px;
		line-height: 2;
		letter-spacing: -0.5px;
	}
	.auto .box .txt03{
		right: -10px;
		bottom: 10px;
	}
	.auto .box .txt03 .mod_marker{
		font-size: 14px;
		padding: 2px 10px;
	}
	.auto .txt04{
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 1.7;
	}
	/* =================== voice =================== */
	.voice .hl01{
		font-size: 20px;
		line-height:1.5;
		letter-spacing: 1px;
		margin-bottom: 20px;
	}
	.voice .hl01 small{
		font-size: 16px;
		line-height: 1.3;
		display: block;
		margin-bottom: 10px;
	}
	.voice .hl01 img{
		width: 100px;
	}
	.voice .voice_item{
		margin-bottom: 30px;
	}
	.voice .voice_item:last-child{
		margin-bottom: 0;
	}
	.voice .voice_item .image{
		width: 80px;
		margin: 0 auto -30px;
		position: relative;
		z-index: 2;
		border: 4px solid #fff;
		border-radius: 80px;
		float: none!important;
	}
	.voice .voice_item .voice_box{
		width: 100%;
		padding: 40px 20px 20px;
		float: none!important;
	}
	.voice .voice_item .voice_box:after{
		display: none;
	}
	.voice .voice_item .voice_head{
		margin-bottom: 20px;
		padding-bottom: 20px;
	}
	.voice .voice_item .voice_hl{
		font-size: 19px;
		letter-spacing: 0.7px;
		line-height: 1.6;
		margin-bottom: 10px;
	}
	.voice .voice_item .voice_profile{
		font-size: 12px;
		letter-spacing: 1px;
	}
	.voice .voice_item .voice_cap p{
		line-height: 1.8;
		letter-spacing: 0;
	}
	/* =================== service =================== */
	.service{
		padding: 60px 0;
	}
	.service .hl01{
		font-size: 20px;
		letter-spacing: 0;
		line-height: 1.4;
		margin-bottom: 30px;
	}
	.service .hl01 small{
		font-size:16px;
		line-height: 1.6;
		display: block;
		margin-bottom: 10px;
	}
	.service .list01{
		margin: 0;
		display: block;
	}
	.service .list01 li{
		display: block;
		width: 100%;
	}
	.service .list01 li:last-child{
		margin-bottom: 0;
	}
	.service .list01 .item_hl{
		font-size:18px;
		margin-bottom: 15px;
	}
	.service .list01 .item_hl .icon{
		width: 30px;
		margin: 0 auto 2px;
	}
	.service .list01 .cap{
		padding: 0;
	}
	/* =================== message =================== */
	.message .txt p{
		font-size: 14px;
		line-height: 1.6;
	}
	.message.type01{
		padding:60px 0;
		min-height: 0;
		overflow: visible;
	}
	.message.type01 .bg_img{
		right: -20px;
		bottom: auto;
		top: -75px;
		width: 130px;
		z-index: 1;
	}
	.message.type01 .hl01{
		letter-spacing: 1px;
		font-size: 18px;
	}
	.message.type01 .hl01 img{
		width: 120px;
		margin: 0 5px 5px;
	}
	.message.type01 .txt{
		max-width: 100%;
		text-align: left;
		position: relative;
		z-index: 2;
	}
	.message.type01 .txt p{
		font-size: 14px;
		line-height: 1.8;
		letter-spacing: 0;
	}
	.message.type01 .txt .item_btn{
		font-size: 14px;
		padding: 20px 0;
		text-align: center;
	}
	.message.type02{
		padding:60px 0;
	}
	.message.type02 .bg_img{
		right: -30px;
		top: -75px;
		width: 250px;
	}
	.message.type02 .txt{
		max-width:100%;
	}
	.message.type02 .hl01{
		font-size: 18px;
		letter-spacing: 1px;
		line-height: 1.8;
		margin-bottom: 25px;
	}
	.message.type02 .hl01 img,
	.message.type02 p img{
		width: 100px;
	}
	.message.type02 .hl01 .mod_marker{
		margin: 0;
	}
	.message.type02 p{
		line-height: 1.8;
		font-size: 14px;
		letter-spacing: 1px;
		margin-bottom: 30px;
	}
	.message.type02 .list01{
		display: block;
	}
	.message.type02 .list01 li{
		width: 100%;
		height: auto;
		padding: 30px 20px;
		margin-bottom: 15px;
	}
	.message.type02 .list01 li:last-child{
		margin-bottom:20px;
	}
	.message.type02 .list01 .item_price{
		font-size: 34px;
	}
	.message.type02 .list01 .item_price span{
		font-size: 20px;
	}
	.message.type02 .list01 .item_hl span{
		font-size: 17px;
	}
	.message.type02 .list01 .item_btn{
		font-size: 14px;
		position:relative;
		bottom: 0;
	}
	.message.type02 .att{
		margin: 0;
	}
	.message.type03{
		padding:60px 0;
		overflow: visible;
	}
	.message.type03 .bg_img{
		left: auto;
		right: -20px;
		top: -75px;
		bottom: auto;
		z-index: 1;
		width: 140px;
	}
	.message.type03 .hl01{
		text-align: left;
		position: relative;
		z-index: 1;
		font-size: 20px;
		line-height: 1.4;
	}
	.message.type03 .txt{
		max-width: 100%;
		z-index: 1;
		position: relative;
	}
	.message.type03 .txt p{
		margin-bottom: 15px;
		font-size: 14px;
		text-align: left;
		letter-spacing: 0;
	}
	#footer .footer-wrapper ul{
		text-align: left;
	}
	#footer .footer-wrapper ul li{
		display: block;
		border: none!important;
		margin-bottom: 20px;
	}
	#footer .footer-wrapper ul li:last-child{
		margin-bottom: 0;
	}
	#footer .footer-wrapper{
		padding: 46px 0;
	}

	/* =================== 下層 =================== */

	/*.mod_main*/
	.mod_main .mod_inner_02{
		padding-top:7%;
		padding-bottom:7%;
	}
	.mod_main_logo{
		margin-bottom:10px;
	}
	.mod_main_logo img{
		width:210px;
	}
	.mod_main_cth p span{
		font-size: 18px;
		padding: 5px 5px;
		letter-spacing: 0.1em;
	}
	.mod_main_hl img{
		height:30px;
	}

	/*.mod_plan*/

	.mod_plan .mod_inner{
		padding-top:60px;
		padding-bottom:50px;
	}
	.mod_plan.pad_narrow .mod_inner{
		padding-bottom:50px;
	}

	/*.mod_card*/
	.mod_card li{
		font-size: 16px;
		display:block;
		width: 100%;
		margin:0 0 30px;
		padding-top:0;
	}
	.mod_card_child{
		width: 100%;
		height: auto;
		padding: 30px 20px;
		margin-bottom: 15px;
	}
	.mod_card_hl{
		margin-bottom:25px;
	}
	.mod_card_plan{
		font-size:25px;
		margin-bottom:15px;
	}
	.mod_card_plan.year{
		margin-top:0;
	}
	.mod_card_plan_small01{
		font-size:20px;
	}
	.mod_card_price {
		font-size: 34px;
		margin-bottom: 30px;
	}
	.mod_card_price_small01 {
		font-size: 30px;
	}
	.mod_card_btn {
		font-size: 14px;
		position: relative;
		bottom: 0;
	}
	.mod_card_deals {
		position: static;
		margin-bottom:10px;
	}
	.mod_card_deals_text{
		font-size:17px;
	}

	/*.mod_campaign*/
	.mod_campaign_balloon:before{
		left:0;
		right:0;
	}
	.mod_campaign_person{
		left:auto;
		top:auto;
		bottom:0;
		right:-50px;
		width:200px;
	}
	.mod_campaign_desc{
		padding-top:60px;
		padding-bottom:32px;
	}
	.mod_campaign_hl01{
		font-size: 20px;
	}
	.mod_campaign_text01{
		text-align: left;
		font-size:16px;
		padding-right:100px;
	}

	/*.mod_character*/

	.mod_character_hl01{
		margin-bottom:30px;
	}

	.mod_character_hl01 img{
		height:25px;
	}

	.mod_character_box{
		margin-bottom: 30px;
		padding: 30px 20px;
	}

	.mod_character_hl02{
		font-size:20px;
		line-height:1.6;
	}

	.mod_character_list li{
		width:300px;
		margin:0 auto 20px;
	}

	.mod_character_list li:nth-child(odd){
		float:none;
		clear:none;
	}

	.mod_character_list li:nth-child(even){
		float:none;
	}

	.mod_character_icon{
		width:80px;
	}

	.mod_character_icon img{
		width:100%;
	}

	.mod_character_desc{
		text-align: left;
		padding-left:20px;
		line-height:1.5;
	}
	.mod_character_text01{
		font-size: 15px;
	}
	.mod_character_text02{
		font-size: 12px;
	}
	.mod_character_catch01{
		font-size:16px;
		line-height:1.6;
		text-align: left;
	}
	.mod_character_catch01+.mod_character_catch01{
		margin-top:20px;
	}
	.mod_character:before{
		width:300px;
		height:35px;
	}

	/*.mod_cost*/

	.mod_cost .mod_inner{
		padding-top:80px;
		padding-bottom:40px;
	}
	.mod_cost .mod_cost_bg02 .mod_inner{
		padding-top:60px;
	}

	.mod_cost_note{
		font-size:16px;
		line-height:1.6;
		text-align: left;
	}
	
	/*.mod_start*/
	.mod_start .mod_inner_02{
		padding-top:70px;
		padding-bottom:60px;
	}
	.mod_start_desc{
		padding-left:0;
	}
	.mod_start_person{
		top:-20px;
		left:-25px;
		width:150px;
	}

	.mod_start_hl01{
		font-size:22px;
		padding-left:110px;
		margin-bottom:35px;
	}

	.mod_start_text01{
		font-size:18px;
		line-height: 1.6;
		margin-bottom:20px;
	}
	.mod_start_arrow img{
		bottom:-30px;
		width:300px;
	}
	
/* end */
}
@media print {
	body {
		background: none !important;
		zoom: 0.7;
		-webkit-print-color-adjust: exact;
	}
	.u_sp {
		display: none !important;
	}
}
.u_dib{
	display:inline-block;
}