@import url( "https://fonts.googleapis.com/css?family=Noto+Serif+JP" );

body{
  font-family: 'Noto Serif JP','sans-serif',游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic','Bookman Old Style','Book Antiqua';
}

.inner{
   width:100%;
   overflow:hidden;
}

a:link{
	font-weight:;
	color:#000;
}

a:visited{
	font-weight:;
	color:#000;
}

.resizeimage img {
    width: 100%;
}

article.contentbox {
    width: 95%;
    max-width: 1200px;
    margin: 0 auto 2.5vw auto;
    background: #f7f7ff;
    padding: 30px;
}

a.animated-button:link, a.animated-button:visited {
    position: relative;
    display: block;
    margin: 30px auto 0;
    padding: 14px 15px;
    color: #fff;
    font-size:14px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    overflow: hidden;
    letter-spacing: .08em;
    border-radius: 0;
    text-shadow: 0 0 px rgba(0, 0, 0, 0.2), 0 1px 0 rgba(0, 0, 0, 0.2);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
}
a.animated-button:link:after, a.animated-button:visited:after {
    content: "";
    position: absolute;
    height: 0%;
    left: 50%;
    top: 50%;
    width: 150%;
    z-index: -1;
    -webkit-transition: all 0.75s ease 0s;
    -moz-transition: all 0.75s ease 0s;
    -o-transition: all 0.75s ease 0s;
    transition: all 0.75s ease 0s;
}
a.animated-button:link:hover, a.animated-button:visited:hover {
    color: #FFF;
    text-shadow: none;
}
a.animated-button:link:hover:after, a.animated-button:visited:hover:after {
    height: 450%;
}
a.animated-button:link, a.animated-button:visited {
    position: relative;
    display: block;
    margin: 0px auto 0;
    padding: 26px 15px;
    color: #fff;
    font-size:14px;
    border-radius: 0;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    overflow: hidden;
    letter-spacing: .08em;
    /* text-shadow: 0 0 1px rgba(0, 0, 0, 0.2), 0 1px 0 rgba(0, 0, 0, 0.2); */
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
}
a.animated-button.thar-one {
    color: #000000;
    cursor: pointer;
    display: block;
    position: relative;
    border: 0px solid #45bff0;
    transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}
a.animated-button.thar-one:hover {
    color: #fff !important;
    background-color: transparent;
    text-shadow: none;
}
a.animated-button.thar-one:hover:before {
    bottom: 0%;
    top: auto;
    height: 100%;
}
a.animated-button.thar-one:before {
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    height: 0px;
    width: 100%;
    z-index: -1;
    content: '';
    color: #000 !important;
    background: #45bff0;
    transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}

h1{
  color: #333333;
    font-size: 1.8em;
}

h2{
  color: #333333;
    font-size: 2.1em;
    letter-spacing: -0.06em;
}

h3{
  color:#333333;
  font-size: 0.8em;
  line-height: 1.7;
}

h4{
  color:#333333;
  font-size: 1.1em;
    line-height: 1.6;
    letter-spacing: -0.06em;
}

h5{
  color: #333333;
    font-size: 1.6em;
    letter-spacing: -0.02em;
}

h6{
  color:#333333;
  font-size: 1.1em;
  line-height: 1.5;
  letter-spacing: -0.07em;
}

.caption_area {
    position:  absolute;        /* 要素の配置方法を指定 */
    padding: 20px;              /* 余白指定 */
    max-width: 100%;              /* 幅指定 */
    max-height: 100%;               /* 高さ指定 */
    text-align:  center;        /* 文字を中央揃えに */
    top:  0;                    /* 上からの位置指定 */
    bottom:  0;                 /* 下からの位置指定 */
    left:  0;                   /* 左からの位置指定 */
    right:  0;                  /* 右からの位置指定 */
    margin:  auto;              /* 位置調整と組み合わせて上下中央に */
}

.sa {
  opacity: 0;
  transition: all .5s ease;
}
 
.sa.show {
  opacity: 1;
  transform: none;
}
 
.sa--lr {
  transform: translate(-100px, 0);
}
 
.sa--rl {
  transform: translate(100px, 0);
}
 
.sa--up {
  transform: translate(0, 100px);
}
 
.sa--down {
  transform: translate(0, -100px);
}
 
.sa--scaleUp {
  transform: scale(.5);
}
 
.sa--scaleDown {
  transform: scale(1.5);
}
 
.sa--rotateL {
  transform: rotate(180deg);
}
 
.sa--rotateR {
  transform: rotate(-180deg);
}

.sa.show {
    opacity: 1;
    transform: none;
}

.greenTxt{
  color:#62aaa5;
}

.fontbold{
  font-weight: bold;
}


.flex-box a:link{
  font-weight: bold;
  color:#737373;
}

