@charset "utf-8";


/* - - - - - - - - - - - - - - - - - - - - - 
	reset
- - - - - - - - - - - - - - - - - - - - - */

body, p, dl, dt, dd, h1, h2, h3, h4, h5, h6, ul, ol, li, form {
	margin: 0;
	padding: 0;
}

li {
	list-style: none;
}

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}


/* - - - - - - - - - - - - - - - - - - - - - 
	base
- - - - - - - - - - - - - - - - - - - - - */

html {
	font-size: 62.5%;
}

body {
	color: #333;
	font-size: 1.5rem;
	font-family:  "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	line-height: 1.6;
	background: #fff;
}

img {
	border: none;
  vertical-align: bottom;
	max-width: 100%;
}


/* - - - - - - - - - - - - - - - - - - - - - 
	link
- - - - - - - - - - - - - - - - - - - - - */

a {
	outline: none;
}

a:link,
a:visited {
	color: #f00;
	text-decoration: underline;
}

a:hover,
a:active {
	color: #333;
	text-decoration: none;
}

a:hover img {
	opacity: 0.8;
}


/* - - - - - - - - - - - - - - - - - - - - - 
	clearfix
- - - - - - - - - - - - - - - - - - - - - */

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}


/* - - - - - - - - - - - - - - - - - - - - - 
	.wrapper
- - - - - - - - - - - - - - - - - - - - - */

.wrapper {
	overflow: hidden;
}


/* - - - - - - - - - - - - - - - - - - - - - 
	.header
- - - - - - - - - - - - - - - - - - - - - */

.header {
	margin-bottom: 4rem;
	text-align: center;
}

.header h1 {
}

.overlay {
	display: none;
}


/* - - - - - - - - - - - - - - - - - - - - - 
	.main
- - - - - - - - - - - - - - - - - - - - - */

.main {
}

.main p {
	margin: 0 0 1.5em;
}

.box_headline {
	padding: 5% 0;
	background: #369 url("./site_parts/main_visual.jpg") no-repeat center top;
	background-size: cover;
	max-height: 200px;
	box-sizing: border-box;
}

.main_headline {
	color: #fff;
	font-size: 1em;
	line-height: 1.4;
	text-align: center;
}

.box_main_headline,
.box_main {
	margin: 0 auto 5%;
	width: 90%;
	max-width: 960px;
}


/* - - - - - - - - - - - - - - - - - - - - - 
	.footer
- - - - - - - - - - - - - - - - - - - - - */

.footer {
	margin-top: 8rem;
	text-align: center;
}

.pagetop {
	position: fixed;
	bottom: 5%;
	right: 5%;
}

.pagetop a {
	padding: 1.2em 1em;
	line-height: 1.2;
	text-decoration: none;
	border-radius: 2px;
	display: block;
}

.pagetop a:link,
.pagetop a:visited {
	color: #999;
	border: 1px solid #ccc;
	background-color: #fff;
}

.pagetop a:hover,
.pagetop a:active {
	color: #fff;
	border: 1px solid #ccc;
	background-color: #ccc;
}

.pagetop a span {
	margin: 0 auto;
	border-top: 2px solid #bbb;
	border-right: 2px solid #bbb;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	box-sizing: border-box;
	display: block;
}

.footer_inner {
	margin: 0 auto;
	width: 70%;
	max-wdth: 900px;
}

.footer_inner:after {
	content: "";
	clear: both;
	display: block;
}

.sns li {
	margin: 0 0.5rem;
	display: inline;
}

.footer .logo {
	margin-top: 3rem;
}

.footer small {
	margin-top: 3rem;
	padding: 2rem 0 1rem;
	color: #fff;
	font-size: 0.75em;
	background-color: #000;
	display: block;
}

.footer small span {
	color: #000;
	font-size: 0.75em;
	display: block;
}


/* - - - - - - - - - - - - - - - - - - - - - 
/* .top
//////////////////////////*/

.top .header {
	padding-top: 6rem;
	background: url("./images/bg_header.jpg") no-repeat center top;
	background-size: 200%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 2;
}

.top .header h1 img {
	width: 50%;
}

.desc {
	background: url("./images/icon_yokan.png") no-repeat center top;
	background-size: 80%;
}

.desc p {
	padding: 13rem 5% 0;
}

.pc_desc {
	display: none;
}

.top .main {
	margin-top: 183%;
}

.top_box {
	padding: 5rem 5%;
	background: url("./images/bg_top_sp.jpg") no-repeat center bottom;
	background-size: cover;
}

.top_headline {
	margin-bottom: 1.5rem;
	font-size: 1.75em;
	line-height: 1.4;
}

.top_headline span {
	display: block;
}

