@charset "utf-8";
/* CSS Document */


/* ----------------------
   body
---------------------- */
/* ----------------------
   web font 'NotoSerif'
---------------------- */
@font-face {
  font-family: 'NotoSerif';
  font-style: normal;
  font-weight: normal;
  src: url('fonts/NotoSerifJP-Regular.woff') format('woff');
  font-display: swap;
}
@font-face {
  font-family: 'NotoSerif';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/NotoSerifJP-Bold.woff') format('woff');
  font-display: swap;
}


/* ---font-size--- */

html {font-size: 62.5%;}

body {	
	font-family: 'NotoSerif',游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E;	
	font-size: 10px; 
	font-size: 1rem; 
	text-align:left;
	-webkit-text-size-adjust: 100%;
	overflow: hidden;
	background: #fff;
}
body #wrapper {
	font-size: 2.5rem;
}
body .ind {
	display: inline-block;
	padding-left: 1em;
	text-indent: -1em;
}
body .ind_to {
	display: inline-block;
	padding-left: 1em;
}
body.en .ind {
	display: inline-block;
	padding-left: 0.3em;
	text-indent: -0.3em;
}
body.en .ind_to {
	display: inline-block;
	padding-left: 0.3em;
}
body.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: url(../img/hishi.jpg);
}
/* ---clearfix--- */
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
/* ---flex--- */
.flex {
	display: flex;
}
/* --- bold --- */
.bold {
	font-weight: bold;
}

.defo_p {
	font-size: 1.6rem;
	line-height: 1.6;
	margin: 10px 0;
}

.txt_s {
	letter-spacing: -2px;
}

/* ::: align ::: */
.al { text-align: left !important; }
.ac { text-align: center !important; }
.ar { text-align: right !important; }
.vt { vertical-align: top !important; }
.vb { vertical-align: bottom !important; }

/* ::: margin 0 auto :::*/
.ma { margin: 0 auto !important; display: block; }

/* ::: float ::: */
.fl { float: left !important; }
.fr { float: right !important; }

.sp_only { display: none; }

/*---- anchor ----*/
.anchor {
	margin-top: -130px;
	padding-top: 130px;
}

body {
	width: 100%;
}

body a {
	opacity: 1;
	transition: 0.3s ease-in-out;
	color: #000;
	text-decoration: none;
	padding: 0;
}
body a:hover {
	opacity: 0.8;
}
body a img {
	opacity: 1;
	transition: 0.3s ease-in-out;
}
body a:hover img {
	opacity: 0.8;
}
body img {
	vertical-align: bottom;
}
body ul {
	list-style-type: none;
}
body .center {
	margin: 0 auto;
	text-align: center;
}

/*--- pc_sp change ---*/
body .pc_only {
	display: block !important;
}
body .sp_only {
	display: none !important;
}

/*-------------------------
	header
--------------------------*/
header {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	background: #fff;
	z-index: 900;
	width: 100%;
	height: 130px;
}
/*--- header_up ---*/
header .header_up_cover {
	width: 100%;
	background: #eee;
}
header .header_up_cover .header_up {
	width: 1100px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
	height: 80px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
/*--- header_down ---*/
header .header_down_cover {
	width: 100%;
	background: #030000;
    box-shadow:0px 6px 6px 0px rgba(3,0,0,0.6);
	height: 50px;
}
header .header_down_cover .header_down {
	width: 1100px;
	margin: 0 auto;
	padding: 0 25px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 50px;
}
header .header_down_cover .header_down .text_box {
	color: #fff;
	font-size: 1.6rem;
}
/*-- btn_cover --*/
header .header_down_cover .header_down .btn_cover {
	flex-grow: 2;
	display: flex;
	justify-content: flex-end;
}
header .header_down_cover .header_down .btn_cover .lange_btn {
	width: 120px;
	height: 30px;
	color: #fff;
	background: #ce3a2a;
	font-size: 1.4rem;
	padding: 5px 15px 0 25px;
	margin: 0 8px;
	box-sizing: border-box;
	font-weight: normal;
	text-align: right;
	position: relative;
	display: block;
}
.en header .header_down_cover .header_down .btn_cover .lange_btn {
	font-size: 1.3rem;
}
header .header_down_cover .header_down .btn_cover .lange_btn_cn {
	width: auto;
	height: 30px;
	color: #0D2D00;
	background: url(../img/logo_ch.png) no-repeat center left 5px #fff;
	background-size: 24px;
	font-size: 1.6rem;
	padding: 2px 10px 0 40px;
	margin: 0 8px;
	box-sizing: border-box;
	font-weight: normal;
	text-align: right;
	position: relative;
	display: block;
	border: 2px solid #84be00;
}

header .header_down_cover .header_down .btn_cover .lange_btn:before {
	content: "";
	background: url(../img/img_shuri01.png) no-repeat center;
	width: 24px;
	height: 24px;
	position: absolute;
	top: 3px; 
	left: 6px;
    animation: linear rotation 3s infinite;
}
@keyframes rotation {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}

/*--- share_area ---*/
header .header_down_cover .header_down .share_area {
	display: flex;
	justify-content: space-between;
	color: #fff;
	align-items: center;
	padding: 0 0 0 25px;
	box-sizing: border-box;
}
header .header_down_cover .header_down .share_area .text_cel {
	font-size: 1.6rem;
	padding-right: 10px;
	box-sizing: border-box;
}
header .header_down_cover .header_down .share_area .share_btn_cover img {
	position: relative;
	top: -5px;
}
/*-------------------------
	sp_header
--------------------------*/
body .sp_header {
	display: none;
}




/*-------------------------
	key_visual
--------------------------*/
#key_visual {
	width: 100%;
	position: relative;
	z-index: 800;
}

/*--- slide_top ---*/
#key_visual .slide_top .slick_box {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	z-index: 820;
}

/*-------  main_visual -------*/

.signboard {
	display: block;
	width: 100%;
	position: absolute;
	top: 130px;
	text-align: center;
	z-index: 2000;
}

/*-------------------------
	button_modal
--------------------------*/
.button_modal {
	z-index: 960;	
}
.button_modal .switch_b {
	width: 86px;
	height: 287px;
	position: fixed;
	top: 45%;
	right: 5px;
	display: block;
	transition: ease-in-out 0.3s;
	background: url(../img/btn_goods.png) no-repeat center center;
	cursor: pointer;
	z-index: 970;
}
.button_modal .switch_b:hover {
	width: 86px;
	height: 287px;
	display: block;
	trasition: ease-in-out 0.3s;
	opacity: 0.9;
}
.openmodal .button_modal .switch_b {
	width: 86px;
	height: 287px;
	display: block;
	transition: ease-in-out 0.3s;
	background: url(../img/btn_goods_off.png) no-repeat center center;
}



/*-------------------------
	modal_area
--------------------------*/
body .modal_area {
	width: 0;
	height: 0;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 920;
}
body .modal_area .modal_wrapper {
	width: 0;
	height: 0;
	background: rgba(0,0,0,0.7);
	position: relative;
	top: 0;
	right: 0;
	z-index: 930;
}
body .modal_area .modal_wrapper .modal_q {
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.7);
	position: absolute;
	top: 0;
	right: -3000px;
	z-index: 940;
	transition: ease-in-out 0.3s;
}
body #modal.openmodal .modal_wrapper {
	width: 100%;
	height: 100%;
}
body #modal.openmodal .modal_wrapper .modal_q {
	width: 100vw;
	height: 100vh;
	background: rgba(0,0,0,0.7);
	position: absolute;
	top: 0;
	right: 0;
	z-index: 940;
	transition: ease-in-out 0.3s;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
