@charset "UTF-8";

/***************************************
01.Reset
***************************************/

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */

article,aside,details,figcaption,figure,footer,hgroup,menu,nav,section {
    display: block;
}

body {
    line-height: 1;
    text-align: left;
	position: relative;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*font-family: 'Kalam', cursive;;
font-family: 'Gochi Hand', cursive;
font-family: 'Noto Sans JP', sans-serif;*/


/***************************************
02.共通
***************************************/

body {
    font-size: 16px;
    color: #322C28;
	font-family: "Shippori Mincho", serif;
    font-weight: 400;
    text-align: justify;
    background: #F6F7F8;
    -webkit-text-size-adjust: 100%;
    line-height: 1.7;
}

h1,h2,h3,h4,h5,h6 {
    font-weight: normal;
}

a {
    color: #4B974F;
    word-break: break-all;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

img {
    width: 100%;
    vertical-align: middle;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.sp_only {
    display: none;
}
.pc_only {
    display: block;
}

section {
	padding: 0;
}


/*------------チケット-----------------*/

#ticket-btn.show {
    bottom: 20px;
}

.ticket img {
    display: block;
}

.ticket img.hover-img {
    position: absolute;
    bottom: 0;
    right: 0;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.ticket:hover img.hover-img {
    opacity: 1;
}
.ticket:hover img.hover-img-2 {
    opacity: 0;
	transition: opacity 0.3s ease;
}
#ticket-btn {
    width: 13vw;
    position: fixed;
    bottom: -200px;
    right: 14px;
    z-index: 1000;
}

/*.pc_only.ticket:hover {
    opacity: 0.7;
}*/


/*------------ヘッダー-（ナビゲーション・ロゴ）----------------*/

#top-head {
    top: 0;
    z-index: 20;
	display: none;
}

.sp-tickets {
    display: none;
}

header {
    width: 100%;
	display: none;
}

header nav {
    width: 100%;
    align-items: center;
    z-index: 10;
	background: url("../img/nav-bg.jpg");
	background-size: cover;
	background-repeat: repeat;
    padding: 17px 0;
}
header .pc-nav {
	width: 100%;
}
header nav ul {
    width: 100%;
    height: 20px;
    padding: 0 3vw 0 0;
    display: flex;
    justify-content: center;
	gap: 30px;
    box-sizing: border-box;
    align-items: center;
}

ul.header-nav-list li {
    margin-left: 40px;
}

ul.header-nav-list li:hover {
    opacity: 0.7;
}

header nav ul a {
	font-size: 16px;
	line-height: 1em;
	font-weight: 800;
    text-decoration: none;
    padding: 0;
	color: #fff;
}
header nav ul a:hover {
    text-decoration: none;
    color: #F5DB86;
    padding-bottom: 0;
}


.fixed {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 900;
}


/*ナビゲーション*/

@media screen and (max-width:1024px) {
    /*header {
        display: block !important;
    }*/
	.sp-nav {
		display: block;
	}
    .header-info,
    .header-nav-list a span {
        display: none;
    }

   .header-inner {
        z-index: 100;
        position: absolute;
        right: 0;
        height: 60px;
        width: 100%;
    }

    .header-nav {
        width: 100%;
		height: 100vh;
        margin: 0 auto;
		background: url(../img/sp-nav-bg.jpg) center top;
		background-size: cover;
        padding: 0;
    }

    .header-nav-list {
		padding-top: 128px;
		padding-right: 6%;
		writing-mode: vertical-rl;
		text-orientation: upright;
		height: 100vh;  
		margin: 0;
    }
	header nav ul a::before {
		content: "";
		background: url("../img/dia-w.png") no-repeat center top;
		background-size: contain;
		display: inline-block;
		width: 16px;
		height: 16px;
		padding-bottom: 8px;
	}
    .sp_header {
		position: relative;
		align-items: center;
		height: 62px;
    }

    header nav {
        display: none;
        position: fixed;
        top: 0;
        width: 100%;
        background: #F9F7EB;
        left: 0;
    }

    header nav ul {
        padding: 0;
    }

    header nav ul a {
        font-weight: bold;
		font-size: 18px;
    }

    header nav ul {
        display: block;
        margin: 0 auto;
        width: 100%;
        height: 100%;
        padding-left: 0;
        padding-bottom: 20px;
    }

   ul.header-nav-list li {
        margin: 0;
		padding: 20px;
	   letter-spacing: .5em;
    }
	
    ul.header-nav-list li:hover {
        opacity: 1;
    }

    header nav ul li:last-child {
        border: none;
    }

#nav_toggle {
	top: 14px;
	right: 14px;
	position: absolute;
    display: block;
    width: 60px;   /* 画像サイズに合わせて調整 */
    height: 60px;
    background: url("../img/sp-nav-btn.png") no-repeat center center;
    background-size: contain;
    cursor: pointer;
    z-index: 100;
}

/* open状態の時は ×画像 */
.open #nav_toggle {
    background: url("../img/sp-nav-btn-2.png") no-repeat center center;
    background-size: contain;
	z-index: 1000;
	position: absolute;
}

    .header-nav>ul>li a {
        display: block;
        position: relative;
        text-decoration: none;
        padding: 29px 15px;
        font-size: 18px;
        z-index: 2;
    }

    header nav ul a:hover {
        text-decoration: none;
        color: #C3C3C3;
    }

}

