@charset "utf-8";

/**********************************

 fonts

***********************************/

/**********************************

 html

***********************************/
html {
	font-size: 10px;
}

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

	/*html {*/
	/*	font-size: 1vw;*/
	/*}*/
}


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

	html {
		font-size: 2.6666666vw;
	}
}

/**********************************

 body

***********************************/
body {
	background: #F7F8F1;
}


/**********************************

 parts

***********************************/

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

	.sp-only {
		display: none !important;
	}
}

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

	.pc-only {
		display: none !important;
	}

}

/**********************************

 wrapper

***********************************/
#wrapper {
	padding-top: 0;
}

/**********************************

 l-header

***********************************/
.l-header {
	padding-top: 1.86666667vw;
	background: #F7F8F2;
}

.l-header__hero {
	margin: 0;
}

.l-header__hero img {
	width: 100%;
	max-width: none;
}

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

@media screen and (max-width:767px){
	.l-header {
		padding-top: 4vw;
		background: #F7F8F2;
	}

}

/**********************************

 l-header-sub

***********************************/
.l-header-sub {
	padding: 2.2rem 2.5rem 0;
	margin-bottom: -1rem;
}

.l-header-sub__hero {
	max-width: 121.2rem;
	margin: 0 auto;
}

.l-header-sub__hero img {
	width: 100%;
	max-width: none;
}

.l-header-sub__hero a:hover img {
	opacity: 1;
}

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

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

	.l-header-sub {
		padding: 2rem 0 0;
		margin-bottom: 0;
	}

	.l-header-sub__hero {
		max-width: none;
		margin: 0 auto;
	}

}


/**********************************

 l-footer

***********************************/
.l-footer {
	font-family: 'Noto Sans JP', "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.l-footer__top {
	background: #02B0E9;
	position: relative;
	z-index: 1;
}

