body {
	color:#333;
	text-align: center;
	font-family: Arial, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	background: #ff0;
}
/* body {
	color:#333;
	text-align: center;
	font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", HG丸ｺﾞｼｯｸM-PRO, HGMaruGothicMPRO,sans-serif;
	background: #ff0;
} */
/* .lazy {
&#8195;&#8195;&#8195;&#8195;display:block;
&#8195;&#8195;&#8195;&#8195;position:relative;
&#8195;&#8195;&#8195;&#8195;background-color:#b27b4e;
&#8195;&#8195;&#8195;&#8195;margin:0 auto;
} */
.lazy img{
	width:100%;
	height:100%;
}
.lazy-done{
	animation-name: imgFadein;
	animation-duration: 0.5s;
	animation-timing-function: linear;
	animation-delay: 0;
	animation-iteration-count: 1;
	animation-direction: normal;
}

.contents_right #btn-kanran a{
	display: block;
	width: 100%;
	height: 0;
	padding-top: 31.25%;
	background-size: cover;
	background-image: url(../img/parts/btn_kanran.png);
	text-indent: -9999px;
	margin-bottom: 25px;
}
.no-wrap {
    display: inline-block; /* インラインブロック化 */
}
@keyframes imgFadein {
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}

/* スマホ */
@media all and (max-width: 767px) {
	/*	cover
	============================== */
	div.cover{
		background: #f0c40d url(../img/parts/bg1.png);
		background-size:200px 200px;
		background-position:top center;
	}
	/*	header
	============================== */
	header{
		background: #fff799;
		/* background: #f00; */
	}
	header .header{
		position: relative;
		width:100%;
		padding-top:38%;
		/* height:342px; */
		/* background:#eee; */
		background-color: #fff799;
		background-image: url(../img/parts/top_header_bg2.jpg) ;
		background-size:cover;
		background-repeat: repeat;
		margin:0 auto;
	}
	header .header .top_header_bg{
		display: block;
		position: absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		background-size:cover;
	}
	header .header h1,
	header .header .logo{
		display: block;
		position: absolute;
		top:0;
		left:24%;
		width:55%;
		height:90%;
		background:url(../img/parts/top_title_smp.png);
		background-size:cover;
		background-position:0 0;
	}
	header .header h1 a,
	header .header .logo a{
		display: block;
		width:100%;
		height:100%;
	}
	/*	main
	============================== */
	main{

	}
	/*	contents
	============================== */
	.contents{

	}

	/*	menu
	============================== */
	.menu{
		height:82px;
		box-sizing: border-box;
		padding-top:15px;
		background:#ffdc01 url(../img/parts/menu_bg_smp.png);
		background-size:767px 80px;
	}
	.menu .menubg{
		display: none;
	}
	.menu .slider {
		display:block;
		position:relative;
		padding: 0 40px;
	}

	.menu .slider .outer {
		display:block;
		overflow:hidden;
	}

	.menu .slider .outer ul{

		display:block;
		overflow:hidden;
	}

	.menu .slider .outer .inner{
		-webkit-transform: translateZ(0);
	  display:block;
	  overflow:hidden;
	  padding:0;
	  overflow: hidden;
	  /* background: #000; */
	  margin-bottom: 5px;
	}
	.menu .slider .outer .inner li{
	  display:block;
	  float:left;
	  width:85px;
		height:40px;
		background:url(../img/parts/menu_smp.png);
		background-size:467.5px 40px;
	  padding: 0;
	  margin-right: 2px;
	  text-decoration: none;
	  cursor: pointer;
	  box-sizing: border-box;
	}
	.menu .slider .outer .inner li.menu2{width:127.5px;background-position: -85px 0;}
	.menu .slider .outer .inner li.menu3{background-position: -212.5px 0;}
	.menu .slider .outer .inner li.menu4{background-position: -297.5px 0;}
	.menu .slider .outer .inner li.menu5{background-position: -382.5px 0;}

	.menu .slider .outer .inner li a{
		display:block;
		width:100%;
		height:100%;
		text-indent: -9999px;
		overflow:hidden;

	}
	.menu .slider .outer .inner li:last-child{
		margin-right:0;
	}
	.menu .slider .outer .inner a:hover{

	 }

	/*	menu ctrl
	============================== */
	.menu ul.ctrl{
	  /* display: block;
	  position: relative;
	  width: 100%;
	  height: 100%; */
	}
	.menu ul.ctrl li{
	  position: absolute;
	  top: 50%;
	  bottom:0;
	  margin-top: -15px;
	}
	.menu ul.ctrl li.ctrl-lef{
	  left: 5px;

	}
	.menu ul.ctrl li.ctrl-rig{
	  right: 5px;
	}
	.menu ul.ctrl li a{
	  display: block;
	  width:30px;
	  height:30px;
	  background-image:url(../img/parts/menu_ctl_smp.png);
	  background-repeat: no-repeat;
	  background-size: 60px 30px;
		border-radius: 50%;
	}
	.menu ul.ctrl li.ctrl-lef a{
	  background-position: 0 0;
	}
	.menu ul.ctrl li.ctrl-rig a{
	background-position: -30px 0;
	}
	.menu ul.ctrl li a:hover{
	  background-color: #ad8a55;
	}
.menu ul.ctrl li a.hidebtn{
	  opacity: 0.3;
	  background-color: #8a6e44;
	}
	.menu ul.ctrl li a.hidebtn:hover{
	  cursor: default;
	  background-color: #8a6e44;
	}
	/*	contents_left
	============================== */
	.contents_left{

	}
	/*	frame
	============================== */
	.contents_left .frame{
		padding:10px 10px 0 10px;
		background: rgba(255,255,255,0.65);
		box-sizing: border-box;
		position:relative;
		overflow: visible;
		margin-bottom:20px;

	}
	.contents_left .frame article{
		background-color: rgba(255,255,255,1);
		margin-bottom: 15px;
		text-align: left;
		/* font-size:100%; */
		line-height: 1.75em;
		position: relative;
	}
	.contents_left .frame article .txt{
		padding:20px 10px 20px;
	}

	.contents_left .frame article#program_info{
		margin-bottom: 0px;
	}

	.contents_left .frame article p{
		font-size: 87.5%;
		line-height: 1.5em;
		margin-bottom:1.0em;
	}
	.contents_left .frame article p:last-child{
		margin-bottom:0;
	}

	.contents_left .frame article .img{
		margin:0 auto 20px;
		background-size: cover;
	}
	.frame  article .lazy {
		position: relative;
	}


	/*	contents_right
	============================== */
	.contents_right{
		width:300px;
		margin: 0 auto 20px;
	}
	.contents_right .bn-recta{
		margin-bottom:15px;
	}
	.contents_right .sns_button{
		width:300px;
		height:135px;
		background: url(../img/parts/sns_bg.png);
		background-size: 300px 135px;
		margin-bottom:5px;
		padding-top:45px;
		box-sizing: border-box;
	}
	.contents_right .sns_button ul { text-align: center;}
	.contents_right .sns_button ul li{
		display: inline-block;
		width:65px;
		height:65px;
		border-radius: 50%;
		margin:0 2px;
	}
	.contents_right .sns_button ul li.youtube{
		background-image: url(../img/parts/sns_youtube.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.twitter{
		background-image: url(../img/parts/sns_twitter.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.sns_x{
		background-image: url(../img/parts/sns_x.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.instagram{
		background-image: url(../img/parts/sns_instagram.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.tiktok{
		background-image: url(../img/parts/sns_tiktok.png?1);
		background-size: cover;
	}

	.contents_right .sns_button ul li a{
		display:block;
		width:100%;
		height:100%;
	}
	.contents_right .sns_button ul li a:hover{
		background:rgba(255,255,255,0.3)
	}
	
	.snsNotes {margin-bottom:25px; font-size: 0.8em;}

	.contents_right .info_net{
		background: rgba(255,255,255,0.65);
		padding:10px;
		position: relative;
	}
	.contents_right .info_net .frame{
		background: rgba(255,255,255,1);
		font-size: 87.5%;
		line-height: 1.5em;
		padding:40px 10px 10px 10px;
		text-align: left;
	}
	.contents_right .info_net h3{
		display: block;
		position:absolute;
		top:-10px;
		left:40px;
		width:222px;
		height:40px;
		text-align: left;
		background:url(../img/parts/h3_info_net.png) no-repeat;
		background-size:cover;
	}
	


	/*	footer
	============================== */
	footer{
		display: block;
		padding:20px 20px 40px;
		color:#630;
		font-size: 85%;
		line-height:1.5em;
		background: #fc0;
	}
	footer a{
		ccolor:#930;
		text-decoration: none;
	}
	footer a:hover{
		text-decoration: underline;
	}
	/*	sns_button
	============================== */
	footer .sns_button{
		height:25px;
		padding:0;
		margin-bottom: 15px;
		overflow: hidden;
	}
	footer .sns_button iframe{
		margin-top: -1px;
		margin-right: 10px;
	}
	footer .sns_button iframe:last-child{
		margin-right: 0;
	}
}/* /スマホ */
/* PC */

header .header div.logo {
	margin:0 auto;
}


@media all and (min-width: 768px) {

	/*	cover
	============================== */
	div.cover{
		background: #f0c40d url(../img/parts/bg1.png);
		background-size:200px 200px;
		background-position:top center;
	}

	/*	header
	============================== */
	header{
		background-color: #fff799;
		background-image: url(../img/parts/top_header_bg2.jpg) ;
		background-position:top center;
		background-repeat: repeat-x;
		background-size: 960px 342px;
		/* background: #f00; */
	}
	header .header{
		position: relative;
		width:960px;
		height:342px;
		/* background:#00f; */
		background-size:cover;
		margin:0 auto;
	}
	header .header .top_header_bg{
		display: block;
		width:960px;
		height:342px;
		background-size:cover;
	}
	header .header h1,
	header .header .logo{
		display: block;
/*		position: absolute;
		top:0;
		left:20px; */
		width:495px;
		height:310px;
		background:url(../img/parts/top_title.png);
		background-size:495px 310px;
		background-position:0 0;
	}
	header .header .logo a,
	header .header h1 a{
		display: block;
		width:100%;
		height:100%;
	}
	/*	contents
	============================== */
	main{

	}

	/*	contents
	============================== */
	.contents{
		position:relative;
		width:960px;
		margin: 0 auto;
		/* background: #cc0; */
		overflow: hidden;
	}
	/*	contents_left
	============================== */
	.contents_left{
		width:660px;
		float:left;
		margin: 0;
		z-index:0;
		/* background: #cc0; */
	}
	/*	frame
	============================== */
	.contents_left .frame{
		width:610px;
		padding:60px 15px 15px 15px;
		background: rgba(255,255,255,0.65);
		box-sizing: border-box;
		position:relative;
		overflow: visible;
		margin-bottom:20px;

	}
	.contents_left .frame article{
		background-color: rgba(255,255,255,1);
		/* background-image:  url(../img/parts/frame_border1.png);
		background-position: bottom;
		background-repeat: repeat-x; */
		background-size:104px 18px ;
		margin-bottom: 40px;
		text-align: left;
		line-height: 1.75em;
		position: relative;
	}
	.contents_left .frame article:last-of-type{
		margin-bottom: 0px;
	}
	.contents_left .frame article .txt{
		padding:20px;
	}
	.contents_left .frame article#program_info{
		margin-bottom: 0px;
	}


	.contents_left .frame article p{
		font-size: 87.5%;
		line-height: 1.75em;
		margin-bottom:1.0em;
	}

	.contents_left .frame article .img{
		margin:0 auto 20px;
		background-size: cover;
	}
	.frame  article .lazy {
		position: relative;
	}


	/*	contents_right
	============================== */
	.contents_right{
		width:300px;
		float:left;
		margin: 0;
		padding-top:60px;
		/* background: #ccc; */
	}
	.contents_right .bn-recta{
		margin-bottom:15px;
	}
	.contents_right .sns_button{
		width:300px;
		height:135px;
		background: url(../img/parts/sns_bg.png);
		background-size: 300px 135px;
		margin-bottom:5px;
		padding-top:45px;
		box-sizing: border-box;
	}
	.contents_right .sns_button ul { text-align: center; }
	.contents_right .sns_button ul li{
		display: inline-block;
		width:65px;
		height:65px;
		border-radius: 50%;
		margin:0 2px;
	}
	.contents_right .sns_button ul li.youtube{
		background-image: url(../img/parts/sns_youtube.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.twitter{
		background-image: url(../img/parts/sns_twitter.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.sns_x{
		background-image: url(../img/parts/sns_x.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.instagram{
		background-image: url(../img/parts/sns_instagram.png);
		background-size: cover;
	}
	.contents_right .sns_button ul li.tiktok{
		background-image: url(../img/parts/sns_tiktok.png?1);
		background-size: cover;
	}

	.contents_right .sns_button ul li a{
		display:block;
		width:100%;
		height:100%;
	}
	.contents_right .sns_button ul li a:hover{
		background:rgba(255,255,255,0.3)
	}
	
	.snsNotes {margin-bottom:25px; font-size: 0.8em;}

	.contents_right .info_net{
		background: rgba(255,255,255,0.65);
		padding:10px;
		position: relative;
	}
	.contents_right .info_net .frame{
		background: rgba(255,255,255,1);
		font-size: 87.5%;
		line-height: 1.5em;
		padding:40px 10px 10px 10px;
		text-align: left;
	}
	.contents_right .info_net h3{
		display: block;
		position:absolute;
		top:-10px;
		left:40px;
		width:222px;
		height:40px;
		text-align: left;
		background:url(../img/parts/h3_info_net.png) no-repeat;
		background-size:cover;
	}
	/*	menu
	============================== */

	.menu {
		height:70px;
		background-color: #ffcc00;
		z-index:2;
	}
	.menu nav {
		display:block;
		width:900px;
		height:70px;
		margin:0 auto;
		position: relative;
ekakura
		z-index:4;
	}
	.menu .menubg{
		position: absolute;
		width:1100px;
		height:175px;
		top:-50px;
		left:-108px;
		background:url(../img/parts/menu_bg.png);
		background-size: 1100px 175px;
		z-index:3;
	}
	.menu ul li.nolink a {
		cursor:default;
	}
	.menu ul {
		display:block;
		position: relative;
		width:900px;
		/* height:60px; */
		/* border-left:1px solid hsla(0,0%,0%,0.1);
		border-right:1px solid hsla(0,0%,100%,0.25);
		-webkit-box-sizing:border-box;
		-moz-box-sizing:border-box;
		box-sizing:border-box; */
		margin:0 auto;
		font-size: 0;
		overflow: hidden;
		z-index:5;
	}
	.menu ul li {
		display:inline-block;
		float:left;
		height:55px;
		background: url(../img/parts/menu_button.png) no-repeat;
		background-size:865px 110px;

	}
	.menu ul li a > span {
		/* display:block; */
		text-indent: -9999px;
	}
	.menu ul li a {
		display:block;
		width:100%;
		height:100%;
		text-decoration:none;
	}
	.menu ul li.menu1 {width:156px; background-position: 0 0;}
	.menu ul li.menu2 {width:250px; background-position: -156px 0;}
	.menu ul li.menu3 {width:158px; background-position: -406px 0;}
	.menu ul li.menu4 {width:132px; background-position: -564px 0;}
	.menu ul li.menu5 {width:159px; background-position: -696px 0;}

	.menu ul li.menu1:hover {background-position: 0 -55px;}
	.menu ul li.menu2:hover {background-position: -156px -55px;}
	.menu ul li.menu3:hover {background-position: -406px -55px;}
	.menu ul li.menu4:hover {background-position: -564px -55px;}
	.menu ul li.menu5:hover {background-position: -696px -55px;}

	.menu ul li.menu2.nolink:hover {background-position: -156px 0;}

	/* .menu ul li:not(.nolink) a:hover{
		background-color: rgba(255,255,255,0.3);
	} */
	/* .menu ul li a > span {
		padding:0 0.5em;
	} */

	/*	heading
	============================== */
	.heading{
		display:block;
		height:342px;
		margin-top: 10px;
		margin-bottom: 20px;
		background:linear-gradient(180deg,rgba(0,0,0,1) 195px,rgba(0,0,0,0) 195px);
	}
	.heading .photo{
		display: block;
		width: 960px;
		height: 195px;
		background: #000;
		position: relative;
		background-size: 960px 195px;
	}
	.heading h1{
		display: block;
		width: 960px;
		height: 85px;

	}
	.news .heading h1{
		background-size: 960px 75px;
	}

	/*	banner rect
	============================== */
	.bn-recta{

	}
	/*	footer
	============================== */
	footer{
		display: block;
		padding:20px 20px 40px;
		color:#630;
		font-size: 85%;
		line-height:1.5em;
		background: #fc0;
	}
	footer a{
		color:#930;
		text-decoration: none;
	}
	footer a:hover{
		text-decoration: underline;
	}
	/* 	footer sns_button
	============================== */
	footer .sns_button{
		height:25px;
		padding:0;
		margin-bottom: 15px;
		overflow: hidden;
	}
	footer .sns_button iframe{
		margin-top: -1px;
		margin-right: 10px;
	}
	footer .sns_button iframe:last-child{
		margin-right: 0;
	}
}/* /PC */
/*	back to top
============================== */
p.backtotop {
	z-index:20;
	-webkit-transition-duration:300ms;
	-webkit-transition-timing-function:ease-in-out;
	transition-duration:300ms;
	transition-timing-function:ease-in-out;
}
p.backtotop a, p.backtotop span {
	display:block;
}
p.btot-on, p.btot-off {
	position:fixed;
}
/* スマホ */
@media all and (max-width: 767px) {
	/* p.backtotop {
		transition-property:bottom;
	}
	p.btot-on {
		right:40px;
		bottom:40px;
	}
	p.btot-off {
		right:40px;
		bottom:-120px;
	}
	p.backtotop a {
		background:#000 url(../img/parts/pagetop.png);
		background-size: cover;
		background-repeat:no-repeat;
		background-position:left top;
		width:80px;
		height:80px;
		text-indent:110%;white-space:nowrap;overflow:hidden;
		border-radius: 50%;
	} */
	p.backtotop {
		min-width:320px;
		transition-property:bottom;
	}
	p.btot-on, p.btot-off {
		width:100%;
	}
	p.btot-on {
		bottom:0;
	}
	p.btot-off {
		bottom:-40px;
	}
	p.backtotop a {
		position:relative;
		text-decoration:none;
		color:#fff;
		text-shadow:0 2px 2px hsla(0, 0%, 0%, .25);
		background-color:hsla(0,0%,0%,0.8);
		height:40px;
	}
	p.backtotop a span {
		position:absolute;
		left:50%;
		top:50%;
		margin-top:-0.5em;
		margin-left:-5em;
		font-size:83%;
		font-weight:bold;
	}
	p.backtotop a span:before {
		position:absolute;
		left:50%;
		top:50%;
		margin-top:-8px;
		margin-left:-7em;
		display:block;
		content:"";
		background-image:url(../img/parts/pagetop_smp.png);
		background-size: cover;
		background-repeat:no-repeat;
		background-position:left top;
		width:16px;
		height:16px;
		background-color:#fc0;
		border-radius:8px;
	}
}/* /スマホ */
/* PC */
@media all and (min-width: 768px) {
	p.backtotop {
		transition-property:bottom;
	}
	p.btot-on {
		right:40px;
		bottom:40px;
	}
	p.btot-off {
		right:40px;
		bottom:-120px;
	}
	p.backtotop a {
		background:#000 url(../img/parts/pagetop.png);
		background-size: cover;
		background-repeat:no-repeat;
		background-position:left top;
		width:80px;
		height:80px;
		text-indent:110%;white-space:nowrap;overflow:hidden;
		border-radius: 50%;
	}
}/* /PC */


/*	figure
============================== */
/* スマホ */
@media all and (max-width: 767px) {
	.contents_left .frame article .figure_1{
		position: absolute;
		width:55px;
		height:75px;
		background: url(../img/parts/figure_1.png);
		background-size:cover;
		right:-10px;
		top:-13px;
		z-index:2
	}
	.contents_left .frame article .figure_2{
		position: absolute;
		width:55px;
		height:75px;
		background: url(../img/parts/figure_2.png);
		background-size:cover;
		right:-10px;
		top:-13px;
		z-index:2
	}
	.contents_left .frame article .figure_3{
		position: absolute;
		width:70px;
		height:96px;
		background: url(../img/parts/figure_3.png);
		background-size:cover;
		right:-10px;
		top:-13px;
		z-index:2
	}
	.contents_left .frame article .figure_4{
		position: absolute;
		width:55px;
		height:83px;
		background: url(../img/parts/figure_4.png);
		background-size:cover;
		right:-10px;
		top:-13px;
		z-index:2
	}
	.contents_left .frame article .figure_5{
		position: absolute;
		width:56px;
		height:97px;
		background: url(../img/parts/figure_5.png);
		background-size:cover;
		right:-10px;
		top:-13px;
		z-index:2
	}
	.contents_left .frame article .figure_6{
		position: absolute;
		width:49px;
		height:84px;
		background: url(../img/parts/figure_6.png);
		background-size:cover;
		right:-10px;
		top:-13px;
		z-index:2
	}
}
/* PC */
@media all and (min-width: 768px) {
	.contents_left .frame article .figure_1{
	position: absolute;
	width:77px;
	height:109px;
	background: url(../img/parts/figure_1.png);
	background-size:cover;
	right:-50px;
	top:-20px;
	z-index:2
	}
	.contents_left .frame article .figure_2{
	position: absolute;
	width:78px;
	height:109px;
	background: url(../img/parts/figure_2.png);
	background-size:cover;
	right:-50px;
	top:-20px;
	z-index:2
	}
	.contents_left .frame article .figure_3{
	position: absolute;
	width:100px;
	height:137px;
	background: url(../img/parts/figure_3.png);
	background-size:cover;
	right:-50px;
	top:-20px;
	z-index:2
	}
	.contents_left .frame article .figure_4{
	position: absolute;
	width:78px;
	height:118px;
	background: url(../img/parts/figure_4.png);
	background-size:cover;
	right:-50px;
	top:-20px;
	z-index:2
	}
	.contents_left .frame article .figure_5{
	position: absolute;
	width:80px;
	height:139px;
	background: url(../img/parts/figure_5.png);
	background-size:cover;
	right:-50px;
	top:-20px;
	z-index:2
	}
	.contents_left .frame article .figure_6{
	position: absolute;
	width:70px;
	height:120px;
	background: url(../img/parts/figure_6.png);
	background-size:cover;
	right:-50px;
	top:-20px;
	z-index:2
	}
}
@media print{
  #page-top .header .top_header_bg{
		display: none;
	}
}
