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

　円通院

=================================================*/
body{
	background-color: #000;
	font-family: "Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	font-size: 16px;
}
body p{
	line-height: 1.7em;
}
img{width: 100%;}
.fb_wrap{max-width: 500px;}
@media screen and (max-width:1039px) {
	body{
		min-width: 0;
		font-size: 16px;
	}
}
.sec-ttl {
    margin: 0;
    background-image: url(common/img/index_bg.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    color: #000;
    font-size: 1.5rem;
    font-weight: normal;
    letter-spacing: .3em;
    -moz--writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    white-space: nowrap
}
.sec-ttl .ttl-inner{
    display: flex;
    padding: 60px 30px;
    font-family: Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    align-items: center;
    flex-direction: row;
    justify-content: center;
}
.sec-ttl span{
	display: inline;
	font-size: .6em;
	letter-spacing: .05em;
    margin: 10px 0;
/*	transform: rotate(180deg) ;*/
	position: relative;
    -moz--writing-mode: initial;
    -ms-writing-mode: initial;
    -webkit-writing-mode: initial;
    -o-writing-mode: initial;
    writing-mode: initial;
}

/*IEのみ余白調整*/
@media all and (-ms-high-contrast: none) {
	.sec-ttl span{
		padding-top: 80px;
	}
	.sec-ttl span::before{
		position: absolute;
		left: 10px;
		top: 10px;
	}
}

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

}

/*　ヘッダー
-------------------------------------------------*/
.header{
	position: relative;
	min-height: 600px;
	height: 100vh !important;
}

.header .inner{
	position: relative;
	width: 100%;;
	margin: 0 auto;
}

.header .header-bk{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -100;
}
.header .header-bk ul.slideshow{
	list-style: none;
	padding: 0;
	margin: 0;
}
    .header .logo img.logo_pc{display: block;
    height: 100vh;
    width: auto;}
    .header .logo img.logo_sp{display: none;}
/*IEのみ余白調整*/
@media all and (-ms-high-contrast: none) {
	.header .inner{
		padding-bottom: 200px;
	}
}


.header nav.primary-pc{
	position: absolute;
	top: 10px;
    left: 30vh;
}

.header nav.primary-pc ul {
	list-style: none;
	padding: 0;
}
.header nav.primary-pc ul li{
	float: right;
	margin: 0 17px;
}

.header nav.primary-pc ul li a:hover{
	opacity: 0.8;
}
.header nav.primary-pc ul li a img{
	width: 18px;
	height: auto;
}

.header .catch{
    position: absolute;
    top: 40px;
    right: 40px;
    display: flex;
    flex-direction: row-reverse;
    color: #fff;
    font-size: 32px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    text-shadow: 0 0 8px black;

}.header .catch span{
	padding-bottom: 0.25em;
	font-size: clamp(18px, 5vh, 45px);
	opacity: 0;
}
.header .catch .row03 span{
	padding-bottom: 0.25em;
	font-size: clamp(14px, 2vh, 32px);
}

.header .catch div[class ^= "row"]{
/*
    display: flex;
    flex-direction: column;
*/
        -moz--writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
/*    opacity: 0;*/
white-space: nowrap;
margin-left: min(1vw,20px);
}

/*
.header .catch div[class ^= "row"] span{
    max-width: 50px;
    margin-left: 20px;

}
*/

.header .go-home{
    color: #fff;
    background: #501C0F;
    position: absolute;
    bottom: 35px;
    left: 30px;
    padding: 1em 0.5em;
    max-width: 350px;
    width: 28vh;
}
.header .go-home a{
	display: block;
/*	padding: .5em 3em;*/
	text-decoration: none;
    text-align: center;
}
.header .logo{
width: 30vh;
 height: 100vh;
}
.header .go-home a::before{
	content: "";
	display: inline-block;
	width: 5px;
	height: 11px;
	background: url("common/img/l-tri.png") center/cover;
	margin-right: 1em;
}
.ticket_map{display: block;}
@media screen and (max-width:1039px) {
    .ticket_map{display: none;}
	.header{
		min-height: 400px;	
		background-position: center;
	}
    
.header .catch{
        top: 30px;
    right: 70px;
    font-size: min(5vw,30px);
}
	.header .inner{
		width: 100%;
	}
    .header .logo img{
width: auto;
    /* max-width: 250px; */
    height: min(74vh,800px);
	min-height: 337px;
	
	}
	.header .menu{
		position: fixed;
		top: 20px;
		right: 0;
		background: #000;
		padding: 15px 10px;
		border-radius: 5px;
		z-index: 9999;
	}
	.header .primary-sp{
position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    z-index: 9998;
	}
	.header .primary-sp ul{
		list-style: none;
		padding: 0;
		background: #ffffff;
		/*opacity: 0.8;*/
		padding: 10px;
		margin: 0;
		height: 100vh;
	}
	.header .primary-sp ul li{
		width: 100%;
		text-align: center;
		padding: 1em;
		font-weight: bold;
		color: #381616;
	}
	.header .primary-sp ul li:not(:last-child){
		border-bottom: 1px solid #b6a2a2;
	}
	.header .primary-sp ul li a{
		text-decoration: none;
	}

    .header .logo {
height: 100vh;
width: 100%;
}
    .header .go-home {
    bottom: 0;
    left: 0;
}

    .header .logo img.logo_sp{
        display: block;
        padding-top: 20px;}

		.header .catch span{
			font-size: clamp(16px, 4.5vh, 24px);/* font-size: clamp(18px, 4.5vh, 45px); */
			}
}
.logo_wrap {
    height: 100vh;
    margin: 0;
}
@media screen and (max-width:500px) {
    .header .go-home a {
    font-size: 80%;
}
}
/*News
-----------------------------*/
.header__news {
    position: absolute;
	bottom: 50px;
    right: 0px;
    background-image: url(../../images/news__bk.png);
    background-size: cover;
	width: 520px;
    height: 175px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-right: 2em;
}