.flex-box a:visited{
  font-weight: bold;
  color:#737373;
}

.flex-box a:hover{
  text-decoration:underline;
}

.flex-box a:active{
  
}

.submenu {
  /* width: 160px; */
  min-width: 190px;
  max-width: 200px;
  background: #fff;
  border: 1px solid #f0f0f0;
  position: absolute;
  top: 70px;
  left: 50%;
  margin-left: -95px;
  box-sizing: border-box;
  visibility: hidden;
  opacity: 0;
  transition: all .3s ease;
  z-index: 1000;
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.15);
  border-bottom: none;
}

.submenu > a {
      display: block;
    font-size: 12px;
    height: 40px;
    line-height: 40px;
    text-align: left;
    color: #666;
    border-bottom: 1px solid #f0f0f0;
    padding: 0 .85em;
}

.submenu > a:hover {
  color: #333;
  background: #f0f0f0;
}

.cate_navi{
  position: relative;
  overflow: hidden;
  font-size: 1em;
}

.cate_navi ul{
    list-style-type: none;
    position: relative;
    left: 50%;
    float: left;
}

.cate_navi li{
  position: relative;
  left: -50%;
  float: left;
}

.cate_navi li +li{
    border-left: 1px solid #333;　　/* ここがボーダー線指定しているところ */
    padding: 0 10px 0 10px;　　　　 /* メニューとボーダー線の間の距離感 */
    display: inline;
}

.cate_navi a:link{
  font-weight: bold;
  color:#3babc8;
}

.cate_navi a:visited{
  font-weight: bold;
  color:#3babc8;
}

.cate_navi a:hover{
  text-decoration:none;
  color:#ffffff;
  background:#3babc8
}

.cate_navi a:active{
  
}


/* BootStrap カスタム */
/* PC */

nav{
	background: rgba(255, 255, 255, 0.85);
}

.navbar-brand {
  height: 150px;
  padding: 45px 15px;
}

.nav > li > a{
  color:#000000;
  display: table-cell;
  vertical-align: bottom;
  height: 40px;
  font-size:15px;
  right:0px;
  padding: 15px 11px;
}

.nav > li > a:hover, .nav > li > a:focus{
  background-color: #92929200 !important;
  color:#ca1725;
  transition: 0.5s ;
}

.nav-btn-box{
	float: left;
	margin-right: 20px;
}

.nav-btn{
	display: table-cell;
  vertical-align: middle;
	height:150px;
}

.fa-phone:before {
     content: "\f095";
    background-color: #983636;
    color:#ffffff;
    border: 5px solid #983636;
    border-radius: 8px;
    font-size:25px;
}

.nav li:hover .submenu {
  visibility: visible;
  top: 80px;
  opacity: 1;
}

/* ここから下がボタンのCSS　*/
.btn-border {
  display: inline-block;
  background-color: #3b5174;
  border:double;
  color: #ffffff;
  width: 250px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 25px;
  transition: .4s;
}

.btn-border2 {
  display: inline-block;
  background-color:#444571;
  max-width: 180px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 8px;
  border-radius: 10px;
  transition: .4s;
}

.navbar{
  margin-bottom: 0px;
  box-shadow: 2px 2px 4px;
}

.btn-border a:link {
  color: #FFF;
  text-decoration: none;
}

.btn-border:hover {
  background-color: #b2b2b2;
  color: #FFF;
  text-decoration: none;
}

.imgWrap {
	overflow: hidden;	/*拡大時にはみ出た部分を隠す*/
	width: 100%;	/*画像の幅*/
	height: 100%;	/*画像の高さ*/
}

.imgWrap img {
	display: block;
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}

.imgWrap img:hover {
	transform: scale(1.3);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}

.main-banner{
	background: url(../images/TOP.jpg);
	background-size: cover;
  background-position: center;
}

.main-banner02{
	background: url(../images/top1.jpg);
	background-size: cover;
  background-position: center top;
}

.main-banner-03{
	background: url(../images/top03.jpg);
	background-size: cover;
  background-position: center;
}

.main-banner-04{
	background: url(../images/top04.jpg);
	background-size: cover;
  background-position: center;
}

.main-banner-eventspace{
	background: url(../images/eventspace_main.jpg);
	background-size: cover;
  background-position: center;
}

.main-banner-discography{
	background: url(../images/DISCOGRAPHY.jpg);
	background-size: cover;
  background-position: center;
}

.main-banner-news{
	background: url(../images/NEWS＆TOPICS.jpg);
	background-size: cover;
  background-position: center;
}

.main-banner-funclub{
	background: url(../images/FUNCLUB.jpg);
	background-size: cover;
  background-position: center;
}

.main-banner-media{
	background: url(../images/MEDIA.jpg);
	background-size: cover;
  background-position: right;
}

