/*--------------------------------------------------------------*/
/* MainReset */
/*--------------------------------------------------------------*/
html {
	font-size: 62.5%;
	box-sizing: border-box;
	transition: opacity .3s ease;
}
*, *:before, *:after {
	box-sizing: inherit;
	-webkit-font-smoothing: antialiased
}
body, div, dl, dt, dd, ul, ol, li, pre, code, 
form, fieldset, legend, input, textarea, figure, 
p, blockquote, th, td {
	font-size: 1.6rem;
	color: var(--base-color);
	margin: 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 2.4rem;
	font-weight: normal;
	letter-spacing: 0.2em;
	margin: 0;
	padding: 0;
}
/* min767 */
@media screen and (min-width: 767px) {
	a[href^="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}
/* 768 */
@media (max-width: 768px) {
	body, div, dl, dt, dd, ul, ol, li, pre, code, 
	form, fieldset, legend, input, textarea, figure, 
	p, blockquote, th, td {
		font-size: 1.5rem;
	}
	h1, h2, h3, h4, h5, h6 {
		font-size: 2.1rem;
	}
}
/* 580 */
@media (max-width: 580px) {
	body, div, dl, dt, dd, ul, ol, li, pre, code, 
	form, fieldset, legend, input, textarea, figure, 
	p, blockquote, th, td {
		font-size: 1.4rem;
	}
	h1, h2, h3, h4, h5, h6 {
		font-size: 1.8rem;
	}
}
/* font */
body {
	color: var(--base-color);
	font-family: "noto-sans-cjk-jp", "kozuka-gothic-pro", "小塚ゴシック Pro", "Kozuka Gothic Pro", "游ゴシック Medium", YuGothic, 游ゴシック体, "ヒラギノ角ゴ Pro W3", メイリオ, sans-serif;
	-mts-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	font-weight: 400;
	font-style: normal;
	background: url(../images/bk_line.svg);
	background-repeat: repeat;
	background-size: 170px;
	background-position: center center;
}
.mn {
	font-family: '小塚明朝 Pro','Kozuka Mincho Pro',"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.eng1 {
	font-family: abolition, 'abolition-fallback', 'Arial Narrow', sans-serif;
	letter-spacing: .05em;
}
img {
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	max-width: 100%;
	display: block;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section, summary {
	display: block;
}
address, caption, code, th {
	font-style: normal;
	font-weight: normal;
}
img, fieldset {
	border: 0;
}
ol, ul {
	list-style-type: none;
}

/*--------------------------------------------------------------*/
/* 共通 base */
/*--------------------------------------------------------------*/
:root{
	--base-color: #062760;
	--corp-color: #00A0E9;
}
::selection {
	background: #00A0E9;
	color: #fff;
}
a {
	color: #fff;
	text-decoration: none;
}
a:active {
	color: var(--corp-color);
	outline: 0;
	text-decoration: none;
}
body.is-pc a:hover {
	color: var(--corp-color);
	outline: 0;
	text-decoration: none;
}
p {
	line-height: 1.8;
}
strong {
	background: linear-gradient(transparent 60%,#FFE600 40%);
}
.content {
	max-width: 1440px;
	width: 100%;
	padding: 0 20px;
	margin: 0 auto;
	transition: .3s padding ease;
}
.content.wide {
	max-width: 1560px;
}
.content.twide {
	max-width: 1640px;
}
.content.narrow {
	max-width: 840px;
}
.flex {
	display: flex;
	flex-wrap: wrap;
}
.flex.reverse {
	flex-direction: row-reverse;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
/* 580 */
@media (max-width: 580px) {
	.content.narrow {
		padding: 0 17px;
	}
}

/*--------------------------------------------------------------*/
/* 共通 table */
/*--------------------------------------------------------------*/
table {
	border-collapse: collapse;
	border-top: 1px solid #BABABA;
	border-left: 1px solid #BABABA;
	margin: 30px 0;
}
table tr th,
table tr td {
	padding: 15px 20px;
	border-bottom: 1px solid #BABABA;
	border-right: 1px solid #BABABA;
}
table tr th {
	background: #f1f1f1;
	white-space: nowrap;
}

/*--------------------------------------------------------------*/
/* Form関連 */
/*--------------------------------------------------------------*/
input, textarea, table select, button {
	font-family: inherit;
	font-size: inherit;
	font-weight: normal;
}
input, table select, button {
	vertical-align: middle;
}
textarea::placeholder,
input::placeholder {
	color: #ccc;
}
input:-ms-input-placeholder {
	color: #ccc;
}
input::-ms-input-placeholder {
	color: #ccc;
}
input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=checkbox],
input[type=submit],
input[type=button],
input[type=number],
textarea {
	border-radius: 4px;
	border: 1px solid #bfbfbf;
	margin: 0;
	padding: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	background-color: #fff;
}
button {
	margin: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #bfbfbf;
}
textarea {
	width: 100%;
	height: 240px;
}
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=tel]:focus,
table select:focus,
textarea:focus {
	outline: none;
	background-color: #FFFFDF;
	border: 1px solid #444;
	border-color: #838383;
}
input[type=submit],
input[type=button],
button {
	outline: none;
	cursor: pointer;
	background-color: #F4F4F4;
}
body.is-pc input[type=submit]:hover,
body.is-pc input[type=button]:hover {
	background-color: #fff;
}
/* checkbox */
input[type=checkbox] {
	display: none;
}
input[type=checkbox] + .mwform-checkbox-field-text {
	position: relative;
	vertical-align: middle;
	cursor: pointer;
}
input[type=checkbox] + .mwform-checkbox-field-text:before {
	content: "\f0c8";
	font-family: "Font Awesome 5 Free";
	font-weight: 500;
	color: #ccc;
	font-size: 22px;
	margin-right: 4px;
	position: relative;
	bottom: -2px;
}
input[type=checkbox]:checked + .mwform-checkbox-field-text:before {
	content: "\f14a";
	color: #f39800;
}
/* radio */
input[type=radio] {
	display: none;
}
input[type=radio] + .mwform-radio-field-text:before {
	content: "\f111";
	font-family: "Font Awesome 5 Free";
	font-weight: 500;
	color: #ccc;
	font-size: 18px;
	margin-right: 6px;
}
input[type=radio]:checked + .mwform-radio-field-text:before {
	content: "\f192";
	color: var(--corp-color);
}
/* label */
.form label {
	white-space: nowrap;
}
/* select */
select {
	/* styling */
	background-image: linear-gradient(45deg, transparent 50.1%, #fff 50.1%), linear-gradient(135deg, #fff 50.1%, transparent 50.1%), linear-gradient(to right, #aaa, #aaa);
	background-position: calc(100% - 22px) calc(20px), calc(100% - 17px) calc(20px), 100% 0;
	background-size: 5px 5px, 5px 5px, 46px 46px;
	background-repeat: no-repeat;
	background-color: white;
	border: thin solid #bfbfbf;
	border-radius: 4px;
	display: inline-block;
	font: inherit;
	line-height: 1.5em;
	padding: 10px 50px 10px 10px;
	color: #000;
	/* reset */
	margin: 0;      
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-appearance: none;
	-moz-appearance: none;
	position: relative;
	width: 100%;
}
select:focus {
	background-image: linear-gradient(45deg, white 50.1%, transparent 50.1%), linear-gradient(135deg, transparent 50.1%, white 50.1%), linear-gradient(to right, #aaa, #aaa);
	background-position: calc(100% - 17px) calc(20px), calc(100% - 22px) calc(20px), 100% 0;
	background-size: 5px 5px, 5px 5px, 46px 46px;
	background-repeat: no-repeat;
	border-color: #bfbfbf;
	outline: 0;
}
select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #000;
}
/* submit */
input[type="submit"] {
	cursor: pointer;
	-webkit-appearance: none;
	border-style: none;
	line-height: 1.2;
	background: var(--corp-color);
	color: #fff;
	padding: 14px 10px;
	width: 220px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	display: block;
	margin: 0 auto;
	transition: .3s ease;
}
body.is-pc input[type="submit"]:hover {
	background-color: #ea4737;
}
/* 580 */
@media (max-width: 580px) {
	input[type="submit"] {
		margin: 30px auto 0 auto;
	}
}

/*--------------------------------------------------------------*/
/* パララックス */
/*--------------------------------------------------------------*/
.mv_left,
.mv_right,
.mv_up,
.mv_down,
.mv_bk {
	position: relative;
}
.mv_left {
	opacity: 0;
	left: -40px;
}
.mv_right {
	opacity: 0;
	right: -40px;
}
.mv_up {
	opacity: 0;
	top: 40px;
}
.mv_down {
	opacity: 0;
	top: -40px;
}
.mv_fade {
	opacity: 0;
	transition: opacity 1.2s;
}
.mv_fade.cb_ani {
	opacity: 1;
}
.fade_up {
	transition-duration: 1.2s;
	transform: translate3d(0,40px,0);
	opacity: 0;
	transition-property: opacity,transform;
}
.fade_up.cb_ani {
	opacity: 1;
	transform: translateZ(0);
}
/* custom */
.custom {
	transition-duration: 1.2s;
	opacity: 0;
	transition-property: opacity,transform
}
/* c1 */
.custom.c1 {
	transform: translateY(0)!important;
}
.custom.c1.cb_ani {
	opacity: 1;
	transform: translateY(-60%)!important;
}

/*--------------------------------------------------------------*/
/* 共通 button.btn */
/*--------------------------------------------------------------*/
button.btn {
	background: #ef6f2e;
	color: #fff;
	border: none;
	border-radius: 5px;
	padding: 10px;
	transition: .3s;
}
body.is-pc button.btn:hover {
	background: #f55200;
	border-radius: 8px;
}

/*--------------------------------------------------------------*/
/* 共通 a.btn */
/*--------------------------------------------------------------*/
a.btn {
	display: inline-block;
	line-height: 1;
	font-size: 2.0rem;
	color: #fff;
	letter-spacing: .1em;
	max-width: 380px;
	min-width: 260px;
	width: 40%;
	padding: 10px;
	border-radius: 30px;
	border: 1px solid #fff;
	text-align: center;
	position: relative;
	transition: .3s ease;
}
a.btn.base {
	background: var(--base-color);
}
a.btn.wide {
	min-width: 300px;
}
a.btn.wide2 {
	max-width: 440px;
	min-width: 340px;
}
a.btn::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 14px solid #fff;
	transition: .2s ease;
}
a.btn::before {
	content: '';
	height: 1px;
	width: 35px;
	background: #fff;
	position: absolute;
	top: 50%;
	right: 21px;
	transform: translate(0, -50%);
	transition: .2s ease;
}
body.is-pc a.btn:hover {
	background: #121e33;
	border-color: #121e33;
	color: #fff;
}
a.btn:hover::after{
	right: 14px;
}
a.btn:hover::before {
	right: 15px;
}
/* white */
a.btn.white {
	color: var(--base-color);
	border: 1px solid #fff;
	background: #fff;
}
a.btn.white::after{
	border-left: 14px solid var(--base-color);
}
a.btn.white::before {
	background: var(--base-color);
}
body.is-pc a.btn.white:hover {
	background: #121e33;
	border-color: #121e33;
	color: #fff;
}
a.btn.white:hover::after{
	border-left: 14px solid #fff;
}
a.btn.white:hover::before {
	background: #fff;
}
/* 1240 */
@media (max-width: 1240px) {
	a.btn {
		font-size: max(1.77vw, 1.5rem); //2.2rem;
	}
	a.btn::before {
		width: max(2.823vw, 28px); //35px;
	}
}
/* 768 */
@media (max-width: 768px) {
	a.btn::after{
		border-top: 4px solid transparent;
		border-bottom: 4px solid transparent;
		border-left: 10px solid #fff;
	}
}

/*--------------------------------------------------------------*/
/* 共通 wp */
/*--------------------------------------------------------------*/
.wp-block-file:not(.wp-element-button) a:not(.wp-block-file__button) {
    color: #333;
}
.wp-block-file__button {
	background: var(--corp-color);
	color: #fff;
	padding: 6px 20px 8px 20px;
	text-decoration: none;
	transition: .3s ease;
}
.wp-block-file__button:hover {
	background: var(--base-color);
	color: #fff!important;
}

/*--------------------------------------------------------------*/
/* 共通 a.view_more */
/*--------------------------------------------------------------*/
a.view_more {
	font-size: 1.4rem;
	margin-right: 6px;
	transition: .3s ease;
}
a.view_more i {
	margin-left: 11px;
	transition: .3s ease;
}
body.is-pc a.view_more:hover i {
	transform: translateX(3px);
}

/*--------------------------------------------------------------*/
/* 画像hoverエフェクト .effect2 liが多段の場合に不具合がある為 */
/*--------------------------------------------------------------*/
.effect2 {
	position: relative;
}
.effect2::after {
	content: '';
	position: absolute;
	z-index: 2;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.08);
	-webkit-transition: all 0.3s ease-in;
	transition: all 0.3s ease-in;
	-webkit-transform: scale(0.8);
	transform: scale(0.8);
	opacity: 0;
}
body.is-pc a:hover > .effect2::after {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.effect2::before {
	content: '';
	position: absolute;
	z-index: 2;
	top: 6px;
	right: 6px;
	bottom: 6px;
	left: 6px;
	border: solid 1px #fff;
	-webkit-transition: all 0.4s ease-in;
	transition: all 0.4s ease-in;
	opacity: 0;
}
body.is-pc a:hover > .effect2::before {
	opacity: 1;
}

/*--------------------------------------------------------------*/
/* 共通 a.more */
/*--------------------------------------------------------------*/
a.more {
	display: inline-block;
	font-size: 1.2rem;
	color: #b3b3b3;
	border: 1px solid #b3b3b3;
	line-height: 1;
	max-width: 140px;
	width: 100%;
	padding: 14px 12px 14px 0px;
	border-radius: 2px;
	text-align: center;
	position: relative;
	transition: .3s ease;
}
a.more.white {
	color: #fff;
	border: 1px solid #fff;
}
body.is-pc a.more:hover {
	background: #1f5198;
	border-color: #1f5198;
	color: #fff;
}
a.more i {
	position: absolute;
	top: 52%;
	right: 25px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	transition: .3s ease;
}
body.is-pc a.more:hover i {
	right: 20px;
}

/*---------------------------------------------*/
/* 共通 pd_std */
/*---------------------------------------------*/
.pd_std_ss {
	padding-top: 60px;
	padding-bottom: 60px;
}
.pd_std_s {
	padding-top: 100px;
	padding-bottom: 100px;
}
.pd_std {
	padding-top: 120px;
	padding-bottom: 120px;
}
.pd_std.bzero,
.pd_std_s.bzero {
	padding-bottom: 0px;
}
.pd_std.tzero,
.pd_std_s.tzero {
	padding-top: 0px;
}
/* 1240 */
@media (max-width: 1240px) {
	.pd_std_ss {
		padding-top: max(4.839vw, 40px); //60px;
		padding-bottom: max(4.839vw, 40px); //60px;
	}
	.pd_std_s {
		padding-top: max(8.065vw, 60px); //100px;
		padding-bottom: max(8.065vw, 60px); //100px;
	}
	.pd_std {
		padding-top: max(9.677vw, 60px); //120px;
		padding-bottom: max(9.677vw, 60px); //120px;
	}
}

/*--------------------------------------------------------------*/
/* 共通 レスポンシブ関連 */
/*--------------------------------------------------------------*/
.sp_view {
	display: none;
}
.tb_view {
	display: none;
}
.unique {
	display: none;
}
/* 768 */
@media (max-width: 768px) {
	.pc_view {
		display: none;
	}
	.tb_view {
		display: block;
	}
	.tb_none {
		display: none!important;
	}
}
/* 580 */
@media (max-width: 580px) {
	.sp_view {
		display: block;
	}
	.sp_none {
		display: none!important;
	}
}

/*--------------------------------------------------------------*/
/* 共通 */
/*--------------------------------------------------------------*/
body.menu--active {
	overflow: hidden;
}
div.body {
	margin-top: -30px;
	background: url(../images/bk_line.svg), var(--base-color);
	background-repeat: repeat;
	background-size: 170px;
	background-position: center center;
	border-top: 10px solid var(--corp-color);
}
div.body h1,
div.body h2,
div.body h3 {
	color: #fff;
	letter-spacing: 0;
}
div.body p {
	color: #fff;
}
div.body p.lh3 {
	line-height: 3;
}
div.body dl dt,
div.body dl dd {
	color: #fff;
}
/* 580 */
@media (max-width: 580px) {
	div.body p.lh3 {
		line-height: 2.2;
	}
}

/*--------------------------------------------------------------*/
/* SUB */
/*--------------------------------------------------------------*/
body.sub,
body.error404 {
	padding-top: 130px;
}
/* 1200 */
@media (max-width: 1200px) {
	body.sub {
		padding-top: 90px;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.sub {
		padding-top: 80px;
	}
}

/*--------------------------------------------------------------*/
/* #header */
/*--------------------------------------------------------------*/
#header {
	border-top: 10px solid var(--base-color);
	position: fixed;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	transition: .5s ease;
	top: 0;
	left: 0;
	transform: translateY(0);
	z-index: 9;
}
#header::before {
	content: '';
	display: block;
	width: 100%;
	height: 4px;
	background: var(--corp-color);
	position: absolute;
	top: -2px;
	left: 0;
	z-index: 100;
}
#header.white {
	border-top: 10px solid var(--base-color);
}
#header.white,
body.is-pc #header:hover {
	background: #fff;
	/*box-shadow: 0px 2px 1px 0px rgb(0 0 0 / 10%);*/
}
#header #gnav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 15px 1.5vw 15px 3vw;
	column-gap: 20px;
	transition: .3s ease;
}
#header.white #gnav {
	padding: 5px 1.5vw 5px 3vw;
}
#header #gnav .logo {
	max-width: 400px;
	height: 80px;
	display: flex;
	align-items: center;
	transition: .3s ease;
}
#header #gnav .logo img {
	max-width: 340px;
	min-width: 260px;
	width: 21vw;
	display: block;
	transition: .3s ease;
}
#header.white #gnav .logo img {
	max-width: 310px;
}
#header #gnav nav ul {
	display: flex;
	align-items: center;
	gap: 0 2.0vw;
	transition: gap .15s ease;
}
#header #gnav nav ul li a {
	display: inline-flex;
	justify-content: flex-start;
	align-items: center;
	column-gap: 17px;
}
#header #gnav nav ul li a img {
	aspect-ratio: 62 / 54;
	width: 100%;
	transition: .3s ease;
}
#header #gnav nav ul li a div.text {
	display: flex;
	flex-direction: column;
	row-gap: 5px;
	white-space: nowrap;
}
#header #gnav nav ul li a div.text span.jp {
	font-size: 1.7rem;
	letter-spacing: 0.1em;
	transition: .3s ease;
}
#header #gnav nav ul li a div.text span.eng1 {
	font-size: 1.6rem;
	margin-left: 3px;
	transition: .3s ease;
}
body.is-pc #header #gnav nav ul li a:hover div.text span.jp {
	transform: translateX(2px);
}
body.is-pc #header #gnav nav ul li a:hover div.text span.eng1 {
	transform: translateX(6px);
}
body.is-pc #header #gnav nav ul li a:hover img {
	transform: rotate(-4deg);
}
/* 1640 */
@media (max-width: 1640px) {
	#header #gnav nav ul li a img {
		width: max(3.78vw, 43px); //62px;
	}
	#header #gnav nav ul li a div.text span.jp {
		font-size: max(1.04vw, 1.5rem); //1.7rem;
	}
	#header #gnav nav ul li a div.text span.eng1 {
		font-size: max(0.98vw, 1.4rem); //1.6rem;
	}
}
/* 1540 */
@media (max-width: 1540px) {
	#header #gnav {
		padding: 15px 20px;
	}
	#header.white #gnav {
		padding: 5px 20px 5px 20px;
	}
}
/* 1460 */
@media (max-width: 1460px) {
	#header #gnav nav ul li a {
		column-gap: 0.75vw;
	}
	#header #gnav nav ul li a div.text span.jp {
		letter-spacing: 0.05em;
	}
}
/* 1240 */
@media (max-width: 1240px) {
	#header #gnav nav {
		gap: 0 1.5vw;
	}
	#header #gnav nav > ul {
		gap: 0 1.5vw;
	}
	#header #gnav nav > ul > li > a,
	#header #gnav nav > ul > li > div > a {
		font-size: 1.4rem;
	}
}
/* 1200 */
@media (max-width: 1200px) {
	#header,
	#header.white {
		border-top: 10px solid var(--base-color);
	}
	#header #gnav {
		padding: 10px 20px;
	}
	#header #gnav .logo {
		height: 60px;
	}
	#header.white #gnav .logo img,
	#header #gnav .logo img {
		max-width: 240px;
		min-width: 240px;
	}
	#header #gnav nav > ul {
		gap: 0 2vw;
	}
	#header #gnav nav ul li a img {
		display: none;
	}
}
/* 940 */
@media (max-width: 940px) {
	#header #gnav nav > ul {
		display: none;
	}
}
/* 580 */
@media (max-width: 580px) {
	#header #gnav .logo {
		height: 50px!important;
	}
	#header.white #gnav .logo img,
	#header #gnav .logo img {
		max-width: 200px;
		min-width: 200px;
	}
	#header #gnav nav {
		display: none;
	}
}

