/*
Theme Name: 小泉成器
Description: 小泉成器
Version: 1.0
Author: 小泉成器
*/



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 共通項目 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
*{margin:0;padding:0;text-decoration:none;box-sizing: border-box}fieldset{border:0}body{line-height:1.8}body,dd,dl,dt,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,select,ul{margin:0;padding:0}img{border:0;vertical-align:top}a{text-decoration:none}em{font-style:normal}ul li{list-style-type:none;list-style-image:none}address{font-style:normal}strong {font-weight: bold}img {width: 100%;height: auto}.sp {display: none}
:root {
  --design-width-pc: 1400;
  --design-width-sp: 421;
  --vw-ratio: calc(100vw / var(--design-width-pc));
}
@media (max-width: 767px) {
  :root {
    --vw-ratio: calc(100vw / var(--design-width-sp));
  }
}




/* リンク */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
a {
	color: #41536A;
	text-decoration: none;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
a:before {
	transition: 0.3s;
	-webkit-transition: 0.3s;
}


/* テキスト装飾 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.blue {
	color: #053D78;
}
.white {
	color: #fff;
}



/* 横幅 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
body {
	font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-size: clamp(14px, calc(16 * var(--vw-ratio)), 24px);
	font-weight: 400;
	color: #41536A;
	padding: 0;
	margin: 0;
	letter-spacing: 0;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}
body.en-US {
	font-family: "Montserrat", serif;
}
body.fixed {
	width: 100%;
	height: 100%;
	position: fixed;
	overflow: hidden;
}



/* フォント */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.en {
	font-family: "Montserrat", serif;
	font-weight: 500;
}




/* flex */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
.flex {
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flex-start {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
}
.flex-end {
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	 -ms-flex-direction: row-reverse;
		 flex-direction: row-reverse;
}
.flex-center {
	display: flex;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: calc(100% - calc(40 * var(--vw-ratio)));
	height: calc(70 * var(--vw-ratio));
	background: #fff;
	border-radius: calc(5 * var(--vw-ratio));
	box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.04);
	padding-left: calc(20 * var(--vw-ratio));
	padding-right: calc(10 * var(--vw-ratio));
	position: fixed;
	top: calc(20 * var(--vw-ratio));
	left: calc(20 * var(--vw-ratio));
	z-index: 12;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}
	#header .logo {
		width: calc(245 * var(--vw-ratio));
	}
		#header .logo a {
			display: block;
			line-height: 1;
		}
			#header .logo a img {
				display: block;
				line-height: 1;
			}

	#header .nav {
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
		#header .nav ul.globalnav li {
			margin-right: calc(30 * var(--vw-ratio));
			position: relative;
		}
			#header .nav ul.globalnav li a {
				height: calc(70 * var(--vw-ratio));
				line-height: calc(70 * var(--vw-ratio));;
				font-weight: 500;
			}
			#header .nav ul.globalnav li a:hover,
			#header .nav ul.globalnav li.active a {
				color: #053D78;
			}
			#header .nav ul.globalnav li a.head:before {
				content: "";
				width: 0;
				height: 0;
				border-style: solid;
				border-width: 0 0.6vw 0.6vw 0.6vw;
				border-color: transparent transparent #41536A transparent;
				position: absolute;
				bottom: calc(10 * var(--vw-ratio));
				left: 50%;
				margin-left: -0.5vw;
				opacity: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#header .nav ul.globalnav li.has-child.active a.head:before {
				bottom: 0;
				opacity: 1;
			}

			#header .nav ul.globalnav li.has-child ul.sub_list {
				width: calc(200 * var(--vw-ratio));
				border: solid 1px #41536A;
				position: absolute;
				left: 50%;
				top: calc(90 * var(--vw-ratio));
				padding: 0;
				overflow: hidden;
				border-radius: calc(10 * var(--vw-ratio));
				margin-left: calc(-100 * var(--vw-ratio));
				background: #fff;
				visibility: hidden;
				opacity: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#header .nav ul.globalnav li.has-child:hover > .sub_list {
				top: calc(70 * var(--vw-ratio));
				visibility: visible;
				opacity: 1;
			}
				#header .nav ul.globalnav li.has-child ul.sub_list li {
					margin-right: 0;
					border-bottom: solid 1px #41536A;
				}
				#header .nav ul.globalnav li.has-child ul.sub_list li:nth-last-child(1) {
					border-bottom: none;
				}
					#header .nav ul.globalnav li.has-child ul.sub_list li a {
						display: flex;
						justify-content: flex-start;
						align-items: center;
						height: auto;
						min-height: calc(50 * var(--vw-ratio));
						line-height: 1.3em;
						background: url("img/common/icon_arrow_white_b.svg") no-repeat right 1vw center / 2vw;
						padding: calc(8 * var(--vw-ratio)) calc(40 * var(--vw-ratio)) calc(8 * var(--vw-ratio)) calc(12 * var(--vw-ratio));
						color: #41536A;
					}
					#header .nav ul.globalnav li.has-child ul.sub_list li a:hover {
						background: #EFF3FC url("img/common/icon_arrow_blue.svg") no-repeat right 1vw center / 2vw;
					}

		#header .nav .language {
			margin-right: calc(20 * var(--vw-ratio));
			position: relative;
		}
			#header .nav .language .l-btn a {
				display: flex;
				justify-content: center;
				align-items: center;
				width: calc(18 * var(--vw-ratio));
				height: calc(50 * var(--vw-ratio));
				line-height: calc(50 * var(--vw-ratio));;
			}

			#header .nav .language .bogo-language-switcher {
				display: none;
				width: calc(40 * var(--vw-ratio));
				border-radius: calc(5 * var(--vw-ratio));
				background: #053D78;
				position: absolute;
				top: calc(45 * var(--vw-ratio));
				left: 50%;
				margin-left: calc(-20 * var(--vw-ratio));
			}
				#header .nav .language .bogo-language-switcher li:nth-child(1) {
					border-bottom: solid 1px rgba(255,255,255,0.3);
				}
					#header .nav .language .bogo-language-switcher li .bogoflags {
						display: none;
					}
					#header .nav .language .bogo-language-switcher li a {
						display: block;
						padding: calc(10 * var(--vw-ratio));
						font-size: calc(12 * var(--vw-ratio));;
						font-family: "Montserrat", serif;
						color: #fff;
						line-height: 1;
						text-align: center;
						font-weight: 500;
					}
					#header .nav .language .bogo-language-switcher li a:hover {
						opacity: 0.7;
					}

		#header .nav ul.btn-list {
			width: calc(320 * var(--vw-ratio));	
		}
			#header .nav ul.btn-list li {
				width: 48.5%;
			}
				#header .nav ul.btn-list li a {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					height: calc(50 * var(--vw-ratio));
					border-radius: calc(5 * var(--vw-ratio));
					padding-left: calc(15 * var(--vw-ratio));
					font-weight: 500;
				}
				#header .nav ul.btn-list li a.external {
					background: #41536A url("img/common/btn_external.svg") no-repeat right 1vw center / 1.4vw;
				}
				#header .nav ul.btn-list li a.external:hover {
					background: #292929 url("img/common/btn_external.svg") no-repeat right 0.7vw center / 1.4vw;
				}
				#header .nav ul.btn-list li a.cta {
					background: #053D78 url("img/common/btn_external.svg") no-repeat right 1vw center / 1.4vw;
				}
				#header .nav ul.btn-list li a.cta:hover {
					background: #292929 url("img/common/btn_external.svg") no-repeat right 0.7vw center / 1.4vw;
				}