.top_headline + p {
	line-height: 1.4;
}

.top_headline + p + p {
	margin-top: 5rem;
}

.top_headline,
.top_headline + p,
.top_headline + p + p {
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-align: center;
}

.menu {
	margin: 0 auto;
	width: 100%;
}

.menu:after {
	content: "";
	clear: both;
	display: block;
}

.menu li {
	float: left;
	box-sizing: border-box;
}

.menu li img {
	width: 100%;
}

.menu li.menu01,
.menu li.menu04 {
	width: 100%;
}

.menu li.menu02,
.menu li.menu05 {
	width: 52.55%;
}

.menu li.menu03,
.menu li.menu06 {
	width: 47.45%;
}


/* --- mordal --- */

.modal_content {
	position: fixed;
	display: none;
	z-index: 9999;
}

.modal_overlay {
	background-color: #000;
	width:100%;
	height:120%;
	position: fixed;
	top:0;
	left:0;
	display: none;
	opacity: 0.8;
	z-index: 3000;
}

.modal_open {
	color: #2f90c1;
	text-decoration: underline;
}

.modal_open:hover,
.modal_close:hover {
	cursor: pointer;
}

.modal_content {
	width: 100%;
}

.btn_close {
	text-align: right;
	display: block;
}

.btn_close a {
	color: #fff;
	font-weight: bold;
	display: block;
}

.modal_conte {
	padding: 2rem 0;
	background-color: #000;
	box-sizing: border-box;
}

.modal_conte iframe {
	width: 100%;
	height: auto;
}


/* - - - - - - - - - - - - - - - - - - - - - 
/* .episode
//////////////////////////*/

.episode .header img,
.episode .main img {
	width: 100%;
}

.episode .header p,
.episode .main p {
	margin: 3em auto;
	line-height: 2;
	width: 90%;
	max-width: 660px;
}

.episode .header p {
	font-weight: bold;
}

.episode .box_inner {
	margin-bottom: 6rem;
}

.title_headline {
	margin: 0 auto 150px;
	padding: 1em 2em;
	font-size: 1.2em;
	font-weight: normal;
	text-align: center;
	box-sizing: border-box;
	border: 4px solid #000;
	width: 90%;
	max-width: 660px;
	transform: scale( 1, 1.5 );
	transform-origin: left bottom;
	position: relative;
	top: 100px;
}

.title_headline span {
	font-size: 1.5em;
	font-weight: bold;
	display: block;
}

.title_headline + p {
	text-align: center;
}

.serif,
.serif2 {
	margin: 3em auto;
	width: 90%;
	max-width: 660px;
}

.serif dt {
	color: #999;
	width: 3.5em;
	float: left;
}

.serif dd {
	margin-bottom: 1rem;
	padding-left: 3.5em;
	line-height: 2;
}

.serif2 dt {
	color: #999;
	line-height: 2;
	width: 5.5em;
	float: left;
}

.serif2 dd {
	margin-bottom: 1rem;
	padding-left: 5.5em;
	line-height: 2;
}

.episode p strong {
	font-size: 1.35em;
}

.episode strong span {
	font-size: 1.2em;
}

dd strong {
	font-size: 1.25em;
}

.box_img,
.box_img5,
.box_movie2 {
	margin-bottom: 2em;
}

.box_img.dl {
	margin: 0.25em auto;
	width: 90%;
	max-width: 660px;
}

.box_movie,
.box_img2,
.box_img4 {
	margin: 3em auto;
	width: 90%;
	max-width: 660px;
}

.box_img3 {
	margin-bottom: 0;
}

.box_img4 {
	text-align: center;
}

.episode .main .box_img4 img {
	width: auto;
}

.box_movie .movie {
	width: 100%;
	height: auto;
}

.relative {
	margin-top: -3rem;
}

.box_ceremony {
	margin: 3em auto;
}

.table_ceremony {
	margin: 0 auto 3rem;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	width: 90%;
	max-width: 660px;
	border-top: 1px solid #000;
}

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

.table_ceremony th,
.table_ceremony td {
	padding: 1rem;
	font-weight: normal;
}

.table_ceremony th + td {
	text-align: center;
}

.ceremony_photo {
	margin: 0 auto;
	text-align: center;
	width: 90%;
}

.ceremony_photo li {
	margin: 0 0.5rem 1.5rem;
	display: inline-block;
}

.episode .main .ceremony_photo li img {
	width: auto;
}

.box_norito {
	margin: 0 auto;
	padding: 2rem 4rem;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	border: 1px solid #000;
	background-color: #f5f5f5;
	width: 90%;
	max-width: 660px;
	box-sizing: border-box;
}

em {
	font-style: normal;
}