/*--------------------------------------------------------------*/
/* #header SP MENU関連 */
/*--------------------------------------------------------------*/
/* sp_menu_btn */
#sp_menu_btn {
	display: none;
	width: 35px;
	height: 32px;
	position: absolute;
	top: 25px;
	right: 16px;
	cursor: pointer;
	z-index: 99;
	transition: top .3s ease;
}
#header.white #sp_menu_btn {
	top: 20px;
}
#sp_menu_btn .oc {
	color: #000836;
	font-size: 1.18rem;
	font-weight: bold;
	line-height: 1;
	position: absolute;
	bottom: 0;
}
.menu--active #sp_menu_btn .oc {
	font-size: 11px;
}
#open {
	position: relative;
	height: 12px;
}
.menu_line {
	background: #000836;
	display: block;
	height: 2px;
	position: absolute;
	transition:transform .3s;
	width: 100%;
}
.menu--active .menu_line {
	background: #000;
}
body.is-pc #sp_menu_btn:hover .menu_line {
	background: var(--corp-color);
}
body.is-pc #sp_menu_btn:hover .oc {
	color: var(--corp-color);
}
.menu_line-bottom {
	bottom: 0;
}
.menu--active .menu_line-top {
	top: 8px;
	transform: rotate(15deg);
}
.menu--active .menu_line-bottom {
	bottom: 2px;
	transform: rotate(165deg);
}
.menu--active #sp_menu_btn .oc {
	color: #000;
}
body.is-pc.menu--active #sp_menu_btn:hover .menu_line {
	background: #555;
}
body.is-pc.menu--active #sp_menu_btn:hover .oc {
	color: #555;
}
/* sp_menu_right */
.sp_menu_right {
	background: #fff;
	height: 100vh;
	overflow-y: auto;
	position: fixed;
	right: 0;
	top: 0;
	transform: translateX(100%);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	width: 78%;
	padding: 20px 10px 20px 25px;
	z-index: 98;
	-webkit-overflow-scrolling: touch;
}
.menu--active .sp_menu_right {
	right: 78%;
	margin-left: 0;
}
/* logo */
.sp_menu_right .logo {
	margin-bottom: 30px;
}
.sp_menu_right .logo a {
	display: inline-flex;
	align-items: center;
	gap: 0 10px;
}
.sp_menu_right .logo a img {
	max-width: 300px;
	min-width: 215px;
	width: 40vw;
	margin-left: -7px;
}
/* sp_sns */
#header ul.sp_sns {
	display: flex;
	column-gap: 13px;
	margin-bottom: 20px;
	max-width: 160px;
	width: 50%;
}
#header ul.sp_sns > li {
	flex: 1;
}
#header ul.sp_sns > li a {
	display: inline-block;
	aspect-ratio: 1 / 1;
	background: #eff5ff;
	border-radius: 50%;
	padding: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}
#header ul.sp_sns > li img {
	width: 80%;
}
/* sp_menu_npg */
#header .sp_menu_right div.sp_menu_npg a {
}
#header .sp_menu_right div.sp_menu_npg a img {
	max-width: 260px;
	min-width: 160px;
	width: 35%;
	border: 4px solid #ccc;
	display: inline-block;
}
/* sp_menu_left */
.sp_menu_left {
	background: var(--base-color);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	transform: translateX(-100%);
	position: fixed;
	left: 0;
	top: 0;
	height: 100vh;
	width: 40%;
	z-index: 98;
}
.menu--active .sp_menu_left {
	left: 22.1%;
}
/* 940 */
@media (max-width: 940px) {
	/* sp_menu_btn */
	#sp_menu_btn {
		display: block;
	}
}
/* 580 */
@media (max-width: 580px) {
	/* sp_menu_btn */
	#header #sp_menu_btn {
		top: 20px;
		right: 16px;
	}
	#header.white #sp_menu_btn {
		top: 16px;
		right: 16px;
	}
	/* right */
	.sp_menu_right {
		padding: 20px 10px 20px 20px;
	}
	/* sp_menu_left */
	.sp_menu_left {
		background: url(../images/sp_menu_left.jpg) no-repeat;
		background-size: auto 100%;
		background-position: center center;
		animation: act_anime 20s infinite alternate linear;
	}
	/* sp_sns */
	#header ul.sp_sns > li a {
		padding: 5px;
	}
	#header ul.sp_sns > li img {
		width: 60%;
	}
}
@keyframes act_anime {
	0% { 
		background-position: right 63% center;
	}
	100% { 
		background-position: right 37% center;
	}
}

/*--------------------------------------------------------------*/
/* #header SP開閉メニュー */
/*--------------------------------------------------------------*/
/* ul.sp_nav */
ul.sp_nav {
	list-style: none;
	max-width: 360px;
	margin-bottom: 20px;
}
ul.sp_nav > li {
	border-bottom: 1px solid #ddd;
	padding: 10px 0;
}
ul.sp_nav > li a {
	display: inline-flex;
	align-items: center;
	column-gap: 15px;
}
ul.sp_nav > li a div.text {
	display: flex;
	flex-direction: column;
	row-gap: 5px;
}
ul.sp_nav > li a div.text span.eng1 {
	margin-left: 3px;
}
/* 580 */
@media (max-width: 580px) {
	ul.sp_nav > li a img {
		width: 46px;
	}
}

/*--------------------------------------------------------------*/
/* HOME #header */
/*--------------------------------------------------------------*/
body.home {
	transition: padding .3s ease;
}
body.home #header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	transition: transform .4s ease;
	transform: translateY(-100%);
}
body.home #header.is-show {
	transform: translateY(0);
}
/* 840 */
@media (max-width: 840px) {
	body.home {
		padding-top: 90px;
	}
	body.home #header {
		transform: translateY(0);
	}
}

