@charset "utf-8";

table {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}



/* ----------------- */
/* head_nav */
/* ----------------- */
#head_nav {
	background-color: rgba(255,255,255,0.95);
}

header div.nav_inner ul.g_nav > li {
	padding-top: 2rem;
}
.drop_nav_btn + div.sub_menu {
	top: 79px;
}
.drop_nav:hover .drop_nav_btn + div.sub_menu,
.drop_nav .drop_nav_btn + div.sub_menu:hover {
	top: 95px;
}

/*下層のspではfixed_navが常に出ている状態にする*/
@media screen and (max-width:1024px) {
	#head_nav {
		display: none;
	}
	#fixed_nav {
		visibility: visible;
		opacity: 1;
		top: 0;
	}
	#burger_btn {
		position: fixed;
		opacity: 1;
	}
	#burger_btn.opt {
		opacity: 1;
	}
}



/* ----------------- */
/* #page_head 共通部 */
/* ----------------- */
#page_head {
	position: relative;
	margin-bottom: 6rem;
}
#page_title {
}
#page_title_inner {
    width: 91.48vw;
    max-width: 1100px;
    margin: 0 auto 6.25rem;
}
#page_head figure {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 500px;
	overflow: hidden;
}
#page_title h1 {
	max-width: 33.125rem;
	line-height: 2rem;
	text-align: left;
	display: block;
	position: relative;
	z-index: 3;
	padding: 3.75rem 0 2.625rem 3.125rem;
	margin: 0;
	background-color: #F4F3F3;
}
#page_title h1::before {
	content: "";
	width: 360px;
	height: 47px;
	position: absolute;
	top: -1rem;
	left: 3.125rem;
	background-image: url(./images/title_slash.png);
}

#page_title h1 span {
	font-size: 2.8125rem;
	display: block;
}
#page_title h1 span.pagetitle_jp { 
	display: block;
	line-height: 1em;
}
#page_title h1 span.pagetitle_en {
	display: block;
	font-size: 1.75rem;
	line-height: 1.25em;
	letter-spacing: 1px;
	margin-bottom: 0.75rem;
	padding-top: 0.5rem;
	color: #7CB342;
}

@media screen and (max-width:767px) {
	#page_head {
		margin-bottom: 3.125rem;
	}
	#page_title_inner {
		margin: 0 auto 3.125rem;
	}
	#page_head figure img {
		height: 200px;
	}
}
@media screen and (max-width:1024px) {
	#page_head {
		padding-top: 240px;
	}
	#page_head figure {
		width: 100%;
		height: 200px;
		top: 60px;
		overflow: hidden;
	}
	#page_head figure img {
		object-fit: cover;
	}
	#page_title h1{
		padding:6.67vw 0 4.5vw 8vw;
		width: 100%;
	}
	#page_title h1::before {
		width: 65vw;
		height: 7.867vw;
		left: 8vw;
		background-size: contain;
	}
	#page_title h1 span{
		font-size: 1.8125rem;
	}
	#page_title h1 span.pagetitle_en{
		font-size: 1.3125rem;
	}
}

@media print,screen and (min-width:1025px) {
	#page_head{
		padding-top: 26.875rem;
	}
	#page_head figure img {
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		max-width: none;
		z-index: 0;
		transform: translate(-50%,0);
	}

}


/* ------------------ */
/* .m_size */
/* ------------------ */
main .content_wrapper .m_size {
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
	padding: 3.125rem;
}
main .content_wrapper .m_size_bg + .m_size {
		background-color: #fff;
		position: relative;
		z-index: 1;
}

@media screen and (max-width:767px) {
	main .content_wrapper .m_size {
		width: auto!important;
		margin-left: 5.8vw;
		margin-right: 5.8vw;
		padding: 8vw 4vw;
	}
	main .content_wrapper .m_size::first-of-type {
		margin-bottom: 20px;
	}
	main .content_wrapper .m_size_bg + .m_size {
		margin-top: -8vw;
	}
}
@media print,screen and (min-width:768px) {
	main .content_wrapper .m_size {
		width: 79.733vw;
	}
	main .content_wrapper .m_size::first-of-type {
		margin-bottom: 50px;
	}
	main .content_wrapper .m_size_bg + .m_size {
		margin-top: -50px;
	}
}

/* ------------------ */
/* .m_size_bg */
/* ------------------ */
.m_size_bg {
	position: relative;
	width: 91.48vw;
	max-width: 1100px;
	z-index: 0;
	margin-right: auto;
	margin-left: auto;
}
.m_size_bg.title_include .content_title {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-shadow:6px 0px 10px #ffffff,
				0px 6px 10px #ffffff,
				6px 6px 10px #ffffff,
				-6px 0px 10px #ffffff,
				0px -6px 10px #ffffff,
				-6px -6px 10px #ffffff,
				0px 0px 5px #ffffff,
				0px 0px 10px #ffffff;
}
.m_size_bg.title_include .content_title::after {
	display: none;
}