.red { color: #f00; }

.result {
	margin: 3em auto;
	padding: 1.5em;
	border: 2px solid #000;
	width: 90%;
	max-width: 660px;
	box-sizing: border-box;
}

.result dt {
	margin-bottom: 1.5rem;
	font-size: 1.75em;
	font-weight: bold;
	text-align: center;
}

.result dd {
	font-size: 1.1em;
}

.result dd strong {
	font-size: 1.35em;
}

.result dd br {
	display: none;
}

.box_list {
	margin: 3em auto;
	padding: 1.5em;
	border: 2px solid #000;
	width: 90%;
	max-width: 660px;
	box-sizing: border-box;
}

.box_list li {
	margin-bottom: 0.5em;
	padding-left: 1em;
	font-weight: bold;
	text-indent: -1em;
}

.box_list li::before {
	font-size: 0.85em;
	content: '●';
}

.text-center {
	text-align: center;
}


/* --- .episode_menu --- */

.episode_menu {
	margin: 14rem auto 0;
	width: 100%;
	max-width: 980px;
}

.btn_back {
	box-sizing: border-box;
	border-right: 2px solid #fff;
	width: 24%;
	float: left;
}

.btn_back.ep6 {
	text-align: center;
	border-right: none;
	width: 100%;
	float: none;
}

.episode .main .btn_back.ep6 img {
	width: auto;
}

.btn_next {
	width: 76%;
	float: right;
}


/* - - - - - - - - - - - - - - - - - - - - - 
/* @media SP
//////////////////////////*/

@media screen and (max-width: 767px) {


/*- - -  .episode - - - */

.pc {
	display: none;
}

.episode .main .box_img img,
.episode .main .box_movie2 img {
	width: 150%;
	max-width: 150%;
	position: relative;
	right: 25%;
}

.episode .main .box_img.dl img {
	width: 100%;
	max-width: 100%;
	position: static;
}


}


/* - - - - - - - - - - - - - - - - - - - - - 
/* @media PC
//////////////////////////*/

@media screen and (min-width: 768px) {


/*- - -  .header - - - */


/*- - -  .main - - - */

.top .main {
	margin-top: 380px;
}


/*- - -  .footer - - - */

.sns {
	float: left;
}

.footer .logo {
	margin-top: 0;
	float: right;
}


/*- - -  .top - - - */

.top .header {
	background: none;
}

.overlay {
	background-color: #000;
	max-height: 720px;
	display: block;
}

.movie_cover {
	text-align: center;
	width: 100%;
	height: auto;
	max-height: 720px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 1;
}

.bg_video {
	width: 100%;
	height: auto;
	max-height: 720px;
	position: relative;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: 0.5;
}

.top .header h1 img {
	width: auto;
}

.desc {
	background-size: auto;
}

.desc p {
	padding: 20rem 5% 0;
}

.pc_desc {
	display: inline-block;
}

.sp_desc {
	display: none;
}

.top_box {
	padding: 13rem 5%;
	background: url("./images/bg_top.jpg") no-repeat center center;
	background-size: cover;
}

.top_box_inner {
	padding: 5em;
	border: 5px solid #fff;
}

.top_headline {
	font-size: 2em;
	letter-spacing: 0.2em;
}

.top_headline span {
	margin: 0 1.2em;
	display: inline-block;
}

.top_box_inner br {
	display: none;
}

.top_headline {
	transform: scale( 1, 1.75 );
	transform-origin: left bottom;
}

.top_headline + p {
	transform: scale( 1, 1.75 );
	transform-origin: left top;
}

.top_headline + p + p {
	margin-top: 6rem;
	padding: 0 8em;
	font-size: 0.8em;
	line-height: 1.8;
	transform: scale( 1, 1.75 );
	transform-origin: left top;
}

.modal_content {
	margin: 0 auto;
	width: 1280px;
}

.modal_conte iframe {
	margin: 0 auto;
	width: 1280px;
	height: 720px;
}


/*- - -  .episode - - - */

.sp {
	display: none;
}

.episode .header p br {
	display: none;
}

.result {
	padding: 0;
	display: table;
}

.result dt {
	margin: 0;
	padding: 1.5em 1em 1.5em 1.5em;
	font-size: 2em;
	vertical-align: middle;
	text-align: left;
	width: 30%;
	display: table-cell;
}

.result dd {
	padding: 1.5em 1em 1.5em 0;
	vertical-align: middle;
	display: table-cell;
}

.result dd br {
	display: block;
}

.box_list {
	padding: 1.5em 0;
	text-align: center;
}

.box_list li {
	margin: 0 1.5em;
	display: inline-block;
}

.btn_back {
	border-right: 5px solid #fff;
}


}

