@charset "UTF-8";
/*	 body
/* -------------------------------------------------------------------------------------- */
body {
	background: #80CBDB;
}
/*	title
/* -------------------------------------------------------------------------------------- */
.title0 {
background: url(../img/page/title_back.gif) no-repeat bottom;
background-size: 100%;
padding: 0 0 60px 0;
}
#title {
width: 84%;
margin: 15px 8% 0 8%;
padding: 3% 8%;
text-align: center;
background: #f7f4f0;
border-radius: 50px;
box-sizing: border-box;
}
#title h2,
#title p {
font-size: 130%;
line-height:1.5em;
}
@media screen and (min-width: 768px) {
.title0 {
padding: 0 0 120px 0;
}
#title {
margin: 40px 8% 0 8%;
}
}
@media screen and (min-width: 1100px) {
.title0 {
padding: 0 0 160px 0;
}
#title {
width: 1100px;
margin: 100px auto 0 auto;
padding: 30px 6%;
}
#title h2,
#title p {
font-size: 150%;
}
}
@media screen and (min-width: 1400px) {
.title0 {
padding: 0 0 200px 0;
}
}

/*	tex
/* -------------------------------------------------------------------------------------- */
.tex img {
	border: 0;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}
.tex a {
	text-decoration: underline;
	color: #f29600;
	transition: 0.3s;
}
.tex a:hover {
	text-decoration: underline;
	opacity: 0.5;
}
.tex a:has(div),
.tex .list2 a,
.tex .list2 a:hover {
	text-decoration: none;
}
.tex a p {
	color: #000;
}
.tex img a {
	border: 0;
}
.tex a:hover img {
	opacity: 0.6;
	transition: 0.5s;
}
.tex h4 {
	margin: 0 0 10px 0;
	font-size: 120%;
}
.tex:not(:has(.link_page)) .current_page {
	display: none;
}
.m {
	width: 100%;
	background: #036EB7;
	padding: 10px 30px;
	border-radius: 50px;
	margin: 30px 0;
}
.m h5 {
	font-size: 120%;
	color: #FFF;
}
.m2 {
	margin: 8% 0 10px 0 !important;
}
.m3 {
	margin: 4% 0 10px 0 !important;
}
.tex p {
text-align: justify;
	font-size: 90%;
	line-height: 2;
}
hr {
	border-width: 1px 0px 0px 0px; /* 太さ */
	border-style: dotted; /* 線種 */
	border-color: #4fb7cd; /* 線色 */
	height: 1px; /* 高さ */
		max-width: 100%;
clear:both;
margin: 8% 0px;
}

@media screen and (min-width: 768px) {
hr {
margin: 50px 0px 30px 0px;
}
.m h5 {
	font-size: 150%;
	line-height: 2;
}
}
@media screen and (min-width: 1100px) {
.tex h4 {
	margin: 0 0 20px 0;
	font-size: 140%;
}
.m2 {
	margin: 6% 0 20px 0 !important;
}
.m3 {
	margin: 3% 0 20px 0 !important;
}
.tex p {
	font-size: 100%;
	line-height: 2.3;
}
}

