@charset "utf-8";
/* CSS Document */

body,html{
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	color: #111111;
}

body{
	background-color: #f4e7d3;
}

a,
a:visited{
	color: #111111;
	text-decoration: none;
}

a:hover{
	color: #111111;
	text-decoration: underline;
}

img{
	max-width: 100%;
	height: auto;
}

h1{}
h2{
	text-align: center;
	margin-bottom: 40px;
}

.clearfix:after,
#gNav:after,
.time:after{
	content: "";
	display: block;
	clear: both;
}

.clearfix:before,
#gNav:before,
.time:before{
	content: "";
	display: block;
	clear: both;
}
.clearfix,
.time{
	display: block;
}

/* header */
header{
	background-color: #fff;
	background-image: url("img/bg.png");
	background-size: 100% 88.64%;
	background-repeat: no-repeat;
	margin-bottom: -4rem;
}

header section{
	background-image: url("img/bg2.png");
	background-size: 100% auto;
	background-repeat: no-repeat;
	display: block;
}

.mv-l{
	width: 37.4%;
	text-align: right;
	float: left;
}
.mv-l img{
	max-width: 56.24%;
	height: auto;
	padding-top: 8.66%;
}
.mv-m{
	width: 29.6%;
	float: left;
	padding-top: 11.7%;
	padding-bottom: 0.4%;
}
.mv-m img{
	max-width: 100%;
	height: auto;
}
.mv-r{
	width: 33%;
	float: left;
	padding-top: 17.32%;
}
.mv-r img{
	max-width: 30%;
	height: auto;
	margin: 10%;
}
.mv-all img{
	max-width: 100%;
	height: auto;
}

/* gNav */
#gNav{
	background-color: #fff;
	display: block;
}
#gNav li{
	float: left;
	text-align: center;
	font-weight: 800;
}
#gNav li a{
	display: block;
	padding-top: 6px;
	padding-bottom: 6px;
}
#gNav li.n-txt01,
#gNav li.n-txt02{
	width: 22%;
	padding-top: 5rem;
}
#gNav li.n-txt01 a{
	border-right: 1px solid #999999;
}
#gNav li.n-txt01 a:hover,
#gNav li.n-txt02 a:hover{
	background: no-repeat center bottom url("img/navdot.png");
	text-decoration: none;
}
#gNav li.n-logo{
	width: 12%;
}
#gNav li.n-logo img{
	max-width: 100%;
	height: auto;
}

/* main */
main{
	background-image: url("img/mbg-l.png"),url("img/mbg-r.png");
	background-position: left top,right top;
	background-repeat: no-repeat,no-repeat;
	padding-top: 60px;
}
h3{
	font-size: 24px;
	color: #59493f;
	text-align: center;
}
#asobi{
	background-image: url("img/asobi-le.png"),url("img/asobi-r.png");
	background-position: left top,right top;
	background-repeat: no-repeat,no-repeat;
	padding-top: 10px;
	text-align: center;
}
main section{
	margin-bottom: 70px;
}
#syo{
	background-image: url("img/syo-l.png"),url("img/syo-r.png");
	background-position: left center,right 25px top 95px;
	background-repeat: no-repeat,no-repeat;
}
article.wh{
	background-color: #fff;
	border-radius: 20px;
	padding: 0 30px 25px;
}
#syo h3{
	font-size: 30px;
}
#syo article.wh h3{
	min-height: 150px;
	padding-top: 25px;
	background: right 15px no-repeat url("img/syo-ti.png");
}
.animation{
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}
.hadashi{
  animation-name: anim_s;
  transform: rotate(2deg);
  animation-duration: 4s;
}
#gaiyo article.wh{
	text-align: center;
}

@keyframes anim_s {
  15% {
    transform: rotate(-2deg);
  }
  30% {
    transform: rotate(2deg);
  }
  45% {
    transform: rotate(-2deg);
  }
  60% {
    transform: rotate(2deg);
  }
}
ul{
	padding-left: 0;
}
main li{
	padding-left: 15px;
	margin-bottom: 5px;
	background: left center no-repeat url("img/dot-o.png");
	list-style: none;
}
.dt01,
.dt02,
.dt03,
.dt04{
	padding-left: 35px;
	margin-bottom: 5px;
	background: left top no-repeat;
	list-style: none;
}
#syo dt{
	font-size: 26px;
	font-weight: bold;
}
.dt01{background-image: url("img/dt01.png");}
.dt02{background-image: url("img/dt02.png");}
.dt03{background-image: url("img/dt03.png");}
.dt04{background-image: url("img/dt04.png");}
#syo dt span{
	background:linear-gradient(transparent 60%, #ffff66 60%);
}
#syo dd{
	padding-left: 35px;
	margin-bottom: 25px;
	margin-left: 0;
}

