@charset "utf-8";
/*-------------------- 
	????
--------------------*/
/* ?y?[?W?S?? */
body {
	margin: 0;
	padding: 0;
}

/* ?y?[?W?S???t?H???g */
p, h1, h2, h3, h4, li {
	font-family: '???C???I', 'Meiryo', sans-serif;
}

.all_contents {
	overflow: scroll;
}

img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

/*-------------------- 
	?w?b?_?[
--------------------*/
/* ?w?b?_?[?S?? */
header {
	z-index: 1;
	/*background-color: #2f5597;*/
	position: fixed;
	transition: .3s;
	width: 100%;
	/*top: 0;
	bottom: 0;
	overflow-y:auto;*/
}

.btn-burger {
	display: none;
}

h1.h1 {
	padding-top: 15px;
}

@media only screen and (max-width: 768px) {
	header {
		position: fixed;
		padding-top: 0px;
		z-index: 100;
		width: 100%;
	}
}

/* ?y?[?W?^?C?g?? */
.h1 {
	float: right;
	margin: 0;
	text-align: center;
	color: #ffffff;
	background-color: #2f5597;
}

.h1_koyou {
	float: right;
	margin: 0;
	text-align: center;
	color: #ffffff;
	background-color: #3B9C3E;
}

/* ?w?b?_?[?i?r???? */
.headnav {
	float: right;
	background-color: #2f5597;
}

.headnav_koyou {
	float: right;
	background-color: #3B9C3E;
}

.gyoumu_itaku a, .nougyou_keiei a {
	pointer-events: none;
	color: gray !important;
}

.headnav_pcversion ul .head_douitsuroudou:hover, .headnav_pcversion ul .head_koukasya:hover {
	background-color: unset;
}

/* ?w?b?_?[?i?r?iPC?p?j */
.headnav_pcversion ul {
	display: table;
	margin: 0 auto;
	padding: 0px;
	width: 100%;
	text-align: center;
}

.headnav_pcversion ul li {
	display: table-cell;
	width: 100px;
}

.headnav_pcversion ul li a {
	display: block;
	width: 100%;
	padding: 10px 0;
	text-decoration: none;
	color: #ffffff;
	font-size: 90%;
	font-weight: bold;
}

.headnav_pcversion ul li:hover {
	background-color: #009be8;
}

.headnav_pcversion_koyou ul li:hover {
	background-color: #2c6b2e !important;
}

/*-------------------- 
	?E?y?C??????
--------------------*/
.right {
	margin-top: 145px;
	background-color: #ffffff;
	float: right;
	display: inline-block;
}

/*-------------------- 
	?w?b?_?[?z?????^????
--------------------*/
.top_img {
	position: relative;
	background: #857f80;
}

/* ?w?b?_?[?z?????^ */
.top_img img {
	width: 100%;
	margin-top: 120px;
}

.top_img_koyou img {
	margin-top: 0px;
}

@media only screen and (max-width: 768px) {
	.top_img img {
		margin-top: 55px;
	}
}

/* ??p???????X?^?C?? */
div.tooltip {
	width: 80%;
	height: 250px;
	position: absolute;
	left: -9999px;
	background: #3B9C3E;
	padding: 5px;
	border: 3px solid #AAA;
	z-index: 99999;
}

div.tooltip p {
	color: #ffffff;
	background: #3B9C3E;
	padding: 5px 10px;
}

/*-------------------- 
	?R???e???g?i?r
--------------------*/
/* ?R???e???g?i?r???? */
.contentnav {
	position: relative;
	background-color: rgb(0, 0, 0);
	width: 100%;
}

/* ?R???e???g?i?r?iPC?p?j */
.contentnav img {
	width: 33.33%;
	float: left;
	opacity: 1;
	margin: 0;
	padding: 0;
	height: 100%;
}

.contentnav img:hover {
	opacity: 0.7;
}

/* ?R???e???g?i?r?i?X?}?z?p?j */
.contentnav_mobileversion ol {
	padding: 0;
}

.contentnav_mobileversion li p {
	color: white;
}

