@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese');

body {
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	font-size: 18px;
	color: #1D1D1D;
	line-height: 1.75;
	outline: none;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	min-width: 1030px;
}

.inner {
	max-width: 1154px;
	padding: 0 15px;
	margin: 0 auto;
}

.vis-sp,
.vis-tb {
	display: none;
}

/* ヘッダー */
.head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 25px;
}

.head_logo {
}

.head_logo a {
	display: inline-block;
	transition: opacity 0.3s;
}

.head_logo a:hover {
	opacity: 0.7;
}

.head_menu {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.head_gnav {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.head_gnav a {
	display: block;
	line-height: 1;
	padding: 14px 25px;
	position: relative;
}

.head_gnav a:after {
	position: absolute;
	content: "";
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 3px;
	background: #FEC400;
	opacity: 0;
	visibility: hidden;
	transition: bottom 0.3s, opacity .3s, visibility 0.3s;
}

.head_gnav a:hover:after {
	bottom: 0;
	opacity: 1;
	visibility: visible;
}

.head_contact {
	margin-left: 15px;
}

.head_contact a {
	display: block;
	line-height: 1;
	color: #fff;
	background: #013288;
	border: 2px solid #013288;
	border-radius: 25px;
	padding: 12px 40px;
	transition: color 0.3s, background 0.3s;
}

.head_contact a:hover {
	color: #013288;
	background: #fff;
}

.head_btn {
	background: #FEC400;
	display: none;
}

.head_btn_line {
	width: 18px;
	height: 10px;
	position: relative;
}

.head_btn_line span {
	position: absolute;
	left: 0;
	content: "";
	width: 100%;
	height: 1px;
	background: #013288;
	transition: opacity 0.3s, transform 0.3s;
}

.head_btn_line span.-item1 {
	top: 0;
}

.head_btn_line span.-item2 {
	top: 50%;
	transform: translateY(-50%);
}

.head_btn_line span.-item3 {
	bottom: 0;
}

.head_btn_line span.-item1.-open {
	-webkit-transform: translate(0px, 5px) rotate(-45deg);
	    transform: translate(0px, 5px) rotate(-45deg);
	    transform-origin: center;
}

.head_btn_line span.-item2.-open {
	-webkit-transform: translate(0px, -1px) rotate(90deg);
	    transform: translate(0px, -1px) rotate(90deg);
	    opacity: 0;
}

.head_btn_line span.-item3.-open {
	-webkit-transform: translate(0, -5px) rotate(45deg);
	    transform: translate(0, -5px) rotate(45deg);
	    transform-origin: center;
}

.head_btn_txt {
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	color: #013288;
	margin-left: 6px;
}

/* pbody */
.pbody {
}

.pbody_head {
	position: relative;
	height: 472px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.pbody_head:before {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgb(1 50 136 / 0.5);
}

.pbody_head_ttl {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	padding: 10px;
	text-align: center;
}

.pbody_cnt {
	padding: 150px 0 195px;
}

/* フッター */
.foot {
	background: #FAFAFA;
	padding: 70px 0;
	position: relative;
}

.foot_pagetop {
	position: absolute;
	top: -76px;
	right: 30px;
}

.foot_pagetop a {
	display: block;
	transition: transform 0.3s;
}

.foot_pagetop a:hover {
	transform: scale(1.1, 1.1);
}

.foot_copyright {
	font-size: 14px;
	line-height: 1;
	color: #888888;
	text-align: center;
}

@media screen and (max-width:1400px) {
	img {
		max-width: 100%;
		height: auto;
	}

	.vis-tb {
		display: block;
	}

	.hide-tb {
		display: none;
	}

	/* ヘッダー */
	.head {
		padding: 20px 10px;
	}
	.head_logo a {
		width: 400px;
	}

	.head_gnav a {
		padding: 14px 15px;
	}

	.head_contact a {
		padding: 12px 20px;
	}


	/* フッター */
}


@media screen and (min-width:641px) {
	.head_gnav {
		display: flex !important;
	}
}

@media screen and (max-width:640px) {
	.vis-sp {
		display: block;
	}

	.hide-sp {
		display: none;
	}

	.inner {
		padding: 0 20px;
	}

	body {
		min-width: 360px;
		font-size: 14px;
	}

	/* ヘッダー */
	.head {
		display: block;
		padding: 0;
		text-align: center;
	}

	.head_logo {
		padding: 10px;
	}

	.head_logo a {
		width: 290px;
	}

	.head_menu {
		align-items: stretch;
		position: relative;
	}

	.head_menu.-fixed {
		position: fixed;
		z-index: 50;
		width: 100%;
		top: 0;
		left: 0;
	}

	.head_btn {
		width: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
	}

	.head_gnav {
		position: absolute;
		z-index: 50;
		top: 100%;
		left: 0;
		width: 100%;
		background: #FEC400;
		padding: 30px 0;
		flex-direction: column;
		display: none;
	}

	.head_gnav a {
		width: 100%;
		color: #013288;
		font-size: 16px;
		font-weight: bold;
	}

	.head_contact {
		width: 50%;
		margin-left: 0;
	}

	.head_contact a {
		border-radius: 0;
	}

	.pbody_head {
		height: 200px;
	}

	.pbody_cnt {
		padding: 50px 0;
	}

	/* フッター */
	.foot {
		padding: 30px 0;
	}

	.foot_pagetop {
		position: static;
		text-align: center;
		margin-bottom: 25px;
	}
}

@media print {
}