#ryt,
#ichi,
#gyoji,
#gaiyo{
	padding-top: 30px;
	padding-bottom: 60px;
}
#ryt,
#ichi{
	background-color: #fff;
}
#ichi{
	background-image: url("img/giza.png"),url("img/giza2.png");
	background-position: center top,center bottom;
	background-repeat: repeat-x,repeat-x;
}
#ryt{
	background-image: url("img/ryt-bg01.png"),url("img/ryt-bg02.png");
	background-position: center top,center bottom;
	background-repeat: no-repeat,no-repeat;
}
#gyoji dl,
#gyoji dl > dt,
#gyoji dl > dd {
    box-sizing: border-box;
	font-weight: bold;
}

#gyoji dl > dt {
	font-size: 2rem;
    padding: 1em;
    margin: 0px;
}
.txt-sp{
	color: #f2508c;
}
.txt-su{
	color: #77ae16;
}
.txt-au{
	color: #f68531;
}
.txt-wi{
	color: #5495d6;
}
#gaiyo{
	background-color: #fff0c3;
	margin-bottom: 0;
}
#gaiyo article dl,
#gaiyo article dt,
#gaiyo article dd{
	margin-left: 0;
	padding-left: 0;
}
.time div{
	text-align: center;
	overflow: hidden;
	background-position: center top;
	background-repeat: no-repeat;
}
.time div.time07:hover{
	background-image: url("img/time07_on.png");
}
.time div.time09:hover{
	background-image: url("img/time09-on.png");
}
.time div.time10:hover{
	background-image: url("img/time10_on.png");
}
.time div.time11:hover{
	background-image: url("img/time11_on.png");
}
.time div.time12:hover{
	background-image: url("img/time12_on.png");
}
.time div.time15:hover{
	background-image: url("img/time15_on.png");
}
.time div.time16:hover{
	background-image: url("img/time16_on.png");
}
.time div.time24:hover{
	background-image: url("img/time24.png");
	background-position: center bottom;
}
.time div img{
	cursor: pointer;
	transition-duration: 0.5s;
}
.time div:hover img{
	transform: rotateY( 360deg );
	transition-duration: 0.5s;
	opacity: 0;
}

/* footer */
footer{
	background-color: #fff;
	text-align: center;
	padding: 60px 2rem 30px;
}

@media (min-width:1350px){
	main{
		font-size: 21px;
	}
	header section{
		padding-top: 67px;
	}
	header section,
	#gNav ul{
		width: 1350px;
		margin: 0 auto;
	}
	#asobi{
		min-height: 720px;
	}
	article{
		width: 816px;
		margin: 0 auto;
	}
	#gyoji dl > dd {
    padding: 1em;
    margin: 0px;
	}
	#gaiyo article div,
	#gaiyo article dl{
		width: 50%;
		float: left;
		margin-top: 0;
	}
	#gaiyo article div img{
		width: 95%;
		height: auto;
	}
	#gaiyo dl dt{
		clear: left;
		float: left;
		width: 20%;
		font-weight: bold;
	}
	#gaiyo dl dd{
		margin-left: 21%;
		margin-bottom: 1.5rem;
	}
	#gyoji{
		background-position: 95% 200px;
	}
}

@media (max-width:1349px){
	header section{
	padding-top: 8.66%;
	}
	#asobi{
		background-size: auto 100%;
	}
	article{
		margin: 0 15%;
	}
	#gaiyo article div{
		text-align: center;
	}
	#gaiyo article div img{
		max-width: 100%;
		height: auto;
	}
	#gaiyo dl dt{
		clear: left;
		float: left;
		width: 15%;
		font-weight: bold;
	}
	#gaiyo dl dd{
		margin-left: 16%;
		margin-bottom: 1.5rem;
	}
}

