@charset "utf-8";
/******************************
header
*******************************/
header[id^="MnHD"]{
	width: 100%;
	text-align: center;
	padding: 0;
	margin: 0;
	z-index: 9999;
	position: fixed;
	top: 0;
}
.comdtl{
	position: relative;
	overflow: hidden;
}
header[id^="MnHD"] dl{
	width: 100%;
	padding: 0;
	margin: 0 auto;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
header[id^="MnHD"] dl > dt{
	text-align: left;
	position: relative;
}
header[id^="MnHD"] dl > dt img{
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%) translateX(0%);
}
header[id^="MnHD"] dl > dd{
	text-align: center;
}
header[id^="MnHD"] dl > dd > a{
	color: hsl(0, 0%, 100%);
	text-decoration: none;
	display: block;
	transition: .3s all;
}
header#MnHDtop.scroll-nav .comdtl::before, header#MnHDsub .comdtl::before{
	background: hsla(33, 41%, 64%, 1);
}
header#MnHDtop.scroll-nav .comdtl::after, header#MnHDsub .comdtl::after{
	background: hsla(336, 50%, 46%, 1);
}
@media screen and (max-width: 699px) {
	header[id^="MnHD"]{
		background: hsla(33, 43%, 49%, .7);
	}
	header#MnHDtop.scroll-nav, header#MnHDsub{
		background: hsla(33, 41%, 64%, 1);
	}
	header[id^="MnHD"] dl > dt{
		height: 45px;
	}
	header[id^="MnHD"] dl > dt img{
		height: 15px;
		left: 1em;
	}
	header[id^="MnHD"] dl > dd{
		font-size: 2.5vw;
		line-height: 45px;
		padding: 0;
		background: hsla(327, 87%, 34%, .7);
	}
	header#MnHDtop.scroll-nav dl > dd, header#MnHDsub dl > dd{
		background: hsla(336, 50%, 46%, 1);
	}
	header[id^="MnHD"] dl > dd > a{
		height: 100%;
		padding: 0 1em;
	}
}
@media screen and (min-width: 700px) {
	.comdtl::before {
		content: '';
		height: 100%;
		width: calc(100% - 300px);
		display: block;
		position: absolute;
		background: hsla(33, 43%, 49%, .7);
		left: 0;
		top: 0;
		z-index: -1;
		transition: .5s all;
	}
	.comdtl::after {
		content: '';
		height: 100%;
		width: 300px;
		display: block;
		position: absolute;
		background: hsla(327, 87%, 34%, .7);
		right: 0;
		top: 0;
		z-index: -1;
		transition: .5s all;
	}
	header[id^="MnHD"]{
		font-size: 1.25em;
		line-height: 135%;
	}
	header[id^="MnHD"] dl > dt{
		width: calc( 100% - 300px );
	}
	header[id^="MnHD"] dl > dt img{
		width: 400px;
		left: 1em;
	}
	header[id^="MnHD"] dl > dd{
		width: 300px;
	}
	header[id^="MnHD"] dl > dd > a{
		padding: 1.35em 0;
	}
	header[id^="MnHD"] dl > dd > a:hover{
		background: hsla(0, 0%, 0%, .3);
	}
}
@media screen and (min-width: 1200px) {
	.comdtl::before {
		width: calc(100% - ((100% - 1200px) / 2 + 300px));
	}
	.comdtl::after {
		width: calc((100% - 1200px) / 2 + 300px);
	}
	header[id^="MnHD"] dl{
		width: 1200px;
	}
	header[id^="MnHD"] dl > dt img{
		left: 0;
	}
}

