/*====================
スマホを基本設計にする
 - 〜479px：スマートフォン縦
 - 480px〜599px：スマートフォン横
 - 600px〜959px：タブレット
 - 960px〜1279px：小型PC
 - 1280px〜：大型PC
====================*/

/* Reset
------------------------------ */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{line-height:1;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}nav ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}ins{background-color:#ff9;color:#000;text-decoration:none;}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}del{text-decoration:line-through;}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help;}table{border-collapse:collapse;border-spacing:0;}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}*,*::before,*::after{box-sizing:border-box;}

/* Common & SP
------------------------------ */
html{
	font-size: 62.5%;
}
body {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 3rem;
	letter-spacing: 0.2rem;
/*	animation: fadeIn 3s ease 0s 1 normal;*/
	word-wrap: break-word;
}
/*
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}*/


a {transition: all  0.3s ease; text-decoration: none;}
img { max-width: 100%;}
ul { list-style-type: none;}

header {
	display: flex;
	align-items: center;
	padding: 10px;
	background: #FFF;
}
header a {
	display: block;
}
.logo {
	display: inline-block;
	background: url(img/logo.png)center center no-repeat;
	background-size: contain;
	text-indent: -9999px;
}
#overseas .logo {
	display: inline-block;
	background: url(img/logo-overseas.png)center center no-repeat;
	background-size: contain;
	text-indent: -9999px;
}
nav {
	margin-left: auto;
}
nav ul {
	display: flex;
}
nav ul li {
	margin-left: 10px;
}
nav ul li a {
	color: #00bce5;
}
nav ul li.lang a {
	border: 1px solid #00bce5;
	border-radius: 50%;
	text-align: center;
}
nav ul li.lang a:hover {
	color : #FFF;
	background: #00bce5;
}


.effect-fade {
	opacity : 0;
	transform : translate(0, 45px);
	transition : all 500ms;
	transition-timing-function:ease-out;
}
.effect-fade.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}
.effect-fade:nth-of-type(2) {
	-moz-transition-delay:300ms;
	-webkit-transition-delay:300ms;
	-o-transition-delay:300ms;
	-ms-transition-delay:300ms;
}
.effect-fade:nth-of-type(3) {
	-moz-transition-delay:450ms;
	-webkit-transition-delay:450ms;
	-o-transition-delay:450ms;
	-ms-transition-delay:450ms;
}
.effect-fade:nth-of-type(4) {
	-moz-transition-delay:600ms;
	-webkit-transition-delay:600ms;
	-o-transition-delay:600ms;
	-ms-transition-delay:600ms;
}
.effect-fade:nth-of-type(5) {
	-moz-transition-delay:750ms;
	-webkit-transition-delay:750ms;
	-o-transition-delay:750ms;
	-ms-transition-delay:750ms;
}
.effect-fade:nth-of-type(6) {
	-moz-transition-delay:900ms;
	-webkit-transition-delay:900ms;
	-o-transition-delay:900ms;
	-ms-transition-delay:900ms;
}

.model-header {
	width: 815px;
	padding: 0 50px 50px 50px;
	margin: auto;
	background: url(img/11-model-body.png) center bottom no-repeat;
	background-size: contain;
	text-align: center;
}

.top {
	padding: 5rem;
	background: #F8F6F6;
}
.top .thumb {
	margin-bottom: 1rem;
}
.top .motif {
	height: 52px;
	margin-bottom: 1rem;
	display: flex;
	justify-content: space-around;
}
.top h3 {
	padding: 0 2rem;
	margin-bottom: 1rem;
	text-align: center;
	color: #00bce5;
}
.top p {
	padding: 0 2rem;
	margin-bottom: 1rem;
}
.top a {
	height: 45px;
	line-height: 45px;
	width: 260px;
	display: block;
	margin: auto;
	background: url(img/btn-bg.png) center center no-repeat;
	font-size: 1.2rem;
	text-align: center;
	text-indent: -2rem;
	color: #000;
}
.introduction {
	text-align: center;
	background: url(img/intro-bg.png) center center no-repeat;
}
.introduction h1 {
	margin-bottom: 50px;
	line-height: 5rem;
	font-size: 3rem;
	color: #00bce5;
	text-align: center;
}

.gmap { height: 0; overflow: hidden; padding-bottom: 28.125%; position: relative;}
.gmap iframe { position: absolute; left: 0; top: 0; height: 100%; width: 100%;}


