@charset "UTF-8";

strong {font-weight: bold;}

main#top {}
main#top section.visual {height: 640px;position: relative;}
main#top section.visual ul {width: 100%;height: 100%;position: relative;overflow: hidden;z-index: 1;}
main#top section.visual ul li {position: absolute;top: 0;left: 0;z-index: 1;width: 100%;height: 100%;background-position: center;background-repeat: no-repeat;background-size: cover;}
main#top section.visual .lead {position: absolute;bottom: 40px;left: 0;z-index: 2;}
main#top section.visual .lead div {position: absolute;left: 0;}
main#top section.visual .lead div.lead1 {bottom: 51px;padding: 37px 35px 48px 49px;background: #333333;z-index: 1;}
main#top section.visual .lead div.lead2 {bottom: 0px;padding: 18px 46px 16px 50px;background: #D6000F;z-index: 2;}
main#top section.visual .lead div img {max-width: none;}

main#top section.importantNotices {border: solid 2px #FF0000;padding: 12px 18px;margin: 94px auto 0;width: calc(100% - 40px);max-width: 1000px;}
main#top section.importantNotices div {font-size: 16px;line-height: 1.5;min-height: 36px;padding: 6px 0 6px 45px;background: url(/common/images/icon_important.png) no-repeat top left / auto 36px;}
main#top section.importantNotices div::before {content: '';}
main#top section.importantNotices div a {color: #FF0012;}

main#top section.bnrArea {margin: 30px 0 0;}
main#top section.bnrArea div {background: #BCBCBC;height: 270px;}

main#top section.news {}
main#top section.news h1 {font-size: 33px;line-height: 1;font-weight: 700;margin: 45px 0 0;}
main#top section.news h1 a {margin: 0 0 0 35px;vertical-align: middle;}
main#top section.news dl {margin: 5px 0 0;}
main#top section.news dl dt {display: inline-block;vertical-align: top;width: 220px;padding: 37px 0 0;}
main#top section.news dl dt span {display: inline-block;vertical-align: top;}
main#top section.news dl dt span.date {font-size: 14px;width: 85px;}
main#top section.news dl dt span.category {font-size: 14px;width: calc(100% - 85px);}
main#top section.news dl dt span.category.topics {color: #D6000F;}
main#top section.news dl dt span.category.press {color: #F09400;}
main#top section.news dl dt span.category.info {color: #1F58B2;}
main#top section.news dl dd {display: inline-block;vertical-align: top;width: calc(100% - 220px);font-size: 16px;line-height: 1.5;padding: 30px 0 0;}
main#top section.news dl dd a {}

main#top section.tournament {margin: 80px 0 0;}
main#top section.tournament h1 {height: 280px;background: url(/images/top/tournament_bg.png) no-repeat center / cover;position: relative;}
main#top section.tournament h1 div {position: absolute;bottom: 0;left: 50%;z-index: 1;width: 100%;max-width: 1040px;padding: 0 20px;transform: translate(-50%, 0);font-size: 46px;line-height: 1;font-weight: 500;padding-bottom: 45px;color: white;}
main#top section.tournament h1 div::after {content: '';position: absolute;bottom: 0;left: 20px;z-index: 1;width: 100px;height: 6px;background: #D6000F;}
main#top section.tournament h1 span {font-size: 24px;display: block;font-weight: 600;margin: 0 0 15px;}
main#top section.tournament p {font-size: 14px;line-height: 2;margin: 23px 0 0;}
main#top section.tournament .link {margin: 10px 0 0;}
main#top section.tournament .link a {display: inline-block;vertical-align: top;width: 320px;height: 120px;border: solid 1px #D6000F;border-radius: 10px;margin: 20px 20px 0 0;background-repeat: no-repeat;background-position: center left 40px;}
main#top section.tournament .link a.entrylist {background-image: url(/common/images/icon_sheet.png);}
main#top section.tournament .link a.syutsujyou {background-image: url(/common/images/icon_shirt.png);}
main#top section.tournament .link a.result {background-image: url(/common/images/icon_trophy.png);}
main#top section.tournament .link a:nth-of-type(3n) {margin-right: 0;}
main#top section.tournament .link a::before {content: '';display: inline-block;vertical-align: middle;width: 0;height: 100%;}
main#top section.tournament .link a span {display: inline-block;vertical-align: middle;font-size: 20px;line-height: 1.4;padding-left: 100px;color: #D6000F;}