/*--------------------------------------------------------------*/
/* HOME #MainVisual */
/*--------------------------------------------------------------*/
#MainVisual {
	position: relative;
	padding-top: 40px;
	border-top: 10px solid var(--base-color);
	transition: padding .3s ease, border .3s ease;
}
#MainVisual::before {
	content: '';
	width: 100%;
	height: 6px;
	background: var(--corp-color);
	position: absolute;
	top: 0;
	left: 0;
}
#MainVisual .content.twide.flex {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
/* left center right */
#MainVisual ._left,
#MainVisual ._center,
#MainVisual ._right {
	position: relative;
	z-index: 1;
}
#MainVisual ._left {
	max-width: 478px;
	width: 30%;
}
#MainVisual ._center {
	position: relative;
	flex: 1;
	height: 860px;
}
#MainVisual ._right {
	width: 72px;
	margin-left: 30px;
	transition: .3s ease;
}
/* left */
#MainVisual ._left .logo {
	text-align: center;
	margin-bottom: 60px;
}
#MainVisual ._left .logo a img {
	width: 210px;
	display: inline-block;
}
#MainVisual ._left .logo span.jp {
	font-size: 2.8rem;
	font-weight: bold;
	color: var(--base-color);
	letter-spacing: 0;
	display: block;
	margin-top: 30px;
}
#MainVisual ._left .logo span.eng1 {
	font-size: 2.0rem;
	color: var(--base-color);
	letter-spacing: 0;
	display: block;
	margin-top: 20px;
}
#MainVisual ._left ul.top_nav {
	margin-left: 12%;
	padding: 0;
	display: flex;
	flex-direction: column;
	row-gap: 18px;
	transition: margin .3s ease;
}
#MainVisual ._left ul.top_nav a {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	color: #0d3273;
}
#MainVisual ._left ul.top_nav a img {
	width: 46px;
	flex-shrink: 0;
	transition: .3s ease;
}
#MainVisual ._left ul.top_nav a .text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
#MainVisual ._left ul.top_nav a .jp {
	font-size: 1.5rem;
	line-height: 1.5;
	letter-spacing: .1em;
	transition: .3s ease;
}
#MainVisual ._left ul.top_nav a .eng1 {
	font-size: 1.1rem;
	line-height: 1.4;
	transition: .3s ease;
}
#MainVisual ._left ul.top_nav a .jp.topi {
	margin-left: -3px;
}
body.is-pc #MainVisual ._left ul.top_nav a:hover span.jp {
	transform: translateX(4px);
}
body.is-pc #MainVisual ._left ul.top_nav a:hover span.eng1 {
	transform: translateX(8px);
}
#MainVisual ._left ul.top_nav a:hover img {
	transform: rotate(-4deg);
}
/* center */
#MainVisual .mv_photo {
	will-change: transform;
}
#MainVisual ._center .photo {
	position: absolute;
	overflow: hidden;
	border-radius: 24px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .12);
}
#MainVisual ._center .mv_photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#MainVisual ._center .photo01 {
	max-width: 860px;
	width: 100%;
	border-radius: 24px;
	margin: 0 auto;
	overflow: hidden;
}
#MainVisual ._center .photo02 {
	left: -10%;
	top: 56%;
	width: 560px;
	transition: left .3s ease;
}
#MainVisual ._center .photo03 {
	position: absolute;
	top: 50%;
	right: -7%;
	transform: translate(0, -50%);
	width: 460px;
	transition: top .3s ease, right .3s ease;
}
#MainVisual ._center .slogan {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 45%;
	transform: translate(-50%, -50%);
	z-index: 2;
	transition: top .3s ease;
}
#MainVisual ._center .slogan .eng1 {
	margin: 0;
	font-size: 16.0rem;
	line-height: 1.4;
	color: #fff;
	text-shadow: 0 0 20px var(--base-color), 0 0 20px var(--base-color), 0 0 20px var(--base-color), 0 0 20px var(--base-color), 0 0 20px var(--base-color);
	white-space: nowrap;
}
#MainVisual ._center .slogan .jp {
	font-size: 4.0rem;
	font-weight: bold;
	color: #fff;
	text-shadow: 0 0 20px var(--base-color), 0 0 20px var(--base-color), 0 0 20px var(--base-color), 0 0 20px var(--base-color), 0 0 20px var(--base-color);
	white-space: nowrap;
}
/* right */
#MainVisual ._right ul.sns {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
}
#MainVisual ._right ul.sns li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border: 1px solid var(--base-color);
	border-radius: 50%;
	background: #fff;
	transition: .3s ease;
}
body.is-pc #MainVisual ._right ul.sns li a:hover {
	background: #5090ff12;
	border-color: #000;
}
#MainVisual ._right ul.sns li a img {
	width: 24px;
	height: 24px;
	transition: .3s ease;
}
/* scroll */
#MainVisual .scroll_txt {
	font-size: 2.4rem;
	line-height: 1;
	color: var(--base-color);
	position: absolute;
	bottom: 50px;
	left: 180px;
}
#MainVisual .scroll_line {
	width: 1px;
	height: 100px;
	background: var(--base-color);
	position: absolute;
	bottom: 0;
	left: 160px;
	transition: height .3s ease;
}
/* ani */
#MainVisual .splide__slide img {
	transition: 8s 1s linear;
	transform: scale(1.0);
}
#MainVisual .splide__slide[class*=-active] img {
	transition-delay: 0s;
	transform: scale(1.2);
}
/* 1460 */
@media (max-width: 1460px) {
	#MainVisual ._center {
		height: max(58.904vw, 800px); //860px;
	}
	/* left */
	#MainVisual ._left .logo a img {
		width: max(14.384vw, 147px); //210px;
	}
	#MainVisual ._left .logo span.jp {
		font-size: max(1.92vw, 1.8rem); //2.8rem;
		margin-top: 30px;
	}
	#MainVisual ._left .logo span.eng1 {
		font-size: max(1.37vw, 1.4rem); //2.0rem;
		margin-top: 20px;
	}
	#MainVisual ._left ul.top_nav img {
		width: 46px;
		flex-shrink: 0;
	}
	#MainVisual ._left ul.top_nav .jp {
		font-size: max(1.03vw, 1.4rem); //1.5rem;
	}
	/* center */
	#MainVisual ._center .photo02 {
		left: -5%;
		width: max(38.356vw, 370px);
	}
	#MainVisual ._center .photo03 {
		width: max(31.507vw, 322px);
	}
	#MainVisual ._center .slogan .eng1 {
		font-size: max(10.96vw, 6.0rem); //16.0rem;
	}
	#MainVisual ._center .slogan .jp {
		font-size: max(2.74vw, 2.0rem); //4.0rem;
	}
	#MainVisual .scroll_line {
		height: 80px; //100px;
	}
}
/* 1240 */
@media (max-width: 1240px) {
	#MainVisual ._center .photo03 {
		top: 45%;
		right: -10%;
	}
	#MainVisual ._center .slogan {
		top: 42%;
	}
}
/* 900 */
@media (max-width: 900px) {
	#MainVisual ._left ul.top_nav {
		margin-left: 0;
	}
	#MainVisual ._right {
		width: 50px;
		margin-left: 15px;
	}
}
/* 840 */
@media (max-width: 840px) {
	#MainVisual {
		overflow: hidden;
		border-top: none;
		padding-top: max(2.381vw, 0px); //20px;
	}
	#MainVisual::before {
		content: none;
	}
	#MainVisual ._left {
		display: none;
	}
	#MainVisual ._center {
		height: max(95.238vw, 400px); //800px;
	}
	#MainVisual ._right {
		display: none;
	}
	#MainVisual ._center .photo03 {
		top: 65%;
	}
	#MainVisual ._center .slogan {
		top: 50%;
		left: 50%;
	}
	/* scroll */
	#MainVisual .scroll_txt {
		font-size: 1.6rem;
		bottom: 50px;
		left: initial;
		right: 50px;
	}
	#MainVisual .scroll_line {
		height: max(9.524vw, 65px); //80px;
		left: initial;
		right: 40px;
	}
}
/* 580 */
@media (max-width: 580px) {
	#MainVisual {
		padding-top: 0px;
	}
	#MainVisual ._center .photo02 {
		width: 75%;
		top: 53%;
		left: -23%;
	}
	#MainVisual ._center .photo03 {
		width: 60%;
		right: -17%;
	}
	/* scroll */
	#MainVisual .scroll_txt {
		bottom: 45px;
	}
}


/*--------------------------------------------------------------*/
/* HOME .body */
/*--------------------------------------------------------------*/
#Home .body {
	margin-top: -40px;
}
#Home .body .content.twide.pd_t {
	position: relative;
	padding-top: 180px;
}
/* arrow */
#Home .body .arrow-line {
	width: 1px;
	height: 60px;
	background: #fff;
	position: absolute;
	top: 0;
	left: 160px;
}
#Home .body .arrow-line::after{
	content: "";
	position: absolute;
	left: 50%;
	bottom: -12px;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 12px solid #fff;
}
#Home .body p.baseball_txt {
	text-align: center;
	line-height: 3;
	margin-bottom: 60px;
}
/* 1240 */
@media (max-width: 1240px) {
	#Home .body .content.twide.pd_t {
		padding-top: max(14.516vw, 80px); //180px;
	}
}
/* 1000 */
@media (max-width: 1000px) {

}
/* 900 */
@media (max-width: 900px) {

}
/* 768 */
@media (max-width: 768px) {

}
/* 580 */
@media (max-width: 580px) {

}

/* 840 */
@media (max-width: 840px) {
	/* arrow */
	#Home .body .arrow-line {
		height: 30px;
		left: initial;
		right: 40px;
	}
}

/*--------------------------------------------------------------*/
/* HOME #Topics */
/*--------------------------------------------------------------*/
#Topics {
	color: #fff;
}
#Topics header {
	text-align: center;
	color: #fff;
	margin-bottom: 60px;
}
#Topics header img {
	display: inline-block;
	max-width: 124px;
	width: 20%;
	margin-bottom: 20px;
}
#Topics header span.eng1 {
	font-size: 8.0rem;
	margin-bottom: 20px;
	display: block;
}
#Topics header h1 {
	font-size: 2.2rem;
}
#Topics header .control {
	margin-top: -30px;
}
#Topics .control.bottom {
	margin-top: 40px;
}
#Topics .splide__arrows {
	display: none;
}
/* 1240 */
@media (max-width: 1240px) {
	#Topics header img {
		display: inline-block;
		margin-bottom: max(1.613vw, 14px); //20px;
	}
	#Topics header span.eng {
		font-size: max(6.45vw, 5.4rem); //8.0rem;
		margin-bottom: max(1.613vw, 14px); //20px;
	}
	#Topics header h1 {
		font-size: max(1.77vw, 1.5rem); //2.2rem;
	}
	#Topics header span.eng1 {
		font-size: max(6.45vw, 5.4rem); //8.0rem;
		margin-bottom: max(1.613vw, 7px); //20px;
	}
}
/* 580 */
@media (max-width: 580px) {
	#Topics header {
		margin-bottom: 10px;
		display: flex;
		align-items: center;
		column-gap: 10px;
	}
	#Topics header spna.eng1 {
		font-size: 4.8rem;
		margin-bottom: 0;
		letter-spacing: 0;
	}
	#Topics header h1 {
		margin-bottom: -25px;
	}
	#Topics .splide__arrows {
		display: block;
	}
}

/*--------------------------------------------------------------*/
/* #Topics -> card01 */
/*--------------------------------------------------------------*/
.card01 {
	overflow: hidden;
}
.card01 .l-inner {
	position: relative;
	box-sizing: content-box;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 48px;
}
.card01 .splide {
	z-index: 0;
}
.card01 .splide__track {
	overflow: visible;
}
/* topic_card */
.topic_card {
	background: #fff;
	border-radius: 40px;
	padding: 20px;
	overflow: hidden;
	transition: 1s ease;
}
.topic_card figure {
	border-radius: 20px;
	overflow: hidden;
}
.topic_card figure img {
	transition: 3.0s ease;
	aspect-ratio: 400 / 245;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
body.is-pc .topic_card:hover figure img {
	transform: scale(1.15);
}
.topic_card .wrap {
	padding: 20px 0;
	display: flex;
	align-items:flex-start;
	column-gap: 10px;
}
.topic_card .wrap .category {
	aspect-ratio: 1 / 1;
	width: 80px;
	min-width: 55px;
	border-radius: 50%;
	background: var(--base-color);
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.0rem;
}
.topic_card .wrap .text {
	flex: 1;
}
.topic_card .wrap .text time {
	display: block;
	font-size: 1.4rem;
	color: #000;
	margin-bottom: 10px;
}
.topic_card .wrap .text h2 {
	font-size: 1.6rem;
	letter-spacing: 0;
	color: #000;
}
/* arrow */
.splide__arrow > svg {
	display: none;
}
.splide__arrow--prev,
.splide__arrow--next {
	display: grid;
	place-content: center;
	width: 40px;
	height: 40px;
	cursor: pointer;
	transition: .8s ease;
	background-color: #fff;
	border-radius: 50%;
}
.splide__arrow--prev::after,
.splide__arrow--next::after {
	content: "";
	width: 8px;
	height: 8px;
	border: solid var(--base-color);
	border-width: 3px 3px 0 0;
}
.splide__arrow--prev::after {
	margin-left: 0.4rem;
	transform: rotate(-135deg);
}
.splide__arrow--next::after {
	margin-right: 0.4rem;
	transform: rotate(45deg);
}
.splide__arrow:disabled {
	pointer-events: none;
	opacity: 0;
}
.splide__arrow--prev,
.splide__arrow--next {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	margin: auto;
}
.splide__arrow--prev::after,
.splide__arrow--next::after {
	border-color: var(--base-color);
}
.splide__arrow--prev {
	left: initial;
}
.splide__arrow--prev {
	right: 100%;
}
.splide__arrow--next {
	left: 100%;
	right: 0;
}
/* pagenation */
.splide-controller {
	height: 60px;
}
.splide__pagination {
	display: flex;
	column-gap: 10px;
}
/* 1360 */
@media (max-width: 1360px) {
	.topic_card .wrap .category {
		width: max(5.882vw, 40px); //80px;
		font-size: max(1.47vw, 1.5rem); //2.0rem;
	}
}
/* 580 */
@media (max-width: 580px) {
	.card01 .l-inner {
		padding: 0 15px;
	}
	/* topic_card */
	.topic_card {
		border-radius: 25px;
		padding: 14px;
	}
	.topic_card figure {
		border-radius: 13px;
	}
	.topic_card .wrap {
		padding: 15px 0;
		position: relative;
	}
	.topic_card .wrap .category {
		width: auto;
		background: initial;
		color: var(--base-color);
		font-size: 1.6rem;
		position: absolute;
		top: 11px;
		left: 0;
	}
	.topic_card .wrap .text time {
		font-size: 1.3rem;
		text-align: right;
	}
	.topic_card .wrap .text h2 {
		font-size: 1.4rem;
	}
	/* arrow */
	.splide__arrow {
		top: initial;
		transform: initial;
	}
	.splide__arrow--prev,
	.splide__arrow--next {
		position: absolute;
		z-index: 1;
		top: initial;
		bottom: 0;
		margin: initial;
	}
	.splide__arrow--prev {
		right: 55px;
		left: initial;
	}
	.splide__arrow--next {
		left: initial;
		right: 10px;
	}
	.splide__pagination {
		bottom: 10px;
		right: 20%;
	}
}

/*--------------------------------------------------------------*/
/* HOME #Players */
/*--------------------------------------------------------------*/
#Players {
	color: #fff;
}
#Players header {
	text-align: center;
	color: #fff;
	margin-bottom: 60px;
}
#Players header img {
	display: inline-block;
	max-width: 168px;
	width: 20%;
	margin-bottom: 20px;
}
#Players header span.eng1 {
	font-size: 8.0rem;
	margin-bottom: 20px;
	display: block;
}
#Players header h1 {
	font-size: 2.2rem;
}
#Players header .control {
	margin-top: -30px;
}
#Players .control.bottom {
	margin-top: 40px;
}
#Players .splide__arrows {
	display: none;
}
/* 1240 */
@media (max-width: 1240px) {
	#Players header img {
		display: inline-block;
		margin-bottom: max(1.613vw, 14px); //20px;
	}
	#Players header span.eng1 {
		font-size: max(6.45vw, 5.4rem); //8.0rem;
		margin-bottom: max(1.613vw, 14px); //20px;
	}
	#Players header h1 {
		font-size: max(1.77vw, 1.5rem); //2.2rem;
	}
}
/* 580 */
@media (max-width: 580px) {
	#Players header {
		margin-bottom: 10px;
		display: flex;
		align-items: center;
		column-gap: 10px;
	}
	#Players header span.eng1 {
		font-size: 4.8rem;
		margin-bottom: 0;
		letter-spacing: 0;
	}
	#Players header h1 {
		margin-bottom: -25px;
		font-size: 1.45rem;
	}
	#Players .splide__arrows {
		display: block;
	}
}