.contents-text {
	text-align: center;
}
.contents-text h2 {
	margin-bottom: 20px;
	font-weight: 100;
	font-size: 3rem;
}
.contents-text h2 span {
	margin-bottom: 50px;
	display: block;
	font-weight: 900;
	color: #00bce5;
}
.contents-text h3 {
	margin-bottom: 50px;
	color: #00bce5;
	font-size: 2rem;
	font-weight: 100;
}
.contents-text p {
	margin-bottom: 1rem;
}
.contents-img ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.contents-img ul li {
	width: 49%;
}
.contents-img ul li:first-child {
	width: 100%;
	margin-bottom: 1rem;
	position: relative;
}
.contents-img img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: auto;
	border-radius: 10px;
}
.content-bg-1 {
	background: url(img/content-bg-1.png) center center no-repeat;
	background-size: contain;
}
.content-bg-2 {
	background: url(img/content-bg-2.png) center center no-repeat;
	background-size: contain;
}
.content-bg-3 {
	background: url(img/content-bg-3.png) center center no-repeat;
	background-size: contain;
}

.point {
	margin: 2rem;
	padding: 0.5rem 2rem 1rem;
	border: 3px solid #EEE;
	background: rgba(255,255,255,.7);
	border-radius: 5px;
	text-align: left;
}
.point:before {
	margin: 0 0 0 -2rem;
	padding: 0.5rem 1rem;
	background: #EEE;
	border-radius: 0 10px 10px 0;
	font-weight: 900;
	font-size: 0.9rem;
	color: #00bce5;
	content: "point!";
}
.point img {
	vertical-align: middle;
	margin-right: 1rem;
}
.point a {
	color: #00bce5;
}
.time-1-bike,.time-2-bike,.time-3-bike,.time-1-car,.time-2-car,.time-2-walk,.time-3-car,.time-3-car-r {
	text-align: center;
	font-size: 2rem;
}
.time-1-bike span,.time-2-bike span,.time-3-bike span,.time-1-car span,.time-2-car span,.time-2-walk span,.time-3-car span,.time-3-car-r span {
	font-size: 4rem;
	font-weight:900;
	color: #00bce5;
}
.goal .contents-img img {
	display: block;
	margin: auto;
}
.shop {
	border-bottom: 1px dashed #CCC;
}
.shop-title {
	height: 84px;
	margin-bottom: 30px;
	text-indent: -9999px;
	background: url(img/hx-shop-list.png) center center no-repeat;
}
.shop-list li {
	padding: 30px 0 0 0;
	border-top: 3px solid #00bce5;
}
.shop-list li img {
	display: block;
	margin: auto;
	border-radius: 50%;
}
.shop-list h3{
	margin: 30px 0 20px;
	text-align: center;
}
.shop-list dl{ display:flex; flex-wrap: wrap; margin: 1rem 0; padding: 15px 0; font-size: 1.2rem; border-top: 1px dashed #00bce5;}
.shop-list dt{ width: 25%; font-weight: 900;}
.shop-list dd{ width: 75%;}

.trip-style {
	height: 84px;
	margin-bottom: 30px;
	text-indent: -9999px;
	background: url(img/hx-trip-style.png) center center no-repeat;
}
#overseas .trip-style {
	height: 84px;
	margin-bottom: 30px;
	text-indent: -9999px;
	background: url(img/hx-trip-style-en.png) center center no-repeat;
}

.gallery-cell {
	overflow: hidden;
	position: relative;
}
.gallery-cell img {
	display: block;
	height: auto;
}
.gallery-cell p {
	width: 100%;
	height: 4rem;
	position: absolute;
	bottom: 0;
	text-align: center;
	color: #FFF;
	font-weight: 900;
}
.distance {
	padding: 5rem 1rem;
	line-height: 3rem;
	background: #F8F6F6;
	font-size: 1.4rem;
}
.choose {
	height: 84px;
	margin-bottom: 30px;
	text-indent: -9999px;
	background: url(img/hx-distance.png) center center no-repeat;
}
#overseas .choose {
	height: 84px;
	margin-bottom: 30px;
	text-indent: -9999px;
	background: url(img/hx-distance-en.png) center center no-repeat;
}
.distance a {
	color: #00bce5;
}
.distance h4 {
	margin-bottom: 2rem;
	text-align: center;
	font-weight: 100;
}
.distance h4 span {
	display: block;
	font-size: 1rem;
	font-weight: 900;
	color: #00bce5;
}
.distance ul{
		margin-bottom: 3rem;
	}
