@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);



/* reset style
----------------------------------------------------------- */

html {
	overflow-y:scroll;
}
body,div,
dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin:0;
	padding:0;
}
body,x:-moz-broken {
	margin-left:-1px;
}
h1,h2,h3,h4,h5,h6,p {
	font-weight:normal;
	font-size: 100%;
	text-align:left;
}
ol,ul,li{
	list-style:none;
}
ul,li,img{
	margin:0;
	padding:0;
	list-style:none;
	vertical-align:bottom;
	line-height:1.6;
	text-align:left;
}
caption,th {
	text-align:left;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
a{
	text-decoration:none;
	outline:0;
	line-height:1.6;
/* Hides from IE-mac \*/
	overflow:hidden;
/* End hide from IE-mac */
}

img,td,th {
	border:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
td,th{
	text-align: left;
	vertical-align: top;
}


/* CLEAR FIX*/
.clearfix:after,
p.text:after{
	content: ".";  
	display: block;  
	visibility: hidden;  
	height: 0.1px;  
	font-size: 0.1em;  
	line-height: 0;  
	clear: both;  
}
.clearfix,
p.text{display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%;}
* html p.text { height: 1%;}
.clearfix,
p.text{display: block;}
/* End hide from IE-mac */



/* function
----------------------------------------------------------------------------------*/
/* margin */
.mt0  {margin-top:0px!important;}
.mt5  {margin-top:5px!important;}
.mt10 {margin-top:10px!important;}
.mt15 {margin-top:15px!important;}
.mt20 {margin-top:20px!important;}
.mt25 {margin-top:25px!important;}
.mt30 {margin-top:30px!important;}
.mt40 {margin-top:40px!important;}
.mt50 {margin-top:50px!important;}
.mt100 {margin-top:100px!important;}
.mt150 {margin-top:150px!important;}

.mb0  {margin-bottom:0px!important;}
.mb5  {margin-bottom:5px!important;}
.mb10 {margin-bottom:10px!important;}
.mb15 {margin-bottom:15px!important;}
.mb20 {margin-bottom:20px!important;}
.mb25 {margin-bottom:25px!important;}
.mb30 {margin-bottom:30px!important;}
.mb40 {margin-bottom:40px!important;}
.mb50 {margin-bottom:50px!important;}
.mb100 {margin-bottom:100px!important;}
.mb150 {margin-bottom:150px!important;}

.mr0  {margin-right:0px!important;}
.mr5  {margin-right:5px!important;}
.mr10 {margin-right:10px!important;}
.mr15 {margin-right:15px!important;}
.mr20 {margin-right:20px!important;}
.mr25 {margin-right:25px!important;}
.mr30 {margin-right:30px!important;}

.ml0  {margin-left:0px!important;}
.ml5  {margin-left:5px!important;}
.ml10 {margin-left:10px!important;}
.ml15 {margin-left:15px!important;}
.ml20 {margin-left:20px!important;}
.ml25 {margin-left:25px!important;}
.ml30 {margin-left:30px!important;}

/* padding */
.pt0  {padding-top:0px!important;}
.pt5  {padding-top:5px!important;}
.pt10 {padding-top:10px!important;}
.pt15 {padding-top:15px!important;}
.pt20 {padding-top:20px!important;}
.pt25 {padding-top:25px!important;}
.pt30 {padding-top:30px!important;}

.pb0  {padding-bottom:0px!important;}
.pb5  {padding-bottom:5px!important;}
.pb10 {padding-bottom:10px!important;}
.pb15 {padding-bottom:15px!important;}
.pb20 {padding-bottom:20px!important;}
.pb25 {padding-bottom:25px!important;}
.pb30 {padding-bottom:30px!important;}

.pr0  {padding-right:0px!important;}
.pr5  {padding-right:5px!important;}
.pr10 {padding-right:10px!important;}
.pr15 {padding-right:15px!important;}
.pr20 {padding-right:20px!important;}
.pr25 {padding-right:25px!important;}
.pr30 {padding-right:30px!important;}

.pl0  {padding-left:0px!important;}
.pl5  {padding-left:5px!important;}
.pl10 {padding-left:10px!important;}
.pl15 {padding-left:15px!important;}
.pl20 {padding-left:20px!important;}
.pl25 {padding-left:25px!important;}
.pl30 {padding-left:30px!important;}

.taL{text-align:left!important;}
.taR{text-align:right!important;}
.taC{text-align:center!important;}

.fR{float:right!important;}
.fL{float:left!important;}

.clear{clear:both!important;}
.wrap{overflow:hidden;zoom:1;}

.fs12{font-size:85.714%!important;}
.c-green{color:#346238;}
.fb{font-weight: bold;}


ul.dib,
dl.dib{
	letter-spacing:-0.4em;
}
ul.dib li,
dl.dib dt,
dl.dib dd{
	display:inline-block;
	*display:inline;
	vertical-align:top;
	letter-spacing:normal;
	zoom:1;
}



/* common
------------------------------------------------------*/

body {
	margin:0;
	padding:0;
	font-size:16px;
	font-family: "ヒラギノ角ゴ Pro",Hiragino Kaku Gothic Pro,"メイリオ",Meiryo,"MS Pゴシック",MS PGothic,sans-serif;
	line-height:1.8;
	color:#464646;
	vertical-align:top;
	background-color:#ffffff;
	-webkit-text-size-adjust:100%;
}

a{
	position:relative;
	z-index:999;
	transition:all 0.3s linear;
}
a:link   {color:#529500;text-decoration:underline;}
a:visited{color:#529500;text-decoration:underline;}
a:hover  {color:#ff6400;text-decoration:none;}
a:active {color:#529500;text-decoration:underline;}

a:hover img{
    opacity:0.50!important;
    filter: alpha(opacity=50);
	transition: all 0.3s linear;
}
input{
	font-family: "ヒラギノ角ゴ Pro",Hiragino Kaku Gothic Pro,"メイリオ",Meiryo,"MS Pゴシック",MS PGothic,sans-serif;
}
img{max-width:100%;height:auto;}
.pc {display: block!important;}
.sp,
.tb {display: none!important;}
@media screen and (max-width: 990px) {
	.tb {display: block!important;}
}
@media screen and (max-width: 640px) {
	.pc {display: none!important;}
	.sp {display: block!important;}
}


a[href*="mailto:"] {
	color:#464646;
	cursor: default;
	text-decoration: none;
}
@media (min-width: 751px) {
	a[href*="tel:"] {
		color:#464646;
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}

p.note,
span.note{
	font-size:12px;
	line-height:1.5;
}

/* fade-in animation */
div,ul,h2,p,img{
  transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -webkit-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
}
body {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

#pagetop_btn,
#pagetop_btn img{
	opacity:1!important;
}


/* btn */
.btn {
	width:100%;
	display:block;
}
.btn a{
	width:40%;
	min-width:350px;
	display:block;
	margin:0 auto;
	padding:15px;
	color:#fff;
	font-size:22px;
	font-weight:bold;
	text-align:center;
	border-radius:30px;
	-webkit-border-radius:30px;
	-moz-border-radius:30px;
	-ms-border-radius:30px;
	background-color:#cd3c5a;
	transition:all 0.3s linear;
}
@media screen and (max-width: 640px) {
    .btn a{
        min-width:230px;
    }
}
.btn a:hover{
	background-color:#ff6400;
}
.btn2 {
	width:100%;
	display:block;
}
.btn2 a{
	display:block;
	margin:0 2px 0 0;
	padding:3px;
	text-decoration: none;
	color:#63b41d;
	text-align:center;
	border: 1px solid #63b41d;
	border-radius:30px;
	-webkit-border-radius:30px;
	-moz-border-radius:30px;
	-ms-border-radius:30px;
	background-color:#ffffff;
	transition:all 0.3s linear;
	white-space: nowrap;
	font-size: 12px;
}
.btn2 a:hover{
	background-color:#63b41d;
	color: #ffffff;
	text-decoration: none;
}

/* animation */
@keyframes bainbain {
  0% {margin-top:0;margin-bottom:0;}
  50% {margin-top:-20px;margin-bottom:20px;}
  100% {margin-top:-0;margin-bottom:0;}
}

@media screen and (max-width: 1280px) {
	.btn a{
		width:60%;
	}
}
@media screen and (max-width: 880px) {
	.btn a{
		width:85%;
		font-size:20px;
	}
}
@media screen and (max-width: 540px) {
	.btn a{
		font-size:18px;
	}
}

.stop{
	position:relative!important;
	color:#ccc!important;
	text-decoration:none!important;
	pointer-events:none!important;
	background:grey!important;
	transition:all 0.3s linear!important;
	overflow:visible!important;
}
.stop:after{
	content:"只今メンテナンス中です。";
	width:14em;
	position:absolute;
	top:-40px;
	right:-25px;
	display:block;
	padding:5px 10px;
	color:white;
	font-size:14px;
	font-weight:bold;
	text-align:center;
	border-radius:30px;
	-webkit-border-radius:30px;
	-moz-border-radius:30px;
	-ms-border-radius:30px;
	background-color:#cd3c5a;
	z-index:99999;
}



/* structure
---------------------------------------- */
div#header,
div#footer{
	clear:both;
	position:relative;
	margin:0 auto;
	/*padding:5px 30px;*/
	z-index:1;
}
div#header{
	z-index:999999;
}
div#footer{
	margin:150px auto 0;
	padding:30px;
	text-align:center;
}
div#container{
	width:100%;
	margin:0 auto;
	padding:0;
}
div#contents{
	width:80%;
	max-width:1024px;
	margin:0 auto;
	padding:0;
}
.section{
	width:100%;
	position:relative;
	margin:0 auto 120px;
	padding:0;
	overflow:hidden;
}

@media screen and (max-width: 1054px) {
	div#contents{
		width:95%;
		max-width:none;
	}
}
@media screen and (max-width: 680px) {
	div#footer{
		padding:15px;
	}
}

/* header
---------------------------------------- */
#header .header-top{
	position: relative;
	padding: 30px;
}
#header .header-top #logo{
	width: 400px;
}
#header .header-top #logo a{
	display: block;
}
#header .header-top #logo a img{
	vertical-align: middle;
}
#header .header-top .btn-register{
	position: absolute;
	top: 20px;
	right: 20px;
	max-width: 240px;
}
#header .header-top .btn-register a{
	width: auto;
	min-width: inherit;
	max-width: 240px;
}

