@charset "UTF-8";
/* CSS Document */

@media print{body{display:none;}}

.clearfix{
	margin: 16px 0 30px;
}
.clearfix:after{
	content: "";
	display: block;
	clear: both;
}
.pc{
	display: block;
}
.cx_smartphoneview .pc {
  display: none;
}
.sp{
	display: none;
}
.cx_smartphoneview .sp {
  display: block;
}

#fp-contents {
  width: unset;
  padding-bottom: 2em;
  font-size: 18px;
  line-height: 1.6;
  color: #444;
}

h1,h2,h3,h4,h5,p,span{
  margin: 0;
}

#theme a{
  display: inline-block;
  text-decoration: none;
}

a:hover {
  text-decoration:none;
}

a:visited {
  text-decoration: none;
  color: #0066cc;
}

ul{
  list-style: none;
  margin: 0;
  padding: 0;
}

img{
  max-width: 100%;
}

.font-color{
  color: #2db2e4;
}

div#cx_spContentsWrap{
  background-color: #ffffff;
  background-image: url(../image/bg.png);
  background-position: center bottom;
  background-repeat: repeat;
  background-attachment: fixed;
}

.cx_smartphoneview .displaypc {
	display: none;
}
.displaysp {
	display: none;
}
.cx_smartphoneview .displaysp {
	display: block;
}

.Bold{
  font-weight: bold;
}

hr{
  background: none;
  width: 98%;
  margin: 32px auto;
  border-top: 1px solid #cacaca;
}

/*ヘッダ用=============================================================*/

div#header_01,
div#header_02{
  background-position: center top;
}

/* ----------
　　TOP
---------- */
div#header_01.top{
	height: 448px;
	background-image: url(../image/header_bg_pc_top.png);
	background-repeat: repeat-x;
}

div#header_02.bottom{
	height: 170px;
	background-image: url(../image/header_bg_pc_bottom.png);
	background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1000;
}

div#header_bottom_content{
  width: 1000px;
  height: 100%;
  background-image: url(../image/header_bg_pc_title.png);
  background-size: 1000px auto;
  background-position: center top;
  background-repeat: no-repeat;
  margin: 0 auto;
  text-align: center;
}

div#greeting_btn{
  height: 100%;
  margin: 0 auto;
  text-align: center;
}

div#greeting_btn a{
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.7em;
  color: #fff;
  background-color: #f0833a;
  box-shadow: 3px 4px 0 0 #333;
  padding: 0.5em 7.5em;
  border-radius: 0.5em;
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
}

div#greeting_btn a:hover{
  filter: brightness(70%);
}

div#greeting_btn a img{
  display: inline-block;
  vertical-align: middle;
  /*width: 250px;*/
  width: 190px;
}

/*コンテンツ=============================================================*/

div#contents{
  width: 1000px;
  margin: 4rem auto;
}

div#contents .section{
  background-color: #fff;
  box-shadow: 2px 2px 6px 0px #33333360;
  padding: 2em;
}

div#contents .section h2{
  display:-webkit-box;
  display:-ms-flexbox;
  display: flex;
  -webkit-box-align: center;
	-ms-flex-align: center;
  align-items: center;
  margin-bottom: 1.5em;
}

div#contents .no__1 h2 img{
  width: 180px;
  margin-right: 15px;
}

div#contents .section h2 span{
  font-size: 1rem;
  font-weight: normal;
  padding-top: 5px;
}

div#contents .section .container .topics_text{
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.5;
}

div#contents .section .container .topics_text .topics_text_in{
  font-weight: normal;
  display: inline-block;
  font-size: 18px;
}

.cx_smartphoneview div#contents .section .container .topics_text .topics_text_in{
  font-size: 24px;
}

div#contents .section .container p{
  margin-top: 1em;
  margin-bottom: 1em;
}

div#contents .section .container .photo{
  text-align: center;
}

div#contents .section .container .photo img{
  width: 620px;
  border: 1px solid #cccccc;
}

.emptyBox{
  width: 427px;
  max-width: 100%;
}

/*コンテンツ=============================================================*/