.distance li {
	margin-bottom: 1rem;
	line-height: 2rem;
}
.distance li a {
	display: block;
	height: 90px;
}
.distance li img {
	height: 90px;
	width:160px;
	margin-right: 15px;
	border-radius: 10px;
	display: inline-block;
	vertical-align: middle;
}
.distance li span {
	width: calc( 100% - 175px );
	display: inline-block;
	vertical-align: middle;
}
footer {
	padding: 3rem 0;
	line-height: 5rem;
	background: #00bde5;
	color: #FFF;
	text-align: center;
}
footer a {
	color: #FFF;
}

.start1 {
	width: 460px;
	padding: 260px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-1.png) top center no-repeat;
}
.start2 {
	width: 460px;
	padding: 280px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-2.png) top center no-repeat;
}
.start3 {
	width: 460px;
	padding: 300px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-3.png) top center no-repeat;
}
.start4 {
	width: 460px;
	padding: 320px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-4.png) top center no-repeat;
}
.start5 {
	width: 460px;
	padding: 340px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-5.png) top center no-repeat;
}
.start6 {
	width: 460px;
	padding: 350px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-6.png) top center no-repeat;
}
.start7 {
	width: 460px;
	padding: 340px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-7.png) top center no-repeat;
}
.start8 {
	width: 460px;
	padding: 320px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-8.png) top center no-repeat;
}
.start9 {
	width: 460px;
	padding: 300px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-9.png) top center no-repeat;
}
.start10 {
	width: 460px;
	padding: 280px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-10.png) top center no-repeat;
}
.start11 {
	width: 460px;
	padding: 260px 0 0;
	margin: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: left;
	background: url(img/start-11.png) top center no-repeat;
}
.start1 span,.start2 span,.start3 span,.start4 span,.start5 span,.start6 span,.start7 span,.start8 span,.start9 span,.start10 span,.start11 span {
	font-size: 2.5rem;
	font-weight:900;
	color: #00bce5;
}
.start1 ul,.start2 ul,.start3 ul,.start4 ul,.start5 ul,.start6 ul,.start7 ul,.start8 ul,.start9 ul,.start10 ul,.start11 ul {
	display: flex;
	justify-content: center;
	margin-left: 10%;
}
.start1 ul li,.start2 ul li,.start3 ul li,.start4 ul li,.start5 ul li,.start6 ul li,.start7 ul li,.start8 ul li,.start9 ul li,.start10 ul li,.start11 ul li {
	width: 40%;
}
.about {
	padding: 30px 0 0 45px;
	background: url(img/bg-about.png) center left no-repeat;
}
.totaltime {
	padding: 30px 0 0 45px;
	background: url(img/bg-total.png) center left no-repeat;
}
.staytime {
	color: #888;
	font-size: 1.1rem;
}
.staytime::before,.staytime::after {
	content: "-";
	color: #888;
	font-size: 0.8rem;
}

#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
#page-top a {
	background: rgba(0,189,229,0.8);
	height: 50px;
	width: 50px;
	text-align: center;
	display: block;
	border-radius: 50%;
}
#page-top a:hover {
	background: rgba(0,189,229,1);
}

.clearfix::after,.distance li::after {
	content: "";
	display: block;
	clear: both;
}
/* 〜599px：SP
------------------------------ */
@media screen and (max-width:599px) {
.logo {
	width: 240px;
	height: 40px;
}
nav ul li {
	margin-left: 5px;
}
nav ul li.lang a {
	font-size: 12px;
	height: 30px;
	line-height: 30px;
	width: 30px;
}
.drawer-list {
	padding-top: 80px!important;
}
.drawer-list li {
	margin-right: 5px;
}
.drawer-list li a {
	border-bottom: 1px solid rgba(0,188,229,0.4);
}
.model-header {
	width: 95%;
	padding: 0 20px 30px 20px;
}
.menu {
	font-size: 1.2rem;
	line-height: 1.9rem;
}
#modal-open {
  padding: 0.5rem;
  color: #00bce5;
  background-color: #FFF;
  border: 1px solid #00bce5;
  border-radius: 3px;
  cursor: pointer;
}

#modal-bg {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 1;
}
  
#modal-window {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
  width: 90%;
  height: 300px;
  max-width: 500px;
  z-index: 1;
}
#modal-window {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
  width: 90%;
  height: 150px;
  max-width: 500px;
  z-index: 1;
}

#modal-window ul {
	justify-content: space-between;
}
#modal-window ul li {
	width: 20%;
}
#modal-window ul li a {
	width: 50px;
	height: 50px;
	line-height: 50px;
	margin: auto;
	font-size: 20px;
}


