@charset "utf-8";
/*
====================================================
	
	baseLayout.css
	
	CSS basic layput setting
	全ページに適用
	
====================================================
*/

#page-top {
    position: fixed;
    right: 40px;
	z-index:9999;
	font-family: 'Montserrat';
	font-style: italic;
	letter-spacing:.06em;
    font-size: 77%;
}
#page-top a {
    background: #DA4145;
    text-decoration: none;
    color: #fff;
    width: 70px;
    padding:27px 0;
    text-align: center;
    display: block;
}

#page-top img {width: 20px;}
#page-top span{border-bottom: 2px solid #FFF;padding-bottom: 3px;}


header{width: 100%; text-align: center; margin: 32px 0 32px 0;}
@-moz-document url-prefix() {
header{width: 100%; text-align: center; margin: 32px 0 30px 0;}

}


/*---------------------------------------------------
	# Header
---------------------------------------------------*/

header .snsarea{position: absolute; top:60px; left:55px;}
header .snsarea .facebook{ width: 9px;  margin-right:35px;}
header .snsarea .facebook img{ width: 9px; height: auto;}
header .snsarea .twitter{ width: 23px;  margin-right:35px;}
header .snsarea .twitter img{ width: 23px; height: auto;}
header .snsarea .insta{ width: 16px;  margin-right:35px;}
header .snsarea .insta img{ width: 16px; height: auto;}


header .menuarea{ width:145px; height: 137px; position: absolute; top: 0; right: 0; background-color: #46F2AD; z-index: 99999;}
header .menuarea a{ width:145px; height: 137px; }
header .menuarea a:hover .menu-line span{background-color: #46F2AD;}


/* ハンバーガーメニュー*/ 
.menu-line,
.menu-line span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-line {
  position: relative;
	z-index: 2;
  top:50px;
  width: 38px;
  height:26px;
}
.menu-line span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
}
.menu-line span:nth-of-type(1) {
  top: 0;
}
.menu-line span:nth-of-type(2) {
  top: 12px;
}
.menu-line span:nth-of-type(3) {
  bottom: 0;
}

/* アニメーション*/
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(12px) rotate(-45deg);
  transform: translateY(12px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-12px) rotate(45deg);
  transform: translateY(-12px) rotate(45deg);
}


/* ナビゲーション */
#navigation{
  position: fixed;
  display: none;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
  background-color: #46F2AD;
  z-index: 99998;
}
#navigation .navigation_inner{
  display: table;
  width: 100%;
  height: 100%;
}
#navigation .navigation_inner ul{margin: 0;padding: 0;}


#navigation .navigation_inner .navigation_menu{
  display: table-cell;
  vertical-align: middle;
	list-style: none;
	text-align: center;
}

#navigation .navigation_inner .navigation_menu .menu01 img{ width: 128px; height: auto; transition: all 400ms 0s ease;}
#navigation .navigation_inner .navigation_menu .menu02 img{ width: 140px; height: auto; transition: all 400ms 0s ease;}
#navigation .navigation_inner .navigation_menu .menu03 img{ width: 99px; height: auto; transition: all 400ms 0s ease;}
#navigation .navigation_inner .navigation_menu .menu04 img{ width: 133px; height: auto; transition: all 400ms 0s ease;}
#navigation .navigation_inner .navigation_menu .menu05 img{ width: 145px; height: auto; transition: all 400ms 0s ease;}
#navigation .navigation_inner .navigation_menu .copyright{ color: #FFF; font-size: 10px; padding-top:50px;}

#navigation .navigation_inner .navigation_menu .navigation_item{
  width: 100%;
  margin: 0 auto 0 auto;
}
#navigation .navigation_inner .navigation_menu .navigation_item:first-child{
  margin-top: 0;
}
#navigation .navigation_inner .navigation_menu .navigation_item a{
  display: block;
  padding: 35px 0 35px 0;
  border-bottom: 1px solid #90F7CD;
  position: relative;
  text-decoration: none;
  line-height: ;
  text-align: center;
	-webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}

#navigation .navigation_inner .navigation_menu .navigation_item a:hover{
	background-color: #74F5C2;
	-webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}

#navigation .navigation_inner .navigation_menu .navigation_item a::after{
	  position: absolute;
  left: 35%;
  top: 7vh;
  content: '';
  width: 40px;
  height: 1px;
  background: #FFF;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;

}
#navigation .navigation_inner .navigation_menu .navigation_item a:hover::after{
	transform: scale(1, 1);
}

#navigation .navigation_inner .navigation_menu .navigation_item a:hover img{
	margin-left: 40px;
	transition: all 300ms 0s ease;
}


/*---------------------------------------------------
	# SVGボタン / About
---------------------------------------------------*/