main#top section.yosenkai {margin: 90px 0 0;}
main#top section.yosenkai h1 {height: 280px;background: url(/images/top/yosenkai_bg.png) no-repeat center / cover;position: relative;}
main#top section.yosenkai h1 div {position: absolute;bottom: 0;left: 50%;z-index: 1;width: 100%;max-width: 1040px;padding: 0 20px;transform: translate(-50%, 0);font-size: 46px;line-height: 1;font-weight: 500;padding-bottom: 45px;color: white;}
main#top section.yosenkai h1 div::after {content: '';position: absolute;bottom: 0;left: 20px;z-index: 1;width: 255px;height: 6px;background: #D6000F;}
main#top section.yosenkai h1 span {font-size: 24px;display: block;font-weight: 600;margin: 0 0 15px;}
main#top section.yosenkai dl {margin-top: 30px;border-top: solid 1px #C1C1C1;width: 320px;margin-right: 20px;display: inline-block;vertical-align: top;}
main#top section.yosenkai dl:nth-of-type(3n) {margin-right: 0px;}
main#top section.yosenkai dl dt {display: inline-block;vertical-align: top;font-size: 16px;line-height: 1;font-weight: 500;border: solid 1px #C1C1C1;border-top: none;width: 140px;padding: 16px 0 18px 15px;background-color: #EFEFEF;}
main#top section.yosenkai dl dd {display: inline-block;vertical-align: top;font-size: 16px;line-height: 1;border: solid 1px #C1C1C1;border-top: none;border-left: none;width: calc(100% - 140px);padding: 16px 0 18px 15px;}
main#top section.yosenkai a {margin: 20px 0 0;font-size: 16px;font-weight: 600;padding: 15px 35px 15px;border-radius: 25px;}

main#top section.yosenkai .link {margin: 10px 0 0;}
main#top section.yosenkai .link a {display: inline-block;vertical-align: top;width: 320px;height: 120px;border: solid 1px #D6000F;border-radius: 10px;margin: 20px 20px 0 0;background-repeat: no-repeat;background-position: center left 40px;}
main#top section.yosenkai .link a.entrylist {background-image: url(/common/images/icon_sheet.png);}
main#top section.yosenkai .link a.syutsujyou {background-image: url(/common/images/icon_shirt.png);}
main#top section.yosenkai .link a.result {background-image: url(/common/images/icon_trophy.png);}
main#top section.yosenkai .link a:nth-of-type(3n) {margin-right: 0;}
main#top section.yosenkai .link a::before {content: '';display: inline-block;vertical-align: middle;width: 0;height: 100%;}
main#top section.yosenkai .link a span {display: inline-block;vertical-align: middle;font-size: 20px;line-height: 1.4;padding-left: 100px;color: #D6000F;}

main#top section.yosenkai .youtube_thumbnail {
	padding: 48px 0 0;
}
main#top section.yosenkai .youtube_thumbnail a {
	display: inline-block;
	vertical-align: top;
	margin: 0 28px 19px 0;
	font-size: 16px;
	font-weight: 400;
	padding: 0;
	border-radius: 0;
	width: calc(50% - 14px);
	color: #333333;
	text-decoration: none;
	position: relative;
}
main#top section.yosenkai .youtube_thumbnail a::before {
	content: '';
	position: absolute;
	top: 80px;
	left: 50%;
	width: 70px;
	height: 70px;
	background: url(/common/images/youtube_thumbnail_icon.png) no-repeat center / contain;
	transform: translate(-50%, 0);
}
main#top section.yosenkai .youtube_thumbnail a:nth-of-type(even) {
	margin-right: 0;
}
main#top section.yosenkai .youtube_thumbnail a img {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}

main#top section.goods {margin: 90px 0 0;}
main#top section.goods h1 {font-size: 32px;line-height: 1;font-weight: 500;}
main#top section.goods p {font-size: 15px;line-height: 1.8;margin: 20px 0 0;}
main#top section.goods .link {margin: 8px 0 0;}
main#top section.goods .link a {display: inline-block;vertical-align: top;width: 485px;height: 120px;border: solid 1px #707070;border-radius: 10px;margin: 20px 30px 0 0;}
main#top section.goods .link a:nth-of-type(2n) {margin-right: 0;}
main#top section.goods .link a.shop {background: url(/common/images/bnr_shopasahi_pc.png) no-repeat center;}
main#top section.goods .link a.store {text-align: center;}
main#top section.goods .link a.store::before {content: '';vertical-align: middle;display: inline-block;width: 0;height: 100%;}
main#top section.goods .link a.store span {vertical-align: middle;display: inline-block;font-size: 19px;line-height: 1;font-weight: 600;padding: 10px 15px 10px 45px;background: url(/common/images/icon_pin.png) no-repeat center left / auto 100%;}

