@charset "utf-8";

/*------------------------------------------
 pc
------------------------------------------*/
@media print, screen and (min-width: 769px){
	#wrap{
		width: 100%;
		background: url("../images/bg-ind.png") no-repeat left top;
		background-size: 40%;
	}
	#cont-ttl{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}
	.cont-inner{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
		padding: 15px 0 30px 0;
	}
	.cont-inner2{
		margin-bottom: 90px;
	}
	#breadcrumb-list{
		display: flex;
		width: 100%;
		padding: 10px;
		font-size: 12px;
		margin-bottom: 15px;
	}
	#breadcrumb-list li::after{
		content: "＞";
		padding: 0 10px;
	}
	#breadcrumb-list li:last-child::after{
		content: "";
		padding: 0;
	}
	.message{
		font-size: 20px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 30px;
	}
	.message-sub{
		text-align: center;
	}
	
	/*---------------------
	 hajimete
	---------------------*/
	#hajimete h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-hajimete.jpg") no-repeat center center;
		border-radius: 10px;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#hajimete h2::before{
		content: "";
		width: 55px;
		height: 100px;
		background: url("../images/cont-title-hajimete-sub.png") no-repeat;
		position: absolute;
		top: 150px;
		right: 20px;
	}
	#hajimete-cont{
		width: 100%;
		background: #f1f7fa;
		border-radius: 10px;
		margin-bottom: 90px;
		padding: 40px;
		position: relative;
		box-sizing: border-box;
	}
	#hajimete-cont::after{
		content: "";
		width: 0;
		height: 0;
		border-top: solid 30px #f1f7fa;
		border-bottom: solid 30px transparent;
		border-left: solid 30px transparent;
		border-right: solid 30px transparent;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		margin: auto;
	}
	#hajimete-cont > div{
		width: 100%;
		margin-bottom: 60px;
	}
	#hajimete-cont > div:last-child{
		margin-bottom: 30px;
	}
	#hajimete-cont > div::after{
		display: block;
		clear: both;
		height: 0px;
		visibility: hidden;
		overflow: hidden;
		line-height: 0;
		content: ".";
	}
	#hajimete-cont > div .step{
		width: 130px;
		padding: 5px;
		background: #285d74;
		border-radius: 7px;
		color: #ffffff;
		font-weight: bold;
		font-size: 20px;
		text-align: center;
		position: relative;
		float: left;
	}
	#hajimete-cont > div .step::after{
		content: "";
		width: 0;
		height: 0;
		border-top: solid 5px transparent;
		border-bottom: solid 5px transparent;
		border-left: solid 5px #285d74;
		border-right: solid 5px transparent;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 100%;
		right: 0;
		margin: auto;
	}
	#hajimete-cont > div .cont-box{
		width: 100%;
		max-width: 930px;
		float: right;
	}
	#hajimete-cont > div .cont-box h3{
		font-size: 20px;
		margin-bottom: 20px;
		text-align: left;
	}
	#hajimete-cont > div .cont-box .flex-box{
		display: flex;
		justify-content: space-between;
		width: 100%;
	}
	#hajimete-cont > div .cont-box .flex-box img{
		display: block;
		width: 43.0107%;
		max-width: 400px;
		height: 26.8817%;
		max-height: 250px;
	}
	#hajimete-cont > div .cont-box .flex-box > div{
		width: 53.7634%;
		max-width: 500px;
	}
	/*---------------------
	 cafe
	---------------------*/
	#cafe h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-cafe.jpg") no-repeat;
		border-radius: 10px;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#cafe .readtxt{
		display: flex;
		justify-content: space-around;
		align-items: center;
		width: 100%;
		margin-top: 30px;
	}
	#cafe .readtxt img{
		display: block;
		width: 41.6666%;
		max-width: 500px;
		height: 25%;
		max-height: 300px;
	}
	#cafe .readtxt > div{
		width: 54.1666%;
		max-width: 650px;
		font-size: 18px;
	}
	#cafe .readtxt > div p{
		margin-bottom: 20px;
		text-align: center;
	}
	#cafe .menu{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		margin-bottom: 50px;
	}
	#cafe .menu li{
		width: 31.6666%;
		max-width: 380px;
		margin: 0 10px 40px 10px;
	}
	#cafe .menu li img{
		display: block;
		width: 100%;
		max-width: 380px;
		margin: 0 auto 15px auto;
	}
	#cafe .menu li .menu-name{
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 10px;
	}
	#cafe .menu-about{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}
	#cafe .menu-about li{
		padding-right: 10px;
	}
	#cafe .menu-about li:last-child{
		padding-right: 0;
	}
	/*---------------------
	 about
	---------------------*/
	#about h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-about.jpg") no-repeat;
		border-radius: 10px;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	.abut-readtxt{
		display: flex;
		justify-content: space-around;
		width: 100%;
		background: #d3e7ef;
		border-radius: 10px;
		padding: 60px;
		position: relative;
	}
	.abut-readtxt::after{
		content: "";
		width: 0;
		height: 0;
		border-top: solid 30px #d3e7ef;
		border-bottom: solid 30px transparent;
		border-left: solid 30px transparent;
		border-right: solid 30px transparent;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		margin: auto;
	}
	.abut-readtxt > img{
		display: block;
		width: 33.3333%;
		max-width: 400px;
		height: 42.3333%;
		max-height: 508px;
	}
	.abut-readtxt > div{
		width: 50%;
		max-width: 600px;
	}
	#about .abut-readtxt h3{
		font-size: 26px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 40px;
	}
	.abut-readtxt p{
		font-size: 17px;
	}
	.abut-readtxt ul{
		display: flex;
		justify-content: space-around;
		width: 100%;
		margin-top: 30px;
	}
	.abut-readtxt ul li{
		width: 41.6666%;
		max-width: 250px;
		height: 25%;
		max-height: 150px;
	}
	#about .point{
		width: 100%;
		margin-top: 100px;
	}
	#about .point-cont:nth-child(1),
	#about .point-cont:nth-child(4){
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin-bottom: 40px;
	}
	#about .point-cont:nth-child(2){
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
		width: 100%;
		margin-bottom: 40px;
	}
	#about .point-cont > img{
		display: block;
		width: 41.6666%;
		max-width: 500px;
		height: 25%;
		max-height: 300px;
	}
	#about .point .detection-box{
		width: 54.1666%;
		max-width: 650px;
	}
	#about .point .detection-box h4{
		font-size: 18px;
		margin-bottom: 20px;
	}
	#about .point .detection-box h4 span{
		color: #285d74;
		padding-right: 10px;
	}
	#about .point .detection-box h4 span::after{
		content: "";
		background-image: none;
	}
	#about .point .point-ike{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		max-width: 880px;
		margin: 0 auto 50px auto;
	}
	#about .point .point-ike > div{
		width: 50%;
		max-width: 440px;
		padding: 40px;
	}
	#about .point .point-ike > div:nth-child(1),
	#about .point .point-ike > div:nth-child(4){
		background: #f7fafb;
	}
	#about .point .point-ike > div:nth-child(2),
	#about .point .point-ike > div:nth-child(3){
		background-color: #ffffff;
	}
	#about .point .point-ike > div img{
		display: block;
		width: 100%;
		max-width: 360px;
		height: auto;
		margin: 0 auto 20px auto;
	}
	#about .point .point-ike > div h5{
		font-size: 16px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 10px;
	}
	#about .point .point-ike > div ul{
		width: 100%;
	}
	#about .point .point-ike > div ul::after{
		display: block;
		clear: both;
		height: 0px;
		visibility: hidden;
		overflow: hidden;
		line-height: 0;
		content: ".";
	}
	#about .point .point-ike > div ul li{
		float: left;
	}
	#about .fee{
		width: 100%;
	}
	#about .onecol,
	#about .twocol{
		display: flex;
		justify-content: space-between;
		margin-bottom: 40px;
	}
	#about .onecol table{
		width: 50%;
		max-width: 600px;
	}
	#about .onecol ul{
		width: 45.8333%;
		max-width: 550px;
	}
	#about .onecol ul li{
		padding-left: 1em;
		text-indent: -1em;
	}
	#about .twocol div{
		width: 45.83333%;
		max-width: 550px;
	}
	/*---------------------
	 access
	---------------------*/
	#access h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-access.jpg") no-repeat;
		border-radius: 10px;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#access .adress{
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}
	#access .adress span{
		margin-left: 20px;
	}
	#access .time-list{
		display: flex;
		justify-content: space-around;
		width: 100%;
		margin: 60px 0 60px 0;
	}
	#access .time-list li{
		display: flex;
		align-items: center;
		flex-direction: column;
		font-size:18px;
	}
	#access .time-list li img{
		display: block;
		width: 100%;
		max-width: 70px;
	}
	#access .time-list li .time{
		font-weight: bold;
	}
	#access #gmap {
		height: 0;
		overflow: hidden;
		margin-bottom: 10px;
		padding-bottom: 33.3333%; /* height/1200px*100 */
		position: relative;
	}
	#access #gmap iframe {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		max-width: 1200px;
		height: 100%;
		max-height: 400px;
	}
	#access .root{
		width: 100%;
		margin-top: 80px;
	}
	#access .root .tab{
		display: flex;
		justify-content: space-around;
		width: 50%;
		max-width: 600px;
		margin: 0 auto;
		font-size: 18px;
		font-weight: bold;
	}
	#access .root .tab li{
		width: 41.6666%;
		max-width: 250px;
		padding: 20px;
		background: #e3e6e8;
		border-radius: 7px 7px 0 0;
		text-align: center;
		color: #8a8c8c;
		cursor: pointer;
	}
	#access .root .tab .tab-active{
		background: #d3e7ef;
		color: #1a1c1d;
		transition: all 0.2s ease-out;
	}
	#access .root .cont{
		width: 100%;
		padding: 50px;
		background: #d3e7ef;
		border-radius: 7px;
	}
	#access .root .panel{
		display: none;
	}
	#access .root .active{
		display: block;
		animation: fadeIn 1.5s ease 0s 1 normal;
	}
	#access .root .cont .panel ul{
		width: 100%;
	}
	#access .root .cont .panel ul li{
		display: table;
		padding-bottom: 20px;
	}
	#access .root .cont .panel ul li div{
		display: table-cell;
		width: 60px;
	}
	#access .root .cont .panel ul li div p.circle{
		display: table-cell;
		width: 60px;
		height: 60px;
		font-weight: bold;
		color: #ffffff;
		text-align: center;
		vertical-align: middle;
		background-color: #8a8a39;
		border-radius: 50%;
	}
	#access .root .cont .panel ul li p.txt{
		display: table-cell;
		padding-left: 20px;
		vertical-align: middle;
	}
	/*---------------------
	 regulation
	---------------------*/
	#regulation h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-regulation.jpg") no-repeat;
		border-radius: 10px;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#attention-link{
		display: flex;
		justify-content: space-around;
		flex-wrap: wrap;
		width: 83.3333%;
		max-width: 1000px;
		margin: 40px auto 20px auto;
	}
	#attention-link li{
		position: relative;
		margin: 0 35px 15px 0;
	}
	#attention-link li:last-child{
		margin-right: 0;
	}
	#attention-link li::before{
		content: "";
		display: inline-block;
		width: 13px;
		height: 11px;
		background: url("../images/icon-sankaku.png") no-repeat;
		margin-right: 5px;
	}
	#regulation dl dt{
		font-size: 20px;
		font-weight: bold;
		color: #285d74;
		margin-bottom: 15px;
	}
	#regulation dl dd{
		border-bottom: dotted 1px #cccccc;
		margin-bottom: 5px;
		padding: 5px 5px 5px 1em;
		text-indent: -1em;
	}
	#regulation dl dd::before{
		content: "●";
		color: #285d74;
		padding: 0 5px 0 5px;
	}
	#regulation dl dd table{
		width: 80%;
		border-collapse: collapse;
		margin: 30px 0;
	}
	#regulation dl dd table th{
		background: #abd87d;
		padding: 10px;
		color: #ffffff;
		font-weight: normal;
		white-space: nowrap;
		border-right: solid 1px #ffffff;
	}
	#regulation dl dd table th:last-child{
		border-right: none;
	}
	#regulation dl dd table td{
		padding: 10px;
		border: solid 1px #d3e7ef;
		text-align: center;
	}
}