/*
.header__news::before {
	content: "";
	position: absolute;
	top: -20px;
	left: -20px;
	display: block;
	width: 81px;
	height: 81px;
	background-image: url(../../images/news__tit.png);
	background-size: cover;
}
*/

.header__news--image {
	    width: 60%;
	padding-left: 26px;
}

.header__news--image img {
    width: 90%;
    height: auto;
    margin: 0 auto;
/*    object-fit: cover;*/
}

.header__news--txt {
	color: #fff;
	width: 70%;
	font-size: 12px;
}
.header__news--day{
	font-size: 14px;
}


.header__news--btn {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.header__news--btn a {
	width: 201px;
    height: 33px;
    line-height: 33px;
    font-size: 1.3em;
	text-align: center;
	color: #fff;
	border: 1px solid #fff;
	text-decoration: none;
	position: relative;
}
.header__news.noimg {
    width: 340px;
    padding-right: 0em;
}
/*
.header__news--btn ::after {
	content: "";
	width: 46px;
	height: 15px;
	background-image: url(../../images/news__btn--arrow.png);
	background-size: 45px 15px;
	background-repeat: no-repeat;
	display: block;
	position: absolute;
	top: 10px;
	right: -23px;
}
*/

.header__news h3{
	font-size: 1.389em;
	margin: 0.3em 0 0.8em;
}
/*News（スマホ）
-----------------------------*/
@media screen and (max-width:1039px) {
	.header__news {
		width: 100%;
		bottom: 0;
		right: 20px;
		height: auto;
		display: block;
		margin: 0;
		padding: 15px 20px;
		box-sizing: border-box;
		position: static;
		background: #000;
	}

	.header__news::before {
		left: 0;
		width: 50px;
		height: 50px;
	}

	.header__news--image {
		display: none;
	}

	.header__news--image img {
		width: 100%;
	}

	.header__news--txt {
		width: 100%;
		padding: 10px 0;
	}

	.header__news--day {
		letter-spacing: 0.1em;
/*		padding: 0 0 0 20px;*/
	}

	.header__news--txt h3 {
		letter-spacing: 0.1em;
/*		padding: 0 0 0 20px;*/
		width: 100%;
	}

	.header__news--btn a {
		margin: 0 auto;

	}
	.header__news.noimg {
		width: 100%;
		padding-right: 0em;
	}
}

main .inner{
	z-index: 100;
}

.button a {
    display: block;
    padding: 1em;
    border: 1px solid #fff;
    text-decoration: none;
    margin: 1em 0;
    text-align: center;
}
#about{	
    color: #fff;
    background: url(common/img/about_crowd01.png),url(common/img/about_crowd02.png);
    background-repeat: no-repeat;
    background-color: #131422;
    background-size: 225px,280px;
    background-position: left 5% top 370px, right 5% bottom 50px;

}
#about::before {
    content: "";
    display: block;
    width: 100%;
    height: 360px;
    background: url(common/img/about-bk-before.png),url(common/img/about-bk-before_img.jpg);
    background-size: contain, cover;
    background-repeat: no-repeat;
    background-position: bottom;
}
#about .inner{
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
	padding: 100px 200px 100px 0;
}
#about .sec-ttl{
	position: absolute;
	top: -10%;
	right: 0;
}
#about article table{
	width: 100%;
}
#about article table .strong{
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.5em;
}
#about article table tr{
	margin-bottom: 20px;	
	text-align: left;
	border-bottom: 1px solid #363636;
}
#about article table th,#about article table {
	padding: 1rem 0;
}
#about article table th{
	font-weight: bold;
	vertical-align: top;
	white-space: nowrap;
	line-height: 1.8em;
	padding: 0.5rem 1rem 0.5rem 0;
}
#about article table td{
	line-height: 1.8em;
	padding: 0.5rem 0;
}
#about article p{
	color: #C36161;
}

@media screen and (max-width:1039px) {
    .logo_wrap img.logo_pc{display: none!important;}
	#about{margin-top: 6em;}
	#about .inner{
		width: 100%;
		padding: 40px 20px;
		background: none;
        background-color: #131422;
	}
    #about .sec-ttl .ttl-inner {

}
	#about .sec-ttl{
    top: -220px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: 80%;
    text-align: center;
    padding: 1em
	}
}

#caution{
	padding: 100px 0;
	background: url("common/img/gotyuui-bk.jpg") center/cover;
}
#caution .inner{
	max-width: 1000px;
	margin: 0 auto;
	padding: 50px 80px 80px;
	background: #fff;
}
#caution .title{
	text-align: center;
	font-weight: normal;
	background: url("common/img/gotyuui-img1.png") center top/76px no-repeat;
	padding-top: 100px;
	margin-bottom: 50px;
	font-family: Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}
#caution p{
	text-align: center;
	line-height: 1.8em;
	margin-bottom: 30px;
	font-weight: bold;