.contentnav_mobileversion li {
	position: relative;
	color: #fff;
	padding: 0 0 0 20px;
	margin: 0;
	background: #857f80;
	border: solid #ffffff;
}

.contentnav_mobileversion li p:hover {
	color: black;
}

/*-------------------- 
	?????
--------------------*/
.separater {
	margin: 0px;
}

hr {
	border: solid #857f80;
}

/*-------------------- 
	?{??
--------------------*/
/* ?{?????? */
.main {
	max-width: 1200px;
	background-color: #ffffff;
	margin-bottom: 60px;
}

/* h2???o?? */
.h2 {
	text-align: center;
}

h2 {
	position: relative;
	display: inline-block;
	margin-bottom: 1em;
	margin-top: 50px;
}

h2:before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -15px;
	/*???????u*/
	display: inline-block;
	width: 650px;
	/*???????*/
	height: 5px;
	/*???????*/
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	/*??u????*/
	background-color: #857f80;
	/*????F*/
	border-radius: 2px;
	/*??????*/
}

/* h3???o?? */
.main h3 {
	padding: 0 10px;
	margin-top: 50px;
	border-left: 5px solid #2f5597;
	margin-left: 0%;
	font-size: 150%;
}

.main .h3_koyou {
	padding: 0 10px;
	margin-top: 50px;
	border-left: 5px solid #3B9C3E;
	margin-left: 0%;
	font-size: 150%;
}