.main-banner-youtube{
	background: url(../images/YOUTUBE.jpg);
	background-size: cover;
  background-position: right;
}

.scroll-box{
  max-width: 80px;
  margin: 0px auto;
}

.bgMessage{
  background: url(../images/message-img.png);
  background-size: cover;
  background-position: center;
}

.sub-banner{
}

.sub-banner p{
  color:white;
}

.sub-banner-02{
  padding:60px 0px;
}

.sub-banner-02 p{

}

#sub-menu{
  height:80px;
  background: #000;
  color:white;
}

.txtcenter{
  text-align: center;
}

.txtright{
  text-align: right;
}

.black-back{
  /*background-color: rgba(0,0,0,0.4);*/
  padding:250px 0px;
}

.black-back-padno{
  background-color: rgba(0,0,0,0.4);
  padding:100px 0px;
}


.main-logo{
  width: 25%;
}

.main-banner h1,.sub-banner h1{
  color: white;
  font-size: 3.5em;
}

.sub-banner-02 h1{
  font-weight: bold;
}

.bred-crumb{
  padding:5px;
  background: #45bff0;
}


@media (min-width: 780px) {

	.sp-only{
		display: none;
	}

	.pad55{
	  padding:0px 55px;
	}


  .container {
    width:1135px;
  }

  .navbar-header{
    width:250px;
  }

  .row-eq-height {
    display: flex;
    flex-wrap: wrap;
  }

  .flex-box{
    display: flex;
     align-items: center;
     height: 80px;
  }

    
}

@media (max-width: 779px){

.pc-only{
		display: none;
	}

  .navbar-brand{
    width: 260px;
  }

  .nav > li > a{
    height:max-content;
    right:0px;
  }


  .flex-box{
    margin: 20px 0px;
  }

  #sub-menu{
    height:auto;
  }

  	table.campany-table{
  width: 100%;
  margin: 20px auto 0px auto;
}

  	table.hotel-table{
  width: 100%;
  margin: 20px auto 0px auto;
}
    
.caption_area {
    position:unset;        /* 要素の配置方法を指定 */
    padding: 20px;              /* 余白指定 */
    max-width: 100%;              /* 幅指定 */
    max-height: 100%;               /* 高さ指定 */
    text-align:  center;        /* 文字を中央揃えに */
    top:  0;                    /* 上からの位置指定 */
    bottom:  0;                 /* 下からの位置指定 */
    left:  0;                   /* 左からの位置指定 */
    right:  0;                  /* 右からの位置指定 */
    margin:  auto;              /* 位置調整と組み合わせて上下中央に */
}

.col-sm-1{
    display: none;

}

 .submenu {
    width: 100%;
    position: initial;
    margin: 0;
    background: #ffffff9e;
    display:;
    opacity: 1;
    visibility: visible;
    box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.29);
}
    /*阪柳記述*/
.nav li:hover .submenu {
    visibility: visible;
    top: -2px;
    opacity: 1;
}
    
.btn-border2 {
  display: inline-block;
  background-color:#39bf8c;
  position: initial;
  max-width: 180px;
  text-align: left;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 8px;
  border-radius: 10px;
  transition: .4s;
}


}

.navbar-toggle .icon-bar{
  background: #000000;
}


#sec001{
  padding:60px 0px;
}


.news-box{
  border-bottom: 1px solid #000;
  padding: 10px 10px;
}

.news-cat{
  margin-bottom: 20px;
}

.pickup-text{
  margin:20px 0px;
}

hr{
  /*border-top:1px solid #000000;*/
    background:url(../images/hr_image01.png)
}

.black-hr{
  border-top:1px solid #000;
}

table.news-table{
  margin: 20px 0px;
}

td.table-date{
  width:10%;
  padding:20px;
}

td.table-cat{
  width:20%;
  padding:20px;
}

td.table-txt{
  width:70%;
  padding:20px;
}

tr{
  border-bottom:1px solid #000;
}

table.campany-table tr{
  border-bottom: 2px solid #d9cd2a;
}

table.campany-table th{
  width: 5%;
  padding: 20px 10px 0px 10px;
  text-align: center;
  color: #ffffff;
}

table.campany-table td{
  width: 5%;
  padding: 20px 10px 0px 10px;
  text-align: right;
  color: #ffffff;
}

table.hotel-table tr{
  border-bottom: 2px solid #44b8bd;
}

table.hotel-table th{
  width: 20%;
  padding: 40px 10px 0px 10px;
}

table.hotel-table td{
  width: 40%;
  padding: 40px 10px 0px 10px;
  text-align: right;
}

table.mail-table{
  width: 80%;
  margin: 20px auto 0px auto;
}

table.mail-table tr{
  border-bottom:1px dashed #000;
}