font-size: 120%;
}
#caution ul{
	color: #A01200;
	margin-bottom: 30px;
	padding-left: 20px;
}
#caution ul li{
	padding: 0 0 0.5em 0;
}
#caution ul li strong{
	text-decoration: underline;
}
#caution .line{
	overflow: hidden;
}
#caution .line span{
	position: relative;
}
#caution .line span::after{
	content: "";
	width: 4000px;
	height: 1px;
	background: gray;
	position: absolute;
	top: 50%;
	left: calc(100% + 2em);
	transform: translateY(-50%);
}
@media screen and (max-width:1039px) {
	#caution{
		padding: 60px 20px 120px;
	}
	#caution .inner{
		width: 100%;
		padding: 20px;
	}
	#caution p{
		text-align: left;
	}
	#caution .line{
		padding-bottom: .5em;
		text-align: center;
		border-bottom: 1px solid #000;
	}
	#caution .line span::after{
		content: none;
	}
}

#leaf{
	/*padding-top: 250px;*/
	padding-top: 20.1428%;
	background-image: url("common/img/kouyou-bk.png");
	background-position: center top;
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-color: #000;
	color: #fff;
}
#leaf .inner{
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
	padding: 100px 0 100px 200px;
	background-image: url(common/img/pc_midashi.png);
	background-size: 279px auto;
	background-position: top 240px left 0;
	background-repeat: no-repeat;
}
#leaf .sec-ttl{
	position: absolute;
	top: -120px;
	left: 0;
}
#leaf .line{
	overflow: hidden;
}
#leaf .line span{
	position: relative;
}
#leaf .sec-ttl span,
#crowd .sec-ttl span{
	font-size: 11px;
    text-align: center;
}
#leaf .line span::after{
	content: "";
	width: 4000px;
	height: 1px;
	background: #fff;
	position: absolute;
	top: 50%;
	left: calc(100% + 2em);
	transform: translateY(-50%);
}
#leaf .line b{
	font-size: 1.5em;
}
#leaf dl dt,#leaf dl dd{
	padding: 10px 0;
}
#leaf dl dt:not(:first-of-type),#leaf dl dd:not(:first-of-type){
	border-top: 1px solid #474747;
}

#leaf dl dt{
	clear: left;
	float: left;
	width: 12em;
}
#leaf dl dt{
	line-height: 1.8em;
}
#leaf dl dt span{
	display: block;
}
#leaf dl dd{
	margin-left: 12em;
}
@-moz-document url-prefix() {
	#leaf dl dd{
		padding: 25px 0;
	}
}

#leaf ul.cond{
	list-style: none;
	padding: 0;
	white-space: nowrap;
	text-align: right;
	position: relative;
}
#leaf ul.cond li:nth-child(1){
	position: relative;
}
#leaf ul.cond li:nth-child(1)::before{
	content: "";
	display: block;
	width: 1px;
	height: 60px;
	background: #fff;
	position: absolute;
	bottom: -7px;
	left: -7px;
	transform: rotate(45deg);
	transform-origin: center bottom;
}
#leaf ul.cond li{
	display: inline-block;
	width: 34.5%;
	margin-left: -3%;
}
#leaf ul.cond li img{
	width: 100%;
	height: auto;
}

@media screen and (max-width:1039px) {
	#leaf::before{
        display: block;
        content: "";
        width: 100%;
        height: 320px;
		background-image: url("common/img/kouyou-bk-sp.png");
        background-size: cover;
	}



    #leaf{
		padding-top: 0;
		background-image: none;
	}
	#leaf .inner{
		width: 100%;
		padding: 40px 20px;
		background: none;
	}
	#leaf .sec-ttl{
top: -190px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    text-align: center;
    padding: 1em;
	}
	#leaf .line{
		padding-bottom: .5em;
		text-align: center;
		border-bottom: 1px solid #fff;
	}
	#leaf .line span::after{
		content: none;
	}
	#leaf ul.cond li:nth-child(1)::before{
		content: none;
	}
	#leaf dl dt{
		float: none;
		padding-bottom: 0;
		width: 100%;
	}
	#leaf dl dd{
		margin-left: 0;
		padding-top: 0;
	}
	#leaf dl dd:not(:first-of-type){
		border-top: none;
	}
	#leaf ul.cond{
		text-align: left;
	}
	#leaf ul.cond::before{
		content: none;
	}
	#leaf ul.cond li{
		margin: 0;
		margin-right: -3%;
	}
}

#crowd{
	/*padding-top: 250px;*/
	padding-top: 20.1428%;
	background-image: url("common/img/konzatsu-bk.png");
	background-position: center top;
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-color: #000;
	color: #fff;
}
#crowd .inner{
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
	padding: 100px 200px 100px 0;
	background-image: url(common/img/pc_midashi.png);
	background-size: 279px auto;
	background-position: top 240px right 0;
	background-repeat: no-repeat;
}
#crowd .sec-ttl{
	position: absolute;
	top: -120px;
	right: 0;
}
#crowd .line{
	overflow: hidden;
}
#crowd .line span{
	position: relative;
}
#crowd .line span::after{
	content: "";
	width: 4000px;
	height: 1px;
	background: #fff;
	position: absolute;
	top: 50%;
	left: calc(100% + 2em);
	transform: translateY(-50%);
}

#crowd p{
	margin-bottom: 50px;
}