@media screen and (max-width: 767px) {
	#header {
		width: calc(100% - calc(20 * var(--vw-ratio)));
		height: calc(60 * var(--vw-ratio));
		padding-left: calc(20 * var(--vw-ratio));
		padding-right: calc(10 * var(--vw-ratio));
		top: calc(10 * var(--vw-ratio));
		left: calc(10 * var(--vw-ratio));
	}
		#header .logo {
			width: calc(220 * var(--vw-ratio));
		}

		#header .nav ul.globalnav {
			display: none;
		}

		#header .nav .language {
			margin-right: calc(60 * var(--vw-ratio));
		}
	
		#header .nav ul.btn-list {
			width: 100%;
			position: fixed;
			bottom: 0;
			left: 0;
		}
			#header .nav ul.btn-list li {
				width: 50%;
			}
				#header .nav ul.btn-list li a {
					height: calc(56 * var(--vw-ratio));
					border-radius: 0;
				}
				#header .nav ul.btn-list li a.external {
					background: #41536A url("img/common/btn_external.svg") no-repeat right 3vw center / 4.4vw;
				}
				#header .nav ul.btn-list li a.external:hover {
					background: #292929 url("img/common/btn_external.svg") no-repeat right 3vw center / 4.4vw;
				}
				#header .nav ul.btn-list li a.cta {
					background: #053D78 url("img/common/btn_external.svg") no-repeat right 3vw center / 4.4vw;
				}
				#header .nav ul.btn-list li a.cta:hover {
					background: #292929 url("img/common/btn_external.svg") no-repeat right 3vw center / 4.4vw;
				}
}


	



	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* メニュー展開 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#menubtn {
	display: none;
	position: fixed;
	z-index: 17;
	transition: 0.3s;
	-webkit-transition: 0.3s;
}