body .modal_area .modal_wrapper .modal_q .slick_box {
	width: 996px;
	height: 657px !important;
	height: auto;
	background: url(../img/maki_back.png) no-repeat center center;
	background-size: contain;
	overflow: visible;
	padding: 65px 0 0 60px;
	z-index: 999;
}

/*左右の矢印の色を変える*/
.slick_box .slick-prev:before,
.slick_box .slick-next:before {
    color: #d2231a;
}
/*左右の矢印の位置を変える*/
.slick_box .slick-next {
    right: -60px;
    z-index: 99;
}
.slick_box .slick-prev {
     left: -60px;
    z-index: 100;
}
/*スライド数のドットの色を変える*/
.slick_box .slick-dots li.slick-active button:before,
.slick_box .slick-dots li button:before {
    color: #fff;
}
/*スライド画像の横幅可変*/
.slick_box img {
    max-width: 100%;
     height: auto;
}
.slick_box .thumb-item {
	width: 576px !important;
	height: 324px !important;
	margin: 0 auto;
}
.slick_box .thumb-item .title {
	display: block;
	font-size:2.6rem;
}
.slick_box .thumb-item .prace {
	display: block;
	font-size:2.1rem;
	padding-bottom: 5px;
}
.slick_box .thumb-item-nav {
	width: 588px !important;
	margin: 0 auto;
	top: 80px;
	position: relative;
}


/*-------------------------
	main_contents
--------------------------*/
#main_contents {
	width: 100%;
	background: #000;
}

/*-- content --*/
#main_contents .content {
	width: 100%;
	padding: 0 30px 0;
}

#main_contents .content .content_inner {
	width: 1100px;
	margin: 0 auto;
	background: none;
	display: flex;
	padding: 0;
}

/*-------------------------
	left_content
--------------------------*/
#main_contents .content .content_inner .left_content {
	width: 140px;
	background: #aaa9a9;
	position: relative;
	margin-left: 15px;
	padding-top: 70px;
}
#main_contents .content .content_inner .left_content:after {
	content: "";
	width: 130px;
	height: 100%;
	position: absolute;
	top: 0; 
	border-left: 2px solid #fff;
	border-right: 2px solid #fff;
	left: 5px;
}
#main_contents .content .content_inner .left_content .fixed_img {
 	text-align: center;
	z-index: 600;
}
#main_contents .content .content_inner .left_content .fixed_img .cover {
	width: 140px;
	text-align: center;
	z-index: 600;
	position: relative;
	opacity: 0;
}
#main_contents .content .content_inner .left_content .fixed_img .cover .text_in {
	color: #ce3a2a;
	text-shadow: 0 1px 1px rgba(0,2,0,0.6);
	position: relative;
	font-weight: bold;
	top: -50px;
	line-height: 1.2;
}

#main_contents .content .content_inner .left_content .fixed_img .cover .text_in:after {

	content: "";
	background: url(../img/img_arrow_btm.png) no-repeat center center;
	width: 40px;
	height: 36px;
	position: absolute;
	bottom: -40px;
	left: 50%;
	margin-left: -20px;
}
#main_contents .content .content_inner .left_content .fixed_img .cover .text_in .mini {
	font-size: 1.8rem;
}
#main_contents .content .content_inner .left_content .fixed_img #ad1 {
	transition: ease-in-out 0.5s;
}
#main_contents .content .content_inner .left_content .fixed_img #ad1.open {
	transition: ease-in-out 0.5s;
	position: relative;
	animation: ease-in-out onece 3.2s both;
	/*animation: horizontal 1s ease-in-out infinite alternate;*/
	opacity: 1;
}
#main_contents .content .content_inner .left_content .fixed_img #ad1.open:after {
	content: "";
	position: absolute;
	background: url(../img/wave_r.png) no-repeat center center;
	background-size: contain;
	width: 98px;
	height: 384px;
	bottom: -50px;
	right: -50px;
	z-index: 680;
	animation: ease-in-out wave_action_r 1.8s both;
}
@keyframes wave_action_r {
    0% { 
    transform:translateX(-30px); 
	opacity: 0;
}
    80% { 
	opacity: 1;
}

  100% { 
  transform:translateX( 0px) translateY( 20px) skewY(-30deg) scale(1.3, 1.1);  opacity: 0;
  }
}
#main_contents .content .content_inner .left_content .fixed_img #ad1.open:before {
	content: "";
	position: absolute;
	background: url(../img/wave_l.png) no-repeat center center;
	background-size: contain;
	width: 98px;
	height: 384px;
	bottom: -50px;
	left: -50px;
	z-index: 680;
	animation: ease-in-out wave_action_l 1.8s both;
}
@keyframes wave_action_l {
    0% { 
    transform:translateX(30px); 
	opacity: 0;
}
    80% { 
	opacity: 1;
}

  100% { 
  transform:translateX( 0px) translateY( 20px) skewY(30deg) scale(1.3, 1.1);
  opacity: 0;
  }
}



#main_contents .content .content_inner .left_content .fixed_img #ad1.is-show {
	padding-top: 0px;
	box-sizing: border-box;
	top: 0;
	animation: ease-in-out onece 3.2s both;
	/*animation: horizontal 1s ease-in-out infinite alternate;*/
	opacity: 1;
}
#main_contents .content .content_inner .left_content .fixed_img #ad1.is-show img {
	 animation: vertical 1s ease-in-out infinite alternate;
	 transition: ease-in-out 0.5s;
	 position: relative;
	 z-index: 700;
}

@keyframes horizontal {
    0% { transform:translateX( -3px); }
  100% { transform:translateX(  0px); }
}
@keyframes vertical {
    0% { transform:translateY(-10px); }
  100% { transform:translateY(  0px); }
}
@keyframes onece {
    0% { transform:translateY(-100%); }
  60% { transform:translateY( 80%); }
  100% { transform:translateY( 50%); }
}
#main_contents .content .content_inner .left_content .fixed_img #ad1.is-show a:hover {
	opacity: 1;
}
#main_contents .content .content_inner .left_content .fixed_img #ad1.is-show a:hover img {
	opacity: 1;
}
/*-------------------------
	right_content
--------------------------*/
#main_contents .content .content_inner .right_content {
	width: calc( 100% - 155px);
	background: #030000;
	position: relative;
	z-index: 10;
	padding-top: 70px;
}