/* h4???o?? */
.main h4 {
	margin-top: 25px;
	background: linear-gradient(transparent 90%, #2f5597 80%);
	display: inline-block;
	margin-left: 0%;
	margin-bottom: 0;
	font-size: 125%;
	padding-bottom: 5px;
}

.main .h4_koyou {
	margin-top: 25px;
	display: inline-block;
	/*margin-left: 10%;*/
	margin-bottom: 0;
	font-size: 125%;
	padding-bottom: 5px;
	border-bottom: solid 4px #3B9C3E;
	background: unset !important;
}

/* ?{??????? */
.main .main_fig {
	text-align: center;
}

.main .main_fig_koyou {
	text-align: center;
}

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

/* ?{?? */
.main p {
	/*margin-left: 10%;
	margin-right: 10%;*/
	margin-bottom: 20px;
	font-size: 115%;
}

/* ???????U????X?^?C?? */
.main .wood_pc {
	/*margin-left: 10%;
	margin-right: 10%;*/
}

.main .community, .main .job, .main .entry {
	/*margin-left: 12%;
	margin-right: 12%;*/
	margin-bottom: 20px;
	font-size: 115%;
}

.main .syoukyu {
	font-size: 200%;
}

/* ?l??????X?^?C?? */
.main .koukasya {
	/*margin-left: 10%;
	margin-right: 10%;*/
	margin-bottom: 25px;
	font-size: 100%;
	list-style: none;
}

/* ??p???????X?^?C?? */
.main .strong {
	font-size: 200%;
}

.koyou_strong {
	text-align: center;
}

.koyou_link {
	font-size: 90% !important;
}

.koyou_button {
	display: inline-block;
	border-radius: 5%;
	font-size: 16pt;
	text-align: center;
	cursor: pointer;
	padding: 12px 70px;
	background: #8E402F;
	color: #ffffff;
	line-height: 1em;
	transition: .3s;
	border: 2px solid #8E402F;
}

/* ????????X?^?C?? */
.zisseki_table {
	margin: auto;
}

/* ?{????????X?g */
.main ul {
	/*margin-left: 10%;
	margin-right: 10%;*/
	margin-bottom: 25px;
	font-size: 115%;
}

.main ol {
	/*margin-left: 10%;
	margin-right: 10%;*/
	margin-bottom: 25px;
	font-size: 115%;
}

/* --------------------------------------------------
  ????t?H?[??
-------------------------------------------------- */

form.onlinesemi_form table th {
	padding: 10px;
	border: #CCC solid 1px;
	width: 30%;
}

form.onlinesemi_form table td {
	padding: 10px;
	border: #CCC solid 1px;
	width: 70%;
}

form.onlinesemi_form table {
	margin-left: auto;
	margin-right: auto;
	width: 80%;
}

.important {
	color: #F00 !important;
}

form.onlinesemi_form table th {
	background-color: #F3F3F3;
}

.main form {
	display: block;
}

.submit {
	text-align: center;
}

/* --------------------------------------------------
  ?O???[?o???i?r?i???y?C???j
-------------------------------------------------- */
/* ?O???[?o???i?r?S?? */
.left {
	height: 100%;
	position: fixed;
	top: 0px;
	z-index: 100 !important;
	background-color: #ffffff;
	text-align: center;
	display: inline-block;
	overflow: scroll;
}

/* ?X?N???[???o?[??\?? */
.left::-webkit-scrollbar {
	display: none;
	/* Chrome, Safari ??? */
}

.left {
	-ms-overflow-style: none;
	/* IE, Edge ??? */
	scrollbar-width: none;
	/* FireFox ??? */
}

/* ???S */
.left .logo {
	width: 100%;
	margin-bottom: 10px;
}

/* ?O???[?o?????j???[ */
.left ul, .left li {
	margin: 0;
	padding: 0;
}

.left .gnav_pcmenu {
	margin-left: 20px;
	list-style: none;
}

.left a {
	padding-left: 25px;
	padding-right: 25px;
	padding-top: 7px;
	padding-bottom: 7px;
	display: block;
	color: #111111;
	text-decoration: none;
	text-align: left;
	font-weight: bold;
	font-family: "????? 501", "Jun 501", "Kyoukasho ICA Medium", "typesquare";
}

.left a img {
	width: 100%;
	height: auto;
}

/* ?o?i?[ */
.left .bannar {
	width: 100%;
}

.bannar_suishin {
	float: left;
	border-left: solid #2f5597;
	margin-left: 25px;
	padding-left: 10px;
	font-weight: bold;
	font-family: "????? 501", "Jun 501", "Kyoukasho ICA Medium", typesquare;
	font-size: 90%;
}

/* ?o?i?[?t?H?[?? */
.left .bannar_form {
	width: 83%;
	margin: auto;
	margin-top: 7px;
	margin-bottom: 7px;
	background-color: #010067;
	border: none;
}

.left .bannar_form_img {
	width: 100%;
	padding: 0 !important;
	border: 0;
}

.left .bannar_form_mail {
	width: 100%;
}

.left .bannar_form_button {
	width: 100%;
}

.gnav_pcversion, .gnav_lo {
	font-family: "Kyoukasho ICA Medium";
}

/* --------------------------------------------------
  ?g?b?v????{?^???i?t?b?^?[?j
-------------------------------------------------- */
#page-top {
	position: fixed;
	right: 10px;
	bottom: 10px;
	font-size: 2rem;
	line-height: 2rem;
	background: #fff;
	color: #857f80;
	padding: 10px;
	border: solid 1px;
	border-radius: 50%;
	box-shadow: 0 2px 10px -6px rgba(0, 0, 0, .5), 0 3px 10px -4px rgba(0, 0, 0, .2);
	opacity: 0.3;
}

#page-top:hover {
	opacity: 1;
}


/* --------------------------------------------------
  ?n???o?[?K?[???j???[?i?w?b?_?[?i?r?j
-------------------------------------------------- */
.headnav_mobileversion {
	width: 100%;
	float: right;
}

/*?n???o?[?K?[?A?C?R??*/
.btn-burger {
	position: absolute;
	cursor: pointer;
	display: block;
	width: 30px;
	height: 60px;
	top: 0px;
	right: 5px;
}

/*?n???o?[?K?[?A?C?R???????O?{??*/
.icon, .icon:before, .icon:after {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	height: 2px;
	/*???????*/
	width: 20px;
	/*???????*/
	background-color: rgb(255, 255, 255);
	border-radius: 2px;
	display: block;
	content: '';
	cursor: pointer;
	margin: auto;
}

/*?O?{?????u*/
.icon:before {
	top: 12px;
}

.icon:after {
	top: -20px;
}

/*?`?F?b?N?{?b?N?X??\??*/
#navToggle {
	display: none;
}