/*	ボタン
/* -------------------------------------------------------------------------------------- */
a.btn {
	display: flex;
	margin: 0px auto 7px auto;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 10px 30px;
	position: relative;
background: #f29600;
	box-sizing: border-box;
	color: #FFF;
	text-decoration: none;
	transition-duration: 0.4s;
	border-radius: 50px;
	font-weight: bold;
	text-align: center;
}
a.btn:hover {background: #f6ba57;text-decoration: none;}
a.btn2 {
	display: flex;
	margin: 0px auto 7px auto;
	justify-content: center;
	align-items: center;
	width: 100%;
	padding: 10px 30px;
	position: relative;
background: #036eb7;
	box-sizing: border-box;
	color: #FFF;
	text-decoration: none;
	transition-duration: 0.4s;
	border-radius: 50px;
	font-weight: bold;
	text-align: center;
}
a.btn2:hover {background: #4d98cc;text-decoration: none;
}
@media screen and (min-width: 1100px) {
a.btn {
	width: 100%;
	font-size: 120%;
	padding: 20px;
}
}


/*	プラットフォーム
/* -------------------------------------------------------------------------------------- */
.pf_mem {
	margin: 20px 0 0 0;
}
.pf_mem01,
.pf_mem02 {
	margin: 4% 0 0 0;
}
.pf_mem p {
	text-align: justify;
	margin: 0;
	font-size: 90%;
	line-height: 1.8 !important;
}
.pf_mem01 img,
.pf_mem02 img {
width:100%;
border: 1px solid #4FB7CD;
	box-sizing: border-box;
	margin: 0 0 10px 0;
}
.pf_mem01 h4,
.pf_mem02 h4 {
	font-size: 120%;
	line-height: 1.8;
	color: #4FB7CD;
	margin: 0 !important;
}
.c_logo {
	width:100%;
}
.c_qr {
width:50%;
	margin: 0px auto 30px auto;
}
.c_logo img,
.c_qr img {
width:100%;
}
.vision_i {
	display: block;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 4% !important;
clear:both;
}
.vision_m {
	width: 100%;
	margin: 20px 0 0 0;
}

.sc_right,
.sc_left {
	width: 100%;
}
.sc_right {
	float: right;
	width: 62%;
	margin-bottom: 40px;
}
.sc_right > h4:first-child {
	font-size: 150% !important;
}
.sc_left {
	margin: 20px auto 40px auto;
	/* 20260106 追加 */
	float: left;
	width: 30%;
	margin: 0 auto 0 0;
}
.sc0 p {
	text-align: justify;
	margin: 0 0 8% 0;
	font-size: 90%;
	line-height: 1.8 !important;
}
.sc0 img {
	border-radius: 20px;
}
.sc01,
.sc02 {
	margin: 0 0 30px 0;
}

.sc01 h4,
.sc02 h4 {
	font-size: 130% !important;
	line-height: 1.2;
	color: #036EB7;
	margin: 15px 0 0 0;
	text-align: center;
}
.sc01 h5,
.sc02 h5 {
	font-size: 100% !important;
	line-height: 1;
	background: #036EB7;
	color: #FFF;
	border-radius: 30px;
	text-align: center;
	padding: 10px;
	margin: 10px 0;
}
@media screen and (min-width: 768px) {
.pf_mem01,
.pf_mem02 {
	padding: 0;
	float: left;
	width: 31%;
}
.pf_mem01 {
	margin: 0 3.5% 0 0;
}
.pf_mem02 {
	margin: 0;
}
.pf_mem p {
	font-size: 80%;
	line-height: 1.8 !important;
}
.c_logo {
	width:60%;
}
.c_qr {
	width:30%;
}
.vision_i {
	float: right;
	width: 40%;
	margin: 0 0 0 20px !important;
	display: inline;
	clear: none;
}

.vision_m {
	width: 60%;
	margin: 20px auto 0 auto;
}

.sc_right > h4:first-child {
	font-size: 200% !important;
}
.sc_left {
	/* width: 60%; */
}
.sc0 p {
	margin: 0 0 4% 0;
}
.sc0 a.btn {
	margin-top: 2em;
}
.sc01,
.sc02 {
	padding: 0;
	float: left;
	width: 31%;
}
.sc01 {
	margin: 0 3.5% 4% 0;
}

}
@media screen and (min-width: 1100px) {
.pf_mem01 {
	margin: 0 3.5% 0 0;
}
.pf_mem p {
	font-size: 90%;
	line-height: 1.8 !important;
}
.c_logo {
	width:40%;
}
.c_qr {
width:20%;
}
.vision_i {
	width: 35%;
	margin: 0 0 0 30px !important;
}

.sc_right {
	width: 55%;
	float: right;
	margin: 30px 0 0 0;
}
.sc_left {
	width: 35%;
	float: left;
	margin: 20px 0 100px 0;
}
.sc0 p {
	margin: 0 0 3% 0;
	font-size: 100%;
}
.sc01 {
	margin: 0 3.5% 3% 0;
}

}	
	
/* table
/* -------------------------------------------------------------------------------------- */
table {
	border-collapse: collapse;
	margin: 5px 0px 0px 0px;
	border-color:#f7f4f0;
	border-style: solid;
	border-width: 0;
	text-align: left;
line-height:1.5em;
word-break: break-all;
	font-size: 80%;
}
table th {
	font-size: 100%;
	line-height: 170%;
	padding: 5px 7px;
	border: 3px solid #f7f4f0;
	font-style: normal;
	background: #FFF;
}
table td {
	font-size: 100%;
	line-height: 170%;
	padding: 5px 7px;
	border: 3px solid #f7f4f0;
	background: #FFF;
}
@media screen and (min-width: 768px) {
table {
	font-size: 100%;
}
table th {
	padding: 20px;
	border: 5px solid #f7f4f0;
	font-style: normal;
}
table td {
	padding: 20px;
	border: 5px solid #f7f4f0;
}
}

/*	 city
/* -------------------------------------------------------------------------------------- */
.city0 p {
	text-align: justify;
	margin: 0 0 8% 0;
	font-size: 90%;
	line-height: 1.8 !important;
}

.city01 h4,
.city02 h4 {
	font-size: 110% !important;
	line-height: 1.8;
	color: #4FB7CD;
	margin: 0 0 10px 0 !important;
}
.city01 h4 img,
.city02 h4 img {
	width: 30px;
	float: left;
	margin: 0 7px 0 0;
}
.city01 h4 span,
.city02 h4 span {
	float: left;
	margin: 0 7px 0 0;
}
.city_no {
	margin: 0 !important;
}

.city02 h5 {
	font-size: 90%;
	line-height: 2;
	font-weight: normal;
	margin: 0 0 10px 0;
}

.city02 h5 img {
	width: 30px;
	float: left;
	margin: 0 7px 0 0;
}
.why_r img {
	width: 100%;
}
@media screen and (min-width: 768px) {
.city0 p {
	margin: 0 0 4% 0;
}
.city01,
.city02 {
	padding: 0;
	float: left;
	width: 31%;
}
.city01 {
	margin: 0 3.5% 4% 0;
}
.why_l {
	margin: 0;
	float: left;
	width: 55%
}
.why_r {
	margin: 0;
	float: right;
	width: 43%
}
}
@media screen and (min-width: 1100px) {
.city0 p {
	margin: 0 0 3% 0;
	font-size: 100%;
}
.city01 {
	margin: 0 3.5% 3% 0;
}
}

/*	 reg
/* -------------------------------------------------------------------------------------- */
.reg01,
.reg01_2,
.reg02 {
	width: 100%;
	margin: 20px 0 0 0;
}
@media screen and (min-width: 1100px) {
.reg01,
.reg02 {
	float: left;
	width: 31%;
}
.reg01 {
	margin: 20px 3.5% 3% 0;
}
.reg011 {
	height: 160px;
}
.reg012 {
	height: 110px;
}
.reg02 {
	height: 290px;
}
}

/*	 vis
/* -------------------------------------------------------------------------------------- */
.message_fs img {
	width: 100%;
	margin: 20px 0 0 0;
}
@media screen and (min-width: 768px) {
.message_f {
	background: url(../img/top/message_f.png) no-repeat right bottom / 300px 209px;
}
.message_fs {
	display: none;
}
}
@media screen and (min-width: 1100px) {
.message_f {
	background: url(../img/top/message_f.png) no-repeat right bottom / 500px 349px;
}
}

/*	 カテゴリーリスト
/* -------------------------------------------------------------------------------------- */
ul.info_link {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 20px 0;
	align-items: stretch;
	gap: 5px;
}
ul.info_link:has(input) {
	overflow: visible;
	margin-bottom: 40px;
}
.info_link li {
	height: 50px;
}
.info_link a {
	display: flex; 
	align-items: center;
	height: 100%;
	padding: 0px 15px;
	box-sizing: border-box;
	background: #f29600;
	border-radius: 10px;
	font-size: 70%;
	font-weight: bold;
	line-height: 1.5;
	color: #ffffff;
	transition: 0.3s;
	text-decoration: none;
}
.info_link a:hover {
	opacity: 0.5;
	text-decoration: none;
}
.info_link a.current {
	background: #f26000;
}
input + .field_list {
	opacity: 0;
	position: relative;
	z-index: 1;
	height: 0;
	overflow: hidden;
	transition: all 0.3s ease;
}
input:checked + .field_list {
	opacity: 1;
	height: auto;
}
#check {
	display: none;
}
.info_link label {
	display: flex; 
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 0px 15px;
	box-sizing: border-box;
	background: #f29600;
	border-radius: 10px;
	font-size: 70%;
	font-weight: bold;
	font-family: inherit;
	line-height: 1.5;
	color: #ffffff;
	transition: 0.3s;
	border: 0;
	cursor: pointer;
}
.info_link:has(input:checked) label {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.info_link label:hover {
	opacity: 0.5;
}
.info_link label::after {
	width: 8px;
	height: 8px;
	border-right: 2px solid #ffffff;
	border-bottom: 2px solid #ffffff;
	transform: rotate(45deg);
	margin-left: auto;
	transition: 0.3s;
	content: "";
}
.info_link:has(input:checked) label::after {
	margin-top: 4px;
	transform: rotate(225deg);
}
.info_link .field_list {
	max-height: 320px;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
	background: #f29600;
}
.info_link input:checked + .field_list {
	overflow-y: scroll;
}
.info_link .field_list li {
	width: 100%;
	height: 36px;
}
.info_link .field_list li {
	border-top: 1px solid #f8ca80;
}
.info_link .field_list a {
	border: 0;
	color: #ffffff;
	font-weight: normal;
}
.field_list a::before {
	margin-right: 5px;
	content: "-";
}
@media screen and (min-width: 768px) {
ul.info_link {
	gap: 8px;
}
.info_link li a,
.info_link label {
	font-size: 80%;
	white-space: nowrap;
	letter-spacing: 0.05em;
}
}
@media screen and (min-width: 1100px) {
.info_link li a,
.info_link label {
	font-size: 90%;
}
.info_link .field_list a {
	font-size: 85%;
}
}

.sub .info_link li a {
	font-size: 80%;
}
@media screen and (min-width: 430px) {
.sub .info_link li {
	height: 50px;
}
}
@media screen and (min-width: 768px) {
.sub .info_link li {
	height: 50px;
}
}
@media screen and (min-width: 1100px) {
.sub .info_link {
	gap: 0;
}
.sub .info_link li {
	width: 100%;
	margin-bottom: 8px;
}
.sub .info_link li a {
	font-size: 90%;
}
}

/*	 お知らせ
/* -------------------------------------------------------------------------------------- */
.news_box {
	border-bottom: #4fb7cd 1px solid;
}
.news_box a {
	text-decoration: none !important;
}

/*	 イベント
/* -------------------------------------------------------------------------------------- */
.event p {
text-align: start;
line-height: 0.8;
}
.event_day {
	line-height: 1.4em !important;
	padding: 15px 0 20px 0 !important;
}
.event_box a {
	text-decoration: none !important;
}
.event_i {
	text-align: center !important;
	line-height: 1.4em !important;
	float: left !important;
	padding: 20px 0 0px 0 !important;
}
.event_d {
	font-size: 200% !important;
}
.event_t {
	font-size: 165% !important;
}
@media screen and (min-width: 768px) {
.event p {
line-height: 1.4em;
}
ul.eu {
	display: flex;
		flex-wrap: wrap;
	}
.event li {
		width: 32%; 
		margin-right: 2%;
		margin-bottom: 20px; 
		box-sizing: border-box;
}
.event li:nth-child(3n) {
		margin-right: 0;
}
.event_day {
	margin: 15px 15px 0 15px !important;
}
.event_i {
	margin: 0 10px 15px 0;
}
.event_d {
	font-size: 100% !important;
}
.event_t {
	font-size: 85% !important;
}
}
@media screen and (min-width: 1100px) {
.event p {
line-height: 0.8;
}
.event_i {
	line-height: 1.3 !important;
		padding: 12px 0 0px 0;
}
.event_d {
	font-size: 200% !important;
}
.event_t {
	font-size: 165% !important;
}
}


/*	 詳細
/* -------------------------------------------------------------------------------------- */
.content_wrap {
	display: flex;
	flex-direction: column;
	gap: 60px;
}
.main {
	flex: 1;
}
.sub {
	flex: 1;
}
.entry_header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 20px;
}
.entry_header h2 {
	order: 2;
	width: 100%;
	margin-bottom: 10px;
	font-size: 130%;
}
.entry_header ul.cat_list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	order: 1;
	width: 100%;
	margin-bottom: 20px;
}
.entry_header p {
	order: 3;
	font-size: 80%;
}
.entry_header ul.cat_list li a {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f29600;
	color: #FFF;
	padding: 5px 10px 4px;
	border-radius: 5px;
	text-decoration: none;
	font-weight: bold;
	font-size: 80%;
	line-height: 1.2;
}
.entry_body {
	margin-bottom: 20px;
}
.entry_body p {
	margin-bottom: 2em;
}
.entry_body p + p:has(img) {
	margin-top: -2em;
}
.entry_body .event_day {
	line-height: 1.4em !important;
	margin: -10px 0 20px !important;
	padding: 15px 0 20px 0 !important;
}
.entry_body .event_day p {
	margin-bottom: 0;
	line-height: 1.4em;
}
.entry_body .event_i {
	text-align: center !important;
	line-height: 1.4em !important;
	float: left !important;
	padding: 20px 0 0px 0 !important;
}
.entry_body .event_d {
	margin-top: 10px;
	font-size: 100% !important;
}
.entry_body .event_t {
	font-size: 85% !important;
}
.entry_body video {
	max-width: 100%;
	height: auto;
	margin-top: 40px;
}
.entry_footer {
	margin-top: 40px;
}
.sub h4 {
	font-size: 110%;
}
@media screen and (min-width: 768px) {
.entry_header {
	margin-bottom: 40px;
}
.entry_header h2 {
	order: 1;
	font-size: 140%;
	line-height: 1.6;
}
.entry_header ul.cat_list {
	order: 2;
	width: auto;
	margin-bottom: 0;
}
.entry_header p {
	order: 3;
	margin-left: auto;
}
.entry_body p {
	font-size: 100%;
}
.entry_body .event_d {
	margin-top: 5px;
	font-size: 120% !important;
}
.entry_body .event_t {
	font-size: 100% !important;
}
.entry_body video {
	margin-top: 60px;
}
.entry_footer {
	margin-top: 60px;
}
}
@media screen and (min-width: 1100px) {
.content_wrap {
	flex-direction: row;
	gap: 0;
}
.main {
	flex: inherit;
	width: 70%;
	padding-right: 30px;
}
.sub {
	flex: inherit;
	width: 30%;
	padding-left: 30px;
	border-left: 1px solid #f29600;
}
}