/*--- title_cel ---*/
#main_contents .content .content_inner .right_content .title_cel {
	background: #e73828;
	background-size: 60px 60px;
	text-align: center;
	box-sizing: border-box;
	font-size: 4rem;
	margin-bottom: 30px;
	position: relative;
	z-index: 10;
}
.en #main_contents .content .content_inner .right_content .title_cel {
	font-size: 3.6rem;
}
#main_contents .content .content_inner .right_content .title_cel:after {
	content: "";
	position: absolute;
	width: 100%;
	top: 0;
	right: -100%;
	height: 100%;
	background: linear-gradient(90deg, #e73828, #000000);
}
#main_contents .content .content_inner .right_content .title_cel:before {
	content: "";
	position: absolute;
	width: 100%;
	top: 0;
	left: -100%;
	height: 100%;
	background: linear-gradient(-90deg, #e73828, #000000);
	z-index: 0;
}
/*--- title_in ---*/
#main_contents .content .content_inner .right_content .title_cel .title_in {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: visible;
}
#main_contents .content .content_inner .right_content .title_cel .title_in:after {
	position: absolute;
	content: "";
	width: 300%;
	height: calc( 100% - 16px);
	top: 8px;
	left: -100%;
	border-top: 2px solid #030000;
	border-bottom: 2px solid #030000;
	z-index: 320;
}
/*--- anime_t ---*/
#main_contents .content .content_inner .right_content .title_cel .title_in .anime_t {
	padding: 20px 55px;
	box-sizing: border-box;
	display: inline-block;
	font-weight: bold;
	width: auto;
	position: relative;
	color: #030000;
}
#main_contents .content .content_inner .right_content .title_cel .title_in .anime_t:after {
	content: "";
	background: url(../img/img_shuri02.png) no-repeat center;
	width: 52px;
	height: 52px;
	position: absolute;
	top: calc( 50% - 26px );
	right: 0;
}
.title_cel.is-show .title_in .anime_t:after {
	  animation: ease-in-out right-rotation 1s both;
	  opacity: 0;
}
@keyframes right-rotation {
	0% {
		transform: rotate(0);
		right: -100px;
		opacity: 0;
	}
	30% {
		opacity: 1;
	}
	100% {
		transform: rotate(360deg);
		right: 0;
		opacity: 1;
	}
}
#main_contents .content .content_inner .right_content .title_cel .title_in .anime_t:before {
	content: "";
	background: url(../img/img_shuri02.png) no-repeat center;
	width: 52px;
	height: 52px;
	position: absolute;
	top: calc( 50% - 26px );
	left: 0;
}
.title_cel.is-show .title_in .anime_t:before {
	  animation: ease-in-out left-rotation 1s both;
	  opacity: 0;
}
@keyframes left-rotation {
	0% {
		transform: rotate(0);
		left: -100px;
		opacity: 0;
	}
	30% {
		opacity: 1;
	}
	100% {
		transform: rotate(-360deg);
		left: 0;
		opacity: 1;
	}
}


/*--- con_box item ---*/
#main_contents .content .content_inner .right_content .con_box {
	width: 100%;
	background: url("../img/kumo-l.png") no-repeat center left #030000;
	color: #fff;
	background-size: contain;
	position: relative;
	overflow:visible;
	padding-bottom: 60px;
}
#main_contents .content .content_inner .right_content .con_box .defo_p {
	font-size: 2.2rem;
	line-height: 1.6;
}

/*--- text_big ---*/
.right_content .con_box .text_big {
	width: 915px;
	font-size: 2.5rem;
	line-height: 2;
	text-align: center;
	margin: 0 auto 30px; 
}
.right_content .con_box .text_big .mini {
	font-size: 1.8rem;
	display: inline-block;
}
/*--- colume_two ---*/
.right_content .con_box .colume_two {
	width: 915px;
	margin: 0 auto 100px;
	justify-content: space-between;
}
.right_content .con_box .colume_two .defo_p {
	width: 450px;
}
.right_content .con_box .colume_two .img_cel {
	width: 450px;
	height: auto;
}


/*--- course_cel ---*/
.right_content .con_box .course_cel {
	width: 700px;
	margin: 0 auto 30px;
}
.right_content .con_box .course_cel .img_map {
	margin-bottom: 30px;
}
.right_content .con_box .course_cel .times {
	margin-bottom: 30px;
	justify-content: space-between;
}
.right_content .con_box .course_cel .times .times_dig {
	width: 50%;
}
.right_content .con_box .course_cel .times .times_dig .times_list {
	width: 280px;
	margin-left: 36px;
	text-align: center;
	font-size: 2.8rem;
}
.right_content .con_box .course_cel .times .times_dig .times_list .ti_li {
	width: 280px;
	border: 2px solid #fff;
	margin-bottom: 23px;
	position: relative;
}
.en .right_content .con_box .course_cel .times .times_dig .times_list .ti_li {
	padding: 8px 0;
}
.right_content .con_box .course_cel .times .times_dig .times_list .ti_li:first-child, 
.right_content .con_box .course_cel .times .times_dig .times_list .ti_li:last-child {
	border: 2px solid #da3a2a;
}
.right_content .con_box .course_cel .times .times_dig .times_list .ti_li:after {
	content: "";
	position: absolute;
	width: 2px;
	height: 23px;
	background: #fff;
	bottom: -25px;
	left: calc(50% - 1px);
}
.right_content .con_box .course_cel .times .times_dig .times_list .ti_li:last-child:after {
	content: none;
}
/*--- squ_title ---*/
.right_content .con_box .squ_title {
	position: relative;
	padding-left: 44px;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 3rem;
	margin-bottom: 20px;
}
.right_content .con_box .squ_title.cb {
	color: #030000;
}
.right_content .con_box .squ_title.topmar {
	margin-top: 35px;
}
.right_content .con_box .squ_title:after {
	position: absolute;
	content: "";
	width: 30px;
	height: 30px;
	border: 8px solid #da3a2a;
	top: 8px;
	left: 3px;
}
.en .right_content .con_box .squ_title:after {
	top: 4px;
}
 .right_content .con_box .caution_tx {
	width: 700px;
	margin: 0 auto;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #fff;
}
.right_content .con_box .caution_tx.cw {
	width: 700px;
	margin: 0 auto;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #fff;
}
/*--- hop ---*/
.right_content .con_box.hop {
    position: relative;
	z-index: 700;
}
.right_content .con_box.hop:after {
	content: "";
	width: 300%;
	height: 100%;
	background: url(../img/content_back.png) no-repeat center center #030000;
	position: absolute;
	top: 0px;
	left: -100%;
}
.right_content .con_box.hop > * {
    position: relative;
	z-index: 50;
}


/*--- aqua ---*/
.right_content .con_box#aqua {
	margin-top: 120px;
    position: relative;
	z-index: 40;
}
.right_content .con_box#aqua:before {
	content: "";
	width: 300%;
	height: 130px;
	background: url(../img/img_wave.png) repeat-x top center;
	position: absolute;
	top: -130px;
	left: -100%;
}
.right_content .con_box#aqua:after {
	content: "";
	width: 300%;
	height: 100%;
	background: linear-gradient( #6ebbe4, #030000 ) , url(../img/content_back.png) no-repeat center center;
	position: absolute;
	top: 0px;
	left: -100%;
}
.right_content .con_box .title_cel {
	position: relative;
	z-index: 50;
}