/* ------------------ */
/* .content_title_02 */
/* ------------------ */
.content_title_02,
ol > li> h3 {
	font-size: 1.375rem;
	font-weight: bold;
	border-bottom: 1px solid #ddd;
	padding-bottom: 0.625rem;
	margin-bottom: 1.25rem;
	position: relative;
	padding-left: 2.5rem;
}
.content_title_02::after,
ol > li> h3::after {
	content: "";
	display: block;
	width: 1.875rem;
	height: 5px;
	position: absolute;
	top: 16px;
	left: 0;
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}
.content_title_02.border_top {
	border-top: 3px solid #97C2CD;
	border-bottom: none;
	padding-top: 0.625rem;
	margin-bottom: 0;
	margin-top: 1.875rem;
	margin-bottom: 0;
}

@media screen and (max-width:767px) {
	.content_title_02,
	ol > li> h3 {
		font-size: 1.125rem;
	}
	.content_title_02::after,
	ol > li> h3::after {
		top: 12px;
	}
}

/* ------------------ */
/* .content_title_03 */
/* ------------------ */
.content_title_03 {
	font-size: 1.75rem;
	font-weight: bold;
	text-align: center;
	position: relative;
	padding-bottom: 1.25rem;
	margin-bottom: 2.75rem;
}
.content_title_03::after {
	content: "";
	width: 150px;
	height: 5px;
	position: absolute;
	bottom: 0;
	left: calc(50% - 75px);
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}

@media screen and (max-width:767px) {
	.content_title_03 {
		font-size: 1.375rem;
		padding-bottom: 0.5rem;
	}
}

/* ------------------ */
/* .post_title */
/* ------------------ */
.post_block .post_title {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 2rem;
}
.post_block .post_title h2,
.post_block .post_title p {
	width: 100%;
}
.post_block .post_title .post_title_text {
	order: 2;
	font-size: 1.75rem;
}
.post_block .post_title .post_title_date {
	order: 1;
	color: #85B6C3;
	margin: 0;
}
.post_block figure {
	margin-bottom: 2rem;	
}

@media screen and (max-width:767px) {
	.post_block .post_title .post_title_text {
		font-size: 1.5rem;
	}
}

/* ------------------ */
/* bg_gradation_title  */
/* ------------------ */
.bg_gradation_title {
	color: #fff;
	font-size: 1.375rem;
	text-align: center;
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
	margin-bottom: 1.875rem;
}
@media screen and (max-width:767px) {
	.bg_gradation_title {
		font-size: 1.125rem;
		margin-bottom: 1.25rem;
	}
}

/* ------------------ */
/* .inner_link_list  */
/* ------------------ */
.inner_link_list {
    width: 91.48vw;
    max-width: 1100px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
    margin: 0 auto 6.25rem;
}
.inner_link_list li{
    text-align: center;
	position: relative;
	cursor: pointer;
	transition: 0.3s;
	margin-bottom: 2.25rem;
}

.inner_link_list li a{
	display: block;
	color: #fff;
	padding: 0.75rem;
	position: relative;
}
.inner_link_list li a::before,
.inner_link_list li a::after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left:0;
	transition: 0.3s;
}
.inner_link_list li a::before{
	z-index: -1;
	background-color: #7CB342;
}
.inner_link_list li a:hover::before{
	opacity: 0;	
}
.inner_link_list li a::after{
	z-index: -2;
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}
@media screen and (max-width:1024px) {
	.inner_link_list {justify-content: space-between;}
	.inner_link_list li {
		width: 43.2vw;
		min-width: auto;
		margin-bottom: 1.25rem;
	}
	.inner_link_list li::before,
	.inner_link_list li::after {
		width: 43.2vw;
		left: 0;
	}
}
@media print,screen and (min-width:1025px) {
	.inner_link_list {justify-content: flex-start;}
	.inner_link_list li{
		min-width: auto;
		width: 20.3636%;
		margin-left: 4.5454%;
	}
	.inner_link_list li:nth-child(4n + 1) {margin-left: 0}
	.inner_link_list li::after {width: 100%;}
}


/* ------------------ */
/* .post_content  */
/* ------------------ */
.post_content figure {
	text-align: left;
}

/* ------------------ */
/* .post-password-form  */
/* ------------------ */

.post-password-form p {
	text-align: center;
	display: flex;
	justify-content: center;
}




/* ------------------ */
/* .tab_list  */
/* ------------------ */
.tab_list {
    width: 91.48vw;
    max-width: 1100px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
    margin: 0 auto 6.25rem;
}
.tab_list li{
	min-width: 180px;
	color: #bbb;
	font-weight: bold;
    text-align: center;
	position: relative;
	cursor: pointer;
	transition: 0.3s;
	margin-bottom: 2.25rem;
	padding: 5px;
}
.tab_list li::before,
.tab_list li::after {
	content: "";
	width: 100%;
	height: 5px;
	position: absolute;
	bottom: 0;
	left: 0;
	transition: 0.3s;
	z-index: 0;
}
.tab_list li::before {
	z-index: 1;
	background: #bbb;
}
.tab_list li::after {
	z-index: 0;
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}