table.mail-table th{
  width: 40%;
  padding:20px 10px;
}

table.mail-table td{
  width: 60%;
  padding:20px 10px;
  text-align: left;
}


.press{
  background: #FF000A;
  border-radius: 20px;
  text-align: center;
  padding:5px 30px;
  font-weight: bold;
  color:#FFF;
  margin:0px 10px 0px 0px;
}

.press-2{
  background: #00ABC8;
  border-radius: 20px;
  text-align: center;
  padding:5px 30px;
  font-weight: bold;
  color:#FFF;
  margin:0px 10px 0px 0px;
}

.press-3{
  background: #ffa500;
  border-radius: 20px;
  text-align: center;
  padding:5px 30px;
  font-weight: bold;
  color:#FFF;
  margin:0px 10px 0px 0px;
}

.media-cat{
font-size: 1.3em;
padding-right:15px;
}

.media-text{
  font-size: 1.5em;
  margin-bottom:30px;
}

.backGreen{
  background: #62aaa5;
}

.whats-btn{
  text-align: center;
  padding:20px;
  font-weight: bold;
  background: #ee0000;
  color:white;

  margin:20px 0px;

}

.press-btn{
  text-align: center;
  padding:20px;
  font-weight: bold;
  background: #eec200;
  color:white;

  margin:20px 0px;
}

#sec002{
  background: #f2f2f2;
  padding: 60px 0px;
}

.pad0{
  padding:0px !important;
}

.white-back{
  background: #FFF;
}



.flex-box ul li{
  list-style: none;
  float: left;
  padding-left:50px;
}

.flex-box ul{
  margin: 0px;
}

#sec002 h1,#sec003 h1{
  font-size:;
  margin-bottom: 30px;
  font-weight: bold;
}

.caption{
  color: #385383;
}

.sec002-text{
  font-size: 1.2em;
}

.padding40px{
  padding: 40px !important;
}

.table-cell {
 display: table-cell; /* IE8から使用可能 */
 vertical-align: middle;
}

#sec003{
  background: url(../images/sec02_back.jpg);
  background-size: cover;
  background-position: center;
}

#sec002{
  background: #ffffff;
  background-size: cover;
  background-position: center;
}
.white-txt{
  color:white !important;
}

.white-btn{
  max-width: 300px;
  padding: 15px;
  border:1px solid #FFF;
  font-size: 1.3em;
  text-align: center;
  margin:30px auto 0px auto;
}

.white-btn a:link{
  color:#FFF;
}


.white-btn a:visited{
  color:#FFF;
}



.green-btn{
  max-width: 300px;
  padding: 15px;
  border:1px solid #62aaa5;
  font-size: 1.3em;
  text-align: center;
  margin:30px auto 0px auto;
}

.green-btn a:link{
  color:#62aaa5;
}


.green-btn a:visited{
  color:#62aaa5;
}

.pink-btn{
  max-width: 250px;
  padding: 8px;
  border-radius: 10px;
  background:#FF2DFF;
  font-size: 1.1em;
  text-align: center;
  margin:30px auto 0px auto;
}

.pink-btn a:link{
  color:#ffffff;
}

.pink-btn a:visited{
  color:#ffffff;
}

.yellow-btn{
  max-width: 250px;
  padding: 8px;
  border-radius: 10px;
  background:#FFFF00;
  font-size: 1.1em;
  text-align: center;
  margin:30px auto 0px auto;
}

.yellow-btn a:link{
  color:#000000;
}

.yellow-btn a:visited{
  color:#000000;
}

.blue-btn{
  max-width: 250px;
  padding: 8px;
  border-radius: 0px;
  background:#39bf8c;
  font-size: 1.1em;
  text-align: center;
  margin:30px auto 0px auto;
}

.blue-btn a:link{
  color:#ffffff;
}

.blue-btn a:visited{
  color:#ffffff;
}

.blue2-btn{
  max-width: 250px;
  padding: 8px;
  border-radius: 0px;
  background:#73b4ff;
  font-size: 1.1em;
  text-align: center;
  margin:10px auto 10px auto;
}

.blue2-btn a:link{
  color:#ffffff;
}

.blue2-btn a:visited{
  color:#ffffff;
}

.green2-btn{
    max-width: 380px;
    padding: 10px;
    border-radius: 55px;
    background: #3babc8;
    font-size: 2em;
    text-align: center;
    margin: 10px auto 10px auto;
}

.green2-btn a:link{
  color:#ffffff;
}

.green2-btn a:visited{
  color:#ffffff;
}

.red-btn{
  max-width: 250px;
  padding: 8px;
  border-radius: 0px;
  background:#ad0000;
  font-size: 1.1em;
  text-align: center;
  margin:10px auto 10px auto;
}

.red-btn a:link{
  color:#ffffff;
}

