@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Roboto:wght@400;700&display=swap');
/* LOAD ---DESTYLE.CSS RESET */
/*  Z-INDEX ========
.sp-banner 200
#toggle-button 140
.global-header 120
#header-nav 130
.js-overlayer 110
#fixed-sidebar 100
#go-pagetop 90
*/
/*  BREAKPOINT ========
    breakpoint-sm: 0〜;f
    breakpoint-md: 769px〜
    breakpoint-lg: 1057px〜;
*/ :root {
	/*=======*/
	--font-sans: 'Roboto', 'Noto Sans JP', sans-serif;
	--primary: #1a9e3d;
	--primary-dark: #138632;
	--primary-light: #1fad4;
	--green-bg: #f4faf0;
	--secondary: #11694c;
	--secondary-dark: #165a43;
	--secondary-light: #0d915c;
	--dgreen-bg: #daf1ea;
	--red: #f06c4e;
	--blue: #4e72f0;
	--hightlight: #cbf32a;
	--main-bg: #defaf1;
	--red-bg: #FDE9E5;
	--blue-bg: #e5eafd;
	--r-black: #000000;
	--black: #222222;
	--glay1: #3f3f3f;
	--gray2: #5c5c5c;
	--gray3: #777777;
	--gray4: #9e9e9e;
	--gray5: #bbbbbb;
	--gray6: #cecece;
	--gray7: #d9d9d9;
	--gray8: #e6e6e6;
	--gray9: #f6f6f6;
	--white: #ffffff;
	--gradient1: linear-gradient(90deg, var(--primary), var(--secondary));
	--rad-s: 2px;
	--rad-m: 4px;
	--box-shadow1: 0 0 6px rgba(0, 0, 0, 0.25);
	--box-shadow2: 0 0 8px rgba(0, 0, 0, 0.14);
	--box-shadow3: 0 0 3px rgba(0, 0, 0, 0.20) inset;
	--box-shadow4: 0 0 2px rgba(0, 0, 0, 0.20) inset;
	/*=======*/
	--x-margin: 16px; /* 基本左右パディング*/
	--base-margin-m: 12px;
	--base-margin-l: 32px;
}
@media screen and (min-width: 769px) {
	:root {
		--x-margin: 16px; /* 基本左右パディング*/
		--base-margin-m: 16px;
		--base-margin-l: 40px;
	}
}
@media screen and (min-width: 1057px), print {
	:root {
		--x-margin: calc((100% - 1024px) / 2);
	}
}
@media screen and (max-width: 374.98px) {
	:root {
		font-size: 4.266666666666667vw;
	}
}
html {
	word-break: break-word;
}
body {
	font-size: 0.875rem; /*14px*/
	font-weight: 400;
	line-height: 1.5;
	font-family: var(--font-sans);
	text-align: justify;
	text-justify: inter-character;
	line-break: normal;
	background-color: var(--main-bg);
	color: var(--black);
}
::-moz-selection {
	background-color: #b3d4fc;
	color: #000000;
	text-shadow: none;
}
::selection {
	background-color: #b3d4fc;
	color: #000000;
	text-shadow: none;
}
/*  iPHONE X〜 */
body > * {
	padding-right: constant(safe-area-inset-right);
	padding-right: env(safe-area-inset-right);
	padding-left: constant(safe-area-inset-left);
	padding-left: env(safe-area-inset-left);
}
img {
	width: 100%;
	height: auto;
}
a {
	outline: none;
	color: var(--link-color);
}
a.link {
	color: var(--primary);
	text-decoration: underline;
}
a:focus {
	outline: none;
}
@media (hover: hover) {
	a {
		transition: color 200ms ease, background-color 200ms ease, opacity 200ms ease;
	}
}
/* ============================== */
/*  フォーム部品  */
/* ============================== */
[type="text"], [type="email"], [type="search"], [type="tel"], [type="url"], [type="password"], textarea {
	font-size: 1rem; /*16px*/
	line-height: 1.375;
	padding: 0.25em 8px;
	border: 1px solid var(--gray7);
	border-radius: var(--rad-s);
	transition: 100ms;
	width: 100%;
	box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.1) inset;
}
input:focus, textarea:focus {
	outline: none;
}
[type="text"]:focus, [type="email"]:focus, [type="search"]:focus, [type="tel"]:focus, [type="url"]:focus, [type="password"]:focus, textarea:focus {
	border-color: var(--gray7);
}
::placeholder {
	color: #bbbbbb;
	opacity: 1;
}
.req-input:placeholder-shown {
	border-color: var(--gray7);
}
.req-input {
	border-color: var(--primary);
}
@media screen and (min-width: 769px), print {
	[type="text"], [type="email"], [type="search"], [type="tel"], [type="url"], [type="password"], textarea {
		font-size: 0.875rem; /*14px*/
		line-height: 1.4;
		padding: 0.383928571428571em 8px;
	}
}
/*=================*/
/* SELECT-BOX */
.form-select-box {
	position: relative;
}
select {
	font-size: 0.875rem; /*14px*/
	line-height: 1.4;
	padding: 0.371428571428571em 8px;
	-webkit-appearance: none;
	appearance: none;
	background: transparent url("../images/caret_down.svg") no-repeat right 10px center;
	background-size: 10px;
	border: 1px solid var(--primary);
	border-radius: var(--rad-s);
	padding-right: 24px;
	cursor: pointer;
	text-overflow: ellipsis;
	outline: none;
	box-shadow: none;
	vertical-align: middle;
	text-align: left;
}
select.is-empty {
	border-color: var(--gray7);
	color: var(--gray5);
}
option {
	color: var(--black);
}
option:disabled {
	color: var(--gray5);
}
/*=================*/
/* 学校アイコンチェックボックス */
.form-image-check {
	display: flex;
}
.form-image-check li:not(:first-child) {
	margin-left: 4px;
}
.form-image-check .check-label {
	display: flex;
}
.form-image-check .check-label [type="checkbox"] {
	display: none;
}
.form-image-check .check-label .label-text {
	background-size: 24px;
	background-position: center;
	background-repeat: no-repeat;
	overflow: hidden;
	text-indent: -9999px;
	opacity: 0.3;
	transition: opacity 100ms;
	border: 1px solid #808080;
	width: 32px;
	height: 32px;
	border-radius: var(--rad-s);
}
/* checkbox checked */
.form-image-check .check-label [type="checkbox"]:checked + .label-text {
	opacity: 1;
	border-color: var(--primary);
}
/* checkbox disabled */
.form-image-check .check-label [type="checkbox"]:disabled + .label-text {
	opacity: 0.5;
}
.form-image-check .check-label [type="checkbox"]:disabled + .label-text::before {
	border-color: #ccc;
	background: #ccc;
}
/* 学校アイコンラジオボタン */
.form-image-radio {
	display: flex;
}
.form-image-radio li:not(:first-child) {
	margin-left: 4px;
}
.form-image-radio .radio-label {
	display: flex;
	margin: 0;
}
.form-image-radio .radio-label [type="radio"] {
	display: none;
}
.form-image-radio .radio-label .label-text {
	background-size: 24px;
	background-position: center;
	background-repeat: no-repeat;
	overflow: hidden;
	text-indent: -9999px;
	opacity: 0.3;
	transition: opacity 100ms;
	border: 1px solid #808080;
	width: 32px;
	height: 32px;
	border-radius: var(--rad-s);
}
/* radio checked */
.form-image-radio .radio-label [type="radio"]:checked + .label-text {
	opacity: 1;
	border-color: var(--primary);
	background-color: #fff;
}
/* radio disabled */
.form-image-radio .radio-label [type="radio"]:disabled + .label-text {
	opacity: 0.5;
	background-color: #fff;
}
.form-image-radio .radio-label [type="radio"]:disabled + .label-text::before {
	border-color: #ccc;
	background: #ccc;
}
/*========*/
/* radio */
.radio-label [type="radio"] {
	display: none;
}
.radio-label { /* ベースの部分 */
	margin-right: 8px;
}
.radio-label .label-text {
	display: inline-flex;
	align-items: center;
	position: relative;
	font-size: 1rem; /*16px*/
	font-size: 0.875rem; /*14px*/
	line-height: 1.375;
	padding: 4px 1em;
	border: 1px solid var(--gray7);
	color: var(--gray5);
	border-radius: var(--rad-s);
	transition: 100ms;
}
/* radio checked */
.radio-label [type="radio"]:checked + .label-text {
	border-color: var(--primary);
	background-color: var(--primary);
	color: var(--white);
}
/* radio disabled */
.radio-label [type="radio"]:disabled + .label-text {
	opacity: 0.5;
}
.radio-label [type="radio"]:disabled + .label-text::after {
	border-color: #ccc;
	background: #ccc;
}
/* ============================== */
/*  GENERAL */
/* ============================== */
.align-center {
	text-align: center;
}
.align-left {
	text-align: left;
}
#page .mt-m {
	margin-top: var(--base-margin-m);
}
#page .mt-l {
	margin-top: var(--base-margin-l);
}
.font-light {
	font-weight: 400;
}
@media screen and (max-width: 1056.98px) {
	.only-lg {
		display: none;
	}
}
.em {
	font-weight: 700;
}
.video-container iframe {
	width: 100%;
}
@media screen and (min-width: 769px), print {
	.video-container iframe {
		height: 400px;
	}
}
/* ============================== */
/*  LAYOUT */
/* ============================== */
#page {
	width: 100%;
	position: relative;
}
.chart + .chart {
	margin-top: var(--base-margin-m);
}
/* ============================== */
/*  下層ページ 上部 */
/* ============================== */
.page-header, .article-header {
	padding: 56px var(--x-margin) 0;
	background: var(--secondary);
}
.page-title, .article-title {
	background: var(--secondary-dark);
	font-size: 1.25rem; /*20px*/
	font-weight: 700;
	padding: 0.25em 8px; /*40px*/
	color: #fff;
	text-align: center;
	border-radius: var(--rad-m);
	margin: 0 0 4px;
}
.page-lead, .article-lead {
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	color: #fff;
	margin-top: 11px;
	padding-bottom: 11px;
}
@media screen and (min-width: 769px), print {
	.page-header, .article-header {
		padding: 112px var(--x-margin) 0;
	}
	.article-title, .page-title {
		background: var(--secondary-dark);
		font-size: 1.75rem; /*28px*/
		padding: 0.25em 0.5em; /*56px*/
		margin: 0 0 10px;
	}
	.article-lead, .page-lead {
		font-size: 1.25rem; /*20px*/
		text-align: center;
		margin-top: 21px;
		padding-bottom: 21px;
	}
}
.article-body {
	margin-top: 16px;
}
@media screen and (min-width: 769px), print {
	.article-body {
		margin-top: 24px;
	}
}
/* overwrapクラス（セクションをヘッダーに重ねる場合）overwrap-all=すべての幅、overwrap-smmd=1057未満 */
.page-header.overwrap-all, .article-header.overwrap-all {
	padding-bottom: 22px;
}
.page-header.overwrap-all + .page-body, .article-header.overwrap-all + .article-body {
	margin-top: -22px;
	z-index: 1;
	position: relative;
	padding-top: 0;
}
@media screen and (min-width: 769px), print {
	.page-header.overwrap-all, .article-header.overwrap-all {
		padding-bottom: 40px;
	}
	.page-header.overwrap-all + .page-body, .article-header.overwrap-all + .article-body {
		margin-top: -40px;
	}
}
/*重ねるのが1057以下のみ*/
@media screen and (max-width: 768.98px) {
	.page-header.overwrap-smmd, .article-header.overwrap-smmd {
		padding-bottom: 22px;
	}
	.page-header.overwrap-smmd + .page-body, .article-header.overwrap-smmd + .article-body {
		margin-top: -22px;
		z-index: 1;
		position: relative;
		padding-top: 0;
	}
}
@media screen and (min-width: 769px) and (max-width: 1056.98px) {
	.page-header.overwrap-smmd, .article-header.overwrap-smmd {
		padding-bottom: 40px;
	}
	.page-header.overwrap-smmd + .page-body, .article-header.overwrap-smmd + .article-body {
		margin-top: -40px;
	}
}
@media screen and (min-width: 1057px), print {
	.article-header.overwrap-all + .article-body .sidebar.no-overwrap {
		margin-top: calc(24px + 40px);
	}
}
/* 大学ページ-ヘッダ */
article.university::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 88px;
	background-color: var(--secondary);
}
article.university .main-area {
	padding-top: calc(88px - 22px);
	z-index: 1;
	position: relative;
}
article.university .article-header {
	background: transparent;
	padding: 0;
}
article.university .article-header > .chapter-section-s {
	margin-top: 0;
}
article.university .article-body {
	margin-top: 0;
	padding-top: 0;
}
article.university > .sidebar .chapter-section-s {
	margin-top: var(--base-margin-l);
}
@media screen and (min-width: 769px), print {
	article.university::before {
		height: 160px;
	}
	article.university > .main-area {
		padding-top: calc(160px - 40px);
	}
}
@media screen and (min-width: 1057px), print {
	article.university {
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
		width: 1024px;
		margin: 0 auto;
	}
	article.university > .main-area {
		width: 760px;
		padding-top: calc(160px - 40px);
	}
	article.university > .sidebar {
		width: 240px;
		margin-top: calc(160px + 24px);
	}
	article.university > .sidebar .chapter-section-s {
		margin-top: 0;
	}
	article.university .chapter-section-s {
		margin-left: 0;
		margin-right: 0;
	}
}
/* 主要なセクション */
.chapter-section, .chapter-section-s {
	margin: 0 var(--x-margin) var(--base-margin-l);
}
.chapter-section.section-a, .chapter-section-s.section-a {
	margin-bottom: 12px;
}
.chapter-section.section-a .section-body, .chapter-section-s.section-a .section-body {
	padding-bottom: 20px
}
.article-body > .section-a:last-child, .main-area > .section-a:last-child, .sidebar > .section-a:last-child, .panel > .section-a:last-child {
	margin-bottom: 0;
}
.article-body > .section-a:last-child .section-body, .main-area > .section-a:last-child .section-body, .sidebar > .section-a:last-child .section-body, .panel > .section-a:last-child .section-body {
	padding-bottom: 0;
}
@media screen and (min-width: 769px), print {
	.chapter-section-s {
		max-width: 760px;
		margin: 0 auto var(--base-margin-l);
	}
	.chapter-section.section-a, .chapter-section-s.section-a {
		margin-bottom: 16px;
	}
	.chapter-section.section-a .section-body, .chapter-section-s.section-a .section-body {
		padding-bottom: 24px
	}
}
/* サイドバーあり */
.article-body.has-sidebar .sidebar > *:first-child {}
.article-body.has-sidebar.row-reverse .sidebar > *:first-child {
	margin-top: var(--base-margin-l);
}
@media screen and (min-width: 1057px), print {
	.article-body.has-sidebar {
		display: flex;
		justify-content: space-between;
		width: 1024px;
		margin-left: auto;
		margin-right: auto;
	}
	.article-body.has-sidebar.row-reverse {
		flex-direction: row-reverse;
	}
	.article-body.has-sidebar .sidebar {
		width: 320px;
	}
	.article-body.has-sidebar .main-area {
		width: 680px;
	}
	.article-body.has-sidebar.narrow-sidebar .sidebar {
		width: 240px;
	}
	.article-body.has-sidebar.narrow-sidebar .main-area {
		width: 760px;
	}
	.article-body.has-sidebar .chapter-section {
		margin-left: 0;
		margin-right: 0;
	}
	.article-body.has-sidebar .main-area > *:first-child {
		margin-top: 0;
	}
	.article-body.has-sidebar.row-reverse .sidebar > *:first-child {
		margin-top: 0;
	}
}
#fixed-sidebar.js-fixed {
	position: fixed;
	top: 12px;
	right: var(--x-margin);
	z-index: 100;
}
/* 白い背景padding8→12 */
.base-a {
	padding: 8px;
	background-color: var(--white);
	border-radius: var(--rad-m);
}
@media screen and (min-width: 769px), print {
	.base-a {
		padding: 12px;
	}
}
/* 白い背景（マージンなし） */
.base-b {
	background-color: var(--white);
	border-radius: var(--rad-m);
	overflow: hidden;
}
/* 白い背景padding12→16 */
.base-c {
	padding: 12px;
	background-color: var(--white);
	border-radius: var(--rad-m);
}
@media screen and (min-width: 769px), print {
	.base-c {
		padding: 16px;
	}
}
/* 白い背景padding12 */
.base-d {
	padding: 12px;
	background-color: var(--white);
	border-radius: var(--rad-m);
}
/* 白い背景（子要素にp） */
.base-e {
	font-size: 0.75rem; /*12px*/
	background: #fff;
	border-radius: var(--rad-m);
	padding: 0.75em 12px; /*36*/
}
@media screen and (min-width: 769px), print {
	.base-e {
		font-size: 0.875rem; /*14px*/
		padding: 0.678571428571429em 12px; /*40*/
	}
}
/* カラム（2カラム） */
.columns {
	display: flex;
	flex-wrap: wrap;
}
.columns.cl-2 > * {
	width: calc((100% - 8px) / 2);
	margin-left: 8px;
	margin-top: 8px;
}
.columns.cl-2 > *:nth-child(2n + 1) {
	margin-left: 0;
}
.columns.cl-2 > *:nth-child(-n + 2) {
	margin-top: 0;
}
/* カラム（2カラム→769px以上で3カラム） */
.columns.cl-2-3-3 > * {
	width: calc((100% - 8px) / 2);
	margin-left: 8px;
	margin-top: 8px;
}
.columns.cl-2-3-3 > *:nth-child(2n + 1) {
	margin-left: 0;
}
.columns.cl-2-3-3 > *:nth-child(-n + 2) {
	margin-top: 0;
}
@media screen and (min-width: 769px), print {
	.columns.cl-2-3-3 > *:nth-child(n) {
		width: calc((100% - 8px * 2) / 3);
		margin-left: 8px;
		margin-top: 8px;
	}
	.columns.cl-2-3-3 > *:nth-child(3n + 1) {
		margin-left: 0;
	}
	.columns.cl-2-3-3 > *:nth-child(-n + 3) {
		margin-top: 0;
	}
}
/* カラム（1カラム→769px以上で2カラム） */
.columns.cl-1-2-2 > * {
	width: 100%;
	margin-top: 8px;
}
.columns.cl-1-2-2 > *:first-child {
	margin-top: 0;
}
@media screen and (min-width: 769px), print {
	.columns.cl-1-2-2 > *:nth-child(n) {
		width: calc((100% - 12px) / 2);
		margin-top: 12px;
		margin-left: 12px;
	}
	.columns.cl-1-2-2 > *:nth-child(2n + 1) {
		margin-left: 0;
	}
	.columns.cl-1-2-2 > *:nth-child(-n + 2) {
		margin-top: 0;
	}
}
.columns.cl-1-2-2.gap-l > * {
	width: 100%;
	margin-top: 16px;
}
.columns.cl-1-2-2.gap-l > *:first-child {
	margin-top: 0;
}
@media screen and (min-width: 769px), print {
	.columns.cl-1-2-2.gap-l > *:nth-child(n) {
		width: calc((100% - 16px) / 2);
		margin-top: 16px;
		margin-left: 16px;
	}
	.columns.cl-1-2-2.gap-l > *:nth-child(2n + 1) {
		margin-left: 0;
	}
	.columns.cl-1-2-2.gap-l > *:nth-child(-n + 2) {
		margin-top: 0;
	}
}
/* gap長-天地12、左右16　*/
.columns.cl-1-2-2a > * {
	width: 100%;
	margin-top: 4px;
}
.columns.cl-1-2-2a > *:first-child {
	margin-top: 0;
}
@media screen and (min-width: 769px), print {
	.columns.cl-1-2-2a > *:nth-child(n) {
		width: calc((100% - 16px) / 2);
		margin-top: 12px;
		margin-left: 16px;
	}
	.columns.cl-1-2-2a > *:nth-child(2n + 1) {
		margin-left: 0;
	}
	.columns.cl-1-2-2a > *:nth-child(-n + 2) {
		margin-top: 0;
	}
}
/* カラム（1カラム→769px以上、1056以下で2カラム） */
.columns.cl-2-2-1 > * {
	width: 100%;
	margin-top: 8px;
}
.columns.cl-2-2-1 > *:first-child {
	margin-top: 0;
}
@media screen and (max-width: 1056.98px) {
	.columns.cl-2-2-1 > *:nth-child(n) {
		width: calc((100% - 8px) / 2);
		margin-top: 8px;
		margin-left: 8px;
	}
	.columns.cl-2-2-1 > *:nth-child(2n + 1) {
		margin-left: 0;
	}
	.columns.cl-2-2-1 > *:nth-child(-n + 2) {
		margin-top: 0;
	}
}
.one-column > *:not(:first-child) {
	margin-top: 8px;
}
/* ============================== */
/*  ぱんくずナビ  */
/* ============================== */
.breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	font-size: 0.75rem; /*12px*/
	list-style-type: none;
	margin: 0.416666666666667em 0 0;
	padding-bottom: 0.416666666666667em; /*h28px*/
}
.breadcrumb li {
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	vertical-align: middle;
	color: rgba(255, 255, 255, 0.5);
}
.breadcrumb li + li::before {
	content: "/";
	margin: 0 0.5em;
	color: rgba(255, 255, 255, 0.5);
}
.breadcrumb a {
	color: var(--white);
	text-decoration: underline;
}
@media screen and (min-width: 769px), print {
	.breadcrumb ol {
		font-size: 0.875rem; /*14px*/
		margin: 0.821428571428571em 0 0;
		padding-bottom: 0.821428571428571em; /*h44px*/
	}
}
/* ============================== */
/*  サイドバーナビゲーション */
/* ============================== */
.local-nav-list {
	font-size: 0.875rem; /*14px*/
	margin-bottom: 6px;
}
.local-nav-list li {
	margin-top: 4px;
}
.local-nav-list li > * {
	padding: 0.392857142857143em 12px;
	display: block;
}
.local-nav-list li a {
	color: var(--primary);
	text-decoration: underline;
}
.local-nav-list li a.active {
	background-color: var(--gray9);
	color: var(--gray4);
	border-radius: var(--rad-m);
	text-decoration: none;
}
/* ============================== */
/*  部品 */
/* ============================== */
/* ページヘッダー下部タブナビゲーション */
.header-tab-nav ul {
	display: flex;
	justify-content: center;
	font-size: 0.875rem; /*14px*/
	margin-top: 12px;
}
.header-tab-nav ul li {
	flex: 1 1 auto;
}
.header-tab-nav ul li:not(:first-child) {
	margin-left: 8px;
}
.header-tab-nav ul li a, .header-tab-nav ul li span.disabled {
	border-radius: var(--rad-m) var(--rad-m) 0 0;
	background: #fff;
	padding: 0.5em;
	width: 100%;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: var(--secondary);
}
.header-tab-nav ul li span.disabled {
	color: var(--gray7);
}
.header-tab-nav ul li.selected a {
	background: var(--primary);
	color: #fff;
}
@media screen and (min-width: 769px), print {
	.header-tab-nav ul {
		font-size: 1rem; /*16px*/
		margin-top: 32px;
	}
	.header-tab-nav ul li {
		flex: 0 0 auto;
	}
	.header-tab-nav ul li:not(:first-child) {
		margin-left: 8px;
	}
	.header-tab-nav ul li a, .header-tab-nav ul li span.disabled {
		height: 48px;
		padding: 0.5em 2.25em;
	}
}
.tab-nav-a .tab-list {
	display: flex;
	justify-content: space-between;
	font-size: 0.8125rem; /*13px*/
	font-weight: 700;
	margin-top: 16px;
	margin-bottom: 24px;
	box-shadow: var(--box-shadow1);
}
.tab-nav-a .tab-list li {
	width: 100%;
}
.tab-nav-a .tab-list li a {
	width: 100%;
	display: block;
	padding: 0.788461538461538em 0.5em; /*40px*/
	text-align: center;
	background: #fff;
	color: var(--primary);
}
.tab-nav-a .tab-list li.selected a {
	background-color: var(--primary);
	color: #fff;
	position: relative;
}
.tab-nav-a .tab-list li.selected a::after {
	content: "";
	box-sizing: content-box;
	width: 0;
	height: 0;
	border-top: 4px solid var(--primary);
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	position: absolute;
	bottom: -4px;
	left: calc(50% - 6px);
}
.tab-nav-a .tab-list li:first-child a {
	border-radius: var(--rad-m) 0 0 var(--rad-m);
}
.tab-nav-a .tab-list li:last-child a {
	border-radius: 0 var(--rad-m) var(--rad-m) 0;
}
@media screen and (min-width: 769px), print {
	.tab-nav-a .tab-list {
		font-size: 1rem; /*16px*/
		margin-top: 24px;
		margin-bottom: 32px;
	}
	.tab-nav-a .tab-list li a {
		padding: 0.75em 0.5em; /*40px*/
	}
	.tab-nav-a .tab-list li.selected a::after {
		border-top-width: 8px;
		border-left-width: 12px;
		border-right-width: 12px;
		bottom: -8px;
		left: calc(50% - 12px);
	}
}
/* ============================== */
/*  部品-ボタン */
/* ============================== */
/* グラデーションボタン */
.button-a {
	background: linear-gradient(96deg, #1A9E3D -1.44%, #11694C 100.93%);
	color: var(--white);
	border-radius: var(--rad-m);
	box-shadow: var(--box-shadow1);
	font-size: 1rem; /*16px*/
	font-weight: 700;
	height: 2.5em; /*40px*/
	display: flex;
	align-items: center;
	width: 240px;
	justify-content: center;
}
.button-a:hover {
	background: linear-gradient(96deg, #1FAD45 -1.44%, #178C66 100.93%);
}
.button-a:disabled, .button-a.disabled {
	background: var(--gray6);
	box-shadow: none;
}
@media screen and (min-width: 769px), print {
	.button-a {
		font-size: 1.125rem; /*18px*/
		height: 2.666666666666667em; /*48px*/
	}
}
/* アイコン付き **/
.button-a.has-icon i.icon-search {
	width: 1.375em;
	height: 1.5em;
	background: url("../images/ico_search.svg") no-repeat center;
	background-size: 100%;
	margin-right: 0.25em;
}
.button-a.has-icon i.icon-exlink {
	width: 1.3em;
	height: 1.5em;
	background: url("../images/ico_exlink.svg") no-repeat center;
	margin-right: 0.5em;
}
.button-sub-a {
	color: var(--primary);
	border: 2px solid var(--primary);
	border-radius: rad-m;
}
.buton-sub-a:hover {
	background: var(--primary);
	color: var(--white);
	border-radius: rad-m;
}
.button-sub-a {
	color: var(--primary);
	border: 2px solid var(--primary);
	border-radius: var(--rad-m);
	font-size: 0.875rem; /*14px*/
	padding: 0.392857142857143em 1em;
	display: inline-flex;
}
.buton-sub-a:hover {
	background: var(--primary);
	color: var(--white);
}
/*プラスアイコン付き*/
.button-sub-a.icon-plus::before {
	content: "＋";
	margin-right: 0.25em;
}
.buton-sub-plus-a:hover {
	background: var(--primary);
	color: var(--white);
}
/* Button Bar */
.button-bar-a {
	margin: 16px 0 0;
	text-align: center;
	display: flex;
	justify-content: center;
}
.button-bar-b {
	margin: 16px 0 0;
	text-align: center;
	display: flex;
	justify-content: center;
}
/* 横にスクロール */
.scroll-hint {
	font-size: 0.875rem; /*14px*/
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	color: var(--gray4);
	margin: 8px 0 0;
	padding-top: 0.1em;
}
.scroll-hint::before {
	content: "";
	width: 1.214285714285714em;
	height: 1.214285714285714em;
	margin-right: 0.25em;
	background: url("../images/ico_scroll-hint.svg") no-repeat center;
	background-size: 100%;
}
/* ボタンメニュー（通常） */
a.button-menu-a {
	position: relative;
	background: var(--white);
	box-shadow: var(--box-shadow1);
	display: block;
	border-radius: var(--rad-m);
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	padding: 0.964285714285714em 1.3em 0.964285714285714em 0.857142857142857em; /*h48px*/
}
a.button-menu-a::after {
	content: "";
	width: 0.707213578500707em; /**/
	height: 0.707213578500707em;
	top: calc((100% - 0.707213578500707em) / 2);
	border-top: 2px solid var(--primary);
	border-right: 2px solid var(--primary);
	transform: rotate(45deg);
	position: absolute;
	right: 0.857142857142857em; /*12*/
}
a.button-menu-a.disabled {
	background: var(--gray9);
	color: var(--gray3);
	box-shadow: none;
	border: 1px solid var(--gray7);
	padding: calc(0.964285714285714em - 1px) calc(1.3em - 1px) calc(0.964285714285714em - 1px) calc(0.857142857142857em - 1px);
	pointer-events: none;
}
a.button-menu-a.disabled::after {
	border-color: var(--gray7);
	right: calc(0.857142857142857em - 1px);
}
@media screen and (min-width: 1057px), print {
	a.button-menu-a {
		font-size: 1rem; /*16px*/
		padding: 1.25em 1.3em 1.25em 1em; /*h64px*/
	}
	a.button-menu-a::after {
		right: 1em;
		width: 0.75em;
		height: 0.75em;
		top: calc((100% - 0.75em) / 2);
		border-top-width: 3px;
		border-right-width: 3px;
	}
	a.button-menu-a.disabled {
		padding: calc(1.25em - 1px) calc(1.3em - 1px) calc(1.25em - 1px) calc(1em - 1px);
	}
	a.button-menu-a.disabled::after {
		right: calc(1em - 1px);
	}
}
/* ボタンメニュー（小） */
a.button-menu-b {
	position: relative;
	background: var(--white);
	box-shadow: var(--box-shadow1);
	display: block;
	border-radius: var(--rad-m);
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	padding: 0.964285714285714em 1.3em 0.964285714285714em 0.857142857142857em; /*h48px*/
}
a.button-menu-b::after {
	content: "";
	width: 0.707213578500707em; /**/
	height: 0.707213578500707em;
	top: calc((100% - 0.707213578500707em) / 2);
	border-top: 2px solid var(--primary);
	border-right: 2px solid var(--primary);
	transform: rotate(45deg);
	position: absolute;
	right: 0.857142857142857em; /*12*/
}
a.button-menu-b.disabled {
	background: var(--gray9);
	color: var(--gray3);
	box-shadow: none;
	border: 1px solid var(--gray7);
	padding: calc(0.964285714285714em - 1px) calc(1.3em - 1px) calc(0.964285714285714em - 1px) calc(0.857142857142857em - 1px);
}
a.button-menu-b.disabled::after {
	border-color: var(--gray7);
	right: calc(0.857142857142857em - 1px);
}
/* 学校フラッグ(小) つき。button-menu-aを継承（769以上でもサイズ変更しない） */
a.button-team {
	position: relative;
	background: var(--white);
	box-shadow: var(--box-shadow1);
	border-radius: var(--rad-m);
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	padding: calc(0.964285714285714em * 1.05) 1.3em calc(0.964285714285714em * 0.95) 12px; /*48px*/
	padding: 0.964285714285714em 1.3em 0.964285714285714em 0.857142857142857em; /*48px*/
	display: flex;
	align-items: center;
}
a.button-team::after {
	content: "";
	width: 0.707213578500707em; /**/
	height: 0.707213578500707em;
	top: calc((100% - 0.707213578500707em) / 2);
	border-top: 2px solid var(--primary);
	border-right: 2px solid var(--primary);
	transform: rotate(45deg);
	position: absolute;
	right: 0.857142857142857em; /*12*/
}
a.button-team .flag-s {
	width: 1.142857142857143em;
	margin-right: 0.33333333em;
	display: block;
}
a.button-team .flag-s img {
	display: block;
}
/* ブログ記事 */
ul.blog-article-list li:not(:first-child) {
	margin-top: 8px;
}
a.button-menu-blog {
	position: relative;
	background: var(--white);
	box-shadow: var(--box-shadow1);
	display: block;
	border-radius: var(--rad-m);
	font-size: 0.875rem; /*14px*/
	line-height: 1.25;
	font-weight: 700;
	padding: 0.839285714285714em 1.3em 0.839285714285714em 0.857142857142857em; /*h62px*/
}
a.button-menu-blog p.date {
	font-size: 0.75rem; /*12px*/
	color: var(--primary);
	margin-bottom: 0.5em;
}
a.button-menu-blog h3 {
	font-size: 0.875rem; /*14px*/
	line-height: 1.25;
}
a.button-menu-blog::after {
	content: "";
	width: 0.60618306728632em; /*h12px*/
	height: 0.60618306728632em;
	top: calc((100% - 0.60618306728632em) / 2);
	border-top: 2px solid var(--primary);
	border-right: 2px solid var(--primary);
	transform: rotate(45deg);
	position: absolute;
	right: 0.857142857142857em; /*12px*/
}
@media screen and (min-width: 1057px), print {
	a.button-menu-blog {
		padding: 0.785714285714286em 1.3em -0.785714285714286em 1.142857142857143em; /*h64px*/
		background: #fff url("../images/ico_exlink-primary.svg") no-repeat center right 1em;
		background-size: 1.142857142857143em;
	}
	a.button-menu-blog p.date {
		font-size: 0.875rem; /*14px*/
		margin-bottom: 0.5em;
	}
	a.button-menu-blog h3 {
		font-size: 0.875rem; /*14px*/
		line-height: 1.25;
	}
	a.button-menu-blog::after {
		display: none;
	}
}
/* 緑のロゴマーク付 */
a.button-menu-with-logo {
	position: relative;
	box-shadow: var(--box-shadow1);
	display: block;
	border-radius: var(--rad-m);
	font-size: 1rem; /*16px*/
	font-weight: 700;
	padding: 1.25em 1.8em 1.25em 3.5em; /*80px*/
	background: var(--white) url("../images/logo_mark.svg") no-repeat center left 0.75em;
	background-size: 2.1875em;
}
a.button-menu-with-logo::after {
	content: "";
	width: 0.707213578500707em;
	height: 0.707213578500707em;
	top: calc((100% - 0.707213578500707em) / 2);
	right: 1em;
	border-top: 3px solid var(--primary);
	border-right: 3px solid var(--primary);
	transform: rotate(45deg);
	position: absolute;
}
@media screen and (min-width: 769px), print {
	a.button-menu-with-logo {
		font-size: 1.375rem; /*22px*/
		padding: 1.068181818181818em 1.3em 1.068181818181818em 3.5em;
		background-size: 2.227272727272727em; /*49px*/
	}
	a.button-menu-with-logo::after {
		width: 0.642921435000643em;
		height: 0.642921435000643em;
		top: calc((100% - 0.642921435000643em) / 2);
		right: 0.727272727272727em;
	}
}
/* 白バック、緑文字、アイコン付き */
a.button-menu-c {
	font-size: 0.875rem; /*14px*/
	color: var(--primary);
	padding: 0.392857142857143em 0.5em; /*32px*/
	background: #fff;
	border-radius: var(--rad-m);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: 700;
}
a.button-menu-c .icon {
	width: 1em;
	display: inline-block;
	margin-right: 0.5em;
	line-height: 1;
}
@media screen and (min-width: 769px), print {
	a.button-menu-c {
		color: var(--primary);
		padding: 0.678571428571429em 0.5em; /*40px*/
	}
}
/*プレイヤーボタン（写真入り） */
.member-list-item-with-portrait-a > a {
	background: var(--white);
	position: relative;
	width: 100%;
	border-radius: var(--rad-m);
	box-shadow: var(--box-shadow1);
	display: flex;
	align-items: center;
	padding: 8px 2em 8px 8px;
	font-size: 0.75rem; /*12px*/
}
.member-list-item-with-portrait-a > a::after {
	content: "";
	font-size: 0.75rem;
	width: 0.707213578500707em;
	height: 0.707213578500707em;
	top: calc((100% - 0.707213578500707em) / 2);
	right: 1em;
	border-top: 2px solid var(--primary);
	border-right: 2px solid var(--primary);
	transform: rotate(45deg);
	position: absolute;
}
.member-list-item-with-portrait-a > a .player-portrait {
	width: 36px;
	height: 48px;
	margin-right: 8px;
	border-radius: var(--rad-s);
	overflow: hidden;
}
.member-list-item-with-portrait-a > a .player-portrait img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.member-list-item-with-portrait-a > a .player-info {
	font-size: 0.75rem; /*12px*/
	color: var(--gray3);
	line-height: 1.2;
}
.member-list-item-with-portrait-a > a .start {
	margin-bottom: 0.25em;
	display: flex;
	align-items: center;
}
.member-list-item-with-portrait-a > a .start .flag-s {
	width: 1.333333333333333em; /*w16px*/
	height: 1.333333333333333em;
	line-height: 1;
	margin-right: 0.25em;
	display: block;
}
.member-list-item-with-portrait-a > a .start .flag-s img {
	display: block;
}
.member-list-item-with-portrait-a > a .player-name {
	font-size: 1rem; /*16px*/
	font-weight: 700;
	color: var(--black);
	display: inline-block;
}
.member-list-item-with-portrait-a > a .player-position {
	display: inline-block;
	margin-left: 0.5em;
	margin-top: 0.25em;
}
@media screen and (min-width: 769px), print {
	.member-list-item-with-portrait-a > a {
		padding: 6px 2em 6px 6px;
	}
	.member-list-item-with-portrait-a > a::after {
		font-size: 0.75rem;
		width: 0.942951438000943em;
		height: 0.942951438000943em;
		top: calc((100% - 0.942951438000943em) / 2);
		border-top-width: 3px;
		border-right-width: 3px;
		right: 1em;
	}
	.member-list-item-with-portrait-a > a .player-portrait {
		width: 51px;
		height: 68px;
		margin-right: 12px;
	}
	.member-list-item-with-portrait-a > a .player-name {
		display: block;
	}
	.member-list-item-with-portrait-a > a .player-position {
		display: block;
		margin-left: 0;
		line-height: 1.3;
	}
}
/*プレイヤーボタン（写真なし） */
.member-list-item-no-portrait-a > a {
	background: var(--white);
	position: relative;
	width: 100%;
	min-height: 64px;
	border-radius: var(--rad-m);
	box-shadow: var(--box-shadow1);
	display: flex;
	align-items: center;
	padding: 8px 2em 8px 12px;
	font-size: 0.75rem; /*12px*/
}
.member-list-item-no-portrait-a > a::after {
	content: "";
	font-size: 0.75rem;
	width: 0.707213578500707em;
	height: 0.707213578500707em;
	top: calc((100% - 0.707213578500707em) / 2);
	right: 1em;
	border-top: 2px solid var(--primary);
	border-right: 2px solid var(--primary);
	transform: rotate(45deg);
	position: absolute;
}
.member-list-item-no-portrait-a > a .player-info {
	font-size: 0.75rem; /*12px*/
	color: var(--gray3);
	line-height: 1.2;
}
.member-list-item-no-portrait-a > a .start {
	margin-bottom: 0.25em;
	display: flex;
	align-items: center;
}
.member-list-item-no-portrait-a > a .start .flag-s {
	width: 1.333333333333333em; /*w16px*/
	height: 1.333333333333333em;
	line-height: 1;
	margin-right: 0.25em;
	display: block;
}
.member-list-item-no-portrait-a > a .start .flag-s img {
	display: block;
}
.member-list-item-no-portrait-a > a .player-name {
	font-size: 1rem; /*16px*/
	font-weight: 700;
	color: var(--black);
	display: inline-block;
}
.member-list-item-no-portrait-a > a .player-position {
	display: inline-block;
	margin-left: 0.5em;
	margin-top: 0.25em;
}
@media screen and (min-width: 769px), print {
	.member-list-item-no-portrait-a > a {
		padding: 6px 2em 6px 12px;
		min-height: 80px;
	}
	.member-list-item-no-portrait-a > a::after {
		font-size: 0.75rem;
		width: 0.942951438000943em;
		height: 0.942951438000943em;
		top: calc((100% - 0.942951438000943em) / 2);
		border-top-width: 3px;
		border-right-width: 3px;
		right: 1em;
	}
	.member-list-item-no-portrait-a > a .player-name {
		display: block;
	}
	.member-list-item-no-portrait-a > a .player-position {
		display: block;
		margin-left: 0;
		line-height: 1.3;
	}
}
/*プレイヤー情報（リンクなし、トップページ） */
.member-list-item-with-portrait-b {
	background: var(--white);
	position: relative;
	width: 100%;
	border-radius: var(--rad-m);
	box-shadow: var(--box-shadow1);
	display: flex;
	align-items: center;
	padding: 4px;
}
.member-list-item-with-portrait-b .player-portrait {
	width: 51px;
	height: 68px;
	margin-right: 8px;
}
.member-list-item-with-portrait-b .player-portrait img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.member-list-item-with-portrait-b .player-info {
	font-size: 0.75rem; /*12px*/
	color: var(--gray3);
	line-height: 1.2;
}
.member-list-item-with-portrait-b .start {
	margin-bottom: 0.25em;
	display: flex;
	align-items: center;
}
.member-list-item-with-portrait-b .start .flag-s {
	width: 1em;
	line-height: 1;
	margin-right: 0.25em;
	display: block;
}
.member-list-item-with-portrait-b .start .flag-s img {
	display: block;
}
.member-list-item-with-portrait-b .player-name {
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	color: var(--black);
}
.member-list-item-with-portrait-b .player-position {
	margin-top: 0.25em;
}
/*プレイヤー情報（リンクなし、記録・ベストナイン） */
.member-list-item-a {
	background: var(--white);
	position: relative;
	width: 100%;
	border-radius: var(--rad-m);
	box-shadow: var(--box-shadow1);
	display: flex;
	align-items: center;
	padding: 8px 8px;
}
.member-list-item-a .player-position {
	width: 3.846153846153846em;
	font-size: 0.8125rem; /*13px*/
	font-weight: 700;
	background-color: var(--primary);
	color: #fff;
	padding: 0.173076923076923em 0.25em; /*h24px*/
	text-align: center;
	margin-right: 10px;
	border-radius: var(--rad-s);
}
.member-list-item-a .player-info {
	display: flex;
	flex-wrap: wrap;
}
.member-list-item-a .univ-year {
	display: flex;
	align-items: center;
	color: var(--gray3);
	width: 100%;
	font-size: 0.75rem; /*12px*/
	margin-bottom: 0.083333333333333em;
}
.member-list-item-a .univ-year .flag-s {
	width: 1em;
	line-height: 1;
	margin-right: 0.25em;
	display: block;
}
.member-list-item-a .start .flag-s img {
	display: block;
}
.member-list-item-a .player-name {
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	color: var(--black);
}
.member-list-item-a .from {
	font-size: 0.75rem; /*12px*/
	line-height: 1.75;
	margin-left: 0.5em;
}
.member-list-item-a .wins {
	font-size: 0.75rem; /*12px*/
	font-weight: 700;
	color: var(--primary);
	line-height: 1.75;
	margin-left: 0.5em;
}
@media screen and (min-width: 769px), print {
	.member-list-item-a {
		padding: 13px 8px;
	}
	.member-list-item-a .univ-year {
		font-size: 0.875rem; /*14px*/
		margin-bottom: 0.071428571428571em;
	}
	.member-list-item-a .player-name {
		font-size: 1rem; /*16px*/
	}
	.member-list-item-a .from {
		font-size: 0.8125rem; /*13px*/
		line-height: 1.846153846153846;
	}
	.member-list-item-a .wins {
		font-size: 0.8125rem; /*13px*/
		line-height: 1.846153846153846;
	}
}
/*プレイヤー情報 tats-personal-best9*/
.member-list-item-b {
	background: var(--white);
	position: relative;
	width: 100%;
	min-height: 56px;
	border-radius: var(--rad-m);
	display: flex;
	align-items: center;
	padding: 8px 12px;
	font-size: 0.75rem; /*12px*/
}
.member-list-item-b .player-info {
	font-size: 0.75rem; /*12px*/
	color: var(--gray4);
	line-height: 1.2;
}
.member-list-item-b .univ {
	margin-bottom: 0.25em;
	display: flex;
	align-items: center;
}
.member-list-item-b .univ .flag-s {
	width: 1em; /*w12px*/
	height: 1em;
	line-height: 1;
	margin-right: 0.25em;
	display: block;
}
.member-list-item-b .univ .flag-s img {
	display: block;
}
.member-list-item-b .player-name {
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	color: var(--black);
	display: inline-block;
}
.member-list-item-b .player-data {
	margin-left: 0.5em;
	margin-top: 0.25em;
	color: var(--gray4);
	display: inline-block;
}
@media screen and (min-width: 769px), print {
	.member-list-item-b {
		padding: 8px 12px;
	}
	.member-list-item-b .player-name {
		font-size: 1rem; /*16px*/
	}
	.member-list-item-b .player-data {
		font-size: 0.875rem; /*14px*/
		line-height: 1.3;
	}
}
/* フォームの項目 */
.form-list > div {
	display: flex;
}
.form-list > div + div {
	margin-top: 12px;
}
.form-list dt {
	font-size: 0.75rem; /*12px*/
	color: var(--secondary);
	font-weight: 700;
	line-height: 1.5;
	padding: 0.583333333333333em 1em 0.583333333333333em 0; /*32px*/
	flex: 0 0 auto;
}
.form-list.dt-5em dt {
	width: 5em;
}
.form-list.dt-6em dt {
	width: 6em;
}
@media screen and (min-width: 769px), print {
	.form-list dt {
		font-size: 0.875rem; /*14px*/
		padding: 0.392857142857143em 1em 0.392857142857143em 0; /*32px*/
	}
}
/* ============================== */
/*  見出し */
/* ============================== */
/* 通常の見出し */
.headline-a {
	font-size: 0.875rem; /*14px*/
	background-color: var(--secondary);
	color: var(--white);
	padding: 0.678571428571429em 12px; /*40px*/
	border-radius: var(--rad-m);
	margin: 0 0 12px;
	font-weight: 700;
	display: flex;
	align-items: center;
}
.headline-a span.eye-catch {
	font-size: 92.857142857142857%; /*13px*/
	background-color: var(--primary);
	color: var(--white);
	line-height: 1.846153846153846; /*24px*/
	padding: 0 0.5em;
	margin: -1.5px 7px -1.5px -2px;
	border-radius: var(--rad-s);
	display: inline-block;
}
.headline-a .flag-s {
	width: 1.142857142857143em;
	margin-right: 0.5em;
}
.headline-a .flag-s img {
	display: block;
}
.headline-a span.color-light {
	color: var(--hightlight);
}
@media screen and (min-width: 769px), print {
	.headline-a {
		font-size: 1.125rem; /*18px*/
		padding: 0.58333333em 12px; /*48px*/
		margin-bottom: 16px;
	}
	.headline-a span.eye-catch {
		font-size: 88.888888888888889%; /*16px*/
		line-height: 1.75; /*28px*/
		margin: -0.5px 8px -0.5px -2px;
	}
}
.headline-a-sub {
	font-size: 1.125rem; /*18px*/
	background-color: var(--secondary);
	color: var(--white);
	padding: 0.58333333em 0.5em;
	border-radius: var(--rad-s);
	margin: 0 0 1em;
}
.headline-a-sub span.eye-catch {
	font-size: 88.88888888%;
	background-color: var(--primary);
	color: var(--white);
	padding: 0.125em 0.5em;
	margin: 0;
}
/* 薄いグリーンバックの見出し（769以上fs18px） */
.headline-b {
	font-size: 0.875rem; /*14px*/
	background-color: var(--green-bg);
	color: var(--black);
	padding: 0.535714285714286em 8px;
	border-radius: var(--rad-m);
	margin: 0 0 14px;
	font-weight: 700;
	text-align: center;
}
.headline-b em {
	color: var(--primary);
	margin-right: 0.5em;
	font-style: normal;
}
@media screen and (min-width: 769px), print {
	.headline-b {
		font-size: 1.125rem; /*18px*/
		padding: 0.361111111111111em 12px; /* h40px */
		border-radius: var(--rad-m);
		margin: 0 0 14px;
		font-weight: 700;
	}
}
/* 薄いグリーンバックの見出し（769以上fs16px） */
.headline-c {
	font-size: 0.875rem; /*14px*/
	background-color: var(--green-bg);
	color: var(--black);
	padding: 0.535714285714286em 12px;
	border-radius: var(--rad-m);
	margin: 0 0 14px;
	font-weight: 700;
	text-align: center;
}
@media screen and (min-width: 769px), print {
	.headline-c {
		font-size: 1rem; /*16px*/
		padding: 0.5em 12px; /* h40px */
		border-radius: var(--rad-m);
		margin: 0 0 14px;
		font-weight: 700;
	}
}
.headline-c .pop {
	font-size: 0.875rem; /*14px*/
	background-color: var(--primary);
	color: var(--white);
	display: inline-block;
	padding: 0.107142857142857em 8px;
	border-radius: var(--rad-m);
	margin-top: 3px;
}
.headline-c .heading-text {
	display: block;
	margin-top: 4px;
}
.headline-c .pop + .heading-text {
	display: block;
	margin-bottom: -3px;
}
@media screen and (min-width: 769px), print {
	.headline-c .pop {
		padding: 0.25em 6px;
		margin-top: 3px;
	}
}
/* アコーディオンパネル headline-aがトリガー */
.accordion-a > .accordion-heading {
	position: relative;
	cursor: pointer;
}
.accordion-a > .accordion-heading::before, .accordion-a > .accordion-heading::after {
	content: "";
	width: 1em;
	height: 2px;
	position: absolute;
	top: calc(50% - 1px);
	right: 12px;
	background-color: var(--white);
}
.accordion-a > .accordion-heading::after {
	transform: rotate(90deg);
	transition: 200ms;
}
.accordion-a.active > .accordion-heading::after {
	transform: rotate(0);
}
.accordion-a + .accordion-a {
	margin-top: -16px;
}
@media screen and (min-width: 769px), print {
	.accordion-a + .accordion-a {
		margin-top: -24px;
	}
}
/* アコーディオンパネル タイトル白バック */
.accordion-b {
	background: #fff;
	border-radius: var(--rad-m);
	padding: 0 8px;
	box-shadow: var(--box-shadow2);
}
.accordion-b.active {
	box-shadow: none;
}
.accordion-b > .accordion-heading {
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	line-height: 1.571428571428571;
	padding: 8px 0;
	position: relative;
	cursor: pointer;
}
.accordion-b > .accordion-heading-disabled {
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	line-height: 1.571428571428571;
	padding: 8px 0;
}
.accordion-b > .accordion-heading::before, .accordion-b > .accordion-heading::after {
	content: "";
	width: 1em;
	height: 2px;
	position: absolute;
	top: calc(50% - 1px);
	right: 0;
	background-color: var(--primary);
}
.accordion-b > .accordion-heading::after {
	transform: rotate(90deg);
	transition: 200ms;
}
.accordion-b.active > .accordion-heading ,
.accordion-b > .accordion-heading-disabled {
	color: var(--gray2);
}
.accordion-b.active > .accordion-heading::after {
	transform: rotate(0);
}
.accordion-b > .accordion-body {
	padding-bottom: 8px;
}
.accordion-b + .accordion-b {
	margin-top: var(--base-margin-m);
}
@media screen and (min-width: 769px), print {
	.accordion-b {
		padding: 0 12px;
	}
	.accordion-b > .accordion-heading ,
	.accordion-b > .accordion-heading-disabled {
		font-size: 0.9375rem; /*15px*/
		line-height: 1.266666666666667; /*19*/
		padding: 14.5px 0;
	}
	.accordion-b > .accordion-body {
		padding-bottom: 12px;
	}
}
/* 曜日ごとの色 */
.monday, .tuesday, .wednesday, .thursday, .friday {
	color: inherit;
}
.saturday {
	color: var(--blue);
}
.sunday {
	color: var(--red);
}
/* 学校ロゴ付き */
.has-flag {
	display: flex;
	align-items: center;
	font-weight: 700;
	position: relative;
	color: var(--black);
}
.has-flag span.flag-s {
	font-size: 0.75rem; /*12px*/
	width: 1.333333333333333em;
	display: block;
	line-height: 1;
	margin-right: 0.5em;
}
.has-flag span.flag-l {
	font-size: 0.75rem; /*12px*/
	width: 4em;
	display: block;
	line-height: 1;
	margin-right: 0.5em;
}
@media screen and (min-width: 769px), print {
	.has-flag span.flag-s {
		font-size: 0.875rem; /*14px*/
		width: 1.142857142857143em; /*w48px*/
	}
	.has-flag span.flag-l {
		font-size: 0.875rem; /*14px*/
		width: 4.285714285714286em; /*w60px*/
	}
}
/* 試合結果 */
.game-result-item-b {
	background: #fff;
	padding: 4px;
	border-radius: var(--rad-m);
	box-shadow: var(--box-shadow3);
}
a .game-result-item-b {
	box-shadow: var(--box-shadow2);
}
.game-result-item-b .game-result-heading {
	text-align: center;
	font-size: 0.8125rem; /*13px*/
	margin: 0 0 4px;
	font-weight: 400;
	color: var(--gray4);
}
.game-result-item-b > .game-result-body {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: var(--rad-m);
	padding: 8px;
	margin-top: 4px;
	background: var(--white);
	box-shadow: var(--box-shadow4);
}
a .game-result-item-b > .game-result-body {
	background: var(--gray9);
	box-shadow: none;
}
.game-result-item-b .univ1, .game-result-item-b .univ2 {
	display: flex;
	width: 100%;
	align-items: center;
	font-size: 0.875rem; /*14px*/
	line-height: 16px;
	color:var(--gray2);
}
.game-result-item-b .univ1 {
	order: 1;
	justify-content: flex-end;
}
.game-result-item-b .univ2 {
	order: 3;
}
.game-result-item-b .univ1 .univ-name, .game-result-item-b .univ2 .univ-name {
	width: 3em;
	text-align: center;
	display: block;
}
.game-result-item-b .univ1.besidesbig6 .univ-name {
	width: 100%;
	text-align: right;
	padding-right: 6px;
}
.game-result-item-b .univ2.besidesbig6 .univ-name {
	width: 100%;
	text-align: left;
	padding-left: 6px;
}
.game-result-item-b .flag {
	width: 48px;
	display: block;
	line-height: 16px;
}
.game-result-item-b .univ2 .flag {
	order: 2;
}
.game-result-item-b .univ2 .univ-name {
	order: 1;
}
.game-result-item-b .score {
	order: 2;
	display: flex;
	align-items: center;
	font-size: 0.875rem; /*14px*/
	line-height: 16px;
}
.game-result-item-b .score1, .game-result-item-b .score2 {
	width: 2em;
	text-align: center;
	display: block;
	color: var(--gray2);
}
.game-result-item-b .univ-name.em,
.game-result-item-b .score1.em, .game-result-item-b .score2.em {
	color: var(--black);
}
.game-result-item-b .hyphen {
	display: block;
	width: 0.7em;
	text-align: center;
}
.game-result-item-b.active {
	background: var(--gray9);
	border: none;
}
.game-result-item-b .cancelled {
	color: var(--gray4);
	width: 4.7em;
	text-align: center;
}
@media screen and (min-width: 769px), print {
	.game-result-item-b .game-result-heading {
		font-size: 0.875rem; /*14px*/
		padding: 3.5px 0;
		margin: 0 0 4px;
	}
	.game-result-item-b .univ1, .game-result-item-b .univ2 {
		line-height: 16px;
	}
	.game-result-item-b .flag {
		width: 60px;
		line-height: 20px;
	}
	.game-result-item-b .score {
		font-size: 1rem; /*16px*/
		line-height: 20px;
	}
	.game-result-item-b .cancelled {
		line-height: 20px;
		font-size: 0.875em;
		width: 5.371428571428571em;
	}
}
.game-result-list + .game-result-list {
	margin-top: 8px;
}
@media screen and (min-width: 769px), print {
	.game-result-list + .game-result-list {
		margin-top: 12px;
	}
}
/* 試合中止理由 */
.game-cancel-message {
	padding: 8px 0px;
}
.game-cancel-message p {
	font-size: 1rem; /*16px*/
	text-align: center;
	line-height: 1.4;
	font-weight: 700;
}
/* ============================== */
/*  TABLE */
/* ============================== */
/* テーブル 汎用 */
.table-wrapper {}
.table-wrapper.js-xScroll {
	overflow-x: scroll;
}
.chart-table {
	background-color: #fff;
}
.chart-table th, .chart-table td {
	font-size: 0.75rem; /*12px*/
	line-height: 1.5;
	padding: 0.583333333333333em 0.666666666666667em; /*h32px*/
	vertical-align: middle;
	font-weight: 400;
}
.chart-table th.font-bold,
.chart-table td.font-bold {
	font-weight: bold;
	color: var(--black);
}
.chart-table thead th {
	font-size: 0.6875rem; /*11px*/
	color: var(--gray4);
	text-align: center;
}
.chart-table tbody td {
	color: var(--gray2);
}
.chart-table tbody th, .chart-table tbody .th {
	color: var(--black);
	font-weight: 700;
}
.chart-table th > span, .chart-table td > span, .chart-table p.has-flag {
	white-space: nowrap;
}
span.lb-alow { /* 改行を許可 */
	white-space: normal;
}
.chart-table thead th .vt a {
	color: var(--primary);
}
.chart-table thead th .vt a.selected {
	color: var(--gray3);
	font-weight: 700;
	padding-bottom: 0.75em;
	background: url("../images/shape_triangle-a.svg") no-repeat center bottom;
	background-size: 1em;
}
@media screen and (min-width: 769px), print {
	.chart-table th, .chart-table td {
		font-size: 0.875rem; /*14px*/
		padding: 0.678571428571429em 0.857142857142857em; /*h40px*/
	}
	.chart-table thead th {
		font-size: 0.8125rem; /*13px*/
	}
}
.font-large tbody th, .font-large tbody td {
	font-size: 0.8125rem; /*13px*/
	padding: 0.480769230769231em 0.615384615384615em;
}
@media screen and (min-width: 769px), print {
	.font-large tbody th, .font-large tbody td {
		font-size: 1rem; /*16px*/
		padding: 0.5em 0.75em;
	}
}

/* ストライプテーブル */
table.striped tbody tr:nth-child(even) {
	background-color: var(--gray9);
}
table.striped thead + tbody tr:nth-child(even), .member-list-header-a + table.striped tbody tr:nth-child(even) {
	background-color: transparent;
}
table.striped thead + tbody tr:nth-child(odd), .member-list-header-a + table.striped tbody tr:nth-child(odd) {
	background-color: var(--gray9);
}
table.striped tbody tr > *:not(:last-child) {
	border-right: 1px solid var(--white);
}
table.striped.bd-dark tr > *:not(:last-child) {
	border-right: 1px solid var(--gray7);
}
table.striped.chart-table tr.total {
	border-top: 1px solid var(--gray9);
	background: transparent;
}
table.striped tr.total th, table.striped tr.total td {
	color: var(--primary);
	font-weight: 700;
	text-align: center;
	border-right: none;
}
.chart-table caption {
	font-weight: 700;
	caption-side: top;
	text-align: left;
	padding: 0.392857142857143em 0.66666666em; /*h32*/
	border-bottom: 1px solid var(--gray7);
	font-size: 0.875rem; /*14px*/
	line-height: 1.5;
	background-color: #fff;
}
@media screen and (min-width: 769px), print {
	.chart-table caption {
		font-size: 1rem; /*16px*/
		padding: 0.5em 0.75em; /*h402*/
	}
}
/* 縦組み */
span.vt {
	color: var(--gray4);
	writing-mode: vertical-rl;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 100%;
}
td.num {
	text-align: right;
}
th .sort-icon {
	font-size: 0.875rem; /*14px*/
	width: 1em;
	display: block;
	margin: 0 auto;
	line-height: 1;
}
.chart-table.num-align-center td.num{
	text-align: center;
}
/* ランキングテーブル（トップページ） */
.ranking-table {
	width: 100%;
	max-width: 480px;
	margin: 0 auto;
}
.ranking-table caption {
	font-size: 0.75rem; /*12px*/
	margin-bottom: -2.3333333em;
	font-weight: 700;
	line-height: 1.33333333;
	padding: 0.5em 0;
	border-bottom: none;
}
.ranking-table caption span {
	font-size: 0.6875rem; /*11px*/
	padding-left: 4px;
	color: var(--gray4);
	font-weight: 500;
}
.ranking-table th, .ranking-table td {
	text-align: center;
	line-height: 1.33333333;
	padding: 0.5em 0.5em; /*28px*/
}
.ranking-table th.rank {
	font-weight: 700;
	color: var(--gray4);
	line-height: 1;
	width: 2em;
}
.ranking-table th.rank.final {
	background-color: var(--primary);
	color: var(--white);
	border-bottom: 1px solid var(--white);
}
.ranking-table td.univ {
	font-weight: 700;
	text-align: left;
	width: 8em;
}
.ranking-table td.num {
	/*text-align: right;*/
	text-align: center;
}
@media screen and (min-width: 769px), print {
	.ranking-table caption {
		font-size: 0.875rem; /*14px*/
	}
	.ranking-table caption span {
		font-size: 0.75rem; /*12px*/
	}
	.ranking-table {
		max-width: none;
		margin: 0;
	}
	.ranking-table th, .ranking-table td {
		line-height: 1.33333333;
		padding: 0.476190476190476em 0.5em; /*32px*/
	}
	.ranking-table thead {
		font-size: 0.8125rem; /*13px*/
	}
	.ranking-table-big th.rank {
		line-height: 2.2;
	}
}
/* スコアボード */
.scoreboard-table {
	background-color: #fff;
}
.scoreboard-table tr {
	display: flex;
	align-items: center;
}
.scoreboard-table td, .scoreboard-table th {
	display: block;
	width: 20px;
	font-weight: 400;
	text-align: center;
	color: var(--gray3);
}
.scoreboard-table thead th {
	border: 2px solid #fff;
	border-radius: 4px; /*2+2*/
	background-color: var(--gray9);
	font-size: 0.6875rem; /*11px*/
	line-height: 15px;
	padding-top: 1px;
	margin-bottom: 3px;
}
.scoreboard-table thead th.small {
	font-size: 0.625rem; /*10px*/
}
.scoreboard-table thead th.total {
	background-color: var(--primary);
	color: var(--white);
}
.scoreboard-table tbody td, .scoreboard-table tbody th {
	font-size: 0.75rem; /*12px*/
	color: var(--gray3);
	line-height: 18px;
}
.scoreboard-table tbody td.total {
	font-weight: 700;
	color: var(--black);
}
.scoreboard-table .univ {
	font-weight: 700;
	font-size: 0.6875rem; /*11px*/
	color: var(--black);
	line-height: 1.1;
	width: 34px;
	background: #fff;
}
@media screen and (min-width: 769px), print {
	.scoreboard-table td, .scoreboard-table th {
		width: 32px;
	}
	.scoreboard-table thead th {
		border: 4px solid #fff;
		border-radius: 6px; /*2+4*/
		font-size: 1rem; /*16px*/
		line-height: 22.5px;
		padding-top: 1.5px;
		margin-bottom: 4px;
	}
	.scoreboard-table thead th.small {
		font-size: 0.875rem; /*14px*/
	}
	.scoreboard-table tbody td, .scoreboard-table tbody th {
		font-size: 1.25rem; /*20px*/
		line-height: 24px;
	}
	.scoreboard-table .univ {
		font-size: 1rem; /*16px*/
		width: 48px;
	}
}
/* 打順表（GAMEタブ1) */
.game-table-a {
	width: 100%;
}
.game-table-a .order {
	font-weight: 700;
	color: var(--gray4);
	width: 3em;
	text-align: center;
}
.game-table-a .player-position {
	color: var(--primary);
	width: 3em;
	text-align: center;
}
.game-table-a .player-name {
	color: var(--black);
	width: 8em;
}
.game-table-a .from {
	font-size: 0.6875rem; /*11px*/
	color: var(--gray3);
}
@media screen and (min-width: 769px), print {
	.game-table-a .from {
		font-size: 0.875rem; /*14px*/
	}
}
/*メンバーテーブル（GAMEタブ2) */
.game-table-b {
	width: 100%;
}
.game-table-b tbody .player-position {
	color: var(--gray3);
}
.game-table-b tbody .u-num {
	color: var(--primary);
	text-align: center;
}
.game-table-b tbody .player-name {
	color: var(--black);
}
.game-table-b tbody .year {
	text-align: center;
	color: var(--gray2);
}
.game-table-b tbody .from {
	font-size: 0.75rem; /*12px*/
	color: var(--gray2);
	width: 100%;
}
@media screen and (min-width: 769px), print {
	.game-table-b thead th .vt {
		writing-mode: horizontal-tb;
	}
	.game-table-b tbody td {
		padding-left: 1em;
		padding-right: 1em;
	}
	.game-table-b tbody .player-position {
		font-size: 0.875rem; /*14px*/
	}
	.game-table-b tbody .from {
		font-size: 0.875rem; /*14px*/
	}
}
/* 成績テーブル（GAMEタブ4-1) */
.game-table-d .player-position {
	color: var(--primary);
	text-align: center;
}
.game-table-d .player.th {
	font-weight: 400;
	color: var(--black);
}
@media screen and (min-width: 769px), print {
	.game-table-d tbody td {
		padding: 0.58333333em 0.5em; /*h40px*/
	}
}
/* 成績テーブル（GAMEタブ4-2)投手 */
.game-table-e .player-position {
	color: var(--primary);
	text-align: center;
}
.game-table-e .from {
	width: 100%;
}
.game-table-e .wl {
	text-align: center;
	color:var(--black);
	font-weight: 700;
}
/* Member/Player 通算成績 野手/投手  */
.member-table-a thead th {
	padding: 0.5em 0.5em;
}
.member-table-a tbody .season, .member-table-a tbody .date {
	color: var(--black);
	font-weight: 400;
}
.member-table-a tbody .tournament {
	text-align: right;
}
/* Stats/Season-順位表 */
.season-table-a.striped .opponent:not(:last-child) {
	border-right: 1px solid var(--gray7);
}
.season-table-a.striped .rate {
	border-right: 2px solid var(--gray7);
}
.season-table-a .rank {
	font-weight: 700;
	color: var(--gray4);
	font-size: 0.8125rem; /*13px*/
	text-align: center;
	line-height: 1;
}
.season-table-a .opponent p {
	text-align: center;
	color: var(--gray5);
}
.season-table-a .opponent ol {
	display: flex;
	justify-content: center;
}
.season-table-a .opponent ol li img {
	display: block;
	width: 1em;
	font-size: 0.625rem; /*10px*/
}
@media screen and (min-width: 769px), print {
	.season-table-a .rank {
		font-size: 1rem; /*16px*/
		line-height: 1;
	}
	.season-table-a tbody .num span {
		font-size: 1rem; /*16px*/
		line-height: 1;
	}
	.season-table-a .opponent ol li img {
		font-size: 0.75rem; /*12px*/
	}
}
/* Stats/Season-順位表 仮 */
.season-table-a1 .rank {
	font-weight: 700;
	color: var(--gray4);
	font-size: 0.8125rem; /*13px*/
	width: 1rem;
	text-align: center;
	line-height: 1;
}
.season-table-a1 .rank.final {
	background-color: var(--primary);
	color: var(--white);
	border-bottom: 1px solid var(--white);
}
.season-table-a1 .univ {
	width: 108px;
}
.season-table-a1 .rate {
	width: 40%;
	text-align: left;
	padding-left: 1rem;
}
@media screen and (min-width: 769px), print {
	.season-table-a1 .rank {
		font-size: 1rem; /*16px*/
		line-height: 1;
	}
	.season-table-a1 .univ {
		width: 128px;
	}
	.season-table-a1 tbody .num span {
		font-size: 1rem; /*16px*/
		line-height: 1;
	}
}
/* Stats/Season-星取表 仮 */
table.season-table-a2.striped tr > .rank {
	font-weight: 700;
	width: 1rem;
	color: var(--gray4);
	font-size: 0.8125rem; /*13px*/
	text-align: center;
	line-height: 1;
	border-right: 1px solid var(--white);
}
.season-table-a2 .rank.final {
	background-color: var(--primary);
	color: var(--white);
	border-bottom: 1px solid var(--white);
}
table.season-table-a2.striped tr > .univ {
	border-right: 2px solid var(--gray7);
	width: 108px;
}
.season-table-a2 .opponent p {
	text-align: center;
	color: var(--gray5);
}
.season-table-a2 .opponent ol li {
	text-align: center;
	line-height: 1.4;
	white-space: nowrap;
}
.season-table-a2 .opponent ol li a {
	text-decoration: underline;
	color: var(--blue);
}
.season-table-a2 .opponent ol li img {
	height: 13px;
	width: auto;
	vertical-align: -2px;
	margin-right: 2px;
}
@media screen and (min-width: 769px), print {
	table.season-table-a2.striped tr > .rank {
		font-size: 1rem; /*16px*/
		line-height: 1;
	}
	table.season-table-a2.striped tr > .univ {
		width: 128px;
	}
}
/* Stats/Season-チーム成績 */
.season-table-b thead th {
	padding: 0.5em 0.5em
}
@media screen and (min-width: 769px), print {
	.season-table-b {
		font-size: 1rem; /*16px*/
	}
	.season-table-b tbody td {
		padding: 0.5em 0.75em; /*h40px*/
	}
	.season-table-b .univ {
		font-size: 1rem;
	}
}
/* Stats/Season-打撃ランク、投手ランク */
.season-table-c thead th {
	padding: 0.5em 0.5em;
}
.season-table-c .rank {
	font-weight: 700;
	color: var(--gray4);
	font-size: 0.8125rem; /*13px*/
	text-align: center;
	line-height: 1;
}
@media screen and (min-width: 769px), print {
	.season-table-c th.rank, .season-table-c td.num {
		font-size: 1rem; /*16px*/
		padding: 0.5em 0.75em; /*40px*/
	}
}
/* Stats/record/team/standings シーズン別 チームランキング */
.standings-table-a th, .standings-table-a td {
	width: 4em;
	vertical-align: middle;
	text-align: center;
}
.standings-table-a tr > *:nth-child(even) {
	background-color: var(--gray9);
}
.standings-table-a tr > *:first-child {
	border-right: 1px solid var(--gray7);
	width: 3.666666666666667em;
}
.standings-table-a thead th {
	font-size: 0.625rem;
	line-height: 1.2;
	padding: 0.666666666666667em 0.5em;
}
.standings-table-a tbody th {
	color: var(--primary);
	line-height: 1;
}
/*
.standings-table-a tbody td.flag {
  padding: 0.5em 0.5em;
}
.standings-table-a tbody .flag img {
  width: 1.333333333333333em;
  margin: 0 auto;
  display: block;
  line-height: 1;
}*/
.standings-table-a tbody td.flag > span {
	font-size: 1rem;
	width: 1em;
	height: 1em;
	text-indent: -9999px;
	overflow: hidden;
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	display: block;
	margin: 0 auto;
}
.standings-table-a tbody td.flag > span.univ-1 {
	background-image: url("../images/flag-s_1.png");
}
.standings-table-a tbody td.flag > span.univ-2 {
	background-image: url("../images/flag-s_2.png");
}
.standings-table-a tbody td.flag > span.univ-3 {
	background-image: url("../images/flag-s_3.png");
}
.standings-table-a tbody td.flag > span.univ-4 {
	background-image: url("../images/flag-s_4.png");
}
.standings-table-a tbody td.flag > span.univ-5 {
	background-image: url("../images/flag-s_5.png");
}
.standings-table-a tbody td.flag > span.univ-6 {
	background-image: url("../images/flag-s_6.png");
}
.standings-table-a tbody .ref {
	text-align: center;
	color: var(--primary);
	padding: 0.5em;
}
@media screen and (min-width: 769px), print {
	.standings-table-a th, .standings-table-a td {
		padding: 0.428571428571429em 0.5em;
		width: 56px;
	}
	.standings-table-a thead th {
		font-size: 0.75rem;
		padding: 0.716666666666667em 0.5em;
	}
	.standings-table-a tbody td.flag {
		padding: 0.428571428571429em 0.5em;
	} /*
  .standings-table-a tbody .flag img {
    width: 1.142857142857143em;
  }*/
	.standings-table-a tbody .ref {
		font-size: 0.75rem; /*12px*/
	}
}
/* Stats/record/team/v （チーム別優勝回数、10勝全勝 等） */
.v-table-a {
	width: 100%;
}
.v-table-a th, .v-table-a td {
	line-height: 1.666666666666667;
}
.v-table-a tbody .rank {
	color: var(--gray4);
}
.v-table-a tr > td:last-child {
	width: 100%;
}
@media screen and (min-width: 769px), print {
	.v-table-a th, .v-table-a td {
		padding: 0.642857142857143em 1.5em; /*h40px*/
		line-height: 1.571428571428571;
	}
	.v-table-a .num {
		font-size: 0.9375em; /*15px*/
		line-height: 1.466666666666667;
	}
}
/*Stats/record/team/v 優勝決定戦の勝敗*/
.v-table-b {
	width: 100%;
}
.v-table-b th.flag {
	padding: 0.66666666em 0.5em;
}
.v-table-b thead th:first-child {
	padding: 0;
}
.v-table-b .flag span {
	width: 1.333333333333333em;
	margin: 0 auto;
	display: block;
	line-height: 1;
}
.v-table-b td.win-lose {
	color: var(--gray2);
	text-align: center;
	line-height: 1.1;
	padding: 0.641666666666667em 0.5em;
}
.v-table-b td.win-lose .hyphen {
	color: var(--gray6);
	line-height: 1;
}
.v-table-b tr > * {
	width: calc((100% - 3.5em) / 6);
}
.v-table-b tr > *:first-child {
	width: 3.5em;
}
@media screen and (min-width: 769px), print {
	.v-table-b {
		font-size: 0.875rem; /*14px*/
	}
	.v-table-b th.flag {
		padding: 0.857142857142857em 0.5em;
	}
	.v-table-b .flag span {
		width: 1.142857142857143em;
	}
	.v-table-b td.win-lose {
		padding: 0.857142857142857em 0.5em;
		line-height: 1.142857142857143;
	}
	.v-table-b td.win-lose br {
		display: none;
	}
	.v-table-b td.win-lose .hyphen {
		font-size: 0.9375rem; /*15px*/
	}
	.v-table-b tr > * {
		width: calc((100% - 4.142857142857143em) / 6);
	}
	.v-table-b tr > *:first-child {
		width: 4.142857142857143em;
	}
}
/*Stats/record/team/wl 勝敗表 */
.wl-table-a thead th {
	color: var(--black);
	font-weight: 700;
}
.wl-table-a th.flag {
	padding: 0.66666666em 0.5em;
}
.wl-table-a .flag span {
	width: 1.333333333333333em;
	margin: 0 auto;
	display: block;
	line-height: 1;
}
.wl-table-a thead th:first-child {
	padding: 0;
}
.wl-table-a td {
	text-align: center;
	line-height: 1.1;
	padding: 0.641666666666667em 0.5em;
}
.wl-table-a td.win-lose-total, .wl-table-a td.rate {
	color: var(--black);
}
.wl-table-a td.win-lose .hyphen {
	color: var(--gray6);
	line-height: 1;
}
@media screen and (min-width: 769px), print {
	.wl-table-a thead th {
		font-size: 0.9375rem; /*15px*/
		line-height: 1.333333333333333;
		padding: 0.666666666666667em 0.5em;
	}
	.wl-table-a th.flag {
		padding: 0.8em 0.5em;
	}
	.wl-table-a tbody th.flag {
		padding: 0.5em 1.428571428571429em;
	}
	.wl-table-a .flag span {
		width: 1.066666666666667em;
	}
	.wl-table-a td {
		padding: 0.857142857142857em 1.285714285714286em;
		line-height: 1.142857142857143;
	}
	.wl-table-a .hyphen {
		font-size: 0.9375rem; /*15px*/
	}
}
/* Stats/record/team/wl 最多連勝、大学別の連敗、最多連敗、大学別の連敗 */
.wl-table-b {
	width: 100%;
}
.wl-table-b th, .wl-table-b td {
	padding: 0.5em 1em; /*32px*/
	line-height: 1.666666666666667;
}
.wl-table-b .times {
	text-align: center;
	color: var(--black);
	font-weight: 700;
}
.wl-table-b tr > td:last-child {
	width: 100%;
}
@media screen and (min-width: 769px), print {
	.wl-table-b th, .wl-table-b td {
		padding: 0.642857142857143em 1.5em; /*h40px*/
		line-height: 1.571428571428571;
	}
}
/* Stats/record/team/etc */
.team-etc-table-a tr td:last-child {
	width: 100%;
}
/* Stats/personal/avg 各シーズン首位打者一覧 */
.avg-table-a th.season {
	font-weight: 400;
	color: var(--gray2);
}
.avg-table-a tbody tr:nth-child(odd)::after {
	content: "";
	display: table-cell;
	background: var(--gray9);
	width: 100%;
}
/* Stats/personal/avg 首位打者に関する記録 */
.avg-table-b tr td:last-child {
	width: 100%;
}
.avg-table-b tr.total td.data {
	text-align: left;
}
/* Stats/personal/era リーグ戦最優秀防御率 */
.era-table-a tbody .season {
	font-weight: 400;
}
/*Stats/personal/best9*/
.best9-table-a tbody .player-position {
	text-align: center;
	color: var(--primary);
}
.best9-table-a tbody tr {
	height: 4em;
}
.best9-table-a tbody .player .name {
	color: var(--gray2);
	font-weight: 400;
}
/*Stats/personal/batting*/
.personal-btg-table-a tr > td:last-child {
	width: 100%;
}
/*Stats/personal/pitching*/
.personal-ptg-table-a tr > td:last-child {
	width: 100%;
}
/*Stats/personal/etc*/
.personal-etc-table-a tr > td:last-child {
	width: 100%;
}
/*Stats/fresh*/
.fresh-table-a tbody tr:nth-child(odd)::after {
	content: "";
	display: table-cell;
	background: var(--gray9);
	width: 100%;
}
.fresh-table-b tbody tr > th.year {
	color: var(--gray2);
	font-weight: 400;
}
.fresh-table-b tbody tr:nth-child(odd)::after {
	content: "";
	display: table-cell;
	background: var(--gray9);
	width: 100%;
}
.fresh-table-a tbody tr > th.univ {
	padding-left: 1.4em;
	padding-right: 1.4em;
}
.fresh-table-a tbody tr > td.num {
	padding-left: 2.4em;
	padding-right: 2.4em;
}
.fresh-table-a tbody tr > td.data {
	padding-left: 1.4em;
	padding-right: 1.4em;
}
.fresh-table-b tbody tr > th.year {
	padding-left: 1.4em;
	padding-right: 1.4em;
}
.fresh-table-b tbody tr > td.univ {
	padding-left: 2.4em;
	padding-right: 2.4em;
	text-align: center;
}
/* ============================== */
/*  テーブルの脚注 */
/* ============================== */
.table-footnote {
	margin-top: 6px;
	color: var(--gray2);
	font-size: 0.75rem; /*12px*/
	line-height: 1.66666666;
}
.scroll-hint + .table-footnote {
	margin-top: 10px;
}
.base-b > .chart-table + .table-footnote {
	border-top: 1px solid var(--gray7);
	padding: 12px;
	margin-top: 0;
}
.table-footnote h5 {
	font-size: inherit;
	color: var(--black);
	font-weight: 700;
	margin-bottom: 0.25em;
}
.footnote-list-a {
	display: flex;
	flex-wrap: wrap;
}
.footnote-list-a li {
	margin-right: 1em;
}
.footnote-list-a .note-num {
	color: var(--primary);
	padding-right: 0.25em;
}
.fnp-a {
	color: var(--gray3);
}
@media screen and (min-width: 769px), print {
	.table-footnote {
		font-size: 0.875rem; /*14px*/
	}
	.table-footnote.fs-s {
		font-size: 0.75rem; /*12px*/
	}
}
/* ============================== */
/*  検索セクション */
/* ============================== */
.search-section .form-list + .form-list {
	margin-top: 12px;
}
@media screen and (min-width: 769px) and (max-width: 1056.98px) {
	.search-section .form-list-wrapper {
		display: flex;
	}
	.search-section .form-list {
		width: 50%;
		margin-right: 24px;
	}
	.search-section .form-list + .form-list {
		margin-top: 0;
		width: calc(50% - 24px);
	}
}
@media screen and (min-width: 1057px), print {
	.sidebar .search-section .button-bar-a .button-a {
		width: 100%;
	}
}
/* ============================== */
/*  GLOBAL-HEADER SP/PC共通 */
/* ============================== */
.global-header {
	z-index: 120;
	width: 100%;
	top: 0;
	left: 0;
	position: absolute;
}
/* ============================== */
/*  GLOBAL-HEADER SP-ONLY */
/* ============================== */
@media screen and (max-width: 768.98px) {
	.site-id {
		margin: 0;
		line-height: 1;
		position: absolute;
		top: 8px;
		left: 10px;
		left: calc(10px + constant(safe-area-inset-left));
		left: calc(10px + env(safe-area-inset-left));
		font-size: 1.625rem; /*26px*/
		width: 166px;
	}
	#page.top-page .site-id {
		width: 204px;
	}
	.site-id a {
		display: block;
		width: 100%;
		height: 100%;
	}
	#header-nav {
		position: absolute;
		top: 8px;
		right: 8px;
		z-index: 130;
		background-color: var(--white);
		border-radius: var(--rad-m);
		min-width: 168px;
		display: none;
	}
	.nav-title {
		font-size: 1rem; /*16px*/
		font-weight: 700;
		text-transform: uppercase;
		color: var(--gray7);
		padding: 0.625em 0.5em;
		letter-spacing: 0.05em;
	}
	.global-nav li {
		border-top: 1px solid var(--gray7);
	}
	.global-nav li a {
		color: var(--primary);
		display: block;
		position: relative;
		font-size: 1.1875rem; /*19px*/
		padding: 0.5131578947em 0.5em;
		text-align: center;
		font-weight: 700;
	}
	#toggle-button {
		width: 69px;
		height: 64px;
		top: 0;
		right: 0;
		position: absolute;
		z-index: 140;
		background: url("../images/hamburger.svg") no-repeat center;
		background-size: 29px;
	}
	#toggle-button.js-clicked {
		background-image: url("../images/ico_close.svg");
		background-size: 28px;
	}
}
/* ============================== */
/*  GLOBAL-HEADER PC-ONLY */
/* ============================== */
@media screen and (min-width: 769px) {
	.site-id {
		margin: 0;
		line-height: 1;
		position: absolute;
		font-size: 1.625rem; /*26px*/
		width: 336px;
		top: 16px;
		left: var(--x-margin);
		left: calc(var(--x-margin) + constant(safe-area-inset-left));
		left: calc(var(--x-margin) + env(safe-area-inset-left));
	}

	.site-id a {
		display: block;
		width: 100%;
		height: 100%;
	}
	#toggle-button {
		display: none;
	}
	.js-overlayer {
		display: none !important;
	}
	#header-nav {
		display: block !important;
		position: absolute;
		top: 32px;
		right: var(--x-margin);
		right: calc(var(--x-margin) + constant(safe-area-inset-right));
		right: calc(var(--x-margin) + env(safe-area-inset-right));
	}
	.nav-title {
		display: none;
	}
	.global-nav ul {
		background-color: var(--white);
		height: 48px;
		display: flex;
		align-items: center;
		font-size: 1.125rem; /*18px*/
		border-radius: 24px;
		padding: 0.25em 1.8em;
	}
	.global-nav li {
		padding: 0 1.2em;
	}
	.global-nav li a {
		display: block;
		color: var(--primary);
		font-weight: 700;
	}
	.global-nav li.selected a {
		color: #b5b5b5;
	}
}
/* ============================== */
/*  GO PAGETOP */
/* ============================== */
#go-pagetop a {
	z-index: 90;
	text-indent: -9999px;
	overflow: hidden;
	width: 48px;
	height: 48px;
	border-radius: var(--rad-m);
	color: var(--main-bg);
	background: var(--secondary) url("/images/totop.svg") no-repeat center;
	background-size: 35px;
	position: fixed;
	bottom: 114px;
	right: 10px;
	opacity: 0;
}