.btn_menu {
	display:none;
    position: fixed;
    top:15px;
    right:20px;
}

@media screen and (max-width: 990px) {
	#header .header-top{
		padding: 10px 20px;
	}
	#header .header-top #logo{
		width: 300px;
	}
	#header .header-top .btn-register{
		top: 7px;
		right: 70px;
		max-width: 150px;
	}
	#header .header-top .btn-register a{
		max-width: 150px;
		padding: 10px;
		font-size: 16px;
	}
	#header .header-top .btn-register a img{
		width: 30px;
		height: auto;
	}
	.btn_menu {
		display:block!important;
		top:5px;
		right:7px;
		z-index: 99999;
	}
}

@media screen and (max-width: 640px) {
	#header .header-top{
		padding: 15px 10px;
	}
	#header .header-top #logo{
		width: 180px;
	}
	#header .header-top .btn-register{
		top: 15px;
		max-width: 100px;
	}
	#header .header-top .btn-register a{
		max-width: 100px;
		padding: 5px;
		font-size: 12px;
	}
	#header .header-top .btn-register a img{
		width: 24px;
		height: auto;
		vertical-align: top;
	}
}

@media screen and (max-width: 375px) {
	#header .header-top #logo{
		width: 120px;
	}
}


/* ttl
---------------------------------------- */