#menubox {
	display: none;
}
@media screen and (max-width: 767px) {
	#menubtn {
		display: block;
		width: calc(44 * var(--vw-ratio));
		height: calc(44 * var(--vw-ratio));
		top: calc(18 * var(--vw-ratio));
		right: calc(18 * var(--vw-ratio));
	}
		#menubtn .menu {
			display: block;
			position: relative;
			cursor: pointer;
			border-radius: calc(5 * var(--vw-ratio));;
			background: #053D78;
			width: calc(44 * var(--vw-ratio));
			height: calc(44 * var(--vw-ratio));
		}
			#menubtn .menu span {
				width: calc(22 * var(--vw-ratio));
				display: inline-block;
				border-radius: calc(1 * var(--vw-ratio));
				position: absolute;
				top: 50%;
				left: 50%;
				margin-left: calc(-11 * var(--vw-ratio));
				height: calc(1 * var(--vw-ratio));
				background: #fff;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			#menubtn .menu span:nth-of-type(1) {
				margin-top: calc(-3 * var(--vw-ratio));
			}
			#menubtn .menu span:nth-of-type(2) {
				margin-top: calc(3 * var(--vw-ratio));
			}

			#menubtn .menu.active .openbtn-area {
				transform: rotateY(-360deg);
			}
				#menubtn .menu.active span:nth-of-type(1) {
					transform: translateY(6px) rotate(-155deg);
					margin-top: -6px;
				}
				#menubtn .menu.active span:nth-of-type(2) {
					transform: translateY(-6px) rotate(155deg);
					margin-top: 6px;
				}
	
	#menubox {
		display: none;
		width: 100%;
		height: 100vh;
		height: 100dvh;
		background: #EFF3FC;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10;
	}
		#menubox ul.globalnav {
			width: 100%;
			height: 100vh;
			height: 100dvh;
			overflow-y: scroll;
			padding-top: calc(80 * var(--vw-ratio));
			padding-bottom: calc(55 * var(--vw-ratio));
		}
			#menubox ul.globalnav li {
				width: 100%;
				border-top: solid 1px #D9E5F5;
			}
			#menubox ul.globalnav li:nth-last-child(1) {
				border-bottom: solid 1px #D9E5F5;
			}
				#menubox ul.globalnav li a.head {
					display: block;
					background: url("img/common/icon_arrow_blue.svg") no-repeat right calc(30 * var(--vw-ratio)) center / calc(30 * var(--vw-ratio));
					padding: calc(15 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
					font-weight: 500;
				}
				#menubox ul.globalnav li a.head.external {
					background: url("img/common/icon_external_white.svg") no-repeat right calc(30 * var(--vw-ratio)) center / calc(30 * var(--vw-ratio));
				}
				#menubox ul.globalnav li.has-child a.head {
					background: none;
				}
	
				#menubox ul.globalnav li.has-child ul.sub_list {
					padding: 0 calc(30 * var(--vw-ratio)) calc(20 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
				}
				.en-US #menubox ul.globalnav li.has-child ul.sub_list {
					display: block;
				}
					#menubox ul.globalnav li.has-child ul.sub_list li {
						width: 48.5%;
						margin-right: 3%;
						margin-bottom: 3%;
						border-top: none;
					}
					#menubox ul.globalnav li.has-child ul.sub_list li:nth-child(2n) {
						margin-right: 0;
					}
					#menubox ul.globalnav li.has-child ul.sub_list li:nth-last-child(1) {
						border-bottom: none;
					}
					.en-US #menubox ul.globalnav li.has-child ul.sub_list li {
						width: 100%;
						margin-right: 0;
					}
						#menubox ul.globalnav li.has-child ul.sub_list li a {
							display: block;
							background: #fff url("img/common/icon_arrow_blue.svg") no-repeat right calc(12 * var(--vw-ratio)) center / calc(18 * var(--vw-ratio));
							padding: calc(10 * var(--vw-ratio)) calc(12 * var(--vw-ratio));
							border-radius: calc(4 * var(--vw-ratio));
						}
						#menubox ul.globalnav li.has-child ul.sub_list li a.external {
							background: #fff url("img/common/icon_external_blue.svg") no-repeat right calc(12 * var(--vw-ratio)) center / calc(18 * var(--vw-ratio));
						}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ページタイトル */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* pagetitle */
#pagetitle {
	width: 100%;
	overflow: hidden;
	background: #EFF3FC;
	padding-top: calc(160 * var(--vw-ratio));
	padding-bottom: calc(20 * var(--vw-ratio));
	border-radius: 0 0 calc(60 * var(--vw-ratio)) calc(60 * var(--vw-ratio));
	position: relative;
}
	#pagetitle .text {
		padding-bottom: calc(70 * var(--vw-ratio));
	}
	.en-US #pagetitle .text {
		padding-right: calc(200 * var(--vw-ratio));
	}
		#pagetitle .text .en {
			font-size: calc(80 * var(--vw-ratio));
			font-weight: 500;
			line-height: 1.3em;
		}

		#pagetitle .text .jp {
			background: url("img/common/icon_title_blue.svg") no-repeat left center / 1.8vw;
			padding-left: calc(35 * var(--vw-ratio));
			font-weight: 700;
			line-height: 1.3em;
		}

	#pagetitle .text-news {
		padding-right: calc(280 * var(--vw-ratio));
		padding-bottom: calc(60 * var(--vw-ratio));
	}
		#pagetitle .text-news .head {
			background: url("img/common/icon_title_blue.svg") no-repeat left center / 1.8vw;
			padding-left: calc(35 * var(--vw-ratio));
			font-weight: 500;
			line-height: 1.3em;
			margin-bottom: calc(15 * var(--vw-ratio));
		}

		#pagetitle .text-news h1 {
			font-size: calc(36 * var(--vw-ratio));
			line-height: 1.3em;
			margin-bottom: calc(25 * var(--vw-ratio));
		}

		#pagetitle .text-news .info {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			margin-bottom: calc(5 * var(--vw-ratio));
		}
			#pagetitle .text-news .info time {
				margin-right: calc(15 * var(--vw-ratio));
				line-height: 1;
			}
			#pagetitle .text-news .info .cat {
				display: block;
				width: calc(100 * var(--vw-ratio));
				background: #fff;
				border-radius: calc(5 * var(--vw-ratio));
				text-align: center;
			}

	#pagetitle .breadcrumb {
		font-size: calc(12 * var(--vw-ratio));
	}
		#pagetitle .breadcrumb a {
			text-decoration: underline;
		}
		#pagetitle .breadcrumb a:hover {
			text-decoration: none;
		}
		#pagetitle .breadcrumb .current-item {
			color: #053D78;
		}

	#pagetitle .motif {
		position: absolute;
		z-index: 0;
	}
	#pagetitle .motif01 {
		width: calc(660 * var(--vw-ratio));
		top: calc(-163 * var(--vw-ratio));
		right: calc(-214 * var(--vw-ratio));
	}
	#pagetitle .motif02 {
		width: calc(334 * var(--vw-ratio));
		top: calc(150 * var(--vw-ratio));
		right: calc(136 * var(--vw-ratio));
	}