.tab_list li:hover::before,
.tab_list li.active_tab::before {opacity: 0;}

.tab_list li:hover::after,
.tab_list li.active_tab::after {height: 100%;}

.tab_list li span {
	width: 100%;
	position: relative;
	padding: 0.75rem;
	z-index: 1;
	display: inline-block;
	background-color: rgba(255,255,255,0);
	transition: 1s ease;
	transition-delay: 0s;
}

.tab_list li:hover span,
.tab_list li.active_tab span {
	color: #222;
	background-color: rgba(255,255,255,1);
	transition: 0.3s ease-out;
}

.tab_list li.active_tab::after,
.tab_list li.active_tab span {
	transition-delay: -1s;
}




@media screen and (max-width:1024px) {
	.tab_list {
		display: block;
		margin-bottom: 4.125rem;
		text-align: center;
	}
	.tab_list.sp_2col_tab {
		display: flex;
		justify-content: space-between;
	}
	.tab_list li {
		margin-bottom: 0.5rem;
		display: inline-block;
		padding: 5px;
	}
	.tab_list li::before,
	.tab_list li::after {
		width: 100%;
		left: 0;
	}
	.tab_list.sp_2col_tab li {
		width: 43.2vw;
		display: block;
		min-width: auto;
		margin-bottom: 1.25rem;
	}
	.tab_list.sp_2col_tab li::before,
	.tab_list.sp_2col_tab li::after {
		width: 43.2vw;
		left: 0;
	}
	.tab_list.sp_2col_tab li span {
		height: 100%;
		display: block;
		padding-right: 0;
		padding-left: 0;
	}
}
@media print,screen and (min-width:768px) {
	.tab_list li:first-of-type{margin-left: 0;}
	.tab_list li span{font-size: 1.375rem;}
}
@media print,screen and (min-width:1025px) {
	.tab_list li {margin-left: 4.5454%;}
	.tab_list.justify_between li {margin-left: 0;}
	.tab_list.pc_5col_tub {justify-content: flex-start;}
	.tab_list.pc_5col_tub li{
		min-width: auto;
		width: 16.3636%;
	}
	.tab_list.pc_5col_tub li:nth-child(5n + 1) {margin-left: 0}
	.tab_list.pc_5col_tub li::after {width: 100%;}
}

/* ------------------ */
/* .caution_in_title  */
/* ------------------ */
.caution_in_title {
	position: relative;
}
.caution_in_title .title_caution {
	position: absolute;
    top: calc(50% - 1rem);
    right: 0;
    margin: 0;
}


/* -------------- */
/* フォーム関連 */
/* -------------- */
main form input[type="text"],
main form input[type="number"],
main form input[type="tel"],
main form input[type="email"],
main form input[type="password"],
main form textarea,
main form select {
	font-size: 0.875rem;
	min-height: 2.5rem;
	padding: 0 1.25rem;
	line-height: 1em;
}
main form input[type="text"],
main form input[type="number"],
main form input[type="tel"],
main form input[type="email"],
main form input[type="password"],
main form textarea {
	border: 1px solid #bbb;
}
main form textarea {
	width: 100%;
	min-height: 4.5rem;
	padding: 0.75rem 1.25rem;
}
main form .require::after {
	color: #FF0000;
	content: "※";
	line-height: 1.75;
}

@-moz-document url-prefix() {
	main form input[type="text"],
	main form input[type="number"],
	main form input[type="tel"],
	main form input[type="email"],
	main form input[type="password"],
	main form select {
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
	}
}

@media all and (-ms-high-contrast: none){
	main form select {
		padding-right: 0;
	}
}

@media screen and (max-width:767px) {
	main form input[type="text"],
	main form input[type="number"],
	main form input[type="tel"],
	main form input[type="email"],
	main form input[type="password"],
	main form select {
		padding: 0 0 0 0.75rem;
		max-height: 2.25rem;
	}
	main form select {
		padding: 0 0.75rem;
	}
}