/*  SVG 色サイズ設定*/
.my_svg01{
	width: 130px;
	height: auto;
	margin-top:30px;
}
.my_svg01 path{
    color:#46F2AD;
    fill: currentColor;
	transition: all 0.1s ease;
}
.my_svg01 .st0{fill:#46F2AD;}


/*  ボタンアニメーション */

.btn_about {
  background: #151818;
  text-align: center;
  width: 200px;
  height: 71px;
  color: #46F2AD!important;
  outline: none !important;
  cursor: pointer;
  transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
  position: relative;
  display: inline-block;
}

.btn_about {
  z-index: 1;
}
.btn_about:after {
  position: absolute;
  content: "";
  width: 0;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1;
  background: #46F2AD;
  transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
}
.btn_about:hover {
  color: #151818!important;
}


.btn_about:hover:after {
	left: 0%;
	right: auto;
	width: 100%;
}

.btn_about:active {top: 0;}


/*　hover時のSVGカラー*/
.btn_about:hover .my_svg01 .st0{
	fill:#151818;
	transition: all 0.1s ease;
}


/*---------------------------------------------------
	# SVGボタン / Detail
---------------------------------------------------*/

/*  SVG 色サイズ設定*/
.my_svg02{
	width: 66px;
	height: auto;
	margin-top:11px; 
}
.my_svg02 path{
    color:#46F2AD;
    fill: currentColor;
	transition: all 0.1s ease;
}
.my_svg02 .st0{fill:#46F2AD;}

/*  ボタンアニメーション */

.btn_detail {
  background: #151818;
  text-align: center;
  width: 138px;
  height: 34px;
  color: #46F2AD!important;
  outline: none !important;
  cursor: pointer;
  transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
  position: relative;
  display: inline-block;
}

.btn_detail {
  z-index: 1;
}
.btn_detail:after {
  position: absolute;
  content: "";
  width: 0;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1;
  background: #46F2AD;
  transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
}
.btn_detail:hover {
  color: #151818!important;
}


.btn_detail:hover:after {
	left: 0%;
	right: auto;
	width: 100%;
}

.btn_detail:active {top: 0;}


/*　hover時のSVGカラー*/
.btn_detail:hover .my_svg02 .st0{
	fill:#151818;
	transition: all 0.1s ease;
}

/*---------------------------------------------------
	# SVGボタン / Form
---------------------------------------------------*/

/*  SVG 色サイズ設定*/
.my_svg03{
	width: 145px;
	height: auto;
	margin-top:32px; 
}
.my_svg03 path{
    color:#151818;
    fill: currentColor;
	transition: all 0.1s ease;
}
.my_svg03 .st0{fill:#151818;}

/*  ボタンアニメーション */

.btn_form {
  background: #46F2AD;
  text-align: center;
  width: 560px;
  height: 80px;
  outline: none !important;
  cursor: pointer;
  transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
  position: relative;
  display: inline-block;
}

.btn_form {
  z-index: 1;
}
.btn_form:after {
  position: absolute;
  content: "";
  width: 0;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1;
  background: #333;
  transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
}
.btn_form:hover {
  color: #46F2AD!important;
}


.btn_form:hover:after {
	left: 0%;
	right: auto;
	width: 100%;
}

.btn_form:active {top: 0;}


/*　hover時のSVGカラー*/
.btn_form:hover .my_svg03 .st0{
	fill:#46F2AD!important;
	transition: all 0.1s ease;
}


/*---------------------------------------------------
スライダー・矢印
---------------------------------------------------*/
#main_slide{padding: 0; margin: 0; position: relative;}
#main_slide .caption01{position: absolute; top: 40%; left: 10%; z-index:99999;}


.bx-wrapper .bx-next {
  right: 0;
  background: url('../images/common/arrow02.png') no-repeat;
	background-size: 70px 140px;
}
.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  background-position: 0 0;
}

.bx-wrapper .bx-prev {
  left: 0;
  background: url('../images/common/arrow01.png') no-repeat;
	background-size: 70px 140px;
}
.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  background-position: 0 0;
}

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 38%;
  margin-top: 0;
  outline: 0;
  width: 70px;
  height: 140px;
  text-indent: -9999px;
  z-index: 9999;
	
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
	
}
.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}


.bx-wrapper .bx-controls-direction a:hover {
	opacity: 0.6;
		-moz-opacity: 0.6;
	-webkit-opacity: 0.6;
	
	  -webkit-transition: all 0.2s;
      -moz-transition: all 0.2s;
      -ms-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s;
}


/*---------------------------------------------------
	# Container
---------------------------------------------------*/

#container{width:100%; height:100%;}

#mainvisual{width:100%;}
#mainvisual .slide {position: relative;}
#mainvisual .slide img{width:100%; min-width: 780px; height:auto;}
#mainvisual .slide a{display: block;}


#mainvisual .prev{position: absolute; top: 43%; left: 0;}
#mainvisual .next{position: absolute; top: 43%; right: 0;}
#mainvisual .dummy{position: absolute; top: 45%; left: 10%;}


.index_news{width: 100%; background-image: url(../images/index_bg.jpg); background-size: cover; background-repeat: no-repeat; padding:80px 0 160px 0; position: relative; background-attachment:fixed; overflow: hidden;}

.aboutarea{width: 100%; position: relative; z-index: 1000;}

.about_btn{position: absolute; top:-35px; right: 60px; }

.news_Area{width:1020px; margin: 20px auto -50px auto;}
.newsblock{width:270px; float: left; margin: 0 35px 50px 35px; position: relative;}
.newsblock .newscate{position: absolute; top:30px; left: -30px; z-index: 100;}