/* c-title */
.c-title {
	margin-bottom: calc(40 * var(--vw-ratio));
}
.c-title.beside {
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
}
.c-title.center {
	text-align: center;
}
	.c-title h2 {
		font-size:  calc(60 * var(--vw-ratio));
		font-weight: 500;
		line-height: 0.9em;
	}
	.c-title .jp {
		font-size:  calc(20 * var(--vw-ratio));
		font-weight: 700;
		line-height: 1.3em;
		margin-top: calc(10 * var(--vw-ratio));
	}
	.c-title.beside .jp {
		margin-left: calc(20 * var(--vw-ratio));
	}

/* c-tit */
.c-tit {
	background: url("img/common/icon_title_blue.svg") no-repeat left center / 1.8vw;
	font-size:  calc(30 * var(--vw-ratio));
	line-height: 1.3em;
	font-weight: 700;
	padding-left: calc(35 * var(--vw-ratio));
	margin-bottom: calc(20 * var(--vw-ratio));
}

/* c-sub-tit */
.c-sub-tit {
	font-size:  calc(22 * var(--vw-ratio));
	line-height: 1.3em;
	font-weight: 700;
	margin-bottom: calc(15 * var(--vw-ratio));
}
@media screen and (max-width: 767px) {
	#pagetitle {
		padding-top: calc(115 * var(--vw-ratio));
		padding-bottom: calc(20 * var(--vw-ratio));
		border-radius: 0 0 calc(30 * var(--vw-ratio)) calc(30 * var(--vw-ratio));
	}
		#pagetitle .text {
			padding-bottom: calc(40 * var(--vw-ratio));
		}
		.en-US #pagetitle .text {
			padding-right: 0;
		}
			#pagetitle .text .en {
				font-size: calc(44 * var(--vw-ratio));
				line-height: calc(48 * var(--vw-ratio));
				margin-bottom: calc(10 * var(--vw-ratio));
			}

			#pagetitle .text .jp {
				background: url("img/common/icon_title_blue.svg") no-repeat left center / 4.6vw;
				padding-left: calc(25 * var(--vw-ratio));
			}

		#pagetitle .text-news {
			padding-right: calc(0 * var(--vw-ratio));
			padding-bottom: calc(35 * var(--vw-ratio));
		}
			#pagetitle .text-news .head {
				background: url("img/common/icon_title_blue.svg") no-repeat left center / 4.6vw;
				padding-left: calc(25 * var(--vw-ratio));
				margin-bottom: calc(15 * var(--vw-ratio));
			}

			#pagetitle .text-news h1 {
				font-size: calc(28 * var(--vw-ratio));
				margin-bottom: calc(25 * var(--vw-ratio));
			}

		#pagetitle .breadcrumb {
			width: 110%;
			font-size: calc(10 * var(--vw-ratio));
			white-space: nowrap;
			overflow-x: scroll;
		}

		#pagetitle .motif01 {
			display: none;
			width: calc(660 * var(--vw-ratio));
			top: calc(-163 * var(--vw-ratio));
			right: calc(-214 * var(--vw-ratio));
		}
		#pagetitle .motif02 {
			display: none;
			width: calc(334 * var(--vw-ratio));
			top: calc(150 * var(--vw-ratio));
			right: calc(136 * var(--vw-ratio));
		}

	/* c-title */
	.c-title {
		margin-bottom: calc(25 * var(--vw-ratio));
	}
	.c-title.beside {
		display: block;
	}
		.c-title h2 {
			font-size:  calc(36 * var(--vw-ratio));
		}
		.c-title .jp {
			font-size:  calc(18 * var(--vw-ratio));
		}
		.c-title.beside .jp {
			margin-left: 0;
		}

	/* c-tit */
	.c-tit {
		background: url("img/common/icon_title_blue.svg") no-repeat left center / 5vw;
		font-size:  calc(24 * var(--vw-ratio));
		padding-left: calc(30 * var(--vw-ratio));
		margin-bottom: calc(17 * var(--vw-ratio));
	}

	/* c-sub-tit */
	.c-sub-tit {
		font-size:  calc(20 * var(--vw-ratio));
		margin-bottom: calc(15 * var(--vw-ratio));
	}
}




	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* main */