.red-btn a:visited{
  color:#ffffff;
}

.black-btn{
  max-width: 250px;
  padding: 20px;
  border-radius: 10px;
  border:1px solid #000000;
  font-size: 1.3em;
  text-align: center;
  margin:30px auto 0px auto;
}

.black-btn a:link{
  color:#000000;
}


.black-btn a:visited{
  color:#000000;
}

.black2-btn{
  max-width: 250px;
  padding: 8px;
  border-radius: 10px;
  background:#000000;
  font-size: 1.1em;
  text-align: center;
  margin:20px auto 10px auto;
}

.black2-btn a:link{
  color:#ffffff;
}


.black2-btn a:visited{
  color:#ffffff;
}

.company-btn{
  text-align: center;
  background: url(../images/top-img-05.png);
  background-size: cover;
  background-position: center;
  height:400px;
  padding:50px;
}

.message-btn{
  text-align: center;
  background: url(../images/top-img-06.png);
  background-size: cover;
  background-position: center;
  height:400px;
  padding:50px;
}

.recruit-btn{
  text-align: center;
  background: url(../images/top-img-07.png);
  background-size: cover;
  background-position: center;
  height:400px;
  padding:50px;
}

.advantage-btn{
  text-align: center;
  background: url(../images/nav-img-01.png);
  background-size: cover;
  background-position: center;
  height:400px;
  padding:50px;
}

.mission-btn{
  text-align: center;
  background: url(../images/nav-img-02.png);
  background-size: cover;
  background-position: center;
  height:400px;
  padding:50px;
}

#sec004{
  padding: 60px 0px;
}

.footer-top{
  border-top:60px solid #000;
  margin: 0px;
}

.footer-box{
  background: #ffffff;
  padding: 30px;
  color:black;
  text-align: center;
}

.footer a:link{
  color:#62aaa5;
}

.footer a:visited{
  color:#62aaa5;
}

i{
  font-size: 3em;
  padding-left:10px;
}

nav i{
  font-size: 1em;
}

.marright{
  margin-right: auto;
}

/* サブページ */

.white-section{
  padding:150px 0px;
  background: #FFF;
}

.glay-section{
  padding:150px 0px;
  background: #f2f2f2;
}

.blue-text{
  color: #385383;
}

.size-2{
  font-size: 1.5em;
}

.size-3{
  font-size: 1.2em;
}

.size-4{
  font-size: 2.3em;
}

.font-bold{
  font-weight: bold;
}

.leftblue{
  padding: 0.25em 0.5em;/*上下 左右の余白*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #7db4e6;/*左線*/
}

.txtleft{
  text-align: left;
}

.margin-bottom20{
  margin-bottom:30px;
}

.margin-bottom10{
  margin-bottom:10px;
}

.margin-bottom60{
  margin-bottom:60px;
}

.margin-top60{
  margin-top: 60px;
}

.margin-top30{
  margin-top: 30px;
}

.margin30{
  margin:30px 0px;
}

.dottedhr{
  border:none;
  border-top:dashed 1px #000;
  height:1px;
}

.font-red{
  color: red;
}

.images-box{
  height:400px;
}

.serviceh1{

}

.serviceh1 { 
  position: relative;
}

.serviceh1:before {
      position: absolute;
      top: 50px;  /* 上からの位置 */
      left: 0px;  /* 左からの位置 */
      width: 100%;  /* 横幅 */
      height: 1px;  /* 縦幅 */
  background: linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -webkit-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -moz-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -o-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -ms-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  content:""; 
}

.voiceh1 { 
  position: relative;
}

.voiceh1:before {
      position: absolute;
      top: 40px;  /* 上からの位置 */
      left: 0px;  /* 左からの位置 */
      width: 100%;  /* 横幅 */
      height: 1px;  /* 縦幅 */
  background: linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -webkit-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -moz-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -o-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  background: -ms-linear-gradient(left,#26addf 15%,#000 15%, #000 100%);
  content:""; 
}

.input{
  width:100%;
}

#comments{
  display: none;
}

.post-navigation{
  display: none;
}

.entry-meta{
  display: none;
}

.entry-content p{
  font-size: 1.3em;
}

.pagination ul{
  list-style: none;
}

ul.page-numbers{
  padding:0px;
  margin: 0px 0px 0px 20px;
}

ul.page-numbers li{
  float:left;
  margin-right: 10px;
}

.aligncenter{
  text-align: center;
}

#primary{
  padding: 0px 20px;
}

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.navbar-fixed-top .navbar-collapse, .navbar-fixed-bottom .navbar-collapse {
    max-height: 370px;
}

#main ul.pageNav01 {
	margin: 0 0 10px;
	padding: 10px 10px 5px;
	background: #eee;
	text-align: center;
}