/*?A?C?R?????N???b?N??????*/
#navToggle:checked~.btn-burger .icon {
	background: transparent;
}

#navToggle:checked~.btn-burger .icon:before {
	transform: rotate(-45deg);
	top: 0;
}

#navToggle:checked~.btn-burger .icon:after {
	transform: rotate(45deg);
	top: 0;
}

.icon, .icon:before, .icon:after {
	transition: all .8s;
}

/*?\?????????j???[????g*/
.headnav_humburger {
	background-color: #2f5597;
}

.headnav_humburger_koyou {
	background-color: #3B9C3E;
}

.headnav_list a {
	display: block;
	text-decoration: none;
	color: inherit;
}

.headnav_list {
	list-style: none;
	display: none;
	margin: 0;
	padding-left: 0px;
}

.headnav_list li {
	margin: 0;
	padding: 10px;
	color: #ffffff;
}

#navToggle:checked~.headnav_humburger .headnav_list {
	display: block;
}

a {
	color: inherit;
	font-weight: bold;
}

/* --------------------------------------------------
  ?n???o?[?K?[???j???[?i?O???[?o???i?r?j
-------------------------------------------------- */

/*?n???o?[?K?[?A?C?R??*/
.btn-burger_lo {
	position: absolute;
	cursor: pointer;
	display: block;
	width: 56px;
	height: 30px;
	top: 15px;
	left: 10px;
}

/*????A?C?R??*/
.icon_lo {
	color: #ffffff;
	font-size: 100%;
}

/*?`?F?b?N?{?b?N?X??\??*/
#navToggle_lo {
	display: none;
}

/*?A?C?R?????N???b?N??????*/
#navToggle_lo:checked~.btn-burger_lo .icon_lo {
	background-color: #009be8;
}

/*?\?????????j???[????g*/
.headnav_humburger_lo {
	background-color: #ffffff;
	position: fixed;
	margin-top: 55px;
	height: 100%;
	overflow: auto;
}

.gnav_lo a {
	padding: 0px 10px;
	display: block;
	color: #000000;
	text-decoration: none;
	font-family: "Kyoukasho ICA Medium", "typesquare" !important;
}

.gnav_lo {
	list-style: none;
	display: none;
	margin: 0;
	padding-left: 0px;
}

/* ???j???[ */
.gnav_lo .gnav_mobilemenu {
	list-style: none;
	/* padding-left: 10px;
	padding-bottom: 10px; */
  margin: auto;
  margin-bottom: 10px;
  background-color: #010067;
  width: 95%;
  border: none;
}

.gnav_lo ul, .gnav_lo li {
	margin: 0;
	padding: 0;
}

#navToggle_lo:checked~.headnav_humburger_lo .gnav_lo {
	display: block;
}

/* ?o?i?[?t?H?[?? */
.gnav_lo .bannar_form {
	margin: auto;
	margin-top: 20px;
	margin-bottom: 10px;
	background-color: #010067;
	width: 95%;
	border: none;
}

.gnav_lo .bannar_form_img {
	padding: 0 !important;
	border: 0;
}

.gnav_lo .bannar_form_mail {
	width: 100%;
}

.gnav_lo .bannar_form_button {
	width: 100%;
}


/*???S????*/
.headnav_humburger_lo_logo {
	display: block;
	margin: 10px auto;
}