/*------------------------------------------
 個別切り替え
------------------------------------------*/
@media print, screen and (max-width: 974px){
	@-moz-document url-prefix(){
		#hajimete-cont > div .step{
			width: 130px;
			margin-bottom: 30px;
			padding: 5px;
			background: #285d74;
			border-radius: 7px;
			color: #ffffff;
			font-weight: bold;
			font-size: 20px;
			text-align: center;
			position: relative;
			float: none;
		}
		#hajimete-cont > div .step::after{
			content: "";
			width: 0;
			height: 0;
			border-top: solid 5px #285d74;
			border-bottom: solid 5px transparent;
			border-left: solid 5px transparent;
			border-right: solid 5px transparent;
			position: absolute;
			top: 46px;
			bottom: 0;
			left: 0;
			right: 0;
			margin: auto;
		}
	}
}


/*------------------------------------------
 sp
------------------------------------------*/
@media screen and (max-width: 768px){
	#wrap{
		width: 100%;
		background: url("../images/bg-ind.png") no-repeat left top;
		background-size: 50%;
	}
	#cont-ttl{
		width: 100%;
		margin: 0 auto;
	}
	.cont-inner{
		width: 100%;
		margin: 0 auto;
		padding: 15px 20px 30px 20px;
	}
	.cont-inner2{
		margin-bottom: 90px;
	}
	#breadcrumb-list{
		display: flex;
		width: 100%;
		padding: 10px;
		font-size: 12px;
		margin-bottom: 15px;
	}
	#breadcrumb-list li::after{
		content: "＞";
		padding: 0 10px;
	}
	#breadcrumb-list li:last-child::after{
		content: "";
		padding: 0;
	}
	.message{
		font-size: 19px;
		font-weight: bold;
		text-align: left;
		margin-bottom: 26px;
	}
	.message-sub{
		text-align: left;
	}
	
	/*---------------------
	 hajimete
	---------------------*/
	#hajimete h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 250px;
		background: url("../images/cont-title-hajimete.jpg") no-repeat center center;
		border-radius: 0;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#hajimete-cont{
		width: 100%;
		background: #f1f7fa;
		border-radius: 10px;
		margin-bottom: 90px;
		padding: 40px;
		position: relative;
	}
	#hajimete-cont::after{
		content: "";
		width: 0;
		height: 0;
		border-top: solid 30px #f1f7fa;
		border-bottom: solid 30px transparent;
		border-left: solid 30px transparent;
		border-right: solid 30px transparent;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		margin: auto;
	}
	#hajimete-cont > div{
		width: 100%;
		margin-bottom: 60px;
	}
	#hajimete-cont > div:last-child{
		margin-bottom: 30px;
	}
	#hajimete-cont > div::after{
		display: block;
		clear: both;
		height: 0px;
		visibility: hidden;
		overflow: hidden;
		line-height: 0;
		content: ".";
	}
	#hajimete-cont > div .step{
		width: 130px;
		margin-bottom: 30px;
		padding: 5px;
		background: #285d74;
		border-radius: 7px;
		color: #ffffff;
		font-weight: bold;
		font-size: 20px;
		text-align: center;
		position: relative;
		float: none;
	}
	#hajimete-cont > div .step::after{
		content: "";
		width: 0;
		height: 0;
		border-top: solid 5px #285d74;
		border-bottom: solid 5px transparent;
		border-left: solid 5px transparent;
		border-right: solid 5px transparent;
		position: absolute;
		top: 120%;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
	}
	@-moz-document url-prefix(){
		#hajimete-cont > div .step{
			width: 130px;
			margin-bottom: 30px;
			padding: 5px;
			background: #285d74;
			border-radius: 7px;
			color: #ffffff;
			font-weight: bold;
			font-size: 20px;
			text-align: center;
			position: relative;
			float: none;
		}
		#hajimete-cont > div .step::after{
			content: "";
			width: 0;
			height: 0;
			border-top: solid 5px #285d74;
			border-bottom: solid 5px transparent;
			border-left: solid 5px transparent;
			border-right: solid 5px transparent;
			position: absolute;
			top: 46px;
			bottom: 0;
			left: 0;
			right: 0;
			margin: auto;
		}
	}
	#hajimete-cont > div .cont-box{
		width: 100%;
		float: none;
	}
	#hajimete-cont > div .cont-box h3{
		font-size: 20px;
		margin-bottom: 10px;
	}
	#hajimete-cont > div .cont-box .flex-box{
		display: block;
		justify-content: space-between;
	}
	#hajimete-cont > div .cont-box .flex-box img{
		display: block;
		width: 100%;
		max-width: 400px;
		margin: 0 auto 15px auto;
	}
	#hajimete-cont > div .cont-box .flex-box > div{
		width: 100%;
	}
	/*---------------------
	 cafe
	---------------------*/
	#cafe h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 250px;
		background: url("../images/cont-title-cafe.jpg") no-repeat 70% center;
		border-radius: 0;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#cafe .readtxt{
		display: block;
		width: 100%;
		margin-top: 30px;
	}
	#cafe .readtxt img{
		display: block;
		width: 100%;
		max-width: 500px;
		margin: 0 auto 20px auto;
	}
	#cafe .readtxt > div{
		width: 100%;
		font-size: 16px;
	}
	#cafe .readtxt > div p{
		margin-bottom: 20px;
		text-align: center;
	}
	#cafe .menu{
		display: block;
		width: 100%;
		margin-bottom: 50px;
	}
	#cafe .menu li{
		width: 100%;
		max-width: 380px;
		margin: 0 auto 40px auto;
	}
	#cafe .menu li img{
		display: block;
		width: 100%;
		max-width: 380px;
		margin: 0 auto 15px auto;
	}
	#cafe .menu li .menu-name{
		font-size: 16px;
		font-weight: bold;
		margin-bottom: 10px;
	}
	#cafe .menu-about{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}
	#cafe .menu-about li{
		padding-right: 10px;
	}
	#cafe .menu-about li:last-child{
		padding-right: 0;
	}
	/*---------------------
	 about
	---------------------*/
	#about h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-about.jpg") no-repeat center center;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	.abut-readtxt{
		display: block;
		width: 100%;
		background: #d3e7ef;
		border-radius: 10px;
		padding: 30px;
		position: relative;
	}
	.abut-readtxt::after{
		content: "";
		width: 0;
		height: 0;
		border-top: solid 30px #d3e7ef;
		border-bottom: solid 30px transparent;
		border-left: solid 30px transparent;
		border-right: solid 30px transparent;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		margin: auto;
	}
	.abut-readtxt > img{
		display: block;
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
	}
	.abut-readtxt > div{
		width: 100%;
	}
	#about .abut-readtxt h3{
		font-size: 22px;
		font-weight: bold;
		text-align: left;
		margin-bottom: 40px;
	}
	.abut-readtxt p{
		font-size: 17px;
	}
	.abut-readtxt ul{
		display: flex;
		justify-content: space-around;
		width: 100%;
		margin-top: 30px;
	}
	.abut-readtxt ul li{
		width: 41.6666%;
		max-width: 250px;
		height: 25%;
		max-height: 150px;
	}
	#about .point{
		width: 100%;
		margin-top: 100px;
	}
	#about .point-cont:nth-child(1),
	#about .point-cont:nth-child(4){
		display: block;
		width: 100%;
		margin-bottom: 40px;
	}
	#about .point-cont:nth-child(2){
		display: block;
		width: 100%;
		margin-bottom: 40px;
	}
	#about .point-cont > img{
		display: block;
		width: 100%;
		max-width: 500px;
		margin: 0 auto 10px auto
	}
	#about .point .detection-box{
		width: 100%;
	}
	#about .point .detection-box h4{
		font-size: 18px;
		text-align: center;
		margin-bottom: 15px;
	}
	#about .point .detection-box h4 span{
		display: block;
		color: #285d74;
		padding-right: 10px;
	}
	#about .point .detection-box h4 span::after{
		content: "";
		background-image: none;
	}
	#about .point .point-ike{
		display: block;
		width: 100%;
	}
	#about .point .point-ike > div{
		width: 100%;
		margin-bottom: 50px;
		padding: 20px 20px 50px 20px;
	}
	#about .point .point-ike > div:nth-child(odd){
		background: #f7fafb;
	}
	#about .point .point-ike > div:nth-child(even){
		background-color: #ffffff;
	}
	#about .point .point-ike > div img{
		display: block;
		width: 100%;
		max-width: 360px;
		margin: 0 auto 20px auto;
	}
	#about .point .point-ike > div h5{
		font-size: 16px;
		text-align: center;
		margin-bottom: 10px;
	}
	#about .point .point-ike > div ul{
		width: 100%;
	}
	#about .point .point-ike > div ul::after{
		display: block;
		clear: both;
		height: 0px;
		visibility: hidden;
		overflow: hidden;
		line-height: 0;
		content: ".";
	}
	#about .point .point-ike > div ul li{
		float: left;
	}
	#about .fee{
		width: 100%;
	}
	#about .onecol,
	#about .twocol{
		display: block;
		margin-bottom: 40px;
	}
	#about .onecol table{
		width: 100%;
	}
	#about .onecol ul{
		width: 100%;
		margin-top: 10px;
	}
	#about .onecol ul li{
		padding-left: 1em;
		text-indent: -1em;
	}
	#about .twocol div{
		width: 100%;
	}
	#about .twocol div:first-child{
		margin-bottom: 20px;
	}
	/*---------------------
	 access
	---------------------*/
	#access h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-access.jpg") no-repeat center center;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#access .adress{
		font-size: 20px;
		font-weight: bold;
		text-align: center;
	}
	#access .adress span{
		margin-left: 20px;
	}
	#access .time-list{
		display: flex;
		justify-content: space-around;
		width: 100%;
		margin: 60px 0 60px 0;
	}
	#access .time-list li{
		display: flex;
		align-items: center;
		flex-direction: column;
		font-size: 12px;
		text-align: center;
	}
	#access .time-list li img{
		display: block;
		width: 100%;
		max-width: 70px;
	}
	#access .time-list li .time{
		font-weight: bold;
		font-size: 15px;
	}
	#access #gmap {
		height: 0;
		overflow: hidden;
		margin-bottom: 10px;
		padding-bottom: 62.5%; /* height/640px*100 */
		position: relative;
	}
	#access #gmap iframe {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		max-height: 400px;
	}
	#access .root{
		width: 100%;
		margin-top: 80px;
	}
	#access .root .tab{
		display: flex;
		justify-content: space-around;
		width: 100%;
		margin: 0 auto;
		font-size: 14px;
		font-weight: bold;
	}
	#access .root .tab li{
		width: 41.6666%;
		max-width: 250px;
		padding: 20px;
		background: #e3e6e8;
		border-radius: 7px 7px 0 0;
		text-align: center;
		color: #8a8c8c;
		cursor: pointer;
	}
	#access .root .tab .tab-active{
		background: #d3e7ef;
		color: #1a1c1d;
		transition: all 0.2s ease-out;
	}
	#access .root .cont{
		width: 100%;
		padding: 30px;
		background: #d3e7ef;
		border-radius: 7px;
	}
	#access .root .panel{
		display: none;
	}
	#access .root .active{
		display: block;
		animation: fadeIn 1.5s ease 0s 1 normal;
	}
	#access .root .cont .panel ul{
		width: 100%;
	}
	#access .root .cont .panel ul li{
		display: table;
		padding-bottom: 20px;
	}
	#access .root .cont .panel ul li div{
		display: table-cell;
		width: 60px;
	}
	#access .root .cont .panel ul li div p.circle{
		display: table-cell;
		width: 60px;
		height: 60px;
		font-weight: bold;
		color: #ffffff;
		text-align: center;
		background-color: #8a8a39;
		border-radius: 50%;
		vertical-align: middle;
	}
	#access .root .cont .panel ul li p.txt{
		display: table-cell;
		padding-left: 20px;
		vertical-align: middle;
	}
	/*---------------------
	 regulation
	---------------------*/
	#regulation h2{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		max-width: 1200px;
		height: 250px;
		background: url("../images/cont-title-regulation.jpg") no-repeat center center;
		text-align: center;
		color: #ffffff;
		font-size: 30px;
		text-shadow:
			1px 1px 0px rgba(26,28,29,0.8),
			-1px 1px 0px rgba(26,28,29,0.8);
		position: relative;
	}
	#attention-link{
		display: none;
	}
	#attention-link li{
		position: relative;
		margin: 0 35px 15px 0;
	}
	#attention-link li:last-child{
		margin-right: 0;
	}
	#attention-link li::before{
		content: "";
		display: inline-block;
		width: 13px;
		height: 11px;
		background: url("../images/icon-sankaku.png") no-repeat;
		margin-right: 5px;
	}
	#regulation dl dt{
		font-size: 20px;
		font-weight: bold;
		color: #285d74;
		margin-bottom: 15px;
	}
	#regulation dl dd{
		border-bottom: dotted 1px #cccccc;
		margin-bottom: 5px;
		padding: 5px 5px 5px 1em;
		text-indent: -1em;
	}
	#regulation dl dd::before{
		content: "●";
		color: #285d74;
		padding: 0 5px 0 5px;
	}
	#regulation dl dd table{
		width: 100%;
		border-collapse: collapse;
		margin: 30px 0;
	}
	#regulation dl dd table th{
		background: #abd87d;
		padding: 10px;
		color: #ffffff;
		font-weight: normal;
		white-space: nowrap;
		border-right: solid 1px #ffffff;
	}
	#regulation dl dd table th:last-child{
		border-right: none;
	}
	#regulation dl dd table td{
		padding: 10px;
		border: solid 1px #d3e7ef;
		text-align: center;
	}

}