@charset "utf-8";
/* CSS Document */

/* OUTLINE
-------------------------------------------------------------------------------------------------*/
body {
	min-width: 100%;
	font-size: 12px;
}


/* PC SP
-------------------------------------------------------------------------------------------------*/
.pcOnly {
	display: none!important;
}
.spOnly {
	display: block!important;
}

/* HEADER
-------------------------------------------------------------------------------------------------*/
header {
	border-bottom: 4px solid #00d5e4;
	padding: 16px 4px;
}
header > h1 > a > img {
	width: auto;
	height: 20px;
}


/* FOOTER
-------------------------------------------------------------------------------------------------*/
footer > div.bg_white > ul {
	width: 98%;
	padding: 16px 0;
}
footer > div.bg_white > ul > li:first-child {
	padding-right: 8px;
}
@media screen and (max-width: 479px) {
	footer > div.bg_white > ul > li {
		display: block;
		width: 96%!important;
		margin: 0 auto 4px;
	}
}
a.pagetop {
	right: 12px;
	bottom: 52px;
	width: 40px;
	height: 40px;
}
a.pagetop > i {
	font-size: 40px;
}
.copyright {
	padding: 8px 0;
}
.bottomLink {
	width: 96%;
	margin: 0 auto 24px;
}


/* CONTENTS
-------------------------------------------------------------------------------------------------*/
#Contents {
	width: 100%;
	padding: 16px 0;
	overflow: hidden;
}
h2 {
	font-size: 10vw;
}
h5 {
	font-size: 2em;
	letter-spacing: 0;
}
h6 {
	font-size: 2.2em;
	margin: 32px auto 0;
	width: 90%;
}
h6:before, h6:after {
	height: 4px;
}
#maincopy {
	font-size: 4vw;
}
.descri {
	font-size: 1.35em;
	margin: 30px auto;
}
a.button {
	font-size: 5vw;
}
.fukidashi {
	font-size: 6vw;
	border: solid 3px #2e74e0;
}
.fukidashi:before {
	bottom: -24px;
	margin-left: -14px;
	border: 14px solid transparent;
	border-top: 14px solid #FFF;
}
.fukidashi:after {
	bottom: -30px;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #2e74e0;
}
#intro > dl {
	display:block;
	width: 96%;
	margin: 0 auto;
	border: 0.2vw solid #2e74e0;
	margin-top: 20px;
}
#intro > dl > dt,
#intro > dl > dd {
	flex-basis: 100%;
	padding: 10px;
}
#lineup > div {
	width:48%;
	padding: 46px 0;
	border-radius: 12px;
	font-size: 1.1em;
}
#lineup > div > p:first-child {
	padding: 0 10%;
}
#lineup > div > p:last-child {
	padding: 16px 5%;
}
ul#itemBox > li {
	width: 48%;
	font-size: 1em;
	text-align: left;
	padding: 2em 4% 1em;
	margin-top: 16px;
	border: 2px solid #00d5e4;
	border-radius: 12px;
}
ul#itemBox > li > p:nth-child(2) {
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
	color: #00d5e4;
}
div.line {
	height: 35px;
	border: 10px solid #00d5e4;
	border-top: none;
}
ul#functionBox > li {
	width: 48%;
	padding: 16px 4% 8px;
	margin: 0 0 20px 0;
	border-radius: 12px;
}
ul#functionBox > li:nth-child(even) {
	float: right;
}
ul#functionBox > li > p:first-child {
	text-align: center;
}
ul#functionBox > li > p:nth-child(2) {
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
	color: #00d5e4;
}

@media screen and (max-width: 540px) {
	h4 {
		font-size: 2.4em;
		margin: 50px 0;
	}
	h4:before {
		width: 100px;
		height: 100px;
	}
}





/* CONTACT
-------------------------------------------------------------------------------------------------*/
.form > table,
.form > table tbody,
.form > table tr,
.form > table th,
.form > table td {
	display: block;
	width: 100%!important;
}
.form > table tr {
	border-bottom: 1px solid #ccc;
}
.form > table tr:first-child {
	border-top: 1px solid #ccc;
}
.form > table th {
	padding: 1em 0 .5em 0;
}
.form > table td {
	padding: 0 0 1em 1em;
}
.form > table input[type="text"],
.form > table input[type="email"],
.form > table textarea {
	width: 100%;
}
.form > table td.name input[type="text"] {
	width: 40%;
}


/* COMMON
-------------------------------------------------------------------------------------------------*/
/* TEXT */
.fs72 { font-size:2.2em; }
.fs40 { font-size:1.8em; }
.fs32 { font-size:1.5em; }
.fs24 { font-size:1.3em; }
.fs16 { font-size:1.1em; }

