@charset "UTF-8";

/*---------------------------------------------------------
							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;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	font-family: 'Noto Sans JP', sans-serif;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
img{
	width:100%;
}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
}

a.anchor {
	position: relative;
	top: -80px;
	display: block;
}


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

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

.clea {
	clear: both;
}

* html .clearfix {
	height: 1px;
	/*¥*/
	/*/
	height: auto;
	overflow: hidden;
	/**/
}

body {
	background-color: #fff;
	-webkit-text-size-adjust: none;
	font-size: 16px;
	color: #333;
	line-height: 1.5;
}

a {
	color: #107bbf;
	outline: none;
}
.sp {
	display: none;
}

h1,h2,h3,h4{
	color:#107bbf;
	font-family: 'Noto Serif JP', serif;
	font-weight:900;
}
/*---------------------------------------------------------
header
---------------------------------------------------------*/
header {
	width:163px;
	position:absolute;
	top:0;
	left:30px;
	z-index:999;
}
/*---------------------------------------------------------
main
---------------------------------------------------------*/
#main{
	background:url("../img/main_bg.jpg") no-repeat center top / cover;
	position:relative;
	width:100%;
	max-height:551px;
}
#main:before{
	content:"";
	display:block;
	padding-top:39.3%;
}
#main figure{
    position: absolute;
    top: 73px;
    left: 0;
    bottom: 0;
    right: 0;
		max-width:616px;
		width:100%;
		margin:auto;
}
#main_btm{
	background:url("../img/main_btm_bg.jpg") no-repeat center top / cover;
	width:100%;
	padding:15px 0;
}
#main_btm ul{
	display:flex;
	max-width:1000px;
	margin:auto;
}
#main_btm ul li{
	width:48%;
	flex:1;
	font-size:18px;
	padding: 30px 28px 18px;
	text-align:center;
}
#main_btm ul li:nth-child(2){
	border-left:6px dotted #b9d0de;
	border-right:6px dotted #b9d0de;
}
#main_btm ul li figure{
	margin-bottom:10px;
}
#main_cv{
	background-image: -moz-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	background-image: -webkit-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	background-image: -ms-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	padding:20px 0;
}
#main_cv img{
	vertical-align:bottom;
}
#main_cv .ttl{
	max-width:514px;
	margin:0 auto 20px;
}
#main_cv ul{
	display:flex;
	justify-content:center;
	max-width:1000px;
	margin:auto;
}
#main_cv ul li{
	width:41%;
	margin:0 1%;
}
#main_cv ul li:nth-child(2) a{
	display:block;
	background:#fff;
	border-radius:7px;
	font-size:24px;
	padding:15px 0;
	color:#1069a3;
	line-height:1.2;
	text-decoration:none;
	text-align:center;
	max-height:110px;
}
#main_cv ul li:nth-child(2) a:hover{
	background:rgba(255,255,255,0.8);
}
#main_cv ul li span{
	font-size:30px;
	font-weight:600;
	display:block;
}
#main_cv ul li small{
	font-size:13px;
	display:block;
}
@media screen and (min-width:768px) and ( max-width:1000px) {
	#main_cv ul li:nth-child(2) a{font-size:20px;}
	#main_cv ul li span{font-size:24px;}
	#main_cv ul li small{font-size:10px;}
}
/*---------------------------------------------------------
							scare
---------------------------------------------------------*/
#scare{
	display:table;
	max-width:1000px;
	margin:auto;
	padding:60px 0 75px;
	position:relative;
}
#scare::after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 47px 58.5px 0 58.5px;
	border-color: #ffffff transparent transparent transparent;
	position:absolute;
	bottom:-47px;
	left: 0;
	right: 0;
	margin: auto;
}
#scare .txt{
	display:table-cell;
	font-size:18px;
	width:64%;
	padding-right:40px;
	vertical-align:top;
}
#scare h3{
	font-size:2rem;
	margin-bottom:40px;
}
#scare h4{
	font-size:1.4rem;
}
#scare p{
	vertical-align:top;
	padding-right:24px;
}
#scare .graph{
	max-width:233px;
	display:table-cell;
	vertical-align:top;
}
#scare .items{
	max-width:495px;
	margin:36px auto 0;
}
#scare figure.image{
	display:table-cell;
	width:36%;
	vertical-align:top;
}