/* ------------------ */
/* .pc_2col_items */
/* ------------------ */
@media print,screen and (min-width:1025px) {
	.pc_2col_items {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.pc_2col_items > * {
		width: 48.636%;	
	}
}
@media all and (-ms-high-contrast: none){
	.pc_2col_items figure img {
		width: 100%;
	}
}

/* -------------- */
/* .pc_3col_items */
/* -------------- */
@media print,screen and (min-width:1025px) {
	.pc_3col_items {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.pc_3col_items > * {
		width: 31.45%;
	}
	.pc_3col_items::after {
		content: "";
		display: block;
		width: 31.45%;
	}
}
@media all and (-ms-high-contrast: none){
	.pc_3col_items figure img {
		width: 100%;
	}
}

/* -------------- */
/* .pc_5col_items */
/* -------------- */
@media print,screen and (min-width:1025px) {
	.pc_5col_items {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.pc_5col_items > * {
		width: 17.82%;
	}
	.pc_5col_items::after {
		content: "";
		display: block;
		width: 17.82%;
	}
	.pc_5col_items.type_c {
		justify-content: flex-start;
	}
	.pc_5col_items.type_c > *:not(:nth-child(5n)) {
		margin-right: 2.725%;
	}
}
@media all and (-ms-high-contrast: none){
	.pc_5col_items figure img {
		width: 100%;
	}
}

/* -------------- */
/* .pc_6col_items */
/* -------------- */
.pc_6col_items {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}

@media screen and (max-width:767px) {
	.pc_6col_items > * {
		width: 46.296%;
		margin-bottom: 1.25rem;
	}
	.pc_6col_items > *:nth-child(even) {
		margin-left: 7.408%;
	}
}
@media print,screen and (min-width:768px) {
	.pc_6col_items > * {
		width: 14.33%;
		display: block;
		margin-left: 2.804%;
	}
	.pc_6col_items > *:first-child,
	.pc_6col_items > *:nth-child(6n+1) {
		margin-left: 0;
	}
	.pc_6col_items > *:nth-child(n+7) {
		margin-top: 1rem;
	}
}

@media all and (-ms-high-contrast: none){
	.pc_6col_items figure img {
		width: 100%;
	}
}

/* ------------------ */
/* .tb_2col_items */
/* ------------------ */
@media screen and (min-width:768px) and (max-width:1024px) {
	.tb_2col_items {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.tb_2col_items > * {
		width: 48.64%;
	}
	.tb_2col_items::after {
		content: "";
		display: block;
		width: 48.64%;
	}
}
/* ------------------ */
/* .tb_3col_items */
/* ------------------ */
@media screen and (min-width:768px) and (max-width:1024px) {
	.tb_3col_items {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.tb_3col_items > * {
		width: 31.45%;
	}
	.tb_3col_items::after {
		content: "";
		display: block;
		width: 31.45%;
	}
}
/* -------------- */
/* .images_block_2col */
/* -------------- */
.images_block_2col figure figcaption {
	color: #222;
	padding-top: 0.75em;
}
@media screen and (max-width:767px) {
	.images_block_2col > * {
		margin-bottom: 1.25rem;
	}
}
@media print,screen and (min-width:768px) {
	.images_block_2col {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.images_block_2col > * {
		width: 48.64%;
		display: block;
		margin-bottom: 1.875rem;
	}
}
@media all and (-ms-high-contrast: none){
	.images_block_2col figure img {
		width: 100%;
	}
}


/* -------------- */
/* .overflow-xscroll */
/* -------------- */
@media screen and (max-width:1024px) {
	.sp-overflow-xscroll {
		overflow-x: scroll!important;
	}
	.sp-overflow-xscroll .border_tbl_01,
	.sp-overflow-xscroll .border_tbl_03 {
		width: 1100px;
	}
}

/* -------------- */
/* .border_tbl */
/* -------------- */
.border_tbl {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
}
.border_tbl th,
.border_tbl td {
	/* text-align: center; */
	text-align: left;
	font-weight: normal;
	padding: 0.5rem;
	background-color: #fff;
}
.border_tbl th{
	font-weight: bold;
	background-color: #F4F3F3;
}
@media print,screen and (min-width:768px) {
	.border_tbl {
		border-top: 1px solid #ddd;
		border-left: 1px solid #ddd;
	}
	.border_tbl th,
	.border_tbl td {
		border-right: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}
}



/* -------------- */
/* .border_tbl.school_tbl */
/* -------------- */
@media screen and (max-width:767px) {
	.school_tbl {
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}
	.school_tbl tr:first-child {
		display: none;
	}
	.school_tbl td {
		display: block;
	}
	.school_tbl td:first-child {
		background-color: #F4F3F3;
		border-top: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}
	.school_tbl td:not(:first-child) {
		position: relative;
		padding-left: 5.75em;
		text-align: left;
	}
	.school_tbl td:nth-child(2)::before {
		content: "住所";
	}
	.school_tbl td:nth-child(3)::before {
		content: "電話番号";
	}
	.school_tbl td:nth-child(4)::before {
		content: "FAX番号";
	}
	.school_tbl td:not(:first-child)::before {
		position: absolute;
		top: 0.5rem;
		left: 0.5rem;
	}
}






/* -------------- */
/* .no_border_tbl */
/* -------------- */
.no_border_tbl {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border: none;
	margin-bottom: 3rem;
}
.no_border_tbl th,
.no_border_tbl td {
	border: none;
	vertical-align: top;
	padding: 2.5rem 0 0;
}
.no_border_tbl th {
	font-weight: normal;
	width: 23.42%;
	position: relative;
}
.no_border_tbl.data_input_tbl th:not(.not_input) {
	padding-top: 2.875rem;
}
.no_border_tbl th.require::after {
}
.no_border_tbl.data_input_tbl th:not(.not_input).require::after {
	top: 2.875rem;
}
.no_border_tbl td {
	width: 76.57%;
}

@media screen and (max-width:767px) {
	.no_border_tbl th,
	.no_border_tbl td {
		width: 100%;
		display: block;
	}
	.no_border_tbl th {
		padding-top: 1.5rem !important;
	}
	.no_border_tbl td {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid #ddd;
	}
	.no_border_tbl td input#order_name1,
	.no_border_tbl td input#order_name1 {

	}
}
@media screen and (max-width:1024px) {
	.no_border_tbl th {
		text-align: left;
	}
}
@media print,screen and (min-width:1025px) {
	.no_border_tbl th {
		text-align: right;
		padding-right: 5.375rem;
	}
	.no_border_tbl th.require::after {
		position: absolute;
		top: 2.5rem;
		right: 3.875rem;
	}
}

/* -------------- */
/* .list_style01 */
/* -------------- */
.list_style01 li a {
    position: relative;
	display: flex;
	justify-content: flex-start;
	margin-bottom: 1.875rem;
}
.list_style01 li:last-child a {margin-bottom: 0;}
.list_style01 li a::after {
    content: "";
    display: block;
    width: 1.875rem;
    height: 5px;
    position: absolute;
    top: 16px;
    left: 0;
    background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}
.list_style01 li a p{
	width: 100%;
	padding-bottom: 0.5rem;
	margin-top: 0;
	margin-bottom: 0;
	padding-left: 2.375rem;
	border-bottom: 1px solid #ddd;
	font-weight: bold;
	font-size: 1.375rem;
	color: #222;
	transition: 0.3s ease;
}
.list_style01 li a:hover p {color:#7CB342;}

@media screen and (max-width:1024px) {
	.list_style01 li a {margin-bottom: 0;}
	.list_style01 li a p {margin-bottom: 1rem;}
	.list_style01 li a p.info_date {
		font-size: 1rem;
		font-weight: normal;
	}
}




/* -------------- */
/* .dot_list */
/* -------------- */
.dot_list li {
	text-indent: -1em;
	padding-left: 1em;
}
.dot_list li::before {
	content: "・";
}

/* -------------- */
/* .dot_list.type_b */
/* -------------- */
.dot_list.type_b li {
	border-bottom: 1px solid #ddd;
	font-weight: bold;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	margin-bottom: 0.5rem;
}
.dot_list.type_b li:last-child {
	margin-bottom: 0;
}


/* -------------- */
/* .cnt_list */
/* -------------- */
.cnt_list {
	counter-reset: list_cnt;
}
.cnt_list li {
	position: relative;
	padding-left: 1.625rem;
}
.cnt_list > li:not(:last-child) {
	margin-bottom: 3.125rem;
}
.cnt_list li h3 {
	padding-left: 4.25rem;
	text-indent: -1.75rem;
	margin-left: -1.625rem;
}
.cnt_list li h3::before {
	counter-increment: list_cnt;
	content: counter(list_cnt)".";
	margin-right: 0.5rem;
}
.cnt_list > li > ol {
	counter-reset: list_child_cnt;
}
.cnt_list > li > ol > li {
	padding-left: 1.875rem;
	text-indent: -1.875rem;
}
.cnt_list > li > ol > li::before {
	counter-increment: list_child_cnt;
	content: "("counter(list_child_cnt)")";
	margin-right: 0.5rem;
}
.cnt_list > li > ol > li:not(:last-child) {
	margin-bottom: 0.25rem;
}
.cnt_list > li > ol > li:last-child {
	margin-bottom: 0;
}

.cnt_list > li > ol > li > ul li {
	padding-left: 1.25rem;
	text-indent: -1.25rem;
}


@media screen and (max-width:767px) {
	.cnt_list > li {
		padding-left: 4.26vw;
	}
	.cnt_list > li h3 {
		text-indent: -1.5em;
		padding-left: 3.75em;
		margin-left: -4.26vw;
	}
	.cnt_list > li:nth-child(n+10) h3 {
		padding-left: 2.5rem;
		text-indent: 0rem;
	}
	.cnt_list > li > ol > li > ul {
		margin-left: -0.25rem;
	}

}


/* -------------- */
/* .file_list */
/* -------------- */
.file_list {
	align-items: flex-end;
	flex-wrap: wrap;	
	margin-top: -10px;
}
.file_list li {
	border-bottom: 1px solid #DDDDDD;
	margin-top: 10px;
}
.file_list li:last-child {
	margin-bottom: 0;
}
.file_list li a {
	color: #222;
	position: relative;
	min-height: 4.4375rem;
	font-size: 1.375rem;
	font-weight: bold;
	padding: 0.625rem 2.75rem 0.625rem 2.5rem;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background-image: url(./images/icon_pdf_ov.svg);
	background-position: bottom 0.625rem right;
	background-size: auto 51px;
}
.file_list li a::before {
	content: "";
	display: block;
	width: 20px;
	height: 10px;
	background: linear-gradient(to right, #7cb342 50%,#dfeecc 51%);
	position: absolute;
	bottom: calc(50% - 5px);
	left: 0;
}
.file_list li a::after {
	content: "";
	display: block;
	width: 43px;
    height: 51px;
	position: absolute;
	bottom: 0.625rem;
	right: 0;
	background-image: url(./images/icon_pdf.svg);
	background-position: bottom right;
	background-color: rgba(255,255,255,1);
	background-size: contain;
	transition: 0.3s;
}
.file_list li a:hover {
 	color:#7CB342;
}
.file_list li a:hover::after {
	opacity: 0;
}
.file_list.zip_file li a,
.file_list li.zip_file a {
	background-image: url(./images/icon_zip_ov.svg);
}
.file_list.zip_file li a::after,
.file_list li.zip_file a::after {
	background-image: url(./images/icon_zip.svg);
}
.file_list.file_none li a,
.file_list li.file_none a {
	font-size: 1rem;
	min-height: auto;
	font-weight: normal;
	background-image: none;
}
.file_list.file_none li a::after,
.file_list li.file_none a::after {
	display: none;
}

@media all and (-ms-high-contrast: none){
	.file_list li a {
		padding-top: 1.125rem;
		background-position: bottom 8px right 4px;
		background-size: 42px 53px;
	}
	.file_list li a::after {
		content: url(./images/icon_pdf.svg);
		background-image: none;
		width: 46px;
		height: 52px;
		bottom: 8px;
		background-image: none;
	}
	.file_list.zip_file li a,
	.file_list li.zip_file a {
		background-size: 41px 51px;
		background-position: bottom 9px right 3px;
	}
	.file_list.zip_file li a::after,
	.file_list li.zip_file a::after {
		content: url(./images/icon_zip.svg);
		width: 41px;
		height: 50px;
		right: 3px;
		bottom: 10px;
		background-image: none;
	}
}

@media screen and (max-width:767px) {
	.file_list li a {
		font-size: 1rem;
		padding: 0.625rem 4rem 0.625rem 1.875rem;
	}
}


/* -------------- */
/* .file_list.type_b */
/* -------------- */
.file_list.type_b li {
	position: relative;
	border-bottom: none;
}
.file_list.type_b li::before {
	content: "";
	display: block;
	width: 100%;
	height: 5px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}
.file_list.type_b.within_year li:first-child {
	display: none;
}
.file_list.type_b li a {
	flex-wrap: wrap;
}
.file_list.type_b li a span.post_date {
	display: inline-block;
	width: 100%;
	font-size: 1rem;
	font-weight: normal!important;
	color: #7CB342;
}


/* -------------- */
/* .file_list.type_c */
/* -------------- */
.file_list.type_c li {
	position: relative;
	border-bottom: none;
}
.file_list.type_c li::before,
.file_list.type_c li::after {
	content: "";
	display: block;
	width: 100%;
	height: 5px;
	position: absolute;
	left: 0;
	bottom: 0;
	transition: 0.3s;
}
.file_list.type_c li::before{
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}
.file_list.type_c li::after{
	background: #ddd;
}
.file_list.type_c li.active_year::after,
.file_list.type_c li:hover::after {
	opacity: 0;
}
.file_list.type_c li a {
	color: #ddd;
	transition: 0.3s;
}

.file_list.type_c li.active_year a,
.file_list.type_c li:hover a {
	color: #222;
}
.file_list.type_c li a::after {
	content: "";
	display: block;
	width: 20px;
	height: 10px;
	position: absolute;
	top: calc(50% - 5px);
	left: 0;
	background: linear-gradient(to right, #ddd 50%,#F4F3F3 51%);
	transition: 0.3s;
}
.file_list.type_c li.active_year a::after,
.file_list.type_c li:hover a::after {
	opacity: 0;
}


/* -------------- */
/* .file_list.type_d */
/* -------------- */
.file_list.type_d {
	margin-top: -30px;
}
.file_list.type_d li {
	position: relative;
	border-bottom: none;
}
.file_list.type_d li::before {
	content: "";
	display: block;
	width: 100%;
	height: 5px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}
.file_list.type_d li figure {
	margin-top: 20px;
}

@media screen and (max-width:767px) {
	.file_list.type_d {
		margin-top: -20px;
	}
	.file_list.type_d li figure {
		margin-top: 10px;
	}
}



/* -------------- */
/* .dl_list */
/* -------------- */
.dl_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.dl_list dt,
.dl_list dd {
	border-bottom: 1px solid #DDDDDD;
	padding-top: 0.875rem;
	padding-bottom: 0.875rem;
	display: flex;
}

.dl_list dt {
	font-weight: bold;
	position: relative;
	padding-left: 2.5rem;
}
.dl_list dt::before {
	content: "";
	display: block;
	width: 1.875rem;
	height: 5px;
	position: absolute;
	top: 25px;
	left: 0;
	background: linear-gradient(to right, #fbed96 0%,#7cb342 100%);
}
@media screen and (max-width:767px) {
	.dl_list dt,
	.dl_list dd {
		width: 100%;
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
	}
	.dl_list dt::before {
		top: 19px;
	}
	.dl_list dd {
		border-bottom: none;
		margin-bottom: 0.25rem;
	}
}

@media print,screen and (min-width:768px) {
	.dl_list dt:last-of-type,
	.dl_list dd:last-of-type {
		border-bottom: none;
	}
}

/* -------------- */
/* .dl_list.dt_small */
/* -------------- */
@media print,screen and (min-width:768px) {
	.dl_list.dt_small dt {width: 17.27%;}
	.dl_list.dt_small dd {width: calc(100% - 17.27%);}
}

/* -------------- */
/* .dl_list.dt_medium */
/* -------------- */
@media print,screen and (min-width:768px) {
	.dl_list.dt_medium dt {width: 24.36%;}
	.dl_list.dt_medium dd {width: calc(100% - 24.36%);}
}


/* -------------- */
/* .month_list */
/* -------------- */
.month_list {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin-bottom: 2rem;
}
.month_list li:not(:last-child)::after {
	content:"/";
	padding: 0 1em;
}


/* -------------- */
/* .block_pager */
/* -------------- */
.block_pager {
	display: flex;
	justify-content: center;
}
.block_pager span,
.block_pager a {
	color: #222;
	width: 2rem;
	height: 2rem;
	display: flex;
	justify-content: center;
	align-items: center;	
}
.block_pager span:hover,
.block_pager a:hover {
	color: #7CB342;
}

.block_pager .current,
.block_pager span.current:hover {
	color: #fff;
	background-color: #7CB342;
}


/* -------------- */
/* .zoom_link */
/* -------------- */
.zoom_link {
	display: inline-block;
	position: relative;
}
.zoom_link.zoom_icon::before {
	content: "";
	width: 53px;
	height: 53px;
	display: block;
	position: absolute;
	z-index: 1;
	bottom: 10px;
	right: 10px;
	background-image: url(./images/icon_zoom.svg);
	background-size: contain;
}
.zoom_link img {transition: 0.3s;}
.zoom_link:hover img {
	opacity: 0.7;
	transition: 0.3s;
}
@media screen and (max-width:767px) {
	.zoom_link figure figcaption {
		padding-top: 0.5em;
	}
}
@media print,screen and (min-width:768px) {
}


/* -------------- */
/* #lightbox */
/* -------------- */
#lightbox {
    top: 50%!important;
    position: fixed!important;
    transform:translate(0, -50%);
}

#lightbox .lb-outerContainer {
	max-width: calc(90vw + 8px);
}

#lightbox .lb-outerContainer img,
#lightbox .lb-dataContainer {
	max-width: 90vw;
}
@media screen and (max-width:1024px) {
	.lb-nav a.lb-next,
	.lb-nav a.lb-prev {
		opacity: 1!important;
	}
}
@media all and (-ms-high-contrast: none){
	#lightboxOverlay {
		position: fixed;
		top:0;
		left: 0;
		height: 100vw;
		widows: 100vw;
	}
}


/* -------------- */
/* #colorbox */
/* -------------- */
#colorbox {
	max-width: 90vw;
    top: 50%!important;
    left: 50%!important;
    position: fixed!important;
    transform: translate(-50%, -50%);
}
#colorbox #cboxWrapper,
#colorbox #cboxContent,
#colorbox #cboxLoadedContent,
#colorbox #cboxLoadedContent img {
	max-width: 100%!important;
	height: auto!important;
}


/* -------------- */
/* .article_content_01 */
/* -------------- */
.article_content_01 {
	margin-bottom: 2.5rem;
}
.article_content_01 > *:not(h3) {
	padding-left: 1.625em;
}

@media screen and (max-width:767px) {
	.article_content_01 {
		margin-bottom: 1.5rem;
	}
	.article_content_01 > *:not(h3) {
		padding-left: 1rem;
	}
}


/* -------------- */
/* .article_content_02 */
/* -------------- */
.article_content_02 {
	margin-bottom: 3rem;
}
article > .article_content_02:last-of-type {
	margin-bottom: 0;
}
.article_content_02 .content_info {
	padding-left: 1.625em;
}
@media screen and (max-width:767px) {
	.article_content_02 .content_info {
		padding-left: 1em;
	}
}


/* -------------- */
/* .article_content_03 */
/* -------------- */
.article_content_03 {
	margin-bottom: 1rem;
	padding-left: 0!important;
}
.article_content_03.in_img {
	display: flex;
	flex-wrap: wrap;
}

@media screen and (max-width:767px) {
	.article_content_03 {
		margin-bottom: 1.5rem;
	}
}
@media screen and (min-width:768px) {
	.article_content_03.in_img figure {
		max-width: 30%;
		margin-right: 1.5rem;
	}
	.article_content_03.in_img p {
		width: calc(100% - (30% + 1.5rem));
		margin: 0;
	}
}



/* -------------- */
/* .content_info */
/* -------------- */
.content_info {
	margin-bottom: 3rem;
}
.content_info p {
	margin: 0 0 0.75rem;
}
@media screen and (max-width:767px) {
	.content_info p {
		margin: 0 0 0.75rem;
	}
}




/* -------------- */
/* .bnr_wrap */
/* -------------- */
.bnr_wrap {
	display: inline-block;
	border: 2px solid #888888;
}
.bnr_wrap:hover {
	opacity: 0.7;
}

/* -------------- */
/* .map-wrap */
/* -------------- */
.map-wrap iframe {
	width: 100%;
	height: 27rem;
}
@media screen and (max-width:767px) {
	.map-wrap iframe {
		height: 8.5rem;
	}
}


/* -------------- */
/* #not_found */
/* -------------- */
#not_found {
	background-image: url(././images/origin_bg.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}


/* -------------- */
/* #outline */
/* -------------- */
#outline .representative_name {
	text-align: right;
	font-weight: bold;
	font-size: 1.25rem;
	margin: 0;
}

.representative_img{
	max-width: 294px;
	aspect-ratio: 3/4;
	object-fit: cover;
}

#organization_greeting {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#outline .sp_accordion_trigger {
	font-size: 1.125rem;
	font-weight: bold;
	border-bottom: #DDD 1px solid;
	margin-top: 0;
}


@media screen and (max-width:1024px) {
	#outline .representative_name {
		margin-bottom: 1.875rem;
	}
}
@media print,screen and (min-width:1025px) {
	#organization_greeting > div {
		order: 3;
	}
	#organization_greeting #organization_greeting_title_wrap {
		width: calc(100% - 491px);
		order: 1;
		padding-right: 1.5rem;
		box-sizing: border-box;
	}
	#organization_greeting figure {
		order: 2;
	}
	#outline .dl_list:first-of-type dt:last-of-type,
	#outline .dl_list:first-of-type dd:last-of-type {
		border-bottom: 1px solid #ddd;
	}

}