/*--------------------------------------------------------------*/
/* #Topics -> card02 */
/*--------------------------------------------------------------*/
.card02 .l-inner {
	position: relative;
	box-sizing: content-box;
	max-width: 1640px;
	margin: 0 auto;
	padding: 60px 20px;
	overflow: hidden;
}
.card02 .splide__track {
	overflow: visible;
}
.card02 .splide {
	z-index: 0;
}
/* player_card */
.player_card .waku {
	background: var(--base-color);
	color: #fff;
	border: 1px solid #fff;
	border-radius: 40px;
	transition: .3s ease;
}
body.is-pc .player_card a:hover .waku {
	background: #00a0e9;
}
.player_card figure {
	margin-top: -40px;
	overflow: hidden;
	aspect-ratio: 300 / 330;
	position: relative;
	display: flex;
	flex-direction: column;
}
.player_card figure img {
	/*transform: scale(1.55) translateX(25px);*/
	margin-top: auto;
	width: 100%;
	height: auto;
}
.player_card .wrap {
	margin-top: -45px;
	padding: 20px;
	display: flex;
	align-items: flex-end;
	position: relative;
	z-index: 2;
}
.player_card .eng_name {
	font-size: 5rem;
	color: rgba(255, 255, 255, 0.7);
	position: absolute;
	top: 0;
	left: 0;
	white-space: nowrap;
	transform: translate(-100%, 17px) rotate(270deg);
	transform-origin: right top;
	display: block;
	text-align: right;
	z-index: 2;
	transition: .3s ease;
}
body.is-pc .player_card a:hover .eng_name {
	color: var(--base-color);
}
.player_card .wrap .number {
	margin-left: 20px;
	width: 80px;
	color: #fff;
	font-size: 10.0rem;
	line-height: 1;
	text-shadow: 0 0 16px rgba(6,39,96,1);
	height: 100px;
	transition: .3s ease;
}
body.is-pc .player_card a:hover .number {
	color: var(--base-color);
}
.player_card .wrap dl {
	flex: 1;
	text-align: right;
	margin-bottom: 7px;
}
.player_card .wrap dl dt {
	font-size: 1.2rem;
	color: #fff;
	margin-bottom: 2px;
	white-space: nowrap;
	transition: .3s ease;
}
.player_card .wrap dl dd {
	font-size: 2.4rem;
	letter-spacing: 0;
	color: #fff;
	white-space: nowrap;
	transition: .3s ease;
}
body.is-pc .player_card a:hover dl dt,
body.is-pc .player_card a:hover dl dd {
	color: var(--base-color);
}
/* 580 */
@media (max-width: 580px) {
	.card02 .l-inner {
		padding: 60px 15px 0 15px;
	}
	.player_card .waku {
		border-radius: 25px;
	}
	.player_card .wrap {
		margin-top: -32px;
		padding: 12px;
	}
	.player_card .eng_name {
		top: -7px;
		font-size: 4rem;
	}
	.player_card .wrap .number {
		margin-left: 12px;
		width: 60px;
		font-size: 8.0rem;
	}
	.player_card .wrap dl {
		margin-bottom: 4px;
	}
	.player_card .wrap dl dt {
		font-size: 1.1rem;
		margin-bottom: 2px;
	}
	.player_card .wrap dl dd {
		font-size: 1.6rem;
	}
}

/*--------------------------------------------------------------*/
/* .subpage Base */
/*--------------------------------------------------------------*/
#sub_header .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	gap: 30px 3%;
}
#sub_header ._left {
	width: 47%;
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 25px;
	margin-top: -30px;
}
#sub_header ._left img {
	transition: .3s ease;
}
#sub_header ._left .text {
	display: flex;
	flex-direction: column;
	row-gap: 10px;
}
#sub_header ._left h1 {
	font-size: 4.0rem;
	font-weight: bold;
	letter-spacing: 0;
}
#sub_header ._left span.eng1 {
	font-size: 3.0rem;
	margin-left: 3px;
}
#sub_header ._right {
	width: 50%;
}
#sub_header ._right img {
	border-radius: 30px;
}
/* nav */
.subpage nav.hjump {
	background: url(../images/bk_line.svg), var(--base-color);
	background-repeat: repeat;
	background-size: 170px;
	background-position: center center;
	padding: 20px 0;
	position: sticky;
	top: 100px;
	transition: .3s ease;
	z-index: 8;
}
.subpage nav.hjump.active {
	padding: 8px 0;
	box-shadow: 0px 2px 1px 0px rgb(0 0 0 / 10%);
}
.subpage nav.hjump .content {
	max-width: 1040px;
}
/* sub.body */
/* 1560 */
@media (max-width: 1560px) {
	#sub_header ._left img {
		width: 22%;
	}
	#sub_header ._left h1 {
		font-size: max(2.56vw, 2.4rem); //4.0rem;
	}
	#sub_header ._left span.eng1 {
		font-size: max(1.92vw, 1.8rem); //3.0rem;
	}
}
/* 1240 */
@media (max-width: 1240px) {
	.subpage > header > h1 {
		font-size: max(2.42vw, 2.2rem); //3.0rem;
	}
	.subpage > header > span.eng {
		font-size: max(0.97vw, 1.1rem); //1.2rem;
	}
	/* nav */
	.subpage nav.hjump {
		padding: max(1.613vw, 8px) 0;
	}
}
/* 1200 */
@media (max-width: 1200px) {
	/* nav */
	.subpage nav.hjump {
		top: 80px;
	}
}
/* 768 */
@media (max-width: 768px) {
	#sub_header {
		padding-top: 15px;
		padding-bottom: 30px;
	}
	#sub_header ._left {
		width: 100%;
		margin-top: 0px;
	}
	#sub_header ._right {
		width: 100%;
		max-width: 600px;
		margin: 0 auto;
	}
	/* sub.body */
	.subpage div.body {
		margin-top: 0px;
	}
}
/* 580 */
@media (max-width: 580px) {
	.subpage nav.hjump {
		top: 70px;
	}
	.subpage > header > span.small {
		font-size: 1.3rem;
	}
	#sub_header ._right img {
		border-radius: 15px;
	}
}

/*--------------------------------------------------------------*/
/* .sub_header2 */
/*--------------------------------------------------------------*/
#sub_header2 {
	padding: 40px 0 60px 0;
}
#sub_header2 .content.flex {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 25px;
}
#sub_header2 .content.flex > img {
	width: 10%;
	max-width: 136px;
	min-width: 90px;
}
#sub_header2 .text {
	display: flex;
	flex-direction: column;
	row-gap: 10px;
	text-align: left;
}
#sub_header2 h1 {
	font-size: 4.0rem;
	font-weight: bold;
	letter-spacing: 0;
}
#sub_header2 span.eng1 {
	font-size: 3.0rem;
	margin-left: 3px;
}
#sub_header2 + div.body {
	margin-top: 0;
}
/* 1560 */
@media (max-width: 1560px) {
	#sub_header2 h1 {
		font-size: max(2.56vw, 2.4rem); //4.0rem;
	}
	#sub_header2 span.eng1 {
		font-size: max(1.92vw, 1.8rem); //3.0rem;
	}
}

/*--------------------------------------------------------------*/
/* breadcrumbs */
/*--------------------------------------------------------------*/
.breadcrumbs {
	padding-top: 20px;
	margin-bottom: 40px;
	position: relative;
	z-index: 2;
}
.breadcrumbs span {
	font-size: 1.4rem;
	color: #fff;
	transition: .3s ease;
}
.breadcrumbs i {
	font-size: 1.3rem;
	margin: 0 6px 0 7px;
	color: #fff;
}
.breadcrumbs a {
	color: #fff;
}
body.is-pc .breadcrumbs a:hover span {
	/*color: #4e9cb8;*/
	color: var(--corp-color);
}
/* 1240 */
@media (max-width: 1240px) {
	.breadcrumbs {
		margin-bottom: max(3.226vw, 28px); //40px;
	}
}
/* 580 */
@media (max-width: 580px) {
	.breadcrumbs span {
		font-size: 1.3rem;
	}
	.breadcrumbs i {
		font-size: 1.1rem;
		margin: 0 4px 0 6px;
	}
}