div#contents .no__2 h2 img{
  width: 260px;
  margin-right: 15px;
}

div#contents .no__2 .container{
  background-color: #cfebf2;
  border-radius: 0.8em;
  box-shadow: 4px 4px 0 0 #2db2e4;
  margin-bottom: 2em;
}

div#contents .no__2 .container .accordion_title{
  padding: 1.5em 1.5em 1em 1.5em;
}

div#contents .no__2 .container .accordion_title_other{
  padding: 1.5em !important;
}

div#contents .no__2 .container .accordion_box{
  padding: 1.5em 1.5em 1.5em 1.5em;
}

div#contents .no__2 .container .date_place{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: end;
  align-items: flex-end;
}

.cx_smartphoneview div#contents .no__2 .container .date_place {
  -ms-flex-line-pack: start;
  align-items: flex-start;
}

div#contents .no__2 .container .date_place p{
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  background-color: #2db2e4;
  padding: 0.5em;
  margin: 0 20px 0 0;
  width: 75px;
  text-align: center;
  white-space: nowrap;
}

div#contents .no__2 .container .date_place .tokyo{
  width: auto;
}

div#contents .no__2 .container .date_place h3{
  font-size: 3em;
  width: 100%;
  position: relative;
}

div#contents .no__2 .container .date_place h3::after{
  font-size: 2.6rem;
  position: absolute;
  content: '';
  border-bottom: 1px solid #2db2e4;
  width: 100%;
  bottom: 0;
  left: 0;
}

div#contents .no__2 .container .date_place h3 span{
  font-size: 0.5em;
  display: inline-block;
  line-height: 1.4;
  margin: 10px 0;
}

.cx_smartphoneview div#contents .no__2 .container .date_place h3 span{
  font-size: 0.5em;
  display: block;
  line-height: 1.4;
  margin: 10px 0;
}

div#contents .no__2 .container .item_btn{
  text-align: center;
}

div#contents .no__2 .container .item_btn img{
  display: inline-block;
  vertical-align: middle;
  margin-top: 10px;
  width: 30px;
}

div#contents .no__2 .container .title__text{
  color: #fff;
  background-color: #30b2e4;
  padding: 0.6em 1em 0.5em 1em;
  font-size: 1.2em;
  margin: 0 0 1em 0;
}

div#contents .no__2 .container .title__date{
  margin: 0 0 0.7em;
  line-height: 1.3;
  padding: 0.3em 0 0.3em 0.5em;
  border-bottom: 2px dotted #a09699;
  border-left: 0.4em solid #2eb3e4;
  font-weight: bold;
  font-size: 1.4rem;
}
.cx_smartphoneview div#contents .no__2 .container .title__date{
  font-size: 1.8rem;
}

div#contents .no__2 .container .mc{
  margin: 0 0 0 0 !important;
}

div#contents .no__2 .container .caster{
  margin: 0.5em 0 0 0 !important;
}

div#contents .no__2 .container .wrap_block{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-evenly;
}

div#contents .no__2 .container .wrap_block .box{
  display: grid;
  margin-right: 20px;
}

div#contents .no__2 .container .wrap_block .no_btn{
  display: block !important;
}

div#contents .no__2 .container .wrap_block .box:last-child{
  margin-right: 0;
}

div#contents .no__2 .container .wrap_block .box .box_btn{
  text-align: center;
  margin: 0 0 2em 0;
}

div#contents .no__2 .container .wrap_block .box .box_btn a{
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.7em;
  color: #fff;
  background-color: #ff8a52;
  box-shadow: 3px 4px 0 0 #e94e1a;
  padding: 0.25em 2em;
  border-radius: 10em;
  -moz-border-radius: 10em;
  -webkit-border-radius: 10em;
  text-align: center;

}

div#contents .no__2 .container .wrap_block .box .box_btn a:hover{
  filter: brightness(70%);
}

div#contents .no__2 .container .wrap_block .box p{
  text-align: center;
  margin: 0 0 0.2em 0;
  font-size: 1.9em;
  font-weight: bold;
  color: #30b2e4;
}