#crowd table{
	width: 100%;
	table-layout: fixed;
	margin-bottom: 50px;
}
#crowd table th{
	text-align: left;
	padding: 0 .5em;
}
#crowd table th,#crowd table td{
	border-left: 1px solid #fff;
}
#crowd table td{
	height: 100px;
}
#crowd table td.red{
	background: #B13D2E;
}
#crowd table td.yerrow{
	background: #CE963B;
}
#crowd table td.green{
	background: #7C9A54;
}
#crowd ul.cond{
	list-style: none;
	padding: 0;
}
#crowd ul.cond li{
	float: left;
	margin-right: 2.5em;
}
#crowd ul.cond li::before{
	content: "";
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	margin-right: .5em;
	vertical-align: middle;
}
#crowd ul.cond li.red::before{
	background: #B13D2E;
}
#crowd ul.cond li.yerrow::before{
	background: #CE963B;
}
#crowd ul.cond li.green::before{
	background: #7C9A54;
}
@media screen and (max-width:1039px) {

	#crowd::before{
        display: block;
        content: "";
        width: 100%;
		height: 320px;
		background-image: url("common/img/konzatsu-bk-sp.png");
        background-size: cover;
	}
    #crowd{
		padding-top: 0;
		background-image: none;
	}
	#crowd .inner{
		width: 100%;
		padding: 40px 20px;
		background:none;
	}
	#crowd .sec-ttl{
    top: -190px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    text-align: center;
        padding: 1em;
	}
	#crowd .line{
		padding-bottom: .5em;
		text-align: center;
		border-bottom: 1px solid #fff;
	}
	#crowd .line span::after{
		content: none;
	}
	#crowd table tr{
		border-top: 1px solid #fff;
	}
	#crowd table th,#crowd table td{
		border-left: none;
	}
	#crowd table th{
		width: 6em;
		padding: .5em 0 0 0;
		vertical-align: top;
	}
	#crowd table td{
		height: 60px;
	}
	#crowd ul.cond li{
		float: none;
		margin-bottom: .5em;
	}
}
#sns{
	padding: 130px 0 100px;
	background-color: #7B6439;
    background-image: url("common/img/sns-bk.png");
        background-size: cover;
    position: relative
}

#sns h2{
    position: absolute;
    max-width: 160px;
        top: -80px;
    left: 50%;
    transform: translateX(-50%);
}

#sns .inner{
	max-width: 1000px;
	margin: 0 auto;
}
#sns ul.links{
	display: block;
	list-style: none;
	padding: 0;
	letter-spacing: -.3em;
}
#sns ul li{
	width: 480px;
	display: table-cell;
	vertical-align: top;
	letter-spacing: normal;
}
.fb_wrap{
	max-width: 500px;
}
#sns ul.links li.youtube{
	padding-left: 40px;
}

@media screen and (max-width:1039px) {
	#sns{
		padding: 0;
	}
	#sns .inner{
		width: 100%;
		    padding: 120px 20px 40px;
	}
	#sns ul.links{
		display: block;
	}
	#sns ul li{
		width: 100%;
		display: block;
	}
	#sns ul.links li:not(:last-child){
		margin-bottom: 30px;
	}
	#sns ul.links li img{
		width: 100%;
	}
	#sns ul.links li.youtube{
		height: 0;
		position: relative;
		padding-top: 60%;
	}
    #sns ul.links li.facebook{
max-width: 500px;
        margin: auto;
	}
	#sns ul.links li.youtube iframe{
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
	}
	.fb_wrap{
        width: 100%;
		max-width: 500px;
		padding-left:0;
            margin: auto;
	}
    .fb_wrap iframe{
		max-width: 500px;
            margin: auto;
	}
}

#highlight{
	/*padding-top: 250px;*/
	padding-top: 20.1428%;
	background-image: url("common/img/midokoro-bk.png");
	background-position: center top;
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-color: #231917;
	color: #fff;
}
#highlight .inner{
    position: relative;
    width: 80%;
    max-width: 800px;
    margin: 0 auto;
    padding: 100px 0;

}
#highlight .sec-ttl{
	position: absolute;
	top: -120px;
	left: -100px;
}
#highlight .sec-ttl .ttl-inner{
  
}
#highlight .sec-ttl span {
font-size: 11px;
}

#highlight .map{
	margin-bottom: 50px;
}
#highlight ul{
	list-style: none;
	padding: 0;
}
#highlight ul li{
	overflow: hidden;
	margin-bottom: 50px;
}
#highlight ul li .look{
	width: 50%;
}
#highlight ul li:nth-child(odd) .look{
	margin-right: 30px;
	float: left;
}
#highlight ul li:nth-child(even) .look{
	margin-left: 30px;
	float: right;
}
#highlight ul li:nth-child(odd) h3{
	margin-left: 250px;
}
#highlight ul li:nth-child(even) h3{
	margin-right: 250px;
}
#highlight ul li h3{
	border-bottom: 1px solid #fff;
	padding-bottom: .8em;
    font-family: Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    font-size: 22px;
}
#highlight ul li p{
	line-height: 1.8em;
        font-size: 16px;
}
#highlight ul li .button{
	overflow: hidden;
	text-align: center;
}
#highlight ul li .button a{
	display: block;
	padding: .5em;
	border: 1px solid #fff;
	text-decoration: none;
}
#highlight ul li p.oubo {
	margin-top: 2em;
	font-weight: bold;
	font-size: 1.1em;
}
#highlight ul li .button.oubo a{
	margin: 0;
}
.map_pc{display: block;}
.map_sp{display: none;}
@media screen and (max-width:1039px) {
	#highlight::before{
        width: 100%;
        height: 320px;
        display: block;
        content: "";
        background-image: url("common/img/midokoro-bk-sp.png");
        background-size: cover;
            background-position: bottom;
	}
    #highlight{
		padding-top: 0;
		background-image: none;
	}
	#highlight .inner{
		width: 100%;
		padding: 100px 20px;
		background: none;
	}
	#highlight .sec-ttl{
    top: -190px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    text-align: center;
    padding: 1em;
	}
	#highlight ul li .look{
		width: 100%;
		height: auto;
		margin: 0;
            margin-bottom: 2em;
	}
	#highlight ul li h3{
		text-align: center;
	}
	#highlight ul li:nth-child(odd) h3{
		margin-left: 0;
	}
	#highlight ul li:nth-child(even) h3{
		margin-right: 0;
	}
	#highlight ul li .button{
		margin-bottom: 20px;
	}
    .map_pc{display: none;}
    .map_sp{display: block;}
}
#access::before {
    content: "";
    display: block;
    width: 100%;
    height: 360px;
    background: url(common/img/access-bk-before.png),url(common/img/access-bk-before_img.png);
    background-size: contain, cover;
    background-repeat: no-repeat;
    background-position: bottom;
}
#access{
	background-color: #7B6439;
	color: #fff;
        padding-bottom: 100px;
}