/******************************
Menu
*******************************/
header[id^="MnHD"] .drawer-menu{
	text-align: center;
	background: hsla(48, 66%, 55%, .7);
	transition: .5s all;
}
header#MnHDtop.scroll-nav .drawer-menu, header#MnHDsub .drawer-menu{
	background: hsla(47, 66%, 69%, 1);
}
header[id^="MnHD"] .drawer-menu ul#primary-menu{
	text-align: center;
	padding: 0;
	margin: auto;
	display: flex;
	box-sizing: border-box;
	list-style: none;
	transition: all .5s;
}
.drawer-menu{
	box-sizing: border-box;
}
/***メイン***/
.drawer-menu ul#primary-menu > li{
	text-align: center;
	box-sizing: border-box;
	position: relative;
}
.drawer-menu ul#primary-menu > li a{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	color: hsl(11, 21%, 10%);
	text-decoration:none;
	display: block;
	transition: all .3s;
}

/* メニューOPEN時の背景 */
.close-menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	visibility: hidden;
	opacity: 0;
	z-index: -1;
}
.check:checked ~ .close-menu {
	background: hsla(0, 0%, 0%, .7);
	visibility: visible;
	opacity: 0;
}

/* ------------------------------------------------ checkbox */
.check {
	display: none;
}
@media screen and (max-width: 699px) {
	/* ------------------------------------------------ drawer menu */
	.drawer-menu{
		width: 100%;
		padding: 0;
		margin: 0;
		position: fixed;
		top: 45px;
		left: 0;
		transition:all 0.2s ease-out;
		box-sizing:border-box;
		opacity: 0;
		display: none;
	}
	.check:checked ~ .drawer-menu{
		opacity: 1;
		display: inline;
	}
	.drawer-menu ul#primary-menu{
		padding: 0;
		margin: 0;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.drawer-menu ul#primary-menu > li{
		font-size: .9em;
		line-height: 45px;
		width: 50%;
		text-align: center;
		padding:0;
		margin: 0;
		height: 45px;
		box-sizing: border-box;
		position: relative;
	}
	.drawer-menu ul#primary-menu > li:nth-child(odd){
		border-right: none;
	}
	.drawer-menu ul#primary-menu > li > a{
		color: hsl(0, 0%, 20%);
		padding: 0;
	}
	.drawer-menu ul#primary-menu > li:first-child,
	.drawer-menu ul#primary-menu > li:nth-child(2){
		width: calc((100% - 45px) / 2);
	}

	/* ------------------------------------------------ menu button */
	.menu-btn{
		font-size:1.0rem;
		text-align:center;
		width:45px;
		height:45px;
		padding:0;
		position:absolute;
		top: 45px;
		right:0;
		cursor: pointer;
		display: block;
		z-index: 9999;
		background: hsla(48, 66%, 55%, .7);
	}
	.bar{
		position: absolute;
		top: 10px;
		left: 10px;
		display: block;
		width: 27px;
		height: 5px;
		background: hsl(0, 0%, 100%);
		-webkit-transition: all .5s;
		transition: all .5s;
		-webkit-transform-origin: left top;
		-ms-transform-origin: left top;
		transform-origin: left top;
	}
	.bar.middle{
		top: 20px;
		opacity: 1;
	}
	.bar.bottom{
		top: 30px;
		-webkit-transform-origin: left bottom;
		-ms-transform-origin: left bottom;
		transform-origin: left bottom;
	}
	.menu-btn:hover .bar{background: hsl(0, 0%, 100%);}

	/* ------------------------------------------------ checked */
	.check:checked ~ .drawer-menu{left: 0;}
	.check:checked ~ .menu-btn .bar.top{
		width: 29px;
		top: 11px;
		left:14px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.check:checked ~ .menu-btn .bar.middle{
		opacity: 0;
	}
	.check:checked ~ .menu-btn .bar.bottom{
		width: 29px;
		top: 30px;
		left: 14px;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
}
@media screen and (min-width: 700px) {
	.drawer-menu{
		width: 100%;
	}
	.drawer-menu ul#primary-menu{
		margin:auto;
		box-sizing:border-box;
		flex-direction:row;
		justify-content: center;
	}
	.drawer-menu ul#primary-menu > li{
		font-size: .9em;
		line-height: 135%;
		padding:0;
		margin:0;
	}
	.drawer-menu ul#primary-menu > li > a{
		padding: 3.5rem 1.5rem;
		display: block;
		transition:0.3s ease-in;
	}
	.drawer-menu ul#primary-menu > li > a:hover{
		background: hsla(0, 0%, 100%, .4);
	}
	.menu-btn{display: none;}
	.drawer-menu{padding:0;}
}
@media screen and (min-width: 1000px) {
	.drawer-menu ul#primary-menu{
		justify-content: center;
	}
	.drawer-menu ul#primary-menu > li{
		font-size: 1em;
		width: calc(100% / 4);
	}
}
@media screen and (min-width: 1200px) {
	ul#primary-menu{
		width: 1200px;
	}
	ul#primary-menu > li{
		padding:0;
		margin:0;
	}
}