/*---------------------------------------------------------
							diff
---------------------------------------------------------*/
#dif{
	background:#f9f4e4;
	padding:80px 0;
}
#dif h2{
	font-size:2.4rem;
	text-align:center;
	margin:0 auto 40px;
}
#dif h2 span{
	color:#ff9b2f;
	font-family: 'Noto Serif JP', serif;
	font-weight:900;
}
#dif table{
	max-width:1000px;
	margin:auto;
	border-collapse: separate;
	border-spacing: 0px 28px;
}
#dif table td{
	vertical-align:top;
	font-size:18px;
	padding-right:30px;
}
#dif table td.free,#dif table tr:last-child td{
	padding-right:0;
}
#dif table td.free{
	background-color: #fff;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	padding: 20px 28px;
	width: auto;
}
#dif table td div{
	background-color: #fff;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	display:flex;
	align-items:center;
	width:100%;
	position:relative;
}
#dif table td.prj div{
	align-items:unset;
}
#dif table td div span{
	display:inline-block;
	background:#ff9b2f;
	width:170px;
	min-height:80px;
	position:relative;
}
#dif table td div span::after{
	content:"";
	display:block;
	position:absolute;
	bottom:-19px;
	left:0;
	right:0;
	width: 0;
	height: 0;
	margin:auto;
	border-style: solid;
	border-width: 19px 19px 0 19px;
	border-color: #ff9a2f transparent transparent transparent;
}
#dif table tr:last-child td div span::after{
	display:none;
}
#dif table td div span img{
	display:block;
	width:104px;
	margin:26px auto 0;
}
#dif table td div span img.sp,#dif table td.free img.sp{
	display:none;
}
#dif table td.free img{
	width:38px;
	display: block;
	margin: auto;
}
#dif table td div p{
	display: inline-block;
	flex-direction: column;
	justify-content: center;
	padding:25px 30px;
	overflow: auto;
	box-sizing:border-box;
	width:calc(100% - 170px);
}
#dif table td.prj p img{
	max-width:638px;
	margin-top: 1em;
}
#dif table td div.pt{
	background:#fffedc url("../img/pt.png") no-repeat;
	background-position:right 9% bottom 0;
	background-size:37.35%;
	border:3px solid #ff9b2f;
	display:block;
	padding:28px 80px;
	position:relative;
	width: auto;
}
#dif table td div.pt::after{
	content:"";
	display:block;
	position:absolute;
	bottom:-22px;
	left:64px;
	width: 0;
	height: 0;
	margin:auto;
	border-style: solid;
	border-width: 19px 19px 0 19px;
	border-color: #ff9a2f transparent transparent transparent;
}
#dif table td div.pt strong{
	max-width:384px;
	display:block;
	margin-bottom:10px;
}
/*---------------------------------------------------------
							CV
---------------------------------------------------------*/
#cv{
	background-image: -moz-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	background-image: -webkit-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	background-image: -ms-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	padding-top:20px;
}
#cv img{
	vertical-align:bottom;
}
#cv ul{
	display:flex;
	max-width:1000px;
	margin:auto;
}
#cv ul li:nth-child(1){
	width:21.5%;
}
#cv ul li:nth-child(2){
	width:40.8%;
	margin-left:7px;
	padding-top:12px;
}
#cv ul li:nth-child(3){
	width:35%;
	margin-left:20px;
	text-align:center;
	padding-top:12px;
}
#cv ul li:nth-child(3) a{
	display:block;
	background:#fff;
	border-radius:7px;
	font-size:24px;
	padding:15px 0;
	color:#1069a3;
	line-height:1.2;
	text-decoration:none;
	max-height:110px;
}
#cv ul li:nth-child(3) a:hover{
	background:rgba(255,255,255,0.8);
}
#cv ul li span{
	font-size:30px;
	font-weight:600;
	display:block;
}
#cv ul li small{
	font-size:13px;
	display:block;
}
@media screen and (min-width:768px) and ( max-width:1000px) {
	#cv ul li:nth-child(3) a{font-size:20px;}
	#cv ul li span{font-size:24px;}
	#cv ul li small{font-size:10px;}
}
/*---------------------------------------------------------
							great
---------------------------------------------------------*/
#great{
	background:#f1f1f1;
	padding:70px 0 80px;
	font-size:18px;
}
#great h2{
	font-size:2.4rem;
	text-align:center;
	margin:0 auto 40px;
}
#great h2 span{
	color:#ff9b2f;
	font-family: 'Noto Serif JP', serif;
	font-weight:900;
}
#great p{
	padding:30px;
}
#great p.lead{
	text-align:center;
	margin-bottom:40px;
	padding:0;
}
#great ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	max-width:1000px;
	margin:auto;
}
#great ul li{
	background:#fff;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	width:32%;
	margin-bottom:20px;
}
#great ul li:nth-child(3n-1){
	margin:0 2% 20px;
}
#great ul li ul li:nth-child(3n-1) {
	margin: 0 0 20px;
}
#great ul li figure{
	margin-bottom:20px;
}
#great ul li ul{
	display:block;
	list-style:disc inside;
	width:80%;
	margin:auto;
}
#great ul li ul li{
	font-size:0.8em;
	width:100%;
	box-shadow:none;
	argin-bottom: 1em;
}
#great ul li ul li span{
	display:block;
	text-align:right;
	color: #ff9b2f;
	font-size: 1rem;
	font-weight: 600;
}
#great strong{
	color:#107bbf;
	font-size:24px;
	font-weight:600;
	display:block;
	line-height:1.3;
	margin-bottom:0.8em;
	text-align:center;
}
#great .other{
	background:#fff;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	max-width:1000px;
	margin:auto;
	padding:10px;
}
/*---------------------------------------------------------
							reason
---------------------------------------------------------*/
#reason{
	background:url("../img/line.png") no-repeat center bottom;
	padding:80px 0;
	font-size:18px;
}
#reason h2{
	font-size:2.4rem;
	text-align:center;
	margin:0 auto 40px;
}
#reason h2 span{
	color:#ff9b2f;
	font-family: 'Noto Serif JP', serif;
	font-weight:900;
}
#reason section{
	max-width:1000px;
	margin:0 auto 60px;
	position:relative;
}
#reason section.r4{
	margin-bottom:0;
}
#reason section.r1:before{
	content:"";
	display:block;
	padding-top:53.6%;
}
#reason section.r2:before{
	content:"";
	display:block;
	padding-top:46.4%;
}
#reason section.r3:before{
	content:"";
	display:block;
	padding-top:54.7%;
}
#reason section.r4:before{
	content:"";
	display:block;
	padding-top:49.1%;
}
#reason section.r1 figure,#reason section.r3 figure{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	max-width:56%;
	margin-left:auto;
	z-index:2;
}
#reason section.r1 div,#reason section.r3 div{
	background:#fff;
	box-sizing: border-box;
	display: table;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	position: absolute;
	top: 60px;
	left: 0;
	bottom: 0;
	max-width:52%;
	margin-right:auto;
	padding:30px 30px 60px 40px;
	z-index:3;
}
#reason section.r2 figure,#reason section.r4 figure{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	max-width:56%;
	margin-right:auto;
	z-index:2;
}
#reason section.r2 div,#reason section.r4 div{
	background:#fff;
	box-sizing: border-box;
	display: table;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	position: absolute;
	top: 60px;
	bottom: 0;
	left: 52%;
	max-width:52%;
	padding:30px 30px 60px 40px;
	z-index:3;
}
#reason .r1 h3{
	max-width:434px;
}
#reason .r2 h3{
	max-width:267px;
}
#reason .r3 h3{
	max-width:437px;
}
#reason .r4 h3{
	max-width:311px;
}
#reason section hr{
	background:#107bbf;
	border:none;
	width:50px;
	height:2px;
	margin:30px 0;
}
#reason section span{
	color:#ed5816;
}
/*---------------------------------------------------------
							voice
---------------------------------------------------------*/
#voice{
	background:url("../img/voice_bg.jpg") no-repeat center top / cover;
	padding:80px 0;
	font-size:18px;
}
#voice h2{
	max-width:243px;
	margin:0 auto 40px;
}
#voice ul{
	background:#fff;
	box-sizing:border-box;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	display:flex;
	padding:60px 40px;
	max-width:1000px;
	margin:auto;
}
#voice ul li{
	padding:16px;
	flex:1;
}
#voice ul li:nth-child(2){
	border-left:5px dotted #b9d0de;
	border-right:5px dotted #b9d0de;
}
#voice ul li .ttl{
	color:#107bbf;
	display:flex;
	align-items: center;
	font-size:24px;
	font-weight:500;
	margin-bottom:12px;
}
#voice ul li .ttl figure{
	width:84px;
	margin-right:10px;
}
#voice ul li .ttl small{
	display:block;
	font-size:16px;
}
#voice em{
	color:#107bbf;
	display:block;
	font-weight:600;
}
/*---------------------------------------------------------
							form
---------------------------------------------------------*/
#form{
	background:url("../img/voice_bg.jpg") no-repeat center top / cover;
	padding:30px 0 60px;

}
#form h2{
	max-width:1000px;
	margin:auto;
}
#form h2 img{
	vertical-align:bottom;
}
#form form{
	display:block;
	max-width:1000px;
	width:100%;
	margin:auto;
	background:#fff;
	box-sizing:border-box;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.07);
	padding:60px 40px 30px;
}
#form ul{
	overflow:hidden;
}
#form ul div{
	float:left;
	width:50%;
	padding-right:20px;
	box-sizing:border-box;
}
#form ul div:nth-child(2){
	padding-right:0;
	padding-left:20px;
}
#form ul li {
	margin-bottom: 30px;
	clear:both;
}
#form ul li.submit input{
	margin:auto;
	display:block;
}
#form ul li strong {
	font-size: 20px;
	font-weight: 400;
	color: #333;
	display: block;
	margin-bottom:10px;
}
#form ul li strong span {
	color: #107bbf;
}
#form ul li strong span.bk{
	color:#000;
}
#form ul li label{
	margin-right:2em;
}
#form ul li input[type="text"], #form ul li textarea {
	width: 100%;
	border: 1px solid #ccc;
	border-radius: 4px;
	font-size: 20px;
	line-height:2.5em;
	padding: 0 0.5em;
	box-sizing: border-box;
}
#form ul li input[type="text"]{
	height:50px;
}
#form ul li textarea {
	line-height: 1.9em;
	padding-top: 0.5em;
}
#form ul li.submit{
	text-align:center;
}
#form ul li input[type=checkbox] {
	width: auto;
	display: inline-block;
	vertical-align: middle;
}