@media screen and (max-width:768px) {
	.sp-tickets {
        width: 53px;
        padding: 2px 0 0;
    }
	header nav {
        top: 0;
    }
}

/*------------フッター-----------------*/

footer {
    padding: 5px;
	background: #BA2636;
}

footer p {
    text-align: center;
	font-size: 12px;
	color: #F9F7EB;
}


/*------------共通-----------------*/

section .inner {
    width: 50%;
    margin: 0 auto;
    max-width: 800px;
    z-index: 1;
    position: relative;
}
section h2 {
    text-align: center;
	font-size: 42px;
	font-weight: 800;
	line-height: 1em;
}

/***************************************
03.メインビジュアル
***************************************/

.mv {
    background: url("../img/pc-mv.png") no-repeat center top / 100% auto;
    padding-top: calc(1640 / 2732* 100%);
    position: relative;
	height: 100vh;
}
.mv h1 {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    line-height: 0;
}
a, button {
  -webkit-tap-highlight-color: transparent;
}

/***************************************
04.イントロダクション .sec_1
***************************************/
#sec_1 .inner {
	margin: 100px auto;
	text-align: center;
	background: url("../img/pc-cross.png") center center no-repeat;
	background-size: contain;
}
#sec_1 .text-01 {
	font-size: 18px;
	font-weight: bold;
	line-height: 2em;
	padding-bottom: 16px;
    text-align: center;
}
#sec_1 .text-01:last-of-type{
    padding-bottom: 0;
}
#sec_1 .text-area {
    padding: 32px 0;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.6em;
}
/***************************************
05.ACT / cast .sec_2
***************************************/
.sec_2 {
	background: url("../img/pc-bg-1.png");
	background-size: cover;
}
.sec_2 .inner {
	position: relative;
	padding-top: 47px;
}
.sec_1 .sns a,
.sec_2 .sns a {
	text-align: center;
	display: block;
}
.sec_1 .sns a .btn,
.sec_2 .sns a .btn {
	display: inline-block;
    background: #fff;
    color: #322C28;
    font-weight: 800;
    font-size: 16px;
	line-height: 1em;
    padding: 8px 15px;
    border: 1px solid #322C28;
    border-radius: 50px;
}
.sec_1 .sns a .btn:hover,
.sec_2 .sns a .btn:hover,
#sec_4 .inner .access-btn a:hover{
    color: #F6F7F8;
    background: #322C28; 
	text-decoration: none;
}
.sec_2 .cast_item {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
}
.cast {
	width: 61.7%;
	margin: 0 auto;
    padding-top: 25px;
}
.cast__item p {
	padding: 5px 0 15px;
}
.sec_2 .cast-bottom {
	display: flex;
	justify-content: center;
	padding: 16px 0 50px;
}
.sec_2 .cast-bottom .sns-left,
.sec_2 .cast-bottom .sns-right {
	width: 50%;
	text-align: center;
}
.sec_2 .cast-bottom .sns-left ul,
.sec_2 .cast-bottom .sns-right ul {
	display: flex;
	justify-content: center;
	gap: 50px;
}
.sec_2 .cast-bottom .sns-left ul li,
.sec_2 .cast-bottom .sns-right ul li {
	height: 26px;
	width: auto;
}
.sec_2 .cast-bottom .sns-left ul li img,
.sec_2 .cast-bottom .sns-right ul li img {
	height: 100%;
	width: auto;
}
.sec_2 .cast-bottom .sns-left ul li:hover,
.sec_2 .cast-bottom .sns-right ul li:hover {
	opacity: 0.6;	
}
.sec_2 .cast-bottom .sns-left p,
.sec_2 .cast-bottom .sns-right p {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 5px;
}