.newsblock .newscopy {width:270px; margin: 220px 0 28px 0;}
.newsblock .newscopy br{display: none;}

.newsblock .newscopy a{color:#151818; font-size: 12px; line-height: 190%;}
.newsblock .newsdate {
	width:90px; color:#151818; background-color: #FFF; padding: 2px 0 1px 0 ;
	font-style: italic; font-size: 11px; text-align: center; position: absolute; top:150px; left: 20px;
}
.newsblock .newsbtn{text-align: right;}


/*---------------------------------------------------
	# article
---------------------------------------------------*/
.article_img{width: 100%; min-height: 300px; max-height: 300px; position: relative; left: -50%;}

.article_img .bgimage {position: relative; width: 100%; height: 300px; left: 50%; z-index: 100; background-position: center top; background-size: contain;}

/*.article_img .bgimage img{width: 100%; min-height: 300px; max-height: 300px;}*/

.article_img .bgimage .bgimage_thum{
	width: 100%; height: 300px;
	background-size: cover; 
	
	background-position-x: 50%;
	background-position-y: 20%;
	/*background-attachment:fixed;*/
	position: relative;
	z-index: 0;
	overflow: hidden;/*ブラー効果でボヤけた部分を非表示*/
	
	opacity: 0.92;
	-moz-opacity: 0.92;
	-webkit-opacity: 0.92;
}


/*:beforeにぼかし効果を設定する*/
.article_img .bgimage .bgimage_thum:before{
  content: '';
  background: inherit;/*.bgImageで設定した背景画像を継承する*/
  -webkit-filter: blur(12px);
  -moz-filter: blur(12px);
  -o-filter: blur(12px);
  -ms-filter: blur(12px);
  filter: blur(12px);
  position: absolute;
  /*ブラー効果で画像の端がボヤけた分だけ位置を調整*/
  top: -12px;
  left: -12px;
  right: -12px;
  bottom: -12px;
  z-index: -1;/*重なり順序を一番下にしておく*/

}



.article_img .article_ttl{width: 100%; text-align: center; position: absolute; top: 44%; left: 50%; z-index: 110;}
.article_img .article_ttl img{width: auto; height: 35px;}

#contentsArea{width:100%; position: relative; z-index: 120;}
.contentsdetail{width:800px; margin: 0 auto 80px auto; font-size: 13px; line-height: 220%; color: #474747; }
.contentsdetail img{max-width:800px; height: auto;}

.news_title{width: 100%; font-size: 18px; color: #474747; line-height: 200%; text-align: center; letter-spacing: .06em;}
.news_title img{ margin: 60px 0 45px 0;}

.news_subttlArea{width: 100%; text-align: center; margin: 40px 0 60px 0;}
.news_subtitle{background-color: #151818; color: #46F2AD; font-size: 13px; padding:12px 14px 12px 14px;}

.newsbody{margin:0;}

.wp-caption {margin: 0; padding: 0;}
.wp-caption-text{
	width:770px; 
	background-color:#F0F0F0; 
	font-size:11px;
	padding: 10px 15px 8px 15px;
	margin:0 0 40px 0; 
	line-height: 180%;
}

.dateArea{margin: 50px 0 0 0; }
.socialbtn{width: 50%; float: left;}
.newsdate{width: 50%; float: left; font-style: italic; font-size: 11px; text-align: right;}

.contents_news{width: 100%; background-image: url(../images/index_bg3.jpg); background-size: cover; background-repeat: no-repeat; 
	padding:80px 0 160px 0; position: relative; }



.contents_newsttl{margin-bottom:70px; text-align: center;}
.contents_newsttl img{width: 185px; height: auto;}


#outlineArea{width: 800px; position: relative; margin: 78px 0 0 0;}
.outlinettl{width: 120px; position: absolute; top: -18px; left: 0; z-index: 120;}

.outline{width: 620px; padding: 45px 50px 30px 50px; background-color: #46F2AD; margin: 0 0 0 80px;}
.outline .left{width: 240px; margin-right: 50px; float: left;}
.outline .right{width: 330px; color: #000; font-size: 11px; line-height: 180%; float: left; margin: -10px 0 0 0;}
.outline .right a{color: #000;}

/* 概要非表示用*/
.cap_none{display: none;}
.pro_none{display: none;}


.article_tagbody{width: 100%; margin: 60px 0 0 0;}
.article_tagbody ul{margin: 0 0 0 -10px; padding: 0;}

.article_tagbody li{list-style: none; float: left; margin: 0 10px 20px 10px; }
.article_tagbody li a{font-size: 10px; text-decoration: none; padding: 2px 10px 1px 10px; line-height:220%;}


.people_QA{margin:50px 0 0 0; padding: 0;}
.people_QA li{margin:0 0 20px 0; list-style: none; min-height:35px; padding:3px 0 0 50px; }


.people_Q{background-image:url(../images/people/icon_q.png);
	background-size: 35px 35px;
	background-repeat: no-repeat;
	background-position: 0 0;
}

.people_A{background-image:url(../images/people/icon_a.png);
	background-size: 35px 35px;
	background-repeat: no-repeat;
	background-position: 0 0;
}


/*---------------------------------------------------
	# Teaser
---------------------------------------------------*/

.teaser_btn{position: absolute; top:60px; right: 60px; z-index: 1000;}
.teaser_preevent{width:260px; position: absolute; top:110px; left: 60px; z-index: 100; text-align: center;}
.teaser_preevent_sp{display: none;}

.teaser_concept{width: 100%; background-image: url(../images/index_bg.jpg); background-size: cover; background-repeat: no-repeat; 
	text-align: center; padding:80px 0 160px 0; position: relative;}

.teaser_conceptbody{width: 980px; margin: 0 auto;}
.teaser_conceptbody .left{width: 550px; float: left; text-align: left;}


.teaser_conceptbody .left .teaser_ttl{width: 246px; position: relative; margin-top:220px; z-index: 100;}
.teaser_conceptbody .left .teaser_bodycopy{width:160px; text-align: left; font-size: 14px; line-height:280%; color: #000; background-color: #46F2AD; padding: 50px 50px 40px 50px; position: relative; margin: -25px 0 0 120px ; z-index: 90;}

.teaser_conceptbody .left .teaser_caption{width: 400px; font-size: 11px; line-height:200%; color: #46F2AD; 
	background-color: #151818; padding:25px; margin-top:220px; }

.teaser_caption_sp{display: none;}


.teaser_conceptbody .left .teaser_dicsarea01{margin: 80px 0 20px 80px;}
.teaser_conceptbody .left .teaser_dicsarea02{margin: 0 0 0 80px;}

.teaser_conceptbody .left .teaser_dics{font-size:10px; line-height:100%; color: #000; 
	background-color: #FFF; padding:10px; }



.teaser_conceptbody .right{width: 360px; float: left; background-color: rgba(255,255,255,0.99); color: #000;
	text-align: left; font-size:12px; line-height:220%; letter-spacing: -.008em; padding: 45px 30px 45px 40px; margin:70px 0 0 0;}

.teaser_profilebody{width: 980px; margin: 0 auto;}
.teaser_profilebody_sp{display: none;}

.teaser_profile{width: 580px; background-color:#FFF; text-align: left; padding: 25px 0 25px 25px; margin:100px 0 0 120px;}
.teaser_profile .left{width: 180px; float: left;}
.teaser_profile .right{width: 370px; float: left; color: #000; font-size: 11px; line-height: 180%; }
.teaser_profile .profilename{font-weight: bold; font-size: 12px; margin: 0 0 6px 0 ;}

.teaser_profile02{width:460px; font-size:10px; line-height: 180%; background-color:#FFF; text-align: left; 
	padding: 25px 0 25px 25px; margin:100px 0 0 355px;}



.member_form{width: 100%; background-color: #151818; padding-bottom: 60px;}
.form_ttl{ width: 100%; text-align: center; margin-top: -55px; position: relative; z-index: 200;}
.form_copy{width: 100%; text-align: center; font-size: 11px; color: #FFF; margin: 40px 0 40px 0;}
.form_area{width: 100%; text-align: center; }

.form_body{width: 980px; margin: 0 auto; background-color: #151818;}


.member_form2{width: 100%; background-color: #151818; margin-top:-15px; position: relative; padding:50px 0 10px 0;}
.form_ttl2{ width: 100%; text-align: center; margin-top:40px; position: relative; z-index: 200;}
.form_cap{font-size: 11px; color: #FFF; width: 100%; text-align: center; margin: 0 0 50px 0 ;}


/*---------------------------------------------------
	# Contents body
---------------------------------------------------*/

#contents {width:90%; margin: 0 auto 0 auto; padding: 60px 0 10px 0; background-color: #FFF; min-width: 980px;}
.contents_body {width:980px; margin: 0 auto 0 auto;}



.pagenotfound a{width:180px; font-size:9px; color: #FFF; margin:30px auto 10px auto; text-align: center;}

.pagenotfound a{display: block; text-decoration: none; color: #46F2AD; padding:8px 0 8px 0; background-color:#151818; 
      -webkit-transition: all 0.2s;
      -moz-transition: all 0.2s;
      -ms-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s;
}
.pagenotfound a:hover{background-color:#46F2AD; color: #fff;
      -webkit-transition: all 0.2s;
      -moz-transition: all 0.2s;
      -ms-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s;
}


/*---------------------------------------------------
	# Pre event
---------------------------------------------------*/
.pre_block01{width: 100%; min-height: 460px; text-align: center; background-image: url(../images/preevent/preevent02.jpg); background-size:cover; background-repeat: no-repeat; }
.pre_block01 img{margin-top: 115px;}

.pre_block02{width: 100%;  min-height:670px; text-align: center; background-image: url(../images/preevent/preevent04.jpg); background-size:cover; background-repeat: no-repeat; padding:80px 0 0 0; position: relative;}

.pre_block02 .obj{width: 980px; margin: 0 auto; position: relative;}
.pre_block02 .obj01{width: 245px; position: absolute; top:55px; left:70px; z-index: 100;}
.pre_block02 .obj02{width: 490px; background-color: #46F2AD; font-size: 90%; text-align: left; line-height: 220%; color: #000; 
	padding: 60px 40px 40px 40px; position: absolute; top:80px; left:140px;}
.pre_block02 .obj03{width:370px;background-color: #FFF; padding: 20px; position: absolute; top:365px; right:100px;}


.pre_block03{width: 980px; margin: 0 auto; padding: 70px 0 0 0;}
.pre_block03 .obj01{width: 201px; position: relative; top:0; left: 50px; z-index: 100;}
.pre_block03 .obj02{width: 647px; position: relative; top:-19px; left:104px;}


.pre_block04{width: 980px; min-height:1900px; margin: 0 auto; position: relative;}
.pre_block04 .obj01{width: 210px; position: absolute; top:110px; left:210px;}
.pre_block04 .obj02{width: 220px; position: absolute; top:950px; left:0;}

.pre_block05{width: 980px; min-height:360px; margin: 80px auto 0 auto; position: relative;}
.pre_block05 .obj01{width: 191px; position: relative; top:0; left:0; z-index: 100;}
.pre_block05 .obj02{width: 464px; position: relative; top:-19px; left:54px;}

.pre_block06{width: 980px; min-height:1100px; margin: 110px auto 0 auto; position: relative;}
.pre_block06 .obj01{width: 112px; position: absolute; top:200px; left:113px; z-index: 100;}
.pre_block06 .obj02{width: 241px; position: absolute; top:40px; right:210px;  z-index: 100;}
.pre_block06 .obj03{width: 415px; position: absolute; top:0; left:180px;}
.pre_block06 .obj04{width: 305px; position: absolute; top:330px; left:0; color: #000; 
	font-size: 90%; background-color: #46F2AD; padding: 30px 30px 30px 30px;}
.pre_block06 .obj05{width: 230px; position: absolute; top:120px; right:60px; color: #000; 
	font-size: 90%; background-color: #46F2AD; padding: 30px 30px 30px 30px;}

.pre_block06 .obj06{width: 347px; position: absolute; top:630px; left:280px; z-index: 110;}
.pre_block06 .obj07{width: 394px; position: absolute; top:430px; right:30px;  z-index: 100;}
.pre_block06 .obj08{width: 430px; position: absolute; top:760px; left:135px;  z-index: 110; color: #000;
font-size: 90%; background-color: #46F2AD; padding: 30px 30px 30px 30px;}
.pre_block06 .obj09{width: 441px; position: absolute; top:590px; left:50px;  z-index: 100;}

.pre_block_map{width: 100%; min-height:; margin: 100px auto 0 auto; position: relative;}
.pre_block_map .obj01{width:142px; position: absolute; top:50px; left:40px; z-index: 100;}

.mapstyle_detail{width:100%; height:440px; margin:50px auto 50px auto;}

.pre_block07{width: 980px; min-height:; margin: 60px auto 0 auto; position: relative;}
.pre_block07 .body{font-size: 95%; line-height: 200%; margin: 0 0 50px 0;}
.pre_block07 .caption{font-size: 85%; border-top: 1px solid #E5E5E5; padding-top:50px; margin: 50px 0 0 0 ;}
.pre_block07 .outline{width: 980px; font-size: 95%; line-height: 200%;}
.pre_block07 .outline .left{width: 450px; float: left; margin-right: 80px;}
.pre_block07 .outline .right{width: 450px; float: left;}
.pre_block07 .outline .ttl{width: 435px; background-color: #000000; font-size: 95%; color: #46F2AD; padding: 6px 0 5px 15px; margin: 0 0 30px 0;}



.eventblock01{width: 280px; background-color: #46F2AD; color: #000; font-size: 90%; padding: 40px 40px 40px 40px;}
.eventblock01 .ttlarea{margin-left:-70px;}
.eventblock01 .ttl01{font-size: 120%; color: #46F2AD; background-color: #000; padding: 10px;}
.eventblock01 .ttl02{font-size: 90%; color: #46F2AD; background-color: #000; padding: 7px 10px 6px 10px ;}
.eventblock01 .image{margin: 30px 0 0 0;}
.eventblock01 .time{margin: 30px 0 20px;}
.eventblock01 .people{font-size: 110%; margin: 10px 0 12px;}


.eventblock02{width: 280px; background-color: #E5E5E5; color: #000; font-size: 90%; padding: 40px 40px 40px 40px;}
.eventblock02 .ttlarea{margin-left:-70px;}
.eventblock02 .ttl01{font-size: 120%; color: #FFF; background-color: #000; padding: 10px;}
.eventblock02 .ttl02{font-size: 90%; color: #FFF; background-color: #000; padding: 7px 10px 6px 10px ;}
.eventblock02 .time{margin: 20px 0 20px;}
.eventblock02 .people{font-size: 110%; margin: 30px 0 6px;}
.eventblock02 .bold{font-size: 100%; font-weight: bold;}

.eventblock02 .moushikomi{margin: 20px 0 0 0;}
.eventblock02 a{color: #fff; background-color: #151515; padding: 8px 8px 8px 8px; text-decoration: none; }
.eventblock02 a:hover{color: #fff; background-color: #46F2AD;}


.layout01{position: absolute; top:280px; left:30px; }
.layout02{position: absolute; top:80px; right:0; }
.layout03{position: absolute; top:660px; right:90px; }
.layout04{position: absolute; top:1050px; left:80px; }
.layout05{position: absolute; top:1263px; right:40px; }
.layout06{position: absolute; top:30px; right:0; }


/*---------------------------------------------------
	# The  First  Supper
---------------------------------------------------*/

.eve_block01{width: 100%; height: 440px; position: relative; z-index: 100; text-align: center; background-image: url(../images/event01/event07.jpg); background-size:cover; background-repeat: no-repeat; }
.eve_block01 .parts01 {position: absolute; top: 60px; left: 60px;}
.eve_block01 .parts01 img{width: 329px;}
.eve_block01 .parts02 {position: absolute; top:130px; right: 60px;}
.eve_block01 .parts02 img{width: 359px;}

.eve_block02{width: 100%; min-height:1490px; text-align: center; background-color:#46F2AD;  padding:80px 0 0 0; position: relative;}

.eve_block02 .obj{width: 980px; margin:40px auto 0 auto; position: relative;}
.eve_block02 .obj01{width: 550px; position: absolute; top:-30px; left:0; z-index: 100;}
.eve_block02 .obj01 img{width: 550px; position: absolute; top:55px; left:70px; z-index: 100;}

.eve_block02 .obj02{width: 720px; background-color: #FFF; font-size: 90%; text-align: left; line-height: 220%; color: #000; 
	padding: 60px 40px 40px 40px; position: absolute; top:80px; left:160px;}

.eve_block02 .obj03{width:328px;position: relative; top:450px; margin: 0 auto;}
.eve_block02 .obj03 img{width:328px;}

.eve_block02 .obj04{position: absolute; top:600px; left: 0; z-index: 100;}

.eve_block02 .obj05{position: absolute; top:730px; left: 30px; z-index: 99;}
.eve_block02 .obj05 img{width:400px;}

.eve_block02 .obj06{width:360px; background-color: #FFF; font-size: 90%; text-align: left; line-height: 220%; color: #000; 
	padding: 40px 40px 40px 80px; position: absolute; top:611px; left:385px;}

.eve_block02 .obj07{position: absolute; top:1120px; right:300px; z-index: 100;}

.eve_block02 .obj08{position: absolute; top:1060px; right: 20px; z-index: 99;}
.eve_block02 .obj08 img{width:340px;}

.eve_block02 .obj09{width:400px; background-color: #FFF; font-size: 90%; text-align: left; line-height: 220%; color: #000; 
	padding: 40px 80px 40px 40px; position: absolute; top:1200px; left:100px;}


.eve_block02 .ttl01{font-size:12px; color: #46F2AD; background-color: #000; padding: 10px;}


.eve_block_map{width: 100%; margin-top: -50px; position: relative;}
.eve_block_map .obj01{width:142px; position: absolute; top:50px; left:40px; z-index: 100;}


.eve_block{width: 100%; margin: 0 0 -50px 0; background-color: #FFF;}

.eve_block_foot{width: 980px; min-height:; margin: 60px auto 0 auto; position: relative;}
.eve_block_foot .body{font-size: 95%; line-height: 200%; margin: 0 0 50px 0;}
.eve_block_foot .caption{font-size: 85%; border-top: 1px solid #E5E5E5; padding:50px 0 120px 0; margin: 50px 0 0 0 ;}
.eve_block_foot .outline01{width: 980px; font-size: 95%; line-height: 200%;}
.eve_block_foot .outline01 .left{width: 450px; float: left; margin-right: 80px;}
.eve_block_foot .outline01 .left span{font-weight: bold; font-size: 14px;}
.eve_block_foot .outline01 .right{width: 450px; float: left;}

.eve_block_foot .outline01 .ttl{width: 435px; background-color: #000000; font-size: 95%; color: #46F2AD; padding: 6px 0 5px 15px; margin: 0 0 30px 0;}


/*---------------------------------------------------
	#PeopleArea
---------------------------------------------------*/

#peopelArea{width: 100%; background-color: #151818; padding-bottom: 50px;}
#peopelArea .spview{display: none;}

#peopelArea .people_ttl { width: 100%; text-align: center; margin-top: -55px; position: relative; z-index: 100;}

#peopelArea .peoplearea{width:95%; min-width: 780px; margin:35px auto 0 auto;}



/*---------------------------------------------------
	#TagArea
---------------------------------------------------*/
#tagArea{background-color: #F7F7F7; padding: 40px 0 30px 0; text-align: center;}
.tagbody{width: 980px; margin: 0 auto; position: relative; overflow: hidden;}
.tagbody ul{
  position: relative;
  left: 50%;
  float: left;
}

.tagbody li{list-style: none; float: left; margin: 10px 10px 10px 10px; position: relative; left: -50%;}
.tagbody li a{font-size: 10px; text-decoration: none; padding: 3px 10px 1px 10px;}

/* タグ一覧ページあタイトル*/
.tagnamearea{width: 980px; margin: 0 auto 70px auto; text-align: center; color: #606060;}
.tagname{text-align: center; padding: 16px 22px 15px 22px; background-color: #FFF; 
	font-size: 13px;
	letter-spacing: .1em;}


/*  SVG 色サイズ設定*/
.tag_svg01{
	width: 16px;
	height: auto;
	margin:3px 5px 0 0;
}
.tag_svg01 path{
    color:#A4A1A1;
    fill: currentColor;
	transition: all 0.1s ease;
}
.tag_svg01 .st0{fill:#A4A1A1;}

/*---------------------------------------------------
	#Footer
---------------------------------------------------*/
footer {width:100%; text-align:center; margin: 80px 0 80px 0; 
	font-family: 'Montserrat', Arial, "メイリオ",Meiryo,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","MS ゴシック","MS Gothic",sans-serif;}
footer .logo{margin: 30px 0 30px 0; }
footer .snsarea{margin-bottom: 20px;}
footer .snsarea .facebook{ width: 9px;  margin-right:25px;}
footer .snsarea .facebook img{ width: 9px; height: auto;}
footer .snsarea .twitter{ width: 23px;  margin-right:25px;}
footer .snsarea .twitter img{ width: 23px; height: auto;}
footer .snsarea .insta{ width: 16px;}
footer .snsarea .insta img{ width: 16px; height: auto;}

footer .footinfo{font-size: 10px; line-height: 200%; letter-spacing: .06em;}
footer .footinfottl{font-size: 10px; font-family: 'Montserrat', Arial, sans-serif; font-weight:600; margin-bottom: 6px;}

footer .copyright {font-family: 'Barlow', Arial, sans-serif; color: #6A6A6A; font-weight:500;font-size:9px;
	margin: 30px 0 30px 0; letter-spacing: .05em;}
footer .copyright span{font-size:10px;}




/*---------------------------------------------------
	# ボタンのトランジション
---------------------------------------------------*/

/* ハンバーガーメニュー背景*/

a.btn-action {
	display: block;
	position: relative;
	transition: all 0.4s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
}
a.btn-action:hover {
	background-color: transparent;
}
a.btn-action:hover:before {
	left: 0%;
	right: auto;
	width: 100%;
	/*縦方向
	top: 0%;
	bottom: auto;
	height: 100%;
	*/
}
a.btn-action:before {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	height: 100%;
	width: 0px;
	/*縦方向
	left: 0px;
	bottom: 0px;
	height: 0px;
	width: 100%;
	*/
	z-index: 1;
	content: '';
	background: #151818;
	transition: all 0.45s cubic-bezier(0.215, 0.61, 0.325, 1) 0s;
}



/**** Tag btn action ****/

.tag-btn {
  background: #151818;
  color: #46F2AD!important;
  outline: none !important;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
}

.tag-action {
  z-index: 1;
}
.tag-action:after {
  position: absolute;
  content: "";
  width: 0;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1;
  background: #46F2AD;
  transition: all 0.3s ease;
}
.tag-action:hover {
  color: #151818!important;
}
.tag-action:hover:after {

	left: 0%;
	right: auto;
	width: 100%;
}
.tag-action:active {top: 0;}


/**** Pdf btn action ****/

.pdfarea{width: 300px; margin: 30px auto;}
.pdfarea a{	text-decoration: none;}

.pdf-btn {
	width: 300px;
	text-align: center;
	font-size: 14px;
	padding: 15px 0;
  background: #151818;
  color: #46F2AD!important;
  outline: none !important;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
}

.pdf-action {
  z-index: 1;
}
.pdf-action:after {
  position: absolute;
  content: "";
  width: 0;
  height: 100%;
  top: 0;
  right: 0;
  z-index: -1;
  background: #46F2AD;
  transition: all 0.3s ease;
}
.pdf-action:hover {
  color: #151818!important;
}
.pdf-action:hover:after {

	left: 0%;
	right: auto;
	width: 100%;
}
.pdf-action:active {top: 0;}



/*---------------------------------------------------
	over zoom
---------------------------------------------------*/

/* newsサムネイル エフェクト*/

.newsimg {
  position: relative;
  float: left;
  overflow: hidden;
  margin: 0;
  width: 270px;
  background-color: #46F2AD;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.newsimg *,
.newsimg *:before,
.newsimg *:after {
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.newsimg img {
  width: 270px;
 height: auto;
  backface-visibility: hidden;
  vertical-align: top;
}

.newsimg i {
  position: absolute;
  width: 67px;
  text-align: center;
  z-index: 1;
  top: 49%;
  left:28%;
  /*-webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);*/
  filter: alpha(opacity=0);
  -webkit-opacity: 0;
  opacity: 0;
}

.newsimg i img{
  width: 67px;
  height: auto;
  filter: alpha(opacity=100)!important;
  -webkit-opacity: 1.0!important;
  opacity: 1.0!important;
}

.newsimg i:after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  z-index: -1;
}

.newsimg a {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

.newsimg:hover img,
.newsimg.hover img {
  zoom: 1;
  filter: alpha(opacity=20);
  -webkit-opacity: 0.2;
  opacity: 0.2;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.newsimg:hover i,
.newsimg.hover i {
  filter: alpha(opacity=100);
  -webkit-opacity: 1.0;
  opacity: 1.0;
	
/* 上の背景画像のスケール分0.1を減らす*/
  -webkit-transform: scale(0.9)!important;
  transform: scale(0.9)!important;

/* 移動距離とスピード*/

  top: 49%!important;
  left:35%!important;
  transition: all 0.3s ease;

}




/* people エフェクト*/

.peoples {
  position: relative;
  float: left;
  overflow: hidden;
  margin: 0 2.5%;
  min-width: 90px;
  max-width: 360px;
  width: 15%;
  color: #ffffff;
  font-size: 16px;
  background-color: #46F2AD;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

.peoples *,
.peoples *:before,
.peoples *:after {
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.peoples img {
  max-width: 100%;
  backface-visibility: hidden;
  vertical-align: top;
}

.peoples i {
  position: absolute;
  width: 67px;
  text-align: center;
  z-index: 1;
  top: 50%;
  left:25%;
  /*-webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);*/
  filter: alpha(opacity=0);
  -webkit-opacity: 0;
  opacity: 0;
}

.peoples i img{
  width: 67px;
  height: auto;
  filter: alpha(opacity=100)!important;
  -webkit-opacity: 1.0!important;
  opacity: 1.0!important;
}

.peoples i:after {
  position: absolute;
  content: '';
  width: 0;
  height: 0;
  z-index: -1;
}

.peoples a {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

.peoples:hover img,
.peoples.hover img {
  zoom: 1;
  filter: alpha(opacity=20);
  -webkit-opacity: 0.2;
  opacity: 0.2;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.peoples:hover i,
.peoples.hover i {
  filter: alpha(opacity=100);
  -webkit-opacity: 1.0;
  opacity: 1.0;
	
/* 上の背景画像のスケール分0.1を減らす*/
  -webkit-transform: scale(0.9)!important;
  transform: scale(0.9)!important;

/* 移動距離とスピード*/

  top: 50%!important;
  left:33%!important;
  transition: all 0.3s ease;

}


/*---------------------------------------------------
	Table color
---------------------------------------------------*/
 .colTable {
	font-size:13px;
	line-height:160%;
    border-top: 1px solid #67ADDB; border-left: 1px solid #67ADDB; border-right: 1px solid #67ADDB; }

     .colTable th {
      padding: 25px 25px;
      border-bottom: 1px solid #67ADDB; border-right: 1px solid #67ADDB;border-bottom: 1px solid #67ADDB;
      vertical-align: top; }

   .colTable td {
      padding: 25px 25px;
      border-bottom: 1px solid #67ADDB; }
	  
   .colTableback {
	   font-size:13px;
      color: #fff;
	  font-weight:100;
	  background-color: #0079C0;}



/*---------------------------------------------------
	フォーム
---------------------------------------------------*/

.btn_submit {
	width:340px;
	margin:60px auto 30px auto;

}

.btn_submit input {
	width:360px;
	text-align: -9999px;
	height:78px;
	background-image:url(../images/submit.gif);
	background-size:360px 78px;
	border: none;
    background-position: 0 0;
    background-color: transparent;
	cursor: pointer; 
}

.formarea{width: 698px; margin: 0 auto 30px auto ;}

.formname {
	width:140px;
	float: left;
	margin:0 0 0 0;
	line-height:140%;
	color:#46F2AD;
	font-size:12px;
	text-align:center;
	background-color:#333;
	padding:12px 0 12px 0;
}

.formname span{font-size: 10px;}

.formname2 {
	width:140px;
	float: left;
	margin:0 0 0 0;
	line-height:140%;
	color:#46F2AD;
	font-size:12px;
	text-align:center;
	background-color:#333;
	padding:12px 0 12px 0;
}

.formname2 span{font-size: 10px;}


  .formborder input {
	width: 480px;
	float: left;
	margin-left:40px;
	padding: 18px;
	color:#001E5B;
	border: 1px solid #001E5B;
	font-size: 130%; }

/*性別ラジオボタン*/

.sex .mwform-radio-field{margin-left:0!important;}
.sex label{margin:0 20px 0 0!important; color: #FFF;}
.sex input[type=radio]{margin: 20px 10px 0 40px!important;}
.sex input[type=text]{width: 150px; float: right; padding: 10px; margin: 8px 0 0 0; color:#001E5B; 
	border: 1px solid #001E5B; font-size: 12px;}


  .formborder textarea {
	width: 480px;
	margin-left:40px;
	padding: 18px;
	color:#001E5B;
	border: 1px solid #001E5B;
	font-size: 130%; }


.thankstitle{width:760px; border-bottom: #DDD 1px solid; padding-bottom: 30px; color: #595959; font-size:20px; font-weight: bold; 
	text-align: center; margin: 0 auto;}
.thanksbody{font-size: 13px; width: 100%; text-align: center; margin-top: 30px;}


.thanksback{width: 260px; font-size:14px; color: #FFF; margin:40px auto 50px auto; text-align: center;}

.thanksback a{display: block; text-decoration: none; color: #FFF; padding:8px 0 8px 0; background-color:#46F2AD; 
      -webkit-transition: all 0.2s;
      -moz-transition: all 0.2s;
      -ms-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s;
}
.thanksback a:hover{background-color:#C6C6C6; 
      -webkit-transition: all 0.2s;
      -moz-transition: all 0.2s;
      -ms-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s;
}