/*--------------------------------------------------------------*/
/* Games */
/*--------------------------------------------------------------*/
ul#games_list {
	display: flex;
	flex-direction: column;
	row-gap: 60px;
	max-width: 1040px;
	margin: 0 auto;
}
ul#games_list li {
	background: #fff;
	border-radius: 30px;
}
ul#games_list li.chushi {
	background: #c7d1e3;
}
ul#games_list li .taikai_name {
	font-size: 2.4rem;
	font-weight: bold;
	padding: 15px 30px;
	border-bottom: 1px solid var(--base-color);
}
ul#games_list li .flex {
	padding: 20px 30px;
}
/* _left */
ul#games_list li .flex ._left {
	flex: 1;
}
ul#games_list li .flex ._left div.date_week span.date {
	font-size: 7.0rem;
}
ul#games_list li .flex ._left div.date_week span.week {
	font-size: 5.0rem;
	margin-left: 20px;
}
ul#games_list li .flex ._left div.start_time {
	font-size: 4.0rem;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 15px;
}
ul#games_list li .flex ._left div.start_time span.gcal-btn {
	display: flex;
	align-items: center;
}
ul#games_list li .flex ._left div.start_time span.gcal-btn a {
	color: var(--corp-color);
	font-size: 1.3rem;
	font-style: initial;
	transition: color .3s ease;
}
body.is-pc ul#games_list li .flex ._left div.start_time span.gcal-btn a:hover {
	color: red;
}
ul#games_list li .flex ._left div.ground {
	font-size: 2.4rem;
	font-weight: bold;
	margin-top: 5px;
}
/* _center */
ul#games_list li .flex ._center {
	width: 150px;
	flex-shringk: 0;
	text-align: center;
	font-weight: bold;
}
ul#games_list li .flex ._center div.opb {
	font-size: 1.8rem;
	font-weight: bold;
}
ul#games_list li .flex ._center img {
	aspect-ratio: 81 / 102;
	margin: 0 auto 10px auto;
}
/* _right */
ul#games_list li .flex ._right {
	flex: 1.15;
	display: flex;
	align-items: center;
}
ul#games_list li .flex ._right div.result {
	width: 45%;
	text-align: center;
	margin-left: 5%;
}
ul#games_list li .flex ._right div.result div.vs {
	font-size: 9.0rem;
	opacity: 0.3;
}
ul#games_list li .flex ._right div.result div.end {
	font-size: 3.4rem;
	font-weight: bold;
}
ul#games_list li .flex ._right div.result div.score {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 30px;
	margin-bottom: 10px;
}
ul#games_list li .flex ._right div.result div.score span.num {
	font-size: 8.0rem;
}
ul#games_list li .flex ._right div.result div.score span.tai {
	font-size: 8.0rem;
}
ul#games_list li .flex ._right div.result div.winlose span {
	font-size: 6.0rem;
	color: #fff;
	display: inline-block;
	max-width: 200px;
	min-width: 100px;
	width: 100%;
	border-radius: 50px;
}
ul#games_list li .flex ._right div.result div.winlose span.win {
	background: #ff2d30;
}
ul#games_list li .flex ._right div.result div.winlose span.lose {
	background: #5c2929;
}
ul#games_list li .flex ._right div.result div.winlose span.draw {
	background: var(--base-color);
	opacity: 0.3;
}
ul#games_list li .flex ._right div.opponent {
	width: 50%;
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
}
/* bikou */
ul#games_list li .bikou {
	font-size: 1.5rem;
	padding: 15px 30px;
	border-top: 1px solid var(--base-color);
	text-align: right;
}
/* filter */
#Games .filter {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 25px;
}
#Games .filter .select_year_wrap {
	position: relative;
}
#Games .filter .select_year_wrap ul.years {
	position: absolute;
	left: 0;
	background: var(--base-color);
	padding: 20px;
	box-shadow: 2px 2px 2px 0px rgba(0,0,0,0.4);
	border: 4px solid #fff;
	max-height: 240px;
	overflow: auto;
	transform: translateY(0px);
	opacity: 0;
	transition:opacity .2s, transform .2s;
}
#Games .filter .select_year_wrap ul.years.open {
	opacity: 1;
	transform: translateY(7px);
	pointer-events: auto;
}
#Games .filter .select_year_wrap ul.years li a {
	font-size: 4.0rem;
	color: #fff;
	transition: opacity .3s ease;
}
body.is-pc #Games .filter .select_year_wrap ul.years li a:hover {
	opacity: 0.7;
}
#Games .filter .select_year_wrap ul.years li:not(:last-child) {
	margin-bottom: 10px;
}
#Games .filter .select_year {
	background: initial;
	border: none;
	width: 111px;
	color: #fff;
	font-size: 5.0rem;
	line-height: 1;
	display: flex;
	align-items: center;
	column-gap: 15px;
	cursor: pointer;
	transition: .3s ease;
}
#Games .hjump.active .filter .select_year {
	width: 92px;
	font-size: 3.6rem;
	background: initial;
	border: none;
}
#Games .filter .select_year::after {
	content: '\f078';
	font-family: "Font Awesome 6 Free";
	font-size: 3.0rem;
	font-weight: bold;
}
#Games .hjump.active .filter .select_year::after {
	font-size: 2.4rem;
}
#Games .filter .btn_tabs {
	flex: 1;
}
/* 1240 */
@media (max-width: 1240px) {
	#Games .filter .select_year {
		width: max(8.952vw, 100px); //111px;
		font-size: max(4.03vw, 3.6rem); //5.0rem;
		column-gap: 10px;
		padding-right: 0;
	}
	#Games .filter .select_year::after {
		font-size: max(2.42vw, 2.4rem); //3.0rem;
	}
	#Games .filter .select_year_wrap ul.years li a {
		font-size: max(3.23vw, 2.8rem); //4.0rem;
	}
}
/* 1100 */
@media (max-width: 1100px) {
	ul#games_list li .taikai_name {
		font-size: max(2.18vw, 1.7rem); //2.4rem;
	}
	/* _left */
	ul#games_list li .flex ._left div.date_week span.date {
		font-size: max(6.36vw, 4.9rem); //7.0rem;
	}
	ul#games_list li .flex ._left div.date_week span.week {
		font-size: max(4.55vw, 3.5rem); //5.0rem;
		margin-left: max(1.818vw, 14px); //20px;
	}
	ul#games_list li .flex ._left div.start_time {
		font-size: max(3.64vw, 2.8rem); //4.0rem;
	}
	ul#games_list li .flex ._left div.ground {
		font-size: max(2.18vw, 1.7rem); //2.4rem;
		font-weight: bold;
		margin-top: 5px;
	}
	/* _center */
	ul#games_list li .flex ._center {
		width: max(13.636vw, 105px); //150px;
	}
	ul#games_list li .flex ._center div.opb {
		font-size: max(1.64vw, 1.3rem); //1.8rem;
	}
	ul#games_list li .flex ._center img {
		width: max(7.364vw, 57px); //81px;
	}
	/* _right */
	ul#games_list li .flex ._right div.result div.vs {
		font-size: max(8.18vw, 6.3rem); //9.0rem;
	}
	ul#games_list li .flex ._right div.result div.end {
		font-size: max(3.09vw, 2.4rem); //3.4rem;
	}
	ul#games_list li .flex ._right div.result div.score {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 0 max(2.727vw, 11px); //30px;
		margin-bottom: 10px;
	}
	ul#games_list li .flex ._right div.result div.score span.num {
		font-size: max(7.27vw, 5.6rem); //8.0rem;
	}
	ul#games_list li .flex ._right div.result div.score span.tai {
		font-size: max(7.27vw, 5.6rem); //8.0rem;
	}
	ul#games_list li .flex ._right div.result div.winlose span {
		font-size: max(5.45vw, 3.4rem); //6.0rem;
	}
	ul#games_list li .flex ._right div.opponent {
		width: 40%;
		font-size: max(2vw, 1.7rem); //2.2rem;
	}
	/* bikou */
	ul#games_list li .bikou {
		font-size: max(1.36vw, 1.2rem); //1.5rem;
		padding: 15px 30px;
	}
}
/* 768 */
@media (max-width: 768px) {
	ul#games_list li {
		border-radius: 20px;
	}
	ul#games_list li .taikai_name {
		padding: 15px 16px;
	}
	ul#games_list li .flex {
		padding: 10px 16px 20px 16px;
	}
	/* _left */
	ul#games_list li .flex ._left {
		flex: initial;
		width: 100%;
		display: flex;
		align-items: flex-end;
		column-gap: 10px;
		flex-wrap: wrap;
		margin-bottom: 20px;
	}
	ul#games_list li .flex ._left .date {
		letter-spacing: 0;
	}
	ul#games_list li .flex ._left .week {
		display: inline-block;
		margin-bottom: 5px;
	}
	ul#games_list li .flex ._left .start_time {
		display: inline-block;
		margin-bottom: 5px;
	}
	ul#games_list li .flex ._left div.ground {
		width: 100%;
	}
	/* _center */
	ul#games_list li .flex ._center {
		width: initial;
		flex: 1;
		text-align: center;
		font-weight: bold;
	}
	/* _right */
	ul#games_list li .flex ._right {
		flex: 2.2;
	}
	ul#games_list li .flex ._right div.result {
		flex: 1.2;
	}
	ul#games_list li .flex ._right div.opponent {
		flex: 1;
	}
	ul#games_list li .flex ._right div.result div.winlose span {
		width: 70%;
	}
	ul#games_list li .bikou {
		padding: 13px 20px 15px;
	}
}
/* 580 */
@media (max-width: 580px) {
	#Games .content {
		padding: 0 14px;
	}
	#Games .filter {
		column-gap: 15px;
	}
	#Games .hjump.active .filter .select_year,
	#Games .filter .select_year {
		font-size: 2.4rem;
		column-gap: 5px;
		width: 60px;
	}
	#Games .hjump.active .filter .select_year::after,
	#Games .filter .select_year::after {
		font-size: 1.6rem;
	}
	ul#games_list {
		row-gap: 30px;
		padding-top: 30px;
	}
	ul#games_list li .flex ._right div.opponent {
		font-size: 1.4rem;
	}
}

/*--------------------------------------------------------------*/
/* Game -> タブボタン */
/*--------------------------------------------------------------*/
.btn_tabs {
	display: flex;
	gap: 10px;
}
.tab_btn {
	width: 100%;
	padding: 8px 0;
	cursor: pointer;
	font-size: 2.0rem;
	font-weight: bold;
	color: var(--base-color);
	background: #fff;
	border: 1px solid #fff;
	border-radius: 30px;
	position: relative;
	transition: .2s ease;
}
.hjump.active .tab_btn {
	padding: 6px 0;
	font-size: 1.5rem;
}
.tab_btn.active {
	background: #031b45;
	color: #fff;
}
.tab_btn.active::after {
	content: '\f00c';
	font-family: "Font Awesome 6 Free";
	font-weight: bold;
	color: #fff;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0, -50%);
}
.tab_btn:hover:not(.active) {
	background: #e0e0e0;
}
/* 1240 */
@media (max-width: 1240px) {
	.tab_btn {
		padding: 6px 0px;
		font-size: max(1.61vw, 1.4rem)!important; //2.0rem;
	}
	.hjump.active .tab_btn {
		font-size: 1.5rem!important;
	}
	.tab_btn.active::after {
		right: max(1.613vw, 10px); //20px;
	}
}
/* 580 */
@media (max-width: 580px) {
	.tab_btn {
		padding: 6px 0px;
		font-size: 1.2rem!important;
	}
	.hjump.active .tab_btn {
		font-size: 1.2rem!important;
	}
	.tab_btn.active::after {
		content: none;
	}
}

/*--------------------------------------------------------------*/
/* About */
/*--------------------------------------------------------------*/
#About #sub_header ._left img {
	width: 13%;
	max-height: 150px;
	min-height: 90px;
}
#About .body p.about_txt {
	text-align: center;
	margin-bottom: 60px;
}
#About .body > .pd_std_ss {
	padding-top: 30px;
}
/* table.tbl1 */
#About .body table.tbl1 {
	margin: 0 auto 60px auto;
	border-left: none;
	max-width: 740px;
	width: 100%;
}
#About .body table.tbl1 tr th {
	background: none;
	width: 140px;
}
#About .body table.tbl1 tr th,
#About .body table.tbl1 tr td {
	color: #fff;
	border-right: none;
}
/* 580 */
@media (max-width: 580px) {
	#About .body > .pd_std_ss {
		padding-top: 20px;
	}
	#About .body p.about_txt {
		line-height: 2.2;
	}
	#About .body table.tbl1 {
		border: 1px solid #465e89;
	}
	#About .body table.tbl1 tr {
		position: relative;
	}
	#About .body table.tbl1 tr th {
		text-align: left;
		display: block;
		width: 100%;
		border: none;
		font-weight: normal;
		background: #21427a;
		padding: 6px 10px 8px 13px;
	}
	#About .body table.tbl1 tr td {
		display: block;
		width: 100%;
		padding: 13px 10px 17px 13px;
		background: var(--base-color);
		border: none;
	}
}

/*--------------------------------------------------------------*/
/* About => Ouen */
/*--------------------------------------------------------------*/
#Ouen {
	text-align: center;
}
#Ouen header {
	margin-bottom: 60px;
}
#Ouen header h2 {
	text-align: center;
	font-size: 3.0rem;
}
#Ouen figure img {
	margin: 0 auto 60px auto;
}
/* ul.lyrics */
#Ouen ul.lyrics {
	margin-top: 60px;
}
#Ouen ul.lyrics li:not(:last-child) {
	margin-bottom: 80px;
}
#Ouen ul.lyrics li div.box {
	position: relative;
	writing-mode: vertical-rl;
	text-orientation: upright;
	max-width: 760px;
	width: 100%;
	margin: 0 auto;
	padding: 56px 48px;
	text-align: left;
	color: #333;
	background: #fffffe;
	box-shadow: 0 0 0px 5px rgba(255,255,255,0.3);
}
#Ouen ul.lyrics li div.box::after {
	content: "";
	position: absolute;
	top: 10px;
	right: 10px;
	bottom: 10px;
	left: 10px;
	border: 1px solid #c8a96e;
	pointer-events: none;
}
#Ouen ul.lyrics li div.box h3 {
	color: #333;
	font-size: 1.6rem;
	margin-left: 10px;
}
#Ouen ul.lyrics li div.box h2 {
	color: #0b3e68;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.9;
	letter-spacing: .12em;
	margin-left: 24px;
}
#Ouen ul.lyrics li div.box table {
	margin-top: 90px;
	margin-left: 28px;
	border: none;
	border-collapse: collapse;
}
#Ouen ul.lyrics li div.box table th {
	color: #333;
	background: none;
	font-size: 1.2rem;
	padding: 0 0 8px 0;
	border: none;
	letter-spacing: .08em;
}
#Ouen ul.lyrics li div.box table td {
	color: #333;
	font-size: 1.2rem;
	padding: 0;
	border: none;
	letter-spacing: .04em;
}
#Ouen ul.lyrics li div.box p.txt {
	color: #333;
	font-size: 1.8rem;
	line-height: 2.2;
	letter-spacing: .08em;
	margin: 0;
	margin-left: 40px;
}
#Ouen ul.lyrics li:nth-child(1) div.box p.txt {
	line-height: 2.6;
}
/* 1240 */
@media (max-width: 1240px) {
	#Ouen header {
		margin-bottom: max(4.839vw, 35px); //60px;
	}
	#Ouen header h2 {
		font-size: max(2.42vw, 2.1rem); //3.0rem;
	}
	#Ouen figure img {
		margin: 0 auto max(4.839vw, 35px) auto;
	}
}
/* 900 */
@media (max-width: 900px) {
	/* ul.lyrics */
	#Ouen ul.lyrics li:not(:last-child) {
		margin-bottom: max(8.889vw, 56px); //80px;
	}
	#Ouen ul.lyrics li div.box {
		padding: max(6.222vw, 39px) max(5.333vw, 34px);
	}
	#Ouen ul.lyrics li div.box h2 {
		font-size: max(2.67vw, 1.7rem); //2.4rem;
	}
	#Ouen ul.lyrics li div.box table {
		margin-top: max(10vw, 63px); //90px;
		margin-left: max(3.111vw, 20px); //28px;
	}
	#Ouen ul.lyrics li div.box table th {
		font-size: max(1.33vw, 1.0rem); //1.2rem;
		padding: 0 0 8px 0;
	}
	#Ouen ul.lyrics li div.box table td {
		font-size: max(1.33vw, 1.0rem); //1.2rem;
	}
	#Ouen ul.lyrics li div.box p.txt {
		font-size: max(2vw, 1.4rem); //1.8rem;
		letter-spacing: .08em;
		margin-left: max(4.444vw, 28px); //40px;
	}
}
/* 600 */
@media (max-width: 600px) {
	#Ouen ul.lyrics li div.box {
		writing-mode: initial;
		text-orientation: initial;
		padding: 60px 20px 40px 20px;
	}
	#Ouen ul.lyrics li div.box span.wflg {
		display: none;
	}
	#Ouen ul.lyrics li div.box h2 {
		text-align: center;
		margin-bottom: 20px;
	}
	#Ouen figure img {
		border-radius: 20px;
	}
	#Ouen ul.lyrics li div.box h3 {
		font-size: 1.2rem;
		margin-left: 0;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, 0);
		padding: 1px 20px;
		background: #c8a96e;
		color: #fff;
		border-radius: 0 0 10px 10px;
		z-index: 3;
	}
	#Ouen ul.lyrics li div.box table {
		margin: 0 0 20px 8vw;
	}
	#Ouen ul.lyrics li div.box table th {
		padding: 0 5px 2px 0;
	}
	#Ouen ul.lyrics li div.box p.txt {
		margin-left: 8vw;
	}
}