#access .sec-ttl {
position: absolute;
    right: 10px;
    top: -170px;
}

#access .inner{
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
    padding-top: 100px;
}
#access .access_flex{
display: flex;
    margin-bottom: 60px;
}

#access .line{
	overflow: hidden;
}
#access .line span{
	position: relative;
}
#access .line span::after{
	content: "";
	width: 4000px;
	height: 1px;
	background: #fff;
	position: absolute;
	top: 50%;
	left: calc(100% + 2em);
	transform: translateY(-50%);
}
#access article{
	overflow: hidden;
    width: 42%;
}
#access .googlemap{
	margin-bottom: 50px;
}
#access .map{
	width: 42%;
	float: right;
	margin-left: 50px;
}
#access article p{
	margin-bottom: 30px;
}

#access article ul{
	padding-left: 20px;
}

@media screen and (max-width:1039px) {
    #access .access_flex {
   flex-direction: column;
        margin-bottom: 0;
}
    
#access .sec-ttl {
    top: -220px;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    text-align: center;
    padding: 1em;
}
.sec-ttl .ttl-inner {
    padding: 0;
}
.sec-ttl {
    background-image: url(common/img/index_bg_sp.png);
    letter-spacing: .3em;
    -moz--writing-mode: initial;
    -ms-writing-mode:initial;
    -webkit-writing-mode: initial;
    -o-writing-mode: initial;
    writing-mode: initial;
}
.sec-ttl span {
    display: none;
}
    #access article {
    width: 100%;
}
	#access .inner{
		width: 100%;
		padding: 40px 20px;
		background: none;
	}

	#access .map{
    width: 100%;
    float: none;
    margin-left: 0;
    margin: 40px auto;
	}
	#access .map img{
		width: 100%;
		height: auto;
	}
}
#restaurant{
	padding: 100px 0 200px;
	background: url("common/img/osusumesyokuji-bk.png") center/cover;
	color: #fff;
	text-align: center;
}
#restaurant .inner{
	max-width: 1000px;
	margin: 0 auto;
}
#restaurant h2{
    background-image: url(common/img/index_bg_sp.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    color: #000;
    font-size: 1.5rem;
    font-weight: normal;
    -moz--writing-mode: initial;
    -ms-writing-mode: initial;
    -webkit-writing-mode: initial;
    -o-writing-mode: initial;
    writing-mode: initial;
    width: 400px;
    margin: auto;
    padding: 1em;
     font-family: Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    letter-spacing: 0.1em;
}
#restaurant p{
	line-height: 1.8em;
	margin-bottom: 50px;
}
#restaurant ul.restaurant-list{
	list-style: none;
	padding: 0;
	display: block;
	letter-spacing: -.3em;
}
#restaurant ul.restaurant-list li{
	letter-spacing: normal;
	display: inline-block;
	width: 310px;
	margin-right: 35px;
}
#restaurant ul.restaurant-list li:last-child{
	margin-right: 0;
}
#restaurant ul.restaurant-list li .look{
	width: 100%;
}
#restaurant ul.restaurant-list li h3{
	font-size: 1.5rem;
	line-height: 1.5em;
}
#restaurant ul.restaurant-list li h3 span{
	display: block;
	font-size: .6em;
}
#restaurant ul.restaurant-list li .button a{
	display: block;
	padding: .5em;
	border: 1px solid #fff;
	text-decoration: none;
}
@media screen and (max-width:1039px) {
	#restaurant{
		padding: 0;
	}
	#restaurant .inner{
		width: 100%;
		padding: 40px 20px;
	}
	#restaurant .sec-ttl{
    top: -220px;
    left: 50%;
    transform: none;
    width: 80%;
    text-align: center;
    padding: 1em;
    letter-spacing: 0.1em;    
        margin: 40px auto 60px;
	}
	#restaurant ul.restaurant-list{
		display: block;
	}
	#restaurant ul.restaurant-list li{
		margin-bottom: 50px;
		margin-right: 0;
		display: block;
		width: 100%;
	}
}
.footer{
	padding-top: 50px;
	background: #131422;
	color: #fff;
	text-align: center;
}
.footer_logo img{
	height: 150px;
	width: auto;
}
.footer .copyright{
	border-top: 1px solid gray;
	padding: 1em 0;
	font-size: 11.5px;
}

.footer .pagetop{
	position: fixed;
	bottom: 40px;
	right: 40px;
	z-index: 1000;
}
.footer .pagetop a{
	display: block;
	width: 100px;
	height: 100px;
	background: url("common/img/pagetop.png") center/100px 100px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

.footer .pagetop a:hover{
	opacity: 0.8;
}

@media screen and (max-width:1039px) {
	.footer .copyright{
		padding: 2em 0;
	}
	.footer .pagetop{
		position: fixed;
		bottom: 0;
		right: auto;
		left: 0;
		width: 100%;
	}
	.footer .pagetop a{
		width: 100%;
		height: 70px;
		background: url("common/img/pagetop-sp.png") center/64px 35px no-repeat,url("common/img/pagetop-bk-sp.png") center/cover;
	}
}

/*注意文　一字下げスタイル*/
.kome{
	text-indent: -1em;
	padding-left: 1em;
	display: block;
}
.i4ewOd-pzNkMb-haAclf {
  display: none!important;
}
#map {
  width: 100%;
  height: 450px;
  overflow: hidden;
}