.l-footer__top:before {
	content: "";
	display: block;
	width: 100%;
	height: 4rem;
	background: url(../../img/2024/ft_bg01.png) no-repeat center top;
	background-size: 100% 100%;
	position: absolute;
	top: -.1rem;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.l-footer__top:after {
	content: "";
	display: block;
	width: 100%;
	height: 4rem;
	background: url(../../img/2024/ft_bg02.png) no-repeat center top;
	background-size: 100% 100%;
	position: absolute;
	bottom: -.1rem;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.l-footer__top--top.has-archive:after {
	background: url(../../img/2024/ft_top_bg02.png) no-repeat center top;
}

.l-footer__top-inner {
	width: 134rem;
	max-width: 100%;
	margin: 0 auto;
	padding: 11.5rem 0 17.5rem;
	position: relative;
	z-index: 1;
}

.l-footer__top-inner:before {
	content: "";
	display: block;
	width: 11rem;
	height: 8.1rem;
	margin-top: -4.5rem;
	margin-left: 2.5rem;
	background: url(../../img/2024/ft_org01.png) no-repeat center top / contain;
	position: absolute;
	top: -.1rem;
	left: 0;
	z-index: 1;
}

.l-footer__top-inner-content {
	/*display: flex;*/
	/*justify-content: flex-end;*/
	/*align-items: center;*/
}

.l-footer__top-inner-content-pic {
	width: 13.1rem;
	margin-left: -1rem;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.l-footer__top-inner-content-pic .pic {
}

.l-footer__top-inner-content-pic .pic img {
	width: 100%;
	max-width: none;
}

.l-footer__top-inner-content-box {
	width: 90rem;
	max-width: 100%;
	margin: 0 auto;
}

.l-footer__top-inner-content-box p {
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.875;
}

.l-footer__top-inner-content-copy {
	width: 44.4rem;
	margin-bottom: 7rem;
	margin-right: -3rem;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}

.l-footer__top-inner-content-copy img {
	width: 100%;
	max-width: none;
}

.l-footer__top-inner-content-left {
	width: 80rem;
	max-width: 100%;
}

.l-footer__top-inner-content-left p {
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.875;
}

.l-footer__top-inner-content-right {
	margin-left: 6rem;
}

.l-footer__top-inner-content-right .illust {
	width: 257px;
}

.l-footer__top-inner-content-right .illust img {
	width: 100%;
	max-width: none;
}

.l-footer__archive {
	background: #F7F8F2;
	position: relative;
	z-index: 1;
}

.l-footer__archive:after {
	content: "";
	display: block;
	width: 100%;
	height: 4rem;
	background: url(../../img/2024/ft_archive_bg01.png) no-repeat center top;
	background-size: 100% 100%;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.l-footer__archive-inner {
	padding: 5rem 0 14rem;
	width: 134rem;
	max-width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}

.l-footer__archive-inner:before {
	content: "";
	display: block;
	width: 7.7rem;
	height: 10.5rem;
	margin-top: 10.5rem;
	margin-left: 5rem;
	background: url(../../img/2024/ft_org02.png) no-repeat center top / contain;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

.l-footer__archive-inner-ttl {
	width: 15.9rem;
	margin: 0 auto;
}

.l-footer__archive-inner-ttl img {
	width: 100%;
	max-width: none;
}

.l-footer__archive-inner-list {
	margin-top: 3.5rem;
}

.l-footer__archive-inner-list ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 2rem;
	font-weight: 500;
}

.l-footer__archive-inner-list ul li {

}

.l-footer__archive-inner-list ul li a {
	padding-left: 3.6rem;
	text-decoration: none;
	position: relative;
	z-index: 1;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.l-footer__archive-inner-list ul li a:hover {
	color: #000000;
	text-decoration: none;
	opacity: .7;
}

.l-footer__archive-inner-list ul li a:before {
	content: "";
	display: block;
	width: 2.7rem;
	height: 2.7rem;
	background: url(../../img/2024/icon_arr05.png) no-repeat center center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.l-footer__bottom {
	background: #fff;
}

.l-footer__bottom-inner {
	width: 134rem;
	max-width: 100%;
	margin: 0 auto;
	padding-top: 4.5rem;
	padding-bottom: 5.5rem;
	position: relative;
	z-index: 1;
}

.l-footer__bottom-inner:before {
	content: "";
	display: block;
	width: 7.7rem;
	height: 10.5rem;
	margin-top: 10.5rem;
	margin-left: 5rem;
	background: url(../../img/2024/ft_org02.png) no-repeat center top / contain;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

.l-footer__bottom-inner--top.has-archive:before {
	display: none;
}

.l-footer__bottom-inner-logo {
	width: 18.2rem;
	margin: 0 auto;
}

.l-footer__bottom-inner-logo img {
	width: 100%;
	max-width: none;
}

.l-footer__bottom-inner-list {
	display: flex;
	gap: 10px 17px;
	width: 90rem;
	max-width: 100%;
	padding: 0;
	margin: 35px auto 0;
	font-size: 14px;
	font-weight: 500;
	list-style: none;
}

.l-footer__bottom-inner-list li {
	font-weight: 500;
}

.l-footer__bottom-inner-list li a {
	color: #000000;
	font-weight: 500;
	text-decoration: none;
	position: relative;
	z-index: 1;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.l-footer__bottom-inner-list li a:hover {
	color: #000000;
	opacity: .7;
}

.l-footer__bottom-inner-list li a[target="_blank"] {
	padding-left: 2.4rem;
}

.l-footer__bottom-inner-list li a[target="_blank"]:before {
	content: "";
	display: block;
	width: 1.7rem;
	height: 1.6rem;
	background: url(../../img/2024/icon_blank01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.l-footer__bottom-inner-copy {
	margin-top: 35px;
	color: #727272;
	font-size: 14px;
	font-weight: 500;
	text-align: center;
}

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

	.l-footer__top-inner-content-copy {
		margin-right: 0;
	}

}

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

	.l-footer__top-inner-content-box {
		width: 65rem;
	}

}

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

	.l-footer__top-inner-content-left {
		flex: 1;
		width: auto;
	}

	.l-footer__top-inner-content-right {
		width: 20%;
		margin-left: 3rem;
	}

	.l-footer__top-inner-content-right .illust {
		width: auto;
	}

}

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

	.l-footer__top {
	}

	.l-footer__top:before {
		height: 2rem;
		background: url(../../img/2024/ft_bg01_sp.png) no-repeat center top;
		background-size: 100% 100%;
	}

	.l-footer__top:after {
		height: 2rem;
		background: url(../../img/2024/ft_bg02_sp.png) no-repeat center bottom;
		background-size: 100% 100%;
	}


	.l-footer__top--top.has-archive:after {
		background: url(../../img/2024/ft_top_bg02_sp.png) no-repeat center top;
		background-size: 100% 100%;
	}

	.l-footer__top-inner {
		width: 67rem;
		max-width: 100%;
		margin: 0 auto;
		padding: 3.5rem 0 7rem;
	}

	.l-footer__top-inner:before {
		width: 5.5rem;
		height: 4.05rem;
		margin-top: -1.2rem;
		margin-left: .7rem;
	}

	.l-footer__top-inner-content {
		display: block;
	}

	.l-footer__top-inner-content-pic {
		width: 6.55rem;
		margin: 0 auto;
		position: static;
		transform: none;
		-webkit-transform: none;
	}

	.l-footer__top-inner-content-pic .pic {
	}

	.l-footer__top-inner-content-pic .pic img {
		width: 100%;
		max-width: none;
	}

	.l-footer__top-inner-content-box {
		width: auto;
		margin-top: 2rem;
	}

	.l-footer__top-inner-content-box p {
		font-size: 1.6rem;
	}

	.l-footer__top-inner-content-copy {
		width: 26.7rem;
		margin: 5rem auto 0;
		position: static;
	}

	.l-footer__top-inner-content-left {
		width: auto;
	}

	.l-footer__top-inner-content-left p {
		font-size: 1.6rem;
		text-align: left;
	}

	.l-footer__top-inner-content-right {
		width: auto;
		margin: 3.5rem 0 0 0;
	}

	.l-footer__top-inner-content-right .illust {
		width: 18rem;
		margin: 0 auto;
	}

	.l-footer__archive:after {
		height: 2rem;
		background: url(../../img/2024/ft_archive_bg01_sp.png) no-repeat center bottom;
		background-size: 100% 100%;
	}

	.l-footer__archive-inner {
		padding: 3.75rem 0 10rem;
		width: auto;
	}

	.l-footer__archive-inner:before {
		width: 3.85rem;
		height: 5.25rem;
		margin-top: 11.5rem;
		margin-left: -.75rem;
	}

	.l-footer__archive-inner-ttl {
		width: 14.2rem;
	}

	.l-footer__archive-inner-list {
		margin-top: 3.5rem;
	}

	.l-footer__archive-inner-list ul {
		font-size: 1.6rem;
	}

	.l-footer__archive-inner-list ul li a {
		padding-left: 3rem;
	}

	.l-footer__archive-inner-list ul li a:before {
		width: 2.1rem;
		height: 2.1rem;
	}

	.l-footer__bottom-inner {
		width: auto;
		padding-top: 3.25rem;
		padding-bottom: 2.25rem;
	}

	.l-footer__bottom-inner:before {
		width: 3.85rem;
		height: 5.25rem;
		margin-top: 7.75rem;
		margin-left: -.75rem;
	}

	.l-footer__bottom-inner-logo {
		width: 13.8rem;
	}

	.l-footer__bottom-inner-list {
		display: block;
		width: auto;
		margin: 3rem auto 0;
		font-size: 1.4rem;
	}

	.l-footer__bottom-inner-list li {
		margin-top: 1.5rem;
	}

	.l-footer__bottom-inner-list li:first-child {
		margin-top: 0;
	}

	.l-footer__bottom-inner-list li a[target="_blank"] {
		padding-left: 2.4rem;
	}

	.l-footer__bottom-inner-list li a[target="_blank"]:before {
		width: 1.7rem;
		height: 1.6rem;
	}

	.l-footer__bottom-inner-copy {
		margin-top: 2.5rem;
		font-size: 1.4rem;
		line-height: 1.78571429;
	}
}

/**********************************

 l-main

***********************************/
.l-main {
	/*margin-top: -1rem;*/
	font-family: 'Noto Sans JP', "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	color: #000000;
	font-size: 1.8rem;
	line-height: 1.444444444444444;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.l-main img {
	max-width: 100%;
}

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

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

}

/**********************************

 define

***********************************/
.define-wrap {
	padding: 0 2.5rem;
}

.define-inner {
	width: 90rem;
	max-width: 100%;
	margin: 0 auto;
}

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

	.define-wrap {
		padding: 0 4.66666667%;
	}

	.define-inner {
		width: auto;
	}
}




/**********************************

 c-top-navi

***********************************/
.c-top-navi {
	position: relative;
	z-index: 1;
}

.c-top-navi:before {
	content: "";
	display: block;
	width: 134.8rem;
	height: 71rem;
	margin-top: 24rem;
	background: url(../../img/2024/top_navi_bg01_pc.png) no-repeat center / contain;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.c-top-navi__inner {
	padding: 16.5rem 0 12rem;
}

.c-top-navi__inner-list {
	display: flex;
	justify-content: space-between;
}

.c-top-navi__inner-list-sec {
	width: 47.77777778%;
	padding: .1rem 3rem 3rem;
	background: #fff;
	border-radius: 2.6rem;
}

.c-top-navi__inner-list-sec-ttl {
	margin-top: -13rem;
	margin-left: -1.5rem;
	margin-right: -1.5rem;
}

.c-top-navi__inner-list-sec-ttl a {
	display: inline-block;
}

.c-top-navi__inner-list-sec-ttl a img {
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-top-navi__inner-list-sec-ttl a:hover img {
	opacity: .7;
}

.c-top-navi__inner-list-sec-theme {
	margin-top: 2rem;
	text-align: center;
}

.c-top-navi__inner-list-sec-theme .txt01 {
	display: inline-block;
	padding: 0 1.5rem;
	margin: 0;
	color: #fff;
	font-size: 2.4rem;
	font-weight: bold;
	background: #29A623;
	border-radius: 50rem;
}

.c-top-navi__inner-list-sec-theme .txt01.shodo {
	background: #EDA400;
}

.c-top-navi__inner-list-sec-theme .ttl {
	margin: 1rem 0 0;
	font-size: 3rem;
	font-weight: 900;
}

.c-top-navi__inner-list-sec-navi {
	margin-top: 2rem;
	padding: 2.5rem 5rem 2.5rem 3.5rem;
	background: #F0F8ED;
}

.c-top-navi__inner-list-sec-navi.shodo {
	background: #FDF8ED;
}

.c-top-navi__inner-list-sec-navi ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 2.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: .08em;
}

.c-top-navi__inner-list-sec-navi ul li {

}

.c-top-navi__inner-list-sec-navi ul li a {
	padding-left: 3.8rem;
	text-decoration: underline;
	position: relative;
	z-index: 1;
}

.c-top-navi__inner-list-sec-navi ul li a:hover {
	color: #000000;
	text-decoration: none;
}

.c-top-navi__inner-list-sec-navi ul li a:before {
	content: "";
	display: block;
	width: 2.9rem;
	height: 2.9rem;
	background: url(../../img/2024/icon_arr03.png) no-repeat center center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.c-top-navi__inner-list-sec-navi.shodo ul li a:before {
	background: url(../../img/2024/icon_arr04.png) no-repeat center center / contain;
}

.c-top-navi__inner-list-sec-judge {
	display: flex;
	justify-content: center;
	margin: 3rem 0 0;
	font-size: 2.4rem;
	font-weight: bold;
}

.c-top-navi__inner-list-sec-judge dt {
	color: #2AA524;
}

.c-top-navi__inner-list-sec-judge.shodo dt {
	color: #EDA400;
}

.c-top-navi__inner-list-sec-judge dd {

}

.c-top-navi__inner-list-sec-member {
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.5625;
}

.c-top-navi__inner-list-sec-member li {
	text-indent: -1em;
	margin-left: 1em;
}

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

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

	.c-top-navi:before {
		content: "";
		display: block;
		width: 19.95rem;
		height: 54.5rem;
		margin-left: -12rem;
		margin-top: 6rem;
		background: url(../../img/2024/top_navi_bg01_sp.png) no-repeat center / contain;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		transform: none;
		-webkit-transform: none;
	}

	.c-top-navi:after {
		content: "";
		display: block;
		width: 35.9rem;
		height: 44.05rem;
		margin-right: -11rem;
		margin-bottom: 3rem;
		background: url(../../img/2024/top_navi_bg02_sp.png) no-repeat center / contain;
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: -1;
	}

	.c-top-navi__inner {
		padding: 11.25rem 0 5.5rem;
	}

	.c-top-navi__inner-list {
		display: block;
		padding: 0 1rem;
	}

	.c-top-navi__inner-list-sec {
		width: auto;
		padding: .1rem 2rem 2.25rem;
		margin-top: 12.5rem;
		border-radius: 1.3rem;
	}

	.c-top-navi__inner-list-sec:first-child {
		margin-top: 0;
	}

	.c-top-navi__inner-list-sec-ttl {
		margin-top: -9.5rem;
		margin-left: -.25rem;
		margin-right: -.25rem;
	}

	.c-top-navi__inner-list-sec-ttl img {
		width: 100%;
		max-width: none;
	}

	.c-top-navi__inner-list-sec-theme {
		margin-top: 1.75rem;
		text-align: center;
	}

	.c-top-navi__inner-list-sec-theme .txt01 {
		display: inline-block;
		padding: .1rem 1.2rem;
		font-size: 2rem;
	}

	.c-top-navi__inner-list-sec-theme .ttl {
		margin-top: .75rem;
		font-size: 2.2rem;
	}

	.c-top-navi__inner-list-sec-navi {
		margin-top: 1rem;
		padding: 1.5rem 3rem 1.5rem 2.4rem;
	}

	.c-top-navi__inner-list-sec-navi ul {
		gap: 1.5rem;
		font-size: 2rem;
	}

	.c-top-navi__inner-list-sec-navi ul li a {
		padding-left: 3rem;
	}

	.c-top-navi__inner-list-sec-navi ul li a:before {
		width: 2.4rem;
		height: 2.4rem;
	}

	.c-top-navi__inner-list-sec-judge {
		margin: 2rem 0 0;
		font-size: 2rem;
	}

	.c-top-navi__inner-list-sec-member {
		margin: 1.1rem 0 0;
		font-size: 1.6rem;
	}
}


/**********************************

 c-work

***********************************/
.c-work {
	position: relative;
	z-index: 3;
}

.c-work__inner {
	padding-bottom: 8.5rem;
}

.c-work__inner-content {
	padding: 1.3rem 0 5.8rem;
	background: #fff;
	border-radius: 2.6rem;
}

.c-work__inner-content-tab {

}

.c-work__inner-content-tab-head {
	padding: 0 2rem;
}

.c-work__inner-content-tab-head ul {
	display: flex;
	justify-content: space-between;
	padding: 0;
	margin: 0;
	list-style: none;
}

.c-work__inner-content-tab-head ul li {
	width: 42rem;
}

.c-work__inner-content-tab-head ul li a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 14rem;
	border-bottom: .2rem solid #E2E3E2;
	position: relative;
	z-index: 1;
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-work__inner-content-tab-head ul li a.is-active {
	border-bottom: .2rem solid #2CA424;
}

.c-work__inner-content-tab-head ul li:nth-child(2) a.is-active {
	border-bottom: .2rem solid #EDA400;
}

.c-work__inner-content-tab-head ul li a img {
	width: 15rem;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-work__inner-content-tab-head ul li a img.off {
	opacity: 1;
}

.c-work__inner-content-tab-head ul li a.is-active img.off {
	opacity: 0;
}

.c-work__inner-content-tab-head ul li a img.on {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	opacity: 0;
}

.c-work__inner-content-tab-head ul li a.is-active img.on {
	opacity: 1;
}

.c-work__inner-content-tab-head ul li a:hover {
	opacity: .7;
}

.c-work__inner-content-tab-body {

}

.c-work__inner-content-tab-body-box {
	/*display: none;*/
}

.c-work__inner-content-tab-body-box:first-child {
	/*display: block;*/
}

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

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

	.c-work__inner {
		padding-top: .3rem;
		padding-bottom: 4rem;
	}

	.c-work__inner-content {
		padding: .7rem 0 3.5rem;
		border-radius: 1.3rem;
	}

	.c-work__inner-content-tab-head {
		padding: 0 1rem;
	}

	.c-work__inner-content-tab-head ul li {
		width: 15rem;
	}

	.c-work__inner-content-tab-head ul li a {
		height: 6.25rem;
		border-bottom: .1rem solid #E2E3E2;
	}

	.c-work__inner-content-tab-head ul li a.is-active {
		border-bottom: .1rem solid #2CA424;
	}

	.c-work__inner-content-tab-head ul li:nth-child(2) a.is-active {
		border-bottom: .1rem solid #EDA400;
	}

	.c-work__inner-content-tab-head ul li a img {
		width: 7.5rem;
	}

}




/**********************************

 c-theme

***********************************/
.c-theme {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 4rem 2rem 0;
}

.c-theme__txt01 {
	padding: 0 1.5rem;
	margin: 0;
	color: #fff;
	font-size: 2.4rem;
	font-weight: bold;
	background: #29A623;
	border-radius: 50rem;
}

#shodo .c-theme__txt01 {
	background: #EDA400;
}

.c-theme__ttl {
	margin: 0;
	font-size: 3rem;
	font-weight: 900;
}

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

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

	.c-theme {
		display: block;
		padding: 2.35rem 1rem 0;
		text-align: center;
	}

	.c-theme__txt01 {
		display: inline-block;
		padding: .1rem 1.2rem;
		font-size: 2rem;
	}

	.c-theme__ttl {
		margin-top: .75rem;
		font-size: 2.2rem;
	}

}




/**********************************

 c-local-navi

***********************************/
.c-local-navi {
	padding: 0 2rem 0;
	margin-top: 2.8rem;
}

.c-local-navi ul {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .6rem .6rem;
	padding: 0;
	margin: 0;
	font-size: 2rem;
	font-weight: bold;
	list-style: none;
}

.c-local-navi ul li {
	width: calc(100%/6 - .5rem);
	flex: 0 1 calc(100%/6 - .5rem);
}

.c-local-navi ul li a {
	display: block;
	padding: 1.2rem 0;
	color: #000000;
	text-align: center;
	text-decoration: none;
	background: #fff;
	border: .1rem solid #2CA424;
	border-radius: 50rem;
	transition: background 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

#shodo .c-local-navi ul li a {
	border: .1rem solid #EDA400;
}

.c-local-navi ul li a:hover {
	background: #E8F8E7;
}

#shodo .c-local-navi ul li a:hover {
	background: #FCF1D8;
}

.c-local-navi ul li a span {
	display: block;
	padding-left: 1.2rem;
	position: relative;
	z-index: 1;
}

.c-local-navi ul li a span:before {
	content: "";
	display: block;
	width: 2.3rem;
	height: 2.3rem;
	margin-left: 1.2rem;
	background: url(../../img/2024/icon_arr01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.c-local-navi ul li a[data-toggle="tab"] span:before {
	background: url(../../img/2024/icon_arr03.png) no-repeat center / contain;
}

#shodo .c-local-navi ul li a span:before {
	background: url(../../img/2024/icon_arr02.png) no-repeat center / contain;
}

#shodo .c-local-navi ul li a[data-toggle="tab"] span:before {
	background: url(../../img/2024/icon_arr04.png) no-repeat center / contain;
}

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

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

	.c-local-navi {
		padding: 0 1rem 0;
		margin-top: 1.85rem;
	}

	.c-local-navi ul {
		display: flex;
		justify-content: center;
		align-items: flex-start;
		flex-wrap: wrap;
		gap: 1rem 1rem;
		font-size: 1.6rem;
	}

	.c-local-navi ul li {
		width: calc(100%/3 - .7rem);
		flex: 0 1 calc(100%/3 - .7rem);
	}

	.c-local-navi ul li a {
		padding: .8rem 0;
	}

	.c-local-navi ul li a:hover,
	.c-local-navi ul li a.is-active {
		background: #E8F8E7;
	}

	#shodo .c-local-navi ul li a:hover,
	#shodo .c-local-navi ul li a.is-active {
		background: #FCF1D8;
	}

	.c-local-navi ul li a span {
		display: block;
		padding-left: 2.3rem;
		position: relative;
		z-index: 1;
	}

	.c-local-navi ul li a span:before {
		width: 2.3rem;
		height: 2.3rem;
		margin-left: .7rem;
		/*background: url(../../img/2024/icon_arr03.png) no-repeat center / contain;*/
	}

	#shodo .c-local-navi ul li a span:before {
		/*background: url(../../img/2024/icon_arr04.png) no-repeat center / contain;*/
	}
}