/***************************************
07.チケット .sec_3
***************************************/

#sec_3 .inner {
	text-align: center;
	padding-top: 100px;
}
#sec_3 .inner-row.row-01 {
	margin-bottom: 40px;
}
#sec_3 .inner-row.row-02 {
	margin-bottom: 32px;
}
#sec_3 .inner h2 {
	padding-bottom: 25px;
}
#sec_3 .inner h3 {
	font-size: 18px;
	font-weight: bold;
    margin-bottom: 5px;
}
#sec_3 .inner .title-1 {
	line-height: 1.25em;
	font-weight: bold;
	padding-bottom: 20px;
}
#sec_3 .inner .title-2{
	line-height: 1em;
	font-size: 24px;
	font-weight: bold
}
#sec_3 .inner h3 {
	font-size: 20px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 32px;
}
#sec_3 .inner h3::before,
#sec_3 .inner h3::after{
	content: "";
	background: url("../img/dia.png")no-repeat center top;
	background-size: contain;
	display: inline-block;
	width: 16px;
	height: 16px;
}
#sec_3 .inner h3::before{
	margin-right: 8px;
}
#sec_3 .inner h3::after {
	margin-left: 8px;
}
#sec_3 .inner-row {
	border: solid 5px #322C28;
	background-color: #fff;
	padding: 4px;
}
#sec_3 .inner-row .inner-box {
	border: solid 1px #322C28;
	padding: 0 30px 23px;
}
#sec_3 .title-1 {
	font-size: 27px;
	font-weight: 800;
}
#sec_3 .row-02 .text-box-2 {
	line-height: 1.7em;
	margin: 5px auto;
}
#sec_3 .row-02 .text-box-1 {
	width: 50%;
    margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
#sec_3 .row-02 .text-box-1 .t-type {
	font-size: 20px;
	font-weight: 800;
}
#sec_3 .row-02 .text-box-1 .text-06 {
	font-size: 20px;
	font-weight: 800;
}
#sec_3 .row-02 .text-box-1 .text-06 span {
	font-size: 16px;
}
#sec_3 .text-box-wrap .day-time {
	font-weight: 800;
}
#sec_3 .text-box-wrap .text-02 {
    font-size: 20px;
}
#sec_3 .text-box-wrap .text-03 {
    font-size: 16px;
}
#sec_3 .text-box-1 .text-06 {
	font-size: 28px;
	font-weight: 800;
}
#sec_3 .text-area  {
	padding: 11px 0 16px;
}
#sec_3 .row-02 .inner-box .sales-info {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 12px;
	font-weight: 400;
	text-align: left;
	padding: 16px 0 32px;
}
#sec_3 .row-02 .inner-box .sales-info.bottom-line {
	border-bottom: solid 1px #322C28;
}
#sec_3 .row-02 .inner-box .sales-info ul li {
		position: relative;
		padding-left: 1em;
	}