/* --------------------------------------------------
  ??1281px????X?^?C???w?? ????????
-------------------------------------------------- */
@media screen and (min-width: 1281px) {

	/* ?n???o?[?K?[?{?^?? */
	.headnav_mobileversion {
		display: none;
		/*768px?????g?p????? */
	}

	.contentnav_mobileversion {
		display: none;
	}

	.wood_mobile {
		display: none;
	}

	.h1 {
		width: 79.69%;
	}

	.headnav {
		width: 79.69%;
	}

	.right {
		width: calc(100% - 20.31%);
	}

	.left {
		width: 20.31%;
	}

	.main_top {
		background-color: #ffffff;
		margin-bottom: 60px;
		margin-top: 35%;
	}

	.toiawase_top {
		margin-top: 100px;
	}

	/* ?{??????? */
	.main_fig img {
		margin: 15px;
	}

	.complex_link_mobile {
		display: none;
	}

	/* ???q?l????? */
	.koe dl {
		display: flex;
		width: 80%;
		margin: auto;
		font-size: 100%;
		margin-bottom: 20px;
	}

	.koe dt {
		width: calc(100% - 200px);
		padding: 10px;
		border-top: 1px solid #ccc;
		border-left: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		border-right: none;
		font-size: 90%;
	}

	.koe dd {
		width: 200px;
		padding: 10px;
		margin: 0;
		border-top: 1px solid #ccc;
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		border-left: none;
	}

	.koe dd img {
		width: 200px;
	}

	.koe .koe_fig {
		text-align: center;
	}

	.koe h2 {
		margin-top: 80px;
	}

	.koe dt h3 {
		border-left: unset;
		margin-left: unset;
		font-size: 110%;
		margin-top: 5px;
		margin-bottom: 5px;
	}

	.koe_detail img {
		float: right;
	}

	.koe_detail h2 {
		margin-top: 150px;
	}

	.figcaption_koe {
		text-align: center;
		font-size: 70%;
	}

	.koe_jinji dl {
		font-size: 115%;
	}

	.koe_jinji dt {
		border-top: none;
		border-left: none;
		border-bottom: none;
		font-size: 100%;
	}

	.koe_jinji dd {
		border-top: none;
		border-right: none;
		border-bottom: none;
		font-size: 65%;
	}

	.koe_jinji img {
		width: 50%;
	}

	/* ??p */
	.koyou dl {
		display: flex;
		width: 80%;
		margin: auto;
		font-size: 100%;
		margin-bottom: 20px;
	}

	.koyou dt {
		width: 50%;
		padding: 10px;
		border-right: none;
		font-size: 90%;
	}

	.koyou dt img {
		float: right;
	}

	.koyou dd {
		width: 50%;
		padding: 10px;
		margin: 0;
		border-left: none;
	}

	.koyou dd img {
		float: left;
	}

	.koyou_img img {
		float: right;
	}

	.main_top .main_fig_koyou img {
		margin-top: 550px;
	}

}

/* --------------------------------------------------
  ??769???1280px?????X?^?C???w?? ????????
-------------------------------------------------- */
@media only screen and (min-width: 769px) and (max-width: 1280px) {

	/* ?n???o?[?K?[?{?^?? */
	.headnav_mobileversion {
		display: none;
		/*769px?????g?p????? */
	}

	.contentnav_mobileversion {
		display: none;
	}

	.wood_mobile {
		display: none;
	}

	.h1 {
		width: calc(100% - 260px) !important;
		height: auto !important;
	}

	.headnav {
		width: calc(100% - 260px);
	}

	.right {
		width: calc(100% - 260px);
	}

	.left {
		width: 260px;
	}

	.main_top {
		background-color: #ffffff;
		margin-bottom: 60px;
		margin-top: 40%;
	}

	.toiawase_top {
		margin-top: 100px;
	}

	/* ?{??????? */
	.main_fig img {
		margin: 15px;
	}

	.complex_link_mobile {
		display: none;
	}

	/* ???q?l????? */
	.koe dl {
		display: flex;
		width: 95%;
		margin: auto;
		font-size: 100%;
		margin-bottom: 20px;
	}

	.koe dt {
		width: calc(100% - 200px);
		padding: 10px;
		border-top: 1px solid #ccc;
		border-left: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		border-right: none;
		font-size: 90%;
	}

	.koe dd {
		width: 200px;
		padding: 10px;
		margin: 0;
		border-top: 1px solid #ccc;
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		border-left: none;
	}

	.koe dd img {
		width: 200px;
	}

	.koe .koe_fig {
		text-align: center;
	}

	.koe h2 {
		margin-top: 80px;
	}

	.koe dt h3 {
		border-left: unset;
		margin-left: unset;
		font-size: 110%;
		margin-top: 5px;
		margin-bottom: 5px;
	}

	.koe_detail img {
		float: right;
	}

	.koe_detail h2 {
		margin-top: 180px;
	}

	.figcaption_koe {
		text-align: center;
		font-size: 70%;
	}

	.koe_jinji dl {
		font-size: 115%;
		width: 80%;
	}

	.koe_jinji dt {
		border-top: none;
		border-left: none;
		border-bottom: none;
		font-size: 100%;
	}

	.koe_jinji dd {
		border-top: none;
		border-right: none;
		border-bottom: none;
		font-size: 65%;
	}

	.koe_jinji img {
		width: 50%;
	}

	/* ??p */
	.koyou dl {
		display: flex;
		width: 80%;
		margin: auto;
		font-size: 100%;
		margin-bottom: 20px;
	}

	.koyou dt {
		width: 50%;
		padding: 10px;
		border-right: none;
		font-size: 90%;
	}

	.koyou dt img {
		float: right;
	}

	.koyou dd {
		width: 50%;
		padding: 10px;
		margin: 0;
		border-left: none;
	}

	.koyou dd img {
		float: left;
	}

	.koyou_img img {
		float: right;
	}

	.main_top .main_fig_koyou img {
		margin-top: 400px;
	}

}