/*	 会員
/* -------------------------------------------------------------------------------------- */

.mem,
.mem2 {
	width: 100%;
	margin: 0 0 8% 0;
}
.mem h5,
.mem2 h5 {
	color: #f29600;
	font-size: 110%;
	margin: 15px 0 5px 0;
}
.mem img,
.mem2 img {
	width: 100%;
	border-radius: 20px;
	
}
.mem p,
.mem2 p {
	font-size: 90%;
	line-height: 2;
	color: #000;
}
.mem_number {
	border-top: 1px solid #f29600;
	border-bottom: 1px solid #f29600;
	width: 100%;
	padding: 20px 0;
	margin: 30px 0 0 0;
}
.mem_number span {
 	color: #f29600;
	font-weight: bold;
}
.mem_number .main-number {
	font-size: 250%;
}

.mem_number .unit {
	font-size: 120%;
	line-height: 1;
}

.mem_number .date {
	font-size: 100%; 
	color: #000;
	font-weight: normal;
	line-height: 1;
}

.mem_box {
	width: 100%;
	border-radius: 20px;
	background: #FFF;
	margin: 0 0 6% 0;
}
.mem_box .img {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 62.5%;
	border-bottom: #f7f4f0 3px solid;
}
.mem_box .img img {
	position: absolute;
	top: 10px;
	left: 20px;
	width: calc(100% - 40px);
	height: calc(100% - 20px);
	object-fit: contain;
}
.mem_box_t {
	margin: 20px;
	line-height: 1.2;
	word-break: break-all;
}
.mem_box_t span {
	color: #444;
	font-size: 90%;
}
.mem_box_t h5 {
	margin: 7px 0;
	font-size: 110%;
}
.mem_box_t p {
	color: #444;
	font-size: 90%;
	line-height: 1.7;
}