#sec_3 .row-02 .inner-box .sales-info ul li::before {
	content: '※';
	display: inline-block;
	left: 0;
    position: absolute;
}
#sec_3 .row-02 .inner-box .sale-period {
}
#sec_3 .row-02 .inner-box .sale-period .sub-ttl {
	font-size: 16px;
	font-weight: 800;
	padding-bottom: 5px;
}
#sec_3 .row-02 .inner-box .sale-period .text-box-2 {
	font-size: 20px;
	font-weight: 800;
	padding-bottom: 5px;
}
#sec_3 .row-02 .inner-box .sale-period .btn-area {
	
}
#sec_3 .row-02 .inner-box .sale-period .btn-area ul {
	display: flex;
	justify-content: center;
	gap: 32px;
} 
#sec_3 .row-02 .inner-box .sale-period .btn-area ul li a{
	padding: 10px 15px;
	color: #F6F7F8;
	background: #BA2636;
	border: 1px solid #322C28;
	border-radius: 50px;
	box-sizing: border-box;
	display: block;
	line-height: 1em;
}
#sec_3 .row-02 .inner-box .sale-period .btn-area ul li a:hover{
	text-decoration: none;
	background: #322C28;
}
#sec_3 .ticket-points h4 {
	font-size: 24px;
	font-weight: 800;
	text-align: center;
}
#sec_3 .ticket-points ul {
	padding: 16px 0 70px;
}
#sec_3 .ticket-points ul li {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-weight: 400;
	text-align: left;
	list-style: disc;
	padding-bottom: 5px;
}

/***************************************
10.アクセス .sec_4
***************************************/
#sec_4 {
	background: url("../img/pc-bg-2.png") center top;
	background-size: cover;
}
#sec_4 .inner {
	color: #F6F7F8;
	padding-top: 90px;
}
#sec_4 .inner .place-area {
	display: flex;
	padding-top: 32px;
}
#sec_4 .inner .place-area .g_map,
#sec_4 .inner .place-area .text-area {
	width: 50%;
}
#sec_4 .inner .place-area .text-area {
	padding-left: 24px;
	box-sizing: border-box;
}
#sec_4 .inner .place-area .text-area .text-row-01 {
	font-size: 16px;
	font-weight: 800;
}
#sec_4 .inner .place-area .text-area .text-row-01 dl {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 16px;
}
#sec_4 .inner .place-area .text-area .text-row-01 dt {
	width: 15%;
}
#sec_4 .inner .place-area .text-area .text-row-01 dd {
	width: 85%;
}
#sec_4 .inner .address-info .text-area ul{
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 130%;
	list-style: disc;
	padding-left: 1em;
}
#sec_4 .inner .address-info .text-area ul li {
	padding-bottom: 5px;
}
#sec_4 .inner .access-btn {
	margin: 24px auto 32px;
}
#sec_4 .inner .access-btn {
	text-align: center;
}
#sec_4 .inner .access-btn a {
	display: inline-block;
	background: #fff;
	color: #322C28;
	font-weight: 800;
	font-size: 16px;
	padding: 8px 15px;
	border: 1px solid #322C28;
	border-radius: 50px;
}
#sec_4 .inner .row_01 h4 {
	padding-bottom: 16px;
	font-size: 24px;
	font-weight: 800;
	text-align: center;
}
#sec_4 .inner .row_01 ul {
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.7em;
	list-style: disc;
	padding-bottom: 60px;
	padding-left: 1em;
}
#sec_4 .inner .row_01 ul li {
	padding-bottom: 5px;
}

.g_map_inner {
  width: 100%;
  aspect-ratio: 340 / 225;
}
.g_map_inner iframe {
  width: 100%;
  height: 100%;
}

/***************************************
GOODS #sec_5
***************************************/
#sec_5 {
	background: url("../img/pc-bg-3.jpg")center top;
	background-size: cover;
}
#sec_5 .inner {
	padding: 100px 0;
}
#sec_5 .comingsoon {
	text-align: center;
    padding: 12px 0;
    font-size: 20px;
    font-weight: bold;
}
/***************************************
11.ご来場になる方へ #sec_6
***************************************/
.contact {
    text-align: center;
	padding: 100px 0;
}
.sec_6 p {
	font-weight: 800;
}
.contact h3 {
    font-weight: bold;
	font-size: 20px;
}
.contact p span {
    font-size: 14px;
}

a.tel-num {
	text-decoration: none;
	color: #101010;
}
.production-planning {
	margin-bottom: 100px;
}
.production-planning p {
	text-align: center;
	padding-bottom: 8px;
}