/******************************
フッター部分
*******************************/
footer[id^="mnft"]{
	text-align:left;
	line-height: 150%;
	width: 100%;
	padding: 0 1.5em;
	margin: auto;
	box-sizing: border-box;
}
footer#mnftsub{
	background: hsl(36, 49%, 59%);
}
footer[id^="mnft"] a{
	color: hsl(24, 21%, 31%);
	text-decoration: none;
}
footer#mnftsub{
	color: hsl(0, 0%, 100%);
}
.ftbnrlst{
	margin: auto;
	box-sizing: border-box;
}
dl.ftrcominf{
	width: 100%;
	margin: auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
dl.ftrcominf > dt img{width: 100%;}
dl.ftradd{
	width: 100%;
	display: flex;
}
.ftcr{
	font-family: 'Roboto Condensed', sans-serif;
	padding: 0;
	margin: 5em auto;
}
@media screen and (max-width: 699px) {
	footer[id^="mnft"]{
		padding: 0 6%;
	}
	.ftbnrlst{
		padding: 3em 0;
	}
	dl.ftrcominf > dt{
		width: 30%;
	}
	dl.ftrcominf > dd{
		width: 65%;
	}
	dl.ftradd{
		margin: 3em 0;
		flex-direction: column;
	}
	.ftcr{
		margin: 3em auto 6em;
	}
}
@media screen and (min-width: 700px) {
	footer[id^="mnft"]{
		padding: 0 4%;
	}
	.ftbnrlst{
		padding: 5em 0 3em;
	}
	dl.ftrcominf > dt{
		width: 150px;
	}
	dl.ftrcominf > dd{
		width: calc(100% - 220px);
	}
	dl.ftradd{
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	dl.ftradd > dt{
		width: 150px;
	}
	dl.ftradd > dd{
		width: calc(100% - 150px);
	}
}
@media screen and (min-width: 1200px) {
	.ftbnrlst{
		width: 1000px;
	}
	dl.ftrcominf{
		width: 1000px;
		padding: 0 1em;
	}
}

/******************************
primary-under
*******************************/
ul#primary-under{
	width: 100%;
	padding: 3rem 0;
	margin: auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
}
ul#primary-under > li{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}
ul#primary-under > li > a{
	color: hsl(24, 21%, 31%);
	text-decoration: none;
	line-height: 135%;
	padding: 0 2em;
	margin: .5em 0;
	border-left: 1px solid hsl(24, 21%, 31%);
	display: block;
	position: relative;
	transition: all 0.5s;
}
footer#mnftsub ul#primary-under > li > a{
	color: hsl(0, 0%, 100%);
	border-left: 1px solid hsl(0, 0%, 100%);
}
ul#primary-under > li > a:hover{
	font-weight: 600;
	color: hsl(24, 21%, 11%);
}