.memb a {
	text-decoration: none !important;
}
.mem_box a img,
.mem_box a h5,
.mem_box a p,
.mem_box a span {
	transition: 0.3s;
	text-decoration: none !important;
}
.mem_box a:hover img,
.mem_box a:hover h5,
.mem_box a:hover p,
.mem_box a:hover span {
	opacity: 0.5;
}
@media screen and (min-width: 768px) {
.mem {
	width: 31%;
	margin: 0 3% 0 0;
	float: left;
}
.mem2 {
	width: 31%;
	margin: 0 0 0 0;
	float: left;
}
.mem h5,
.mem2 h5 {
	font-size: 95%;
	letter-spacing: 0;
}
.mem p,
.mem2 p {
	font-size: 85%;
	line-height: 1.8;
}
.memb li {
		width: 32%; 
		margin-right: 2%;
		margin-bottom: 20px; 
		box-sizing: border-box;
}
.memb li:nth-child(3n) {
		margin-right: 0;
}
}
@media screen and (min-width: 1100px) {
.mem {
	width: 31%;
	margin: 0 3% 0 0;
	float: left;
}
.mem2 {
	width: 31%;
	margin: 0 0 0 0;
	float: left;
}
.mem h5,
.mem2 h5 {
	font-size: 110%;
	letter-spacing: 0.05em;
}
.mem p,
.mem2 p {
	font-size: 100%;
	line-height: 2;
	text-align: justify;
}
.memb li {
		width: 23.5%; 
		margin-right: 2%;
		margin-bottom: 20px; 
		box-sizing: border-box;
}
.memb li:nth-child(3n) {
		margin-right: 2%;
}
.memb li:nth-child(4n) {
		margin-right: 0;
}
}
@media screen and (min-width: 1400px) {
.mem h5,
.mem2 h5 {
	font-size: 120%;
	letter-spacing: 0.1em;
}
}