.inner {
	margin: 10px;
}
.top {
	padding: 2rem;
}
.top-list li {
	margin-bottom: 50px;
}
.top-list li img {
	display: block;
	margin: auto;
}
.top-list li .thumb {
	border-radius: 20px
}
.introduction {
	background-position: top;
	background-size: contain;
}
.introduction h1 {
	margin-bottom: 30px;
	padding: 0 60px;
	line-height: 4rem;
	font-size: 2rem;
}
.contents-wrap,
.contents-wrap.reverse {
	flex-direction: column;
}

.contents-text,
.contents-img {
	width: 100%;
}

.contents-text {
	padding: 1rem;
}
.contents-text {
	text-align: center;
}
.contents-text h2 {
	margin-bottom: 30px;
	font-weight: 100;
	font-size: 2rem;
}
.contents-text h2 span {
	margin-bottom: 30px;
	display: block;
	font-weight: 900;
	color: #00bce5;
}
.contents-text h3 {
	margin-bottom: 30px;
	color: #00bce5;
	font-size: 1.8rem;
	font-weight: 100;
}
.contents-text p {
	margin-bottom: 1rem;
}

.time-1-bike {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-1-bike-sp.gif) center center no-repeat;
}
.time-2-bike {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-2-bike-sp.gif) center center no-repeat;
}
.time-3-bike {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-2-bike-sp.gif) center center no-repeat;
}
.time-1-car {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-1-car-sp.gif) center center no-repeat;
}
.time-2-car {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-2-car-sp.gif) center center no-repeat;
}
.time-2-walk {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-2-walk-sp.gif) center center no-repeat;
}
.time-3-car {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-3-car-sp.gif) center center no-repeat;
}
.time-3-car-r {
	padding: 50px 0 50px;
	margin: 15px;
	background: url(img/time-3-car-sp.gif) center center no-repeat;
}
.gallery-cell {
	width: 100%;
	margin-right: 10px;
}
.top,.model-header,.introduction,.main-visual,.root,.gmap,.shop,.gallery {
  margin-bottom: 50px;
}
.main-visual img {
	object-fit: cover;
}

.gmap {padding-bottom: 100%;}

.start1 {
	width: 360px;
	padding: 220px 0 0;
	background-size: contain;
}
.start2 {
	width: 360px;
	padding: 230px 0 0;
	background-size: contain;
}
.start3 {
	width: 360px;
	padding: 240px 0 0;
	background-size: contain;
}
.start4 {
	width: 360px;
	padding: 250px 0 0;
	background-size: contain;
}
.start5 {
	width: 360px;
	padding: 260px 0 0;
	background-size: contain;
}
.start6 {
	width: 360px;
	padding: 265px 0 0;
	background-size: contain;
}
.start7 {
	width: 360px;
	padding: 260px 0 0;
	background-size: contain;
}
.start8 {
	width: 360px;
	padding: 250px 0 0;
	background-size: contain;
}
.start9 {
	width: 360px;
	padding: 240px 0 0;
	background-size: contain;
}
.start10 {
	width: 360px;
	padding: 230px 0 0;
	background-size: contain;
}
.start11 {
	width: 360px;
	padding: 220px 0 0;
	background-size: contain;
}
.start1 span,.start2 span,.start3 span,.start4 span,.start5 span,.start6 span,.start7 span,.start8 span,.start9 span,.start10 span,.start11 span {
	font-size: 2.2rem;
}
.start1 ul,.start2 ul,.start3 ul,.start4 ul,.start5 ul,.start6 ul,.start7 ul,.start8 ul,.start9 ul,.start10 ul,.start11 ul {
	margin-left: 10%;
}
.start1 ul li,.start2 ul li,.start3 ul li,.start4 ul li,.start5 ul li,.start6 ul li,.start7 ul li,.start8 ul li,.start9 ul li,.start10 ul li,.start11 ul li {
	width: 45%;
}
.about {
	padding: 30px 0 0 45px;
}
.totaltime {
	padding: 30px 0 0 45px;
}

}
/* 600px〜959px：Tab
------------------------------ */
@media screen and (min-width:600px) and (max-width:959px) {

.logo {
	width: 320px;
	height: 40px;
}
nav ul li.lang a {
	height: 40px;
	line-height: 40px;
	width: 40px;
}
.drawer-list {
	width: 60vw!important;
}

.inner {
	margin: 10px;
}
.top {
	padding: 2rem;
}
.top-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top-list::after{
	width: 49%;
	content:"";
	display: block;
}
.top-list li {
	width: 49%;
	margin-bottom: 50px;
}
.top-list li img {
	display: block;
	margin: auto;
	border-radius: 30px
}
.top-list li .thumb {
	border-radius: 25px
}
.contents-text ,.contents-img {
	margin: 30px 0;
}

.goal {
	width: 70%;
	margin: auto;
}
.goal .contents-text ,.goal .contents-img {
	width: 100%;
	margin: 30px;
}
.time-1-bike {
	padding: 40px 0 160px;
	margin: 50px;
	background: url(img/time-1-bike-sp.gif) center center no-repeat;
}
.time-2-bike {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-2-bike-sp.gif) center center no-repeat;
}
.time-3-bike {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-2-bike-sp.gif) center center no-repeat;
}
.time-1-car {
	padding: 40px 0 160px;
	margin: 50px;
	background: url(img/time-1-car-sp.gif) center center no-repeat;
}
.time-2-car {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-2-car-sp.gif) center center no-repeat;
}
.time-2-walk {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-2-walk.gif) center center no-repeat;
}
.time-3-car {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-1-car-sp.gif) center center no-repeat;
}
.time-3-car-r {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-2-car-sp.gif) center center no-repeat;
}
.shop-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.shop-list::after{
	width: 30%;
	content:"";
	display: block;
}
.shop-list li {
	width: 30%;
	margin-bottom: 50px;
}