/* -------------- */
/* #service_etc */
/* -------------- */
#service_etc .pc_2col_items {
	margin-bottom: -3rem;
}
#service_etc .pc_2col_items .article_content_02 .content_info {
	margin-bottom: 0;
}


/* -------------- */
/* #convention */
/* -------------- */
#convention .images_block_2col{
	margin-top: 1.875rem;
}
#convention .images_block_2col + p{
	margin-top: 0;
}
#convention .images_block_2col figure figcaption {
	color: #fff;
	background-color: rgba(124, 179, 66, 0.8);
	padding: 0.75rem;
}


/* -------------- */
/* #division */
/* -------------- */
#division .pc_3col_items li {
	padding: 1.875rem;
	border: 5px solid #DDDDDD;
	margin-bottom: 1.875rem;
}
#division .pc_3col_items .single_info p {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}

#division .pc_3col_items .single_info .secretariat {
	background-color: #F4F3F3;
	padding: 1rem; 
}
#division .pc_3col_items .single_info  .secretariat p {
	margin-top: 0;
	margin-bottom: 0.5rem;
}


#division .pc_3col_items .single_link {
	margin-top: 2.375rem;
}
#division .pc_3col_items .single_link a {
	color: #222;
	font-weight: bold;
	text-align: center;
	display: block;
	max-width: 200px;
	background-color: #DFEECC;
	margin: auto;
	padding: 0.675rem;
}
#division .pc_3col_items .single_link a:hover {
	opacity: 0.7;
}

#division .pc_3col_items .file_list li {
	padding: 0;
	margin-bottom: 0;
	border-width: 0 0 3px;
}
#division .pc_3col_items .file_list li a {
	font-size: 1rem;
}

/* -------------- */
/* #link */
/* -------------- */
@media screen and (max-width:1024px) {
	#link .pc_3col_items > * {
		text-align: center;
		margin-bottom: 1.25rem;		
	}
}
@media print,screen and (min-width:1025px) {
	#link .pc_3col_items > * {
		width: calc(31.45% + 4px);
	}
}



/* -------------- */
/* #privacy */
/* -------------- */
@media print,screen and (min-width:1025px) {
	#privacy #page_title h1 {
		max-width: 35.625rem;
	}
}


/*----------------*/
/* member */
/*----------------*/
#post_password form input[type="submit"] {
	height: 2.5rem;
}

/* -------------- */
/* #other-news */
/* -------------- */
@media print,screen and (min-width:1025px) {
	#other-news article:not(:last-child) {
		margin-bottom: 2.5rem
	}
}

/* -------------- */
/* 240405追加 */
/* -------------- */
#zendo_past #zendo_plan{
	display:none;
}


#zenkoku_past #zenkoku_plan{
	display:none;
}