/* --------------------------------------------------
  ??769???1024px?????X?^?C???w?? ????????
-------------------------------------------------- */
@media only screen and (min-width: 769px) and (max-width: 1024px) {

	.main_top {
		background-color: #ffffff;
		margin-bottom: 60px;
		margin-top: 60%;
	}

	.main_top .main_fig_koyou img {
		margin-top: 70px;
	}

	.complex_link_mobile {
		display: none;
	}
}

/* --------------------------------------------------
  ??768px?????X?^?C???w?? ????????
-------------------------------------------------- */
@media only screen and (max-width: 768px) {

	.contentnav {
		display: none;
	}

	/*
	.right img {
		width: 90%;
	}
*/
	.complex_link_pc {
		display: none;
	}

	.complex_link_mobile img {
		width: 691px;
		max-width: none !important;
	}

	.headnav {
		display: none;
	}

	.left {
		display: none;
	}

	.wood_pc {
		display: none;
	}

	.right {
		width: 100% !important;
		margin-top: 60px;
	}

	.h1 {
		width: 100%;
		height: 40px;
	}

	h1 {
		font-size: 100%;
	}

	.humburger {
		width: 100%;
	}

	h2:before {
		content: '';
		position: absolute;
		left: 50%;
		bottom: -15px;
		/*???????u*/
		display: inline-block;
		width: 300px;
		/*???????*/
		height: 5px;
		/*???????*/
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		/*??u????*/
		background-color: #857f80;
		/*????F*/
		border-radius: 2px;
		/*??????*/
	}

	.main p, .main p.end {
		/*margin-left: 5%;
		margin-right: 5%;*/
		margin-bottom: 20px;
		font-size: 100%;
	}

	.main h3 {
		padding: 0 10px;
		margin-top: 20px;
		border-left: 5px solid #2f5597;
		/*margin-left: 5%;*/
		font-size: 100%;
	}

	.main .h3_koyou {
		padding: 0 10px;
		margin-top: 20px;
		border-left: 5px solid #3B9C3E;
		/*margin-left: 5%;*/
		font-size: 100%;
	}

	.main h4 {
		margin-top: 25px;
		background: linear-gradient(transparent 80%, #2f5597 80%);
		display: inline-block;
		/*margin-left: 5%;*/
		margin-bottom: 0;
		font-size: 100%;
	}

	.main .h4_koyou {
		margin-top: 25px;
		background: linear-gradient(transparent 80%, #3B9C3E 80%);
		display: inline-block;
		/*margin-left: 5%;*/
		margin-bottom: 0;
		font-size: 100%;
	}

	.main ul, .main ol {
		/*margin-left: 5%;
		margin-right: 5%;*/
		margin-bottom: 25px;
		font-size: 100%;
	}

	.main .community, .main .job, .main .entry {
		/*margin-left: 7%;
		margin-right: 7%;*/
		margin-bottom: 20px;
		font-size: 100%;
	}

	.main_top {
		background-color: #ffffff;
		margin-bottom: 60px;
		margin-top: 30px;
	}

	.toiawase_top {
		margin-top: 30px;
	}

	/* ?{??????? */
	.main_fig img {
		width: 90%;
		margin: 15px;
	}

	/*????A?C?R??*/
	.icon_lo {
		font-size: 100%;
	}

	/* ???q?l????? */
	.koe dl {
		width: 100%;
		margin: auto;
		font-size: 100%;
	}

	.koe dt {
		padding: 10px;
		border: none;
	}

	.koe dd {
		padding: 10px;
		margin: 0;
		border: none;
	}

	.koe dd img {
		width: auto;
	}

	.koe .koe_fig {
		text-align: center;
	}

	.koe_detail img {
		width: auto;
	}

	.koe_detail {
		text-align: center;
	}

	.koe_detail h2 {
		margin-top: 80px;
	}

	.koe dt h3 {
		border-left: unset;
		margin-left: unset;
		font-size: 100%;
		margin-top: 15px;
		margin-bottom: 5px;
	}

	.figcaption_koe {
		text-align: center;
		font-size: 70%;
	}

	/* ??p */
	.koyou dl {
		display: flex;
		width: 80%;
		margin: auto;
		font-size: 100%;
		margin-bottom: 20px;
	}

	.koyou dt {
		width: 50%;
		padding: 10px;
		border-right: none;
		font-size: 90%;
	}

	.koyou dt img {
		float: right;
	}

	.koyou dd {
		width: 50%;
		padding: 10px;
		margin: 0;
		border-left: none;
	}

	.koyou dd img {
		float: left;
	}

	.koyou_img img {
		width: auto;
	}

	.koyou_img {
		text-align: center;
	}

}

.menu-container {
	margin: 0;
}

.menu-container .menu {
	border: 1px solid #ccc;
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin: 0;
	padding: 0;
}

.menu-container .menu .menu-item {
	flex: 1;
}

.menu-container .menu .menu-item a {
	background: #fff;
	border-right: 1px solid #ccc;
	color: #333;
	display: block;
	padding: 0.6em 0.4em;
	text-align: center;
	text-decoration: none;
}

.menu-container .menu .menu-item a:hover {
	background: #ccc;
	color: #ffffff;
}

.menu-container .menu .menu-item:last-child a {
	border-right: none;
}

#modal-overlay {
	background-color: rgba(0, 0, 0, 0.6);
	display: none;
	height: 120%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 99;
}

@media only screen and (max-width: 768px) {
	.menu-container .menu {
		-webkit-transform: translate(-50%, -50%);
		background: #fff;
		display: none;
		height: auto;
		left: 50%;
		position: fixed;
		top: 50%;
		transform: translate(-50%, -50%);
		width: 80%;
		z-index: 100;
	}

	.menu-container .menu .menu-item a {
		border-bottom: 1px solid #ccc;
		border-right: none;
	}

	.menu-container .menu .menu-item:last-child a {
		border-bottom: none;
	}
}

/* kappa dive */
.kd_imagelist {
    display: grid;
    grid-template-columns: 32% 32% 32%;
    grid-template-rows: auto auto;
    gap: 30px 1.25%;
	margin-top: 50px;
}
.kd_imagelist figure {
	margin: 0;
}
.kd_imagelist figure img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
}
.kd_imagelist figure figcaption {
	font-family: 'Meiryo', sans-serif;
	font-size: 85%;
}

@media only screen and (max-width: 768px) {
	.kd_imagelist {
		grid-template-columns: 49% 49%;
		grid-template-rows: auto auto auto;
		gap: 20px 2%;
		margin-top: 30px;
	}
	.kd_imagelist figure img.kd_01_6 {
		width: 200px;
	}
}
/* panel_2024 */
.panel2024_wrap {
	display: flex;
	align-items: center;
	justify-content: center;
}
.panel2024_wrap > p:first-child {
	margin-right: 20px;
}
@media only screen and (max-width: 768px) {
	.panel2024_wrap {
		flex-direction: column;
	}
	.panel2024_wrap > p:first-child {
		margin-right: 0;
	}
}