#go-pagetop {
	position: relative;
	height: 80px; /* footerのpaddingと重ねる */
	margin-bottom: -80px;
}

#go-pagetop a.show {
	opacity: 1;
}

#go-pagetop a.js-reach-footer {
	position: absolute;
	bottom: 10px;
}

@media screen and (min-width: 769px),
print {
	#go-pagetop {
		height: 130px; /* footerのpaddingと重ねる */
		margin-bottom: -130px;
	}

	#go-pagetop a {
		width: 74px;
		height: 74px;
		background-size: 49px;
		bottom: 16px;
		right: 16px;
		position: fixed;
		transition: 200ms ease;
	}

	#go-pagetop a.js-reach-footer {
		bottom: 16px;
	}
}
/* ============================== */
/*  GLOBAL FOOTER */
/* ============================== */
.global-footer {
	background-color: var(--secondary);
	padding: 16px var(--x-margin) 120px; /* bottomにsp-banner分(104px加算) */
	color: var(--white);
	margin-top: 80px;
}
@media screen and (min-width: 769px), print {
	.global-footer {
		padding: 44px var(--x-margin) 20px;
		margin-top: 130px;
	}
}
.footer-announce {
	max-width: 746px;
	margin: 0 auto;
}
.footer-announce .announce-wrapper {
	background: var(--white);
	display: flex;
	align-items: center;
	padding: 0.833333333333333em 1em;
	border-radius: var(--rad-m);
	font-size: 0.75rem; /*12px*/
}
.footer-announce h3 {
	color: var(--primary);
	font-weight: 700;
	flex: 0 0 auto;
	padding-right: 1em;
}
.footer-announce .info-body {
	width: 100%;
	padding-left: 1em;
	line-height: 1.5;
	border-left: 1px solid var(--gray6);
	color: var(--secondary);
}
.footer-announce .info-body a {
	color: var(--secondary);
}
.footer-announce .info-body .date {
	color: var(--gray5);
	padding-right: 0.5em;
}
.footer-announce .show-all {
	text-align: right;
	font-size: 0.625rem; /*10px*/
	font-weight: 700;
	margin-top: 4px;
}
.footer-announce .show-all a {
	color: var(--white);
	padding-right: 12px;
	position: relative;
}
.footer-announce .show-all a::after {
	content: "";
	position: absolute;
	display: block;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
	right: 0.25em;
	top: calc(50% - 0.3em);
	width: 0.6em;
	height: 0.6em;
}
@media screen and (min-width: 769px), print {
	.footer-announce .announce-wrapper {
		font-size: 1rem; /*16px*/
		padding: 0.75em 1em;
	}
	.footer-announce .show-all {
		font-size: 0.875rem; /*14px*/
		margin-top: 8px;
	}
}
.footer-logo {
	margin: 20px auto 12px;
	width: 226px;
	text-align: center;
}
@media screen and (min-width: 769px), print {
	.footer-logo {
		margin: 12px auto 24px;
		width: 432px;
	}
}
.footer-link {
	text-align: center;
}
.footer-link-main {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background: rgba(255, 255, 255, 0.1);
	height: 32px;
	border-radius: 16px;
	padding: 0.1em 10px;
	font-size: 0.8125rem; /*13px*/
	font-weight: 700;
}
.footer-link-main li {
	padding: 0.25em 1.15em;
}
.footer-link-sub {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	font-size: 0.6875rem; /*11px*/
	line-height: 1.818181818181818;
	width: 25em;
	margin: 14px auto 16px;
}
.footer-link-sub li {
	margin: 0 0.5em;
}
.footer-link-sub a {
	text-decoration: underline;
}
.footer-link-relation {
	margin: 28px 0 8px
}
.footer-link-relation h2 {
	font-size: 0.6875rem; /*11px*/
	color: var(--gray6);
	letter-spacing: 0.095em;
	text-align: center;
	margin: 0 0 8px;
	display: none;
}
.footer-link-relation ul {
	display: flex;
	font-size: 0.6875rem; /*11px*/
	color: var(--gray6);
	letter-spacing: 0.095em;
	text-align: center;
	justify-content: center;
}
.footer-link-relation ul li {
	width: 167px;
	margin: 0 4px;
}
.footer-link-relation ul li a {
	overflow: hidden;
	border-radius: var(--rad-m);
	display: block;
}
@media screen and (min-width: 769px), print {
	.footer-link-main {
		font-size: 1rem; /*16px*/
		height: 48px;
		border-radius: 24px;
		padding: 0.1em 30px;
	}
	.footer-link-main li {
		padding: 0.25em 1.6em;
	}
	.footer-link-sub {
		font-size: 1rem; /*16px*/
		margin: 16px auto 16px;
		width: 100%;
	}
	.footer-link-relation {
		margin: 28px 0 12px
	}
	/*
	.footer-link-relation h2 {
		font-size: 0.875rem;
	}
	*/
	.footer-link-relation ul li {
		width: 232px;
		margin: 0 6px;
	}
}
.copyright {
	color: rgba(255, 255, 255, 0.6);
	font-size: 0.6875rem; /*11px*/
	text-align: center;
}
.copyright small {
	font-size: 100%;
}
@media screen and (min-width: 769px), print {
	.copyright {
		font-size: 0.8125rem; /*13px*/
	}
}
/* ============================== */
/*  トップページ  */
/* ============================== */
/* TOPPAGE HEROIMAGE */
.toppage-hero {
	position: relative;
}
.toppage-hero .hero-image img {
	height: 300px;
	width: 100%;
	object-fit: cover;
}
.toppage-hero .hero-catch-copy {
	position: absolute;
	margin: 0 auto;
	top: 120px;
	left: 0;
	width: 100%;
	text-align: center;
}
.toppage-hero .hero-catch-copy img {
	width: 247px;
}
@media screen and (min-width: 769px), print {
	.toppage-hero .hero-image img {
		height: 464px;
	}
	.toppage-hero .hero-catch-copy {
		top: 198px;
	}
	.toppage-hero .hero-catch-copy img {
		width: 88%;
		max-width: 832px;
	}
}
#page.top-page .content-area > *:first-child {
	margin-top: -24px;
	z-index: 1;
	position: relative;
}
/* TOPPAGE 掲載情報セクション */
#page.top-page .v-wrapper {
	display: flex;
	flex-direction: column;
}
#page.top-page .v-wrapper .chapter-section {
	margin-bottom: 16px;
}
@media screen and (min-width: 769px), print {
	#page.top-page .v-wrapper .chapter-section {
		margin-bottom: 32px;
	}
	#page.top-page .v-wrapper .head-update-section {
		margin-bottom: 16px;
	}
}
.head-update-section {
	display: flex;
	flex-wrap: nowrap;
}
.head-update-section .update-title {
	display: flex;
	width: 20px;
	line-height: 120%;
	font-weight: 700;
	color: var(--secondary);
	align-items: center;
	justify-content: center;
	padding: 2px 18px 2px 10px;
	font-size: 0.9375rem; /*15px*/
}
@media screen and (min-width: 1024px), print {
	.head-update-section .update-title {
		width: 96px;
		font-size: 0.9375rem; /*15px*/
	}
}
.head-update-section .update-wrapper {
	width: 100%;
	display: flex;
	flex-direction: column;
}
@media screen and (min-width: 560px), print {
	.head-update-section .update-wrapper {
		flex-direction: row;
	}
}
.head-update-section .update-list {
	width: 100%;
	display: flex;
	margin-bottom: 8px;
}
@media screen and (min-width: 560px), print {
	.head-update-section .update-list {
		margin-bottom: 0;
	}
}
.head-update-section .update-list:last-child {
	margin-bottom: 0;
}
.head-update-section .update-list h3 {
	display: flex;
	width: 40px;
	min-height: 40px;
	background-color: var(--green-bg);
	justify-content: center;
	align-items: center;
	margin-right: 8px;
	font-size: 0.75rem; /*12px*/
	font-weight: 700;
}
@media screen and (min-width: 1024px), print {
	.head-update-section .update-list h3 {
		width: 48px;
		min-height: 56px;
		font-size: 1rem; /*16px*/
	}
}
.head-update-section .update-list h3 a {
	color: var(--black);
}
.head-update-section .update-list ul {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.head-update-section .update-list ul li {
	font-size: 0.75rem; /*12px*/
	line-height: 110%;
	padding: 2px 12px 2px 0px;
}
@media screen and (min-width: 769px), print {
	.head-update-section .update-list ul li {
		font-size: 0.8125rem; /*13px*/
	}
}
@media screen and (min-width: 1024px), print {
	.head-update-section .update-list ul li {
		font-size: 0.875rem; /*14px*/
	}
}
.head-update-section .update-list li span {
	font-weight: 700;
	color: var(--red);
}
.head-update-section .update-list li a {
	margin-left: 4px;
	text-decoration: underline;
}
.head-update-section .update-list li.released {
	color: var(--gray4);
}
.head-update-section .update-list li.update {
}
/* TOPPAGE 単体大会セクション */
#page.top-page .v-wrapper .head-competition-section {
	margin-bottom: 8px;
}
@media screen and (min-width: 769px), print {
	#page.top-page .v-wrapper .head-competition-section {
		margin-bottom: 16px;
	}
}
#page.top-page .head-competition-section .section-header .headline-b {
	margin-bottom: 0;
}
/* TOPPAGE セクション見出し */
#page.top-page .section-header {
	position: relative;
}
#page.top-page .section-header .headline-b {
	text-align: left;
	padding-right: 5em;
}
#page.top-page .section-header .side-button {
	position: absolute;
	right: 6px;
	top: 50%;
	font-size: 0.75rem; /*12px*/
	font-weight: 700;
	transform: translateY(-50%);
}
#page.top-page .section-header .side-button a {
	border-radius: var(--rad-m);
	background: var(--primary);
	color: var(--white);
	padding: 0.25em 1.5em 0.25em 0.75em;
	position: relative;
	display: block;
}
#page.top-page .section-header .side-button a::after {
	content: "";
	position: absolute;
	display: block;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
	right: 0.5em;
	top: calc(50% - 0.25em);
	width: 0.5em;
	height: 0.5em;
}
#page.top-page .section-header .headline-b {
	padding-top: 0.5734em;
	padding-bottom: 0.5734em;
	line-height: 1.2;
}
@media screen and (min-width: 769px), print {
	#page.top-page .section-header .headline-b {
		padding-top: 0.956em;
		padding-bottom: 0.956em;
	}
	#page.top-page .section-header .side-button {
		right: 12px;
		font-size: 1rem; /*16px*/
	}
}
/* TOPPAGE 日程公開セクション */
#page.top-page .v-wrapper .head-coming-section {
	margin-bottom: 8px;
}
@media screen and (min-width: 769px), print {
	#page.top-page .v-wrapper .head-coming-section {
		margin-bottom: 16px;
	}
	.head-coming-section .section-body {
		display: flex;
		justify-content: space-between;
	}
	.head-coming-section .section-body > .column {
		width: calc((100% - 16px) / 2);
	}
	.head-coming-section .section-body > .column:nth-child(2) {
		width: calc((100% - 16px) / 2);
		min-width: 378px;
		margin-left: 12px;
	}
}
/* TOPPAGE ランキングセクション */
@media screen and (min-width: 769px), print {
	.head-ranking-section .section-body {
		display: flex;
		justify-content: space-between;
	}
	.head-ranking-section .section-body > .column {
		width: calc((100% - 16px) / 2);
	}
	.head-ranking-section .section-body > .column:nth-child(2) {
		width: calc((100% - 16px) / 2);
		min-width: 378px;
		margin-left: 12px;
	}
}
/* TOPPAGE シーズン注釈 */
.head-ranking-section .notice {
	margin-top: 12px;
}
.head-ranking-section .notice-item {
	border: 1px solid var(--gray9);
	border-radius: 4px;
	padding: 8px;
}
.head-ranking-section .notice-item h3 {
	font-weight: 700;
	font-size: 0.75rem; /*12px*/
	margin-bottom: 4px;
	line-height: 1.2;
}
.head-ranking-section .notice-item p {
	font-size: 0.75rem; /*12px*/
	line-height: 1.3;
	color: var(--gray3);
}
.head-ranking-section .notice-item p a {
	text-decoration: underline;
	color: var(--primary);
}
@media screen and (min-width: 769px), print {
	.head-ranking-section .notice-item {
		padding: 12px;
	}
	.head-ranking-section .notice-item h3 {
		font-size: 0.875rem; /*14px*/
		margin-bottom: 6px;
	}
	.head-ranking-section .notice-item p {
		font-size: 0.8125rem; /*13px*/
		line-height: 1.4;
	}
}
/* TOPPAGE 試合状況 */
.game-result-section {
	margin-top: 12px;
}
.game-result-section h3 {
	text-align: center;
	font-size: 0.75rem; /*12px*/
	margin: 8px 0 4px;
	font-weight: 700;
}
.game-result-section h3 .week {
	margin-right: 0.5em;
}
.game-result-section h3 .date {
	font-size: 0.8125rem; /*13px*/
}
.game-result-section h3 .dow {
	margin-left: 0.25em;
	color: var(--gray4);
}
.game-result-section h3 .saturday {
	color: var(--blue);
}
.game-result-section h3 .sunday {
	color: var(--red);
}
.game-result-list-item {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: var(--rad-m);
	color: var(--gray2);
	padding: 8px 2px;
	border: 1px solid var(--gray8);
	margin-top: 4px;
}
.game-result-list-item .status {
	order: 1;
	font-size: 0.5625rem; /*9px*/
	background: var(--gray9);
	color: var(--gray4);
	width: 48px;
	text-align: center;
	border-radius: var(--rad-s);
	height: 16px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 8px;
}
.game-result-list-item .univ1, .game-result-list-item .univ2 {
	display: flex;
	align-items: center;
	font-size: 0.875rem; /*14px*/
	line-height: 16px;
}
.game-result-list-item .univ1 {
	order: 2;
}
.game-result-list-item .univ2 {
	order: 4;
	flex-direction: row-reverse;
}
.game-result-list-item .univ1 .univ-name, .game-result-list-item .univ2 .univ-name {
	width: 3em;
	text-align: center;
	display: block;
}
.game-result-list-item .univ1 .univ-name.em, .game-result-list-item .univ2 .univ-name.em {
	color: var(--black);
}
.game-result-list-item .flag {
	width: 48px;
	display: block;
	line-height: 16px;
}
.game-result-list-item .score {
	order: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 4em;
	font-size: 0.875rem; /*14px*/
	line-height: 16px;
}
.game-result-list-item .score1, .game-result-list-item .score2 {
	width: 1.6em;
	text-align: center;
	display: block;
}
.game-result-list-item .score1.em, .game-result-list-item .score2.em {
	color: var(--black);
}
.game-result-list-item .hyphen {
	display: block;
	text-align: center;
}
.game-result-list-item.active {
	background: var(--gray9);
	border: none;
}
.game-result-list-item.active .status {
	font-size: 0.625rem; /*10px*/
	background: #F11818;
	color: var(--white);
}
.game-result-list-item.notheld .score {
	color: var(--gray6);
}
@media screen and (min-width: 769px), print {
	.game-result-section {
		margin-top: 3.5px;
	}
	.game-result-section h3 {
		text-align: left;
		font-size: 0.875rem; /*14px*/
		margin: 14px 0 5px;
	}
	.game-result-section h3:first-child {
		margin-top: 0;
	}
	.game-result-section h3 .date {
		font-size: 0.9375rem; /*15px*/
	}
	.game-result-section h3 .dow {
		font-size: 0.8125rem; /*13px*/
	}
	.game-result-list-item {
		margin-top: 4px;
		padding: 8px;
	}
	.game-result-list-item .status {
		font-size: 0.75rem; /*12px*/
		width: 72px;
		height: 20px;
		margin-right: 10px;
	}
	.game-result-list-item .univ1, .game-result-list-item .univ2 {
		line-height: 16px;
	}
	.game-result-list-item .flag {
		width: 60px;
		line-height: 20px;
	}
	.game-result-list-item .score {
		font-size: 1rem; /*16px*/
		min-width: 4.7em;
		line-height: 20px;
	}
	.game-result-list-item .hyphen {}
	.game-result-list-item.active {
		background: var(--gray9);
		border: none;
	}
	.game-result-list-item .score1, .game-result-list-item .score2 {
		width: 2em;
	}
	.game-result-list-item.active .status {
		font-size: 0.75rem; /*12px*/
	}
}
.form-select-box + .form-select-box {
	margin-top: 6px;
}
/* トップページの検索セクション */
#page.top-page .search-section .button-bar-a {
	text-align: center;
	border-top: 1px solid var(--gray8);
	margin-top: 16px;
	padding-top: 20px;
	padding-bottom: 12px;
}
/*

#page.top-page .search-section .form-list + .form-list {
  margin-top: 12px;
}
@media screen and (min-width: 769px) and (max-width: 1056.98px) {
  #page.top-page .search-section .form-list-wrapper {
    display: flex;
  }
  #page.top-page .search-section .form-list {
    width: 50%;
    margin-right: 24px;
  }
  #page.top-page .search-section .form-list + .form-list {
    margin-top: 0;
    width: calc(50% - 24px);
  }
}
	*/