input::-webkit-input-placeholder {
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
	padding-left: 0.5em;
}

input::-moz-placeholder {
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
	padding-left: 0.5em;
}

input:-ms-input-placeholder {
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
	padding-left: 0.5em;
}

textarea::-webkit-input-placeholder {
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
	padding-left: 0.5em;
}

textarea:-moz-placeholder {
	/* Firefox 18- */
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
	padding-left: 0.5em;
}

textarea::-moz-placeholder {
	/* Firefox 19+ */
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
	padding-left: 0.5em;
}

textarea:-ms-input-placeholder {
	color: #ccc;
	font-size: 16px;
	font-weight: 300;
	padding-left: 0.5em;
}

#form ul li input[type=submit] {
	border: 0px;
	width: 408px;
	height: 90px;
	background:url("../img/sub.png") no-repeat top center / cover;
	margin-top:30px;
}
#form p{
	font-size:16px;
	text-align:center;
	margin:60px auto 0;
}
/*---------------------------------------------------------
							footer
---------------------------------------------------------*/

footer {
	width: 100%;
	background: #f2f2f2;
	color: #000;
	margin: auto;
	font-size: 13px;
	font-weight: 300;
	text-align: center;
	padding-top: 30px;
	padding-bottom: 180px;
}

#page-top {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index:999;
}

