@charset "utf-8";

@media all {
/* 
 * 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,
	input,
	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,
	:before,
	:after {
		margin: 0;
		padding: 0;
		border: 0;
		font-style: normal;
		vertical-align: bottom;
		background-repeat: no-repeat;
		box-sizing: border-box;
		backface-visibility: hidden;
	}
	
	article,
	aside,
	details,
	figcaption,
	figure,
	footer,
	header,
	hgroup,
	main,
	menu,
	nav,
	section {
		display: block;
	}
	
	html {
		font-size: 62.5%;
		overflow-y: scroll;
		overflow-x: hidden;
		background: #202329;
	}
	
	.g-body {
		color: #333;
		font-size: 1.6rem;
		font-family: 'Roboto', 'Noto Sans JP';
		font-weight: 400;
		font-feature-settings: 'pwid';
		-webkit-font-smoothing: subpixel-antialiased;
		-moz-osx-font-smoothing: unset;
		-webkit-text-size-adjust: 100%;
		text-size-adjust: 100%;
		line-height: 1;
		letter-spacing: .05em;
		width: 100%;
		min-width: 1160px;
		margin: 0;
		padding: 0;
		background: #202329;
		cursor: default;
	}
	
	input,
	textarea,
	button,
	select,
	option,
	textarea {
		font-family: 'Noto Sans JP';
		margin: 0;
		padding: 0;
		outline: none;
		border-radius: 0;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		cursor: pointer;
	}

	ol,
	ul {
		list-style: none;
	}
	
	table {
		border-collapse: separate;
		border-spacing: 0;
	}
	
	a,
	a:before,
	a:after,
	a:visited,
	a img,
	input[type='image'],
	input[type='submit'] {
		color: #000;
		text-decoration: none;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	a:hover,
	a:hover img,
	input[type='image']:hover,
	a:visited:hover {
		color: #294197;
		text-decoration: underline;
		opacity: .9;
	}
	
	a:focus {
		outline: none;
	}
	
	.js-Link__invalid,
	.js-Link__invalid:hover {
		color: #1e1e1e !important;
		opacity: 1 !important;
		cursor: default;
	}
	
	img {
		width: 100%;
		height: auto;
	}
	
	button {
		margin:0;
		padding:0;
		border:0;
		background:transparent;
	}
	
	sup {
		font-size: 1.1rem;
		line-height: 1;
		letter-spacing: .1em;
		vertical-align: text-top;
	}
	
	sub {
		font-size: 1.1rem;
		line-height: 1;
		letter-spacing: .1em;
		vertical-align: 0;
	}
	
	strong,
	em,
	b {
		font-weight: 400;
	}
	
	::selection {
		color: #fff;
		background: #294197;
	}
	
	::-webkit-scrollbar {
		width: 8px;
		background: #f5f6f9;
	}
	
	::-webkit-scrollbar-thumb {
		background-color: #999;
	}
	
	.js-scrollClass,
	.js-scrollClass:before,
	.js-scrollClass:after {
		transition: .6s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-scrollClass {
		opacity: 0;
		transform: translate(0,30px);
	}
	
	.u-scrollClass.is-stateScroll {
		opacity: 1;
		transform: translate(0,0);
	}
	
	.g-main {
		padding: 0 0 60px;
	}
	
/* 
 * Utility
 * ==================================================================================================== */
	.u-contents {
		margin: 100px 0 0;
	}
	
	.u-inner {
		max-width: 1160px;
		margin: 0 auto;
	}
	
	.u-inner--sub {
		padding-right: 105px;
		padding-left: 105px;
	}
	
	.u-show__mobile {
		display: none !important;
	}
	
	.u-hide__mobile {
		display: block !important;
	}
	
	.u-show__tablet {
		display: none !important;
	}
	
	.u-hide__tablet {
		display: block !important;
	}
	
	.u-cover {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 0;
		visibility: hidden;
		opacity: 0;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-transition {
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-font__serif {
		font-family: 'Times New Roman', 'Noto Serif JP' !important;
	}
	
	.u-font__light {
		font-weight: 300 !important;
	}
	
	.u-font__normal {
		font-weight: 400 !important;
	}
	
	.u-font__middle {
		font-weight: 500 !important;
	}
	
	.u-font__bold {
		font-weight: 700 !important;
	}
	
	.u-lineheight__none {
		line-height: 1;
	}
	
	.u-lineheight__small {
		line-height: 1.35;
	}
	
	.u-align__right {
		text-align: right !important;
	}
	
	.u-align__center {
		text-align: center !important;
	}
	
	.u-align__left {
		text-align: left !important;
	}
	
	.u-float__right {
		float: right !important;
	}
	
	.u-float__left {
		float: left !important;
	}
	
	.u-display__block {
		display: block;
	}
	
	.u-display__inline-block {
		display: inline-block;
	}
	
	.u-display__none {
		display: none;
	}
	
	.u-color__white {
		color: #fff !important;
	}
	
	.u-color__black {
		color: #000 !important;
	}
	
	.u-color__gray {
		color: #666 !important;
	}
	
	.u-color__blue {
		color: #294197 !important;
	}
	
	.u-color__red {
		color: #e11b40 !important;
	}
	
	.u-color__orange {
		color: #e1521b !important;
	}
	
	.u-image {
		margin-bottom: 1em;
	}
	
	.u-text {
		line-height: 2;
	}
	
	.u-text__indent {
		text-indent: 1em;
	}
	
	.u-textdeco__underline {
		text-decoration: underline;
	}
	
	.u-textdeco__none {
		text-decoration: none !important;
	}
	
	.u-note {
		font-size: 1.2rem;
	}
	
	.u-note > * {
		color: #666;
		line-height: 1.5;
		margin: 0 0 .35em;
	}
	
	.u-note__indent--1half {
		padding-left: 1.5em;
		position: relative;
	}
	
	.u-note__indent--1half .u-color__blue {
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.u-note__indent {
		text-indent: -2em;
		padding-left: 2em;
	}
	
	.u-note__indent--2half {
		text-indent: -3em;
		padding-left: 3em;
	}
	
	.u-note__indent--1 {
		text-indent: -1em;
		padding-left: 1em;
	}
	
	.u-list {}
	
	.u-list__item {
		line-height: 1.5;
		margin: 0 0 .5em;
		padding-left: 1.15em;
		position: relative;
	}
	
	.u-list__item:before {
		content: '';
		width: 9px;
		height: 9px;
		background: #294197;
		border-radius: 50%;
		position: absolute;
		top: .525em;
		left: 0;
	}
	
	.u-list__item--decimal {
		list-style-type: decimal;
		margin-left: 1.25em;
		padding-left: 0;
	}
	
	.u-list__item--decimal:before {
		display: none;
	}
	
	.u-list__item--data:before {
		content: attr(data)'';
		margin: 0 .25em 0 0;
		display: inline-block;
	}
	
	.u-list__item .u-icon:after {
		transform: translate(0,-.35em);
	}
	
	.u-button a {
		text-align: center;
		min-width: 330px;
		min-height: 60px;
		display: inline-block;
		border: 1px solid #b0bec5;
		position: relative;
	}
	
	.u-button a:hover {
		color: #fff;
		background: #294197;
		border-color: #294197;
		text-decoration: none;
		opacity: 1;
	}
	
	.u-button__name {
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}
	
	.u-icon {
		position: relative;
	}
	
	.u-icon:after {
		content: '';
		line-height: 2;
		margin: -.25em .25em 0;
		display: inline-block;
		background-size: 100% 100%;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.u-icon__arrow-basic:after {
		content: '';
		width: 16px;
		height: 14px;
		background: url("/_assets/img/common/arrow-blue.svg") no-repeat center / 100% 100%;
	}
	
/*
	.u-icon__pdf:after {
		width: 18px;
		height: 18px;
		background-image: url("/_assets/img/common/icon-pdf.svg");
	}
*/
	
	.u-icon__window:after {
		width: 13px;
		height: 13px;
		background-image: url("/_assets/img/common/icon-window-basic.svg");
	}
	
	.u-icon__window--white:after {
		background-image: url("/_assets/img/common/icon-window-white.svg");
	}
	
	.u-basicButton a {
		padding: .35em 2em;
		background: #fff;
	}
	
	.u-title__page {
		color: #000;
		font-size: 3rem;
		font-weight: 400;
		line-height: 1.35;
		letter-spacing: .075em;
	}
	
	.u-title__page small {
		font-size: 2.4rem;
		margin: 0 0 0 1em;
		display: inline-block;
	}
	
	.u-title__hi {
		color: #000;
		font-size: 2.4rem;
		font-weight: 400;
		line-height: 1.75;
		padding: 0 0 .25em;
		border-bottom: 1px solid #ddd;
	}
	
	.u-title__mid {
		color: #000;
		font-size: 2rem;
		font-weight: 500;
		line-height: 1.35;
	}
	
	.u-title__low {
		color: #000;
		font-weight: 700;
	}
	
	.u-position__center {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	.u-position__absolute {
		position: absolute;
	}
	
	.u-position__fixed {
		position: fixed;
	}
	
	.u-position__relative {
		position: relative;
	}
	
	.u-flex {
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-flex__center {
		justify-content: center;
	}
	
	.u-flex__right {
		justify-content: flex-end;
	}
	
	.u-flex__middle {
		align-items: center;
	}
	
	.u-flex__bottom {
		align-items: flex-end;
	}
	
	.u-flex__reverse {
		flex-direction: row-reverse;
	}
	
	.u-flex__between {
		justify-content: space-between;
	}
	
	.u-flex__column--2 > * {
		width: calc(100% / 2);
	}
	
	.u-flex__column--3 > * {
		width: calc(100% / 3);
	}
	
	.u-flex__column--4 > * {
		width: calc(100% / 4);
	}
	
	.u-flex__column--5 > * {
		width: calc(100% / 5);
	}
	
	.u-flex__column--6 > * {
		width: calc(100% / 6);
	}
	
	.u-flex__column--7 > * {
		width: calc(100% / 7);
	}
	
	.u-mgt__125 { margin-top: 125px !important; }
	.u-mgt__120 { margin-top: 120px !important; }
	.u-mgt__115 { margin-top: 110px !important; }
	.u-mgt__110 { margin-top: 110px !important; }
	.u-mgt__105 { margin-top: 100px !important; }
	.u-mgt__100 { margin-top: 100px !important; }
	.u-mgt__95 { margin-top: 95px !important; }
	.u-mgt__90 { margin-top: 90px !important; }
	.u-mgt__85 { margin-top: 85px !important; }
	.u-mgt__80 { margin-top: 80px !important; }
	.u-mgt__75 { margin-top: 75px !important; }
	.u-mgt__70 { margin-top: 70px !important; }
	.u-mgt__65 { margin-top: 65px !important; }
	.u-mgt__60 { margin-top: 60px !important; }
	.u-mgt__55 { margin-top: 55px !important; }
	.u-mgt__50 { margin-top: 50px !important; }
	.u-mgt__45 { margin-top: 45px !important; }
	.u-mgt__40 { margin-top: 40px !important; }
	.u-mgt__35 { margin-top: 35px !important; }
	.u-mgt__30 { margin-top: 30px !important; }
	.u-mgt__25 { margin-top: 25px !important; }
	.u-mgt__20 { margin-top: 20px !important; }
	.u-mgt__15 { margin-top: 15px !important; }
	.u-mgt__10 { margin-top: 10px !important; }
	.u-mgt__5 { margin-top: 5px !important; }
	.u-mgt__0 { margin-top: 0 !important; }
	.u-mgt__-10 { margin-top: -10px !important; }
	.u-mgt__-20 { margin-top: -20px !important; }
	.u-mgt__-30 { margin-top: -30px !important; }
	
	.u-pdl__1em { padding-left: 1em !important; }
	.u-pdl__125em { padding-left: 1.25em !important; }
	.u-pdl__15em { padding-left: 1.5em !important; }
	.u-pdl__155em { padding-left: 1.55em !important; }
	.u-pdl__165em { padding-left: 1.65em !important; }
	.u-pdl__175em { padding-left: 1.75em !important; }

	
	.u-pdt__large {
		padding-top: 50px !important;
	}
	
	.u-pdt__middle {
		padding-top: 25px !important;
	}
	
	.u-pdt__small {
		padding-top: 10px !important;
	}
	
/* Template Table */
	.u-table-corner table {
		width: 100%;
		border-bottom: 1px solid #ddd;
	}
	
	.u-table-corner th {
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.75;
		text-align: left;
		vertical-align: top;
		padding: 1.25em .5em 1em 1.25em;
		border-top: 1px solid #ddd;
		background: #f5f6f9;
		position: relative;
	}
	
	.u-table-corner td {
		font-size: 1.4rem;
		line-height: 1.75;
		vertical-align: middle;
		padding: 1.25em .5em 1em 1.25em;
		border-top: 1px solid #ddd;
	}
	
	
	.u-newsList__item {
		line-height: 1.75;
		padding: 1em 0;
		border-bottom: 1px dotted #c1c7c7;
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-newsList__item:first-child {
		border-top: 1px dotted #c1c7c7;
	}
	
	.u-newsList__time {
		width: 10em;
	}
	
	.u-newsList__category {
		width: 10em;
	}
	
	.u-newsList__category--name {
		color: #fff;
		font-size: 1.3rem;
		text-align: center;
		margin: .15em 0 0;
		padding: .1em 0 .15em;
		background: #294197;
		display: block;
	}
	
	.u-newsList__text {
		width: calc(100% - 20em);
		padding: 0 0 0 1em;
	}
	
	.u-newsList .u-icon:after {
		transform: translate(0,-.5em);
	}
	
	.u-thumbnailMenu__items {
		margin: 0 -3px;
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-thumbnailMenu__items--row3 > * {
		width: calc(100% / 3.005);
	}
	
	.u-thumbnailMenu__items--row2 > * {
		width: calc(100% / 2);
	}
	
	.u-thumbnailMenu__item {
		text-align: center;
		margin: 40px 0 0;
		padding: 0 3px;
	}
	
	.u-thumbnailMenu__image {
		padding: 54.75% 0 0;
		position: relative;
		overflow: hidden;
	}
	
	.u-thumbnailMenu__image img {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
		transition: 2s;
	}
	
	.u-thumbnailMenu__item a {
		color: #000;
		display: block;
		background: #fff;
	}
	
	.u-thumbnailMenu__item a:hover {
		color: #fff;
		background: #294197;
	}
	
	.u-thumbnailMenu__item a:hover img {
		transform: scale(1.075) translate(0,-50%);
	}
	
	.u-thumbnailMenu__title {
		min-height: 80px;
		display: block;
		position: relative;
	}
	
	.u-thumbnailMenu__name {
		line-height: 1.5;
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}
	
	.u-box {
		padding: 30px 50px 40px;
		background: #F8F5EF;
	}
	
	.u-box__title {
		color: #000;
		font-size: 1.8rem;
		font-weight: 700;
		line-height: 1.35;
		padding: 0 0 .55em;
		position: relative;
	}
	
	.u-box__title:after {
		content: '';
		width: 100px;
		height: 3px;
		display: block;
		background: #89703C;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	
	.u-box .u-list__item:before {
		background: #89703C;
	}
	
	.u-box .u-icon__window:after {
		margin-left: .5em;
		transform: translate(0,-.5em);
	}
	
	
	/*
	 * Layout
	 * ==================================================================================================== */
	.g-wrapper {
		padding: 0 0 80px;
		background: #fff;
	}
	
	.g-container {
		position: relative;
	}
	
	.g-main {
		position: relative;
	}
	
	/*
	 * Breadcrumb
	 * ------------------------------------------------------------------------------------------------ */
	.g-breadcrumb {
		margin: 75px 0 0;
		padding: 15px 25px 0;
	}
	
	.g-breadcrumb__item {
		font-size: 1.2rem;
		font-weight: 300;
		line-height: 1;
		letter-spacing: .1em;
		margin: 5px 0 0;
		padding: 0 1em;
		border-left: 1px solid rgba(0,0,0,.35);
	}
	
	.g-breadcrumb__item:last-child a {
		color: #999;
	}
	
	.g-breadcrumb__item br {
		display: none;
	}
	
	
/*
 * Header
 * ==================================================================================================== */
	.g-header {
		width: 100%;
		height: 80px;
		border-bottom: 1px solid rgba(0,0,0,.15);
		background: #fff;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 150;
	}
	
	.g-header__logo {
		max-width: 290px;
		position: absolute;
		top: 50%;
		left: 25px;
		transform: translate(0,-50%);
	}
	
	
	
/*
 * Footer
 * ==================================================================================================== */
	.g-footer {
		color: #fff;
		padding: 0 0 25px;
	}
	
	.g-footer a,
	.g-footer a:hover {
		color: #fff;
	}
	
	.g-footer__title {
		font-size: 1.4rem;
		letter-spacing: .1em;
		margin: 40px 0 0;
		padding: 0 0 .75em 0;
		border-bottom: 1px solid rgba(255,255,255,.25);
	}
	
	.g-footer__items {
		margin: 40px -30px 0;
		display: flex;
		flex-wrap: wrap;
	}
	
	.g-footer__item {
		width: calc(100% / 5);
		padding: 0 30px;
	}
	
	.g-footer .g-footer__item .u-icon:after {
		margin-left: .5em;
		background-image: url("/_assets/img/common/icon-window-basic.svg");
		transform: translate(0,-.45em);
	}
	
	.g-footer .g-menuTitle__name {
		font-size: 1.4rem;
		padding: 0 0 .75em 0;
		border-bottom: 1px solid rgba(255,255,255,.25);
		display: block;
	}
	
	.g-footer .g-menu__item {
		font-size: 1.2rem;
		margin: 15px 0 0;
	}
	
	.g-footer .g-menu__item a {
		padding: 0 0 0 .75em;
		display: inline-block;
		position: relative;
	}
	
	.g-footer .g-menu__item a:before {
		content: '';
		width: .35em;
		height: 1px;
		background: #fff;
		display: block;
		position: absolute;
		top: .55em;
		left: 0;
	}
	
	.g-footer .g-menu__name {
		font-size: 1.2rem;
		line-height: 1.5;
	}
	
	.g-footer .g-menuBanner__items {
		display: none;
	}
	
	.g-footer .g-menu__item .g-menu__item {
		margin-top: 10px;
		padding-left: .75em;
	}
	
	.g-footerBanner__item:not(:first-child) {
		margin: 10px 0 0;
	}
	
	.g-footerBanner__item a {
		color: #294197;
		min-height: 60px;
		background: #fff;
		display: block;
		position: relative;
	}
	
	.g-footerBanner__item a.u-icon:after {
		margin: 0;
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translate(0,-50%);
	}
	
	.g-footerBanner__item a:hover {
		color: #fff;
		background: #294197;
	}
	
	.g-footerBanner__item .u-icon__window:hover:after {
		background-image: url(/_assets/img/common/icon-window-white.svg);
	}
	
	.g-footerBanner__name {
		font-size: 1.2rem;
		line-height: 1.25;
		position: absolute;
		top: 50%;
		left: 15px;
		transform: translate(0,-50%);
	}
	
	.g-footerBanner__item--ffcr a {
		background-color: #1D446B;
	}
	
	.g-footerBanner__item--ffcr a:hover {
		background-color: #fff;
	}
	
	.g-footerBanner__item--ffcr .u-icon:after {
		background-image: url(/_assets/img/common/icon-window-darkgreen.svg) !important;
	}
	
	.g-footerBanner__item--ffcr .g-footerBanner__name {
		color: transparent;
		font-size: 0;
		line-height: 0;
		width: 74%;
		padding: 19% 0 0;
		background: url("/_assets/img/common/footerBanner-01.png") no-repeat left top / 100% auto;
		display: inline-block;
		overflow: hidden;
	}
	
	.g-footerBanner__item--ffcr a:hover .g-footerBanner__name {
		background-image: url("/_assets/img/common/footerBanner-01@on.png");
	}
	
	.g-footerBanner__item--jafaa a {
		background-color: #fff;
	}
	
	.g-footerBanner__item--jafaa a:hover {
		background-color: #00A73C;
	}
	
	.g-footerBanner__item--jafaa .u-icon:after {
		background-image: url(/_assets/img/common/icon-window-green.svg) !important;
	}
	
	.g-footerBanner__item--jafaa .g-footerBanner__name {
		color: transparent;
		font-size: 0;
		line-height: 0;
		width: 74%;
		padding: 15% 0 0;
		background: url("/_assets/img/common/footerBanner-02.png") no-repeat left top / 100% auto;
		display: inline-block;
		overflow: hidden;
	}
	
	.g-footerBanner__item--jafaa a:hover .g-footerBanner__name {
		background-image: url("/_assets/img/common/footerBanner-02@on.png");
	}
	
	.g-footer .g-menuInner + .g-menuTitle,
	.g-footer .g-menuInner + .g-menuInner__list {
		margin: 40px 0 0;
	}
	
	.g-footer a.js-link__invalid,
	.g-footer a.js-link__invalid:hover {
		text-decoration: none;
		opacity: 1;
		cursor: default;
	}
	
	.g-footer a.js-link__invalid:before {
		display: none;
	}
	
	.g-footerGlobal {
		margin: 20px 0 0;
	}
	
	.g-footerGlobal__items {
		border-left: 1px solid rgba(255,255,255,.5);
		display: flex;
	}
	
	.g-footerGlobal__item {
		font-size: 1.2rem;
		padding: 0 20px;
		border-right: 1px solid rgba(255,255,255,.5);
	}
	
	.g-footer__logo {
		margin: 20px 0 0;
		border-top: 1px solid rgba(255,255,255,.25);
	}
	
	.g-footer__logo a {
		width: 220px;
		margin: 25px auto 0;
		display: block;
	}
	
	.g-footer__logo--logo {
		display: block;
	}
	
	.g-footer__copyright {
		color: #fff;
		font-size: 1.2rem;
		letter-spacing: .05em;
		text-align: center;
		margin: 10px 0 0;
		display: block;
		opacity: .3;
	}
	
	.g-pagetop {
		right: 40px;
		z-index: 90;
		opacity: 0;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.g-pagetop.is-active {
		opacity: 1;
	}
	
	.g-pagetop a {
		width: 60px;
		height: 60px;
		background: #202329;
		display: block;
		position: relative;
	}
	
	.g-pagetop__arrowImage {
		width: 14px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	
	
	
	
	
/*
 * Menu
 * ==================================================================================================== */
	.g-headerSearch {
		min-width: 170px;
		position: absolute;
		top: 14px;
		right: 30px;
	}
	
	.g-headerSearch__inner {
		width: 170px;
		border: 1px solid #ddd;
		position: relative;
	}
	
	.mt-site-search-form__query {
		font-size: 1.3rem;
		letter-spacing: -.05em;
		width: 100%;
		height: 24px;
		padding: 3px 24px 3px 3px;
		background: #f5f6f9;
	}
	
	.mt-site-search-form__query:focus {
		box-shadow: 0 0 10px 0 rgba(41,65,151,.5);
	}
	
	.mt-site-search-form__button {
		color: transparent;
		font-size: 0;
		line-height: 0;
		width: 24px;
		height: 24px;
		background: url("/_assets/img/common/icon-search__black.svg") no-repeat center / 14px auto;
		position: absolute;
		top: 0;
		right: 0;
		opacity: .25;
		z-index: 10;
	}
	
	.mt-site-search-form__button:hover {
		opacity: .75;
	}
	
	.g-menuBanner__item a {
		color: #294197;
		min-height: 80px;
		border: 2px solid #294197;
		background: #fff;
		display: block;
		position: relative;
	}
	
	.g-menuBanner__item .u-icon__arrow-basic:after {
		margin: 0;
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translate(0,-50%);
	}
	
	.g-menuBanner__item a:hover {
		color: #fff;
		background: #294197;
	}
	
	.g-menuBanner__item .u-icon__arrow-basic:hover:after {
		background-image: url("/_assets/img/common/arrow-white.svg");
	}
	
	.g-menuBanner__name {
		font-weight: 700;
		text-align: center;
		letter-spacing: .1em;
		width: 100%;
		display: block;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}
	
	
	
	.g-navi {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 200;
	}
	
	.g-naviMenu {
		position: absolute;
		top: calc((80px - 1em) - 15px);
		right: 0;
	}
	
	.g-naviMenu__items {
		display: flex;
		align-items: center;
	}
	
	.g-naviMenu__item {
		padding: 0 25px 15px;
		cursor: pointer;
	}
	
	.g-naviMenu__name {
		letter-spacing: .075em;
		transition: .3s cubic-bezier(.75, 0, .35, 1);
	}
	
	.g-naviMenu__item a {
		white-space: nowrap;
	}
	
	.g-naviMenu__item a.u-icon:after {
		transform: translate(0,-.15em);
	}
	
	.g-naviMenu__item a:hover {
		color: #000;
		text-decoration: none;
		opacity: 1;
	}
	
	.g-naviMenu__item a.is-focus__active {
		color: #294197;
	}
	
	.g-naviMenu__item:hover .g-naviMenu__name {
		color: #294197;
	}

	.g-naviPulldown {
		width: 100%;
		position: fixed;
		top: 80px;
		left: 0;
		z-index: 120;
	}
	
	.g-naviPulldown .g-naviPulldown__inner {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		visibility: hidden;
		opacity: 0;
		transform: translate(0,10px);
		transition: .2s 0s cubic-bezier(.75, 0, .35, 1);
		filter: brightness(200%) contrast(200%);
		pointer-events: none;
	}
	
	.g-naviPulldown .g-naviPulldown__inner.is-active {
		visibility: visible;
		opacity: 1;
		transform: translate(0,0);
		pointer-events: auto;
		transition: .4s .3s cubic-bezier(.75, 0, .35, 1);
		filter: brightness(100%) contrast(100%);
	}
	
	.g-naviPulldown__inner-child {
		max-width: 1160px;
		margin: 0 auto;
		padding: 55px 0;
		display: flex;
	}
	
	.g-naviPulldown .g-menuTitle {
		width: 260px;
		border-right: 1px solid #c1c7c7;
	}
	
	.g-naviPulldown .g-menuTitle__name a {
		color: #000;
		font-size: 2.4rem;
		letter-spacing: .1em;
	}
	
	.g-naviPulldown .g-menuTitle__name a:hover {
		color: #294197;
		text-decoration: none;
	}
	
	.g-naviPulldown .g-menuTitle__name a:after {
		content: attr(data-en)'';
		color: #294197;
		font-size: 1.6rem;
		font-weight: 300;
		margin: .75em 0 0 .1em;
		display: block;
	}
	
	.g-naviPulldown .g-menuInner {
		width: calc(100% - 260px);
	}
	
	.g-naviPulldown .g-menuInner__list {
		display: flex;
	}
	
	.g-naviPulldown .g-menu__items {
		width: calc(100% - 340px);
		max-height: calc((1.35em + 30px) * 3);
		margin: -25px 0 0;
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
	}
	
	 .g-naviPulldown .g-naviPulldown__inner-effort .g-menu__items {
		max-height: calc((1.35em + 30px) * 2);
	}
	
	.g-naviPulldown .g-menu__item {
		width: 50%;
		margin: 25px 0 0;
	}
	
	.g-naviPulldown .g-menu__item a {
		color: #000;
		padding: 0 0 0 30px;
	}
	
	.g-naviPulldown .g-menu__item a:hover {
		color: #294197;
		text-decoration: none;
	}
	
	.g-naviPulldown .g-menu__item a.js-link__invalid:hover {
		color: #000;
		text-decoration: none;
		cursor: default;
	}
	
	.g-naviPulldown .g-menu__name {
		font-size: 1.3rem;
		line-height: 1.35;
		letter-spacing: .1em;
		white-space: nowrap;
	}
	
	.g-naviPulldown .g-menu__item br {
		display: none;
	}
	
	.g-naviPulldown .g-menu__item .g-menu__items {
		width: 100%;
		max-height: calc((1.35em + 15px) * 2);
		margin-top: 0;
		transform: translate(1em,0);
	}
	
	.g-naviPulldown .g-menu__item .g-menu__item {
		margin-top: 15px;
	}
	
	.g-naviPulldown .g-menuBanner__items {
		width: 340px;
	}
	
	.g-naviPulldown .g-menuBanner__item {
		margin: 25px 0 0;
	}
	
	.is-gnavi-active .u-cover {
		visibility: visible;
		opacity: 1;
		z-index: 100;
	}
	
	
	
	.g-naviBase {
		width: 100%;
		height: 100vh;
		padding: 0;
		background: #f5f6f9;
		position: fixed;
		top: calc(-100vh + 80px);
		left: 0;
		z-index: 110;
		transform-origin: bottom center;
		transition: .5s cubic-bezier(.75, 0, .35, 1);
		will-change: auto;
	}
	
	.g-naviCover {
		width: 100%;
		height: 100%;
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100;
		visibility: hidden;
	}
	.g-headerSearch__input {}
	
	
/*
 * Sidemenu
 * ==================================================================================================== */
	.g-side {
		width: 250px;
		position: absolute;
		top: calc((70px + 1.2rem) + 15px);
		right: calc((50% - 250px) - 330px);
	}
	
	.sidemenu-page .g-main {
		width: 1160px;
		margin-right: auto;
		margin-left: auto;
		padding-right: 310px;
	}
	
	
	.g-side .g-menuTitle__name a {
		color: #fff;
		font-size: 1.8rem;
		font-weight: 500;
		letter-spacing: .1em;
		padding: 20px 0 20px 20px;
		display: block;
		background: #294197;
	}
	
	.g-side .g-menuTitle__name a:after {
		content: attr(data-en)'';
		color: #fff;
		font-size: 1.2rem;
		font-weight: 300;
		margin: 9px 0 0 .1em;
		display: block;
	}
	
	.g-side .g-menuTitle__name a:hover {
		text-decoration: none;
		opacity: .9;
	}
	
	.g-side .g-menu__items {
		border-right: 1px solid #ddd;
		border-left: 1px solid #ddd;
	}
	
	.g-side .g-menu__item {
		border-bottom: 1px solid #ddd;
	}
	
	.g-side .g-menu__item a {
		padding: 15px 0 15px 20px;
		display: block;
	}
	
	.g-side .g-menu__item a:hover {
		text-decoration: none;
		background: #f5f6f9;
	}
	
	.g-side .g-menu__name {
		font-size: 1.4rem;
		line-height: 1.25;
		letter-spacing: .1em;
	}
	
	.g-side .g-menu__item a.is-focus__active {
		color: #294197;
		font-weight: 700;
		background: #f5f6f9;
	}
	
	.g-side .g-menu__item a.is-focus__active .g-menu__name {
		font-weight: 700;
	}
	
	.g-side .g-menu__item .g-menu__items {
		border-right: 0;
		border-left: 0;
	}
	
	.g-side .g-menu__item .g-menu__items .g-menu__item {
		border-top: 1px solid #ddd;
		border-bottom: 0;
	}
	
	.g-side .g-menu__item .g-menu__items .g-menu__item a {
		padding-left: calc(20px + 1em);
	}
	
	.g-side .g-menuBanner__items {
		margin: 40px 0 0;
	}
	
	
	
	.u-pageBottomMenu {
		margin-top: 80px;
	}
	
	.u-pageBottomMenu .g-menuTitle {
		position: relative;
	}
	
	.u-pageBottomMenu .g-menu__titleButton {
		display: none !important;
	}
	
	.u-pageBottomMenu .g-menuTitle__name {
		font-size: 1.5rem;
		font-weight: 500;
		text-align: center;
	}
	
	.u-pageBottomMenu .g-menu__items {
		margin: 34px -3px 0;
		display: flex;
		flex-wrap: wrap;
	}
	
	.u-pageBottomMenu .g-menu__item {
		width: calc(100% / 4);
		padding: 6px 3px 0;
	}
	
	.u-pageBottomMenu .g-menu__item a {
		min-height: 80px;
		display: block;
		background: #fff;
		border: 1px solid #ddd;
		position: relative;
	}
	
	.u-pageBottomMenu .g-menu__item a:hover {
		color: #fff;
		background: #294197;
		border-color: #294197;
	}
	
	.u-pageBottomMenu .g-menu__name {
		line-height: 1.35;
		text-align: center;
		width: 100%;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
	}
	
	
/*
 * Keyvisual
 * ==================================================================================================== */
	.c-kv {
		margin: 70px 0 40px;
		position: relative;
	}
	
	
/*
 * Contents top
 * ==================================================================================================== */
	.home-page .g-wrapper {
		padding-bottom: 0;
	}
	
	.home-page .g-main {
		padding-top: 30px;
		padding-bottom: 120px;
		background: #f5f6f9;
	}
	
	.home-page .g-main > .u-contents {
		margin-top: 0;
	}
	
	.home-page .c-kv {
		margin-top: 15px;
		margin-bottom: 0;
	}
	
	.home-page .c-kv figure {
		min-height: 450px;
		position: relative;
		overflow: hidden;
	}
	
	.home-page .c-kv img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%) scale(1.025);
		opacity: 0;
		transition: .6s .5s cubic-bezier(.75, 0, .35, 1);
		filter: brightness(200%) contrast(200%);
	}
	
	.is-loaddone.home-page .c-kv img {
		transform: translate(-50%,-50%);
		opacity: 1;
		filter: brightness(100%) contrast(100%);
	}
	
	.home-page .u-title__page {
		text-align: center;
		width: 100%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		z-index: 100;
	}
	
	.home-page .u-title__page:before {
		content: attr(data-en)'';
		font-family: 'Times New Roman', 'Noto Serif JP' !important;
		font-size: 4.2rem;
		letter-spacing: .25em;
		padding: 0 0 0 .2em;
		display: block;
		opacity: 0;
		transform: translate(0,.25em);
		transition: .6s 1s cubic-bezier(.75, 0, .35, 1);
	}
	
	.is-loaddone.home-page .u-title__page:before {
		transform: translate(0,0);
		opacity: 1;
	}
	
	.home-page .u-title__page:after {
		content: '';
		width: 0;
		height: 4px;
		display: block;
		background: #294197;
		position: absolute;
		bottom: -20px;
		left: 50%;
		transform: translate(-50%,0);
		transition: .6s 1.5s cubic-bezier(.75, 0, .35, 1);
	}
	
	.is-loaddone.home-page .u-title__page:after {
		width: 100px;
	}
	
	.home-page .u-title__page em {
		font-size: 2rem;
		font-weight: 400;
		display: inline-block;
		opacity: 0;
		transform: translate(0,.25em);
		transition: .6s 1.25s cubic-bezier(.75, 0, .35, 1);
	}
	
	.is-loaddone.home-page .u-title__page em {
		transform: translate(0,0);
		opacity: 1;
	}
	
	
/*
 * Philosophy Chart
 * ==================================================================================================== */
	.c-philosophyImageLink {
		position: absolute;
		z-index: 10;
	}
	
	.c-philosophyImageLink a {
		width: 100%;
		height: 100%;
		background: rgba(255,255,255,0);
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.c-philosophyImageLink a:hover {
		background: rgba(255,255,255,.3);
	}
	
	.c-philosophyImageLink__1 {
		width: 20%;
		margin: 0% 0 0 40%;
		padding: 17.25% 0 0;
	}
	
	.c-philosophyImageLink__2 {
		width: 36%;
		margin: 17.45% 0 0 32%;
		padding: 13.5% 0 0;
	}
	
	.c-philosophyImageLink__3 {
		width: 26.5%;
		margin: 31% 0 0 23.5%;
		padding: 15.5% 0 0;
	}
	
	.c-philosophyImageLink__4 {
		width: 9%;
		margin: 35.75% 0 0 81%;
		padding: 3.5% 0 0;
	}
	
	.c-philosophyImageLink__5 {
		width: 8%;
		margin: 35.75% 0 0 81%;
		padding: 3.5% 0 0;
		left: auto;
		right: 0;
	}
	
	.c-philosophyImageLink__6 {
		width: 9%;
		margin: 39% 0 0 81%;
		padding: 3.5% 0 0;
	}
	
	.c-philosophyImageLink__7 {
		width: 8%;
		margin: 39% 0 0 81%;
		padding: 3.5% 0 0;
		left: auto;
		right: 0;
	}
	
	.c-philosophyImageLink__8 {
		width: 19%;
		margin: 42.5% 0 0 81%;
		padding: 3.5% 0 0;
		left: auto;
		right: 0;
	}
	
	 .u-title__page {
		opacity: 0;
		transition: .6s .5s cubic-bezier(.75, 0, .35, 1);
	}
	
	 .u-title__hi {
		opacity: 0;
		transition: .6s .75s cubic-bezier(.75, 0, .35, 1);
	}
	
	 .g-main {
		opacity: 0;
		transition: .6s 1.25s cubic-bezier(.75, 0, .35, 1);
	}
	
	.is-loaddone .u-title__page,
	.is-loaddone .u-title__hi,
	.is-loaddone .g-main {
		opacity: 1;
	}
	
	.c-list__alphabet {
		margin: 0 0 0 1.55em;
	}
	
	.c-list__alphabet--noIndent {
		margin-left: 0;
	}
	
	.c-list__alphabet li {
		line-height: 1.5;
		margin: .5em 0 0;
		padding: 0 0 0 1.5em;
		position: relative;
	}
	
	.c-list__alphabet li:before {
		content: attr(data)'';
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.site_policy-page .u-text .u-icon {
		color: #294197;
		text-decoration: underline;
	}
	
	.site_policy-page .u-text .u-icon:hover {
		text-decoration: none;
	}
	
	.site_policy-page .u-text .u-icon:after {
		vertical-align: 0;
	}
	
	
}/* END Media all */

/*
 * Slick Plugin - Reset
 * ==================================================================================================== */
.slick-dots {
	position: absolute;
	bottom: 0;
	z-index: 10;
}
