@charset "utf-8";
html {
	font-family: "Noto Sans Japanese";
}
.frame-main {
	background-color: #f4f6fc;
}
/* headerset007 */
/*--------------------------------------------------*/
/* header007 --------------------------------------*/
.header007 {
	position: fixed;
	z-index: 2; /* over catch */
	top: 0;
	width: 100%;
	margin: 0 auto;
	padding: 20px 3%;
	-webkit-transition: 300ms;
					transition: 300ms;
}
html.header007-scrolled .header007 {
	background: rgba(255, 255, 255, .5);
}
/* html.header007-scrolled .header007 .nav007-parent li a {
	color: #333;
}
html.header007-scrolled .header007 .nav007-parent > li a span::after {
	background: #333;
} */
.header007-inner {
	position: relative;
}
.header007-logo {
	/* empty */
	line-height: 0;
}
/* nav007（PC） --------------------------------------*/
/* 親 */
.nav007 {
	line-height: 1;
	position: absolute;
	top: -5px;
	right: 0;
	bottom: 0;
	/* height: 1em; */
	margin: auto 0;
}
.nav007-parent {
	display: table;
	margin-right: -20px;
}
.nav007-parent > li {
	position: relative;
	display: table-cell;
	padding: 0 20px;
}
.nav007-parent > li a {
	color: #333;
	font-size: 14px;
	line-height: 1;
	position: relative;
	vertical-align: middle;
}
.nav007-parent > li a span {
	position: relative;
	display: inline-block;
	padding-bottom: 5px;
}
.nav007-parent > li a span::after {
	position: absolute;
	z-index: 1;
	bottom: -3px;
	left: 0;
	width: 0;
	height: 1px;
	content: '';
	-webkit-transition: 300ms;
					transition: 300ms;
	background: #333;
}
.nav007-parent > li > a[href]:hover > span::after,
.nav007-parent > li.nav007-current > a > span::after {
	left: 0;
	width: 100%;
}
/* 子孫共通 */
.nav007-child {
	position: absolute;
	top: 90%;
	left: 0;
	visibility: hidden;
	min-width: 10em;
	-webkit-transition: 300ms;
					transition: 300ms;
	opacity: 0;
	background: rgba(255, 255, 255, .8);
}
.nav007-child li {
	position: relative;
}
.nav007-child li:not(:first-child) {
	border-top: 1px solid #ddd;
}
.nav007-child li a {
	font-size: 12px;
	line-height: 1.3;
	display: block;
	padding: 10px 20px;
	-webkit-transition: background-color 250ms;
					transition: background-color 250ms;
}
.nav007-child li a[href]:hover {
	background-color: white;
}
.nav007-haschild:hover .nav007-child {
	top: 120%;
	visibility: visible;
	opacity: 1;
}
/* 孫 */
.nav007-grandchild {
	position: absolute;
	top: -10px;
	left: 100%;
	visibility: hidden;
	min-width: 10em;
	-webkit-transition: 300ms;
					transition: 300ms;
	opacity: 0;
	background: rgba(255, 255, 255, .9);
}
.nav007-hasgrandchild:hover .nav007-grandchild {
	top: 0;
	visibility: visible;
	opacity: 1;
}
.nav007-contact a {
	color: #fff!important;
	background-color: #00229e;
	display: inline-block;
	padding: 15px 25px 10px;
	border-radius: 25px;
}
html .header007 .nav007-parent > li.nav007-contact a span::after {
	background: #fff!important;
}
html.header007-scrolled .header007 .nav007-parent > li.nav007-contact a span::after {
	background: #fff!important;
}
/* media query */
@media (max-width: 1199px) {
	.nav007-parent > li {
		padding: 0 15px;
	}
	.nav007-child li a {
		padding: 10px 10px;
	}
}
/* nav007（SP） --------------------------------------*/
.slicknav_menutxt {
	display: none!important;
}
.nav007-sp {
	display: none;
}
.slicknav_menu {
	position: fixed;
	z-index: 2; /* over mainvisual */
	width: 100%;
	padding: 0;
	-webkit-transition: background-color 750ms;
					transition: background-color 750ms;
	background-color: transparent;
}
.slicknav_brand {
	line-height: 0;
	height: 0;
	padding: 10px;
	padding-right: 0;
}
.no-scroll {
	display: none;
}
.fix-scroll {
	display: block;
}
.slicknav_brand img {
	max-width: 180px;
}
.slicknav_btn {
	margin: 0;
	padding: 20px;
	padding-left: 0;
	background-color: transparent;
}
.slicknav_menu .slicknav_menutxt {
	margin-right: 5px;
	color: inherit;
	text-shadow: none;
}
.slicknav_menu .slicknav_menutxt {
	font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif !important;
}
.ua-windows:not(.ua-ie) .slicknav_menu .slicknav_menutxt {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif !important;
}
.slicknav_menu .slicknav_icon,
.slicknav_menu .slicknav_icon::before,
.slicknav_menu .slicknav_icon-bar {
	width: 25px;
}
.slicknav_menu .slicknav_icon {
	margin: 0;
}
.slicknav_menu .slicknav_icon-bar {
	height: 1px;
	-webkit-transition: -webkit-transform 500ms cubic-bezier(.165, .84, .44, 1);
					transition:				 transform 500ms cubic-bezier(.165, .84, .44, 1);
	border-radius: 0;
	background-color: #333;
	box-shadow: none;
}
.slicknav_menu_open .slicknav_menu .slicknav_icon-bar {
	background-color: #333;
}
.header007-scrolled .slicknav_menu .slicknav_icon-bar {
	background-color: #333;
}
.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {
	margin-top: 6px;
}
.slicknav_nav {
	height: 100vh;
	padding-bottom: 50px;
}
.slicknav_nav,
.slicknav_nav a {
	color: #00229e;
	font-size: 18px;
	letter-spacing: 0.4em;
	text-align: center;
}
.slicknav_arrow i {
	font-size: 12px;
	-webkit-transform: translateY(-1px);
			-ms-transform: translateY(-1px);
					transform: translateY(-1px);
}
.slicknav_nav ul {
  margin: 0;
}
.slicknav_nav li {
	border-top: 1px solid #ccc;
}
.slicknav_nav > li:last-child {
	border-bottom: 1px solid #ccc;
}
.slicknav_nav .slicknav_row,
.slicknav_nav a {
	margin: 0;
	padding: 25px 15px;
	letter-spacing: 0.1em;
}
.slicknav_nav .slicknav_row:hover,
.slicknav_nav a:hover {
	color: inherit;
	background-color: inherit;
}
/* is scrolled */
html.header007-scrolled .slicknav_menu {
	background-color: rgba(255, 255, 255, .5);
}
/* is open */
html.slicknav_menu_open {
	overflow-y: hidden;
}
html.slicknav_menu_open .slicknav_menu {
	background-color: rgba(255, 255, 255, .8);
}
html.slicknav_menu_open .slicknav_nav {
	overflow-y: auto;

	-webkit-overflow-scrolling: touch;
}
html.slicknav_menu_open .slicknav_btn .slicknav_icon-bar:nth-child(1) {
	-webkit-transform: translateY(7px) rotate(45deg);
			-ms-transform: translateY(7px) rotate(45deg);
					transform: translateY(7px) rotate(45deg);
}
html.slicknav_menu_open .slicknav_btn .slicknav_icon-bar:nth-child(2) {
	opacity: 0;
}
html.slicknav_menu_open .slicknav_btn .slicknav_icon-bar:nth-child(3) {
	-webkit-transform: translateY(-7px) rotate(-45deg);
			-ms-transform: translateY(-7px) rotate(-45deg);
					transform: translateY(-7px) rotate(-45deg);
}
/* media query */
@media (max-width: 575px) {
	.slicknav_brand {
		padding: 10px;
		padding-right: 0;
	}
	.slicknav_btn {
		padding: 20px;
		padding-left: 0;
	}
	/* .slicknav_nav .slicknav_row,
	.slicknav_nav a {
		padding: 10px 10px;
	} */
}
/* mainvisual007 --------------------------------------*/
.mainvisual007 {
	position: relative;
	height: 100vh;
	z-index: 1;
	overflow: hidden;
}
/* .ua-iphone.ua-safari .mainvisual007 {
	height: calc(100vh - 64px);
} */
.mainvisual007 .bx-wrapper {
	position: absolute;
	z-index: -1;
	width: 100%;
	border: none;
	box-shadow: none;
}
.mainvisual007-slider {
	height: 100vh;
}
/* .ua-iphone.ua-safari .mainvisual007-slider {
	height: calc(100vh - 64px);
} */
.mainvisual007-slider li {
	height: 100vh;
	background-repeat: no-repeat;
	background-size: cover;
}
/* .ua-iphone.ua-safari .mainvisual007-slider li {
	height: calc(100vh - 64px);
} */
.ua-nontouch .mainvisual007-slider li {
	background-attachment: fixed;
}
.mainvisual007-slider li:nth-child(1) {
	background-image: url(../images/index/mainvisual04.jpg);
	background-position: 25% 50%;
}
.mainvisual007-slider li:nth-child(2) {
	background-image: url(../images/index/mainvisual05.jpg);
	background-position: 40% 50%;
}
.mainvisual007-slider li:nth-child(3) {
	background-image: url(../images/index/mainvisual02.jpg);
	background-position: 100% 50%;
}
.mainvisual007-inner {
	position: relative;
	display: table;
	width: 100%;
	height: 100%;
}