#main ul.pageNav01 li {
	display: inline;
	margin: 0 2px;
	padding: 0;
}

#main ul.pageNav01 li span,
#main ul.pageNav01 li a {
	display: inline-block;
	margin-bottom: 5px;
	padding: 1px 8px;
	background: #fff;
	border: 1px solid #aaa;
	text-decoration: none;
	vertical-align: middle;
}

#main ul.pageNav01 li a:hover {
	background: #eeeff7;
	border-color: #00f;
}
/*ページscrollボタン(トップページ専用)*/
.key__scroll{
	position: relative;
	display:block;
	width:40px;
	height:60px;
	margin:auto;
}
.key__scroll::before{
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin:0 0 0 0;
	width: 40px;
	height: 40px;
	border:#C8E5DF solid 2px;
	border-radius: 50%;
	box-shadow:1px 1px 1px #3F3F3F inset,1px 1px 1px #3F3F3F;
	box-sizing: border-box;
}
.key__scroll::after{
    position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 14px 0 0 16px;
    width: 8px;
    height: 8px;
	border-bottom:#C8E5DF solid 1px;
	border-right:#C8E5DF solid 1px;
	transform: rotate(45deg);
	box-shadow:1px 1px 1px #3F3F3F;
}
.key__scroll:hover::before{
	background:#C8E5DF;
	box-shadow:1px 1px 1px #3F3F3F;
	transition: 0.2s;
}
.key__scroll:hover::after{
	border-bottom:#ffffff solid 1px;
	border-right:#ffffff solid 1px;
	transition: 0.2s;
}
.key__scroll span{
	display:block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 0 0 -5px;
    text-shadow: 1px 1px 1px #000000;
    color: #C8E5DF;
    font-size: 10px;
    width: 50px;
}
/*ラベル*/
.accbox label {
    display: block;
    margin: 1.5px 0;
    padding : 15px 12px;
    font-weight: bold;
    background :#caa94a;
    cursor :pointer;
    transition: all 0.5s;
    height: 70px;
}

/*ラベルホバー時*/
.accbox label:hover {
    background :#d0d0d0;
}

/*チェックは隠す*/
.accbox input {
    display: none;
}

/*中身を非表示にしておく*/
.accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.cssacc:checked + .accshow {
    height: auto;
    padding: 6px;
    background: #f5f5f5;
    opacity: 1;
}

}

/*  top page  */
article#mainvisual{ height:100vh; min-height:850px; margin-bottom:-50px; padding-top:200px; position:relative;
	font-family: 'Noto Serif JP', serif; color:#fff;  z-index:-1; }
article#mainvisual:after{ display:block; content:""; width:100%; height:100%; position:absolute; top:0; left:0; opacity:.7; z-index:-1;
	background:url("./img/main_visual.jpg") center center no-repeat; background-size: cover; }
article#mainvisual>dl{ width:100%; position:relative; z-index:1; }
article#mainvisual>dl>dt{ text-align:center; font-size:40px; line-height:1.2em; }
article#mainvisual>dl>dd{ text-align:center; font-size:80px; line-height:1.2em; font-weight:bold; text-shadow: 2px 2px 5px rgba(0,0,0,.5); }
article#mainvisual>div{ width:90%; max-width:800px; height:350px; padding:0 50px; margin:50px auto 100px auto; position:relative; z-index:1; text-align:center; opacity:0; }
article#mainvisual>div>span{ font-size:1.3em; }
article#mainvisual>div>span>div{ display:block; padding:.5em; }
@media screen and (max-width: 768px) {
	article#mainvisual{ min-height:85vw; margin-bottom:-5vw; padding-top:20vw; }
	article#mainvisual>dl>dt{ font-size:4vw; }
	article#mainvisual>dl>dd{ font-size:8vw; }
	article#mainvisual>div{ height:42vw; padding:0 5vw; border-radius:1vw; margin-top:5vw; }
	article#mainvisual>div>span{ font-size:1.4em; }
}
@media screen and (max-width: 480px) {
	article#mainvisual{ min-height:160vw; margin-bottom:-10vw; padding-top:25vw; }
	article#mainvisual>dl>dt{ font-size:5vw; }
	article#mainvisual>dl>dd{ font-size:10vw; }
	article#mainvisual>div{ height:90vw; padding:0 5vw; border-radius:1vw; margin-top:5vw; }
	article#mainvisual>div>span{ font-size:1.0em; }
}