/**********************************

 c-archive

***********************************/
.c-archive {
	padding: 0 5rem 0;
	margin-top: 8rem;
}

.c-archive__sec {
	margin-top: 7rem;
}

.c-archive__sec:first-child {
	margin-top: 0;
}

.c-archive__sec-grade {
	width: 15.9rem;
	margin: 0 auto;
}

.c-archive__sec-block {
	padding-top: 6rem;
	padding-bottom: 5.5rem;
	background: url(../../img/2024/line01.png) repeat-x left top;
	background-size: auto .2rem;
}

.c-archive__sec-block:first-of-type {
	background: none;
}

.c-archive__sec-block:last-child {
	padding-bottom: 0;
}

.c-archive__sec-block-ttl {
	width: 19.6rem;
	margin: -2rem auto 0;
}

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

	.c-archive__sec {
		display: block !important;
	}
}

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

	.c-archive {
		padding: 0 1rem 0;
		margin-top: 3.75rem;
	}

	.c-archive__sec {
		display: none;
		margin-top: 4rem;
	}

	.c-archive__sec:first-child {
		display: block;
	}

	.c-archive__sec-grade {
		width: 11.5rem;
	}

	.c-archive__sec-block {
		padding-top: 2.5rem;
		padding-bottom: 3rem;
		background-size: auto .1rem;
	}

	.c-archive__sec-block-ttl {
		width: 13.6rem;
		margin: 0 auto 0;
	}
}