/*--- top_cel ---*/
.right_content .con_box .top_cel {
	width: 885px;
	margin: 0 auto;
	justify-content: space-between;
	margin-bottom: 60px;
	position: relative;
	z-index: 50;
}
.right_content .con_box .top_cel .black_dig {
	width: 420px;
	background: #efeeed;
    box-shadow:0px 6px 6px 0px rgba(3,0,0,0.6);
	color: #030000;
}
.right_content .con_box .top_cel .black_dig .title_t {
	text-align: center;
	background: #030000;
	padding: 20px 0 18px;
	box-sizing: border-box;
	color: #fff;
	font-size: 3.6rem;
	font-weight: bold;
    box-shadow:0px 3px 3px 0px rgba(3,0,0,0.6);
	position: relative;
}
.right_content .con_box .top_cel .black_dig .title_t:after {
	content: "";
	width: 100%;
	position: absolute;
	top: 7px;
	left: 0;
	height: calc(100% - 14px);
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
}
.right_content .con_box .top_cel .black_dig .text_d {
	padding: 12px 0;
	box-sizing: border-box;
	font-size: 3.6rem;
	color: #da3a2a;
	text-align: center;
	font-weight: bold;
}
.right_content .con_box .top_cel .black_dig .text_d .number {
	font-size: 4.8rem;
}

/*--- white_cel ---*/
.right_content .con_box .white_cel {
	width: 885px;
	margin: 0 auto;
	margin-bottom: 60px;
	position: relative;
	z-index: 100;
	background: #efeeed;
    box-shadow:0px 6px 6px 0px rgba(3,0,0,0.6);
	color: #030000;
}
.right_content .con_box .white_cel:last-child {
	margin-bottom: 0;
}
.right_content .con_box .white_cel .white_title {
	width: 100%;
	background: #fff;
	padding: 15px 0;
    box-shadow:0px 6px 6px 0px rgba(3,0,0,0.6);
	font-size: 3.6rem;
	font-weight: bold;
	text-align: center;
	color: #030000;
	margin-bottom: 30px;
	position: relative;
}
.right_content .con_box .white_cel .white_title:after {
	content: "";
	position: absolute;
	top: 7px;
	left: 7px;
	height: calc(100% - 14px);
	width: calc(100% - 14px);
	border: 2px solid #030000;
}

/*--- wide ---*/
.right_content .con_box .white_cel .wide {
	padding: 0 25px 25px;
	box-sizing: border-box;
	justify-content: space-between;
}
.right_content .con_box .white_cel .wide .left_eme {
	width: 342px;
}
.right_content .con_box .white_cel .wide .left_eme .time_list {
	width: 280px;
	margin-left: 35px;
	background: #fff;
}
.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li {
	display: flex;
	font-size: 2.8rem;
}
.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li .num {
	width: 50px;
	text-align: center;
	background: #030000;
	color: #fff;
}
.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li:nth-child(2n) .num {
	background: #fff;
	color: #030000;
}
.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li .time {
	width: 230px;
	text-align: center;
}
.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li .time .mini {
	font-size: 1.8rem;
}
.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li:nth-child(2n) .time {
	background: #030000;
	color: #fff;
}

.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li.red .num {
	background: #f9d0ba;
	color: #000;
	border: 2px solid #000;
	border-right: none;
	box-sizing: border-box;	
	display: flex;
	align-items: center;
	text-align: center;
	justify-content: center;
}
.right_content .con_box .white_cel .wide .left_eme .time_list .ti_li.red .time {
	background: #e50014;
	color: #fff;
	border: 2px solid #000;
	box-sizing: border-box;
	line-height: 1.2;
}

/*-- button_box --*/

.right_content .con_box .white_cel .wide .left_eme .button_box .shuri_button {
	width: 280px;
	height: 53px;
	font-size: 2.2rem;
	color: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000;
	position: relative;
	margin-bottom: 20px;
}
.right_content .con_box .white_cel .wide .left_eme .button_box .shuri_button:before {
	content: "";
	background: url(../img/img_shuri03.png) no-repeat center;
	width: 42px;
	height: 42px;
	position: absolute;
	top: 6px; 
	left: 6px;
  animation: linear rotation 3s infinite;
}


/*-- caution_tx --*/
.right_content .con_box .white_cel .wide .left_eme .caution_tx {
	width: 308px;
	padding-top: 5px;
	margin-left: 35px;
	color: #030000;
}


/*-- right_eme --*/
.right_content .con_box .white_cel .wide .right_eme {
	width: calc(100% - 342px);
}
.right_content .con_box .white_cel .wide .right_eme .map_fit {
	background: #fff;
}
.right_content .con_box .white_cel .wide .right_eme .map_fit .text_on {
	padding: 20px;
	box-sizing: border-box;
	font-size: 2.2rem;
}
.right_content .con_box .white_cel .wide .right_eme .map_fit iframe {
	margin: 0 6px;
	width: 480px;
}
.right_content .con_box#aqua .caution_tx {
	position: relative;
	z-index: 200;
}

/*---- white_cel nar ----*/
.right_content .con_box .white_cel.nar {
	width: 500px;
	magin: 0 auto;
	padding-bottom: 25px;
}
.right_content .con_box .white_cel.nar .price_dig {
	width: 450px;
	margin: 0 auto 30px;
	background: #fff;
	text-align: center;
}
.right_content .con_box .white_cel.nar .price_dig .title_eme {
	background: #030000;
	font-size: 3.6rem;
	color: #fff;
	font-weight: bold;
	padding: 16px 0 13px;
	position: relative;
	line-height: 1;
}
.right_content .con_box .white_cel.nar .price_dig .title_eme .mini {
	font-size: 2.4rem;
}
.right_content .con_box .white_cel.nar .price_dig .title_eme:after {
	position: absolute;
	content: "";
	width: 30px;
	height: 30px;
	border: 8px solid #da3a2a;
	top: 16px;
	left: 13px;
}
.right_content .con_box .white_cel.nar .price_dig .text_eme {
	font-size: 4.8rem;
	color: #da3a2a;
	font-weight: bold;
	padding: 16px 0 13px;
	position: relative;
	line-height: 1;
}
.right_content .con_box .white_cel.nar .price_dig .text_eme .yen {
	font-size: 3.6rem;
}
.right_content .con_box .white_cel.nar .caus {
	font-size: 1.6rem;
	width: 450px;
	margin: 0 auto;
}

/*--- ticket_dig ---*/
.right_content .con_box .white_cel.type_wide {
	padding: 25px 0;
}
.right_content .con_box .white_cel .ticket_dig {
	width: calc( 100% - 50px);
	margin: 0 auto 30px;
	background: #fff;
}
.right_content .con_box .white_cel .ticket_dig .title_eme {
	background: #030000;
	font-size: 3rem;
	color: #fff;
	font-weight: bold;
	padding: 29px 0 26px;
	position: relative;
	line-height: 1;
	text-align: center;
}
.right_content .con_box .white_cel .ticket_dig .title_eme:after {
	position: absolute;
	content: "";
	width: 30px;
	height: 30px;
	border: 8px solid #da3a2a;
	top: calc( 50% - 15px );
	left: 25px;
	transform: rotate(45deg);
}
.right_content .con_box .white_cel .ticket_dig .title_eme:before {
	position: absolute;
	content: "";
	width: 30px;
	height: 30px;
	border: 8px solid #da3a2a;
	top: calc( 50% - 15px );
	right: 25px;
	transform: rotate(45deg);
}
.right_content .con_box .white_cel .ticket_dig .text_eme {
	width: 100%;
	padding: 20px;
	box-sizing: border-box;
	margin: 0 auto;
	font-size: 1.8rem;
	line-height: 1.6;
}
.right_content .con_box .white_cel .ticket_dig .text_eme.type_center {
	text-align: center;
}
.right_content .con_box .white_cel .ticket_dig .text_eme.type_center .big {
	font-size: 2.4rem;
	font-weight: bold;
}
.right_content .con_box .white_cel .ticket_dig .text_eme.type_center .number {
	font-size: 3.6rem;
	font-weight: bold;
}