h2.ttl{
	margin:0 auto 30px;
	font-size:30px;
	font-weight:bold;
	text-align:center;
}

h3.sttl{
	max-width:1280px;
	margin:0 auto 15px;
	padding:5px 0 2px;
	color:#fff;
	font-size:24px;
	text-align:center;
	border-radius:25px;
	-webkit-border-radius:25px;
	-moz-border-radius:25px;
	-ms-border-radius:25px;
	background-color:#64b41e;
}
.ttl3 {
	max-width:1280px;
  background: #63b41d;
  padding: 10px 15px;
  margin: 0 auto;
  border-radius: 10px 10px 0 0;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
}

@media screen and (max-width: 1054px) {
	h2.ttl{
		font-size:28px;
	}
	h3.sttl{
		font-size:20px;
	}
}
@media screen and (max-width: 990px) {
	h2.ttl{
		font-size:24px;
	}
}

/* icon
---------------------------------------- */
.icon {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 7px;
	margin-left: 10px;
	font-size: 14px;
	font-weight: bold;
}
.icon-red {
	color: #CD3C5A;
	background-color: #f4dce1;
}


/* slider
---------------------------------------- */
.slider ul li:nth-child(1){background-image:url(../img/slide/visual.png);}
.slider ul li:nth-child(2){background-image:url(../img/slide/event.png);}
.slider ul li:nth-child(3){background-image:url(../img/slide/event2.png);}
.slider ul li:nth-child(4){background-image:url(../img/slide/event3.png);}