#main {
	display: block;
}
.inner {
	width: -webkit-calc(100% - calc(200 * var(--vw-ratio)));
	width: calc(100% - calc(200 * var(--vw-ratio)));
	margin: 0 auto;
	position: relative;
}
.inner_full {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

/* img-over */
a .img-over {
	overflow: hidden;
}
	a .img-over img {
		-moz-transition: -moz-transform 0.2s linear;
		-webkit-transition: -webkit-transform 0.2s linear;
		-o-transition: -o-transform 0.2s linear;
		-ms-transition: -ms-transform 0.2s linear;
		transition: transform 0.2s linear;
	}
	a:hover .img-over img {
		-webkit-transform: scale(1.05);
		-moz-transform: scale(1.05);
		-o-transform: scale(1.05);
		-ms-transform: scale(1.05);
		transform: scale(1.05);
	}

/* wrap */
.wrap-beginning {
	padding-top: calc(100 * var(--vw-ratio));
}
.wrap-top {
	padding-top: calc(150 * var(--vw-ratio));
}
.wrap-bottom {
	padding-bottom: calc(150 * var(--vw-ratio));
}

/* txt */
.txt-20 {
	font-size: calc(20 * var(--vw-ratio));
	line-height: calc(28 * var(--vw-ratio));
}
.txt-18 {
	font-size: calc(18 * var(--vw-ratio));
	line-height: calc(40 * var(--vw-ratio));
}
.txt-16 {
	font-size: calc(16 * var(--vw-ratio));
	line-height: calc(32 * var(--vw-ratio));
}
.txt-15 {
	font-size: calc(15 * var(--vw-ratio));
	line-height: calc(28 * var(--vw-ratio));
}
.txt-14 {
	font-size: calc(14 * var(--vw-ratio));
	line-height: calc(26 * var(--vw-ratio));
}
.txt-13 {
	font-size: calc(13 * var(--vw-ratio));
	line-height: calc(24 * var(--vw-ratio));
}
.txt-12 {
	font-size: calc(12 * var(--vw-ratio));
	line-height: calc(22 * var(--vw-ratio));
}
.txt-11 {
	font-size: calc(11 * var(--vw-ratio));
	line-height: calc(21 * var(--vw-ratio));
}
.txt-10 {
	font-size: calc(10 * var(--vw-ratio));
	line-height: calc(20 * var(--vw-ratio));
}

/* delay */
.delay {
	position: relative;
    overflow: hidden;
}
	.delay img {
		width: 100%;
		height: 120%;
		object-fit: cover;
		transform: translateY(0) translateZ(0);
		will-change: transform;
	}

/* text-pht */
.text-pht {
	margin-bottom: calc(70 * var(--vw-ratio));
}
.text-pht:nth-last-child(1) {
	margin-bottom: 0;
}
	.text-pht .text {
		width: 50%;
	}
	.text-pht .pht {
		width: 45%;
	}
		.text-pht .pht img {
			border-radius: calc(20 * var(--vw-ratio));
			overflow: hidden;
		}

/* .pht-column2 */
ul.pht-column2 li {
	width: 48%;
	margin-top: calc(40 * var(--vw-ratio));
	margin-right: 4%;
	border-radius: calc(20 * var(--vw-ratio));
	overflow: hidden;
}
ul.pht-column2 li:nth-child(2n) {
	margin-right: 0;
}

/* bg */
.bg-gray {
	background: #EFF3FC url("img/common/motif_white.svg") no-repeat center top / auto 42%;
	border-radius: calc(60 * var(--vw-ratio));
	margin-left: calc(50 * var(--vw-ratio));
	margin-right: calc(50 * var(--vw-ratio));
	position: relative;
	z-index: 2;
}
.bg-blue {
	background: #053D78 url("img/common/motif_blue-black.svg") no-repeat center top / auto 42%;
	border-radius: calc(60 * var(--vw-ratio));
	margin-left: calc(50 * var(--vw-ratio));
	margin-right: calc(50 * var(--vw-ratio));
	position: relative;
	z-index: 2;
}

/* pagenavi */
.pagenavi {
	width: 100%;
	display: block;
	margin-top: calc(50 * var(--vw-ratio));
}
	.pagenavi .wp-pagenavi {
		clear: both;
		text-align: center;
		font-weight: 500;
	}
		.pagenavi .wp-pagenavi a,
		.pagenavi .wp-pagenavi span {
			display: inline-block;
			width: calc(40 * var(--vw-ratio));
			height: calc(40 * var(--vw-ratio));
			border-radius: 50%;
			font-family: "Montserrat", serif;
			font-weight: 500;
			font-size: calc(14 * var(--vw-ratio));
			font-weight: 500;
			background: #EFF3FC;
			color: #0D0D0D;
			text-align: center;
			line-height: calc(40 * var(--vw-ratio));
			margin: 0 calc(5 * var(--vw-ratio));
			padding: 0;
			transition: 0.3s;
			-webkit-ransition: 0.3s;
		}
		.pagenavi .wp-pagenavi a:hover{
			opacity: 0.7;
		}
		.pagenavi .wp-pagenavi span.current{
			color: #fff;
			background: #053D78;
		}
		.pagenavi .wp-pagenavi .pages,
		.pagenavi .wp-pagenavi .first,
		.pagenavi .wp-pagenavi .last {
			display: none;
		}
@media screen and (max-width: 767px) {
	.sp {
		display: block;
	}
	.pc {
		display: none !important;
	}
	
	/* inner */
	.inner {
		width: -webkit-calc(100% - calc(80 * var(--vw-ratio)));
		width: calc(100% - calc(80 * var(--vw-ratio)));
	}

	/* wrap */
	.wrap-beginning {
		padding-top: calc(50 * var(--vw-ratio));
	}
	.wrap-top {
		padding-top: calc(75 * var(--vw-ratio));
	}
	.wrap-bottom {
		padding-bottom: calc(75 * var(--vw-ratio));
	}

	/* text-pht */
	.text-pht {
		display: block;
		margin-bottom: calc(50 * var(--vw-ratio));
	}
		.text-pht .text {
			width: 100%;
			margin-bottom: calc(25 * var(--vw-ratio));
		}
		.text-pht .pht {
			width: 100%;
		}

	/* .pht-column2 */
	ul.pht-column2 li {
		width: 100%;
		margin-top: calc(30 * var(--vw-ratio));
		margin-right: 0;
	}

	/* bg */
	.bg-gray {
		background: #EFF3FC url("img/common/motif_white.svg") no-repeat center top / auto 45%;
		border-radius: calc(30 * var(--vw-ratio));
		margin-left: calc(15 * var(--vw-ratio));
		margin-right: calc(15 * var(--vw-ratio));
	}
	.bg-blue {
		background: #053D78 url("img/common/motif_blue-black.svg") no-repeat center top / auto 45%;
		border-radius: calc(30 * var(--vw-ratio));
		margin-left: calc(15 * var(--vw-ratio));
		margin-right: calc(15 * var(--vw-ratio));
	}

	/* pagenavi */
	.pagenavi {
		margin-top: calc(30 * var(--vw-ratio));
	}
		.pagenavi .wp-pagenavi a,
		.pagenavi .wp-pagenavi span {
			width: calc(30 * var(--vw-ratio));
			height: calc(30 * var(--vw-ratio));
			font-size: calc(12 * var(--vw-ratio));
			line-height: calc(30 * var(--vw-ratio));
		}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ボタン */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* btn */
.btn {
	width: calc(250 * var(--vw-ratio));
}
	.btn a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		height: calc(60 * var(--vw-ratio));
		border-radius: calc(30 * var(--vw-ratio));
		padding-left: calc(25 * var(--vw-ratio));
	}
	.btn.btn-blue a {
		background: #053D78 url("img/common/icon_arrow_white.svg") no-repeat right 1.4vw center / 2.6vw;
		border: solid 1px #053D78;
	}
	.btn.btn-blue.external a {
		background: #053D78 url("img/common/icon_external_white.svg") no-repeat right 1.4vw center / 2.6vw;
		border: solid 1px #053D78;
	}
	.btn.btn-white a {
		background: #fff url("img/common/icon_arrow_blue.svg") no-repeat right 1.4vw center / 2.6vw;
		color: #053D78;
		border: solid 1px #fff;
	}
	.btn.btn-border a {
		background: #fff url("img/common/icon_arrow_blue.svg") no-repeat right 1.4vw center / 2.6vw;
		color: #053D78;
		border: solid 1px #053D78;
	}
	.btn.btn-white.external a {
		background: #fff url("img/common/icon_external_blue.svg") no-repeat right 1.4vw center / 2.6vw;
	}
	.btn a:hover {
		background: #292929 url("img/common/icon_arrow_white.svg") no-repeat right 1.2vw center / 2.6vw;
		color: #fff;
		border: solid 1px #292929;
	}
	.btn.external a:hover {
		background: #292929 url("img/common/icon_external_white.svg") no-repeat right 1.2vw center / 2.6vw;
		color: #fff;
	}

/* link-btn */
a.link-btn  {
	display: inline-block;
	font-weight: 500;
	color: #053D78;
	background:  url("img/common/icon_arrow_blue.svg") no-repeat right center / calc(36 * var(--vw-ratio));
	padding-right: calc(46 * var(--vw-ratio));
}
a.link-btn.external  {
	background:  url("img/common/icon_external_blue.svg") no-repeat right center / calc(36 * var(--vw-ratio));
}
a.link-btn:hover  {
	padding-right: calc(40 * var(--vw-ratio))
}
@media screen and (max-width: 767px) {
	.btn {
		width: 70%;
	}
		.btn.btn-blue a {
			background: #053D78 url("img/common/icon_arrow_white.svg") no-repeat right 4vw center / 6vw;
		}
		.btn.btn-blue.external a {
			background: #053D78 url("img/common/icon_external_white.svg") no-repeat right 4vw center / 6vw;
		}
		.btn.btn-white a {
			background: #fff url("img/common/icon_arrow_blue.svg") no-repeat right 4vw center / 6vw;
		}
		.btn.btn-border a {
			background: #fff url("img/common/icon_arrow_blue.svg") no-repeat right 4vw center / 6vw;
		}
		.btn.btn-white.external a {
			background: #fff url("img/common/icon_external_blue.svg") no-repeat right 4vw center / 6vw;
		}
		.btn a:hover {
			background: #292929 url("img/common/icon_arrow_white.svg") no-repeat right 4vw center / 6vw;
		}
		.btn.external a:hover {
			background: #292929 url("img/common/icon_external_white.svg") no-repeat right 4vw center / 6vw;
		}

	/* link-btn */
	a.link-btn  {
		background:  url("img/common/icon_arrow_blue.svg") no-repeat right center / calc(30 * var(--vw-ratio));
		padding-right: calc(38 * var(--vw-ratio));
	}
	a.link-btn.external  {
		background:  url("img/common/icon_external_blue.svg") no-repeat right center / calc(30 * var(--vw-ratio));
	}
	a.link-btn:hover  {
		padding-right: calc(38 * var(--vw-ratio))
	}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* アンカー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#anchor ul {
	border: solid 1px #41536A;
	overflow: hidden;
	border-radius: calc(20 * var(--vw-ratio));
}
	#anchor ul li {
		border-right: solid 1px #41536A;
	}
	#anchor ul li:nth-last-child(1) {
		border-right: none;
	}
	#anchor ul.list-column3 li {
		width: 33.3333333%;
	}
	#anchor ul.list-column2 li {
		width: 50%;
	}
		#anchor ul li a {
			display: flex;
			justify-content: flex-start;
			align-items: center;
			padding: 0 calc(30 * var(--vw-ratio));
			height: calc(80 * var(--vw-ratio));
			font-size: calc(16 * var(--vw-ratio));
			font-weight: 500;
			background: #fff url("img/common/icon_anchor_arrow_white.svg") no-repeat right 1.5vw center / 2.6vw;;
		}
		#anchor ul li a:hover {
			background: #EFF3FC url("img/common/icon_anchor_arrow_blue.svg") no-repeat right 1.5vw center / 2.6vw;;
		}
			#anchor ul li a .en {
				display: block;
				font-size: calc(13 * var(--vw-ratio));
				padding-top: calc(5 * var(--vw-ratio));
				padding-left: calc(15 * var(--vw-ratio));
				line-height: 1;
			}