div#contents .no__2 .container .wrap_block .box .font_adjust{
  font-size: 1.7em;
}

div#contents .no__2 .container .wrap_block .box .box_btn a img{
  vertical-align: middle;
  width: 190px;
}

div#contents .no__2 .container .wrap_list{
  margin-top: 3rem;
}
div#contents .no__2 .container .wrap_list h4{
  color: #fff;
  text-align: center;
  background: #2db2e4;
  border-radius: 15px 15px 0 0;
  -moz-border-radius: 15px 15px 0 0;
  -webkit-border-radius: 15px 15px 0 0;
  padding: 0.8em 1em 0.7em 1em;
  font-size: 1.5em;
}

div#contents .no__2 .container .wrap_list .list_box{
  background: #fff;
  border-radius: 0 0 15px 15px;
  border-left: #2db2e4 2px solid;
  border-right: #2db2e4 2px solid;
  border-bottom: #2db2e4 2px solid;
  margin-bottom: 25px;
}

div#contents .no__2 .container .wrap_list .list_box ul{
  padding: 1.5rem;
}

div#contents .no__2 .container .wrap_list .list_box ul .list_title{
  width: 200px;
  color: #fff;
  text-align: center;
  background-color: #2db2e4;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
}

div#contents .no__2 .container .wrap_list .list_box ul .list_text{
  margin-bottom: 1.5rem;
}

div#contents .no__2 .container .wrap_list .ttl__area{
  color: #fff;
  text-align: center;
  background: #fa9066;
  border-radius: 15px 15px 0 0;
  -moz-border-radius: 15px 15px 0 0;
  -webkit-border-radius: 15px 15px 0 0;
  padding: 0.8em 1em 0.7em 1em;
  font-size: 1.5em;
}

div#contents .no__2 .container .wrap_list .extra__detail{
  border-radius: 0 0 15px 15px;
  -moz-border-radius: 0 0 15px 15px;
  -webkit-border-radius: 0 0 15px 15px;
  border-left: #fa9066 2px solid;
  border-right: #fa9066 2px solid;
  border-bottom: #fa9066 solid;
  background: #fff;
  padding: 1.5rem;
}

div#contents .no__2 .container .wrap_list .extra__detail .txt__area{
  margin-top: 0;
  margin-bottom: 0;
}

div#contents .no__2 .container .wrap_list .extra__detail .ttl__area{
  font-weight: bold;
}

div#contents .no__2 .container .wrap_list .extra__detail .Lists{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 1.5rem 0;
}

div#contents .no__2 .container .wrap_list .extra__detail .Lists li{
  position: relative;
  display: block;
  width: 250px;
  height: 180px;
  background-color: #fff;
  transition: .6s;
  border-radius: 8px;
  overflow: hidden;
  border: 1px #dddddd solid;
  margin-bottom: 15px;
}

div#contents .no__2 .container .wrap_list .extra__detail .Lists li:nth-of-type(3n+1) {
  margin-left: 15px;
}

div#contents .no__2 .container .wrap_list .extra__detail .Lists li + li {
  margin-left: 15px;
}

div#contents .no__2 .container .wrap_list .extra__detail .Lists img{
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 100%;
  max-height: 100%;
  padding: 8px;
  transform: translate(-50%,-50%);
}

div#contents .no__2 .container .wrap_list .close_btn{
  text-align: center;
}

div#contents .no__2 .container .wrap_list .close_btn span{
  display: inline-block;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.7em;
  color: #fff;
  background-color: #2db2e4;
  padding: 0.5em 10em;
  border-radius: 0.5em;
  -moz-border-radius: 0.5em;
  -webkit-border-radius: 0.5em;
  text-align: center;
}

div#contents .no__2 .container .wrap_list .close_btn span:hover{
  filter: brightness(70%);
}

div#contents .no__2 .container .wrap_list .close_btn span img{
  vertical-align: middle;
  margin-bottom: 5px;
  margin-left: 10px;
  width: 25px;
}