section#top_news{ padding:60px 20px 50px 20px; position:relative; }
section#top_news>dl{ background:#b5b5b5; position:absolute; width:250px; height:120px; top:-80px; left:0; right:0; margin:auto; }
section#top_news>dl:after{ content:""; display:block; position:absolute; top:10px; left:10px; width:calc( 100% - 20px ); height:calc( 100% - 20px ); border: 1px solid #fff; }
section#top_news>dl>dd{ padding:20px 0 10px 0; }
section#top_news>dl>dd>img{ display:block; height:40px; margin:0 auto; }
section#top_news>dl>dt{ text-align:center; color:#fff; font-family: 'Noto Serif JP', serif;}
section#top_news>div{display:table; border-collapse: collapse; }
section#top_news>div>dl{display:table-row; width:100%; border:1px dashed #999; border-width:1px 0; }
section#top_news>div>dl:nth-last-of-type(1){ border:0; }
section#top_news>div>dl>dt{display:table-cell; padding:20px; width:20%; white-space:nowrap; }
section#top_news>div>dl>dt>span{ display:inline-block; font-size:.8em; line-height:1.5em; padding:5px 15px; background: #cd2d18; color:#fff; white-space:nowrap; margin-left:10px; }
section#top_news>div>dl>dd{display:table-cell;  padding:20px;}
@media screen and (max-width: 768px) {
	section#top_news{ padding:6vw 2vw 5vw 2vw; }
	section#top_news>dl{ width:25vw; height:12vw; top:-8vw; }
	section#top_news>dl:after{ top:1vw; left:1vw; width:calc( 100% - 2vw ); height:calc( 100% - 2vw ); }
	section#top_news>dl>dd{ padding:2vw 0 1vw 0; }
	section#top_news>dl>dd>img{ height:4vw; }
	section#top_news>div>dl>dt{ padding:2vw; }
	section#top_news>div>dl>dt>span{ padding:.5em 1.5em; margin-left:1vw; }
	section#top_news>div>dl>dd{ padding:2vw; }
}
@media screen and (max-width: 480px) {
	section#top_news{ padding:20vw 0 10vw 0; }
	section#top_news>dl{ width:50vw; height:32vw; top:-16vw; }
	section#top_news>dl:after{ top:2vw; left:2vw; width:calc( 100% - 4vw ); height:calc( 100% - 4vw ); }
	section#top_news>dl>dd{ padding:6vw 0 2vw 0; }
	section#top_news>dl>dd>img{ height:10vw; }
	section#top_news>div{ display:block; }
	section#top_news>div>dl{ display:block; padding:5vw 0; }
	section#top_news>div>dl>dt{ display:block; padding:0; }
	section#top_news>div>dl>dt>span{ padding:.1em 1.5em; margin-left:1vw; }
	section#top_news>div>dl>dd{ display:block; padding:0; }
}


section#top_intro{ background:url("./img/top_introbg.jpg") center center no-repeat; background-size: cover; position: relative; color:#fff; padding:100px 0; }
section#top_intro:before{ content:""; display: block; position: absolute; top:0; left:0; width: 100%; height: 100%; background:linear-gradient(transparent,#000); }
section#top_intro>dl{ display: table; table-layout: fixed; width:95%; max-width: 1200px; margin:0 auto; position: relative; z-index: 1; }
section#top_intro>dl>dt{ display: table-cell; text-align: center; vertical-align: middle; font-family: 'Noto Serif JP'; font-size:30px; }
section#top_intro>dl>dd{ display: table-cell; }
section#top_intro>dl>dd>a{ display: block; line-height:50px; background:rgba(113,68,89,.2); color:#fff; font-family: 'Noto Serif JP'; text-align: center; width:100%; max-width:300px; margin:20px 0 0 auto;
	border: 1px solid #fff; transition: all .3s; }
section#top_intro>dl>dd>a:hover{ background:rgba(113,68,89,.9); }
@media screen and (max-width: 768px) {
	section#top_intro{ padding:10vw 0; }
	section#top_intro>dl>dt{ font-size:3vw; }
	section#top_intro>dl>dd>a{ line-height:5vw; max-width:30vw; margin:2vw 0 0 auto;}
}
@media screen and (max-width: 480px) {
	section#top_intro{ padding:20vw 0; }
	section#top_intro>dl{ display: block; }
	section#top_intro>dl>dt{ display: block; font-size:6vw; }
	section#top_intro>dl>dd{ display: block; padding:15px 5px 0 5px; }
	section#top_intro>dl>dd>a{ line-height:14vw; max-width:100%; margin:8vw 0 0 auto;}
}