@media screen and (max-width: 767px) {
	#anchor ul {
		border-radius: calc(15 * var(--vw-ratio));
	}
		#anchor ul li a {
			display: flex;
			justify-content: center;
			align-items: center;
			padding: 0 calc(10 * var(--vw-ratio)) calc(10 * var(--vw-ratio)) calc(10 * var(--vw-ratio));
			height: calc(65 * var(--vw-ratio));
			font-size: calc(14 * var(--vw-ratio));
			text-align: center;
			font-weight: 500;
			line-height: 1.2em;
			background: #fff url("img/common/icon_anchor_arrow_white.svg") no-repeat center bottom 2vw / 5vw;
		}
		.en-US #anchor ul li a {
			height: calc(85 * var(--vw-ratio));
		}
		#anchor ul li a:hover {
			background: #EFF3FC url("img/common/icon_anchor_arrow_blue.svg") no-repeat center bottom 2vw / 5vw;
		}
			#anchor ul li a .en {
				display: none;
			}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 404 NOT FOUND */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#not-found .txt-16 {
	text-align: center;
	margin-bottom: calc(50 * var(--vw-ratio));
}

#not-found .btn {
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	#not-found .txt-16 {
		margin-bottom: calc(30 * var(--vw-ratio));
	}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* Site Policy */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#site-policy .row {
	margin-bottom: calc(50 * var(--vw-ratio));
	padding-bottom: calc(50 * var(--vw-ratio));
	border-bottom: dashed 1px #ddd;
}
#site-policy .row:nth-last-child(1) {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
	#site-policy .row h2 {
		font-size: calc(30 * var(--vw-ratio));
		line-height: 1.3em;
		margin-bottom: calc(20 * var(--vw-ratio));
	}

	#site-policy .row .txt-16 {
		margin-bottom: calc(15 * var(--vw-ratio));
	}
	#site-policy .row .txt-16:nth-last-child(1) {
		margin-bottom: 0;
	}