@media screen and (max-width: 699px) {
	ul#primary-under{
		padding: 0;
		flex-direction: column;
	}
	ul#primary-under > li > a{
		padding: 0 1em;
		margin: .2em 0;
	}
}
@media screen and (min-width: 700px) {
	ul#primary-under > li > a::after{
		content: "";
		width: 1px;
		height: 100%;
		background: hsl(24, 21%, 31%);
		position: absolute;
		right: -1px;
	}
	footer#mnftsub ul#primary-under > li > a::after{
		background: hsl(0, 0%, 100%);
	}
}
@media screen and (min-width: 1200px) {
}





/******************************
音楽コンクールheader
*******************************/
header[id^="Mnctst"]{
	width: 100%;
	text-align: center;
	padding: 0;
	margin: 0;
	position: relative;
}
.subcomdtl{
	width: 100%;
	overflow: hidden;
	background: hsla(330, 100%, 27%, .7);
	position: fixed;
	top: 0;
	z-index: 5555;
	transition: .5s all;
}
header#Mnctsttop.scroll-nav .subcomdtl,
header#Mnctstsub .subcomdtl{
	background: hsla(330, 100%, 27%, 1);
}
header[id^="Mnctst"] dl{
	width: 100%;
	padding: 0;
	margin: 0 auto;
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
header[id^="Mnctst"] dl > dt{
	text-align: left;
	position: relative;
}
header[id^="Mnctst"] dl > dt img{
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%) translateX(0%);
}
header[id^="Mnctst"] dl > dd{
	position: relative;
}
header[id^="MnHD"] dl > dd > a{
	color: hsl(0, 0%, 100%);
	text-decoration: none;
	display: block;
	transition: .3s all;
}
@media screen and (max-width: 999px) {
	header[id^="Mnctst"] dl > dt{
		height: 45px;
	}
	header[id^="Mnctst"] dl > dt img{
		height: 14px;
		left: 1.5em;
	}
	header[id^="Mnctst"] dl > dd{
		line-height: 45px;
	}
}
@media screen and (min-width: 1000px) {
	header[id^="Mnctst"]{
		line-height: 135%;
	}
	header[id^="Mnctst"] dl{
		height: 90px;
	}
	header[id^="Mnctst"] dl > dt{
		width: calc( 100% - 300px );
	}
	header[id^="Mnctst"] dl > dt img{
		width: 480px;
		left: 1em;
	}
	header[id^="Mnctst"] dl > dd{
		width: 300px;
	}
	header[id^="Mnctst"] dl > dd > a{
		padding: 1.35em 0;
		display: block;
	}
	header[id^="Mnctst"] dl > dd > a:hover{
		background: hsla(0, 0%, 0%, .3);
	}
}
@media screen and (min-width: 1200px) {
	header[id^="Mnctst"] dl{
		width: 1050px;
	}
	header[id^="Mnctst"] dl > dt img{
		left: 0;
	}
}

/***速報部分***/
.sokuho{
	aspect-ratio: 1 / 1;
}
.sokuho a{
	color: hsl(48, 66%, 55%);
	text-decoration: none;
	white-space: nowrap;
	width: 100%;
	height: 100%;
	background: hsl(23, 62%, 15%);
	border-radius: 50%;
	display: block;
	position: relative;
}
.sokuho a span{
	line-height: 135%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.sokuho a strong{
	font-size: 1.7em;
	line-height: 110%;
	display: block;
	margin-bottom: .4em;
}
@media screen and (max-width: 999px) {
	.sokuho{
		width: 120px;
	}
	.sokuho a span{
		font-size: .8rem;
	}
}
@media screen and (min-width: 1000px) {
	.sokuho{
		width: 250px;
	}
	.sokuho a span{
		font-size: 1.6rem;
	}
}
@media screen and (min-width: 1200px) {
}


/******************************
音楽コンクールMenu
*******************************/
header[id^="Mnctst"]{
	position: relative;
}
.navidesign{
	width: 100%;
	text-align: center;
	padding: 180px 0 0;
	background: hsla(330, 100%, 27%, .7);
	box-sizing: border-box;
	position: absolute;
	bottom: 0;
	z-index: 888;
}
.navidesign > img{
	height: 300px;
	position: absolute;
	top: -150px;
	left: 50%;
	transform: translateY(0%) translateX(-50%);
}
@media screen and (max-width: 999px) {
	.navidesign{
		padding: 60px 0 0;
	}
	.navidesign > img{
		height: 120px;
		top: -65px;
	}
	.navidesign .sokuho{
		position: absolute;
		top: -100px;
		right: 5px;
	}
}
@media screen and (min-width: 1000px) {
	.navidesign .sokuho{
		position: absolute;
		top: -150px;
		right: 1em;
	}
}
@media screen and (min-width: 1200px) {
	.navidesign .sokuho{
		position: absolute;
		top: -150px;
		right: calc((100% - 1200px) / 2);
	}
}

/***メイン***/
ul#sub-primary-menu{
	width: 100%;
	padding: 0;
	margin: auto;
	box-sizing: border-box;
	list-style: none;
	display: flex;
	transition: .5s all;
}
ul#sub-primary-menu > li{
	padding: 0;
	margin: 0;
	white-space: nowrap;
}
ul#sub-primary-menu > li a{
	color: hsl(0, 0%, 100%);
	text-decoration:none;
	display: block;
	transition: all .3s;
}