/**********************************

 c-work-list

***********************************/
.c-work-list {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 5rem 2.6rem;
	margin-top: 4rem;
}

.c-work-list:first-child {
	margin-top: 0;
}

.c-work-list.jc-center {
	justify-content: center;
}

.c-work-list__item {
	width: calc(100%/3 - 1.8rem);
	flex: 0 1 calc(100%/3 - 1.8rem);
}

.c-work-list__item figure {
	text-align: center;
}

.c-work-list__item figure a {
	display: block;
	width: 250px;
	height: 178px;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
}

.c-work-list__item figure.vertical a {
	width: 178px;
	height: 250px;
}

.c-work-list__item figure.shodo a {
	width: 185px;
	height: 250px;
}

.c-work-list__item figure a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-work-list__item figure a:hover img {
	opacity: .7;
}

.c-work-list__item figure figcaption {
	margin-top: 2rem;
	margin-left: -.25em;
	margin-right: -.25em;
	font-size: 1.8rem;
	font-weight: 300;
	text-align: center;
	line-height: 1.44444444;
}

.c-work-list__item figure figcaption.wide {
	margin-left: -1em;
	margin-right: -1em;
}

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

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

	.c-work-list {
		gap: 3rem 2rem;
		margin-top: 4rem;
	}

	.c-work-list__item {
		width: calc(100%/2 - 1rem);
		flex: 0 1 calc(100%/2 - 1rem);
	}

	.c-work-list__item figure a {
		width: 100%;
		height: 10.5rem;
	}

	.c-work-list__item figure.vertical a {
		width: 10.5rem;
		height: 14.8rem;
	}

	.c-work-list__item figure.shodo a {
		width: 12.5rem;
		height: 17rem;
	}

	.c-work-list__item figure.vertical img {
		/*width: 10.5rem;*/
	}

	.c-work-list__item figure.shodo img {
		/*width: 12.5rem;*/
	}

	.c-work-list__item figure figcaption {
		margin-top: 1rem;
		margin-left: 0;
		margin-right: 0;
		font-size: 1.2rem;
	}
}




/**********************************

 lightbox

***********************************/
.lb-data .lb-close {
	background: url(../../img/common/close.png) no-repeat center / contain;
}

.lb-nav a.lb-next {
	background: url(../../img/common/next.png) right 48% no-repeat;
}

.lb-nav a.lb-prev {
	background: url(../../img/common/prev.png) left 48% no-repeat;
}

.lb-cancel {
	background: url(../../img/common/loading.gif) no-repeat;
}

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

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

	.lb-nav a.lb-next {
		margin-top: 0;
	}

	.lb-nav a.lb-prev {
		margin-top: 0;
	}

}




/**********************************

 xxx

***********************************/


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

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

}