@media screen and (max-width: 767px) {
	#site-policy .row {
		margin-bottom: calc(40 * var(--vw-ratio));
		padding-bottom: calc(40 * var(--vw-ratio));
	}
		#site-policy .row h2 {
			font-size: calc(24 * var(--vw-ratio));
			margin-bottom: calc(17 * var(--vw-ratio));
		}
}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* Privacy Policy */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#privacy-policy .row {
	margin-bottom: calc(120 * var(--vw-ratio));
}
#privacy-policy .row:nth-last-child(1) {
	margin-bottom: 0;
}
	#privacy-policy .row .cell {
		margin-bottom: calc(40 * var(--vw-ratio));
		padding-bottom: calc(40 * var(--vw-ratio));
		border-bottom: dashed 1px #ddd;
	}
	#privacy-policy .row .cell:nth-last-child(1) {
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
		#privacy-policy .row .cell .txt-16 {
			margin-bottom: calc(15 * var(--vw-ratio));
		}
		#privacy-policy .row .cell .txt-16:nth-last-child(1) {
			margin-bottom: 0;
		}
			#privacy-policy .row .cell .txt-16 a {
				text-decoration: underline;
				color: #053D78;
			}
			#privacy-policy .row .cell .txt-16 a:hover {
				text-decoration: none;
			}