/* メニューOPEN時の背景 */
.close-menu2 {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	visibility: hidden;
	opacity: 0;
	z-index: -1;
}
.check:checked ~ .close-menu2 {
	background: hsla(0, 0%, 0%, .7);
	visibility: visible;
	opacity: 0;
}

/* ------------------------------------------------ checkbox */
.check {
	display: none;
}
@media screen and (max-width: 999px) {
	/* ------------------------------------------------ drawer menu */
	.subdrawer-menu{
		width: 100%;
		padding: 1em;
		margin: 0;
		background: hsla(38, 57%, 84%, .8);
		position: fixed;
		top: 45px;
		left: 0;
		transition:all 0.2s ease-out;
		box-sizing:border-box;
		opacity: 0;
		display: none;
		z-index: 9999;
	}
	header#Mnctsttop.scroll-nav .subdrawer-menu,
	header#Mnctstsub .subdrawer-menu{
		position: fixed;
		top: 45px;
		background: hsl(38, 57%, 84%);
	}
	.check:checked ~ .subdrawer-menu{
		opacity: 1;
		display: inline;
	}
	.subdrawer-menu ul#sub-primary-menu{
		padding: 0;
		margin: 0;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.subdrawer-menu ul#sub-primary-menu > li{
		padding:0;
		margin: .3em 0;
		box-sizing: border-box;
		position: relative;
		display: inline-block;
		border-right: 1px solid hsl(31, 89%, 22%);
	}
	.subdrawer-menu ul#sub-primary-menu > li a{
		color: hsl(31, 89%, 22%);
		font-size: .9em;
		line-height: 100%;
		padding:  0 1em;
	}
	.Cntst-menu ul#sub-primary-menu{
		font-size: .9em;
		padding: 2em 2.5em;
		flex-direction:row;
		flex-wrap: wrap;
	}
	.Cntst-menu ul#sub-primary-menu li{
		line-height: 100%;
		padding: 0 1em;
		margin: .2em 0;
		border-right: 1px solid hsl(0, 0%, 100%);
	}


	/* ------------------------------------------------ menu button */
	.menu-btn2{
		font-size:1.0rem;
		text-align:center;
		width:45px;
		height:45px;
		padding:0;
		position:fixed;
		top: 0;
		right:0;
		cursor: pointer;
		display: block;
		z-index: 9999;
		background: hsl(330, 100%, 15%);
	}
	.bar{
		position: absolute;
		top: 10px;
		left: 10px;
		display: block;
		width: 27px;
		height: 5px;
		background: hsl(0, 0%, 100%);
		-webkit-transition: all .5s;
		transition: all .5s;
		-webkit-transform-origin: left top;
		-ms-transform-origin: left top;
		transform-origin: left top;
	}
	.bar.middle{
		top: 20px;
		opacity: 1;
	}
	.bar.bottom{
		top: 30px;
		-webkit-transform-origin: left bottom;
		-ms-transform-origin: left bottom;
		transform-origin: left bottom;
	}
	.menu-btn2:hover .bar{background: hsl(0, 0%, 100%);}

	/* ------------------------------------------------ checked */
	.check:checked ~ .subdrawer-menu{left: 0;}
	.check:checked ~ .menu-btn2 .bar.top{
		width: 29px;
		top: 11px;
		left:14px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.check:checked ~ .menu-btn2 .bar.middle{
		opacity: 0;
	}
	.check:checked ~ .menu-btn2 .bar.bottom{
		width: 29px;
		top: 30px;
		left: 14px;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
}
@media screen and (min-width: 1000px) {
	.subdrawer-menu{
		display: none;
	}
	header#Mnctsttop.scroll-nav .Cntst-menu,
	header#Mnctstsub .Cntst-menu{
		width: 100%;
		position: fixed;
		top: 90px;
		background: hsl(38, 57%, 84%);
	}
	header#Mnctsttop.scroll-nav .Cntst-menu ul#sub-primary-menu > li a,
	header#Mnctstsub .Cntst-menu ul#sub-primary-menu > li a{
		color: hsl(26, 68%, 25%);
	}
	.Cntst-menu ul#sub-primary-menu{
		height: 80px;
		flex-direction:row;
		flex-wrap: nowrap;
		justify-content: center;
	}
	.Cntst-menu ul#sub-primary-menu > li > a{
		line-height: 80px;
		padding: 0 1.5em;
		transition: .3s ease-in;
		position: relative;
	}
	.Cntst-menu ul#sub-primary-menu > li > a:hover{
		color: hsla(0, 0%, 100%, .8);
	}
	.Cntst-menu ul#sub-primary-menu > li > a::after{
		content: "";
		width: 1px;
		height: 1.1em;
		background: hsl(0, 0%, 100%);
		display: block;
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateX(0) translateY(-50%);
	}
	.Cntst-menu ul#sub-primary-menu > li:last-child > a::before{
		content: "";
		width: 1px;
		height: 1.1em;
		background: hsl(0, 0%, 100%);
		display: block;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateX(0) translateY(-50%);
	}
	header#Mnctsttop.scroll-nav .Cntst-menu ul#sub-primary-menu > li > a::after,
	header#Mnctstsub .Cntst-menu ul#sub-primary-menu > li > a::after{
		background: hsl(26, 68%, 25%);
	}
	header#Mnctsttop.scroll-nav .Cntst-menu ul#sub-primary-menu > li:last-child > a::before,
	header#Mnctstsub .Cntst-menu ul#sub-primary-menu > li:last-child > a::before{
		background: hsl(26, 68%, 25%);
	}
	.menu-btn2{display:none;}
}
@media screen and (min-width: 1280px) {
	.Cntst-menu ul#sub-primary-menu{
		width: 1280px;
		box-sizing: border-box;
	}
}