#page-top img {
	vertical-align: bottom;
}
#ft_cv{
	background-image: -moz-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	background-image: -webkit-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	background-image: -ms-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
	position:fixed;
	color:#ffee58;
	font-size:24px;
	padding:20px 0;
	width:100%;
	z-index:10;
}
#ft_cv img{
	vertical-align:bottom;
}
#ft_cv ul{
	display:flex;
	justify-content:center;
	max-width:1000px;
	margin:auto;
}
#ft_cv ul li{
	width:41%;
	margin:0 1%;
}
#ft_cv ul li:nth-child(2) a{
	display:block;
	background:#fff;
	border-radius:7px;
	font-size:24px;
	padding:15px 0;
	color:#1069a3;
	line-height:1.2;
	text-decoration:none;
	text-align:center;
	max-height:110px;
}
#ft_cv ul li:nth-child(2) a:hover{
	background:rgba(255,255,255,0.8);
}
#ft_cv ul li span{
	font-size:30px;
	font-weight:600;
	display:block;
}
#ft_cv ul li small{
	font-size:13px;
	display:block;
}
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, #ft_cv ul li span{font-size:28px;} /* IE11 */
}
#ft_cv ul li small{
	font-size:13px;
	display:block;
}
@media screen and (min-width:811px) and ( max-width:974px) {
	#ft_cv ul li:nth-child(1) a{font-size:20px;}
	#ft_cv ul li span{font-size:24px;}
	#ft_cv ul li small{font-size:12px;}
}
@media screen and (min-width:768px) and ( max-width:809px) {
#ft_cv ul li:nth-child(1) a{font-size:20px;}
#ft_cv ul li span{font-size:20px;}
#ft_cv ul li small{font-size:12px;}
}
#sp-header {
	display: none;
}
p.pp{
	line-height:1.5em;
	margin-bottom:2em;
}
p.pp.hd{
	text-align:center;
}
p.pp strong{
	display:block;
	font-weight:600;
	margin-top:1em;
}
#thanks{
	margin:10vh auto 10vh;
	max-width:960px;
}
#thanks h2{
	font-size:2em;
	font-weight:600;
	margin:2em 0 1em;
}
/*---------------------------------------------------------
							Mobile
---------------------------------------------------------*/


