@charset "UTF-8";
html	{height: 100%;}
body	{width: 100%; height: 100%; margin: 0; padding: 0; color: #444444; background-color: #000000; font-family: "Noto Sans JP", "メイリオ", Meiryo,"HiraKakuPro-W3","ヒラギノ角ゴ Pro W3","Helvetica Neue", Helvetica, "Arial", "ＭＳ Ｐゴシック",sans-serif; font-optical-sizing: auto; line-height: 1.6;}
*{box-sizing: border-box;}
*:not(b){font-weight: 500;}
img{max-width: 100%; height: auto; vertical-align: top;}
select{font-family: "Noto Sans JP", "メイリオ", Meiryo,"HiraKakuPro-W3","ヒラギノ角ゴ Pro W3","Helvetica Neue", Helvetica, "Arial", "ＭＳ Ｐゴシック",sans-serif;}
input{height: 50px; padding: 0 2.0em 0 1.0em; border: 1px solid #000000; border-radius: 0; font-size: 1.0em; appearance: none; outline: none;}
em{font-style: normal;}
.clearfix:before, .clearfix:after { content: " "; display: table;}
.clearfix:after { clear: both;}
.clearfix {*zoom:1;}
main{padding-bottom: 3.0em; background-color: #f7f2e6;}
nav ul{margin: 0; padding: 0; list-style-type: none;}
nav li a{text-decoration: none;}
header h1{background-color: #c9151e;}
header nav > ul > li{position: relative;}
header nav ul li *:not(span){display: flex; align-items: center; width: 100%; color: #969696; background-color: #323232; font-weight: 500; text-decoration: none; line-height: 1.4;}
header nav ul li ul{display: none;}
header nav ul li ul li *{border-top: 1px solid #ffffff;}
footer{padding: 2.0em 0; color: #ffffff; background-color: #c9151e; text-align: center;}
footer p{margin: 1.0em 0 0; font-size: 0.65em;}
.heading h1{background-color: #ffffff; box-shadow: 1px 1px 2px rgba(0,0,0,0.25);}
.heading h1 strong{display: block; margin-bottom: 0.75em; padding-bottom: 0.75em; border-bottom: 1px solid #000000;}
.heading h1 strong em{display: block;}
.heading .frame{position: relative; box-shadow: 10px 10px 8px rgba(0,0,0,0.25);}
.heading .frame span{display: flex; align-items: center; justify-content: center; position: absolute; top: 0; right: 0; bottom: 0; left: 0;}
.heading nav > ul{display: flex; align-items: center; justify-content: space-between;}
.heading nav ul > li{width: 100%;}
.heading nav ul > li:not(:first-child){margin-left: 10px;}
.heading nav ul > li a{display: block; padding: 0.75em 0; color: #969696; background-color: #323232; font-weight: 500; text-align: center; transition: all 0.25s;}
.heading nav ul > li a:hover{color: #ffffff; background-color: #000000;}
.heading nav ul > li a span{display: inline-block; margin-left: 0.5em; font-size: 0.75em;}
.page-top .heading nav ul > li.nav-top a,
.page-chronicle .heading nav ul > li.nav-chronicle a,
.page-match .heading nav ul > li.nav-match a,
.page-result .heading nav ul > li.nav-result a,
.page-record .heading nav ul > li.nav-record a,
.page-wch .heading nav ul > li.nav-wch a,
.page-photo .heading nav ul > li.nav-photo a{color: #ffffff; background-color: #c9151e;}

nav.anchor ul{display: flex; flex-wrap: wrap; margin-bottom: 1.5em; border-right: 1px solid #000000; border-bottom: 1px solid #000000; border-left: 1px solid #000000;}
nav.anchor ul li{display: inline-block; border-top: 1px solid #000000; line-height: 1.2;}
nav.anchor ul li > *{display: block; padding: 0.5em 0 0.5em; text-align: center;}
nav.anchor ul li > * span:before{display: inline-block; content: "〜";}
nav.anchor ul li a{color: #000000; background-color: #ffffff; transition: all 0.25s;}
nav.anchor ul li a:hover{background-color: #ffffff;}
nav.anchor ul li b{color: #ffffff; background-color: #000000;}
nav.num ol{display: flex; align-items: center; justify-content: center;}
ul + nav.num{margin-top: 2.0em;}
nav.num ol li{width: 40px; margin: 0 5px;}
nav.num ol li > *{display: flex; align-items: center; justify-content: center; height: 40px;}
nav.num ol li > a{color: #444444; background-color: #ffffff;}
nav.num ol li:is(.first,.last) > a{background-color: transparent;}
nav.num ol li > b{color: #ffffff; background-color: #c9151e;}
nav.nextback ul{display: flex; align-items: center; justify-content: center; margin: 2.0em auto 0; background-color: #ffffff; border: 2px solid #000000;}
nav.nextback ul li{width: 100%; margin: 0 5px;}
nav.nextback ul li > *{display: block; margin: 0 5px; padding: 1.0em; color: #444444; text-align: center;}
nav.nextback ul > li:nth-of-type(2) > *{border-right: 2px solid #000000; border-left: 2px solid #000000;}
.block-list dl{display: flex; align-items: stretch; flex-wrap: wrap; justify-content: space-between; border-top: 2px solid #000000;}
.block-list dl dt{display: flex; align-content: stretch; justify-content: center; background-color: #ffffff; border-bottom: 2px solid #000000; text-align: center;}
.block-list dl dt > span{display: flex; align-items: center; flex-direction: column; justify-content: center; /*padding: 0 1.0em;*/}
.block-list dl dt > span a{display: block; margin-top: 0.75em; padding: 0.25em 1.0em; color: #ffffff; background-color: #c9151e; text-decoration: none; transition: all 0.25s;}
.block-list dl dt > span :hover{background-color: #640a0f;}
.block-list dl dt em{width: 100%;}
.page-chronicle article > section > strong{margin-bottom: 0;}
.page-chronicle article > section > strong:not(:nth-of-type(1)),
.dir-people article > section > section > strong:not(:nth-of-type(1)){display: inline-block; margin: 1.5em 0 0;}
.page-chronicle .block-list dl dt{align-items: flex-start; padding-top: 0.5em;}
.page-chronicle .block-list dl dt span{padding: 1.0em 0 1.0em 1.0em;}
.block-list dl dd{padding: 30px; background-color: #ffffff; border-bottom: 2px solid #000000;}
.box-list > ul{display: flex; flex-wrap: wrap;}
.box-list > ul > li{padding: 0 1.5em 1.5em; background-color: #ffffff;}
.box-list ul li strong{display: block; margin-bottom: 0.5em; padding: 0.5em 0; border-bottom: 3px solid #000000; text-align: center;}
.box-list ul li .field{ background-color: #ffffff;}
.dir-jch.page-record .box-list{margin-bottom: 1.5em;}
.dir-jch.page-record .box-list span{flex-grow: 1;}
.dir-knowledge .box-list > ul > li a{display: inline-block; position: relative; padding-left: 1.25em; color: #000000; text-decoration: none;}
.dir-knowledge .box-list > ul > li a:before{display: block; content: ""; position: absolute; top: 0.60em; left: 0; width: 6px; height: 6px; border-top: 2px solid #c9151e; border-right: 2px solid #c9151e; transform: rotate(45deg)}
.thumb-list ul{display: flex; flex-wrap: wrap;}
.thumb-list ul li a{display: block; color: #000000; text-decoration: none;}
.thumb-list ul li a span{display: block; margin-bottom: 0.5em; overflow: hidden;}
.thumb-list ul li a span img{transition: all 0.25s;}
.thumb-list ul li a:hover span img{transform: scale(1.1);}
.thumb-list ul li{font-size: 0.85em; line-height: 1.4;}
.thumb-list ul li strong{display: block; font-size: 1.15em;}
.view-more{display: block; margin-top: 0.25em; text-align: right;}
.page-photo ul + .view-more{margin-top: 2.0em;}
.view-more button{display: inline-block; padding: 0.25em 0.5em; color: #c9151e; background-color: rgba(201,21,30,0.15); border: none; font-size: 1.0em; line-height: 1.0; cursor: pointer;}
.view-more button:hover{background-color: rgba(201,21,30,0.25);}
.view-more button:before{display: inline-block; content: "…";}
.view-more a{display: inline-block; position: relative; padding: 0.5em calc(17px + 1.50em) 0.5em 1.0em; color: #ffffff; background-color: #c9151e; text-decoration: none; transition: all 0.25s;}
.view-more a:after{display: block; content: ""; position: absolute; top: calc(50% - 10px); right: 1.0em; width: 17px; height: 20px; background: transparent url("../img/icon-self.png") no-repeat center center; background-size: 80%;}
.view-more a:hover{background-color: #981118;}
.view-more ~ *:not(.view-more){display: none;}
.clearfix > .view-more{clear: both;}
.overview:has(p:nth-of-type(2)){margin-bottom: 2.0em; padding-bottom: 2.0em; border-bottom: 2px dotted #000000;}
.overview p.cancel{padding: 2.0em 0; background-color: #ffffff; text-align: center;}
.uniform{padding: 1.5em; background-color: #ffffff; border: 10px solid #aaaaaa; text-align: center;}
.ttl-bold, .ttl-regular, .ttl-light{margin: 0 0 0.75em; text-align: center;}
.ttl-article{margin: 0 0 0.75em; padding-bottom: 0.25em; border-bottom: 2px solid #000000;}
.ttl-bold strong{display: inline-block; padding: 0.25em 1.5em; background-color: #ffffff; border: 1px solid #000000; text-align: center;}
.ttl-regular strong{display: inline; padding-bottom: 0.15em; border-bottom: 3px solid #000000;}
.ttl-sub{margin: 0 0 0.75em; padding: 0.5em; color: #ffffff; background-color: #000000;}
.ttl-sub span{margin-left: 1.0em; font-size: 0.75em;}
.item-button{text-align: center;}
.cover{width: 100%;}
.body-article + .item-button{margin-top: 1.5em;}
.body-article strong, .body-article b, .overview strong, .overview b{font-weight: 700;}
.item-button a{display: inline-block; position: relative; padding: 0 5px 5px 0; text-align: center; text-decoration: none; transition: all 0.25s;}
.item-button a:before{display: block; content: ""; position: absolute; bottom: 0; right: 0; width: calc(100% - 5px); height: calc(100% - 5px); background-color: #640000;}
.item-button a span{display: flex; align-items: center; justify-content: center; position: relative; width: 100%; padding-right: 40px; color: #ffffff; background-color: #c9151e; z-index: 1;}
.item-button a span:after{display: inline-block; content: ""; position: absolute; right: 1.0em;}
.item-button a[target="_self"] span:after{top: calc(50% - 20px); width: 34px; height: 40px; background: transparent url("../img/icon-self.png") no-repeat center center; background-size: 100%;}
.item-button a[target="_pdf"] span:after{top: calc(50% - 18px); width: 32px; height: 37px; background: transparent url("../img/icon-pdf.png") no-repeat center center; background-size: 100%;}
.item-button a[target="_blank"] span:after{top: calc(50% - 17px); width: 34px; height: 34px; background: transparent url("../img/icon-external.png") no-repeat center center; background-size: 100%;}
.item-select span{display: inline-block; position: relative;}
.item-select span:before{display: block; content: ""; position: absolute; top: calc(50% - 8px); right: 1.0em; width: 20px; height: 17px; background-color: #000000; clip-path: polygon(50% 100%, 0 0, 100% 0); pointer-events: none;}
.item-select span select{display: flex; height: 50px; padding: 0 2.0em 0 1.0em; border: 1px solid #000000; border-radius: 0; font-size: 1.0em; appearance: none; outline: none;}
.item-select.cover span, .item-select.cover span select{width: 100%;}
.item-attachment{margin-top: 1.5em;  background-color: #ffffff; border-top: 1px solid #000000; border-right: 1px solid #000000; border-left: 1px solid #000000;}
.item-attachment strong{display: block; padding: 0.75em; color: #ffffff; background-color: #000000;}
.item-attachment ol li{border-bottom: 1px solid #000000;}
.item-attachment ol li a{display: flex; align-items: center; justify-content: space-between; padding: 0.5em 0.75em; color: #000000; text-decoration: none;}
.item-attachment ol li a:after{content: "\f56d"; margin: 0 0.25em 0 1.0em; color: #c9151e; font-family: 'Font Awesome 7 Free'; font-size: 1.25em; font-weight: 900;}
.item-share {display: flex; justify-content: center;}
.item-share li {width: 30px; margin: 0 5px;}
.item-share li a {display: block; height: 30px; line-height: 30px; font-size: 24px; text-decoration: none; overflow: hidden;}
.item-share li a:before {display: block; font-family: 'Font Awesome 7 Brands'; font-weight: 700;}
.item-share li.icon-x a:before {content: "\e61b"; color: #000000;}
.item-share li.icon-facebook a:before {content: "\f09a"; color: #0866ff;}
.dir-gallery .photo .cr{margin: 0.5em 0 0; font-size: 0.75em;}
.dir-gallery .photo .item-share{margin-top: 1.0em;}
.form-search{background-color: #ffffff; border: 2px solid #000000; border-radius: 10px;}
.ttl-regular + .form-search{margin-top: 2.0em;}
.form-search strong{display: flex;align-items: center; padding: 1.0em 0; color: #ffffff; background-color: #000000;}
.form-search p button{display: flex; align-items: center; justify-content: center; height: 50px; padding: 0; color: #ffffff; background-color: #c9151e; border: none; border-radius: 5px; font-size: 1.0em; appearance: none; outline: none; cursor: pointer;}
.form-search + .result{margin-top: 1.5em;}
.dir-gallery article .col p{margin: 0.5em 0 0;}
.dir-gallery article .col a{color: #444444; text-decoration: none;}
.dir-gallery form{margin: 0 auto 1.5em; padding: 0.75em; background-color: #ffffff; border: 2px solid #000000; border-radius: 10px;}
.dir-gallery .pickup{margin-bottom: 2.0em; padding-bottom: 2.0em; border-bottom: 2px solid #000000;}
.dir-gallery .photo{margin: 1.5em 0; text-align: center;}
.page-photo ul li p strong{display: block;}
.page-photo ul li p span{display: block; margin-top: 0.5em; padding-top: 0.5em; border-top: 1px dotted #000000; font-size: 0.75em;}
.page-photo ul li p span em{display: block;}

table.record{border-collapse: collapse; border: 1px solid #000000;}
table.record thead th{padding: 0.25em; color: #ffffff; background-color: #000000; font-size: 0.75em;}
table.record tbody td{padding: 0.25em; background-color: #ffffff; border: 1px solid #000000;}

.dir-knowledge article section.field{padding: 1.0em; background-color: #ffffff; border: 2px solid #000000;}
.page-article article > section h1{text-align: left;}
.page-article article > section .item-button{margin-top: 1.5em;;}

.reset, .reset dt, .reset dd{margin: 0; padding: 0; list-style-type: none;}
.text-right{text-align: right;}
.text-center{text-align: center;}
.text-left{text-align: left;}
hr.spacer{padding: 1.5em 0; border: none; outline: none;}
.swiper-pagination{position: relative;}
.swiper-horizontal .swiper-button-prev, .swiper-horizontal .swiper-button-next{top: 21vw; width: 30px; height: 40px; background-color: #ffffff; box-shadow: 0px 0px 5px rgba(0,0,0,0.25);}
.swiper-horizontal .swiper-button-prev{left: 0; border-radius: 0 5px 5px 0;}
.swiper-horizontal .swiper-button-next{right: 0; border-radius: 5px 0 0 5px;}
.swiper-button-prev:before, .swiper-button-next:before{display: block; content: ""; width: 10px; height: 10px; border-top: 2px solid #c9151e; border-right: 2px solid #c9151e;}
.swiper-button-prev:before{margin-left: 5px; transform: rotate(-135deg);}
.swiper-button-next:before{margin-right: 5px; transform: rotate(45deg);}
.swiper-button-prev svg, .swiper-button-next svg{display: none;}
.swiper-pagination-bullet-active{background-color: #c9151e;}
.dir-gallery .swiper a{color: #444444; text-decoration: none;}
.dir-gallery .swiper a p{margin-bottom: 0;}

@media only screen and (max-width: 834px) {
	body	{font-size: 3.5vw;}
	main{padding-top: 1.0em;}
	.only-lg{display: none !important;}
	.container{padding: 0 1.0em;}
	.js-scrollable{white-space: nowrap;}
	header h1.reset{display: flex; align-items: center; justify-content: center;height: 70px; padding: 20px 0; text-align: center;}
	header h1 span,header h1 span a img{display: inline-block; height: 32px;}
	header button{display: flex; align-items: center; flex-direction: column; justify-content: center; position: absolute; top: 0; right: 0; width: 70px; height: 70px; padding: 0; background-color: transparent; border: none; outline: none; appearance: none;}
	body.open header button{background-color: #ffffff;/* border: 20px solid #333;*/}
	header button:before, header button:after{display: block; content: ""; width: 30px; height: 3px; background-color: #ffffff; transition: all 0.25s;}
	body.open header button:before, body.open header button:after{ width: 40px; height: 2px; background-color: #c9151e;}
	body.open header button:before{transform: rotate(45deg)/**/ translate(-4px, -14px); transform-origin: top left;}
	body.open header button:after{transform: rotate(-45deg) translate(6px, -15px); transform-origin: top right;}
	header button span{display: block; width: 30px; height: 3px; margin: 6px 0; background-color: #ffffff; text-indent: -999em;}
	body.open header button span{display: none;}
	body:not(.open) header nav{display: none;}
	header nav > ul > li > *:not(ul){height: 60px; padding: 0 1.0em; color: #ffffff !important; background-color: #c9151e; border-top: 1px solid #ffffff;}
	header nav > ul > li > a{background-color: #c9151e;}
	header nav > ul > li > b:after{display: block; content: ""; position: absolute; top: 26px; right: 1.0em; width: 15px; height: 12px; background-color: #ffffff; clip-path: polygon(50% 100%, 0 0, 100% 0); transition: all 0.25s;}
	header nav > ul > li > b.active:after{transform: rotate(180deg)}
	header nav > ul > li > *.active + ul {display: block;}
	header nav > ul > li > * + ul li a{height: 35px; padding: 0 1.0em; color: #ffffff;}
	footer img{width: 60%;}
	.heading{margin-bottom: 1.75em;}
	.heading h1{margin: 1.0em 0; padding: 1.0em; font-size: 3.5vw;}
	.heading h1 > *{font-weight: 500;}
	.heading h1 em{font-size: 4.0vw;}
	.heading .frame{box-shadow: 5px 5px 4px rgba(0,0,0,0.25);}
	.heading .frame span{padding: 7.85vw;}

	nav.anchor ul{flex-wrap: wrap;}
	.dir-history nav.anchor ul li{width: 25%;}
	.dir-jch nav.anchor ul li{width: 33.333%;}
	.dir-history nav.anchor ul li:not(:nth-of-type(4n+1)){border-left: 1px solid #000000;}
	.dir-jch nav.anchor ul li:not(:nth-of-type(3n+1)){border-left: 1px solid #000000;}
	.block-list dl dt{flex-basis: 30%;}
	.block-list dl dt em{font-size: 4.0vw;}
	.block-list dl dt span{font-size: 0.65em;}
	.block-list dl dt > span a{padding: 0.5em; font-size: 1.25em;}
	.block-list dl dd{display: flex; flex-wrap: wrap; flex-direction: column; width: 70%; padding: 1.0em;}
	.block-list dl dd button{padding: 0.5em 1.0em;}
	.block-list dl dd .photo{margin-top: 1.0em; order: 2;}
	.block-list dl dd .view-more{margin-top: 1.0em; order: 3;}
	.dir-people .block-list dl dd p span:nth-of-type(1){display: block; font-size: 0.85em;}
	.box-list.col-2 > ul > li{width: calc(50% - 0.5em);}
	.box-list.col-2 > ul > li:nth-child(even){margin-left: 1.0em;}
	.box-list.col-2 > ul > li:nth-of-type(n+3){margin-top: 1.0em;}
	.dir-jch.page-record .box-list li{padding-bottom: 0.5em;}
	.dir-jch.page-record .box-list span{display: block; padding: 0.5em 0 0.25em; text-align: center}
	.dir-knowledge .box-list > ul > li a:before{top: 0.50em;}
	.thumb-list.col-2-sm ul li{width: calc(50% - 0.5em);}
	.thumb-list.col-2-sm ul li:nth-child(even){margin-left: 1.0em;}
	.thumb-list.col-2-sm ul li:nth-of-type(n+3){margin-top: 1.0em;}
	.uniform{float: right; width: 150px; height: 150px; margin: 1.0em 0 1.0em 1.0em; padding: 1.0em; border: 5px solid #aaaaaa;}
	.uniform img{width: auto; height: calc(150px - 10px - 2.0em);}
	.ttl-bold{font-size: 5.0vw;}
	.ttl-regular, .ttl-light, .ttl-article{font-size: 4.5vw;}
	.ttl-sub{font-size: 4.0vw;}
	.ttl-unit{margin-bottom: 1.5em; text-align: center;}
	.item-button a span{padding-right: 20px;}
	.item-button a[target="_self"] span:after{top: calc(50% - 10px); width: 17px; height: 20px;}
	.item-button a[target="_pdf"] span:after{top: calc(50% - 10px); width: 16px; height: 19px;}
	.item-button a[target="_blank"] span:after{top: calc(50% - 8px); width: 17px; height: 17px;}
	.item-select span:before{top: calc(50% - 4px); width: 10px; height: 8px;}
	.item-select span select{height: 30px; padding: 0 2.0em 0 1.0em;}
	.item-button a{min-width: 80%;}
	.item-button.cover a{min-width: 100%;}
	.item-button a span{padding: 0.75em 0;}
	.item-button a:active{padding: 5px 0 0 5px;}
	div:is(.unit-2-lg, .unit-3-lg, .unit-4-lg) > .col:not(:first-child){margin-top: 1.0em;}
	.form-search strong{justify-content: center;}
	.form-search ul{display: flex; flex-wrap: wrap; padding: 0 1.0em 1.0em 0;}
	.form-search ul li{width: calc(100% - 1.0em); margin: 1.0em 0 0 1.0em;}
	.form-search ul li .item-select select, .form-search ul li .item-select span, .form-search ul li input, .form-search p button{width: 100%;}
	.form-search ul li input{height: 30px;}
	.form-search p{padding: 0 1.0em 1.0em;}	.unit-2-sm, .unit-3-sm, .unit-4-sm, .unit-5-sm{display: flex; flex-wrap: wrap;}
	.unit-2-sm.text-center, .unit-3-sm.text-center, .unit-4-sm.text-center{justify-content: center;}
	.unit-2-sm > .col{width: calc(50% - 5px);}
	.unit-2-sm > .col:nth-child(even){margin-left: 10px;}
	.unit-2-sm > .col:nth-of-type(n+3){margin-top: 10px;}
	.unit-3-sm > .col{width: calc(33.333% - 6px);}
	.unit-3-sm > .col:not(:nth-of-type(3n+1)){margin-left: 9px;}
	.unit-3-sm > .col:nth-of-type(n+4){margin-top: 10px;}
	.unit-2-lg:not(:is(.unit-2-sm,.unit-3-sm,.unit-4-sm,.unit-5-sm)) > .col:not(:first-child),
	.unit-3-lg:not(:is(.unit-2-sm,.unit-3-sm,.unit-4-sm,.unit-5-sm)) > .col:not(:first-child),
	.unit-4-lg:not(:is(.unit-2-sm,.unit-3-sm,.unit-4-sm,.unit-5-sm)) > .col:not(:first-child){margin-top: 10px;}
	.dir-gallery .swiper{width: 100vw; transform: translate(-1.0em)}
	.dir-gallery .swiper{padding: 1.0em;}
	.dir-gallery .swiper .swiper-wrapper{align-items: stretch;}
	.dir-gallery .swiper .swiper-slide{height: auto;}
	.dir-gallery .swiper .view-more{margin-top: 0;}
	.dir-gallery .swiper .view-more a{display: flex; align-items: center; justify-content: center; position: absolute; top: 0; right: 0; bottom: 0; left: 0; height: 33.8vw; padding: 0; color: #ffffff; border-radius: 10px;}
	.dir-gallery .swiper .view-more a:after{position: static; margin-left: 0.5em;}
}
@media only screen and (min-width: 835px) {
	body	{font-size: 18px;}
	main > section:not(:has(.heading)) > article{padding-top: 50px;}
	.container{width: 1160px; margin-right: auto; margin-left: auto;}
	.only-sm{display: none !important;}
	header h1{border-bottom: 1px solid #f7f2e6;}
	header h1 .field{display: block; margin: 0 40px; padding: 30px 0;}
	header h1 .field a{display: inline-block; width: 361px;}
	header nav{margin: 0 30px; background-color: #f7f2e6;}
	header nav > ul{display: flex; align-items: stretch; justify-content: space-between; width: 1338px; margin: 0 auto;}
	header nav > ul > li{display: flex; width: 100%;}
	header nav > ul > li:not(:first-child){margin-left: 2px;}
	header nav > ul > li > a, header nav > ul > li > b{flex-direction: column; flex-wrap: wrap; justify-content: center; height: 64px; color: #969696; background-color: #323232; transition: all 0.25s;}
	header nav > ul > li:hover > *, header nav > ul > li > * + ul li a:hover{color: #ffffff; background-color: #000000}
	.dir-history header nav ul li.nav-history b, .dir-history header nav ul li.nav-history a,
	.dir-record header nav ul li.nav-record b, .dir-record header nav ul li.nav-record a,
	.dir-jch header nav ul li.nav-jch b, .dir-jch header nav ul li.nav-jch a,
	.dir-olympic header nav ul li.nav-olympic b, .dir-olympic header nav ul li.nav-olympic a,
	.dir-people header nav ul li.nav-people b, .dir-people header nav ul li.nav-people a,
	.dir-knowledge header nav ul li.nav-knowledge b, .dir-knowledge header nav ul li.nav-knowledge a,
	.dir-gallery header nav ul li.nav-gallery b, .dir-gallery header nav ul li.nav-gallery a{color: #ffffff; background-color: #c9151e;}
	.dir-jch header nav ul li.nav-jch a:hover,
	.dir-olympic header nav ul li.nav-olympic a:hover,
	.dir-gallery header nav ul li.nav-gallery a:hover{color: #ffffff; background-color: #640a0f;}
	header nav > ul > li:not(:hover) > *, header nav > ul > li > * + ul { border-radius: 0 0 7px 7px; overflow: hidden;}
	header nav > ul > li > *:hover + ul, header nav > ul > li > * + ul:hover{display: block; position: absolute; top: 64px; left: 0; z-index: 1;}
	header nav > ul > li > * + ul li a{ justify-content: center; height: 64px;}
	header button{display: none;}
	header h1{border-bottom: 1px solid #f7f2e6;}
	footer img{width: 200px;}
	.heading{display: flex; align-items: flex-start; flex-direction: row-reverse; flex-wrap: wrap; padding: 50px 0;}
	.heading h1{width: 290px; margin-right: 80px; padding: 15px; font-size: 18px;}
	.heading h1 em{font-size: 28px;}
	.heading .frame{width: 790px;}
	.heading nav{width: 100%; margin-top: 50px; font-size: 20px;}
	
	nav.anchor ul li{font-size: 16px;}
	.dir-history.page-top nav.anchor ul li{width: 25%;}
	.dir-jch.page-top nav.anchor ul li{width: 16.666%;}
	.dir-jch.page-record nav.anchor ul li{width: 33.333%;}
	nav.anchor ul li > *{padding-right: 0.75em; padding-left: 0.75em;}
	nav.nextback ul{width: 600px;}
	.dir-history nav.anchor ul li:not(:nth-of-type(4n+1)),
	.dir-jch nav.anchor ul li:not(:nth-of-type(6n+1)){border-left: 1px solid #000000;}
	.block-list dl dt{flex-basis: 220px;}
	.dir-people .block-list dl dt{flex-basis: 400px;}
	.block-list dl dt em{font-size: 30px;}
	.block-list dl dd{width: calc(100% - 220px);}
	.dir-people .block-list dl dd{width: calc(100% - 400px);}
	.block-list dl dd .photo{float: right; width: 300px; margin: 0 0 1.0em 1.0em;}
	/*.dir-people .block-list dl dd p:has(.view-more){display: flex; align-items: center; justify-content: space-between;}*/
	.dir-people .block-list dl dd p.reset{display: flex; align-items: center; justify-content: space-between;}
	.dir-people .block-list dl dd p em{width: 360px; padding-right: 1.0em; border-right: 2px solid #000000;}
	.dir-people .block-list dl dd p span{width:170px;;}
	.dir-people .block-list dl dd p span:not(.view-more){padding: 0 1.0em;}
	.box-list.col-2 > ul > li{width: 550px;}
	.box-list.col-2 > ul > li:nth-child(even){margin-left: 60px;}
	.box-list.col-2 > ul > li:nth-of-type(n+3){margin-top: 60px;}
	.box-list ul li strong{font-size: 30px;}
	.box-list.col-2 > ul > li{width: 550px;}
	.dir-jch.page-record .box-list li{display: flex; align-items: center; justify-content: space-between; padding: 0.5em;}
	.dir-jch.page-record .box-list li strong{flex-grow: 1; margin-right: 1.0em; font-size: 18px;}
	.thumb-list.col-3-lg ul li{width: 370px;}
	.thumb-list.col-3-lg ul li:not(:nth-of-type(3n+1)){margin-left: 25px;}
	.thumb-list.col-3-lg ul li:nth-of-type(n+4){margin-top: 25px;}
	.uniform{float: right; width: 270px; height: 270px; margin: 1.0em 0 1.0em 1.0em;}
	.uniform img{width: auto; height: calc(270px - 20px - 3.0em);}
	.ttl-bold{font-size: 38px;}
	.ttl-regular, .ttl-light, .ttl-article{font-size: 30px;}
	.ttl-sub{font-size: 24px;}
	.ttl-unit{display: flex; justify-content: space-between;}
	.item-button a{min-width: 360px;}
	.col > .item-button a{min-width: 100%; width: 100%;}
	.item-button a span{min-height: 70px;}
	.item-button a:hover{padding: 5px 0 0 5px;}
	.form-search{display: flex;}
	.form-search strong{justify-content: center; width: 100px;}
	.form-search ul{display: flex; align-items: stretch; flex-wrap: wrap; width: calc(100% - 250px);}
	.form-search ul {padding: 1.0em;}
	.form-search ul li:first-child{width: 44%;}
	.form-search ul li:not(:first-child){width: calc(28% - 1.0em); margin-left: 1.0em;}
	.form-search ul li .item-select span, .form-search ul li .item-select span select, .form-search ul li input{width: 100%;}
	.form-search p{display: flex; align-items: center; width: 150px; padding: 0 1.0em; border-left: 2px solid #000000;}
	.form-search p button{width: 100%;}
	.dir-gallery form{width: max-content;}
	.unit-2-lg, .unit-3-lg, .unit-4-lg, .unit-5-lg{display: flex; flex-wrap: wrap;}
	.unit-2-lg.text-center, .unit-3-lg.text-center, .unit-4-lg.text-center{justify-content: center;}
	.unit-2-lg > .col{width: 550px;}
	.unit-2-lg > .col:nth-child(even){margin-left: 60px;}
	.unit-2-lg > .col:nth-of-type(n+3){margin-top: 60px;}
	.unit-3-lg > .col{width: 360px;}
	.unit-3-lg > .col:not(:nth-of-type(3n+1)){margin-left: 40px;}
	.unit-3-lg > .col:nth-of-type(n+4){margin-top: 40px;}
	.unit-4-lg > .col{width: 266px;}
	.unit-4-lg > .col:not(:nth-of-type(4n+1)){margin-left: 32px;}
	.unit-4-lg > .col:nth-of-type(n+5){margin-top: 32px;}
	.unit-5-lg > .col{width: 216px;}
	.unit-5-lg > .col:not(:nth-of-type(5n+1)){margin-left: 20px;}
	.unit-5-lg > .col:nth-of-type(n+6){margin-top: 20px;}
	table{width: 100%;}
	table.record tr > *{font-size: 16px;;}

	main{margin: 0 30px;}
	.page-article article{width: 800px; margin: 0 auto; padding-top: 1.5em;}
	.dir-gallery article > section:not(:nth-of-type(1)){margin-top: 2.0em;}
	.dir-gallery .swiper{overflow: visible;}
	.dir-gallery .swiper-wrapper{display: flex;}
	.dir-gallery .swiper-wrapper .swiper-slide{flex-shrink: inherit; width: 266px;}
	.dir-gallery .swiper-wrapper > .swiper-slide:not(:nth-of-type(4n+1)){margin-left: 32px;}
	.dir-gallery .swiper .view-more{position: absolute; top: -3.5em;; right: 0; margin-top: 0;}
	.dir-gallery .swiper .view-more a{color: #ffffff;}
}