#map iframe {
  margin-top: -70px;
}

/*紅葉ライトアップ特別ツアー*/
section.busyo {
    background: url(common/img/busyo/busyo_img.png),url("common/img/busyo/busyo_bg01.png"),url("common/img/busyo/busyo_bg02.png"),linear-gradient(180deg, rgba(11, 10, 54, 1), rgba(4, 0, 17, 1));
    color: #fff;
    /* background-image: url(common/img/busyo/busyo_img.png); */
    background-repeat: no-repeat;
    background-position: left 45vw bottom 200px,left 0  bottom 7% ,right top 22%,center;
    background-size: min(700px,60vw),30%,30%,cover;
    padding-bottom: 80px;
}
section.busyo .busyo_wrap{
max-width: 1040px;
    margin: auto;
    padding: 20px;
}
section.busyo .busyo_wrap h2{
    max-width: 800px;
    margin: 0 auto 30px;
}
article.busyo_text {
    width: 53%;
}
article.busyo_text dl div{ 
    display: flex;
    font-size: 18px;
    /* font-weight: bold; */
    margin-bottom: 0.5em;}
article.busyo_text dt{ 
    width: 7em;
    text-align: justify;
    text-align-last: justify;}
article.busyo_text dd{ margin: 0;}
article.busyo_text p{
    font-size: 13px;
    margin: 1.5em 0;
}

.schedule{
background-color: #D5BF6A;
    padding: 1.5em;
    color: #000;
    border-radius: 0 10px 10px 0;
}
.schedule_title {
    display: flex;
    align-items: center;
}
.schedule .schedule_title h3{
    margin: 0;
    font-size: 16px;
        margin-left: 1em;
}
.schedule .schedule_title span{
    background-color: #B81D22;
    font-weight: bold;
    padding: 0.2em;
    color: #fff;
    font-size: 12px;
    display: inline-flex;
    position: relative;
    height: 20px;
}
.schedule .schedule_title span::after{
content: "";
    display: block;
    height: 20px;
    width: 10px;
    background-image: url(common/img/busyo/busyo_deco.png);
    position: absolute;
    right: -10px;
    top: 0;
    background-size: contain;

}
article.busyo_text .schedule dl{
        margin: 1em 0 0;
}
article.busyo_text .schedule dl div {
    border-bottom: dashed 1px #000100;
    padding: 0.2em;
    margin: 0;
    font-weight: bold;
}
article.busyo_text .schedule dt {
    width: auto;
    margin-right: 0.5em;
}
article.busyo_text .schedule dt,
article.busyo_text .schedule dd {
font-size: 16px;
}
article.busyo_text .schedule dd span{
color: #B81D22;
    margin-left: 0.5em;
}

.busyo .button a{
    max-width: 500px;
    margin: 50px auto 0;
}
.sp_br{display: none;}
article.busyo_text .schedule dd span.margin-sp {
    color: #000;
    margin-left: 0.5em;
}
@media screen and (max-width:1039px) {
    section.busyo .busyo_wrap {
     padding: 0; 
}
    section.busyo {
    background: linear-gradient(180deg, rgba(11, 10, 54, 1), rgba(4, 0, 17, 1));
    background-size: cover;
            padding: 40px 0;
}
    section.busyo .busyo_wrap h2 {
    margin: 0 auto ;
}
   article.busyo_text {
width: 100%;
    padding-top: 80vw;
    background: url(common/img/busyo/busyo_img.png),url(common/img/busyo/busyo_bg01.png),url(common/img/busyo/busyo_bg02.png);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top,top left 0,top right 0;
} 
  article.busyo_text dl div ,
    article.busyo_text p,
   .busyo .button{
    padding: 0 20px;
}  
    .schedule{
        margin: 0 20px;
    }
    
    .schedule_title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
    .schedule .schedule_title h3 {
    margin-left: 0;
}
    
   .sp_br{display: block;} 
    article.busyo_text .schedule dd span.margin-sp {
margin-left: 0;
}
}

/*演奏スケジュール
--------------------*/
/*PC版カレンダー*/
.music_schedule  table{
        width: 100%;
}
.music_schedule .calendar_pc table th{
    padding: 0.5em;
    background-color: #999;
    width: calc(100% / 7);
   border: solid 1px #231917;
}
.music_schedule .calendar_pc table td{
    background-color: #fff;
    width: calc(100% / 7);
    position: relative;
    padding: 1.5em 0.5em 0.5em;
border: solid 1px #231917;
    border-top: none;
    }
.music_schedule .calendar_pc table td span{
        float: right;
    padding: 0.2em 0.3em;
    background-color: #999;
    border-radius: 0 0 0 5px;
    position: absolute;
    top: 0;
    right: 0;
    }
.music_schedule .calendar_pc table td p{
    color: #000;
    margin: 0.5em 0;
    line-height: 1.3;
    font-size: 80%;
    }