/*--------------------------------------------------------------*/
/* About => Kouenkai */
/*--------------------------------------------------------------*/
#Kouenkai header {
	text-align: center;
	margin-bottom: 60px;
}
#Kouenkai header h2 {
	font-size: 3.0rem;
	margin-bottom: 60px;
}
#Kouenkai table {
	margin: 0 auto;
	border-left: none;
	max-width: 760px;
	width: 100%;
}
#Kouenkai table tr th,
#Kouenkai table tr td {
	background: none;
	color: #fff;
	border-right: none;
}
#Kouenkai table {
	margin: 0 auto;
}
/* 1240 */
@media (max-width: 1240px) {
	#Kouenkai header {
		margin-bottom: max(4.839vw, 42px); //60px;
	}
	#Kouenkai header h2 {
		margin-bottom: max(4.839vw, 42px); //60px;
		font-size: max(2.42vw, 2.1rem); //3.0rem;
	}
}

/*--------------------------------------------------------------*/
/* About => Ishinomaki */
/*--------------------------------------------------------------*/
#Ishinomaki header {
	text-align: center;
	margin-bottom: 60px;
}
#Ishinomaki header h2 {
	font-size: 3.0rem;
	margin-bottom: 60px;
}
#Ishinomaki p.txt {
	text-align: center;
	line-height: 3;
	margin-bottom: 60px;
}
/* 1240 */
@media (max-width: 1240px) {
	#Ishinomaki header {
		margin-bottom: max(4.839vw, 42px); //60px;
	}
	#Ishinomaki header h2 {
		margin-bottom: max(4.839vw, 42px); //60px;
		font-size: max(2.42vw, 2.1rem); //3.0rem;
	}
}
/* 580 */
@media (max-width: 580px) {
	#Ishinomaki p.txt {
		text-align: left;
	}
}

/*--------------------------------------------------------------*/
/* Player */
/*--------------------------------------------------------------*/
#Player .tab_btn.active::after {
	right: 13px;
}
/* section.list_wrap */
section.list_wrap header {
	text-align: center;
	margin-bottom: 80px;
}
section.list_wrap header span.eng1 {
	font-size: 8.0rem;
	margin-bottom: 20px;
	display: block;
	color: #fff;
}
section.list_wrap header h2 {
	font-size: 2.2rem;
	color: #fff;
}
section.list_wrap ul.player_lists {
	display: flex;
	flex-wrap: wrap;
	gap: 120px 3%;
	max-width: 1319px;
	margin: 0 auto;
}
section.list_wrap ul.player_lists li {
	max-width: 300px;
	width: calc(91% / 4);
	position: relative;
}
/* 1400 */
@media (max-width: 1400px) {
	/* player_card */
	section.list_wrap .player_card .waku {
		border-radius: max(2.857vw, 28px); //40px;
	}
	section.list_wrap .player_card figure {
		margin-top: -40px;
	}
	section.list_wrap .player_card .wrap {
		margin-top: max(-3.214vw, -65px); //-45px;
		padding: max(1.429vw, 16px); //20px;
	}
	section.list_wrap .player_card .eng_name {
		font-size: max(3.57vw, 3.5rem); //5rem;
	}
	section.list_wrap .player_card .wrap .number {
		margin-left: max(1.429vw, 14px); //20px;
		width: max(5.714vw, 56px); //80px;
		font-size: max(7.14vw, 7rem); //10.0rem;
		height: max(7.143vw, 70px);
	}
	section.list_wrap .player_card .wrap dl {
		margin-bottom: 7px;
	}
	section.list_wrap .player_card .wrap dl dt {
		font-size: max(0.86vw, 1.0rem); //1.2rem;
		margin-bottom: 2px;
	}
	section.list_wrap .player_card .wrap dl dd {
		font-size: max(1.71vw, 1.7rem); //2.4rem;
	}
}
/* 1240 */
@media (max-width: 1240px) {
	section.list_wrap header span.eng1 {
		font-size: max(6.45vw, 5.4rem); //8.0rem;
		margin-bottom: max(1.613vw, 14px); //20px;
	}
	section.list_wrap header h2 {
		font-size: max(1.77vw, 1.6rem); //2.2rem;
	}
}
/* 980 */
@media (max-width: 980px) {
	section.list_wrap ul.player_lists {
		gap: max(12.245vw, 50px) 3%;
	}
	section.list_wrap ul.player_lists li {
		width: calc(94% / 3);
	}
	section.list_wrap .player_card .wrap {
		margin-top: max(-4.592vw, -65px); //-45px;
		padding: max(2.041vw, 14px); //20px;
	}
	section.list_wrap .player_card .eng_name {
		font-size: max(4.59vw, 2.1rem); //4.5rem;
	}
	section.list_wrap .player_card .wrap .number {
		margin-left: max(2.041vw, 14px); //20px;
		width: max(8.163vw, 56px); //80px;
		font-size: max(10.2vw, 7rem); //10.0rem;
		height: max(10.204vw, 70px); //100px;
	}
	section.list_wrap .player_card .wrap dl dt {
		font-size: max(1.22vw, 0.8rem); //1.2rem;
		margin-bottom: 2px;
	}
	section.list_wrap .player_card .wrap dl dd {
		font-size: max(2.45vw, 1.7rem); //2.4rem;
	}
}
/* 620 */
@media (max-width: 620px) {
	#Player .tab_btn {
		font-size: max(2.26vw, 1.0rem)!important; //1.4rem;
	}
	section.list_wrap ul.player_lists li {
		width: calc(97% / 2);
	}
	section.list_wrap .player_card .wrap {
		margin-top: max(-6.858vw, -61px); //-45px;
		padding: max(3.226vw, 14px); //20px;
		padding-bottom: max(3.226vw, 10px); //20px;
	}
	section.list_wrap .player_card .eng_name {
		font-size: max(7.26vw, 2.6rem); //4.5rem;
	}
	section.list_wrap .player_card .wrap .number {
		margin-left: max(3.226vw, 10px); //20px;
		width: max(12.903vw, 56px); //80px;
		font-size: max(16.13vw, 5rem); //10.0rem;
		height: max(16.129vw, 70px); //100px;
	}
	section.list_wrap .player_card .wrap dl dt {
		font-size: max(1.94vw, 0.8rem); //1.2rem;
		margin-bottom: 2px;
	}
	section.list_wrap .player_card .wrap dl dd {
		font-size: max(3.87vw, 1.5rem); //2.4rem;
	}
}
/* 580 */
@media (max-width: 580px) {
	#Player .content.flg {
		padding: 0 14px;
	}
	#Player .btn_tabs {
		gap: 3px;
	}
	/* section.list_wrap */
	section.list_wrap header {
		margin-bottom: 50px;
	}
	section.list_wrap ul.player_lists {
		margin-bottom: 40px;
	}
	section.list_wrap .player_card figure {
		margin-top: -20px;
	}
	
}

/*--------------------------------------------------------------*/
/* PlayerDetail */
/*--------------------------------------------------------------*/
#PlayerDetail div.body {
	margin-top: 0;
}
#PlayerDetail .breadcrumbs {
	padding-top: 0;
	padding-bottom: 10px;
}
#PlayerDetail .breadcrumbs span,
#PlayerDetail .breadcrumbs i,
#PlayerDetail .breadcrumbs a {
	color: #333;
}
#PlayerDetail .breadcrumbs a:hover span {
	color: var(--base-color);
}
#PlayerDetail .pd_std.no_personal.no_spec2 {
	padding: 0;
}
/* min769 */
@media (min-width: 769px) {
	#PlayerDetail .pd_std.no_personal {
		padding: 0;
	}
}
#player_header .p_detail {
	max-width: 800px;
	width: 60%;
	margin-left: auto;
	padding-bottom: 40px;
	position: relative;
	z-index: 3;
}
/* p_name */
#player_header .content.relative {
	max-width: 1220px;
	position: relative;
}
#player_header .content.relative img { /* 570x490 */
	position: absolute;
	bottom: 0;
	left: 0;
	max-width: 570px;
	width: 47%;
	z-index: 1;
	transition: .6s ease;
}
/* nonstaff */
#player_header .content.relative.nonstaff img {
	left: 10%;
}
#player_header .content.relative.nonstaff .p_detail {
	width: 48%;
}
#player_header .p_name {
	display: flex;
	align-items: flex-end;
	gap: 0 2vw;
	transition: .6s ease;
}
#player_header .p_name .num {
	font-size: 25rem;
	max-height: 250px;
	max-width: 192px;
	line-height: 1;
	margin-bottom: -0.5vw;
	transition: .6s ease;
}
#player_header .p_name dl {
	line-height: 1.5;
	transition: .6s ease;
}
#player_header .p_name dl dt {
	font-size: 2.6rem;
	font-weight: bold;
	letter-spacing: .1em;
	transition: .6s ease;
}
#player_header .p_name dl dd.name {
	font-size: 6.2rem;
	font-weight: bold;
	letter-spacing: .1em;
	transition: .6s ease;
}
#player_header .p_name dl dd.eng1 {
	font-size: 5.6rem;
	opacity: 0;
	transition: .6s ease;
}
.wf-active #player_header .p_name dl dd.eng1 {
	opacity: 0.5;
}
/* p_spec */
#player_header .p_spec {
	display: flex;
	flex-wrap: wrap;
	gap: 0 5%;
	max-height: 226px;
	min-height: 196px;
	height: 22vw;
	position: relative;
	z-index: 2;
}
#player_header .p_spec table {
	width: 47.5%;
	border-left: none;
	border-color: #333;
}
#player_header .p_spec table th,
#player_header .p_spec table td {
	border-right: none;
	border-color: #333;
	background: rgba(255,255,255,0.8);
	text-align: left;
	color: #333;
}
#player_header .p_spec table th {
	padding: 15px 20px;
}
#player_header .p_spec table td {
	padding: 15px 20px 15px 0;
}
/* div.body */
#PlayerDetail div.body table {
	border-left: none;
	max-width: 450px;
	width: 100%;
	margin: 0 auto;
}
#PlayerDetail div.body table th,
#PlayerDetail div.body table td {
	background: none;
	color: #fff;
	border-right: none;
	text-align: left;
}
#PlayerDetail div.body table th {
	padding-left: 7vw;
}
#PlayerDetail div.body table td {
	padding-left: 0;
}
/* 1240 */
@media (max-width: 1240px) {
	#player_header .p_detail {
		padding-bottom: max(3.226vw, 0px); //40px;
	}
	/* p_name */
	#player_header .p_name .num {
		font-size: max(20.16vw, 17.5rem); //25rem;
		margin-bottom: -0.5vw;
	}
	#player_header .p_name dl dt {
		font-size: max(2.1vw, 1.8rem); //2.6rem;
	}
	#player_header .p_name dl dd.name {
		font-size: max(5vw, 4.3rem); //6.2rem;
	}
	#player_header .p_name dl dd.eng1 {
		font-size: max(4.52vw, 3.9rem); //5.6rem;
	}
	/* p_spec */
	#player_header .p_spec table th,
	#player_header .p_spec table td {
		font-size: max(1.29vw, 1.4rem); //1.6rem;
	}
	#player_header .p_spec table th {
		padding: max(1.21vw, 11px) max(1.613vw, 14px);
	}
	#player_header .p_spec table td {
		padding: max(1.21vw, 11px) max(1.613vw, 14px) max(1.21vw, 11px) 0;
	}
}
/* 768 */
@media (max-width: 768px) {
	#player_header .content.relative {
		display: flex;
		justify-content: center;
		align-items: flex-start;
	}
	#player_header .content.relative img {
		position: initial;
		bottom: 0;
		left: 0;
		max-width: 570px;
		width: 60%;
		z-index: 1;
	}
	#player_header .p_detail {
		width: 40%;
		margin-bottom: 0;
	}
	/* p_name */
	#player_header .p_name .num {
		font-size: max(22.79vw, 11.3rem);
		position: absolute;
		bottom: -100%;
		right: 40%;
		color: #fff;
		text-shadow: 0px 0px 15px rgba(6,39,96,1);
	}
	#player_header .p_name dl dt {
		font-size: max(2.84vw, 1.2rem); //1.8rem;
	}
	#player_header .p_name dl dd.name {
		font-size: max(6.1vw, 2.8rem); //4.3rem; //6.2rem;
	}
	#player_header .p_name dl dd.eng1 {
		font-size: max(5.58vw, 2.5rem); //3.9rem; //5.6rem;
		letter-spacing: 0;
	}
}
/* 580 */
@media (max-width: 580px) {
	#player_header .content.relative {
		padding-left: 10px;
	}
	/* p_detail */
	#player_header .p_name dl {
		transform: translateX(-25%);
		white-space: nowrap;
	}
}

/*--------------------------------------------------------------*/
/* Personal */
/*--------------------------------------------------------------*/
#Personal header {
	text-align: center;
	margin-bottom: 80px;
}
#Personal header span.eng1 {
	font-size: 8.0rem;
	margin-bottom: 20px;
	display: block;
	color: #fff;
}
#Personal  header h2 {
	font-size: 2.2rem;
	color: #fff;
}
/* ul.profile_list */
ul.profile_list {
	max-width: 800px;
	margin: 0 auto 80px auto;
}
ul.profile_list li {
	background: #fff;
	border-radius: 999px;
	padding: 10px 20px;
}
ul.profile_list li:not(:last-child) {
	margin-bottom: 18px;
}
ul.profile_list dl {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 20px;
}
ul.profile_list dt {
	width: 50%;
	display: flex;
	align-items: center;
	gap: 12px;
}
ul.profile_list dl dd {
	flex: 1;
	font-weight: 700;
	color: var(--base-color);
}
ul.profile_list .num {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--base-color);
	color: #fff;
	font-size: 1.2rem;
	line-height: 1;
}
ul.profile_list .question {
	flex: 1;
	color: #333;
}
/* 1240 */
@media (max-width: 1240px) {
	#Personal header {
		margin-bottom: max(6.452vw, 40px); //80px;
	}
	#Personal header span.eng1 {
		font-size: max(6.45vw, 5.4rem); //8.0rem;
		margin-bottom: max(1.613vw, 14px); //20px;
	}
	#Personal header h2 {
		font-size: max(1.77vw, 1.6rem); //2.2rem;
	}
	/* ul.profile_list */
	ul.profile_list {
		margin: 0 auto max(6.452vw, 56px) auto;
	}
}
/* 768 */
@media (max-width: 768px) {
	#Personal {
		padding-top: max(10.417vw, 60px); //80px;
	}
}
/* 580 */
@media (max-width: 580px) {
	/* ul.profile_list */
	ul.profile_list li {
		padding: 10px 12px;
		border-radius: 15px;
	}
	ul.profile_list dt {
		width: 100%;
		gap: 5px;
	}
	ul.profile_list dd {
		flex: initial;
		width: 100%;
		padding-left: 29px;
	}
}

