@charset "UTF-8";
/*------------------------------------------------
	reset styles
--------------------------------------------------*/
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, input, textarea, p, th, td, small, strong, sub, sup, article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background-color: transparent;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	border: 0 none;
	vertical-align: bottom;
}
address, caption, em, strong, th {
	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: normal;
}
input, textarea, select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}
input, textarea, select {
	*font-size: 100%;
}
/*------------------------------------------------
	fonts styles
-------------------------------------------------*/
body {
	font: 13px/1.231 'Noto Sans JP', "游ゴシック", "YuGothic", "Yu Gothic", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', helvetica, arial, clean, sans-serif;
	*font-size: small;
	*font: x-small;
}
select, input, button, textarea {
	font: 99% 'Noto Sans JP', "游ゴシック", "YuGothic", "Yu Gothic", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', helvetica, arial, clean, sans-serif;
}
table {
	font-size: inherit;
	font: 100%;
}
pre, code, kbd, samp, tt {
	font-family: monospace;
	*font-size: 108%;
	line-height: 100%;
}
/*------------------------------------------------
	clearfix styles
--------------------------------------------------*/
.clear:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	font-size: 0;
	line-height: 1;
	overflow: hidden;
}
.clear {
	display: inline-block;
}
* html .clear {
	height: 1%;
}
.clear {
	display: block;
}
/*------------------------------------------------
	base styles
--------------------------------------------------*/
p, li, a dt, dd {
	text-align: justify;
	text-justify: inter-ideograph;
}
div, p, ul, ol, li, a, dl, dt, dd, header {
	box-sizing: border-box;
}
#header_lp {
	width: 100%;
	height: 60px;
	min-width: 1000px;
	background: #0073BC;
}
#header_lp > div {
	width: 1000px;
	height: 60px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.header_right {
	width: 345px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.sns_ico ul {
	width: 70px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
@media screen and (max-width:480px) {
	.spwrap {
		width: 100%;
		overflow-x: hidden;
	}
	#header_lp {
		min-width: 100%;
	}
	#header_lp > div {
		width: 100%;
		display: block;
	}
	#header_lp h1 {
		width: 100%;
		height: 60px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#header_lp h1 img {
		width: 100%;
		height: auto;
		max-width: 292px;
	}
	.header_right {
		display: none;
	}
}
.lp_eyecatch {
	width: 100%;
	height: 600px;
	min-width: 1000px;
	background-image: url(./images/eyecatch_bg_pc.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 2000px auto;
	position: relative;
	z-index: 2;
}
.lp_eyecatch > div {
	width: 920px;
	height: 600px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	z-index: 3;
}
.lp_eyecatch nav {
	position: absolute;
	z-index: 4;
	bottom: -60px;
	left: 0;
}
@media screen and (max-width:480px) {
	.lp_eyecatch {
		min-width: 100%;
		height: auto;
		padding-top: 100%;
		background-image: url(./images/eyecatch_bg_sp.png);
		background-size: cover;
	}
	.lp_eyecatch > div {
		width: 100%;
		height: 180px;
		position: absolute;
		bottom: -180px;
		background: #fff;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.lp_eyecatch nav {}
}
.snav {
	width: 920px;
	height: 80px;
	margin-left: auto;
	margin-right: auto;
	background: #29ABE2;
	border-radius: 4px;
	box-shadow: 4px 4px 5px rgba(4, 0, 0, 0.4);
}
.snav ul {
	display: flex;
	align-items: center;
	justify-content: center;
}
.snav ul li {
	width: calc(100% / 5);
}
.snav ul li a {
	width: 100%;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}
.snav ul li a div {
	width: 100%;
	height: 50px;
	border-right: 1px solid #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.snav ul li:last-child a div {
	border-right: none;
}
.snav ul li a div span {
	font-size: 14px;
	line-height: 1.5;
	color: #fff;
	text-align: center;
	position: relative;
	z-index: 1;
}
.snav ul li a:hover div span::after {
	content: "";
	width: 10px;
	height: 6px;
	background-image: url(./images/snav_arrow.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 10px 6px;
	position: absolute;
	z-index: 2;
	bottom: -10px;
	left: 50%;
	margin-left: -5px;
}
@media screen and (max-width:480px) {
	.lp_eyecatch nav {
		width: 90%;
		position: relative;
		margin-left: auto;
		margin-right: auto;
		top: 0;
		left: 0;
	}
	.snav {
		height: auto;
	}
	.snav ul {
		flex-wrap: wrap;
	}
	.snav ul::after {
		content: "";
		width: calc(100% / 3);
		display: block;
	}
	.snav ul li {
		width: calc(100% / 3);
	}
	.snav ul li:last-child a div {
		border-right: 1px solid #fff;
	}
	.snav ul li:nth-child(3) a div {
		border-right: none;
	}
	.snav ul li a {
		height: 60px;
		text-decoration: none;
	}
	.snav ul li a div {
		height: 50px;
		position: relative;
		z-index: 1;
	}
	.snav ul li a div span {
		font-size: 12px;
		margin-top: -8px;
	}
	.snav ul li:nth-child(1) a div::after, .snav ul li:nth-child(2) a div::after, .snav ul li:nth-child(3) a div::after {
		content: "";
		width: 92%;
		height: 1px;
		background: #E6E6E5;
		position: absolute;
		z-index: 2;
		bottom: -5px;
		left: 50%;
		margin-left: -46%;
	}
	.snav ul li a div span::after {
		content: "";
		width: 10px;
		height: 5px;
		background-image: url(./images/snav_arrow.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 10px auto;
		position: absolute;
		z-index: 2;
		bottom: -12px;
		left: 50%;
		margin-left: -7.5px;
	}
	.snav ul li a:hover div span::after {
		content: "";
		width: 10px;
		height: 5px;
		background-image: url(./images/snav_arrow.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 10px auto;
		position: absolute;
		z-index: 2;
		bottom: -12px;
		left: 50%;
		margin-left: -7.5px;
	}
}
.section > div {
	width: 920px;
	margin-left: auto;
	margin-right: auto;
}
.section01 {
	background: #FFFBDA;
	padding-top: 100px;
	padding-bottom: 50px;
	position: relative;
	z-index: 1;
}
.section01 h2 {
	text-align: center;
}
.section01 h3 {
	font-size: 24px;
	line-height: 40px;
	font-weight: 700;
	margin-top: 50px;
}
.section01 h3 i {
	padding-right: 10px;
	vertical-align: baseline;
}
.sec01_box_w {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.sec01_box {
	width: 294px;
	margin-top: 20px;
}
.sec01_box_w::after {
	content: "";
	display: block;
	width: 294px;
	height: 0;
}
.sec01_box h4 {
	font-size: 16px;
	line-height: 1.5;
	font-weight: 700;
	color: #0089A5;
}
.sec01_box figure {
	margin-top: 10px;
}
.sec01_box p {
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.5;
}
.sec01_last_w {
	width: 100%;
	margin-top: 50px;
	border: 3px solid #E6345C;
	border-radius: 15px;
	padding: 10px 15px;
}
.sec01_last {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.sec01_last + p {
	margin-top: 10px;
	font-size: 10px;
	line-height: 1.5;
}
@media screen and (max-width:480px) {
	.section > div {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	.section01 {
		padding-top: 220px;
		padding-bottom: 40px;
	}
	.section01 h3 {
		font-size: 20px;
		line-height: 1.4;
		margin-top: 75px;
		position: relative;
		z-index: 1;
		text-align: center;
	}
	.section01 h3 i {
		position: absolute;
		z-index: 2;
		top: -50px;
		left: 50%;
		margin-left: -23px;
	}
	.sec01_box_w {
		width: 100%;
		display: block;
	}
	.sec01_box {
		width: 100%;
		margin-top: 20px;
	}
	.sec01_box_w::after {
		content: "";
		display: none;
	}
	.sec01_box h4 {
		font-size: 18px;
		line-height: 1.4;
	}
	.sec01_box figure img {
		width: 100%;
		height: auto;
	}
	.sec01_last_w {
		border-radius: 15px;
		padding: 10px 15px;
	}
	.sec01_last {
		display: block;
	}
	.sec01_last p + p {
		margin-top: 10px;
	}
	.sec01_last + p {
		font-size: 8px;
	}
}
.section02 {
	padding-top: 20px;
	padding-bottom: 60px;
	background: #fff;
}
.sec02_box {
	margin-top: 40px;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.sec02_box + p {
	margin-top: 20px;
	font-size: 12px;
	line-height: 1.5;
}
@media screen and (max-width:480px) {
	.section02 {
		padding-top: 4px;
		padding-bottom: 40px;
	}
	.sec02_box {
		margin-top: 34px;
		display: block;
	}
	.sec02_box img {
		width: 100%;
		height: auto;
	}
	.sec02_box figure + p {
		margin-top: 15px;
	}
	.sec02_box + p {
		font-size: 8px;
	}
}
.section03 {
	background: #FFFBDA;
	padding-top: 80px;
	padding-bottom: 50px;
}
.section03 h2 {
	text-align: center;
}
.sec01_box p span {
	font-weight: 700;
}
.sec03_box_w + p {
	margin-top: 20px;
	font-size: 12px;
	line-height: 1.5;
}
@media screen and (max-width:480px) {
	.section03 {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.sec03_box_w + p {
		font-size: 8px;
	}
}
.section04 {
	padding-top: 20px;
	padding-bottom: 60px;
	background: #fff;
}
.section04_h {
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: center;
}
.sec04 {
	width: 100%;
	min-width: 1000px;
	background-size: cover;
	background-position: center top;
	position: relative;
	z-index: 1;
}
.sec04 > div {
	position: absolute;
	z-index: 2;
}
.sec04_01 {
	padding-bottom: 55.86%;
	background-image: url(images/section04_bg01.png);
}
.sec04_01 > div {
	top: 50%;
	right: 50%;
	margin-left: -460px;
	margin-top: -262px;
}
.sec04_02 {
	padding-bottom: 55.86%;
	background-image: url(images/section04_bg02.png);
}
.sec04_02 > div {
	top: 50%;
	margin-top: -286px;
	left: 50%;
}
.sec04_03 {
	padding-bottom: 55.86%;
	background-image: url(images/section04_bg03.png);
}
.sec04_03 > div {
	top: 50%;
	margin-top: -266px;
	left: 50%;
	margin-left: -460px;
}
.sec04_04 {
	padding-bottom: 31.43%;
	background-image: url(images/section04_bg04.png);
}
.sec04_04 > div {
	top: 50%;
	margin-top: -160px;
	left: 50%;
	margin-left: 20px;
}
.sec04_05 {
	padding-bottom: 31.43%;
	background-image: url(images/section04_bg05.png);
}
.sec04_05 > div {
	top: 50%;
	margin-top: -167px;
	right: 50%;
	margin-left: -460px;
}
@media screen and (max-width:1000px) {
	.sec04 {
		background-size: 1400px auto;
		padding: 0;
	}
	.sec04_01 {
		height: 782px;
	}
	.sec04_02 {
		height: 672px;
	}
	.sec04_03 {
		height: 548px;
	}
	.sec04_04 {
		height: 440px;
	}
	.sec04_05 {
		height: 440px;
	}
}
.section04 p {
	font-size: 12px;
	line-height: 1.5;
}
@media screen and (max-width:480px) {
	.section04 {
		padding-top: 0px;
		padding-bottom: 40px;
	}
	.section04_h {
		padding-top: 10px;
		padding-bottom: 0px;
	}
	.sec04 {
		min-width: 100%;
		background: none;
		height: auto !important;
		padding-bottom: 27px;
	}
	.sec04 > div {
		position: relative;
		top: 0;
		left: 0;
		margin: 0;
	}
	.sec04 > div > img {
		width: 100%;
		height: auto;
	}
	.section04 p {
		font-size: 8px;
	}
}
.section05 {
	background: #FFFBDA;
	padding-top: 80px;
	padding-bottom: 50px;
}
.section05 h2 {
	text-align: center;
}
.sec05_box {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}
.sec05_box + p {
	margin-top: 20px;
	font-size: 12px;
	line-height: 1.5;
}
@media screen and (max-width:480px) {
	.section05 {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.sec05_box {
		margin-top: 20px;
		display: block;
	}
	.sec05_box div + div {
		margin-top: 20px;
	}
	.sec05_box + p {
		font-size: 8px;
	}
}
.section06 {
	background: #fff;
	padding-top: 80px;
	padding-bottom: 50px;
}
.section06 h2 {
	text-align: center;
}
.section06 h3 {
	text-align: center;
	margin-top: 20px;
}
.sec06_box01 {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}
.sec06_box02 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sec06_box02 > div {
	width: 294px;
	margin-top: 14px;
}
.sec06_box02::after {
	content: "";
	display: block;
	width: 294px;
	height: 0;
}
.sec06_box02 + p {
	margin-top: 20px;
	font-size: 12px;
	line-height: 1.5;
}
@media screen and (max-width:480px) {
	.section06 {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.section06 h3 {
		margin-top: 40px;
	}
	.sec06_box01 {
		display: block;
		margin-top: 20px;
	}
	.sec06_box01 div + div {
		margin-top: 20px;
	}
	.sec06_box02 > div {
		width: calc(50% - 10px);
		margin-top: 20px;
	}
	.sec06_box02 + p {
		font-size: 8px;
	}
}
#footer_lp {
	width: 100%;
	min-width: 1000px;
	background: #0073BC;
}
#footer_lp > div {
	width: 920px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 55px;
	padding-bottom: 30px;
}
#footer_lp h2 {
	text-align: center;
	font-size: 24px;
	color: #fff;
}
#footer_lp h3 {
	width: 100%;
	height: 20px;
	background: #fff;
	text-align: center;
	font-size: 12px;
	line-height: 20px;
	color: #0073BC;
	margin-top: 20px;
}
.foot_wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 20px;
}
.foot_box {
	width: 294px;
	margin-top: 20px;
}
#footer_lp h4 {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 2px;
}
.foot_box p, .foot_box p a {
	color: #fff;
	line-height: 1.5;
}
.foot_box p:nth-of-type(2) a {
	text-decoration: none;
}
.foot_wrap:nth-of-type(2)::after {
	content: "";
	display: block;
	width: 294px;
	height: 0;
}
@media screen and (max-width:480px) {
	#footer_lp {
		min-width: 100%;
	}
	#footer_lp > div {
		width: 90%;
		padding-top: 40px;
	}
	#footer_lp h2 {
		font-size: 18px;
	}
	.foot_wrap {
		display: block;
	}
}
.pc_only {
	display: block;
}
img.pc_only, em.pc_only {
	display: inline;
}
.sp_only {
	display: none;
}
@media screen and (max-width:480px) {
	.pc_only {
		display: none;
	}
	img.pc_only, em.pc_only {
		display: none;
	}
	.sp_only {
		display: block;
	}
	img.sp_only {
		display: inline;
	}
	img {
		max-width: 100%;
		height: auto;
	}
}