/* COMMINGSOON */
div#contents .no__2 .comingsoon{
  background-color: #2db2e4 !important;
  padding: 3.94em 1.5em !important;
  border-radius: 0.8em !important;
  box-shadow: none !important;
  margin-bottom: 0.5em !important;
  text-align: center !important;

}
div#contents .no__2 .comingsoon .container_inner .comingsoon_text{
  color: #fff;
  font-size: 1.5em;
  text-align: center;
}

/* 終了したイベント */

div#contents .section .title_closed{
  -webkit-box-pack: center;
	-ms-flex-pack: center;
  justify-content: center;
  border-bottom: 3px solid #909090;
  padding-bottom: 20px;
  margin-top: 30px;
  margin-bottom: 30px;
}

div#contents .no__2 .container_closed{
  background-color: #cacaca !important;
  box-shadow: 4px 4px 0 0 #909090 !important;
}

div#contents .no__2 .container_closed .title__text{ 
  background-color: #909090 !important;
}

div#contents .no__2 .container_closed .wrap_block .box p {
  color: #909090 !important;
}

div#contents .no__2 .container_closed .date_place p{
  background-color: #909090 !important;
}

div#contents .no__2 .container_closed .date_place h3{
  color: #909090 !important;
}

div#contents .no__2 .container_closed .date_place h3::after{
  border-bottom: 1px solid #909090 !important;
}

div#contents .no__2 .container_closed  .wrap_list h4{
  background: #909090 !important;
}

div#contents .no__2 .container_closed .wrap_list .list_box{
  border-left: #909090 2px solid !important;
  border-right: #909090 2px solid !important;
  border-bottom: #909090 2px solid !important;
}

div#contents .no__2 .container_closed .wrap_list .list_box ul .list_title{
  background-color: #909090 !important;
}

div#contents .no__2 .container_closed .wrap_list .close_btn span{
  background-color: #909090 !important;
}




/*==================================================
ふわっ
===================================*/

/* fadeUp */
.fadeUp{
  animation-name:fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode:forwards;
  opacity:0;
  }

  @keyframes fadeUpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }

    to {
      opacity: 1;
    transform: translateY(0);
    }
  }


  /* スクロールをしたら出現する要素にはじめに透過0を指定　*/

  .fadeUpTrigger{
      opacity: 0;
  }

/*==================================================
アコーディオンのためのcss
===================================*/

/*アコーディオンタイトル*/
.accordion_title{
  cursor: pointer;
  transition: all .5s ease;
}

/*　closeというクラスがついたら形状変化　*/
.accordion_title.close .item_btn{
  display: none;
}

/*アコーディオンで現れるエリア*/
.accordion_box {
  display: none;/*はじめは非表示*/
}

/* ------------------------------
　　for Smartphone
------------------------------ */
.cx_smartphoneview #theme { min-width:640px;}

.cx_smartphoneview .sp{
	display: block;
}
.cx_smartphoneview .pc{
	display: none;
}

.cx_smartphoneview #fp-contents {
  font-size: 24px;
}

/* ----------
　　TOP
---------- */
.cx_smartphoneview div#header_01.top{
	height: 600px;
	background-image: url(../image/header_bg_sm.png);
	background-size: 640px auto;
  background-repeat: no-repeat;
}
.cx_smartphoneview div#header_02.bottom{
	display: none;
}

.cx_smartphoneview div#header_bottom_content{
  display: none;
}

.cx_smartphoneview div#greeting_btn a{
  width: 90%;
  color: #fff;
  background-color: #f0833a;
  box-shadow: 3px 4px 0 0 #333;
  padding: 0.5em 0;
  border-radius: 0.4em;
  -moz-border-radius:	0.4em;
	-webkit-border-radius: 0.4em;
}

.cx_smartphoneview div#contents {
  width: 90%
}

.cx_smartphoneview div#contents .section {
  padding: 2em 1em;
}

.cx_smartphoneview div#contents .section .container .topics_text{
  font-size: 1.2em;
}

.cx_smartphoneview div#contents .section h2 span {
  font-size: 20px;
}