/*	 フォーム
/* -------------------------------------------------------------------------------------- */
.aform-header,
.aform-checking,
.aform-content {
	max-width: 760px;
	margin-right: auto;
	margin-left: auto;
}
.aform-button-area {
	background: transparent;
}
.aform-button-area input {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 280px;
	height: 60px;
	margin-top: 10px;
	padding: 10px 30px;
	border: 0;
	background: #f29600;
	color: #FFF;
	text-decoration: none;
	transition: 0.3s;
	border-radius: 50px;
	font-weight: bold;
	font-family: inherit;
	cursor: pointer;
}
.aform-button-area input:hover {
	opacity: 0.8;
}
#aform_btn_back {
	background: #907F66;
}
.aform-input[type="text"],
.aform-text,
.aform-email,
.aform-password,
.aform-tel,
.aform-url,
.aform-number,
.aform-date,
.aform-time,
.aform-textarea,
.aform-select,
.aform-name,
.aform-kana,
.aform-zipcode,
.aform-prefecture,
.aform-calendar {
	padding: 10px;
}
.aform-error-list dt {
	padding-left: 0;
}
.aform-content label {
	display: inline-flex;
	align-items: center;
}
.aform-required {
	display: inline-flex;
	flex-shrink: 0;
	font-size: 75%;
}
.aform-horizontal-ul li {
	display: inline-flex;
}
#aform_result {
	text-align: center;
}
#aform_result a {
	display: inline-block;
	margin-top: 1em;
}