/*--- scroll_cover ---*/
.right_content .con_box .scroll_cover {
	width: 885px;
	height: 354px;
	margin: 0 auto 60px;
	background: #efeeed;
	padding: 15px;
	box-sizing: border-box;
}
.right_content .con_box .scroll_cover .scroll_dig {
	width: 100%;
	height: 324px;
	padding: 15px;
	box-sizing: border-box;
	overflow-y: scroll;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #030000;
	background: #fff;
}
.right_content .con_box .scroll_cover .scroll_dig .center {
	margin: 25px 0 15px;
	font-size: 1.8rem;
}

/*---- bottom_dig ----*/
.right_content .con_box .bottom_dig {
	text-align: center;
}
.right_content .con_box .bottom_dig .btn_form {
	width: 100%;
}
.right_content .con_box .bottom_dig .btn_form .btn_form_to {
	width: 500px;
	padding: 10px;
	background: linear-gradient( #ffffff, #d7d7d7);
	box-sizing: border-box;
	display: block;
	margin: 0 auto;
	border: 5px solid #d1392a;
	border-radius: 20px;
	font-weight: bold;
	color: #d1392a;
	font-size: 3rem;
	position: relative;
	padding-left: 40px;
}
.en .right_content .con_box .bottom_dig .btn_form .btn_form_to {
	font-size: 2.6rem;
}
.right_content .con_box .bottom_dig .btn_form .btn_form_to:before {
	content: "";
	background: url(../img/img_shuri03.png) no-repeat center;
	width: 42px;
	height: 42px;
	position: absolute;
	top: 11px; 
	left: 13px;
  animation: linear rotation 3s infinite;
  transition: 0.3s;
}
@keyframes rotation {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}
.right_content .con_box .bottom_dig .btn_form .btn_form_to:hover {
	opacity: 1;
}
.right_content .con_box .bottom_dig .btn_form .btn_form_to:hover:before {
  animation: linear rotation-fast 1s infinite;
  transition: 0.3s;
}
@keyframes rotation-fast {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}

.right_content .con_box .bottom_dig .first {
	font-size: 3rem;
	margin-top: 20px;
}
.right_content .con_box .bottom_dig .second {
	font-size: 2.2rem;
	margin-top: 20px;
	font-weight: normal;
}
.right_content .con_box .bottom_dig .third {
	font-size: 4.8rem;
	margin-top: 20px;
	line-height: 1.2;
}
.right_content .con_box .bottom_dig .third ruby rb {
	line-height: 1.2;
}
.right_content .con_box .bottom_dig .third ruby rt {
	line-height: 1.2;
	position: relative;
	top: 20px;
}
.right_content .con_box .bottom_dig .fourth {
	font-size: 2.2rem;
	margin-top: 20px;
}
.right_content .con_box .bottom_dig .fourth a {
	color: #3295d3;
	text-decoration: underline;
}

/*-------------------------
	footer 
--------------------------*/

.footer_cover {
	border-top: 8px solid #e73828;
	width: 100%;
	margin-bottom: -30px;
}

.footer_cover .footer_inner {
	border-top: 8px solid #000;
	padding-top: 0;
	background: #fff;
	width: 100%;
	padding-bottom: 30px;
	font-size: 1.8rem;
}
.footer_cover .footer_inner .up_area {
	width: 1100px;
	margin: 0 auto;
	justify-content: space-between;
	padding: 15px 0 10px;
}
.footer_cover .footer_inner .up_area .middle_sns {
	text-align: center;
}
.footer_cover .footer_inner .up_area .middle_sns .share_btn_cover {
	text-align: center;
	display: flex;
	justify-content: center;
	margin-bottom: 10px;
}
.footer_cover .footer_inner .up_area .middle_sns .btn {
	display: block;
	margin: 0 10px;
}

.footer_cover .footer_inner .up_area .right_btn {
	text-align: center;
	width: 190px;
	height: 44px;
}
.footer_cover .footer_inner .up_area .right_btn .yabumi_btn {
	text-align: center;
	display: block;
	border: 2px solid #030000;
	width: 190px;
	height: 44px;
	padding: 8px 10px;
	background: url(../img/img_yabumi.png) no-repeat center left 8px;
	transition: ease-in-out 0.3s;
}
.footer_cover .footer_inner .up_area .right_btn .yabumi_btn:hover {
	opacity: 0.7;
}
.footer_cover .footer_inner .copy {
	font-size: 1.4rem;
	text-align: center;
	width: 1100px;
	margin: 30px auto 30px;
}


/*-- トップスライド用アニメーション --*/

.anime_s {
  opacity: 0;   
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -webkit-transform: translate(0, 20px);
  transform: translate(0, 20px);
}

.slick-active .anime_s {
  opacity: 1;
  transition-delay: 0.5s;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.anime_s_r {
  opacity: 0;   
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -webkit-transform: translate(40px, 0);
  transform: translate(40px, 0);
}

.slick-active .anime_s_r {
  opacity: 1;
  transition-delay: 0.8s;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.anime_s_l {
  opacity: 0;   
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -webkit-transform: translate(-80px, 0);
  transform: translate(-80px, 0);
}

.slick-active .anime_s_l {
  opacity: 1;
  transition-delay: 1.1s;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.anime_s_2 {
  opacity: 0;   
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -webkit-transform: translate(0, 20px);
  transform: translate(0, 20px);
}

.slick-active .anime_s_2 {
  opacity: 1;
  transition-delay: 0.8s;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.anime_s_3 {
  opacity: 0;   
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -webkit-transform: translate(0, 20px);
  transform: translate(0, 20px);
}

.slick-active .anime_s_3 {
  opacity: 1;
  transition-delay: 1.1s;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

/*----- top_fixed -----*/
body .top_fixed  {
	position: fixed;
	bottom: 30px;
	right: 30px;;
	width: 80px;
	height: 80px;
	text-align: center;
	z-index: 900;
}
body .top_fixed #fix_top {
	width: 100%;
	height: 100%;
	position: relative;
	background: #030000;
	border-radius: 100%;
}
body .top_fixed #fix_top:before {
	content: "";
	background: url(../img/img_shuri04.png) no-repeat center;
	width: 55px;
	height: 55px;
	position: absolute;
	top: 12px; 
	left: 12px;
  transition: 0.3s;
}

body .top_fixed #fix_top:hover:before {
  animation: linear rotation 1s infinite;
  transition: 0.3s;
}
@keyframes rotation {
	0% {
		transform: rotate(0);
	}
	100% {
		transform: rotate(360deg);
	}
}

body .top_fixed #fix_top a {
	font-size: 1.8rem;
	color: #fff;
	position: relative;
	padding-top: 12px;
	display: inline-block;
	font-weight: bold;
}
body .nav_fixed_bottom #fix_cover a:hover {
	opacity: 1;
}



/*---- 180420 top_YouTube ----*/
body .iframe_cover {
	width: 100%;
	max-width: 1536px;
	padding-top: 56.25%;
	margin: 0 auto;
	position: relative;
}
body .iframe_cover iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*---- 180614 caution_box ----*/
body .caution_box {
	width: 100%;
	min-width: 1100px;
	margin: 0 auto;
	padding: 10px;
	text-align: left;
	box-sizing: border-box;
	border-top: 2px solid #030000;
	background: #ccc;
}
body .caution_box .cau_text {
	font-size: 1.6rem;
	line-height: 1.6;
	display: flex;
	max-width: 1100px;
	margin: 0 auto;
}
body .caution_box .cau_text .red_d {
	font-size: 1.6rem;
	padding: 5px 10px;
	display: block;
	background: #e73828;
	color: #fff;
	margin-right: 10px;
	align-self: flex-start;
}
body .caution_box .cau_text .text .mini {
	font-size: 1.4rem;
}


/*---- suc_slide_cover ----*/
.suc_slide_cover {
	max-width: 700px;
	padding-top: 60px;
	margin: 0px auto 50px;
}
.suc_slide_cover .slide {
	width: 100%;
	margin: 0 auto;
	display: block;
	height: auto;
	clear: both;
}
.suc_slide_cover .slide .slide_li {
	width: 100%;
	padding-bottom: 10px;
	box-sizing: border-box;
}
.suc_slide_cover .slide li img {
	width: 100%;
	max-width: 800px;
	height: auto;
}
.suc_slide_cover .bx-wrapper .bx-prev {
	left: 10px;
	background: url(../img/img_arrow_btn_b.png) no-repeat rgba(255,255,255,0.7);
	width:37px;
	height:71px;
	z-index: 700;
}

.suc_slide_cover .bx-wrapper .bx-next {
	right: 10px;
	background: url(../img/img_arrow_btn.png) no-repeat rgba(255,255,255,0.7);
	width:37px;
	height:71px;
	transform: rotateZ(180deg);
	z-index: 700;
}

/*--- inner_cel ---*/
.suc_slide_cover .slide_li a {
	width: 100%;
	display: block;
	height: auto;
	position: relative;
}

/*--- custom-thumb ---*/
.suc_slide_cover .custom-thumb {
	width: 100%;
	max-width: 800px;
	margin: 5px auto;
	display: flex;
	flex-wrap: wrap;
}
.suc_slide_cover .custom-thumb a {
	display: block;
	width: calc( 100% / 8 );
	border: 1px solid #000;
	border-right: none;
	background: #000;
}
.suc_slide_cover .custom-thumb a:nth-child(n-9) {
	border-bottom: none;
}
.suc_slide_cover .custom-thumb a:last-child {
	border-right: 1px solid #000;
}
.suc_slide_cover .custom-thumb a img {
	width: 100%;
	height: auto;
	opacity: 0.5;
}
.suc_slide_cover .custom-thumb a.active img {
	opacity: 1;
}

/*--- chip_area ---*/
.chip_area {
	width: 1100px;
	margin: 0 auto;
	padding: 30px 25px;
	box-sizing: border-box;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E;	
	font-size: 10px; 
	font-size: 1rem; 
}

/*--- lang_area ---*/
.chip_area .lang_area {
	justify-content: space-between;
	flex-wrap: wrap;
}
.chip_area .lang_area .lang_cover {
	width: 48%;
	margin-bottom: 30px;
}
.chip_area .text_box {
	color: #fff;
	font-size: 1.4rem;
	margin-bottom: 20px;
}
.chip_area .text_box .top {
	color: #fff;
	font-size: 1.6rem;
	margin-bottom: 5px;
}
.chip_area .lang_area .lang_cover .squ_title + .text_box {
	font-size: 1.8rem;
}
.chip_area .lang_area .lang_cover .squ_title + .text_box .top {
	font-size: 2rem;
}
.chip_area .lang_area .lang_cover#en .squ_title + .text_box {
	font-size: 1.6rem;
	letter-spacing: -0.05em;
}
.chip_area .lang_area .lang_cover#en .squ_title + .text_box .top {
	font-size: 1.8rem;
	letter-spacing: -0.05em;
}