@media screen and (max-width: 767px) {
	#privacy-policy .row {
		margin-bottom: calc(75 * var(--vw-ratio));
	}
		#privacy-policy .row .cell {
			margin-bottom: calc(30 * var(--vw-ratio));
			padding-bottom: calc(30 * var(--vw-ratio));
		}
}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#footer {
	width: 100%;
	background: #292929 url("img/common/motif_black.svg") no-repeat center / auto 100%;
	border-radius: calc(60 * var(--vw-ratio)) calc(60 * var(--vw-ratio)) 0 0;
	padding-top: calc(85 * var(--vw-ratio));
	padding-bottom: calc(85 * var(--vw-ratio));
}
	#footer .catch-copy {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: calc(60 * var(--vw-ratio));
	}
		#footer .catch-copy h2 {
			font-size: calc(40 * var(--vw-ratio));
			line-height: calc(58 * var(--vw-ratio));
			font-weight: 700;
			margin-bottom: calc(15 * var(--vw-ratio));
		}

		#footer .catch-copy ul.sns li {
			margin-right: calc(40 * var(--vw-ratio));
		}
		#footer .catch-copy ul.sns li:nth-last-child(1) {
			margin-right: 0;
		}
			#footer .catch-copy ul.sns li a {
				display: block;
			}
			#footer .catch-copy ul.sns li a:hover {
				opacity: 0.7;
			}
				#footer .catch-copy ul.sns li a img {
					width: 100%;
					height: calc(34 * var(--vw-ratio));
				}

		#footer .catch-copy .en {
			line-height: calc(24 * var(--vw-ratio));
			letter-spacing: 0.06em;
			text-align: right;
		}

	#footer .area .profile {
		width: 25%;
	}
		#footer .area .profile a.logo {
			display: block;
			width: calc(180 * var(--vw-ratio));
		}
		#footer .area .profile a.logo:hover {
			opacity: 0.7;
		}
			#footer .area .profile a.logo p {
				line-height: 1;
				margin-top: calc(10 * var(--vw-ratio));
			}

		#footer .area .profile dl.access {
			margin-top: calc(25 * var(--vw-ratio));
		}

	#footer .area .nav {
		width: 75%;
	}
		#footer .area .nav ul.sitemap li {
			width: 32%;
			margin-right: 2%;
			border-top: solid 1px #484848;
		}
		#footer .area .nav ul.sitemap li:nth-last-child(1),
		#footer .area .nav ul.sitemap li:nth-last-child(2),
		#footer .area .nav ul.sitemap li:nth-last-child(3) {
			border-bottom: solid 1px #484848;
		}
		#footer .area .nav ul.sitemap li:nth-child(4),
		#footer .area .nav ul.sitemap li:nth-child(7),
		#footer .area .nav ul.sitemap li:nth-child(10) {
			margin-right: 0;
		}
			#footer .area .nav ul.sitemap li a {
				display: flex;
				justify-content: flex-start;
				align-items: center;
				height: calc(70 * var(--vw-ratio));
				background: url("img/common/icon_arrow_white.svg") no-repeat right 0.5vw center / 2.2vw;
				padding-left: calc(10 * var(--vw-ratio));
				padding-right: calc(40 * var(--vw-ratio));
				line-height: 1.3em;
			}
			#footer .area .nav ul.sitemap li a:hover {
				background: url("img/common/icon_arrow_blue.svg") no-repeat right 0 center / 2.2vw;
			}

	#footer .other {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding-top: calc(40 * var(--vw-ratio));
	}
		#footer .other ul.link-list li {
			margin-right: calc(20 * var(--vw-ratio));
		}
		#footer .other ul.link-list li:nth-last-child(1) {
			margin-right: 0;
		}
			#footer .other ul.link-list li a {
				display: block;
			}
			#footer .other ul.link-list li a:hover {
				text-decoration: underline;
			}
@media screen and (max-width: 767px) {
	#footer {
		background: #292929 url("img/common/motif_black.svg") no-repeat center / auto 100%;
		border-radius: calc(30 * var(--vw-ratio)) calc(30 * var(--vw-ratio)) 0 0;
		padding-top: calc(60 * var(--vw-ratio));
		padding-bottom: calc(100 * var(--vw-ratio));
	}
		#footer .inner {
			width: 100%;
			padding: 0;
		}
		#footer .catch-copy {
			display: block;
			padding: 0 calc(40 * var(--vw-ratio));
			margin-bottom: calc(50 * var(--vw-ratio));
		}
			#footer .catch-copy h2 {
				font-size: calc(36 * var(--vw-ratio));
				line-height: calc(50 * var(--vw-ratio));
			}

			#footer .catch-copy ul.sns li {
				margin-top: calc(20 * var(--vw-ratio));
				margin-right: calc(20 * var(--vw-ratio));
			}
					#footer .catch-copy ul.sns li a img {
						width: 100%;
						height: calc(24 * var(--vw-ratio));
					}

			#footer .catch-copy .en {
				text-align: left;
			}

		#footer .area {
			display: block;
		}
			#footer .area .profile {
				width: 100%;
				padding: 0 calc(40 * var(--vw-ratio));
				margin-bottom: calc(50 * var(--vw-ratio));
			}
				#footer .area .profile a.logo {
					display: flex;
					justify-content: flex-start;
					align-items: center;
					width: 100%;
				}
				#footer .area .profile a.logo:hover {
					opacity: 0.7;
				}
					#footer .area .profile a.logo img {
						width: calc(180 * var(--vw-ratio));
						margin-right: calc(20 * var(--vw-ratio));
					}

				#footer .area .profile dl.access {
					margin-top: calc(25 * var(--vw-ratio));
				}

			#footer .area .nav {
				width: 100%;
			}
				#footer .area .nav ul.sitemap li {
					width: 50%;
					border-right: solid 1px #484848;
					margin-right: 0;
				}
				#footer .area .nav ul.sitemap li:nth-child(2n) {
					border-right: none;
				}
				#footer .area .nav ul.sitemap li:nth-last-child(3) {
					border-bottom: none;
				}
					#footer .area .nav ul.sitemap li a {
						height: calc(60 * var(--vw-ratio));
						background: url("img/common/icon_arrow_white.svg") no-repeat right 4vw center / 5vw;
						padding: 0 calc(50 * var(--vw-ratio)) 0 calc(20 * var(--vw-ratio));
					}
					.en-US #footer .area .nav ul.sitemap li a {
						height: calc(80 * var(--vw-ratio));
					}
					#footer .area .nav ul.sitemap li a:hover {
						background: url("img/common/icon_arrow_blue.svg") no-repeat right 4vw center / 5vw;
					}

		#footer .other {
			display: block;
			padding-top: calc(40 * var(--vw-ratio));
		}
			#footer .other ul.link-list {
				justify-content: center;
				-ms-flex-wrap: wrap;
				flex-wrap: wrap;
			}
	
			#footer .other .copyright {
				margin-top: calc(30 * var(--vw-ratio));
				text-align: center;
			}
}