/******************************
音楽コンクールフッター部分
*******************************/
footer#sbft{
	color: hsl(0, 0%, 100%);
	width: 100%;
	text-align: center;
	line-height: 150%;
	padding: 2em 1.5em 1em;
	margin: auto;
	background: hsl(330, 100%, 27%);
	box-sizing: border-box;
}
dl.cntstinf{
	text-align: left;
	margin: auto;
	display: flex;
}
dl.cntstftradd{
	display: flex;
	flex-direction: column;
}
dl.cntstinf > dt img{width: 100%;}
.ftcr{
	font-family: 'Roboto Condensed', sans-serif;
	text-align: left;
	padding: 0 0 5em;
	margin: 5em auto 0;
}
@media screen and (max-width: 699px) {
	footer#sbft{
		padding: 3em 10% 0;
	}
	dl.cntstinf{
		flex-direction: column;
	}
	dl.cntstinf > dt{
		margin-bottom: 2em;
	}
	dl.cntstinf > dt img{width: 60%;}
	.ftcr{
		font-size: .8em;
		padding: 0 0 3em;
		margin: 3em auto 0;
	}
}
@media screen and (min-width: 700px) {
	dl.cntstinf{
		justify-content: space-between;
		align-items: flex-end;
	}
	dl.cntstinf > dt{
		width: 250px;
	}
	dl.cntstinf > dd{
		width: calc(100% - 270px);
	}
}
@media screen and (min-width: 1200px) {
	dl.cntstinf{
		width: 1000px;
	}
	dl.cntstinf > dt{
		width: 310px;
	}
	dl.cntstinf > dd{
		width: calc(100% - 390px);
	}
	.ftcr{
		width: 1000px;
	}
}


