@charset "UTF-8";

/* -------------------------------------------------------------------------
	基本
------------------------------------------------------------------------- */
small{
	font-size:10px;
}
#conteiner img{
	border:none;
	vertical-align:bottom;
}
#conteiner a { color: #00f; text-decoration: underline;}
#conteiner a:link { color: #00f; text-decoration: underline;}
#conteiner a:visited { color: #00f; text-decoration: underline;}
#conteiner a:active { color: #00f; text-decoration: underline;}
#conteiner a:hover { color: #f00; text-decoration: underline;}

.red{ color:#e60012;}

.pc_none{
	display: none;
}
@media only screen and (max-width: 768px) {
	.pc_none {
		display: block;
	}
}


/* -------------------------------------------------------------------------
	layout
------------------------------------------------------------------------- */
#conteiner{
	width: 100%;
	margin:0 auto;
	font-size: 16px;
	line-height:1.8;
  background: #fbd596;
}
@media only screen and (max-width: 768px) {
	#conteiner{
		width: 100%;
		font-size: 14px;
	}
}

#contents{
	clear:both;
	margin:0 auto;
	font-size:100%;
}

.hero{
	display: flex;
	align-items: center;
	max-width:1080px;
	width: 100%;
  margin:0 auto;
	padding: 20px 40px;
}
@media only screen and (max-width: 768px) {
	.hero{
		flex-direction: column;
		padding: 10px 20px;
	}
}


.inner{
	width: 100%;
	max-width: 1000px;
	margin:0 auto 80px;
	padding: 0 40px;
}
@media only screen and (max-width: 768px) {
	.inner{
		margin:0 auto 40px;
		padding: 0 20px;
	}
}

.hero p{
	font-size: 16px;
	font-weight: bold;
}

.hero .info{
	display: flex;
	flex-direction: column;
	gap: 40px;
	width: 40%;
	margin: 40px 0;
	padding: 40px 20px;
	background: #FFF;
	border-radius: 20px;
}
@media only screen and (max-width: 768px) {
	.hero .info{
		gap: 20px;
		width: 100%;
		margin: 0;
	}
}



.ta_center{
	text-align: center;
}
#title:after,
#conteiner:after,
#contents:after,
.inner:after,
.dl_table:after{
	content:",";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}

.information{
	border: 5px solid #D61518;
	margin-bottom: 40px;
	padding: 25px;
	font-size: 16px;
}
.information h2{
	margin-bottom: 20px;
	color: #D61518;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}

@media only screen and (max-width: 768px) {
	.information{
		font-size: 14px;
	}
	.information h2{
		font-size: 18px;
	}
}


/* -------------------------------------------------------------------------
	メイン
------------------------------------------------------------------------- */
/* 文字 */
#contents p{
	margin-bottom:10px;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.8;
}
@media only screen and (max-width: 768px) {
	#contents p{
		margin-bottom: 8px;
		font-size: 12px;
	}
}

#contents h3{
	clear:both;
	margin-bottom: 20px;
	padding: 8px 0;
	color: #FFF;
	font-size: 122%;
	font-weight: bold;
	text-align: center;
	line-height: 1.65;
	background: #D61518;
	border-radius: 4px;
	letter-spacing: 0.1em;
}

#contents .point h3 {
	margin-bottom: 32px;
	background: #D61518;
}

#contents h4{
	font-size:108%;
	line-height:1.5;
}
#contents a { color: #369; text-decoration: none;}
#contents a:link { color: #369; text-decoration: none;}
#contents a:visited { color: #369; text-decoration: none;}
#contents a:active { color: #369; text-decoration: none;}
#contents a:hover { color: #633; text-decoration: underline;}


#contents p.footer{
	clear:both;
	margin-bottom: 0;
	padding: 10px;
	color: #FFF;
	font-size: 90%;
	text-align: center;
	background: #D61518;
}
@media only screen and (max-width: 768px) {
	#contents p.footer{
		text-align: left;
	}
}