main#top section.links {margin: 105px 0 100px;}
main#top section.links h1 {font-size: 32px;line-height: 1;font-weight: 500;}
main#top section.links .link {}
main#top section.links .link a {display: inline-block;vertical-align: top;font-size: 16px;line-height: 1;margin: 40px 80px 0 0;position: relative;}
main#top section.links .link a::after {content: '';background: url(/common/images/arrow_linecircle_red.png) no-repeat center / 95%;position: absolute;top: -1px;right: -33px;z-index: 1;width: 22px;height: 22px;}
main#top section.links h2 {font-size: 20px;line-height: 1;font-weight: 500;margin: 40px 0 0;}
main#top section.links .organizer {}
main#top section.links .organizer a {display: inline-block;vertical-align: top;margin: 14px 13px 0 0;}
main#top section.links .organizer a:nth-child(4n) {margin-right: 0;}
main#top section.links .specialSponsorship {}
main#top section.links .specialSponsorship a {display: inline-block;vertical-align: top;margin: 14px 13px 0 0;}
main#top section.links .sponsorship {}
main#top section.links .sponsorship a {display: inline-block;vertical-align: top;margin: 14px 13px 0 0;}


main.lower {padding-bottom: 100px;}
main.lower h1 {font-size: 21px;line-height: 1;font-weight: 700;text-align: center;padding: 40px 0 37px;background-color: #333333;color: white;position: relative;}
main.lower h1::after {content: '';position: absolute;bottom: 0;left: 50%;z-index: 1;width: 104px;height: 6px;background-color: #D6000F;transform: translate(-50%, 0);}

main.lower section {padding: 50px 0 33px;}
main.lower section p {font-size: 16px;line-height: 2;text-align: left;}
main.lower section h2 {font-size: 24px;line-height: 1;font-weight: 700;padding: 0 0 23px;}
main.lower section .btn {margin: 14px 0 0;}


main#news {}
main#news .wrap {max-width: 800px;}
main#news article {padding: 55px 0 45px;clear: both;}
main#news article h2 {font-size: 24px;line-height: 1.6;font-weight: 600;margin: 0 0 12px;}
main#news article .date {display: inline-block;vertical-align: top;font-size: 15px;line-height: 1;margin-right: 18px;}
main#news article .category {display: inline-block;vertical-align: top;font-size: 15px;line-height: 1;}
main#news article .category.topics {color: #D6000F;}
main#news article .category.info {color: #1F58B2;}
main#news article .category.press {color: #F09400;}
main#news article .content {margin: 23px 0 0;font-size: 16px;line-height: 1.9;}
main#news article .content div {clear: both;}
main#news article .content a {}
main#news article .content img {margin: 20px auto 0;width: auto;height: auto;max-width: 100%;}
main#news article .content hr.bottom {}
main#news .readmore {display: block;margin: 50px auto 0;}
main#news .modal img {position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%, -50%);width: auto;max-width: 70%;max-height: 90%;}
main#news article:nth-of-type(n+11) {display: none;}


main#about {}
main#about section {}
main#about section p {}
main#about section h2 {}
main#about section .btn {}

main#about section.coursemap dl {margin: 10px 0 0;}
main#about section.coursemap dl dt {}
main#about section.coursemap dl dt span {}
main#about section.coursemap dl dd {text-align: center;}
main#about section.coursemap dl dd p {padding: 0 0 20px;}
main#about section.coursemap dl dd figure {margin: 0 auto;padding: 4px 0 14px;width: 76%;}
main#about section.coursemap dl dd figure img {width: 100%;}
main#about section.coursemap dl dd h3 {margin: 0 auto;padding: 0 0 4px;width: 76%;font-size: 16px;line-height: 1;font-weight: 600;text-align: left;}
main#about section.coursemap dl dd .btn {padding: 0 0 20px;}
main#about section.coursemap dl dd .detail {display: inline-block;vertical-align: top;width: 37%;text-align: left;margin: 10px 10px 0;}
main#about section.coursemap dl dd .detail h3 {width: 100%;}
main#about section.coursemap dl dd .detail figure {width: 100%;}
main#about section.coursemap dl dd .detail p {padding: 5px 0 20px;line-height: 1.6;font-size: 14px;}


main#yosenkai {}
main#yosenkai section {}
main#yosenkai section p {}
main#yosenkai section .yosenkai_youtube {
	width: 100%;
	aspect-ratio: 16 / 9;
	margin-top: 30px;
}
main#yosenkai section h3 {margin: 0 auto;padding: 36px 0 14px;font-size: 16px;line-height: 1;font-weight: 600;}
main#yosenkai .schedule {}
main#yosenkai .schedule dl {margin-top: 30px;border-top: solid 1px #C1C1C1;width: 320px;margin-right: 20px;display: inline-block;vertical-align: top;}
main#yosenkai .schedule dl:nth-of-type(3n) {margin-right: 0px;}
main#yosenkai .schedule dl dt {display: inline-block;vertical-align: top;font-size: 16px;line-height: 1;font-weight: 500;border: solid 1px #C1C1C1;border-top: none;width: 140px;padding: 16px 0 18px 15px;background-color: #EFEFEF;}
main#yosenkai .schedule dl dd {display: inline-block;vertical-align: top;font-size: 16px;line-height: 1;border: solid 1px #C1C1C1;border-top: none;border-left: none;width: calc(100% - 140px);padding: 16px 0 18px 15px;}
main#yosenkai .result {}
main#yosenkai .result table.flat hr {width: 5em;}
main#yosenkai .result table {}
main#yosenkai .result table th {width: 8.5em;}
main#yosenkai .result table td {}


main#syutsujyou {}
main#syutsujyou section {}
main#syutsujyou .list {}
main#syutsujyou .list table {}
main#syutsujyou .list table th {}
main#syutsujyou .list table td {}


main#syutsujyou_detail {}
main#syutsujyou_detail section {}
main#syutsujyou_detail .detail {}
main#syutsujyou_detail .detail figure {margin: 15px 0 0;width: 100%;}
main#syutsujyou_detail .detail figure img {width: 100%;}


main#datafile {}
main#datafile .history_detail {}
main#datafile .history_detail article {display: inline-block;vertical-align: top;width: 500px;padding-right: 50px;}
main#datafile .history_detail article .btn {margin-top: 30px;}
main#datafile .history_detail article .btn .radiusBtn {font-size: 17px;padding: 14px 32px 13px;border-radius: 26px;}
main#datafile .history_detail img {display: inline-block;vertical-align: top;width: calc(100% - 500px);margin-top: 12px;}
main#datafile .grades {}
main#datafile .grades h3 {padding: 20px 0 4px;font-size: 16px;line-height: 1;font-weight: 600;}
main#datafile .grades table {margin: 10px 0 40px;}
main#datafile .data select {margin: 6px 0 0;}
main#datafile .data article {padding: 20px 0 0;display: none;}
main#datafile .data article h2 {background-color: #797979;margin: 0 0 0;padding: 12px 20px 11px;font-size: 18px;line-height: 1;font-weight: 500;color: white;}
main#datafile .data article h3 {font-size: 16px;line-height: 1;font-weight: 600;margin: 20px 0 12px;}
main#datafile .data article table {}
main#datafile .data article .history_box {}
main#datafile .data article .history_box h3 {display: none;}
main#datafile .data article .history_box #taikai_info {}
main#datafile .data article .history_box #taikai_info dl {padding: 20px 0px 0;}
main#datafile .data article .history_box #taikai_info dl dt {display: inline-block;vertical-align: top;width: 100px;font-size: 16px;line-height: 1.4;padding-bottom: 10px;}
main#datafile .data article .history_box #taikai_info dl dd {display: inline-block;vertical-align: top;width: calc(50% - 100px);font-size: 16px;line-height: 1.4;padding-bottom: 10px;}
main#datafile .data article .history_box #taikai_info p {display: none;}
main#datafile .data article .history_pdf {padding: 5px 0 10px;}
main#datafile .data article .history_pdf a {display: inline-block;vertical-align: top;font-size: 18px;line-height: 1;text-decoration: none;border: solid 1px #D6000F;border-radius: 10px;padding: 25px 65px;color: #D6000F;background: url(/common/images/icon_pdf.png) no-repeat center left 20px;margin: 5px 0;}
main#datafile .data article #history_RcdFooter {}
main#datafile .data article #history_RcdFooter a {font-size: 15px;line-height: 1;font-weight: normal;display: inline-block;border: solid 1px #333333;padding: 8px 13px 7px;color: #333333;text-decoration: none;border-radius: 24px;transition: 0.2s;padding: 14px 32px 13px;}
main#datafile .data article #history_RcdFooter a:hover {background-color: #D6000F;border-color: #D6000F;color: white;}

main#gallery {}
main#gallery .list {padding: 60px 0 0;}
main#gallery .list div {display: inline-block;vertical-align: top;width: 235px;margin: 0 20px 45px 0;font-size: 16px;line-height: 1;text-decoration: underline;cursor: pointer;}
main#gallery .list div:hover {text-decoration: none;}
main#gallery .list div:nth-of-type(4n) {margin-right: 0;}
main#gallery .list div img {width: 100%;display: block;margin: 0 0 18px;}
main#gallery .modal img {position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%, -50%);width: auto;max-height: 80%;max-width: 90%;}


main#rekishi {}
main#rekishi .select {padding: 60px 0 0;}
main#rekishi .select select {}
main#rekishi .detail {padding: 0;}
main#rekishi .detail article {padding: 40px 0 55px;}
main#rekishi .detail article h2 {border-bottom: solid 2px #D6000F;padding: 0;margin: 0 0 35px;}
main#rekishi .detail article h2 span {display: inline-block;background: white;margin: 0;transform: translate(0, 2px);padding-right: 15px;font-weight: 500;}
main#rekishi .detail article .images {display: inline-block;vertical-align: top;width: 485px;}
main#rekishi .detail article .images li {display: inline-block;vertical-align: top;margin: 10px 10px 0 0;width: 155px;height: 155px;cursor: pointer;background-position: center;background-repeat: no-repeat;background-size: cover;position: relative;}
main#rekishi .detail article .images li::after {content: '';position: absolute;top: 50%;left: 50%;z-index: -1;width: 60px;height: 60px;transform: translate(-50%, -50%);background: url(/common/images/loading.gif) no-repeat center / contain;}
main#rekishi .detail article .images li.large {display: block;width: 100%;height: 520px;margin: 0;}
main#rekishi .detail article .images li.large.smallsize {background-size: contain;background-position: top;height: 370px;}
main#rekishi .detail article .images li:nth-of-type(3n+1) {margin-right: 0;}
main#rekishi .detail article .text {display: inline-block;vertical-align: top;width: calc(100% - 485px);padding-left: 30px;}
main#rekishi .detail article .text .info {font-size: 14px;line-height: 1;}
main#rekishi .detail article .text h3 {font-size: 22px;line-height: 1.4;margin: 40px 0 0;}
main#rekishi .detail article .text .content {margin: 10px 0 0;}
main#rekishi .detail article .text .btn {margin: 24px 0 0;}
main#rekishi .detail article .text .btn .radiusBtn {padding: 15px 34px 13px;font-size: 16px;border-radius: 25px;}
main#rekishi .modal img {position: absolute;top: 50%;left: 50%;z-index: 1;transform: translate(-50%, -50%);width: auto;max-width: 70%;max-height: 90%;}


main#policy {}
main#policy .content {}
main#policy .content p {margin-bottom: 40px;}


main#sdgs {}
main#sdgs section {text-align: center;padding: 60px 20px 0;}
main#sdgs section .btn {margin: 0 0 70px;}
main#sdgs section .btn a {display: inline-block;vertical-align: top; margin: 10px 20px;}
main#sdgs section .sdgs_mv { max-width: 1000px; width: 100%; margin: 80px auto 20px; display: -webkit-box; display: flex; flex-wrap: wrap; -webkit-box-pack: justify; justify-content: space-between; }
main#sdgs section .sdgs_mv div { max-width: 480px; width: 48%; margin-bottom: 40px;}
main#sdgs section .sdgs_mv div img { width: 100%; height: auto;}
main#sdgs section .sdgs_mv div h2 { margin-bottom: 14px; text-align: left; padding: 0;}
main#sdgs section .sdgs_mv div h2 img { max-width: 100%; width: auto;}
main#sdgs section figure + figure { margin-top: 40px; }


@media screen and (max-width: 768px) {

main#top {}
main#top section.visual {height: 101.5vw;}
main#top section.visual ul {}
main#top section.visual ul li {}
main#top section.visual .lead {bottom: 8vw;}
main#top section.visual .lead div {}
main#top section.visual .lead div.lead1 {bottom: 5.5vw;width: 88vw;padding: 3.5vw 5vw 7vw 5.5vw;}
main#top section.visual .lead div.lead2 {width: 76vw;padding: 2.5vw 6vw 2vw 5.5vw;}
main#top section.visual .lead div img {max-width: 100%;}
main#top section.importantNotices {padding: 1vw 3.5vw;margin-top: 16vw;}
main#top section.importantNotices div {font-size: 3.75vw;line-height: 1.5;min-height: 10vw;padding: 2.5vw 5vw 2.5vw 12vw;background-size: 9vw;background-position: center left;}
main#top section.importantNotices div::before {}
main#top section.importantNotices div a {}
main#top section.bnrArea {margin: 5vw 0 0;}
main#top section.bnrArea div {height: 42vw;}
main#top section.news {}
main#top section.news h1 {margin: 11vw 0 0;font-size: 6.75vw;position: relative;}
main#top section.news h1 a {margin: 0;position: absolute;top: 0;right: 0;}
main#top section.news dl {}
main#top section.news dl dt {display: block;width: 100%;padding: 6vw 0 0;}
main#top section.news dl dt span {}
main#top section.news dl dt span.date {font-size: 3.5vw;width: 20vw;}
main#top section.news dl dt span.category {font-size: 3.5vw;}
main#top section.news dl dt span.category.topics {}
main#top section.news dl dt span.category.press {}
main#top section.news dl dt span.category.info {}
main#top section.news dl dd {display: block;width: 100%;font-size: 3.75vw;padding: 1vw 0 1vw;}
main#top section.news dl dd a {}
main#top section.tournament {margin: 13.5vw 0 0;}
main#top section.tournament h1 {height: 42vw;background-image: url(/images/top/tournament_bg_sp.png);}
main#top section.tournament h1 div {padding: 0 5.5vw;font-size: 8.5vw;padding-bottom: 13vw;}
main#top section.tournament h1 div::after {width: 20vw;}
main#top section.tournament h1 span {font-size: 4.75vw;margin: 0 0 3vw;}
main#top section.tournament p {font-size: 3.85vw;margin: 3vw 0 0;}
main#top section.tournament .link {margin: 4vw 0 0;}
main#top section.tournament .link a {width: 100%;height: 21.5vw;margin: 0 0 3vw;background-position: center left 8vw;background-size: 8vw auto;}
main#top section.tournament .link a.entrylist {}
main#top section.tournament .link a.syutsujyou {}
main#top section.tournament .link a.result {}
main#top section.tournament .link a:nth-of-type(3n) {}
main#top section.tournament .link a::before {}
main#top section.tournament .link a span {font-size: 5vw;padding-left: 20vw;}
main#top section.yosenkai {margin: 9.5vw 0 0;}
main#top section.yosenkai h1 {height: 42vw;margin: 0 0 5.5vw; background-image: url(/images/top/yosenkai_bg_sp.png);}
main#top section.yosenkai h1 div {padding: 0 5.5vw;font-size: 8.5vw;padding-bottom: 12vw;}
main#top section.yosenkai h1 div::after {width: 43vw;}
main#top section.yosenkai h1 span {font-size: 4.75vw;margin: 0 0 3vw;}
main#top section.yosenkai dl {margin: 0;width: 100%;border-top: none;}
main#top section.yosenkai dl:nth-of-type(1) {border-top: solid 1px #C1C1C1;}
main#top section.yosenkai dl:nth-of-type(3n) {}
main#top section.yosenkai dl dt {font-size: 4vw;width: 38vw;padding: 5vw 0 4.5vw 4vw;}
main#top section.yosenkai dl dd {font-size: 4vw;width: calc(100% - 38vw);padding: 5vw 0 4.5vw 4vw;}
main#top section.yosenkai a {margin: 5vw 0 0;font-size: 4vw;padding: 3.5vw 5vw 3vw;}
main#top section.yosenkai .link {margin: 4vw 0 0;}
main#top section.yosenkai .link a {width: 100%;height: 21.5vw;margin: 0 0 3vw;background-position: center left 8vw;background-size: 8vw auto;}
main#top section.yosenkai .link a.entrylist {}
main#top section.yosenkai .link a.syutsujyou {}
main#top section.yosenkai .link a.result {}
main#top section.yosenkai .link a:nth-of-type(3n) {}
main#top section.yosenkai .link a::before {}
main#top section.yosenkai .link a span {font-size: 5vw;padding-left: 20vw;}
main#top section.yosenkai .youtube_thumbnail {
	padding: 15.5vw 0 0;
}
main#top section.yosenkai .youtube_thumbnail a {
	display: block;
	width: 100%;
	margin: 0 0 5vw;
	font-size: 4.5vw;
}
main#top section.yosenkai .youtube_thumbnail a:nth-of-type(even) {}
	main#top section.yosenkai .youtube_thumbnail a::before {
	top: 16vw;
	width: 12vw;
	height: 12vw;
}
main#top section.yosenkai .youtube_thumbnail a img {}
main#top section.goods {margin: 18.5vw 0 0;}
main#top section.goods h1 {font-size: 6.5vw;}
main#top section.goods p {font-size: 3.75vw;margin: 4vw 0 0;}
main#top section.goods .link {margin: 5.5vw 0 0;}
main#top section.goods .link a {width: 100%;height: 32vw;margin: 0 0 3vw;}
main#top section.goods .link a:nth-of-type(2n) {}
main#top section.goods .link a.shop {background: url(/common/images/bnr_shopasahi_sp.png) no-repeat center;}
main#top section.goods .link a.store {}
main#top section.goods .link a.store::before {}
main#top section.goods .link a.store span {font-size: 5vw;padding: 2vw 0vw 2vw 9vw;}
main#top section.links {margin: 19vw 0 11vw;}
main#top section.links h1 {font-size: 6.5vw;}
main#top section.links .link {padding: 0 0 3vw;}
main#top section.links .link a {font-size: 3.75vw;margin: 8vw 13vw 0 0!important;}
main#top section.links .link a::after {top: -1vw;right: -8vw;width: 6vw;height: 6vw;}
main#top section.links h2 {font-size: 5vw;margin: 6vw 0 0;}
main#top section.links article a:nth-of-type(even) {margin-right: 0;}
main#top section.links .organizer {padding: 1vw 0 0;}
main#top section.links .organizer a {margin: 2vw 2vw 0 0;width: 44vw;}
main#top section.links .specialSponsorship {}
main#top section.links .specialSponsorship a {margin: 2vw 0 0;width: 100%;}
main#top section.links .sponsorship {padding: 1vw 0 0;}
main#top section.links .sponsorship a {margin: 2vw 2vw 0 0;width: 44vw;}
main#top section.links .sponsorship a:nth-of-type(even) {}
main.lower {}
main.lower h1 {}
main.lower h1::after {}
main.lower section {padding: 10vw 0 12vw;}
main.lower section p {font-size: 3.75vw;}
main.lower section h2 {font-size: 6vw;padding: 0 0 4vw;}
main.lower section .btn {}
main#news {}
main#news .wrap {}
main#news article {}
main#news article h2 {}
main#news article .date {}
main#news article .category {}
main#news article .category.topics {}
main#news article .category.info {}
main#news article .category.press {}
main#news article .content {}
main#news article .content div {}
main#news article .content a {}
main#news article .content img {float: none!important;margin: 2vw 0 2vw!important;display: block;height: auto;}
main#news article .content hr.bottom {}
main#news .readmore {}
main#about {}
main#about section {}
main#about section p {}
main#about section h2 {}
main#about section .btn {}
main#about section.coursemap dl {margin: 3vw 0 0;}
main#about section.coursemap dl dt {}
main#about section.coursemap dl dt span {}
main#about section.coursemap dl dd {}
main#about section.coursemap dl dd p {padding: 0 0 4vw;}
main#about section.coursemap dl dd figure {width: 100%;padding: 2vw 0 1vw;}
main#about section.coursemap dl dd figure img {}
main#about section.coursemap dl dd h3 {width: 100%;font-size: 4.5vw;padding: 0 0 1vw;}
main#about section.coursemap dl dd .detail p {font-size: 3.5vw;padding: 2vw 0 0;}
main#about section.coursemap dl dd .btn {padding: 4vw 0 2vw;}
main#about section.coursemap dl dd .detail {display: block;width: 100%;margin: 2vw 0 0;}
main#about section.coursemap dl dd .detail h3 {font-size: 4vw;padding: 3vw 0 0;}
main#about section.coursemap dl dd .detail figure {padding: 3vw 0 0;}
main#yosenkai {}
main#yosenkai section {}
main#yosenkai section p {}
main#yosenkai section h3 {}
main#yosenkai .schedule {}
main#yosenkai .schedule dl {width: 100%;margin: 0;border-top: none;}
main#yosenkai .schedule dl:nth-of-type(3n) {}
main#yosenkai .schedule dl:nth-of-type(1) {margin: 3vw 0 0;border-top: solid 1px #C1C1C1;}
main#yosenkai .schedule dl dt {}
main#yosenkai .schedule dl dd {}
main#yosenkai .result {}
main#yosenkai .result table {}
main#yosenkai .result table th {width: auto!important;}
main#yosenkai .result table.flat th {width: 6em!important;}
main#yosenkai .result table td {}
main#syutsujyou {}
main#syutsujyou section {}
main#syutsujyou .list {}
main#syutsujyou .list table {}
main#syutsujyou .list table th {width: auto!important;}
main#syutsujyou .list table td {}
main#syutsujyou_detail {}
main#syutsujyou_detail section {}
main#syutsujyou_detail .detail {}
main#syutsujyou_detail .detail figure {}
main#syutsujyou_detail .detail figure img {}
main#datafile {}
main#datafile .history_detail {}
main#datafile .history_detail article {display: block;width: auto;padding: 0;}
main#datafile .history_detail article .btn {margin: 5vw 0 0;}
main#datafile .history_detail article .btn .radiusBtn {font-size: 4.5vw;padding: 4vw 8.5vw 3.5vw;border-radius: 30px;background-color: initial!important;
 border-color: initial!important;
 color: initial!important;}