.gallery-cell {
	width: calc(100% / 2);
	margin-right: 20px;
}
.top,.introduction,.main-visual,.root,.gmap,.shop,.gallery {
  margin-bottom: 100px;
}
}
 
/* 960px〜：PC
------------------------------ */
@media screen and (min-width:960px) {

.logo {
	width: 320px;
	height: 40px;
}
nav ul li.lang a {
	height: 40px;
	line-height: 40px;
	width: 40px;
}
.inner {
	width: 1660px;
	max-width: 100%;
	margin: auto;
}

.model-header {
	position: relative;
}
.model-header::before {
	position: absolute;
	display: block;
	content: url(img/lead-sub-1.png);
	top: 60px;
	left: -350px;
}
.model-header::after {
	position: absolute;
	display: block;
	content: url(img/lead-sub-2.png);
	bottom: -50px;
	right: -370px;
}

.top-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top-list::after{
	width: 31%;
	content:"";
	display: block;
}
.top-list li {
	width: 31%;
	margin-bottom: 100px;
}
.top-list li img {
	display: block;
	margin: auto;
}
.top-list li .thumb {
	border-radius: 30px
}

.introduction {
	min-height: 250px;
}
.introduction h1,.introduction p {
	width: 600px;
	margin: auto;
}

.contents-wrap {
	display: flex;
	justify-content: space-between;
}
.contents-wrap.reverse {
	flex-direction: row-reverse;
}

.contents-text ,.contents-img {
	width: 49%;
}

.goal {
	width: 50%;
	margin: auto;
}
.goal .contents-text ,.goal .contents-img {
	width: 100%;
}
.time-1-bike {
	padding: 40px 0 160px;
	margin: 50px;
	background: url(img/time-1-bike.gif) center center no-repeat;
}
.time-2-bike {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-2-bike.gif) center center no-repeat;
}
.time-3-bike {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-3-bike.gif) center center no-repeat;
}
.time-1-car {
	padding: 40px 0 160px;
	margin: 50px;
	background: url(img/time-1-car.gif) center center no-repeat;
}
.time-2-car {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-2-car.gif) center center no-repeat;
}
.time-3-car {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-3-car.gif) center center no-repeat;
}
.time-3-car-r {
	padding: 50px 0 150px;
	margin: 50px;
	background: url(img/time-3-car-r.gif) center center no-repeat;
}

.shop-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.shop-list::after{
	width: 30%;
	content:"";
	display: block;
}
.shop-list li {
	width: 30%;
	margin-bottom: 50px;
}

.gallery-cell {
	width: calc(100% / 2);
	margin-right: 20px;
}

.course {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.course div {
	width: 30%;
	margin-bottom: 50px;
}
.top,.model-header,.introduction,.main-visual,.root,.gmap,.shop,.gallery {
  margin-bottom: 100px;
}

}

@media screen and (min-width: 600px){
.tel {
	pointer-events: none;
	cursor: default;
	color: #000!important;
}
}