/***************************************
13.レスポンシブ
***************************************/

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

    .pc_only {
        display: none;
    }
}

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

    .pc_only {
        display: none;
    }
    .sp_only {
        display: block;
    }
    /*ヘッダー*/
    header {
        height: 60px;
    }

	section {
		padding: 0;
	}
    section .inner {
		width: 91.8%;
	}
	#ticket-btn {
		width: 45vw;
		position: fixed;
		bottom: -200px;
		right: 5px;
		z-index: 1000;
	}
	.mv {
		background: url("../img/sp-mv.png") no-repeat center top / 100% auto;
		padding-top: calc(2532 / 1170* 100%);
		position: relative;
		z-index: 21;
	}
	section h2 {
		font-size: 30px;
	}
	#sec_1 .text-01 {
		text-align: center;
		font-size: 18px;
		font-weight: bold;
	}
	#sec_3 ul {
		padding: 15px 0 0;
	}
	section h2.ttl_02 {
		padding-bottom: 0;
	}
	p.access__text {
		font-size: 14px;
		margin-bottom: 6px;
	}
/*タイトル　ライン*/
	section h2.ttl_01 {
		margin: 0 auto;
		text-align: center;
	}
	#sec_3 .inner h2 {
		padding-bottom: 15px;
	}
	section.sec_2 h2 {
		line-height: 1em;
	}
	#sec_3 .place a {
		font-size: 16px;
	}
	section .inner, #sec_1 .inner {
		width: 95%;
		margin: 0 auto;
	}
	#sec_1 .inner {
		padding: 0;
	}
	.sns .btn, .map .btn, .other-info .btn-area .btn {
		padding: 8px 1em 10px;
	}
	/*余白*/
	#sec_1 {
		padding: 60px 0 0;
	}
	#sec_3 .inner {
		padding-top: 60px;
	}
	#sec_4 .inner {
		padding-top: 56px;
	}
    #sec_1 .text-area {
        font-size: 16px;
		font-weight: bold;
        padding: 25px 0;
    }
	/*背景*/
	#sec_2 {
		background: url(../img/sp-bg-1.jpg) center top;
		background-size: cover;
	}
	#sec_4 {
		background: url(../img/sp-bg-2.png) center top;
		background-size: cover;
	}
	#sec_5 {
		background: url(../img/sp-bg-3.jpg) center top;
		background-size: cover;
	}
	#sec_1 .text-01 {
		font-size: 14px;
		padding-bottom: 14px;
		text-align: left;
	}
    .sec_1 .text-area p {
        font-size: 18px;
    }
	.sec_1 .text-area p.text-02 {
        font-size: 24px;

		margin-bottom: 20px;
    }
	.sec_1 .sns {
		padding-bottom: 60px;
	}

    .sec_1 .img-area {
        width: 100%;
        padding-top: 30px;
    }
	.sec_2 .cast_item {
		font-size: 20px;
		padding-bottom: 8px;
	}
    .sec_2 .cast ul {
        width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding-top: 0;
    }

    .sec_2 .cast ul li {
        padding-top: 8px;
    }
	#sec_3 .row-02 .text-box-1 {
		width: 80%;
	}
	.sec_3 ul li {
		padding: 0;
	}
	

	#sec_3 h2.ttl_02 {
        margin: 0 auto 24px;
        height: 54px;
    }
    #sec_3 .inner .title-1 {
		font-size: 22px;
        line-height: 1.2em;
        padding-bottom: 8px;
	}
	#sec_3 .inner h3 {
		font-size: 18px;
		margin-top: 0;
	}
	#sec_3 .row-02 .inner-box .sale-period .sub-ttl {
		font-size: 14px;
	}
	#sec_3 .row-02 .inner-box .sale-period .text-box-2 {
		font-size: 14px;
		margin: 0 auto;
	}
	#sec_3 .row-02 .inner-box .sale-period .text-box-2 .sp-text-01 {
		text-align: center;
	}
	#sec_3 .row-02 .inner-box .sale-period .text-box-2 .sp-text-02 {
		text-align: left;
	}
	#sec_3 .row-02 .inner-box .sale-period .btn-area ul {
		display: block;
	}
	#sec_3 .row-02 .inner-box .sale-period .btn-area ul li {
		width: 180px;
		margin: 0 auto 16px;
		box-sizing: border-box;
	}
	#sec_3 .inner .title-2 {
		font-size: 18px;
	}
	#sec_3 .inner .overview-01 {
        padding: 5px 0;
	}
	#sec_3 .inner .overview-01 .text-box {
		padding-top: 18px;
	}
	#sec_3 .text-box-wrap .text-06 span {
		font-size: 12px;
	}
	#sec_3 .text-box-wrap .text-07 {
		font-size: 16px;
		line-height: 1.4em;
	}
	#sec_3 .row-02 .text-box-1 .t-type {
		font-size: 18px;
	}
	#sec_3 .row-02 .text-box-1 .text-06 {
		font-size: 18px;
	}
	#sec_3 .row-02 .text-box-1 .text-06 span {
		font-size: 14px;
	}
	#sec_3 .row-02 .inner-box .sales-info {
		font-size: 12px;
		padding: 16px 0;
		margin-bottom: 16px;
	}
	#sec_3 .ticket-points ul {
		padding: 0 0 60px 1em;
	}
	.sale-site a {
		margin: 0 auto 18px;
	}
	
	#sec_3 .inner-row.row-01 {
		margin-bottom: 25px;
	}
	#sec_3 .inner h4 {
		font-size: 19px;
	}
	#sec_3 .inner-row .inner-box {
		padding: 19px 19px 0;
	}
	#sec_3 .inner-row.row-01 .inner-box {
		padding: 19px;
	}
	#sec_3 .text-box-wrap .text-02 {
		font-size: 20px;
	}
	#sec_3 .text-box-wrap .text-03 {
		font-size: 16px;
	}
	.day-time {
		line-height: 1em;
		padding-top: 5px;
	}
	#sec_3 .inner h4 {
		line-height: 1em;
		padding-bottom: 6px;
	}
	.sec_3 .row-01 ul {
		font-size: 12px;
		margin-left: 0;
	}
	.sec_3 .row-01 ul li {
		text-indent: -0.5em;
		text-align: center;
	}
    .sec_3 .price span {
        font-size: 0.8em;
    }
	#sec_3 .inner>p {
		line-height: 1.2em;
	}

    .sec_3 .sub-ttl {
        font-weight: bold;
        padding-bottom: 5px;
    }
    .sec_3 .price-area {
        display: flex;
        justify-content: space-around;
        padding: 20px;
        text-align: center;
        font-size: 16px;
    }
	.address-inner a {
		margin: 8px auto 12px;
	}
    .sec_3 .price-area span.f_l {
        display: block;
    }

    .sec_3 .price-area span.f_s {
        display: block;
        padding-bottom: 10px;
        font-size: 0.875em;
    }

    .sec_3 .sales-btn {
        width: 100%;
        font-size: 18px;
    }

    .sec_3 .contact {
        font-size: 14px;
        padding-bottom: 0;
    }

    .sec_3 .row_01 {
        width: 87%;
        margin: 0 auto;
        padding-top: 50px;
    }
	.address-info .place-area .g_map {
	}
	#sec_4 .address-info {
		display: block;
	}
	#sec_4 .address-info .place-area {
		width: 100%;
		display: block;
	}
	#sec_4 .inner .place-area .g_map, 
	#sec_4 .inner .place-area .text-area {
		width: 100%;
	}
	#sec_4 .address-info .text-area {
		width: 100%;
	}
	#sec_4 .place {
		font-size: 16px;
	}
	#sec_4 .sp-address {
		text-align: center;
	}
	#sec_4 .inner .place-area .text-area {
		padding-left: 0;
	}
	#sec_4 .inner .access-btn a {
		padding: 4px 15px;
	}
	#sec_4 .inner .row_01 ul {
		padding-bottom: 30px;
	}
	#sec_4 .access__text_f {
		font-size: 14px;
	}
	#sec_4 .map {
		text-align: center;
	}
	.address-info .text-area ul {
		font-size: 14px;
	}
	section.sec_5 h2 {
        font-size: 42px;
    }
	#sec_5 .comingsoon p {
		font-size: 24px;
	}
    #sec_6 {
        padding: 0;
    }
	#sec_6 .row_01 {
		padding-bottom: 56px;
	}
	.contact h3 {
		font-size: 16px;
	}
	.contact h3.f-l {
		font-size: 20px;
	}
	.contact {
		padding: 60px 0;
	}
	footer {
		padding: 14px 0 10px;
	}

    footer p {
        font-size: 12px;
		line-height: 1.2em;
    }

    .information-area {
        display: block;
    }

    .cast {
        width: 100%;
    }
	.cast__item p {
		font-size: 20px;
		margin-top: 16px;
	}
    .cast__item {
        width: 100%;
    }

    .cast__item p {
        margin: 4px 0 0;
    }
	.sec_2 .cast-bottom .sns-left ul, 
	.sec_2 .cast-bottom .sns-right ul {
		gap: 30px;
	}
	.sec_2 .cast-bottom .sns-left p, 
	.sec_2 .cast-bottom .sns-right p {
		font-size: 18px;
		padding-bottom: 0;
	}
	.section-title__text {
		font-weight: 400;
	}
	.sec_3 .row-01 .ticket-type {
		font-size: 20px;
		line-height: 1.2em;
		padding-bottom: 10px;
	}
    p.news-area__list__title {
        width: -webkit-calc(100% - 101px);
        width: calc(100% - 101px);
		font-size: 14px;
    }
	section#sec_4 .inner {
		width: 91.8%;
	}
	#sec_4 .access__text-2 {
		font-size: 14px;
	}
	.map a {
		margin: 8px auto 16px;
	}
	#sec_4 .text-area .foot-info {
		font-size: 12px;
	}
	#sec_4 .other-info .img-box-1 {
		width: 100%;
	}
	.g_map_inner {
		width: 100%;
		aspect-ratio: 358 / 229;
	}
	.address-info {
		margin-bottom: 0;
	}
	.other-info .btn-area a {
		margin: 16px auto 56px;
	}
	#sec_4 .other-info .btn-area {
		margin-bottom: 0;
	}
	#sec_4 .other-info .box-ttl-2 {
		margin-top: 24px;
	}
	#sec_4 .other-info .box-2 ul {
		display: block;
	}
	#sec_4 .other-info .box-2 ul {
		width: 100%;
	}
	#sec_4 .other-info .box-2 ul li {
		width: 60%;
		margin: 0 auto;
		padding-bottom: 16px;
	}
    #sec_6 .row_01 h4 {
        font-size: 20px;
        padding: 56px 0 8px;
    }
	#sec_6 .row_01 ul {
        font-size: 14px;
    }
	#sec_6 .contact p.c-text-1,
	#sec_6 .contact p.c-text-2 {
		font-weight: 400;
	}
    #sec_4 {
        padding-top: 0;
        padding-bottom: 0;
    }
	#sec_5 .comingsoon {
        padding: 5px 0;
        font-size: 16px;
	}
	.f-banner {
		width: 60%;
		margin: 0 auto 20px;
	}
	.production-planning {
		width: 95%;
		margin: 0 auto 60px;
	}

}

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

    .sec_2 .cast ul li,
    .sec_2 .cast .empty_item {
        padding-top: 15px;
    }
}


@media screen and (min-width:768px) and (max-width:1024px) {
    .pc_only {
        display: block;
    }
	.ticket.pc_only {
		display: none;
	}
	section .inner, #sec_1 .inner {
		width: 70%;
	}
	.frame-top {
		background-image: url(../img/pc-frame-top.png);
		background-repeat: no-repeat;
		background-size: 100% auto;
		height: 3.6vw;
	}
	.frame-bottom {
		background-image: url(../img/pc-frame-bottom.png);
		background-repeat: no-repeat;
		background-size: 100% auto;
		height: 3.6vw;
	}

}
@media screen and (max-height:730px) and (max-width:1024px) {
    .header-nav>ul>li a {
        padding: 16px 15px!important;
    }
}
@media (min-width: 751px) {
a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
}
}