.chip_area .title_cel {
	background: #e73828;
	background-size: 60px 60px;
	text-align: center;
	box-sizing: border-box;
	font-size: 3.2rem;
	position: relative;
	z-index: 10;
	margin-bottom: 30px;
}
.en .chip_area .title_cel {
	font-size: 1.8rem;
}
.chip_area .title_cel:after {
	content: "";
	position: absolute;
	width: 100%;
	top: 0;
	right: -100%;
	height: 100%;
	background: linear-gradient(90deg, #e73828, #000000);
}
.chip_area .title_cel:before {
	content: "";
	position: absolute;
	width: 100%;
	top: 0;
	left: -100%;
	height: 100%;
	background: linear-gradient(-90deg, #e73828, #000000);
	z-index: 0;
}
/*--- title_in ---*/
.chip_area .title_cel .title_in {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: visible;
}
.chip_area .title_cel .title_in:after {
	position: absolute;
	content: "";
	width: 300%;
	height: calc( 100% - 16px);
	top: 8px;
	left: -100%;
	border-top: 2px solid #030000;
	border-bottom: 2px solid #030000;
	z-index: 320;
}
/*--- anime_t ---*/
.chip_area .title_cel .title_in .anime_t {
	padding: 20px 55px;
	box-sizing: border-box;
	display: inline-block;
	font-weight: bold;
	width: auto;
	position: relative;
	color: #030000;
}
.chip_area .title_cel .title_in .anime_t:after {
	content: "";
	background: url(../img/img_shuri02.png) no-repeat center;
	width: 52px;
	height: 52px;
	position: absolute;
	top: calc( 50% - 26px );
	right: 0;
}
.chip_area .title_cel .title_in .anime_t:before {
	content: "";
	background: url(../img/img_shuri02.png) no-repeat center;
	width: 52px;
	height: 52px;
	position: absolute;
	top: calc( 50% - 26px );
	left: 0;
}

/*--- squ_title ---*/
.chip_area .squ_title {
	position: relative;
	padding-left: 44px;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 3rem;
	margin-bottom: 10px;
}
.chip_area .squ_title.cw {
	color: #fff;
}
.chip_area .squ_title:after {
	position: absolute;
	content: "";
	width: 30px;
	height: 30px;
	border: 8px solid #da3a2a;
	top: 8px;
	left: 3px;
}

/*--- chip_btn_box ---*/
.chip_area .chip_btn_box {
	margin: 10px 0;
	justify-content: space-between;
}
.chip_area .chip_btn_box .chip_btn {
	width: 45%;
	background: gray;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	padding: 5px 20px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}
.chip_area .chip_btn_box .chip_btn .mini {
	font-weight: normal;
	font-size: 1.2rem;
}

/*--- lang_switch --*/
.chip_area .lang_switch {
	display: none;
}



/*--- inline_frame---*/

.inline_frame {
	width: 996px;
	height: 657px !important;
	height: auto;
	background: url(../img/maki_back.png) no-repeat center center;
	background-size: contain;
	background-color: none;
	overflow: visible;
	padding: 65px 0 0 120px;
	box-sizing: border-box;
	z-index: 999;
}
.inline_frame .inline_title {
	font-size: 2.6rem;
}
.inline_frame .in_wide {
	width: 800px;
	height: 490px;
	padding: 10px;
	box-sizing: border-box;
	overflow-y: scroll;
}
.inline_frame .in_wide .in_box {
	width: 100%;
	display: flex;
	margin-bottom: 20px;
}
.inline_frame .in_wide .in_box .in_img_cel {
	width: 48%;
	padding-right: 2%;
}
.inline_frame .in_wide .in_box .in_img_cel img {
	width: 100%;
	height: auto;
}
.inline_frame .in_wide .in_box .in_text_cel {
	width: 50%;
	font-size: 2.2rem;
	line-height: 1.6;
}

/*--- cue ---*/
.cue {
	z-index: 60;
}

.cue .signboard {
	  transform-origin: center top;
	  animation: ease-in-out top-appear 1.5s both;
	  opacity: 0;
	  animation-delay: 2s;
}
@keyframes top-appear {
0% {
		transform:translate(0,-2em);
		opacity:0;
	}
	100% {
		transform:translate(0,0);
		opacity:1;
	}
}
.cue .banner_cel,
.cue .news_cel {
	  transform-origin: center top;
	  animation: ease-in-out bottom-appear 1.5s both;
	  opacity: 0;
	  animation-delay: 2s;
}
@keyframes bottom-appear {
0% {
		transform:translate(0,2em);
		opacity:0;
	}
	100% {
		transform:translate(0,0);
		opacity:1;
	}
}
.cue .img_cel .lead_top {
	  transform-origin: center top;
	  animation: ease-in-out left-appear 1.5s both;
	  opacity: 0;
	  animation-delay: 3s;
}
@keyframes left-appear {
0% {
		transform:translate(2em,0);
		opacity:0;
	}
	100% {
		transform:translate(0,0);
		opacity:1;
	}
}
.cue .img_cel .lead_right {
	  transform-origin: center top;
	  animation: ease-in-out right-appear 1.5s both;
	  opacity: 0;
	  animation-delay: 3s;
}
@keyframes right-appear {
0% {
		transform:translate(-2em,0);
		opacity:0;
	}
	100% {
		transform:translate(0,0);
		opacity:1;
	}
}
.cue .img_cel .slide_back {
	  transform-origin: right center;
	  animation: linear back-appear 1.8s both;
	  opacity: 1;
}
@keyframes back-appear {
0% {
		transform: scale(1);
		opacity:1;
	}
	60% {
		opacity:1;
	}
	100% {
		transform: scale(1.8);
		opacity:0;
	}
}

.outsidelink_weather {
	display: flex;
	justify-content: center;
}

.shuri_button {
	width: 280px;
	height: 53px;
	font-size: 2.2rem;
	color: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000;
	border: solid 2px #da3a2a;
	position: relative;
	margin-bottom: 20px;
}
.shuri_button:before {
	content: "";
	background: url(../img/img_shuri03.png) no-repeat center;
	width: 42px;
	height: 42px;
	position: absolute;
	top: 6px; 
	left: 6px;
  animation: linear rotation 3s infinite;
}
.shuri_button:after {
	content: " >>";
	position: absolute;
	top: 6px; 
	right: 6px;
}



/*=====リニューアルスタイルここから=====*/

#key_visual {
	position: relative;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
	background: url("../img/hishi.jpg");
	z-index: -5;
}

#key_visual #youtube {
	width: 1120px;
	height: 630px;
	margin: 160px auto 30px;
	z-index: -1000;
	pointer-events: none;
}