/*Media Queries*/

@media screen and (max-width: 767px) {
	body, html {
		min-width: 100%;
	}
	body {
			font-size: 15px;
			
	}
	img {
		max-width: 100%;
	}
	img.sp {
		width: 100%;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	header {
		width: 48px;
		position: fixed;
		top: 0;
		left: 5px;
		z-index: 999;
	}
	#main{
		background:none;
		position:relative;
		width:100%;
		max-height:551px;
	}
	#main:before{
		display:none;
	}
	#main figure{
		position: relative;
		top: 0;
	}
	#main_btm{
		background:url("../img/main_btm_bgs.jpg") no-repeat center top / cover;
		width:100%;
		padding:20px 10px;
		box-sizing:border-box;
	}
	#main_btm ul{
		display:flex;
		max-width:1000px;
		margin:auto;
	}
	#main_btm ul li{
		width:calc(100% / 3);
		flex:1;
		font-size:12px;
		padding: 0;
		text-align: center;
	}
	#main_btm ul li:nth-child(1){
		padding-right:10px;
	}
	#main_btm ul li:nth-child(2){
		border-left:3px dotted #b9d0de;
		border-right:3px dotted #b9d0de;
		padding:0 10px;
	}
	#main_btm ul li:nth-child(3){
		padding-left:10px;
	}
	#main_btm ul li figure{
		margin-bottom:0;
	}
	#main_cv{
		background-image: -moz-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		background-image: -webkit-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		background-image: -ms-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		padding:15px 0 20px;
	}
	#main_cv img{
		vertical-align:bottom;
	}
	#main_cv .ttl{
		max-width:92%;
		margin:0 auto 15px;
	}
	#main_cv figure{
		max-width:314px;
		margin:auto;
	}
	#main_cv ul{
		display:flex;
		justify-content:space-between;
		max-width:92%;
		margin:auto;
	}
	#main_cv ul li:nth-child(1){
		width:48.7%;
		margin-left:0;
		padding-top:0;
	}
	#main_cv ul li:nth-child(2){
		width:48.7%;
		margin-left:0;
		text-align:left;
		padding-top:0;
	}
	#main_cv ul li:nth-child(2) a{
		display:block;
		background:#fff;
		border-radius:6px;
		font-size:16px;
		font-weight:600;
		padding:7.5px 10px;
		line-height:1.2;
		text-decoration:none;
		max-height:110px;
	}
	#main_cv ul li:nth-child(3) a:hover{
		background:rgba(255,255,255,0.8);
	}
	#main_cv ul li span{
		display:none;
	}
	#main_cv ul li small{
		font-size:10px;
		display:block;
		white-space: nowrap;
	}
	#cv{
		background-image: -moz-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		background-image: -webkit-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		background-image: -ms-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		padding:15px 0 20px;
	}
	#cv img{
		vertical-align:bottom;
	}
	#cv .ttl{
		max-width:92%;
		margin:auto;
	}
	#cv figure{
		max-width:314px;
		margin:auto;
	}
	#cv ul{
		display:flex;
		justify-content:space-between;
		max-width:92%;
		margin:auto;
	}
	#cv ul li:nth-child(1){
		display:none;
	}
	#cv ul li:nth-child(2){
		width:48.7%;
		margin-left:0;
		padding-top:0;
	}
	#cv ul li:nth-child(3){
		background:url("../img/tel_bg.png") no-repeat center top / 100%;
		width:48.7%;
		margin-left:0;
		text-align:left;
		padding-top:0;
	}
	#cv ul li:nth-child(3) a{
		display:block;
		background:none;
		border-radius:0;
		font-size:16px;
		font-weight:600;
		padding:8px 10px;
		color:#ffee2e;
		line-height:1.2;
		text-decoration:none;
		text-shadow:1px 1px 2px #651315;
		max-height:110px;
	}
	@media screen and (max-width:360px) {
		#cv ul li:nth-child(3) a{font-size:14px;}
	}
	#cv ul li:nth-child(3) a:hover{
		background:rgba(255,255,255,0.8);
	}
	#cv ul li span{
		display:none;
	}
	#cv ul li small{
		font-size:10px;
		display:block;
		white-space: nowrap;
	}
	#ft_cv{
		background-image: -moz-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		background-image: -webkit-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		background-image: -ms-linear-gradient( 0deg, rgb(75,170,234) 0%, rgb(45,137,198) 35%, rgb(14,103,161) 100%);
		padding:15px 0 20px;
	}
	#ft_cv img{
		vertical-align:bottom;
	}
	#ft_cv .ttl{
		max-width:92%;
		margin:auto;
	}
	#ft_cv figure{
		max-width:314px;
		margin:auto;
	}
	#ft_cv ul{
		display:flex;
		justify-content:space-between;
		max-width:92%;
		margin:auto;
	}
	#ft_cv ul li:nth-child(1){
		width:48.7%;
		margin-left:0;
		padding-top:0;
	}
	#ft_cv ul li:nth-child(2){
		width:48.7%;
		margin-left:0;
		text-align:center;
		padding-top:0;
	}
	#ft_cv ul li:nth-child(2) a{
		display:block;
		background:#fff;
		border-radius:8px;
		font-size:16px;
		font-weight:600;
		padding:7.5px 10px;
		line-height:1.2;
		text-decoration:none;
		max-height:110px;
	}
	#ft_cv ul li:nth-child(2) a:hover{
		background:rgba(255,255,255,0.8);
	}
	#ft_cv ul li span{
		display:none;
	}
	#ft_cv ul li small{
		font-size:10px;
		display:block;
		white-space: nowrap;
	}
	#ft_cv ul li .wrapper {
		display:block;
		align-items: center;
		height: 100%;
	}
	
	@media screen and (max-width:370px) {
	#main_cv ul li:nth-child(3) a{font-size:14px;}
	cv ul li:nth-child(3) a{font-size:14px;}
	#ft_cv ul li:nth-child(2) a{font-size:14px;padding: 4px 10px;}
	}
	#scare{
		padding:30px 0 40px;
	}
	#scare .txt,#scare figure.image{
		display:block;
		font-size:15px;
		width:92%;
		padding:0;
		margin:auto;
	}
	#scare h3{
		font-size: 1.5rem;
		margin-bottom:20px;
	}
	#scare .detail,#scare p{
		display:block;
		padding:0;
	}
	#scare .graph {
		max-width: 234px;
		display: block;
		margin:1em auto;
	}
	#scare .items{
		margin:20px auto;
	}
	#scare::after{
		border-width: 24px 29.5px 0 29.5px;
		bottom:-24px;
	}
	#dif h2 {
		font-size: 1.2rem;
	}
	#where{
		background:url("../img/where_bgs.jpg") no-repeat center top / cover;
		padding-top:50px;
	}
	#where figure{
		max-width:92%;
		margin:auto;
	}
	#where figure img.sp{
		display:block;
		max-width:338px;
		vertical-align:bottom;
		margin:auto;
	}
	#dif {
		padding: 40px 15px 20px;
		box-sizing:border-box;
	}
	#dif table{
		border-spacing: 0px 14px;
	}
	#dif table td{
		font-size: 14px;
		padding-right: 14px;
		box-sizing:border-box;
	}
	#dif table td div{
		align-items:unset;
	}
	#dif table td div p {
		display:inline-flex;
		justify-content: center;
		padding: 14px;
		overflow: auto;
		box-sizing:border-box;
		width: calc(100% - 55px);
	}
	#dif table td div span{
		width:55px;
		min-height:66px;
		display:inline-block;
	}
	#dif table td div span::after{
		bottom:-10px;
		border-width: 10px 9.5px 0 9.5px;
	}
	#dif table td div span img.sp{
		display:block;
		width: 31px;
		margin: 18px auto 0;
	}
	#dif table td div span img.pc,#dif table td.free img.pc{
		display:none;
	}
	#dif table td.free img.sp{
		display:block;
		width:100%;
	}
	#dif table td.free{
		padding: 10px 2px;
		vertical-align: middle;
		width: 9%;
		background: #fff url(../img/frees.png) no-repeat center / contain;
	}
	@media screen and (max-width:360px) {
		#dif table td.free{
		background: #fff url(../img/frees.png) no-repeat center;
		background-size: contain;
		}
	}
	#dif table td div.pt{
		padding: 25px 14px 150px;
		background-position: center bottom;
		background-size: 80%;
	}
	#dif table td div.pt::after{
		bottom:-13px;
		border-width: 10px 9.5px 0 9.5px;
		left:15px;
	}
	#great {
		padding: 40px 15px;
		font-size: 12px;
		box-sizing:border-box;
	}
	#great h2{
		font-size:1.2rem;
		margin-bottom:20px;
	}
	#great p.lead{
		font-size:15px;
		text-align:left;
		margin-bottom:20px;
	}
	#great ul li {
		width: 48%;
		margin-bottom: 20px;
	}
	#great ul li:nth-child(3n-1),
	#great ul li:nth-child(even){
		margin: 0 0 20px 2%;
	}
	#great ul li ul li {
		font-size: 1em;
	}
	#great ul li ul li span {
		font-size: 0.8rem;
	}
	#great ul li ul {
		display: block;
		list-style: none;
	}
	#great p{
		padding:15px 8px;
	}
	#great strong{
		font-size:17px;
	}
	#reason {
		background: none;
		padding: 40px 15px 10px;
		font-size: 14px;
		box-sizing:border-box;
	}
	#reason section{
		margin-bottom:0;
	}
	#reason section.r1:before,#reason section.r2:before,
	#reason section.r3:before,#reason section.r4:before{
		display:none;
	}
	#reason section.r1 figure,#reason section.r3 figure{
		position: relative;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		max-width:92%;
		margin-left:0;
		margin-right:auto;
		z-index:1;
	}
	#reason section.r2 figure,#reason section.r4 figure{
		position: relative;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		max-width:92%;
		margin-left:auto;
		margin-right:0;
		z-index:1;
	}
	#reason section.r1 div,#reason section.r3 div{
		position: relative;
		top: -25px;
		left: 0;
		bottom: 0;
		right: 0;
		max-width:92%;
		margin-right:0;
		margin-left:auto;
		padding:10px 20px 30px;
		z-index:3;
	}
	#reason section.r2 div,#reason section.r4 div{
		position: relative;
		top: -25px;
		left: 0;
		bottom: 0;
		right: 0;
		max-width:92%;
		margin-right:auto;
		margin-left:0;
		padding:10px 20px 30px;
		z-index:3;
	}
	#reason h2{
		font-size: 1.2rem;
		margin:0 auto 20px;
	}
	#reason section.r2 h3 img{
		max-width:203px;
	}
	
	#reason section.r4 h3 img{
		max-width:172px;
	}
	#reason section hr {
		width: 25px;
		height: 2px;
		margin: 15px 0;
	}
	#voice {
		background: url(../img/voice_bgs.jpg) no-repeat center top / cover;
		padding: 40px 0;
		font-size: 14px;
	}
	#voice h2 {
		max-width: 146px;
		margin: 0 auto 20px;
	}
	#voice ul{
		width:92%;
		margin:auto;
		padding:0 20px;
		display:block;
	}
	#voice ul li{
		padding: 20px 0;
	}
	#voice ul li .ttl{
		font-size:17px;
		margin-bottom:8px;
	}
	#voice ul li .ttl small{
		font-size:15px;
	}
	#voice ul li .ttl figure{
		width:55px;
		margin-right:8px;
	}
	#voice ul li:nth-child(2) {
		border-top: 5px dotted #b9d0de;
		border-bottom: 5px dotted #b9d0de;
		border-left:0;
		border-right:0;
	}
	#form{
		padding:30px 0 40px;
	}
	#form .icn{
		font-size:9px;
	}
	#form .icn img{
		width:44px;
	}
	#form form{
		margin:0 auto;
		width:92%;
		padding:30px 20px 10px;
	}
	#form ul div{
		float:none;
		width:100%;
		padding-right:0;
	}
	#form ul div:nth-child(2){
		padding:0;
	}
	#form ul li{
		margin-bottom:20px;
	}
	#form ul li.submit{
		text-align:left;
	}
	#form ul li strong,#form ul li strong span{
		font-size:17px;
		font-weight:500;
	}
	
	#form ul li input[type="text"], #form ul li textarea {
		width: 100%;
		border: 1px solid #ccc;
		border-radius: 4px;
		font-size: 15px;
		line-height:2.5em;
		padding: 0 0.5em;
		box-sizing: border-box;
	}
	#form ul li input[type="text"]{
		height:40px;
	}
	#form ul li input[type=submit] {
		border: 0px;
		width: 305px;
		height: 55px;
		background: url(../img/subs.png) no-repeat top center / cover;
		margin-top: 15px;
	}
	@media screen and (max-width:360px) {
		#form ul li input[type=submit] {
		border: 0px;
		width: 100%;
		height: 52px;
	}
	}
	@media screen and (max-width:320px) {
		#form ul li input[type=submit] {
		border: 0px;
		width: 100%;
		height: 45px;
	}
	}
	#form p{
		font-size:12px;
		margin:30px auto 0;
	}
	
	#page-top {
		position: fixed;
		bottom: 10px;
		right: 0;
		width: 40px;
	}
	footer {
		padding:30px 0 60px;
		line-height:2;
		font-size: 10px;
		margin-bottom:60px;
	}
	#thanks{
		margin:10vh 4%;
		max-width:960px;
	}
	
	}
	
	@media screen and (max-width: 1000px) and (min-width: 768px) {
		body, html {
			
		}
}