/*--------------------------------------------------------------*/
/* Slogan */
/*--------------------------------------------------------------*/
#Slogan figure.slogan_img img {
	margin: 0 auto 80px auto;
}
#Slogan .slogan_h3 {
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.7;
	margin-bottom: 10px;
}
#Slogan .slogan_h2 {
	text-align: center;
	font-size: 2.6rem;
	line-height: 1.7;
	margin-bottom: 60px;
}
#Slogan .slogan_txt {
	text-align: center;
}
#Slogan dl {
	text-align: center;
	max-width: 700px;
	width: 100%;
	margin: 0 auto;
}
#Slogan dl dt {
	font-size: 1.8rem;
	padding: 30px;
	border-bottom: 1px solid #fff;
	letter-spacing: .2em;
}
#Slogan dl dd {
	padding: 25px;
	line-height: 3;
}
/* 1240 */
@media (max-width: 1240px) {
	#Slogan figure.slogan_img img {
		margin: 0 auto max(6.452vw, 50px) auto;
	}
	#Slogan .slogan_h3 {
		font-size: max(1.94vw, 1.7rem); //2.4rem;
		margin-bottom: 10px;
	}
	#Slogan .slogan_h2 {
		font-size: max(2.1vw, 1.8rem); //2.6rem;
		margin-bottom: max(4.839vw, 42px); //60px;
	}
	#Slogan .slogan_h2 {
		font-size: max(2.1vw, 1.8rem); //2.6rem;
		margin-bottom: max(4.839vw, 42px); //60px;
	}
	#Slogan dl dt {
		font-size: max(1.45vw, 1.6rem); //1.8rem;
		padding: max(2.419vw, 21px); //30px;
	}
	#Slogan dl dd {
		padding: max(2.016vw, 18px); //25px;
	}
}

/*--------------------------------------------------------------*/
/* Schedule */
/*--------------------------------------------------------------*/
#Schedule .body {
	color: #fff;
}
#Schedule .body .s_header {
	color:  #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin-bottom: 60px;
}
#Schedule .body .s_header a i {
	font-size: 2.4rem;
	transform: translateY(10px);
}
#Schedule h2 {
	font-size: 4.0rem;
}
#Schedule h2 span.month {
	font-size: 6.0rem;
	margin: 0 25px;
}
#Schedule .body .s_week {
	display: grid;
	grid-template-columns: repeat(7,1fr);
	text-align: center;
	margin-bottom: 20px;
}
#Schedule .body .s_week div {
	color: #fff;
	font-size: 3.0rem;
}
#Schedule .body .s_grid {
	display: grid;
	grid-template-columns: repeat(7,1fr);
	gap: 10px;
}
#Schedule .body .day {
	background: #fff;
	color: #333;
	border-radius: 12px;
	padding: 10px;
	min-height: 120px;
	position: relative;
}
#Schedule .body .day span.holiday {
	font-size: 1.2rem;
	position: absolute;
	top: 12%;
	left: 21%;
}
#Schedule .body .day.empty {
	background: transparent;
}
#Schedule .body .sun .day-num,
#Schedule .body .holiday .day-num {
	color:#e60012;
}
#Schedule .body .sat .day-num {
	color:#0066ff;
}
#Schedule .body .day-num {
	font-size: 2.8rem;
	margin-bottom: 8px;
}
#Schedule .body .day-content {
	font-size: 1.3rem;
	line-height: 1.3;
	display: flex;
	flex-direction: column;
	row-gap: 4px;
}
#Schedule .body .day-content span.g-opponent {
	margin-right: 4px;
}
#Schedule .body .day-content span.g-chushi {
	color: red;
}
#Schedule .body .day-content span.g-time {
	margin-right: 2px;
}
#Schedule .body .day-content span.g-score.lose {
	color: red;
}
#Schedule .body .day-content span.g-score.win {
	color: blue;
}
#Schedule .body .day-content a {
	color: #333;
	transition: color .3s ease;
}
#Schedule .body .day-content a i {
	color: var(--base-color);
	margin-right: 3px;
}
#Schedule .body .day-content a:hover {
	color: var(--corp-color);
}
/* 768 */
@media (max-width: 768px) {
	#Schedule .body .s_header {
		margin-bottom: 30px;
	}
	#Schedule .body .s_week {
		display: none;
	}
	#Schedule .body .s_grid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}
	#Schedule .body .day {
		display: flex;
		align-items: flex-start;
		column-gap: 20px;
		padding: 16px 20px;
		min-height: initial;
	}
	#Schedule .body .day.empty {
		display: none;
	}
	#Schedule .body .day-num {
		display: flex;
		align-items: flex-end;
		column-gap: 12px;
		line-height: 1;
		margin-bottom: 0;
		position: relative;
	}
	#Schedule .body .day-num span.dd {
		font-size: 4.0rem;
	}
	#Schedule .body .day-num span.ww {
		font-size: 2.4rem;
		margin-bottom: 3px;
	}
	#Schedule .body .day-content {
		font-size: 1.5rem;
	}
	#Schedule .body .day span.holiday {
		font-size: 1.0rem;
		position: absolute;
		top: -10px;
		left: 0;
		white-space: nowrap;
		letter-spacing: 0;
	}
}
/* 580 */
@media (max-width: 580px) {

}

/*--------------------------------------------------------------*/
/* Topics */
/*--------------------------------------------------------------*/
#TopicsList div.body .content.flg {
	max-width: 1340px;
}
#TopicsList .pd_custom {
	padding-top: 60px;
	padding-bottom: 90px;
}
/* ul.topics_list */
ul.topics_list {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 80px 3.5%;
}
ul.topics_list li {
	width: calc(93% / 3);
}
/* ul.cat_list */
ul.cat_list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 90px;
}
ul.cat_list li a {
	display: inline-block;
	white-space: nowrap;
	padding: 8px 20px;
	cursor: pointer;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
	color: var(--base-color);
	background: #fff;
	border: 1px solid #fff;
	border-radius: 30px;
	position: relative;
	transition: .2s ease;
}
ul.cat_list li a.active {
	background: #031b45;
	color: #fff;
	padding-right: 50px;
}
ul.cat_list li a.active::after {
	content: '\f00c';
	font-family: "Font Awesome 6 Free";
	font-weight: bold;
	color: #fff;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0, -50%);
}
ul.cat_list li a:hover:not(.active) {
	background: #e0e0e0;
}
/* 1360 */
@media (max-width: 1360px) {
	/* ul.cat_list */
	ul.cat_list {
		margin-bottom: max(6.618vw, 50px); //90px;
	}
	/* ul.topics_list */
	ul.topics_list {
		gap: max(5.882vw, 40px) 3.5%;
	}
	ul.topics_list .topic_card {
		border-radius: max(2.941vw, 20px); //40px;
		padding: max(1.471vw, 15px); //20px;
	}
	ul.topics_list .topic_card figure {
		border-radius: max(1.471vw, 14px); //20px;
	}
	ul.topics_list .topic_card .wrap {
		padding: max(1.471vw, 15px) 0;
		column-gap: 10px;
	}
	ul.topics_list .topic_card .wrap .category {
		width: max(5.882vw, 40px); //80px;
		font-size: max(1.47vw, 1.5rem); //2.0rem;
	}
	ul.topics_list .topic_card .wrap .text time {
		font-size: max(1.03vw, 1.2rem); //1.4rem;
	}
	ul.topics_list .topic_card .wrap .text h2 {
		font-size: max(1.18vw, 1.3rem); //1.6rem;
	}
}
/* 1240 */
@media (max-width: 1240px) {
	#TopicsList .pd_custom {
		padding-top: max(4.839vw, 40px); //60px;
		padding-bottom: max(7.258vw, 60px); //90px;
	}
	/* ul.cat_list */
	ul.cat_list li a {
		padding: max(0.484vw, 4px) max(1.613vw, 14px); //20px;
		font-size: max(1.61vw, 1.4rem)!important; //2.0rem;
	}
	ul.cat_list li a.active {
		padding-right: max(4.032vw, 35px); //50px;
	}
	ul.cat_list li a.active::after {
		right: max(1.613vw, 10px); //20px;
	}
}
/* 768 */
@media (max-width: 768px) {
	/* ul.topics_list */
	ul.topics_list li {
		width: calc(96.5% / 2);
	}
}
/* 580 */
@media (max-width: 580px) {
	#TopicsList .content {
		padding: 0 12px;
	}
	ul.cat_list li a {
		font-size: 1.2rem!important;
	}
	/* ul.topics_list */
	ul.topics_list {
		gap: 20px 3.5%;
	}
	ul.topics_list .topic_card .wrap .category {
		width: auto;
		background: initial;
		color: var(--base-color);
		font-size: 1.6rem;
		position: absolute;
		top: 11px;
		left: 0;
	}
	ul.topics_list .topic_card {
		border-radius: 14px;
		padding: 12px;
	}
	ul.topics_list .topic_card figure {
		border-radius: 9px;
	}
	ul.topics_list .topic_card .wrap {
		padding: 14px 0 10px 0;
	}
}

/*--------------------------------------------------------------*/
/* TopicsDetail */
/*--------------------------------------------------------------*/
#TopicsDetail {
	border-bottom: 8px solid var(--corp-color);
}
#TopicsDetail .breadcrumbs {
	padding-top: 0;
	padding-bottom: 10px;
}
#TopicsDetail .breadcrumbs span,
#TopicsDetail .breadcrumbs i,
#TopicsDetail .breadcrumbs a {
	color: #333;
}
#TopicsDetail .breadcrumbs a:hover span {
	color: var(--base-color);
}
.post-wrap {
	margin-bottom: 60px;
}
.post-wrap header {
	margin-bottom: 30px;
}
.post-wrap header figure {
	margin-bottom: 20px;
}
.post-wrap header figure img {
	object-fit: cover;
	width: 100%;
	height: 100%;
	max-width: 840px;
	max-height: 400px;
	border-radius: 30px;
}
.post-wrap header h1 {
	font-size: 2.8rem;
	font-weight: bold;
	margin-bottom: 20px;
	letter-spacing: 0;
}
.post-wrap header .timecat {
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 15px;
}
.post-wrap header .timecat time {
	font-size: 1.4rem;
	line-height: 1.4;
}
.post-wrap header .timecat ul.cat {
	display: inline-flex;
	align-items: center;
	gap: 0 6px;
}
.post-wrap header .timecat ul.cat li a {
	display: block;
	font-size: 1.4rem;
	line-height: 1.4;
	background: var(--base-color);
	color: #fff;
	padding: 1px 15px 0px 15px;
	line-height: 1.4;
	border-radius: 10px;
	transition: .3s ease;
}
body.is-pc .post-wrap header .timecat ul.cat li a:hover {
	background: var(--corp-color);
}
.post-wrap div.entry {
	border: 1px solid #ccc;
	padding: 45px 30px 35px 30px;
	background: #fff;
	border-radius: 30px;
}
.post-wrap div.entry p {
	font-size: 1.6rem;
	margin-bottom: 15px;
	color: #333;
}
.post-wrap div.entry p a {
	color: var(--corp-color);
	transition: .3s ease;
}
body.is-pc .post-wrap div.entry p a:hover {
	color: red;
}
.post-wrap div.entry figure {
	line-height: 1;
	margin-bottom: 20px;
}
.post-wrap div.entry figure figcaption {
	padding: 7px 5px;
	margin-top: -3px;
	background: #fbfbfb;
	line-height: 1.3;
	font-size: 1.4rem;
}
/* h1～h6 */
.post-wrap div.entry h1 {
	font-size: 2.8rem;
	font-weight: bold;
	background: #fffcf3;
	border-left: 5px solid var(--corp-color);
	padding: 5px 5px 6px 12px;
	margin-top: 35px;
	margin-bottom: 25px;
}
.post-wrap div.entry h2 {
	font-size: 2.8rem;
	font-weight: bold;
	background: #fffcf3;
	border-left: 5px solid var(--corp-color);
	padding: 3px 3px 5px 10px;
	margin-top: 35px;
	margin-bottom: 25px;
}
.post-wrap div.entry h3 {
	font-size: 2.6rem;
	font-weight: bold;
	background: #fffcf3;
	padding: 4px 5px 5px 12px;
	margin-top: 35px;
	margin-bottom: 25px;
	border-bottom: 2px solid var(--corp-color);
}
.post-wrap div.entry h4 {
	font-size: 2.6rem;
	font-weight: bold;
	margin-top: 35px;
	margin-bottom: 25px;
	padding: 5px;
	border-bottom: 2px solid var(--corp-color);
}
.post-wrap div.entry h5 {
	font-size: 2.6rem;
	font-weight: bold;
	margin-top: 35px;
	margin-bottom: 25px;
	padding: 5px;
	border-bottom: 2px solid var(--base-color);
}
.post-wrap div.entry h6 {
	font-size: 2.6rem;
	font-weight: bold;
	font-weight: bold;
	margin-top: 35px;
	margin-bottom: 25px;
	padding: 5px;
}
.post-wrap div.entry ul {
	list-style-type: disc;
	margin-left: 20px;
	margin-top: 20px;
	margin-bottom: 15px;
}
.post-wrap div.entry ul li {
	font-size: 1.6rem;
	color: #333;
}
/* blockquote */
.post-wrap div.entry blockquote {
	position: relative;
	padding: 35px 15px 10px 15px;
	box-sizing: border-box;
	font-style: italic;
	background: #fffcf3;
	color: #333;
	border-left: 4px solid var(--corp-color);
}
.post-wrap div.entry blockquote::before{
	display: inline-block;
	position: absolute;
	top: 5px;
	left: 3px;
	content: "“";
	font-family: sans-serif;
	color: var(--corp-color);
	font-size: 5.5rem;
	line-height: 1;
}
.post-wrap div.entry blockquote p {
	padding: 0;
	margin: 7px 0;
	line-height: 1.7;
}
.post-wrap div.entry blockquote cite {
	display: block;
	text-align: right;
	color: #888888;
	font-size: 0.9em;
}
/* hr */
.post-wrap div.entry hr {
	border-top: none;
	border-bottom: 1px dotted #dcdcdc;
	margin: 30px 0;
}
/* wp-block-columns */
.wp-block-columns {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
/* wp-block-button */
.wp-block-button {
	display: inline-block;
	margin: 10px;
}
.wp-block-button .wp-block-button__link {
	display: block;
	position: relative;
	max-width: 200px;
	width: 100%;
	text-align: center;
	margin: 20px;
	padding: 10px;
	color: #fff;
	background: var(--corp-color);
	border: none;
	font-size: 1.6rem;
	transition: 0.3s all;
}
.wp-block-button .wp-block-button__link::after {
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	color: #fff;
	font-family: "Ionicons";
	content: '\f488';
	font-size: 1.4rem;
	transition: 0.3s all;
}
body.is-pc .wp-block-button .wp-block-button__link:hover {
	background: var(--corp-color);
	color: #fff;
	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.4);
	opacity: 0.9;
}
body.is-pc .wp-block-button .wp-block-button__link:hover::after {
	right: 10px;
}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
	background: linear-gradient(0deg, var(--base-color), #0000);
}
/* table */
.post-wrap div.entry table {
	width: 100%;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
}
.post-wrap div.entry table thead {
	border: none;
}
.post-wrap div.entry table th {
	border-top: none;
	border-left: none;
	background: #fffcf3;
	text-align: center;
}
.post-wrap div.entry table th,
.post-wrap div.entry table td {
	color: #333;
	padding: 15px;
	border-top: none;
	border-left: none;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-size: 1.6rem;
}
.post-wrap div.entry table.page_navi {
	margin-top: 30px;
	width: 100%;
	background: #fff;
	border: none;
}
.post-wrap div.entry table.page_navi th,
.post-wrap div.entry table.page_navi td {
	border: none;
	width: calc(100%/3);
	text-align: center;
}
/* gallery */
.post-wrap div.entry ul.blocks-gallery-grid {
	list-style-type: none;
	margin: 0;
	display: flex;
	justify-content: space-between;
}
/* 580 */
@media (max-width: 580px) {
	.post-wrap header figure img {
		border-radius: 15px;
	}
	.post-wrap {
		margin-bottom: 40px;
	}
	.post-wrap div.entry {
		padding: 35px 20px 25px 20px;
		border-radius: 15px;
	}
	.post-wrap header h1 {
		font-size: 2.2rem;
	}
	.post-wrap div.entry p {
		font-size: 1.4rem;
	}
	/* h1～h6 */
	.post-wrap div.entry h1 {
		font-size: 2.2rem;
	}
	.post-wrap div.entry h2 {
		font-size: 2.2rem;
	}
	.post-wrap div.entry h3 {
		font-size: 2.0rem;
	}
	.post-wrap div.entry h4 {
		font-size: 2.0rem;
	}
	.post-wrap div.entry h5 {
		font-size: 2.0rem;
	}
	.post-wrap div.entry h6 {
		font-size: 2.0rem;
	}
	.post-wrap div.entry ul li {
		font-size: 1.4rem;
	}
	.post-wrap div.entry table th,
	.post-wrap div.entry table td {
		font-size: 1.4rem;
	}
}