.webp .slider ul li:nth-child(1){background-image:url(../img/slide/visual.webp);}
.webp .slider ul li:nth-child(2){background-image:url(../img/slide/event.webp);}
.webp .slider ul li:nth-child(3){background-image:url(../img/slide/event2.webp);}
.webp .slider ul li:nth-child(4){background-image:url(../img/slide/event3.webp);}

@media screen and (max-width: 1280px) {
	.slider ul li:nth-child(1){background-image:url(../img/slide/visual1500.png);}
	.slider ul li:nth-child(2){background-image:url(../img/slide/event_1500.png);}
	.slider ul li:nth-child(3){background-image:url(../img/slide/event2_1500.png);}
	.slider ul li:nth-child(4){background-image:url(../img/slide/event3_1500.png);}
	
	.webp .slider ul li:nth-child(1){background-image:url(../img/slide/visual1500.webp);}
	.webp slider ul li:nth-child(2){background-image:url(../img/slide/event_1500.webp);}
	.webp .slider ul li:nth-child(3){background-image:url(../img/slide/event2_1500.webp);}
	.webp .slider ul li:nth-child(4){background-image:url(../img/slide/event3_1500.webp);}
}
@media screen and (max-width: 960px) {
	.slider ul li:nth-child(1){background-image:url(../img/slide/visual1200.png);}
	.slider ul li:nth-child(2){background-image:url(../img/slide/event_1200.png);}
	.slider ul li:nth-child(3){background-image:url(../img/slide/event2_1200.png);}
	.slider ul li:nth-child(4){background-image:url(../img/slide/event3_1200.png);}
	
	.webp .slider ul li:nth-child(1){background-image:url(../img/slide/visual1200.webp);}
	.webp .slider ul li:nth-child(2){background-image:url(../img/slide/event_1200.webp);}
	.webp .slider ul li:nth-child(3){background-image:url(../img/slide/event2_1200.webp);}
	.webp .slider ul li:nth-child(4){background-image:url(../img/slide/event3_1200.webp);}
}
@media screen and (max-width: 800px) {
	.slider ul li:nth-child(1){background-image:url(../img/slide/visual1000.png);}
	.slider ul li:nth-child(2){background-image:url(../img/slide/event_1000.png);}
	.slider ul li:nth-child(3){background-image:url(../img/slide/event2_1000.png);}
	.slider ul li:nth-child(4){background-image:url(../img/slide/event3_1000.png);}
	
	.webp .slider ul li:nth-child(1){background-image:url(../img/slide/visual1000.webp);}
	.webp .slider ul li:nth-child(2){background-image:url(../img/slide/event_1000.webp);}
	.webp .slider ul li:nth-child(3){background-image:url(../img/slide/event2_1000.webp);}
	.webp .slider ul li:nth-child(4){background-image:url(../img/slide/event3_1000.webp);}
}
@media screen and (max-width: 540px) {
	.slider ul li:nth-child(1){background-image:url(../img/slide/visual540.png);}
	.slider ul li:nth-child(2){background-image:url(../img/slide/event_540.png);}
	.slider ul li:nth-child(3){background-image:url(../img/slide/event2_540.png);}
	.slider ul li:nth-child(4){background-image:url(../img/slide/event3_540.png);}
	
	.webp .slider ul li:nth-child(1){background-image:url(../img/slide/visual540.webp);}
	.webp .slider ul li:nth-child(2){background-image:url(../img/slide/event_540.webp);}
	.webp .slider ul li:nth-child(3){background-image:url(../img/slide/event2_540.webp);}
	.webp .slider ul li:nth-child(4){background-image:url(../img/slide/event3_540.webp);}
}

/* global_navi
---------------------------------------- */

div#global_navi{
	width:100%;
	margin:0 auto;
	transition:all 0.3s linear;
}

div#global_navi ul{
	text-align:center;
	background-color:#64b41e;
}
div#global_navi ul li a{
	display:block;
	padding:20px 12px 17px;
	color:#fff;
	transition:all 0.3s linear;
}
div#global_navi ul li a:hover{
	background-color:#ff6400;
}