.movie_box_bottom {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 30px 0 90px;
	background-image: url("../img/kawara.jpg");
	background-repeat: repeat-x;
	background-position: bottom;
	z-index: 2;
}

.movie_box_bottom::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient( #000, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0) ) fixed;
	z-index: -2;
}

.movie_box_bottom .inner {
	width: 100%;
	max-width: 1100px;
	padding: 0 25px;
	margin: 0 auto;
	letter-spacing: -7px;
}

.movie_box_bottom .inner .news_box,
.movie_box_bottom .inner .fb-container {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
}

.movie_box_bottom .inner .fb-container {
	width: 300px;
	height: 545px;
}

.facebook-wrapper {
    max-width: 500px; /* Facebook Page Plugin の最大幅 */
    margin: 0 auto;
}
 
.facebook-wrapper > .fb-page {
    width: 100%;
}
 
.facebook-wrapper > .fb-page > span,
.facebook-wrapper iframe {
    width: 100% !important;
}

.movie_box_bottom .inner .news_box {
	width: 700px;
	margin-right: 50px;
}

.movie_box_bottom .inner .news_box .news_box_inner.breaking {
	display: block;
	margin-bottom: 40px;
	background: rgba(255,255,255,0.95);
	border: 3px solid #ce3a2a;
}

.movie_box_bottom .inner .news_box .news_box_inner.breaking.ds-n {
	display: none;
}

.movie_box_bottom .inner .news_box .news_box_inner {
	display: flex;
	flex-wrap: wrap;
	background: rgba(255,255,255,0.95);
	border: 3px solid #3295d3;
}

.movie_box_bottom .inner .news_box .news_box_inner .news_title {
    position: relative;
    display: flex;
	width: 130px;
	margin: 10px;
    justify-content: center;
    align-items: center;
    text-align: center;
	border: 2px solid #3295d3;
	background: #fff;
	box-shadow: 6px 0px 6px 0px rgba(3,0,0,0.6);
}

.movie_box_bottom .inner .news_box .news_box_inner .news_title h4 {
	font-size: 2.5rem;
	font-weight: normal;
}

.movie_box_bottom .inner .news_box .news_box_inner .new-list {
	width: calc(100% - 150px);
}

.movie_box_bottom .inner .news_box .news_box_inner.breaking .new-list {
	width: 100%;
}

.movie_box_bottom .inner .news_box .news_box_inner .new-list li {
	padding: 15px 30px;
}

.movie_box_bottom .inner .news_box .news_box_inner .new-list li h3.title {
	position: relative;
	padding-left: 30px;
}

.movie_box_bottom .inner .news_box .news_box_inner .new-list li h3.title.red {
	color: #ce3a2a;
}

.movie_box_bottom .inner .news_box .new-list li h3.title::before {
	position: absolute;
	content: "";
    width: 20px;
    height: 20px;
	top: 13px;
    left: 0;
    border: 5px solid #000;
    box-sizing: border-box;
}

.movie_box_bottom .inner .news_box .news_box_inner .new-list li h3.title.red::before {
	border: 5px solid #ce3a2a;
}


.movie_box_bottom .inner .news_box .news_box_inner.breaking .new-list li h3.title.red::before {
	border: 5px solid #ce3a2a;
}

.movie_box_bottom .inner .news_box .news_box_inner .new-list li p {
	font-size: 1.8rem;
	padding-left: 30px;
}

.movie_box_bottom .inner .news_box .news_box_inner .new-list li p.red {
	color: #ce3a2a;
}

.movie_box_bottom .inner .news_box .new-list li a.link_text {
	position: relative;
	font-size: 2.2rem;
	font-weight: bold;
	color: #3295d3;
	padding: 0 20px 0 30px;
}