.cx_smartphoneview div#contents .section .container .photo img {
  width: 100%
}

.cx_smartphoneview div#contents .no__2 .container .container_inner{
  padding: 1em;
}

.cx_smartphoneview div#contents .no__2 .container .date_place p {
  width: 160px;
}

.cx_smartphoneview div#contents .no__2 .container .date_place h3{
  font-size: 2em;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_block{
  display:block;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_block .box{
  display: block;
  margin-right: 0;
  margin-bottom: 20px;
  /*margin-bottom: 40px;*/
}

.cx_smartphoneview div#contents .no__2 .container .wrap_block .box .box_btn a {
  padding: 0.5em 0;
  border-radius: 2em;
  -moz-border-radius: 2em;
  -webkit-border-radius: 2em;
  width: 100%;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_block .box .box_btn a img {
  vertical-align: middle;
  width: 270px;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_list .list_box ul .list_title {
  width: 270px;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_list .extra__detail .Lists li {
  width: 100%;
  height: 350px;
  margin-left: 0;
  margin-bottom: 20px;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_list .close_btn span {
  padding: 0.5em 0;
  width: 100%;
  font-size: 1.2em;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_list .close_btn span img{
  vertical-align: middle;
  margin-bottom: 5px;
  margin-left: 10px;
  width: 35px;
}

.cx_smartphoneview div#contents .no__2 .comingsoon {
  padding: 2.4em 1.5em !important;
}

.cx_smartphoneview div#contents .no__2 .container_closed .date_place p {
  width: 160px;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_list h4{
  font-size: 1.5em;
  padding: 0.8em 0.5em 0.7em 0.5em;
}

.cx_smartphoneview div#contents .no__2 .container .wrap_list .ttl__area{
  font-size: 1.4em;
  padding: 0.8em 0.5em 0.7em 0.5em;
}


/* モーダル */
.modal_open,
.modal_open_2{cursor: pointer;}
.modal_container{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,75%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  z-index: 10000;
}
.modal_container:before,
.mosal:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
.modal_container.active,
.modal.active{
  opacity: 1;
  visibility: visible;
}
.modal_body{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 1020px;
  width: 77%;
  border: 3px solid #f0833a;
  border-radius: 10px;
  background: #fff;
  text-align: left;
}
.modal_close{cursor: pointer;}
.modal_close img {
  width: 30px;
  height: 30px;
  margin-left: 10px;
}
.modal_content_top,
.modal_content_btm {
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal_content_top {
  color: #f0833a;
  font-weight: bold;
  float: right;
  margin: 15px 20px 10px 0;
}
.modal_content_mid {
  clear: both;
  width: 90%;
  margin: 0 auto;
}
.modal_content_btm {
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  width: 60%;
  height: 60px;
  margin: 45px auto;
  background-color: #f0833a;;
  border-radius: 10px;
  text-align: center;
}
.modal .modal_body{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 1020px;
  width: 77%;
  border: 3px solid #ff8a52;
  border-radius: 10px;
  background: #fff;
  text-align: left;
  margin-top: 150px;
}
.modal .modal_content_top {color: #ff8a52;}
.modal .modal_content_btm {background-color: #ff8a52;}
.modal{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,75%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  z-index: 10000;
}
.modal .modal_content_mid .movie {text-align: center;margin-top: 20px;}
.modal .modal_content_mid .movie iframe{max-width: 100%;}
.modal .modal_content_mid {text-align: left!important;}
.modal .modal_content_mid .tit {
  font-size: 2em;
  font-weight: bold;
  margin-bottom: 10px;
  text-align: left!important;
}
.modal .modal_content_mid .sub_tit {
  font-size: 1.5em;
  font-weight: bold;
  color: #ff8a52;
  text-align: left!important;
}
.modal .modal_content_mid .line {
  width: 100%;
  height: 1px;
  background-color: #ff8a52;
  margin: 5px 0 10px 0;
}
.modal .modal_content_mid .text {text-align: left!important;}

.cx_smartphoneview .modal_body{width: 95%;}
.cx_smartphoneview .modal .modal_body{width: 95%;}