/* dlテーブル */
#contents dl.dl_table {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 1em 0;
	line-height: 1.6;
}
#contents dl.dl_table dt {
	width: 6em;
	padding: 0.5em 0;
	border-bottom: 1px solid #000;
	color: #FFF;
	font-weight:bold;
	text-align:center;
}
#contents dl.dl_table dt span{
	display: inline-block;
	width: 100%;
	padding: 0.5em 0;
	color: #FFF;
	font-weight:bold;
	text-align:center;
	background-color: #D61518;
	border-radius: 4px;
}
#contents dl.dl_table dd {
	width: calc(100% - 6em);
	padding: 1em;
	font-weight: bold;
	border-bottom: 1px solid #000;
}
#contents dl.dl_table dd .num{
	display: inline-block;
	font-size: 180%;
	line-height: 1;
}

#contents dl.dl_table2 {
	display: flex;
	flex-wrap: wrap;
	align-items: start;
  margin-top: 2em;
	line-height: 1.6;
}
#contents dl.dl_table2 dt {
	width: 8em;
	margin: 0 0 0.5em;
	padding: 0.5em 0;
	color: #333;
	font-weight:bold;
	text-align:center;
	border-radius: 4px;
  border: 1px solid #000;
}
#contents dl.dl_table2 dd {
	width: calc(100% - 8em);
	padding: 0.5em 1em;
  font-weight: bold;
}

.fw_normal{
	font-weight: normal;
}

/* ボタン */
.btn{
	display: inline-block;
	margin-top: 20px;
	width: 100%;
	max-width: 400px;
	height: 60px;
	background: #00905B;
	border-radius: 40px;
	color: #FFF !important;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	line-height: 60px;
	transform: translateY(0px);
	transition: 0.3s all;
}
.btn:hover{
	background: #000;
	color: #FFF !important;
	font-weight: bold;
	text-align: center;
	text-decoration: none !important;
	transform: translateY(3px);
}


/* -------------------------------------------------------------------------
	itoshima
------------------------------------------------------------------------- */
#itoshima .title_c{
	width: 100%;
	max-width: 520px;
	margin: 0 auto 40px;
}

@media only screen and (max-width: 1200px) {
	#itoshima .title_c {
		padding: 0;
	}
}
@media only screen and (max-width: 768px) {
	#itoshima .title_c{
		margin: 0 auto 20px;
	}
}

#itoshima .title_c h2 {
	margin: 0;
}

#itoshima .fw_big {
	font-size: 120%;
	font-weight: bold;
}

#itoshima .lead{
	margin-bottom: 40px;
	text-align: center;
}
@media only screen and (max-width: 768px) {
	#itoshima .lead {
		margin-bottom: 20px;
		text-align: left;
	}
}

#itoshima .kosuke-contents{
  display: flex;
	gap: 40px;
}
#itoshima .kosuke-info{
  width: calc(50% - 40px);
}
#itoshima .kosuke-entry{
  width: 50%;
}
@media only screen and (max-width: 768px) {
	#itoshima .kosuke-contents{
		flex-direction: column;
		gap: 20px;
	}
	#itoshima .kosuke-info{
		width: 100%;
	}
	#itoshima .kosuke-entry{
		width: 100%;
	}
}

#itoshima .map{
	margin:0;
	text-align: center;
	overflow: hidden;
	border-radius: 20px;
}

#itoshima .point figure{
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}

.heading-6 {
  display: inline-block;
  position: relative;
  width: 100%;
  margin-bottom: 16px;
  padding: 0 2.5em;
  color: #333333;
  font-size: 20px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 768px) {
	.heading-6 {
		margin-bottom: 8px;
		font-size: 16px;
	}
}

.heading-6::before,
.heading-6::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 50%;
  width: calc(50% - 5em);
  height: 2px;
  background-color: #000000;
}

.heading-6::before {
  left: 0;
}

.heading-6::after {
  right: 0;
}

@media only screen and (max-width: 768px) {
.u-show--sp{
	display: block;
}
}
@media only screen and (min-width: 769px) {
	.u-show--sp{
		display: none;
	}
	}