/*--------------------------------------------------------------*/
/* TopicsDetail ul.games_list */
/*--------------------------------------------------------------*/
#TopicsDetail div.bk {
	border-top: 7px solid var(--corp-color);
	border-bottom: 7px solid var(--corp-color);
	color: #fff;
	margin-bottom: 40px;
	background: url(../images/bk_line.svg), var(--base-color);
	background-repeat: repeat;
	background-size: 170px;
	background-position: center center;
}

/*--------------------------------------------------------------*/
/* ページャー 一覧ページ用 */
/*--------------------------------------------------------------*/
.navigation {
	margin-top: 80px;
	text-align: center;
}
ul.page-numbers {
	display: inline-flex;
	column-gap: 10px;
	margin: 0 auto;
}
ul.page-numbers li a {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3.0rem;
	font-family: abolition, sans-serif;
	aspect-ratio: 1 / 1;
	width: 60px;
	border: 1px solid #fff;
	border-radius: 50%;
	text-decoration: none;
	transition: .3s ease;
}
ul.page-numbers li span.current {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3.0rem;
	font-family: abolition, sans-serif;
	aspect-ratio: 1 / 1;
	width: 60px;
	border-radius: 50%;
	color: background: var(--base-color);;
	background: #fff;
}
body.is-pc ul.page-numbers li a:hover {
	border-color: #1f5198;
	background: #1f5198;
	color: #fff;
}
ul.page-numbers li a.next,
ul.page-numbers li a.prev {
	border: none;
	font-size: 2.4rem;
	aspect-ratio: initial;
	width: initial;
	height: 100%;
}
ul.page-numbers li span.dots {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	height: 100%;
}
/* 1240 */
@media (max-width: 1240px) {
	.navigation {
		margin-top: max(6.452vw, 56px); //80px;
	}
	ul.page-numbers {
		column-gap: max(0.806vw, 7px); //10px;
	}
	ul.page-numbers li a {
		font-size: max(2.42vw, 2.1rem); //3.0rem;
		width: max(4.839vw, 40px); //60px;
	}
	ul.page-numbers li span.current {
		font-size: max(2.42vw, 2.1rem); //3.0rem;
		width: max(4.839vw, 42px); //60px;
	}
	ul.page-numbers li a.next,
	ul.page-numbers li a.prev {
		font-size: max(1.94vw, 1.7rem); //2.4rem;
	}
}

/*--------------------------------------------------------------*/
/* ページャー 詳細ページ用 */
/*--------------------------------------------------------------*/
/* table */
table.page_navi {
	border-collapse: separate;
	margin-top: 40px;
	margin-bottom: 0px;
	margin-left: auto;
	margin-right: auto;
	max-width: 600px;
	width: 100%;
	background: #fff;
	border: 1px solid #444;
	border-radius: 3px;
}
table.page_navi th,
table.page_navi td {
	border: none;
	width: calc(100%/3);
	text-align: center;
}
table.page_navi td div.ya a {
	transition: .3s ease;
}
body.is-pc table.page_navi td div.ya a:hover {
	color: #ea4737;
}
table.page_navi td div.ya a i.fa-angle-left {
	margin-right: 8px;
}
table.page_navi td div.ya a i.fa-angle-right {
	margin-left: 8px;
}
/* 580 */
@media (max-width: 580px) {
	table.page_navi th,
	table.page_navi td {
		padding: 10px 0;
	}
}

/*--------------------------------------------------------------*/
/* 404 */
/*--------------------------------------------------------------*/
#Fn404 {
	background: #fff;
	padding: 60px 20px;
	max-width: 700px;
	margin: 0 auto;
	border-radius: 30px;
	border: 10px solid var(--corp-color);
}
#Fn404 p {
	text-align: center;
	line-height: 2.2;
	color: #333;
}
#Fn404 p a {
	color: var(--corp-color);
	text-decoration: underline;
	transition: .3s ease;
}
body.is-pc #Fn404 p a:hover {
	color: var(--base-color);
	text-decoration: none;
}
/* 1240 */
@media (max-width: 1240px) {
	#Fn404 {
		background: #fff;
		padding: max(4.839vw, 40px) 20px;
		max-width: 700px;
		margin: 0 auto;
		border-radius: 30px;
		border: 10px solid var(--corp-color);
	}
}

/*--------------------------------------------------------------*/
/* footer */
/*--------------------------------------------------------------*/
footer div.npg {
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 8;
	padding: 5px 15px;
	max-width: 200px;
	min-width: 160px;
	width: 25%;
	background: #fff;
	box-shadow: 0 0 4px 1px rgba(6, 39, 96, 0.5);
	opacity: 0;
	transition: opacity 1s ease;
}
footer div.npg.is-visible {
	opacity: 1;
}
footer div.foot {
	padding-bottom: 60px;
	background: url(../images/bk_line.svg), var(--base-color);
	background-repeat: repeat;
	background-size: 170px;
	background-position: center center;
}
footer div.foot * {
	color: #fff;
}
footer div.foot > .flex {
	align-items: stretch;
}
footer div.foot > .flex ._left {
	padding-bottom: 90px;
	transition: .2s ease;
}
footer div.foot > .flex ._right {
	flex: 1;
	position: relative;
}
footer div.foot > .flex ._right div._big {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	aspect-ratio: 3 / 2;
	max-width: 660px;
}
footer div.foot > .flex ._right div._small {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	aspect-ratio: 3 / 2;
	max-width: 540px;
}
footer div.foot > .flex ._right div._small img,
footer div.foot > .flex ._right div._big img {
	border-radius: 30px;
}
/* logo */
footer div.foot div.logo {
	width: 60%;
	white-space: nowrap;
}
footer div.foot div.logo a {
	display: inline-flex;
	align-items: center;
	gap: 0 10px;
}
footer div.foot div.logo a .flex {
	align-items: center;
	flex-wrap: nowrap;
	gap: 0 12px;
}
footer div.foot div.logo a img {
	width: 85px;
	transition: .5s ease;
}
footer div.foot div.logo a div.text {
	line-height: 1.4;
	flex: 1;
	display: inline-flex;
	flex-direction: column;
	gap: 5px 0;
	text-align: left;
}
footer div.foot div.logo a div.text span {
	transition: .5s ease;
}
footer div.foot div.logo a div.text span.name {
	font-size: 2.8rem;
	font-weight: 700;
	transition: .3s ease;
}
footer div.foot div.logo a div.text span.eng1 {
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: .07em;
	margin-left: 4px;
	transition: .3s ease;
}
body.is-pc footer div.foot div.logo a:hover .name {
	color: #fff;
	/*transform: translateX(4px);*/
}
body.is-pc footer div.foot div.logo a:hover .eng1 {
	color: #fff;
	/*transform: translateX(8px);*/
}
/* nav */
footer .wrap {
	padding-left: 120px;
}
footer nav {
	max-width: 400px;
	margin: 0 auto;
	padding-left: 20px;
}
footer nav ul {
	display: flex;
	flex-direction: column;
	row-gap: 25px;
	margin: 60px 0;
}
footer nav ul li a {
	display: inline-flex;
	align-items: center;
	column-gap: 10px;
}
footer nav ul li img {
	transition: .3s ease;
}
body.is-pc footer nav ul li a:hover img {
	transform: rotate(-4deg);
}
footer nav ul li a span.txt {
	transition: .3s ease;
}
body.is-pc footer nav ul li a:hover span.txt {
	transform: translateX(4px);
}
footer .copy {
	font-size: 1.2rem;
}
/* 1460 */
@media (max-width: 1460px) {
	footer div.foot > .flex ._left {
		padding-bottom: max(5.769vw, 0px); //90px;
	}
	footer div.foot > .flex ._right div._big {
		width: 66%;
		transition: .2s ease;
	}
	footer div.foot > .flex ._right div._small {
		width: 55%;
		transition: .2s ease;
	}
}
/* 1200 */
@media (max-width: 1200px) {
	footer div.foot > .flex ._left {
		padding-bottom: 0px;
	}
	/* nav */
	footer .wrap {
		padding-left: max(7.692vw, 84px); //120px;
	}
	footer nav ul {
		margin: max(3.846vw, 25px) 0 max(3.846vw, 40px) 0;
		row-gap: max(1.603vw, 18px); //25px;
	}
}
/* 860 */
@media (max-width: 860px) {
	footer div.foot > .flex ._right div._big {
		width: 76%;
	}
	footer div.foot > .flex ._right div._small {
		width: 65%;
	}
}
/* 768 */
@media (max-width: 768px) {
	footer div.foot > .flex ._right div._big,
	footer div.foot > .flex ._right div._small {
		display: none;
	}
	footer div.foot > .flex ._left {
		padding-bottom: 0;
		width: 100%;
	}
	footer div.foot div.logo {
		width: 100%;
		text-align: center;
	}
	/* nav */
	footer .wrap {
		padding-left: 0;
	}
	footer nav ul {
		display: flex;
		flex-direction: initial;
		flex-wrap: wrap;
		gap: 15px 2%;
	}
	footer nav ul li {
		width: calc(98% / 2);
	}
	footer .copy {
		text-align: center;
	}
}
/* 580 */
@media (max-width: 580px) {

}

/* 1240 */
@media (max-width: 1240px) {
	footer div.foot div.logo a img {
		width: max(6.855vw, 59px); //85px;
	}
	footer div.foot div.logo a div.text span.name {
		font-size: max(2.26vw, 1.75rem); //2.8rem;
	}
	footer div.foot div.logo a div.text span.eng1 {
		font-size: max(1.61vw, 1.4rem); //2.0rem;
	}
}
/* 580 */
@media (max-width: 580px) {
	footer div.npg {
		display: none;
	}
	footer nav {
		max-width: 400px;
		margin: 0 auto;
		padding-left: 0px;
	}
	footer nav ul {
		gap: 15px 0%;
	}
	footer nav ul li a {
		font-size: 1.35rem;
		column-gap: 6px;
	}
	/* logo */
	footer div.foot div.logo {
		width: 100%;
	}
}