div#global_navi.fixed{
	position:fixed;
	top:0;
}
div#global_navi.fixed ul li a{
	padding:7px 20px 6px;
}
div#global_navi ul .manager {
    background-color:#cd3c5a;
}

@media screen and (max-width:990px){
	div#global_navi{
	}
	div#global_navi ul{
		display:none;
		width:100%;
		position:fixed;
		top:0;
		left:0;
		z-index:9999;
	}
	div#global_navi ul li{
		width:100%;
		border-bottom:1px #fff solid;
	}
	div#global_navi ul li a{
		width:100%;
	}
}

/* sitenavi
----------------------------------------------------------- */
ul#sitenavi{
	margin-bottom:60px;
	padding:5px 5%;
	background-color:#fcf8f4;
}
ul#sitenavi li{
	margin-right:15px;
	padding-left:10px;
	background:url(../img/arr.png) no-repeat left 0.5em;
}
ul#sitenavi li.home{
	padding-left:20px;
	background:url(../img/home.png) no-repeat left 0.2em;
}

@media screen and (max-width: 640px) {
	ul#sitenavi{
		margin-bottom:30px;
		padding:5px 15px;
		font-size:12px;
	}
}
@media screen and (max-width: 510px) {
	ul#sitenavi{
		display:none;
	}
}


/* pager
-----------------------------------------------*/
ul#pager{
	width:auto;
	padding:30px 0;
	border-top:1px #ccc solid;
}
ul#pager li{
	min-width:4em;
	margin:0 10px 10px 0;
}
ul#pager li.next,
ul#pager li.prev{
	min-width:8em;
}
ul#pager li.list{
	min-width:10em;
	float:right;
}
ul#pager li a,
ul#pager li span{
	width:100%;
	display:block;
	margin:0 auto;
	padding:8px 0;
	color:#fff;
	text-align:center;
	border-radius:20px;
	-webkit-border-radius:20px;
	-moz-border-radius:20px;
	-ms-border-radius:20px;
	background:none!important;
	background-color:#cd3c5a!important;
	transition:all 0.3s linear;
}
ul#pager li a:hover{
	background-color:#ff6400!important;
}
ul#pager li span{
	color:#646464;
	background-color:#ddd!important;
}
/* form
----------------------------------------------------------- */
input[type=checkbox],
input[type=radio]{
	width:20px;
	height:20px;
}


/* footer
----------------------------------------------------------- */
p#pagetop_btn{
	width:114px;
	position:fixed;
	bottom:30px;
	right:30px;
	font-size:12px;
	z-index:1000;
}
p#pagetop_btn a{
	width:114px;
	display:block;
	padding:75px 0 0 0;
	text-align:center;
	background:url(../img/pagetop.png) no-repeat center top;
}
p#pagetop_btn a:hover{
	animation: bainbain 1s ease-in-out infinite;
}
@media screen and (max-width:660px){
	p#pagetop_btn{
		width:8em;
		bottom:10px;
		right:10px;
	}
	p#pagetop_btn a{
		width:8em;
		padding-top:45px;
		background-image:url(../img/pagetop_sp.png);
	}
}
div#footer p.logo{
	margin:0 auto 30px;
	font-family: 'Noto Sans Japanese';
	font-size:16px;
	text-align:center;
}
div#footer p.logo span{
	display:block;
	margin-bottom:10px;
	font-size:30px;
	font-weight:bold;
	text-align:center;
	line-height:1.4;
}
div#footer p.logo a{
	text-align:center;
}
div#footer p.btn{
	margin:30px auto;
}
div#footer ul#fnavi{
	margin:0 auto 30px;
	text-align:center;
}
div#footer ul#fnavi li{
	margin:0 10px;
}
div#footer p#add{
	text-align:center;
}
div#footer p#add small{
	display:block;
	margin:30px auto;
}
@media screen and (max-width:680px){
	div#footer p.logo {
		font-size: 2.4vw;
	}
	div#footer p.logo span {
		font-size: 4vw;
	}
}
@media screen and (max-width:510px){
	div#footer p.logo {
		font-size: 2.8vw;
	}
	div#footer p.logo span {
		margin-bottom:5px;
		font-size: 4.8vw;
	}
}
@media screen and (max-width:350px){
	div#footer p.logo span {
		font-size: 4.6vw;
	}
}





/* temporary style
----------------------------------------------------------- */
/*div#global_navi li.manager,
div#footer ul#fnavi li:nth-child(2){display:none;}*/