.mainvisual-catch {
	position: absolute;
	bottom: 50px;
	left: 60px;
}
.mainvisual-catch p {
	color: #fff;
	font-size: 72px;
	font-family: 'Josefin Sans', sans-serif;
	font-weight: 200;
	letter-spacing: 0.2em;
}
@media (max-width: 1200px) {
	.mainvisual-catch p {
		font-size: 48px;
		font-weight: 200;
		letter-spacing: 0.2em;
	}
}
@media (max-width: 767px) {
	.mainvisual-catch {
		bottom: 20px;
		left: 40px;
	}
	.mainvisual-catch p {
		font-size: 32px;
		font-weight: 300;
		letter-spacing: 0.1em;
	}
}
@media (max-width: 575px) {
	.mainvisual-catch {
		bottom: 10px;
		left: 20px;
	}
	.mainvisual-catch p {
		font-size: 24px;
		font-weight: 300;
		letter-spacing: 0.1em;
	}
}

/* footer */
/*--------------------------------------------------*/
.contents-footer {
	background-color: #00229e;
	padding: 40px 0 20px;
}
.footer-link-wrapper {
	padding-bottom: 15px;
}
.footer-link {
	color: #fff;
	padding-top: 10px;
	float: right;
}
.footer-link li {
	float: left;
	padding: 0 15px;
}
.footer-link li:last-child {
	padding-right: 0;
}
.footer-link a {
	display: inline-block;
	font-size: 14px;
	position: relative;
}
.footer-link a::after {
	content: "";
	display: block;
	width: 0;
	height: 1px;
	background-color: #fff;
	position: absolute;
	bottom: -5px;
	-webkit-transition: .4s ease;
	transition: .4s ease;
}
.footer-link a:hover::after {
	width: 100%;
	-webkit-transition: .4s ease;
	transition: .4s ease;
}
.footer-link a i {
	margin-right: 5px;
}
.footer-copyright {
	color: #fff;
	text-align: right;
	font-family: 'Josefin Sans', sans-serif;
	/* font-weight: 300; */
	border-top: 1px solid #fff;
	padding-top: 40px;
}
@media (max-width:991px) {
	.footer-logo {
		text-align: center;
		margin-bottom: 20px;
	}
	.footer-link-wrapper {
		text-align: center;
	}
	.footer-link {
		display: inline-block;
	}
	.footer-link a {
		font-size: 12px;
	}
	.footer-link li {
		padding: 0 10px;
	}
	.footer-copyright {
		padding-top: 20px;
	}
}
@media (max-width:767px) {
	.footer-link {
		float: inherit;
	}
	.footer-link li:last-child {
		padding-right: 10px;
	}
}