/* -- MARGIN / PADDING --*/
.mar_l4{ margin-left:2px!important; }
.mar_l8{ margin-left:4px!important; }
.mar_l12{ margin-left:6px!important; }
.mar_l16{ margin-left:8px!important; }
.mar_l22{ margin-left:11px!important; }
.mar_l24{ margin-left:12px!important; }
.mar_l32{ margin-left:16px!important; }
.mar_l40{ margin-left:20px!important; }
.mar_l48{ margin-left:24px!important; }
.mar_l56{ margin-left:28px!important; }

.mar_r4{ margin-right:2px!important; }
.mar_r8{ margin-right:4px!important; }
.mar_r12{ margin-right:6px!important; }
.mar_r16{ margin-right:8px!important; }
.mar_r24{ margin-right:12px!important; }
.mar_r32{ margin-right:16px!important; }
.mar_r40{ margin-right:20px!important; }
.mar_r48{ margin-right:24px!important; }
.mar_r56{ margin-right:28px!important; }

.mar_t4{ margin-top:2px!important; }
.mar_t8{ margin-top:4px!important; }
.mar_t12{ margin-top:6px!important; }
.mar_t16{ margin-top:8px!important; }
.mar_t24{ margin-top:12px!important; }
.mar_t32{ margin-top:16px!important; }
.mar_t40{ margin-top:20px!important; }
.mar_t48{ margin-top:24px!important; }
.mar_t56{ margin-top:28px!important; }
.mar_t64{ margin-top:32px!important; }
.mar_t80{ margin-top:40px!important; }
.mar_t148{ margin-top:74px!important; }

.mar_b4{ margin-bottom:2px!important; }
.mar_b8{ margin-bottom:4px!important; }
.mar_b12{ margin-bottom:6px!important; }
.mar_b16{ margin-bottom:8px!important; }
.mar_b24{ margin-bottom:12px!important; }
.mar_b32{ margin-bottom:16px!important; }
.mar_b40{ margin-bottom:20px!important; }
.mar_b48{ margin-bottom:24px!important; }
.mar_b56{ margin-bottom:28px!important; }

.mar_tb16{ margin-top:8px!important; margin-bottom:8px!important; }
.mar_tb24{ margin-top:12px!important; margin-bottom:12px!important; }
.mar_tb40{ margin-top:20px!important; margin-bottom:20px!important; }
.mar_tb48{ margin-top:24px!important; margin-bottom:24px!important; }

.pad_l4{ padding-left:2px!important; }
.pad_l8{ padding-left:4px!important; }
.pad_l12{ padding-left:6px!important; }
.pad_l16{ padding-left:8px!important; }
.pad_l24{ padding-left:12px!important; }
.pad_l32{ padding-left:16px!important; }
.pad_l40{ padding-left:20px!important; }
.pad_l48{ padding-left:24px!important; }
.pad_l56{ padding-left:28px!important; }
.pad_l72{ padding-left:36px!important; }

.pad_r4{ padding-right:2px!important; }
.pad_r8{ padding-right:4px!important; }
.pad_r12{ padding-right:6px!important; }
.pad_r16{ padding-right:8px!important; }
.pad_r24{ padding-right:12px!important; }
.pad_r32{ padding-right:16px!important; }
.pad_r40{ padding-right:20px!important; }
.pad_r48{ padding-right:24px!important; }
.pad_r56{ padding-right:28px!important; }
.pad_r72{ padding-right:36px!important; }

.pad_t4{ padding-top:2px!important; }
.pad_t8{ padding-top:4px!important; }
.pad_t12{ padding-top:6px!important; }
.pad_t16{ padding-top:8px!important; }
.pad_t24{ padding-top:12px!important; }
.pad_t32{ padding-top:16px!important; }
.pad_t40{ padding-top:20px!important; }
.pad_t48{ padding-top:24px!important; }
.pad_t56{ padding-top:28px!important; }
.pad_t64{ padding-top:32px!important; }
.pad_t80{ padding-top:40px!important; }
.pad_t148{ padding-top:74px!important; }

.pad_b4{ padding-bottom:2px!important; }
.pad_b8{ padding-bottom:4px!important; }
.pad_b12{ padding-bottom:6px!important; }
.pad_b16{ padding-bottom:8px!important; }
.pad_b24{ padding-bottom:12px!important; }
.pad_b32{ padding-bottom:16px!important; }
.pad_b40{ padding-bottom:20px!important; }
.pad_b48{ padding-bottom:24px!important; }
.pad_b56{ padding-bottom:28px!important; }
.pad_b64{ padding-bottom:32px!important; }

.pad_tb8{ padding-top:4px!important; padding-bottom:4px!important; }
.pad_tb20{ padding-top:10px!important; padding-bottom:10px!important; }
.pad_tb40{ padding-top:20px!important; padding-bottom:20px!important; }
.pad_tb48{ padding-top:24px!important; padding-bottom:24px!important; }

.pad_al8 {padding:4px!important; }
.pad_al16 {padding:8px!important; }