@media (min-width: 768px){
	.db{display: none;}
	.time div{
		float: left;
		width: 25%;
		height: 340px;
	}
	.time div img{
		max-width: 95%;
		height: auto;
	}
	.time div.time24{
		padding-top: 110px;
	}
	.time div.time24:hover{
		background-position: center 110px;
	}
	.hadashi{
		float: right;
		padding-left: 10px;
	}
	.hadashi img{
		max-width: 100%;
		height: auto;
	}
	#gyoji{
		background-image: url("img/gyo_ph.png");
		background-position: 90% 200px;
		background-repeat: no-repeat;
	}
	#gyoji dl > dd {
    padding: 3rem 1em 1em 1em;
    margin: 0px;
	}
	#gyoji article dl dt{
		clear: left;
		float: left;
		width: 19%;
		padding-right: 1%;
		text-align: right;
	}
	#gyoji article dl dd{
		margin-left: 21%;
		margin-bottom: 1.5rem;
		background-repeat: no-repeat;
	}
	#gyoji .naika{
		background-image: url("img/m-5.png");
		background-position: 10em bottom;
	}
	#gyoji .shika{
		background-image: url("img/m-6.png");
		background-position: 6em bottom;
	}
	#gyoji .en{
		background-image: url("img/m-11.png");
		background-position: 6em bottom;
	}
	#gyoji .ch{
		background-image: url("img/m-12.png");
		background-position: 10em bottom;
	}
	#gyoji .hane{
		background-image: url("img/m-1.png");
		background-position: 6em bottom;
	}
	#gyoji .mame{
		background-image: url("img/m-2.png");
		background-position: center bottom;
	}
	#gyoji .hana{
		background-image: url("img/m-3.png");
		background-position: 17em bottom;
	}
}

@media (min-width: 1350px){
	#gyoji{
		background-position: 75% 200px;
	}
}

@media (max-width: 767px){
	#gNav li.n-txt01,
	#gNav li.n-txt02{
		display: none;
	}
	#gNav li.n-logo{
		width: 20%;
		text-align: center;
		margin: 0 40%;
		padding-top: 1rem;
	}
	#gNav li.n-logo img{
		width: auto;
		height: auto;
	}
	main{
		background-size: 40% auto,40% auto;
	}
	main #omoi{
		padding-right: 1rem;
		padding-left: 1rem;
	}
	h3{
		font-size: 21px;
	}
	#asobi img{
		width: 60%;
		height: auto;
	}
	#syo{
		background-image: none,none;
		margin: 0 1rem;
	}
	article{
		margin: 0 1rem;
	}
	#syo .wh h3{
		min-height: auto;
		background-color:rgba(255,255,255,0.8);
		background-blend-mode:lighten;
		background-size: auto 80%;
		font-size: 21px;
	}
	#syo dt{
		font-size: 18px;
	}
	#syo dd{
		font-size: 16px;
	}
	.time div.time11,
	.time div.time15,
	.time div.time16{
		margin-bottom: 40px;
	}
	#gyoji dl > dt {
		text-align: center;
	}
	#gyoji dl > dd {
		text-align: center;
		margin: 0 0 1.5rem; 0;
	}
	#gyoji article dl dd{
		margin-bottom: .5rem;
		background-repeat: no-repeat;
		background-position: center bottom;
	}
	#gyoji .naika{
		background-image: url("img/m-5.png");
		padding-bottom: 5rem;
	}
	#gyoji .shika{
		background-image: url("img/m-6.png");
		padding-bottom: 3.5rem;
	}
	#gyoji .en{
		background-image: url("img/m-11.png");
		padding-bottom: 6rem;
	}
	#gyoji .ch{
		background-image: url("img/m-12.png");
		padding-bottom: 5rem;
	}
	#gyoji .hane{
		background-image: url("img/m-1.png");
		padding-bottom: 5rem;
	}
	#gyoji .mame{
		background-image: url("img/m-2.png");
		padding-bottom: 4rem;
	}
	#gyoji .hana{
		background-image: url("img/m-3.png");
		padding-bottom: 5rem;
	}
}

@media (max-width: 480px){
	h3{
		font-size: 18px;
	}
	#asobi{
		background-image: none,none;
	}
	#asobi img{
		width: 100%;
		height: auto;
	}
	#gaiyo dl dt{
		clear: left;
		float: none;
		width: 100%;
		font-weight: bold;
	}
	#gaiyo dl dd{
		margin-left: 0;
		margin-bottom: 1.5rem;
	}
}