ul.cntstbnrlst{
	width: 100%;
	padding: 0;
	margin: 3em auto;
	list-style: none;
	box-sizing: border-box;
	display: flex;
}
ul.cntstbnrlst li{
	text-align: center;
	padding: 0;
	margin: 0;
}
ul.cntstbnrlst li a{
	color: hsl(23, 62%, 15%);
	font-size: 1.4em;
	font-weight: 700;
	text-decoration: none;
	line-height: 135%;
	padding: 1.2em 0;
	border: 1px solid hsl(0, 0%, 100%);
	position: relative;
	box-sizing: border-box;
	display: block;
	aspect-ratio: 472 / 210;
	transition: .3s all;
}
ul.cntstbnrlst li:first-child {
	background: url(../img/top/bnr02.jpg) center center;
	background-size: 100% auto;
}
ul.cntstbnrlst li:last-child {
	background: hsl(49, 80%, 59%);
}
ul.cntstbnrlst li span {
	text-align: center;
	width: 100%;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
ul.cntstbnrlst li span img{
	width: 70%;
}
@media screen and (max-width: 699px) {
	ul.cntstbnrlst{
		padding: 0 4%;
		flex-direction: column;
	}
	ul.cntstbnrlst li{
		margin: .5em 0;
	}
}
@media screen and (min-width: 700px) {
	ul.cntstbnrlst{
		flex-direction: row;
		justify-content: space-between;
	}
	ul.cntstbnrlst li{
		width: calc(100% / 2 - 1.2em);
	}
	ul.cntstbnrlst li a:hover{
		background: hsla(0, 0%, 100%, .1);
	}
}
@media screen and (min-width: 1200px) {
	ul.cntstbnrlst{
		width: 990px;
	}
}



/******************************
sub-primary-under
*******************************/
ul#sub-primary-under{
	width: 100%;
	padding: 3rem 0;
	margin: auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
}
ul#sub-primary-under > li{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}
ul#sub-primary-under > li > a{
	color: hsl(0, 0%, 100%);
	text-decoration: none;
	line-height: 135%;
	padding: 0 1.5em;
	margin: .5em 0;
	border-left: 1px solid hsl(0, 0%, 100%);
	display: block;
	position: relative;
	transition: all 0.5s;
}
ul#sub-primary-under > li > a:hover{
	font-weight: 600;
	color: hsla(0, 0%, 100%, .5);
}

@media screen and (max-width: 699px) {
	ul#sub-primary-under{
		padding: 0;
		margin: 5em 0;
	}
	ul#sub-primary-under > li > a{
		padding: 0 1em;
		margin: .2em 0;
	}
}
@media screen and (min-width: 700px) {
	ul#sub-primary-under{
		justify-content: center;
	}
	ul#sub-primary-under > li > a::after{
		content: "";
		width: 1px;
		height: 100%;
		background: hsl(0, 0%, 100%);
		position: absolute;
		right: -1px;
	}
}
@media screen and (min-width: 1280px) {
	ul#sub-primary-under{
		width: 1280px;
	}
}