.music_schedule .calendar_pc table th.sat,
.music_schedule .calendar_sp table th.sat
{background-color: #899aaa;}
.music_schedule .calendar_pc table td.sat,
.music_schedule .calendar_sp table td.sat
{background-color: #DFE2E5;}
.music_schedule .calendar_pc table th.sun,
.music_schedule .calendar_sp table th.sun
{background-color: #aa8a89;}
.music_schedule .calendar_pc table td.sun,
.music_schedule .calendar_sp table td.sun
{background-color: #EDDEDE;}

.music_schedule .calendar_pc table th.month-title,
.music_schedule .calendar_sp table th.month-title
{
background: url(common/img/artist/title_bg.png),linear-gradient(90deg, #ffddf9 0%, #c2c1fa 100%);
    color: #231917;
    font-size: 150%;
    padding: 0.5em;
background-size: cover;
}
.music_schedule .calendar_pc table th.month-title.month11,
.music_schedule .calendar_sp table th.month-title.month11{
    background: url(common/img/artist/title_bg02.png),#8F85AF;
        background-size: cover;
}

.music_schedule .calendar_pc table{display: table;}
.music_schedule .calendar_sp table{display: none;}

/*SP版カレンダー*/
.profile_wrap{
margin-top: 50px;
}
.profile_wrap h2,
.music_schedule h2{
background-image: url(common/img/index_bg_sp.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    color: #000;
    font-size: 1.5rem;
    font-weight: normal;
    -moz--writing-mode: initial;
    -ms-writing-mode: initial;
    -webkit-writing-mode: initial;
    -o-writing-mode: initial;
    writing-mode: initial;
    max-width: 400px;
    margin: auto;
    padding: 1em;
    font-family: Georgia,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    letter-spacing: 0.1em;
    text-align: center;
    margin-bottom: 30px;
}
.music_schedule .calendar_sp table th{
    padding: 0.5em;
    background-color: #c0c0c0;
    width: 10%;
    border: solid 1px #231917;
    border-top: none;
}
.music_schedule .calendar_sp table td{
background-color: #eee;
    width: 90%;
    position: relative;
    padding: 0.5em 1em;
    border: solid 1px #231917;
    border-top: none;
    }
.music_schedule .calendar_sp table td p{
color: #000;
    margin: 0.5em;
    line-height: 1.3;
    padding: 0.5em 0;
    }
.modaal-content-container h5 br{display: none;}
@media screen and (max-width:1039px) {
.music_schedule .calendar_pc table{display: none;}
.music_schedule .calendar_sp table{display: table;}
.modaal-content-container h5 br{display: block;}
}

/*プロフィール画像横並び*/
.profile{
    display: flex;
flex-wrap: wrap;
    justify-content: flex-start;
    
}
.profile .artist_wrap{
    width: calc((100% - 60px)/3);
    max-width: 300px;
    margin: 10px;
}
.profile .artist_wrap a{
text-decoration: none;
}
.profile .artist_wrap h5{
text-align: center;
    font-size: 18px;
    margin: 0.5em auto 1em;
}
.profile img{
    width: 100%;
}


@media screen and (max-width:550px) {
.profile .artist_wrap{
    width: calc((100% - 40px)/2);
    max-width: 300px;
    margin: 10px;
}
}
/*モーダル*/
.modal{
    max-width: 800px;
    display: none;}

.modaal-container {
    max-width: 600px;
 
}
.modaal-container h5{
font-size: 20px;
margin: 0;}
.modaal-container p{
    line-height: 1.5;
        margin: 1.5em auto 2em;
}
.modaal-container p.instrument{
    margin: 0;
    line-height: 1.2;
        font-size: 90%;
}


.modaal-wrapper .modaal-close {
        content: "閉じる";
    background-color: #501C0F;
    border-radius: 0;
    width: calc(100% - 40px);
    position: relative;
    top: 100%;
    /* color: #000; */
    bottom: 20px;
    left: 20px;
    box-sizing: border-box;
}
.modaal-close:hover:before {
    background: none;
}
.modaal-close:after, .modaal-close:before {
    display: none;
}

 .modaal-close:before {
display: block;
    content: "閉じる";
    width: 100%;
    background: transparent;
    transform: rotate(0deg);
    left: auto;
}
.modaal-content-container {
    padding: 20px;
}


/*フォトコンテスト
ーーーーーーーーーーーーーーーーーーー*/
.photocontest .title_wrap{
    background: url("common/img/photocon/midashi_bg_pc.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
        padding: 50px 15px 30px;
}
.photocontest .content_wrap{
    max-width: 800px;
    margin: auto;
    
}
.photocontest .content_wrap h2::after{
content: "";
    display: block;
    width: 170px;
    height: 70px;
    margin: auto;
    background-image: url("common/img/photocon/midashi_logo.png");
    background-size: contain;
margin-top: 0.5em;    
}

.photocontest .content_wrap h2{
max-width: 360px;
    margin: 0.5em auto 0;
}
.photocontest .content_wrap time{
    display: block;
    max-width: 420px;
    margin: auto;
}
.photocontest .content_wrap p{
text-align:center;
    line-height: 2em;
}
.photocontest .content_wrap p.reward{
    font-size: 140%;
    font-weight: bold;
    line-height: 1.5;
    margin: 0.5em auto 1.5em;
}
.photocontest .content_wrap h3{
text-align: center;
    background-image: url(common/img/photocon/midashi_bg_deco.png);
    padding: 0.5em;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.photocontest .content_wrap .sns_wrap{
    display: flex;
    justify-content: space-evenly;
    max-width: 500px;
    margin: 0 auto 2em;
    align-items: flex-end;
}

.photocontest .content_wrap .sns_wrap a{
    display: block;
    width: 114px;
}
.photocontest .content_wrap .sns_wrap a:nth-child(2){
    display: block;
    width: 90px;
}


@media screen and (max-width: 1039px){
.photocontest .title_wrap {
    background: url(common/img/photocon/midashi_bg_sp01.png),url(common/img/photocon/midashi_bg.jpg);
    background-repeat: no-repeat;
    background-size: contain,cover;
    background-position: bottom ,center;
    padding-bottom: 50vw;
padding-top: 50px;

}
.photocontest .content_wrap h2 {
    max-width: 360px;
    width: 90%;}
    
    .photocontest .content_wrap p br{
display: none;}
    
    .photocontest .content_wrap p.reward{
font-size: 100%;}
    .photocontest .content_wrap p.reward br{
display: block;}
    
    .photocontest .content_wrap .sns_wrap a{
        width: 30%;
    }
.photocontest .content_wrap p {
    text-align: left;
}
}

/*アコーディオン
＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿＿*/

section.photocontest {
    background-color: #C39E99;
    padding-bottom: 100px;
    background-image: url(common/img/photocon/midashi_bg_pc_bg.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: bottom;
}
/*アコーディオンで現れるエリア*/
.box_wrap .box {
padding: 70px 20px 90px;
    max-width: 800px;
    margin: auto;
}
.box_wrap .box p.caution{
    padding: 30px;
    background-color: #EEE;
 border-radius: 10px;   
}

.oubo_flex {
    display: flex;
    max-width: 900px;
    margin: auto;
    justify-content: space-between;
}


.oubo_flex div{
width: 25%;
    margin: 0 auto;
}
.oubo_flex div p{
    margin: 0.5em 0;
    font-size: 14px;
}


.box_wrap .box h3{
padding: .5em 0;
    margin: 0;
    font-weight: bold;
    border: solid 2px #333;
    border-right: none;
    border-left: none;
        margin-top: 60px;
}
.box_wrap .box dl{
display: flex;
align-items: baseline;
    border-bottom: solid 1px#ccc;
    padding: 0em 0 1em;
}
.box_wrap .box dt{
    font-weight: bold;
    margin-right: 1em;
    width: 10em;
}
.box_wrap .box dd{
margin: 0;
width: calc(100%);
}
.box_wrap .box dd p{
margin: 0;
    font-weight: bold;
}
.box_wrap .box .Proh_list{
    font-size: 90%;
    padding: 20px;
    background-color: #EEE;
    border-radius: 10px;
    height: 250px; 
    overflow-y: scroll;}


.box_wrap .box .Proh_list h3{
        margin-top: 0;
    border-top: none;
    border-bottom: solid 1px;
}

	 .Proh_list::-webkit-scrollbar{
   width: 22px;
         border-radius: 10px;
}

.box_wrap .box .Proh_list ul{
padding: 0 1.5em;}

 .Proh_list::-webkit-scrollbar-track{
   background-color: #eee;
    border-radius: 50px;
             margin-top: 4px;
        margin-bottom: 4px;

}
 .Proh_list::-webkit-scrollbar-thumb{
    background-color: #CCC;
    border-radius: 10px;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    background-clip: padding-box;
}
/*
article.photocon_address {
    padding: 40px 20px 90px;
    text-align: center;
    color: #660000;
    background-color: #BA938D;
    border-top: solid;
    margin: 0;
}
*/

.box_wrap .box .Proh_list p span{
display: inline-block;
}

@media screen and (max-width: 700px){
    .oubo_flex {
    flex-wrap: wrap;
}
    .oubo_flex div {
    width: 90%;
    margin-bottom: 2em;
}
    article.photocon_address h3 br{
display: block;
}
    article.photocon_address address br{
display: block;
}
    section.photocontest {
    background-size: cover;
}
    .box_wrap .box .Proh_list p span{
display: block;
        line-height: 0;
}


}

/*====================================================================
.s_06 .accordion_one
====================================================================*/
.s_06 .accordion_one {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.s_06 .accordion_one .accordion_header {    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
    padding: 20px 20px 30px;
    transition: all .5s ease;
    text-align: center;
    color: #660000;
    background-color: #DDCCCC;
    border-top: solid;
    margin: 0;
    position: relative;
}
.s_06 .accordion_one .accordion_header::after {
        content: "";
    display: block;
    width: 26px;
    height: 14px;
    background-image: url("common/img/arrow_r.png");
    background-size: contain;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 6px;
}

.s_06 .accordion_one .accordion_header:hover {
  opacity: .8;
}


.s_06 .accordion_one .accordion_inner {
  display: none;
    box-sizing: border-box;
    background-image: url(common/img/photocon/aco_bg.png);
    background-color: #fff;
    background-size: cover;
    background-position: top;
}

.s_06 .accordion_one .accordion_inner .closeArea .close_box a.close_btn {
    display: block;
    text-align: center;
    padding: 20px;
    text-decoration: none;
    line-height: 1.3;
    font-size: 16px;
    font-weight: normal;
    position: relative;
    cursor: pointer;
    border: solid 1px;
    max-width: 400px;
    margin: 60px auto 0;
}
.s_06 .accordion_one .accordion_inner .closeArea .close_box a.close_btn::after{
    content: "";
    display: block;
    width: 26px;
    height: 14px;
    background-image: url(common/img/arrow_b.png);
    background-size: contain;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
}

.s_06 .accordion_one .accordion_inner .closeArea .close_box a.close_btn:hover {opacity: .8;}

.youtube_wrap{
    width: 100%;
    aspect-ratio: 16 / 9;
}
.youtube_wrap iframe{
      width: 100%;
  height: 100%;
}
@media screen and (max-width: 1039px){
    .youtube_wrap{

}
}