main#datafile .history_detail img {display: block;width: auto;padding: 0;margin: 6vw 0 0;}
main#datafile .grades {}
main#datafile .grades h3 {}
main#datafile .grades table {}
main#datafile .data select {}
main#datafile .data article {}
main#datafile .data article h2 {}
main#datafile .data article h3 {}
main#datafile .data article table {}
main#datafile .data article .history_box {}
main#datafile .data article .history_box h3 {}
main#datafile .data article .history_box #taikai_info {}
main#datafile .data article .history_box #taikai_info dl {}
main#datafile .data article .history_box #taikai_info dl dt {width: 25vw;font-size: 4vw;}
main#datafile .data article .history_box #taikai_info dl dd {width: calc(100% - 25vw);font-size: 4vw;}
main#datafile .data article .history_pdf {padding: 1.5vw 0 3vw;}
main#datafile .data article .history_pdf a {font-size: 4vw;border-radius: 10px;padding: 5vw 4vw 5vw 11vw;background-position: center left 3vw;background-size: 6vw auto;margin: 0;}
main#datafile .data article #history_RcdFooter {}
main#datafile .data article #history_RcdFooter a {font-size: 4vw;
 padding: 3.5vw 7vw 3vw;
 border-radius: 20px;
 background-color: initial!important;
 border-color: initial!important;
 color: initial!important;}