/* subvisual */
/*--------------------------------------------------*/
.subvisual-wrapper {
	padding-top: 75.63px;
	position: relative;
	height: 480px;
}
.subvisual224 {
	height: 100%;
	background-position: 50% 100%;
}
.page-id-76 .subvisual224 {
	background-position: 50% 80%;
}
.subvisual-inner {
	padding: 0 0 0 20%;
	width: 100%;
	height: 100%;
	position: relative;
}
.subvisual-title-white {
	position: absolute;
	top: 48%;
	left: 12.5%;
	white-space: nowrap;
}
.subvisual-title-white h2 {
	color: #f4f6fc;
	font-size: 56px;
	font-family: 'Josefin Sans', sans-serif;
	font-weight: 300;
	letter-spacing: 0.4em;
}
.subvisual-title-white p {
	color: #f4f6fc;
	font-size: 14px;
	letter-spacing: 0.1em;
}
.subvisual-title-wrapper {
	width: 20%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
.subvisual-title {
	position: absolute;
	left: 62%;
	top: 48%;
	white-space: nowrap;
}
.subvisual-title-wrapper h2 {
	color: #00229e;
	font-size: 56px;
	font-family: 'Josefin Sans', sans-serif;
	font-weight: 300;
	letter-spacing: 0.4em;
}
.subvisual-title-wrapper p {
	color: #00229e;
	font-size: 14px;
	letter-spacing: 0.1em;
}
@media (max-width: 991px) {
	.subvisual-wrapper {
		padding-top: 54px;
	}
}
@media (max-width: 767px) {
	.subvisual-wrapper {
		height: 400px;
	}
	.subvisual-title-white {
		top: 45%;
	}
	.subvisual-title {
		top: 45%;
	}
}
@media (max-width: 575px) {
	.subvisual-title-white h2 {
		font-size: 48px;
	}
	.subvisual-title-wrapper h2 {
		font-size: 48px;
	}
}