@media screen and (min-width: 1057px), print {
	#page.top-page .wrapper.grid1 {
		display: grid;
		margin-left: var(--x-margin);
		margin-right: var(--x-margin);
		grid-template-columns: 1fr 1fr;
		grid-gap: 24px 16px;
	}
	#page.top-page .wrapper.grid1 > .chapter-section {
		margin: 0;
	}
	#page.top-page .wrapper.grid1 > .chapter-section:first-child {
		grid-row: 1 / 2;
		grid-column: 1 / 2;
	}
	#page.top-page .wrapper.grid1 > .chapter-section:nth-child(2) {
		grid-row: 2 / 3;
		grid-column: 1 / 2;
	}
	#page.top-page .wrapper.grid1 > .chapter-section:nth-child(3) {
		grid-row: 1 / 3;
		grid-column: 2 / 3;
	}
}
/* TOPPAGE MAIN-CONTENTS */
.main-contents {
	background-color: var(--dgreen-bg);
	margin: 70px 0 0;
	padding: 0 var(--x-margin) 32px;
}
.main-contents .headline-m {
	color: var(--secondary);
	font-size: 2.3125rem; /*37px*/
	text-align: center;
	text-transform: uppercase;
	position: relative;
	top: -0.55em;
	line-height: 125%;
}
.main-contents .contents-list li:not(:first-child) {
	margin-top: 16px;
}
.main-contents .contents-list li a {
	display: block;
}
.main-contents .contents-list .image {
	width: 100%;
	height: 174px;
	border-radius: var(--rad-m) var(--rad-m) 0 0;
	overflow: hidden;
	display: block;
}
.main-contents .contents-list .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.main-contents .contents-list .text {
	background: var(--black);
	color: var(--white);
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	line-height: 1.25;
	padding: 14.5px 14px;
	min-height: 64px;
	display: flex;
	align-items: center;
	position: relative;
	border-radius: 0 0 var(--rad-m) var(--rad-m);
}
.main-contents .contents-list .text::before {
	content: "";
	width: 60px;
	height: 60px;
	border-top: 60px solid var(--secondary);
	border-right: 60px solid transparent;
	position: absolute;
	top: 0;
	left: 0;
}
.main-contents .contents-list h3 {
	font-size: 2.25rem; /*36px*/
	font-weight: 700;
	letter-spacing: 0.12em;
	top: -0.7em;
	line-height: 1;
	position: absolute;
	left: 14px;
}
.main-contents .contents-list p {
	position: relative;
}
@media screen and (min-width: 769px), print {
	.main-contents {
		padding-bottom: 64px;
	}
	.main-contents .headline-m {
		font-size: 3.125rem; /*50px*/
	}
	.main-contents .contents-list .text {
		font-size: 1.125rem; /*18px*/
		padding: 47.5px 16px 30px;
	}
	.main-contents .contents-list .text::before {
		width: 92px;
		height: 92px;
		border-top-width: 92px;
		border-right-width: 92px;
	}
	.main-contents .contents-list h3 {
		font-size: 3.25rem; /*52px*/
		top: -0.6em;
		left: 16px;
	}
}
@media screen and (min-width: 1057px), print {
	.main-contents {
		margin-top: 124px;
		padding-bottom: 64px;
		padding-left: 36px;
		padding-right: 36px;
	}
	.main-contents .headline-m {
		font-size: 3.125rem; /*50px*/
	}
	.main-contents .contents-list {
		max-width: 1410px;
		display: flex;
		margin-left: auto;
		margin-right: auto;
	}
	.main-contents .contents-list li {
		width: calc((100% - 24px * 2) / 3);
	}
	.main-contents .contents-list li:not(:first-child) {
		margin-top: 0;
		margin-left: 24px;
	}
	.main-contents .contents-list .image {
		height: 280px;
	}
	.main-contents .contents-list .text {
		padding: 36px 16px 19px;
	}
}
/* TOPPAGE 下部ローカルナビ */
.foot-local-nav ul {
	display: flex;
	flex-wrap: wrap;
}
.foot-local-nav ul > * {
	width: 100%;
	margin-top: 12px;
}
.foot-local-nav ul > *:first-child {
	margin-top: 0;
}
@media screen and (min-width: 769px), print {
	.foot-local-nav {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.foot-local-nav ul > *:nth-child(n) {
		width: calc((100% - 16px) / 2);
		margin-top: 16px;
		margin-left: 16px;
	}
	.foot-local-nav ul > *:nth-child(2n + 1) {
		margin-left: 0;
	}
	.foot-local-nav ul > *:nth-child(-n + 2) {
		margin-top: 0;
	}
}
.game-nav1 {}
@media screen and (min-width: 769px), print {
	.game-nav1 {
		text-align: center;
	}
	.game-nav1 .wrapper {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.game-nav1 .form-list {
		display: flex;
	}
	.game-nav1 .form-list > div {
		align-items: center;
	}
	.game-nav1 .form-list dt {
		width: auto;
	}
	.game-nav1 .form-list div + div {
		margin-top: 0;
		margin-left: 20px;
	}
	.game-nav1 select {
		padding: 8px 24px 8px 6px;
	}
	.game-nav1 .button-bar-a {
		margin: 0 0 0 20px;
	}
	.game-nav1 .button-bar-a .button-a {
		width: 180px;
		height: 2.5em;
		font-size: 1rem; /*16px*/
	}
}
.game-nav2 {
	margin-bottom: 12px;
}
.game-nav2 .filter {
	margin-top: 4px;
}
.game-nav2 .filter dl > div {
	justify-content: center;
}
.game-nav2 .form-list dt {
	color: var(--gray4);
	font-weight: 400;
}
@media screen and (min-width: 769px), print {
	.game-nav2 {
		margin-bottom: 12px;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		margin: 16px 0;
	}
	.game-nav2 .filter {
		margin-top: 0;
		margin-left: 12px;
		padding: 4px 12px;
	}
}
/* 記録トップナビ */
.stats-nav1 .wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
}
.stats-nav1 .radio-season {
	display: flex;
}
.stats-nav1 select {
	font-size: 0.875rem; /*14px*/
	padding: 5px 24px 5px 5px;
	width: 148px;
	line-height: 1.428571428571429; /*h20*/
}
.stats-nav1 .radio-season .radio-label {
	margin-right: 0;
	margin-left: 4px;
}
.stats-nav1 .radio-label .label-text {
	padding: 5px 5px;
	font-size: 0.875rem; /*14px*/
	line-height: 1.428571428571429; /*h20*/
}
.stats-nav1 .button-bar-a {
	margin: 0 0 0 4px;
	flex: 1 1 auto;
	max-width: 79px;
}
.stats-nav1 .button-a {
	height: 32px;
	width: 100%;
	font-size: 0.875rem; /*14px*/
}
@media screen and (min-width: 769px), print {
	.stats-nav1 select {
		font-size: 0.875rem; /*14px*/
		padding: 10px 24px 10px 10px;
		line-height: 1.428571428571429; /*h20*/
		width: auto;
	}
	.stats-nav1 .radio-season .radio-label {
		margin-right: 0;
		margin-left: 12px;
	}
	.stats-nav1 .radio-label .label-text {
		padding: 10px 10px;
		font-size: 0.875rem; /*14px*/
		line-height: 1.428571428571429; /*h20*/
	}
	.stats-nav1 .button-bar-a {
		margin: 0 0 0 12px;
		flex: 1 1 auto;
		max-width: 129px;
	}
	.stats-nav1 .button-a {
		height: 40px;
		width: 100%;
		font-size: 1rem; /*16px*/
	}
}
/* stats-standings */
.stats-nav2 {
	margin: 0 0 12px;
}
.stats-nav2 .form-list > div {
	justify-content: flex-end;
}
.header-scoreboard {
	background: #fff;
	border-radius: var(--rad-m);
	padding: 12px;
	margin: 0 auto;
}
.stats-nav2 .form-list dt {
	color: var(--gray4);
	font-weight: 400;
}
@media screen and (min-width: 769px), print {
	.header-scoreboard {
		padding: 16px;
		max-width: 760px;
	}
}
/*シーズン順位表 */
.highlight-buttons {
	display: flex;
	align-items: center;
}
.highlight-buttons li a {
	padding: 3px;
	display: block;
}
.highlight-buttons li:not(:first-child) {
	margin-left: 4px;
}
.highlight-buttons li {
	transition: opacity 100ms;
	opacity: 0.3;
	border: 1px solid #808080;
	border-radius: var(--rad-s);
	width: 32px;
	height: 32px;
}
.highlight-buttons li.selected {
	opacity: 1;
	border-color: var(--primary);
}
/* 試合結果 */
.game-result-item-c .game-result-heading {
	font-size: 0.875rem; /*14px*/
	text-align: center;
	font-weight: 700;
	line-height: 1.25;
}
.game-result-item-c .game-result-header p.date {
	font-size: 0.75rem; /*12px*/
	text-align: center;
	line-height: 1.25;
	color: var(--gray2);
}
.game-result-item-c .game-result-body {
	display: flex;
	justify-content: center;
	background-color: var(--green-bg);
	border-radius: var(--rad-m);
	padding: 6px;
	margin: 6px 0 calc(16px - 2px);
}
.game-result-item-c .univ1, .game-result-item-c .univ2 {
	display: flex;
	width: 100%;
	align-items: center;
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	line-height: 1.2;
}
.game-result-item-c .univ1 .univ-name, .game-result-item-c .univ2 .univ-name {
	display: none;
}
.game-result-item-c .univ1.besidesbig6 .univ-name, .game-result-item-c .univ2.besidesbig6 .univ-name {
	display: inline;
}
.game-result-item-c .univ1 {
	justify-content: flex-end;
	text-align: right;
	order: 1;
}
.game-result-item-c .univ2 {
	order: 3;
}
.game-result-item-c .flag {
	width: 72px;
	display: block;
	line-height: 24px;
	box-sizing: content-box;
	padding: 0 6px;
}
.game-result-item-c .score {
	order: 2;
	display: flex;
	align-items: center;
	font-size: 1.125rem; /*18px*/
	line-height: 24px;
}
.game-result-item-c .score1, .game-result-item-c .score2 {
	width: 2em;
	text-align: center;
	display: block;
}
.game-result-item-c .hyphen {
	display: block;
	text-align: center;
}
@media screen and (min-width: 769px), print {
	.game-result-item-c .game-result-header {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.game-result-item-c .game-result-heading {
		font-size: 1.125rem; /*18px*/
	}
	.game-result-item-c .game-result-header p.date {
		font-size: 1rem; /*16px*/
		margin-left: 1em;
	}
	.game-result-item-c .game-result-body {
		padding: 14px;
		margin: 12px 0 calc(16px - 2px);
	}
	.game-result-item-c .univ1, .game-result-item-c .univ2 {
		font-size: 1rem; /*16px*/
	}
	.game-result-item-c .flag {
		width: 96px;
		line-height: 24px;
		padding: 0 2px;
	}
	.game-result-item-c .score {
		font-size: 1.75rem; /*28px*/
		line-height: 32px;
	}
}
/*スコアボード*/
.scoreboard .scoreboard-table {
	margin: 0 auto;
}
.member-list-a {
	background: #fff;
	border-radius: var(--rad-m);
	overflow: hidden;
}
.member-list-header-a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 12px;
}
.member-list-header-a .team {
	display: flex;
	align-items: center;
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
}
.member-list-header-a .team .flag {
	width: 16px;
	margin-right: 0.5em;
}
.member-list-header-a .team .flag img {
	display: block;
}
@media screen and (min-width: 769px), print {
	.member-list-header-a {
		padding: 8px 12px;
	}
	.member-list-header-a .team {
		font-size: 1rem; /*16px*/
	}
	.member-list-header-a .team .flag {
		width: 20px;
	}
}
.dl-a {
	display: flex;
	font-size: 0.75rem; /*12px*/
}
.dl-a > dt {
	color: var(--gray4);
	margin-left: 1em;
	font-weight: 400;
}
.dl-a > dd {
	color: var(--black);
	margin-left: 0.25em;
}
@media screen and (min-width: 769px), print {
	.dl-a {
		font-size: 0.875rem; /*14px*/
	}
}
.dl-b > div {
	display: flex;
	font-size: 0.75rem; /*12px*/
	background: #fff;
	border-radius: var(--rad-m);
	padding: 0.75em 12px;
}
.dl-b > div > dt {
	color: var(--gray4);
	font-weight: 400;
}
.dl-b > div > dd {
	color: var(--black);
	margin-left: 0.5em;
}
@media screen and (min-width: 769px), print {
	.dl-b > div {
		font-size: 0.875rem; /*14px*/
		padding: 0.678571428571429em 12px;
	}
}
.dl-c > div {
	display: flex;
	font-size: 0.75rem; /*12px*/
	line-height: 1.333333333333333; /*16*/
	background: #fff;
	border-radius: var(--rad-m);
	padding: 10px 12px;
}
.dl-c > div > .flag {
	width: 16px;
	height: 16px;
	margin-right: 8px;
}
.dl-c > div > .flag > img {
	display: block;
}
@media screen and (min-width: 769px), print {
	.dl-c > div {
		display: flex;
		font-size: 0.875rem; /*14px*/
		line-height: 1.5; /*21*/
		background: #fff;
		border-radius: var(--rad-m);
		padding: 9.5px 12px;
	}
	.dl-c > div > .flag {
		height: 21px;
	}
	.dl-c > div > .flag > img {
		display: block;
		padding-top: 2.5px;
	}
}
.dl-d {
	display: flex;
	flex-wrap: wrap;
}
.dl-d dt {
	color: var(--gray5);
	font-weight: 400;
}
.dl-d dd {
	color: var(--black);
	margin-left: 0.5em;
	margin-right: 2em;
}
.dl-e > div {
	display: flex;
}
.dl-e > div > dt {
	flex: 0 0 auto;
	font-weight: 400;
	margin-right: 1em;
}
.dl-e > div > dd {
	flex: 1 1 auto;
}
ul.tags {
	display: flex;
	flex-wrap: wrap;
}
ul.tags li {
	margin-right: 0.5em;
}
ul.tags li a {
	color: var(--primary);
	text-decoration: underline;
}
/* ============================== */
/*  PAGING,PAGER  */
/* ============================== */
.chapter-section + .paging, .chapter-section-s + .paging {
	margin-top: -16px;
}
.paging ul {
	display: flex;
	justify-content: center;
	font-size: 1rem; /*16px*/
}
.paging li:not(:first-child) {
	margin-left: 4px;
}
.paging li > a, .paging li .current {
	padding: 0.375em;
	min-width: 2.25em;
	background: #fff;
	color: var(--primary);
	border-radius: var(--rad-m);
	display: block;
	text-align: center;
}
.paging li .current {
	background-color: var(--primary);
	color: #fff;
	display: block;
}
.paging li .dots {
	background-color: transparent;
	color: var(--gray4);
	display: block;
}
.paging li .prev, .paging li .next {
	background-color: var(--secondary);
	color: #fff;
	display: block;
	text-indent: -9999px;
	overflow: hidden;
	position: relative;
}
.paging li .prev::after, .paging li .next::after {
	content: "";
	width: 0.53125em;
	height: 0.53125em;
	top: calc((100% - 0.53125em) / 2);
	transform: rotate(45deg);
	position: absolute;
}
.paging li .prev::after {
	border-top: 2px solid var(--white);
	border-left: 2px solid var(--white);
	transform: rotate(-45deg);
	left: 1em;
}
.paging li .next::after {
	border-top: 2px solid var(--white);
	border-right: 2px solid var(--white);
	transform: rotate(45deg);
	right: 1em;
}
.paging li > a.disabled {
	background: rgba(0, 0, 0, 0.1);
}
@media screen and (min-width: 769px), print {
	.chapter-section + .paging {
		margin-top: -8px;
	}
}
.member-info-a {
	background: var(--white);
	border-radius: var(--rad-m);
	padding: 12px;
}
.member-info-a .player-main-image {
	margin: 0 0 12px;
}
.member-info-a .player-main-image img {
	border-radius: var(--rad-s);
}
.member-info-a .player-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center
}
.member-info-a .player-header .flag {
	width: 54px;
	margin-right: 8px;
}
.member-info-a .player-header .flag img {
	display: block;
}
.member-info-a .player-header .player-position {
	color: var(--primary);
	font-size: 0.875rem; /*14px*/
	font-weight: 700;
	line-height: calc(18 / 14);
}
.member-info-a .player-header .player-name {
	font-size: 1.375rem; /*22px*/
	font-weight: 700;
	position: relative;
	display: flex;
	flex-direction: column-reverse;
	line-height: 1.3;
	width: 100%;
	margin: 4px 0 0;
}
.member-info-a .player-header .player-name .ruby {
	color: var(--gray4);
	font-size: 0.75rem; /*12px*/
}
.member-info-a .player-portrait {
	width: 54px;
	height: 72px;
	border-radius: var(--rad-s);
	overflow: hidden;
}
.member-info-a .player-portrait img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.player-profile .profile-header {
	background-color: var(--green-bg);
	color: rgba(17, 105, 75, 0.5);
	font-size: 0.8125rem; /*13px*/
	padding: 0.134615384615385em 6px;
	border-radius: var(--rad-s);
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 4px;
}
.profile-body {
	font-size: 0.8125rem; /*13px*/
	line-height: 1.846153846153846;
}
@media screen and (min-width: 769px), print {
	.member-info-a {
		padding: 16px;
	}
	.member-info-a .player-main-image {
		margin: 0 0 16px;
	}
	.member-info-a .player-header {
		display: flex;
		flex-wrap: wrap;
		align-items: center
	}
	.member-info-a .player-header .flag {
		width: 72px;
		margin-right: 8px;
	}
	.member-info-a .player-header .player-position {
		font-size: 1rem; /*16px*/
		line-height: calc(24 / 16);
	}
	.member-info-a .player-header .player-name {
		font-size: 2rem; /*32px*/
		font-weight: 700;
		margin: 10px 0 0;
	}
	.member-info-a .player-header .player-name .ruby {
		font-size: 1rem; /*16px*/
	}
	.member-info-a .player-portrait {
		width: 189px;
		height: 252px;
		border-radius: var(--rad-s);
	}
	.player-profile .profile-header {
		font-size: 1rem; /*16px*/
		padding: 0.21875em 8px;
	}
	.player-profile .profile-header .notice {
		font-size: 0.8125rem; /*13px*/
	}
	.profile-body {
		font-size: 1rem; /*16px*/
		line-height: 1.8125;
	}
}
.member-info-a .player-info-body {
	display: grid;
	grid-template-columns: 54px 1fr;
	grid-gap: 8px 12px;
}
.member-info-a .player-info-body > .player-header {
	grid-row: 1 / 2;
	grid-column: 2 / 3;
}
.member-info-a .player-info-body > .player-portrait {
	grid-row: 1 / 2;
	grid-column: 1 / 2;
}
.member-info-a .player-info-body > .player-profile {
	grid-row: 2 / 3;
	grid-column: 1 / 3;
}
@media screen and (min-width: 769px), print {
	.member-info-a .player-info-body {
		display: grid;
		grid-template-columns: 189px 1fr;
		grid-gap: 12px 16px;
	}
	.member-info-a .player-info-body > .player-header {
		grid-row: 1 / 2;
		grid-column: 2 / 3;
	}
	.member-info-a .player-info-body > .player-portrait {
		grid-row: 1 / 3;
		grid-column: 1 / 2;
	}
	.member-info-a .player-info-body > .player-profile {
		grid-row: 2 / 3;
		grid-column: 2 / 3;
	}
}
.univ-title .image {
	border-radius: var(--rad-m) var(--rad-m) 0 0;
	overflow: hidden;
}
.univ-title .univ-info {
	padding: 12px 12px 10px;
	border-radius: 0 0 var(--rad-m) var(--rad-m);
	background: #fff url("../images/logo_mark-light.svg") no-repeat top 6px right 12px;
	background-size: 114px;
}
.univ-title .univ-info .flag {
	width: 81px;
}
.univ-title .univ-info .flag img {
	display: block;
}
.univ-title .univ-info .univ {
	display: block;
	font-size: 1.25rem; /*20px*/
	font-weight: 700;
	margin-top: 0.2em;
}
.univ-data {
	font-size: 0.875rem; /*14px*/
	line-height: 1.714285714285714;
	margin-top: 24px;
}
.univ-data div {
	display: flex;
	flex-wrap: wrap;
}
.univ-data dt {
	color: var(--black);
	font-weight: 400;
}
.univ-data dd {
	color: var(--black);
	margin-left: 0.25em;
	font-weight: 700;
}
.univ-data dt.start {
	background: url("../images/ico_flag-primary.svg") no-repeat left center;
	background-size: 1.142857142857143em;
	padding-left: 1.5em;
}
.univ-data dt.wins {
	background: url("../images/ico_trophy-primary.svg") no-repeat left center;
	background-size: 1.142857142857143em;
	padding-left: 1.5em;
}
@media screen and (min-width: 769px), print {
	.univ-title {
		display: flex;
	}
	.univ-title .image {
		width: 50%;
		border-radius: var(--rad-m) 0 0 var(--rad-m);
	}
	.univ-title .univ-info {
		border-radius: 0 var(--rad-m) var(--rad-m) 0;
		background-position: top 14px right 20px;
		background-size: 134px;
		width: 50%;
		padding: 24px;
		position: relative;
	}
	.univ-title .univ-info .flag {
		width: 81px;
	}
	.univ-title .univ-info .univ {
		font-size: 1.625rem; /*26px*/
	}
	.univ-data {
		font-size: 1rem; /*16px*/
		line-height: 1.5;
		margin-top: 0;
		position: absolute;
		bottom: 24px;
		left: 24px;
	}
}
.gallery-list-a {
	display: flex;
	flex-wrap: wrap;
}
.gallery-list-a li {
	box-shadow: var(--box-shadow1);
	border: 2px solid #fff;
	border-radius: var(--rad-m);
	width: calc((100% - 8px * 2) / 3);
	margin-left: 8px;
	margin-top: 8px;
	background: #fff;
}
.gallery-list-a li:nth-child(-n + 3) {
	margin-top: 0px;
}
.gallery-list-a li:nth-child(3n + 1) {
	margin-left: 0px;
}
.gallery-list-a li img {
	border-radius: var(--rad-s);
}
@media screen and (min-width: 769px), print {
	.gallery-list-a li:nth-child(n) {
		border: 4px solid #fff;
		width: calc((100% - 12px * 3) / 4);
		margin-left: 12px;
		margin-top: 12px;
	}
	.gallery-list-a li:nth-child(-n + 4) {
		margin-top: 0px;
	}
	.gallery-list-a li:nth-child(4n + 1) {
		margin-left: 0px;
	}
}
.gallery-list-b {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
.gallery-list-b li {
	border: 6px solid #fff;
	background: #fff;
	border-radius: var(--rad-m);
	width: calc((100% - 8px) / 2);
	margin-left: 8px;
	margin-top: 8px;
}
.gallery-list-b li:nth-child(-n + 2) {
	margin-top: 0px;
}
.gallery-list-b li:nth-child(2n + 1) {
	margin-left: 0px;
}
.gallery-list-b .photo-caption {
	font-size: 0.8125rem; /*13px*/
	line-height: 1.333333333;
	margin-top: 8px;
}
@media screen and (min-width: 769px), print {
	.gallery-list-b li:nth-child(n) {
		width: calc((100% - 12px * 2) / 3);
		margin-left: 12px;
		margin-top: 12px;
	}
	.gallery-list-b li:nth-child(-n + 3) {
		margin-top: 0px;
	}
	.gallery-list-b li:nth-child(3n + 1) {
		margin-left: 0px;
	}
	.gallery-list-b .photo-caption {
		font-size: 0.875rem; /*14px*/
		margin-top: 12px;
	}
}
.progress-list-a {}
.progress-list-a .progress-list-item {
	background: #fff;
	padding: 10px 8px;
	border-radius: var(--rad-m);
	display: flex;
	align-items: flex-start;
	font-size: 0.875rem; /*14px*/
	line-height: 1.142857142857143; /*16px*/
}
.progress-list-a .progress-list-item:not(:first-child) {
	margin-top: 4px;
}
.progress-list-item dt {
	font-weight: 400;
}
.progress-list-item .order {
	font-size: 0.6875rem; /*11px*/
	line-height: 1.454545454545455; /*16px*/
	min-width: 1.454545454545455em;
	text-align: center;
	padding: 0 0.25em;
	border-radius: var(--rad-s);
	background-color: #eee;
	color: var(--secondary);
	margin-right: 8px;
	flex: 0 0 auto;
	font-weight: 700;
}
.progress-list-a.b1 .progress-list-item .order {
	background-color: var(--blue-bg);
}
.progress-list-a.b2 .progress-list-item .order {
	background-color: var(--red-bg);
}
.progress-list-item .player {
	color: var(--secondary);
	display: inline;
}
.progress-list-item .status {
	color: var(--gray4);
	display: inline;
	padding-left: 0.5em;
}
.progress-list-item .play {
	margin-top: 0.571428571428571em;
}
@media screen and (min-width: 769px), print {
	.progress-list-a .progress-list-item {
		padding: 8px 12px;
		font-size: 0.9375rem; /*15px*/
		line-height: 1.6; /*24px*/
	}
	.progress-list-a .progress-list-item:not(:first-child) {
		margin-top: 4px;
	}
	.progress-list-item dt {
		font-weight: 400;
	}
	.progress-list-item .order {
		font-size: 0.875rem; /*14px*/
		line-height: 1.714285714285714; /*24px*/
		min-width: 1.714285714285714em;
		padding: 0 0.25em;
	}
	.progress-list-item .play {
		margin-top: 0;
	}
}
.list-sort-a {
	margin: 0 0 8px auto;
	text-align: right;
}
.list-sort-a select {
	font-size: 0.875rem; /*14px*/
	text-align: left;
	background-color: #fff;
}
.body-copy-a {
	font-size: 0.875rem; /*14px*/
}
.body-copy-a .footnote {
	color: var(--gray3);
	margin-top: 1em;
}

@media print {
	a::after {
		content: " ("attr(href)") ";
		font-size: 0.8em;
		font-weight: normal;
	}
}

.hidden{
	display: none;
}
.block{
	display:block;
}
.cursor-text{
	cursor:text;
}
.mt-1.5{
	margin-top: 0.375rem;
}

.flex{
	display: flex;
}
/* ============================== */
/*  広告  */
/* ============================== */

#sp-banner {
	height: 104px;
	width: 100%;
	position: fixed;
	bottom: 0;
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(0, 0, 0, 0.4);
}
.sp-banner-item {
	box-shadow: 0px 0px 5px rgba(0,0,0,0.2);
}
.sp-banner-item img {
	width: 320px;
	height: 80px;
}
@media screen and (min-width: 769px) {
	#sp-banner {
		display: none;
	}
}
.side-banner {
	margin-top: -24px;
	margin-bottom: 24px;
}
.side-banner ul li {
	margin-bottom: 12px;
}
.side-banner ul li img {
	border-radius: 2px;
}
@media screen and (max-width: 1056.98px) {
	.side-banner {
		display: none;
	}
}