section#top_whats>div{ width:100%; max-width: 1200px; margin:0 auto; padding:50px 0; background:#fff; }
section#top_whats>div>p{ text-align: center; padding:50px 0; font-size:1.1em; }
section#top_whats>div>p>span{ display:block; font-family: 'Noto Serif JP'; font-size:30px; }
section#top_whats>div>dl{ display: table; }
section#top_whats>div>dl>dt{ display: table-cell; width:50%; vertical-align: middle; padding:30px; }
section#top_whats>div>dl>dt>p{ font-family: 'Noto Serif JP'; font-size:25px; background: linear-gradient(transparent 60%, #ffff66 60%); line-height:1em; }
section#top_whats>div>dl>dt>span{ display: block; padding:20px 5px; }
section#top_whats>div>dl>dt>span>ol{ display: block; border: 2px solid #eca457; border-radius:5px; padding:20px; margin-top:20px; }
section#top_whats>div>dl>dt>span>ol>li{ padding-left:1.5em; position: relative; }
section#top_whats>div>dl>dt>span>ol>li:before{ content:"◆ "; position: absolute; left:0; color:#eca457; }

section#top_whats>div>dl>dt>a{ display: block; line-height:50px; background:rgba(219,132,39,.2); font-family: 'Noto Serif JP'; text-align: center; width:100%; max-width:300px; margin:20px 0 0 auto;
	border: 1px solid #999; transition: all .3s; }
section#top_whats>div>dl>dt>a:hover{ background:rgba(219,132,39); color:#fff; }

section#top_whats>div>dl>dd{ display: table-cell; width:50%; vertical-align: middle; }
section#top_whats>div>dl>dd>div{ width:100%; height:100%; background:#f00; }
section#top_whats>div>dl>dd>div>img{ display:block; width:100%; }

@media screen and (max-width: 768px) {
	section#top_whats>div{ padding:5vw 0; }
	section#top_whats>div>p{ padding:5vw 0; }
	section#top_whats>div>p>span{ font-size:3vw; }
	section#top_whats>div>dl>dt{ padding:3vw; }
	section#top_whats>div>dl>dt>p{ font-size:2.5vw; }
	section#top_whats>div>dl>dt>span{ display: block; padding:2vw .5vw; }
	section#top_whats>div>dl>dt>span>ol{ border-radius:.5vw; padding:2vw; margin-top:2vw; }
	section#top_whats>div>dl>dt>a{ line-height:5vw; max-width:30vw; margin:2vw 0 0 auto;}
}
@media screen and (max-width: 480px) {
	section#top_whats>div{ padding:10vw 0; }
	section#top_whats>div>p{ padding:0 5vw 10vw 5vw; text-align: left; font-size:1.0em; }
	section#top_whats>div>p>span{ font-size:6vw; text-align: center; }
	section#top_whats>div>dl>dt{ padding:3vw; }
	section#top_whats>div>dl>dt>p{ font-size:5vw; }
	section#top_whats>div>dl>dt>span{ display: block; padding:4vw 1vw; }
	section#top_whats>div>dl>dt>span>ol{ border-radius:1vw; padding:4vw; margin-top:4vw; }
	section#top_whats>div>dl>dt>a{ line-height:10vw; max-width:80%; margin:4vw auto 0 auto;}
	section#top_whats>div>dl>dd{ display: none; }
}

footer section#footarea{ background:#333;  color:#fff;}
footer section#footarea>nav{ width:100%; max-width:1200px; margin:0 auto; padding:50px 0 0 0; background-color: #333; }
footer section#footarea>nav>ul{ text-align:center; }
footer section#footarea>nav>ul>li{ display:inline-block; }
footer section#footarea>nav>ul>li>a{ display:block; color:#fff; padding:5px; }
footer section#footarea>nav>ul>li>a:hover{ text-decoration: underline; }
footer section#footarea>ol{ display:table; margin:0 auto; padding:50px 0; }
footer section#footarea>ol>li{ display:table-cell; vertical-align:middle; padding:10px; }
footer section#footarea>ol>li>img{ width:120px; }
footer section#footarea>ol>li>span{ display:block; }
footer section#footarea>ol>li>p{ font-size:1.5em; }
footer section#footarea>p{ background:#222; color:#fff; text-align: center; padding:5px 0; font-size:12px; }
@media screen and (max-width: 768px) {
	footer{ }
	footer section#footarea>nav{ padding:5vw 0 0 0; }
	footer section#footarea>nav>ul>li>a{ padding:.5vw; }
	footer section#footarea>ol{ padding:5vw 0; }
	footer section#footarea>ol>li{ padding:1vw; }
	footer section#footarea>ol>li>img{ width:12vw; }
	footer section#footarea>p{ padding:.5vw 0; font-size:1.2vw; }
}
@media screen and (max-width: 500px) {
	footer{ }
	footer section#footarea>nav>ul>li{ display:block; }
	footer section#footarea>nav>ul>li>a{ padding:2vw; }
	footer section#footarea>ol{ padding:10vw 0; display:block; }
	footer section#footarea>ol>li{ padding:2vw; display:block; text-align: center; }
	footer section#footarea>ol>li>img{ width:20vw; }
	footer section#footarea>p{ padding:1vw 0; font-size:3vw; }
}


}