main#datafile .data article #history_RcdFooter a:hover {background-color: #D6000F;border-color: #D6000F;color: white;}

main#gallery {}
main#gallery .list {padding: 10.5vw 0 0;}
main#gallery .list div {width: 43vw;margin: 0 4vw 8vw 0;font-size: 3.75vw;}
main#gallery .list div:hover {}
main#gallery .list div:nth-of-type(4n) {}
main#gallery .list div:nth-of-type(2n) {margin-right: 0;}
main#gallery .list div img {margin: 0 0 4vw;}
main#gallery .modal {}
main#gallery .modal img {max-width: 80%;}
main#rekishi {}
main#rekishi .select {padding: 10vw 0 0;}
main#rekishi .select select {}
main#rekishi .detail {}
main#rekishi .detail article {padding: 7vw 0 55px;}
main#rekishi .detail article h2 {margin: 0 0 6vw;}
main#rekishi .detail article h2 span {transform: translate(0, 4px);}
main#rekishi .detail article .images {width: auto;display: block;}
main#rekishi .detail article .images li {width: 29vw;margin: 1.5vw 1.5vw 0 0;height: 29vw;}
main#rekishi .detail article .images li::after {width: 15vw;height: 15vw;}
main#rekishi .detail article .images li:nth-of-type(3n+1) {}
main#rekishi .detail article .images li.large {height: 105vw;}
main#rekishi .detail article .images li.large.smallsize {height: 70vw;}
main#rekishi .detail article .text {display: block;width: auto;padding: 4vw 0 0;}
main#rekishi .detail article .text .info {font-size: 3.75vw;}
main#rekishi .detail article .text h3 {font-size: 5vw;margin: 7vw 0 0;}
main#rekishi .detail article .text .content {margin: 4vw 0 0;}
main#rekishi .detail article .text .btn {margin: 6vw 0 0;}
main#rekishi .detail article .text .btn .radiusBtn {}
main#rekishi .modal img {max-width: 90%;}
main#policy {}
main#policy .content {}
main#policy .content p {margin-bottom: 8vw;}
main#sdgs {}
main#sdgs section {padding: 11vw 5vw 0vw;}
main#sdgs section img {width: 100%;}
main#sdgs section .btn {margin: 4vw 0 8vw;}
main#sdgs section .btn a {margin: 0 0 6vw;}
main#sdgs section .sdgs_mv {margin: 80px auto 0;}
main#sdgs section .sdgs_mv div { max-width: none; width: 100%; margin: 0 auto 40px;}
main#sdgs section .sdgs_mv div h2 img { width: auto; height: 26px;}

}