.movie_box_bottom .inner .news_box .news_box_inner.breaking .new-list li a[target="_blank"]{
	position: relative;
	color: #ce3a2a;
	padding: 2px 25px 2px 0;
	border-bottom: 2px solid #ce3a2a;
}

.movie_box_bottom .inner .news_box .news_box_inner.breaking .new-list li a[target="_blank"]::after {
	position: absolute;
    content: "\f35d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	top: 6px;
    right: 0;
}

.movie_box_bottom .inner .news_box .new-list li a.link_text::before,
.movie_box_bottom .inner .news_box .new-list li a.link_text::after{
	position: absolute;
	content: "";
	width: 12px;
	height: 12px;
	top: 12px;
	right: 2px;
	border-right-width: 2px;
	border-top: 2px solid #3295d3;
	border-right: 2px solid #3295d3;
	transform: rotate(45deg);
	transition: all .2s ease;
}

.movie_box_bottom .inner .news_box .news_box_inner.breaking .new-list li a.link_text::before,
.movie_box_bottom .inner .news_box .news_box_inner.breaking .new-list li a.link_text::after {
	border-top: 2px solid #ce3a2a;
	border-right: 2px solid #ce3a2a;
}

.movie_box_bottom .inner .news_box .new-list li a.link_text::before {
	right: 10px;
}

.movie_box_bottom .inner .news_box .new-list li a.link_text:hover::before { right: 8px; }
.movie_box_bottom .inner .news_box .new-list li a.link_text:hover::after { right: 0; }

.conditions ul li {
	margin-bottom: 10px;
}

.conditions ul li ul {
	padding-left: 15px;
}


.conditions ul li ul li .defo_p {
	font-size: 1.4rem;
}

.button_box {
	width: 280px;
	margin: 0 auto;
	text-align: center;
}

.term_button {
    text-align: center;
    margin: 80px 0;
}

/* css checkbox01 */
.checkbox01-input{
    display: none;
}

.checkbox01-parts{
    padding-left: 28px;
    position:relative;
}

.checkbox01-parts::before{
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 0;
    width: 25px;
    height: 25px;
    border: 2px solid #000;
    border-radius: 4px;
}

.checkbox01-input:checked + .checkbox01-parts{
    color: #e73828;
}

.checkbox01-input:checked + .checkbox01-parts::after{
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 25px;
    height: 25px;
	background: url("images/close_c.png");
}

.term_button .check  {
    font-size: 24px;
    font-weight: 600;
    vertical-align: baseline;
    cursor: pointer;
}

.term_button .check a {
    vertical-align: baseline;
}

.term_button .next {
    width: 300px;
	height: 70px;
	font-size: 2.2rem;
	color: #fff;
	text-align: center;
	display: flex;
	margin: 20px auto;
	align-items: center;
	justify-content: center;
	position: relative;
	cursor: pointer;
	transition: all .3s ease;
	background: url(../img/img_shuri03.png) no-repeat 6px #000;
}

.term_button .next:hover {
	opacity: .7;
}

.term_button input:disabled {
    color: #eee;
    background: #bbb;
    pointer-events: none;
}

.button_area {
	margin: auto;
	padding: 40px 0;
	text-align: center;
}

.shuri_button_pdf {
	width: 300px;
	height: 70px;
	font-size: 2.2rem;
	color: #fff;
	text-align: center;
	display: flex;
	margin: auto;
	align-items: center;
	justify-content: center;
	background: #000;
	position: relative;
}
.shuri_button_pdf::before {
	content: "";
	background: url(../img/img_shuri03.png) no-repeat center;
	width: 42px;
	height: 42px;
	position: absolute;
	top: 16px; 
	left: 6px;
	animation: linear rotation 3s infinite;
}

.white_cel_inner {
	padding: 0 20px 20px;
}

.time-table {
	width: 100%;
	color: #fff;
	background: #000;
	border-spacing: 0;
}

.time-table .bg-g {
	background: #00a73b;
}

.time-table .bg-r {
	background: #e60012;
}

.time-table .bg-b {
	background: #004ea2;
}

.time-table tr.bd-w {
	text-align: center;
	background: #000;
}

.time-table tr th.tategaki {
	width: 20px;
	padding: 0 10px;
}

.time-table tr th,
.time-table tr td {
	padding: 5px;
	border: 1px solid #fff;
}

.time-table tr td p {
	font-size: 1.8rem;
}

.time-table tr td p span {
	display: block;
	font-size: 1.4rem;
}

.time-table tr.bd-w th small {
	display: block;
	font-size: 1.6rem;
}

.time-table tr td .num {
	padding: 10px;
}

.img_box {
	margin: 30px auto;
}

.entertainment {
	background: url("../img/bg-img.jpg");
	width: 885px;
	padding: 30px 30px 45px;
    margin: 0 auto 60px;
    position: relative;
    z-index: 100;
    box-shadow: 0px 6px 6px 0px rgba(3,0,0,0.6);
    color: #030000;
}

.entertainment::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 50px;
	left: 0;
	bottom: 0;
	background: url("../img/ougi.png");
	background-repeat: repeat-x;
	background-position: bottom;
}

.entertainment h2,
.entertainment h3,
.entertainment h5 {
	margin-bottom: 20px;
}

.entertainment small {
	display: block;
	font-size: 1.6rem;
	text-align: center;
	margin: 20px 0;
}

.entertainment table {
	width: 650px;
	margin: 20px auto;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

.entertainment table tr th,
.entertainment table tr td {
	font-size: 2rem;
	padding: 5px 10px;
}

.entertainment table tr th {
	vertical-align: top;
}

.entertainment table tr td small {
	text-align: left;
	margin: 0;
}

.entertainment .prof_box {
	width: 650px;
	padding: 20px 40px;
	margin: 20px auto;
	border: 1px solid #000;
}

.entertainment .prof_box h3 {
	font-size: 2rem;
	margin-bottom: 5px;
}

.entertainment .prof_box p.bold {
	font-size: 1.6rem;
	text-align: center;
	margin-bottom: 10px;
}

.entertainment .prof_box p {
	font-size: 1.4rem;

}

.entertainment .prof_box span {
	font-size: 1.4rem;
}

.insta_box {
	position: fixed;
	top: 30%;
	right: 5px;
	opacity: .9;
	z-index: 920;
}

@media screen and (max-width: 1024px){
	
	#key_visual #youtube {
		width: 1024px;
		height: 576px;
	}
	
}

@media screen and (max-width: 768px){
	
	#key_visual #youtube {
		width: 768px;
		height: 432px;
	}
	
}

.btn_area{
	display: block;
	width: 100%;
	text-align: center;
	padding-top: 40px;
}

a.btn_open {
	display: inline-block;
	width: 45px;
	height: 45px;
	border-top: 45px solid #000;
	border-right: 45px solid transparent;
	border-bottom: 45px solid transparent;
	border-left: 45px solid transparent;
}

a.btn_close {
	display: inline-block;
	width: 45px;
	height: 45px;
	border-right: 45px solid transparent;
	border-bottom: 45px solid #000;
	border-left: 45px solid transparent; 
}

.pc{
	display: block;
	font-size: 4.8rem
}
.sp{
	display: none
}
