@charset "utf-8";

*,
*::before,
*::after {
	margin: 0px;
	padding: 0px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

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-style:normal;
	font-weight: bold;
	font-size: 100%;
	vertical-align: baseline;
	
}

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

html{ overflow-y: scroll;}
blockquote, q { quotes: none;}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
input, textarea {
	margin: 0;
	padding: 0;
}
ol, ul{ list-style:none;}
table{
    border-collapse: collapse;
    border-spacing:0;
}
caption, th { text-align: left;}
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix { min-height: 1px;}
* html .clearfix {
	height: 1px;
	/*
	height: auto;
	overflow: hidden;
*/
}

/* ==========================================
	 font設定
	 基本：100% = 1em = 1rem = 16px = 12pt
============================================= */

html { font-size: 62.5%;}
body {
	color: #fff;
	font-family: Avenir,"Helvetica neue",Helvetica,YuGothic,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	-webkit-text-size-adjust: 100%;
}
h1,h2,h3,h4,h5,h6 {
	margin: 2em 0 0.4em;
	font-size:2rem;
 	font-weight: bold;
}
p { 
	font-size: 1.8rem;
	line-height: 1.55;
	font-feature-settings: "pkna"; /* （仮名や仮名関連の字形セットをプロポーショナル字形に置き換える指定） */
	font-feature-settings: "pwid"; /* （プロポーショナル字形に置き換える指定） */	
	font-feature-settings: "palt"; /* （全角の幅で設定するようにデザインされた字形のスペースを、個々の横の幅に収まるように再調整する指定） */
		text-align: justify;
		letter-spacing: .06em;
}
small,.small { font-size: 0.85em;}
ul li,ol li,dl dt,dl dd { font-size: 1.5rem; line-height: 1.4;}
span,em,small,strong {
	display: inline-block;
	text-indent: 0;
	font-style: normal;
}
hr { visibility: hidden;}


/* ==========================================
	 link
========================================== */
a {
	color: #db0078;
	text-decoration: none;
	cursor: pointer !important;
	transition: 0.25s;
}
a:link    { }
a:visited { }
a:hover   {
	filter: brightness( 104% ) contrast( 104% ) saturate( 100% );
	cursor: pointer !important;
}
a:active  { filter: brightness( 108% ) contrast( 108% ) saturate( 110% );}
a:focus   { outline: none; }
a.nolink { pointer-events: none !important;}

a img {transition: 0.35s;}

/* ==========================================
	 image
========================================== */
img {
	width: auto;
	max-width: 100%;
	height: auto;
}


/* ==========================================
	generic class（汎用クラス）
========================================== */

.both{ clear:both; }
.sign {
	display: block;
	text-align: right;
	margin:10px 0 20px;
}
.center {
	display: block;
	text-align: center !important;
}
.bold { font-weight: bold;}
.right { text-align: right;}
.nowrap,.nw {
 	white-space:nowrap;
 	display: inline-block;
}
.italic { font-style: italic;}

.red   { color:#E60012 !important;}
.green { color:#06ad9b;}
.blue  { color:#0081cc;}
.yellow { color:#fff787 !important;}
.black { color:#000 !important;}
.white { color: #fff !important;}


.brpc { display: none;}
@media screen and (min-width:800px){ .brpc { display: block;}}
.lh12 {line-height: 1.2;}
.lh13 {line-height: 1.3;}
.lh14 {line-height: 1.4;}
.lh15 {line-height: 1.5;}
.lh16 {line-height: 1.6;}
.lh17 {line-height: 1.7;}
.lh18 {line-height: 1.8;}

.mt10 {margin-top: 10px;}
.mt20 {margin-top: 20px;}
.mt30 {margin-top: 30px;}
.mt40 {margin-top: 40px;}
.mt50 {margin-top: 50px;}
.mt60 {margin-top: 60px;}
.mt70 {margin-top: 70px;}
.mt80 {margin-top: 80px;}
.mt90 {margin-top: 90px;}

.mb10 {margin-bottom: 10px;}
.mb20 {margin-bottom: 20px;}
.mb30 {margin-bottom: 30px;}
.mb40 {margin-bottom: 40px;}
.mb50 {margin-bottom: 50px;}
.mb60 {margin-bottom: 60px;}
.mb70 {margin-bottom: 70px;}
.mb80 {margin-bottom: 80px;}
.mb90 {margin-bottom: 90px;}


.logged_in {
	position: fixed;
	top: 10px;
	right: 10px;
}
.hidden,.hdn { display: none !important;}

body ul.attentions li,
body main p.attention {
	display: block !important;
	margin-bottom: .2em !important;
	color: #fff;
	font-size: 0.95em;
	padding-left: 1.3em;
	text-indent: -1.3em;
	text-align: left;
	line-height: 1.25;
}
ul.attentions li span,
.attention span {text-indent: 0;}
ul.attentions li:before,
p.attention:before {
	content: "＊ ";
}

hr.wp-block-separator { color: #fff;}



/* ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«ãƒ•ã‚§ã‚¤ãƒ‰ 
 --------------------------------------*/
.fadein,
.fadein1,
.fadein2,
.fadein3,
.fadein4,
.fadein5,
.fadein6,
.fadein7 {
	opacity : 0;
	transition : opacity 2s  ease-in;
}
.fadein.active,
.fadein1.active,
.fadein2.active,
.fadein3.active,
.fadein4.active,
.fadein5.active,
.fadein6.active,
.fadein7.active  { opacity : 1;}

.fade {
	opacity: 0;
	transition : opacity 1.5s ease-out;
}
.fade.fade_on { opacity: 1;}



/* ==========================================
	点滅（blinking）
   ========================================== */

.blinking {
	-webkit-animation:blink 1s ease-in-out infinite alternate;
    -moz-animation:blink 1s ease-in-out infinite alternate;
    animation:blink 1s ease-in-out infinite alternate;
}

@-webkit-keyframes blinking {
    0% {opacity:0.5;}
    100% {opacity:1;}
}
@-moz-keyframes blinking {
    0% {opacity:0.5;}
    100% {opacity:1;}
}
@keyframes blinking {
    0% {opacity:0.5;}
    100% {opacity:1;}
}

.blink{
	color: #DF0000;
	font-style: italic;
	font-size: .5em;
	vertical-align: text-top;
    -webkit-animation:blink 1.0s step-end infinite alternate;
    -moz-animation:blink 1.0s step-end infinite alternate;
    animation:blink 1.0s step-end infinite alternate;
}

@-webkit-keyframes blink{
    34%,66%,100% {opacity:0;}
    0%,33%,67%,99% {opacity:1;}
}
@-moz-keyframes blink{
    34%,66%,100% {opacity:0;}
    0%,33%,67%,99% {opacity:1;}
}
@keyframes blink{
    34%,66%,100% {opacity:0;}
    0%,33%,67%,99% {opacity:1;}
}

/* ==========================================
	湯気（ふあふあゆらゆら）
   ========================================== */


.steam-text {
    display: inline-block;
    font-size: 2rem;
    color: #555;
    position: relative;
}

.steam-text span,
.steam-text .st0 {
    display: inline-block;
    position: relative;
    animation: float2 25.2s infinite ease-in-out;
    opacity: 0.8; /* 少し透明感を加える */
}

/* 各文字に異なるアニメーション開始タイミングを設定 */
.steam-text span:nth-child(10n+1),
.steam-text .st0:nth-child(10n+1) {
    animation-delay: 0s;
}
.steam-text span:nth-child(10n+2),
.steam-text .st0:nth-child(10n+2) {
    animation-delay: 0.8s;
}
.steam-text span:nth-child(10n+3),
.steam-text .st0:nth-child(10n+3) {
    animation-delay: 1.6s;
}
.steam-text span:nth-child(10n+4),
.steam-text .st0:nth-child(10n+4) {
    animation-delay: 2.4s;
}
.steam-text span:nth-child(10n+5),
.steam-text .st0:nth-child(10n+5) {
    animation-delay: 3.2s;
}
.steam-text span:nth-child(10n+6),
.steam-text .st0:nth-child(10n+6) {
    animation-delay: 4.0s;
}
.steam-text span:nth-child(10n+7),
.steam-text .st0:nth-child(10n+7) {
    animation-delay: 4.8s;
}
.steam-text span:nth-child(10n+8),
.steam-text .st0:nth-child(10n+8) {
    animation-delay: 5.6s;
}
.steam-text span:nth-child(10n+9),
.steam-text .st0:nth-child(10n+9) {
    animation-delay: 6.4s;
}

/* アニメーションの動き */
@keyframes float2 {
  0% {
    transform: translateY(0) translateX(0) rotate(0deg);
    filter: blur( 0px ) opacity(100%) ;
  }
  25% {
    transform: translateY(-2px) translateX(-2px) rotate(-1deg);

  }
  50% {
    transform: translateY(-4px) translateX(2px) rotate(2deg);
    filter: blur( .01em  ) opacity(80%) ;
  }
  75% {
    transform: translateY(-2px) translateX(-2px) rotate(-1deg);

  }
  100% {
    transform: translateY(0) translateX(0) rotate(0deg);
    filter: blur( 0px ) opacity(100%) ;
  }
}




/* ---------------------------------
	湯気の表現 
	---------------------------------- */
@keyframes steam01 {
  0% {
    bottom: -300px;
    filter: blur(46px);
    transform: rotateY(0deg) scale(0.6, 1);
    opacity: 0
  }
  11% { opacity: 0.1 }
  33% {
    transform: rotateY(40deg) scale(1, 1.4);
    opacity: 0.5
  }
  66% {
    transform: rotateY(10deg) scaleY(1.8, 1);
    opacity: 0.4
  }
  100% {
    bottom: 300px;
    filter: blur(66px);
    transform: rotateY(60deg) scaleY(2, 2.8);
    opacity: 0
  }
}
@keyframes steam02 {
  0% {
    bottom: -200px;
    filter: blur(46px);
    transform: rotateY(0deg) scale(0.6, 0.6);
    opacity: 0
  }
  11% { opacity: 0.1 }
  33% {
    transform: rotateY(40deg) scale(0.8, 1);
    opacity: 0.4
  }
  66% {
    transform: rotateY(2deg) scaleY(1, 1.2);
  }
  100% {
    bottom: 200px;
    filter: blur(66px);
    transform: rotateY(50deg) scaleY(1.6, 2.4);
    opacity: 0
  }
}
.steamWrap {
	position: fixed;
	top:0;
	width: 100%;
	height: 100%;
	z-index: 10;
}
.steamBox {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden
}
.steamBox > img {
  width: 100%;
  display: block
}
.steam01 {
  position: absolute;
  right: 15vw;
  animation: steam01 13s infinite linear;
  opacity: 0
}
.steam02 {
  position: absolute;
  left: 10vw;
  animation: steam02 18s infinite linear;
  opacity: 0
}
.steam03 {
  margin: auto;
  position: absolute;
  right: 0;
  left: 0;
  animation: steam02 15s infinite linear;
  animation-delay: 6s;
  opacity: 0
}
.steam01 img {
  width: 800px;
  height: auto
}
.steam02 img {
  width: 650px;
  height: auto
}
.steam03 img {
  width: 550px;
  height: auto
}



/* ==========================================
	 æ§‹é€ 
   ========================================== */
/* *,*:before,*:after { box-sizing: inherit;} */
html {
	box-sizing: border-box;
	overflow-x: hidden;
}
body {
	background: url(../images/bg.gif?) #06a1e1 center center;
	height: 100%;
}
#wrap {
	margin :0 auto;
	padding: 0 0 calc(100vw * 6/10); 
	background: url(../images/bg-shiri.png) no-repeat center bottom;
	background-size: 100% auto ;
}
#wrap .inner {
	margin :0 auto;
	padding-top: 1px;
	width:92%;
	max-width: 1050px;
	height: auto;
	text-align: center;
}


#wrap header {
	position: relative;
	padding: 0;
}
#wrap header .flyer img {
		-webkit-box-shadow: 0 0 5px 0px rgba(0,0,0,0.4);
		-moz-box-shadow   : 0 0 5px 0px rgba(0,0,0,0.4);
		box-shadow        : 0 0 5px 0px rgba(0,0,0,0.4);
}

.section {
	position: relative;
	box-sizing: border-box;
	margin: 0 auto 8em;
	padding:2.7em 0 7em;
	z-index: 10;
}
section.section { padding:2.7em 0 7em;}
.section.section2 { padding: 1em 6% 7em;}
.section h1.title {
	display: block;
	margin: 0.75em auto;
	width: 88%;
	overflow: visible;
}
.section h1.title svg {
	width: auto;
	max-height: 100px;
	transform: rotate(-1deg);
}
.section h1.title svg .st0 {
	fill:#fff;
/* filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(282deg) brightness(105%) contrast(101%); */

}
.section h1.title img {
	width: auto;
	height: 85px;
}



.section h2.title img {
	width: 100%;
	max-width: 750px;
	height: auto;
}
.section p.center {
	width: auto;
	text-align: center;
}

.section h1 {
	margin: 3% 0 4vh;
	color: #fff;/* #fff #4d6bc0 */
	font-size: 3.5rem;
	font-weight: normal;
	text-align: center;
	line-height: 1.1;
	text-shadow: 1px 2px 0px #fff;
	
}




.section h4 { text-align: center;}



.arrow_box {
	position: relative;
	margin:0 auto 5vh;
	padding: 5vmin 5vmin;
	max-width: 800px;
	color: #2d81ad;
	
	background: #fff;
	border-radius: 30px;
	border: 8px solid #3589b5;
}
.arrow_box:after, .arrow_box:before {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.arrow_box:after {
	border-color: rgba(255, 255, 255, 0);
	border-bottom-color: #fff;
	border-width: 30px;
	margin-left: -30px;
}
.arrow_box:before {
	border-color: rgba(53, 137, 181, 0);
	border-bottom-color: #3589b5;
	border-width: 41px;
	margin-left: -41px;
}

.arrow_box h2 {
	position: relative;
	margin: 0 auto .3em;
	font-size: 4rem;
	line-height: 1.05;
}
.arrow_box h2 .speech {
	position: absolute;
	top: -100px;
	left: -50px;
	display: block;
	width: 130px;
	height: auto;
}
.arrow_box h2 .speech img {
	width: 130px;
	height: auto;
			filter: drop-shadow(0px 0px 5px rgba(0,0,0,.3)) ;

}

.arrow_box h2 small.small {
	font-size: .7em;
}
.arrow_box h2 .big {
	font-size: 1.5em;
	font-style: italic;
}
.arrow_box h2 ruby rt { display: none;}
.section .arrow_box p {
	font-size: 2.1rem !important;
	font-family: 'Knewave','Kaisei Opti', serif;
}



.section p.saru {
	margin-top: 0;
	margin-bottom: 3vh;
	text-align: center;
}
.section p.saru img {
	width: 70%;
	max-width: 180px;
}


.arrow_boxB {
	position: relative;
	margin:0 auto 5vh;
	padding: 5vmin 5vmin;
	max-width: 800px;
	color: #2d81ad;
	
	background: #fff;
	border-radius: 30px;
	border: 8px solid #3589b5;
}
.arrow_boxB:after, .arrow_box:before {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

.arrow_boxB:after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #fff;
	border-width: 30px;
	margin-left: -30px;
}
.arrow_boxB:before {
	border-color: rgba(53, 137, 181, 0);
	border-top-color: #3589b5;
	border-width: 41px;
	margin-left: -41px;
}







.iframe {
    margin: 0 auto 20px;
    max-width: 640px;
    padding-top: 56.25%;
    position: relative;
    width: 100%;
}
.iframe iframe {
    height: 100% !important;
    position: absolute;
    right: 0;
    top: 0;
    width: 100% !important;
}



#footer {margin-top: 10vh !important;}
#footer .navi { padding-bottom: 10vh;}
#footer .navi a {
	display: inline-block;
	margin:0 .3em 1em;
	vertical-align: middle;
}
#footer .navi a:link img,
#footer .navi a:visited img { opacity: 0.9;}
#footer .navi a:hover,
#footer .navi a:hover img {
	opacity: 1;
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -o-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
#footer #link { padding-bottom: 2em;}

#footer #footertext {
	color: #fff;
	font-size: 1.5rem;
	text-align: center;
}
#footer #footertext a {
	display: inline-block;
	margin: 0 .2em;
}
#footer p.copyright {
	margin-top: 2em;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.2;
	text-align: center;
}



.pre #wrap .header #flyer img { width: 90%;margin: 0 auto;}
.appearance { margin: 10px 0 30px;}



/* ãƒãƒ³ãƒãƒ¼ã‚¬ãƒ¼ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚¢ã‚¤ã‚³ãƒ³ï¼ˆburgermenuï¼‰
--------------------------------------------- */
.burgermenu {
	display: block;
	position: fixed;
	bottom: 0;
	right: 0;
	width: 75px;
	height: 75px;
	z-index: 999;

}
.burgermenu input.toggle { display: none;}
.burgermenu .toggle-label {
	position: relative;
	cursor: pointer;
	display: block;
	width: 60px;
	height: 60px;
	line-height: 60px;
	color: #E20075;
	font-size: 1.8rem;
	text-shadow : 0px 0px 4px rgba(255,255,255,1);
	background: url(../images/menu-oke.png) #029ede no-repeat center center;
	background-size: 80% auto;
	border-radius: 50%;
	box-shadow : 0px 0px 5px 0px rgba(0, 0, 0, 0.4);
	
}
.toggle:checked ~ .toggle-label {
	background: #029ede;
	box-shadow : 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
}



.toggle-label .toggle-icon {
	top: 50%;
	left: 50%;
	transform: translate3d(-50%, -1px, 0);
	background-color: transparent; 
	box-shadow :none;
  transition: all 300ms ease-in-out;
   opacity: 0;
}

.toggle-label .toggle-icon:before,
.toggle-label .toggle-icon:after {
	top: 0;
  transition: all 300ms ease-in-out;
}
.toggle-label .toggle-icon:before {
	content: '';
	transform: rotate(45deg);
	box-shadow :none;
}
.toggle-label .toggle-icon:after {
	content: '';
	transform: translateY(-3px) rotate(-45deg);
	box-shadow :none;
}
.toggle:checked ~ .toggle-label .menu { display: none;}
.toggle:checked ~ .toggle-label .toggle-icon {
  position: relative;
  display: block;
  width: 30px;
  height: 3px;
   opacity: 1;
}
.toggle:checked ~ .toggle-label .toggle-icon:before,
.toggle:checked ~ .toggle-label .toggle-icon:after {
  position: relative;
  display: block;
  width: 30px;
  height: 3px;
  background: #fff;
  transition: all 300ms ease-in-out;
}


/* ==========================================
	ãƒ¡ãƒ‹ãƒ¥ãƒ¼ï¼ˆmodal menuï¼‰
	https://ecmemo.net/modal-window
============================================= */

/* ãƒ¢ãƒ¼ãƒ€ãƒ«éƒ¨åˆ†
--------------------------------------------- */
.modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
	z-index: 999;
	opacity: 0;
	visibility: hidden;
}
.open-menu .modal {
	opacity: 1;
	visibility: visible;
	height: 120vh;
	transition: opacity .3s, visibility .3s;
}
body.open-menu nav {
	display: flex;
	flex-direction: column; 
	justify-content: center;
	align-items: center;
	height: 100vh;
}

body nav .chara01,
body nav .chara01 a {
	width: 120px;
	height: 120px;
}

body nav .chara01 a {
	display: block;
	margin-bottom: 20px;
	background: url(/sarufes2025/common/images/menu-oke.png) no-repeat center center;
  background-size: auto 80px;
	animation: fluffy1 17s ease infinite;
	transition: all 0.25s ease;
	opacity: .9;
	filter: blur( 0.05em );
	cursor: pointer;

}
body nav .chara01 a:hover {
	background-size: auto 100px;
	cursor: pointer;
	opacity: 1;
	filter: blur( 0.03em );
}

@keyframes fluffy1 {
  0% { transform:translate(0,0) }
  10% { transform:translate(0px, -5px) }
  20% { transform:translate(3px,-2px) }
  30% { transform:translate(-1px,5px) }
  50% { transform:translate(-5px, 7px ) }
  60% { transform:translate(-3px, -1px) }
  80% { transform:translate(3px ,-4px) }
  100% { transform:translate(0,0) }
}


main .article,.open-menu nav { /* å·¦ä¸Šãƒ­ã‚´ */
  background-size:35vw auto ;
  background-position: left 20px top 12px;
}


.open-menu nav ul { width: 80%;}


.modal::after {
  display: inline-block;
  height: 100%;
  margin-left: -.05em;
  vertical-align: middle;
  content: "";
}
.modal .modal-window {
	position: relative;
	display: block;
	width: 100%;
	height: 120vh;
	vertical-align: middle;
	background: url(../images/bg.gif?) #06a1e1 ; 

	-webkit-animation: bg 100s linear infinite;
	animation: bg 200s infinite linear;
    z-index: 20000;

}
.open-menu nav li a { color: rgb(23,29,137);}



/* ãƒ¡ãƒ‹ãƒ¥ãƒ¼éƒ¨åˆ†
--------------------------------------------- */
.fixedmenu .menu-mmenu-container {
	position: relative;
	height: calc(100vh - 80px);
	overflow-y: auto;
}

.fixedmenu .menu-main-container .menu {
	display: block;
	width: 100%;
	vertical-align: middle;
	transition: all .5s;
}
.open-menu .fixedmenu  .menu-main-container .menu li {
	margin: 0;
	padding: ;
	width: 100%;
	animation-name: animationmenu;
	animation-duration: .7s;
	animation-timing-function: ease;/* ease cubic-bezier(.17,.67,.85,.57)*/

}
@keyframes animationmenu {
	0% {
		opacity: 0;
		transform: translateY(-20px);
	}
	100% {
		opacity:1;
		transform: translateY(0);
	} 
}
.fixedmenu .menu-main-container .menu li { padding: 10px 0;}
.fixedmenu .menu-main-container .menu li a {
	display: block;
	margin: 0 auto;
	padding: 0;
	height: 2em;
	font-size: 1.52rem;
	line-height: .6;
}
.fixedmenu .menu-main-container .menu li.timetable a {
	height: 2.4em;
}
.fixedmenu .menu-main-container .menu li a img {
	width: auto;
	height: 100%;
	filter: invert(99%) sepia(6%) saturate(0%) hue-rotate(252deg) brightness(105%) contrast(100%);
/* 	filter: invert(12%) sepia(99%) saturate(7060%) hue-rotate(322deg) brightness(89%) contrast(101%); */

	transform: rotate(-4deg) skewX(-4deg);
}

.menu-main-container .menu li a:link,
.menu-main-container .menu li a:visited { color: #fff;}
.menu-main-container .menu li a:hover   { font-size: 2rem;}
.menu-main-container .menu li a:active  { color: #fff;}



.open-menu .fixedmenu .menu-main-container .menu li.sns {
	float: left;
	margin-top: 20px;
	width: 50%;
}
.fixedmenu .menu-main-container .menu li.sns a {
	display: inline-block;
/* 	padding: 2.5vh 20% 1.9vh; */
	padding: 2.5vh 7.5% 1.9vh;
	width: 100%;
	font-size: 0.001em;
	color: #003cf0;
}
.fixedmenu .menu-main-container .menu li.sns a::before {
	color: #fff;
	font-family: "Font Awesome 5 Brands";
	font-size: 3.1rem;
	font-weight: 900;
}
.fixedmenu .menu-main-container .menu li.twitter a::before {
	float: right;
	content: "\f081";
}
.fixedmenu .menu-main-container .menu li.instagram a::before {
	float: left;
	content: "\f16d";
}


/* ===============================
	ã‚¿ã‚¤ãƒˆãƒ«ãƒ»ãƒ•ãƒ©ã‚¤ãƒ¤ãƒ¼ã‚¨ãƒªã‚¢(flyerarea)
================================== */

#wrap .section.flyerarea .inner {
	margin: 0 auto;
	padding: 1px 0;
		width: 100vw;
}
.contact #wrap header {
	width: auto;
	max-width: 940px;
}
.contact #wrap .inner h1.title,
#wrap .flyerarea .inner h1.title {
	position: relative;
	margin: 100px auto 3vh;
	width: 94%;
	max-width: 940px;
	color: #e20075;
	line-height: .6;
}
.contact #wrap .inner h1.title {
	margin-bottom: 40px; 
	font-size: 5.5rem;
	font-weight: 800;
}

#wrap .flyerarea .inner h1.title svg {
	height: auto;
/* 	filter: drop-shadow(0px 0px 10px rgba(255,255,255,0.45)); */
}


/* ===========x */

.titlesvg {
  stroke:#e20075;
  stroke-dasharray: 2000;
  stroke-dashoffset: 0;
  stroke-width: 0.3;
  -webkit-animation: hello 4s ease-in 0s forwards;
  animation: hello 4s ease-in 0s forwards;
}

@-webkit-keyframes hello {
	0% {
		stroke-dashoffset: 2000;
		fill:transparent;
	}
	40% {
		stroke-dashoffset: 2000;
		fill:transparent;
	}
	50% {
		fill:transparent;
	}
	100% {
		stroke-dashoffset: 0;
		fill:#e20075;
	}
}

#wrap .flyerarea .inner h2.theme {
	margin: 0 auto;
}
#wrap .flyerarea .inner h2 img {
	margin: 0 auto 3.5vh;
	width: 88%;
	max-width: 750px;
	filter: invert(100%) sepia(0%) saturate(524%) hue-rotate(140deg) brightness(108%) contrast(101%) drop-shadow(0px 0px 10px rgba(0,0,0,0.45));
	opacity: 0;
	animation: hello2 1s ease-in 3s forwards;
}
@keyframes hello2 {
	0% { opacity: 0;}
	100% { opacity: 1;}
}

.section.flyerarea .flyer {
	margin: 30px auto 0;
	width: 88vw;
	opacity: 0;
	animation: hello3 2s ease-in 3.9s forwards;
}
@keyframes hello3 {
	0% { opacity: 0;}
	100% { opacity: 1;}
}

.section.flyerarea .flyer img { box-shadow : 0px 0px 20px 0px rgba(30, 9, 9, 0.5);}

.section.flyerarea .thumb {
	margin: 0px auto 30px;
}
.section.flyerarea .thumb li {
	display: inline-block;
	margin: 0 .4em;
}
.section.flyerarea .thumb li img {
	width: 90px;
	height: auto;
	opacity: .65;
}


.section a .pdf {
	margin-top: 2vh;
	text-align: center;
	line-height: .6;
}
.section a .pdf p {
	display: inline-block;
	padding: .65em 1.2em;
	line-height: 1;
	text-align: center;
	background-color: #fff;
	transition: ease .3s all;
	border-radius: 30px;
}
.section a:link .pdf p,
.section a:visited .pdf p { color: #03a1e0;}
.section a:hover .pdf p {
	color: #fff;
	background-color: #db0078;
}


.section .pdf span { font-size: 1.75rem;}
.section .pdf small {
 	display: inline-block;
	font-size: 1.15rem;
}


@media screen and (min-width: 480px) and (orientation: landscape) {

body #wrap .section.flyerarea {
	background-size: 90vw auto,auto 60%;
}
.section.flyerarea .flyer {
	position: relative;
	height: 75vw;
}
.section.flyerarea .flyer img {
	width: auto;
	height: 95%;
	max-height: 1160px;
}
}


@keyframes rotation2 {
  0%{ transform:rotate(-270deg);}
  100%{ transform:rotate(90deg); }
}

/* ===============================
	しりさんのお言葉・宣言(declaration)
================================== */
.declaration {
	margin: 0 auto;
	background: url(../images/chara000.png?12),url(../images/bg-fuji01.svg?s) ;
	background-repeat: no-repeat;
	background-position: right 30% bottom,center bottom -3px;
	background-size: 140px auto , 100% auto;
}
#wrap .declaration .inner {
	display: flex; /* 子の水平方向と垂直方向の両方の整列を”柔軟”に操作 */
	flex-direction: column; /* 主軸の方向や向きを定義（column:縦並, row:横並,column-reverse:逆縦並,row-reverse:逆横並）*/
	justify-content: center; /* コンテンツの間や周囲に間隔を整える[justify]（start:最初に合わせる,center：中央に合わせる,space-between：間にスペースを入れる,space-around：周りに一定のスペースを入れる,space-evenly：等間隔のスペースを入れる） */
	align-items: center;	/* 全ての直の子要素に集合として交差軸方向のアイテムを配置（stretch:親要素に合わせ空間を埋める,center:真ん中に揃える,start:最初に揃える,end:最後に揃える） */
	padding: 30px 0;
	width: 88%;
	max-width: 950px;
	min-height: 100vh;
}
#wrap .declaration p {
	margin-bottom: 1.2em;
}

.phantom-text {
	position: relative;
  display: flex;
  gap: 0.2em; /* 各文字間の間隔 */
  font-size: 3rem;
  font-family: 'Suzumushi';
  text-align: center;
  color: rgba(255, 255, 255, 0.8); /* 少し透明感を出す */
}

.phantom-text span {
    display: inline-block;
    position: relative;
    color: rgba(255, 255, 255, 0.8); /* 少し透明感を出す */
    animation: float 3s infinite ease-in-out, blur-fade 3s infinite ease-in-out;
}

/* 各文字に異なるタイミングで動きを適用 */
/*
.phantom-text span:nth-child(10n) { animation-delay: 0s; }
.phantom-text span:nth-child(10n+1) { animation-delay: 0.3s; }
.phantom-text span:nth-child(10n+2) { animation-delay: 0.6s; }
.phantom-text span:nth-child(10n+3) { animation-delay: 0.9s; }
.phantom-text span:nth-child(10n+4) { animation-delay: 1.2s; }
.phantom-text span:nth-child(10n+5) { animation-delay: 1.5s; }
.phantom-text span:nth-child(10n+6) { animation-delay: 1.8s; }
.phantom-text span:nth-child(10n+7) { animation-delay: 2.1s; }
.phantom-text span:nth-child(10n+8) { animation-delay: 2.4s; }
.phantom-text span:nth-child(10n+9) { animation-delay: 2.7s; }
*/

.phantom-text span.steam0 { animation-delay: 0s; }
.phantom-text span.steam1 { animation-delay: 0.3s; }
.phantom-text span.steam2 { animation-delay: 0.6s; }
.phantom-text span.steam3 { animation-delay: 0.9s; }
.phantom-text span.steam4 { animation-delay: 1.2s; }
.phantom-text span.steam5 { animation-delay: 1.5s; }
.phantom-text span.steam6 { animation-delay: 1.8s; }
.phantom-text span.steam7 { animation-delay: 2.1s; }
.phantom-text span.steam8 { animation-delay: 2.4s; }
.phantom-text span.steam9 { animation-delay: 2.7s; }

/* ゆらゆらする動き */
@keyframes float {
    0%, 100% {
        transform: translateY(0) translateX(0);
    }
    50% {
        transform: translateY(-10px) translateX(5px);
    }
}

/* ぼかしと透明感の変化 */
@keyframes blur-fade {
    0% {
        filter: blur(0px);
        opacity: 1;
    }
    50% {
        filter: blur(2px);
        opacity: 0.6;
    }
    100% {
        filter: blur(0px);
        opacity: 1;
    }
}





/* ===============================
	whats
================================== */
#wrap .section.whats {margin: 70px auto 0;}
#wrap .section.whats h1.title img {
	transform: rotate(-3deg);
}

#wrap .section.whats .inner {
	position: relative;
	padding: 90px 3vmin;
	max-width: 820px;
	color: #db0078;
	font-weight: normal;
	font-family: 'Brush-U';
	border-radius: 25px;
	overflow: hidden;
	z-index: 0;
}
#wrap .section.whats .inner:before {
	content: '';
	display: block;
	background: url('../images/bubble400.png') no-repeat center center;
	background-size: contain;
	position: absolute;
	top: -3px;
	bottom: -3px;
	left: -3px;
	right: -3px;
	filter: blur(1px);	
	z-index: -1;
}


.section.whats .inner h2 {
	margin: .5em auto .7em;
	max-width: 700px;
	font-size: 4rem;
	line-height: 1.45;
	font-weight: bold;

}
.section.whats .inner h2.title {
	margin:0 auto 30px;
	width: 80%;
	max-width: 645px;
}
.section.whats .inner h2.title img {
	width: auto;
	height: auto;
	max-height: 90vh;
	filter: invert(12%) sepia(99%) saturate(7060%) hue-rotate(322deg) brightness(89%) contrast(101%) drop-shadow(0px 0px 30px white) ;

	
}

.section.whats .inner h3.place,
.section.whats .inner h3.date {
	display: inline-block;
	margin: auto;
	width: auto;
	font-size: 3.6rem;
	font-weight: bold;
}
.section.whats .inner .time {
	display: inline-block;
	margin: 10px auto;
}
.section.whats .inner .time li {
	display: inline-block;
	margin: 0 .3em;
	font-size: 1.7rem;
	text-align: left;
	line-height: 1.2;
}
.section.whats .inner .time li strong {
	margin: 0 .1em;
	font-size: 1.8em;
	font-family: 'Impact','Hiragino Kaku Gothic ProN', 'æ¸¸ã‚´ã‚·ãƒƒã‚¯ Medium', meiryo, sans-serif;
}


.section.whats .inner h3 strong { font-size: 1.7em;}

/* æ¦‚è¦ */
.section.whats .inner .overview {
	margin: 4vh auto 3vh;
	width: 96%;
	max-width: 700px;
}
.section.whats .inner .overview p {
	color: #fff;
	font-size: 2.35rem;
	line-height: 1.45;
	text-align: center;
	text-shadow : 0px 0px 4px rgba(3,161,224,1);
	filter: drop-shadow(0px 0px 20px rgba(3,161,224,1)) /* 影 */
	
}
.section.whats .inner .overview p span { display: inline-block;}


.section .inner .figure_Ticket {
	margin: 3vh auto;
	text-align: center;
}
.section .inner .figure_Ticket img {
	width: 100%;
	max-width: 500px;
}


body .lity-container .lity-content {
	background-color: #ccb26a;
/* 	background: url(../images/bg.jpg) center center; */
}
body .lity-container .lity-content img {
	padding: 3vmin;
}

.section.whats .inner .maincopy {
	margin-bottom: 5vh;
}
.section.whats .inner .maincopy h3 {
	margin: 0 auto .4em;
	font-size: 2.3rem;
		
	line-height: 1.3;
	font-weight: bold;
}
.section.whats .inner .maincopy p {
	text-align: center;
	font-size: 2.3rem;
		
}

.section.whats .inner dl { margin: 5vmin auto;}
.section.whats .inner dl dt {
	margin-top: 5vmin;
	margin-bottom: 1vmin;
}
.section.whats .inner dl dd {
	margin-bottom: 2vmin;
	font-size: 2.1rem;
}
.section.whats .inner dl dd small {
	display: inline-block;
	font-size: 1.55rem;
}
.section.whats .inner dl dt {}
.section.whats .inner dl.artwork dd {
	font-size: 1.5rem;
	left: 0.1em;	
}

.section.whats .inner .noshadow {
	margin: 0 .7em 0 1em;
	display: inline-block;
	text-shadow : none;
}
.section.whats .inner .flicker {
	color: #d00;/* #cc086a */
	font-style: italic;
	animation: flicker 1.5s infinite alternate;  
}

@keyframes flicker {
    
    0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {
        text-shadow:
            -0.2rem -0.2rem 1rem rgba(255,255,255,.9),
            0.2rem 0.2rem 1rem rgba(255,255,255,.9),
            0 0 1rem #d77,
            0 0 3rem #d77,
            0 0 4.5rem #d77,
            0 0 5rem #d77,
            0 0 6rem #d77;      
    }
    20%, 24%, 55% { text-shadow: none;}
}


.section.whats .inner .neon {
	margin-top: .3em;
	text-shadow: 0 0 5px #ffa500, 0 0 15px #ffa500, 0 0 20px #ffa500, 0 0 40px #ffa500, 0 0 60px #ff0000, 0 0 10px #ff8d00, 0 0 98px #ff0000;
	color: #fff6a9;
	font-family: "ç§€è‹±ã«ã˜ã¿ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", 	Shuei NijimiMGo B;
	text-align: center;
	font-style: italic;
	animation: neon 12s infinite;
	-webkit-animation: neon 12s infinite;
}

@-webkit-keyframes neon {
  20%,24%,55% {
    color: #111;
    text-shadow: none;
  }
  0%,19%,21%,23%,25%,54%,56%,100% {
		color: #fff6a9;
		text-shadow:
			0 0 5px #ffa500,
			0 0 15px #ffa500,
			0 0 20px #ffa500,
			0 0 40px #ffa500,
			0 0 60px #ff0000,
			0 0 10px #ff8d00,
			0 0 98px #ff0000;
  }
}
@keyframes neon {
  20%,24%,55% {
    color: #111;
    text-shadow: none;
  }
  0%,19%,21%,23%,25%,54%,56%,100% {
		color: #fff6a9;
		text-shadow:
			0 0 5px #ffa500,
			0 0 15px #ffa500,
			0 0 20px #ffa500,
			0 0 40px #ffa500,
			0 0 60px #ff0000,
			0 0 10px #ff8d00,
			0 0 98px #ff0000;
  }
}


ul.sns {
	display: flex;
	flex-direction: row;
  justify-content: center; 
  align-items: center;
	width: auto;
	height: 90px;
}
ul.sns li {display: inline-block;}
ul.sns li a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 80px;
	height: 80px;
}
ul.sns li a img {
	width: 50px;
	height: 50px;
	vertical-align: middle;
	filter: invert(12%) sepia(99%) saturate(7060%) hue-rotate(322deg) brightness(89%) contrast(101%);
}
ul.sns li a:hover img {
	width: 65px;
	height: 65px;
}
/*
ul.sns li.facebook a:hover img {
	filter: invert(25%) sepia(77%) saturate(2742%) hue-rotate(213deg) brightness(103%) contrast(106%);
}
ul.sns li.twitter a:hover img {
	filter: none;
}
*/


/*
ul.sns li a img {
	width: 100%;
	height: 100%;

}
*/







/* ===============================
	TICKET
================================== */
#wrap .section.ticket {
	position: relative;
	margin-bottom: 0;
	padding-bottom: 10vh;
	background-color: #ccb26a;
	background-image: url(../images/chara07-pingpong.png),url(../images/bg-river.svg?);
	background-repeat: no-repeat,repeat;
	background-position: left 3% top 2%,center top;
	background-size: 110px auto,contain;

}
#wrap .section.ticket:after {
	content: "";
	position: absolute;
	bottom: -32px;
	display: block;
	width: 100%;
	height: 74px;
	background: url(../images/bg-iwa.png?)  repeat-x left bottom;
}
#wrap .section.ticket h1.title {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: visible;
}
#wrap .section.ticket h1.title svg {
	vertical-align: bottom;
}
#wrap .section.ticket .inner {
	padding: 0 ;
	max-width: 800px;
	color: #fff;
	text-align: center;
}

/* 発売日 */
#wrap .section.ticket .inner h3.onsale {
	margin-bottom: 10vh;
	font-size: 1.8rem;
	text-shadow : none;
}
#wrap .section.ticket .inner h3.onsale span.frame {
	padding: .5em 2em;
	border: 3px solid #fff;
	border-radius: 30px;	
}
#wrap .section.ticket .inner h3.onsale strong {
	margin: 0 .1em;
	font-size: 1.3em;
}

.ticket ul li {
	margin: 0 auto 5vh;
	max-width: 350px;
	vertical-align: top;
}
.ticket ul li.ticketA {
	background: url(../images/chara03-massage.png?1w) no-repeat left top;
	background-size: 140px auto;
}
.ticket ul li.ticketB {
	background: url(../images/chara04-rifle.png?a1) no-repeat left top;
	background-size: 130px auto;
} 
.ticket ul li.ticketC {
	background: url(../images/chara05-eat.png?12a) no-repeat right top;
	background-size: 130px auto;
}



.ticket .btn a {
	display: block;
	margin: 10px auto;
	padding: .5em 2em;
	width: 95%;
	max-width: 300px;
	color: #fff;
	font-size: 2rem;
	background-color: #db0078;
	border-radius: 50px;
}









.attention,
.attention2 {
	display: inline-block;
	margin:  auto;
}
.attention2 {
	padding: 20px;
	border: 1px dashed #fff;
}


.attention li,
.attention2 li {
	margin-bottom: .3em;
	padding-left: 1.3em;
	text-indent: -1.3em;
	text-align: left;
	line-height: 1.35;
	font-family: Helvetica,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-feature-settings: "palt";
	text-align: left;
	letter-spacing: .06em;
}
.attention li::before {
	content: "＊ ";
}
.attention2 li::before {
	content: "＊ ";
}
.attention li span,
.attention2 li span {
	text-indent: 0;
}

/* ===============================
	ARTIST
================================== */

.section.artists { position: relative;}
.section.artists .yuge {
	position: absolute;
	top: 0;
	height: 300px;
  opacity: 0;
}
.section.artists .yuge img {
	width: auto;
	height: 100px;
}
.section.artists .yuge.steamA {
	top: 10%;
	right: 12%;
  animation: steamA 6s infinite linear;
}
.section.artists .yuge.steamB {
	top: 22%;
	left: : 6%;
  animation: steamA 6s infinite linear;
}




@keyframes steamA {
  0% {
    filter: blur(1px);
    transform: rotateY(0deg) scale(.8, .8);
    opacity: 0;
  }
  10% { opacity: 0.2 }
  30% {
    transform: rotateY(2deg) scale(0.8, 1);
    opacity: 0.6;
  }
  70% {
    transform: rotateY(3deg) scale(1.1, 1);
    opacity: 0.8;
  }
  100% {
    transform: rotateY(4deg) scale(1.2, 1.2);
    opacity: 0
  }
}



div.chara {
	position: absolute;
	display: flex;
	flex-direction: row;
	justify-content: start;
	align-items: end;
	top: 1.7%;
	left: 10vw;
	width: 35vw;
	max-width: 250px;
}
div.chara img {
	width: 25vw;
	max-width: 150px;
	height: auto;
	animation: float3 5.2s infinite ease-in-out;
}
/* アニメーションの動き */
@keyframes float3 {
  0% {
    transform: translateY(0) translateX(0) rotate(0deg);
    filter: blur( .01em ) opacity(100%) ;
  }
  25% {
    transform: translateY(-2px) translateX(-2px) rotate(-1deg);

  }
  50% {
    transform: translateY(-4px) translateX(2px) rotate(0deg);
    filter: blur( .04em  ) opacity(80%) ;
  }
  75% {
    transform: translateY(-2px) translateX(-2px) rotate(1deg);

  }
  100% {
    transform: translateY(0) translateX(0) rotate(0deg);
    filter: blur( .01em ) opacity(100%) ;
  }
}


#wrap .section.artists .inner {
	width: 92vw;
	max-width: 740px;
}
#wrap .section.artists li {
	margin-bottom: .5em;
	font-size: 2.6rem;
	text-shadow : 1px 1px 7px 7px rgba(0,0,0,0.5);
/* 	transform: rotate(-3deg); */
}








#wrap .section.artists .inner p { text-align: center;}
#wrap .section.artists .inner p.order {
	margin: 0 0 2em;
	color: #fff;
	font-size: 1.65rem;
	filter: blur( 1px );
	opacity: .9;
}


/* ã‚¢ãƒ¼ãƒ†ã‚£ã‚¹ãƒˆè¡¨ */
.artists .list {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
/* 	align-items: stretch; */
}
/*
.artists.food .list {
	justify-content: center;
	text-align: center;
}
*/
.artists .list {padding: 0 ;}
.artists .list .artist.last.two { width: calc(100% - 4%);}
.artists .list .artist.last.two figure { padding-top: 200px;}

.artists .list .artist {
	display: inline-block;
	margin: 0 2% 4%;
  width: calc(50% - 4%);
  list-style: none;
	position: relative;
  transition: transform 0.2s linear;
	transition: 0.5s ease all;
	background-color: #ccb26a; /* #fff */
	border-radius: 20px;
	overflow: hidden;
}

.artists .list.list2 .artist:hover {
	filter: 
		brightness( 110% ) /* è¼åº¦ */
		contrast( 106% ) /* ã‚³ãƒ³ãƒˆãƒ©ã‚¹ãƒˆ */
		saturate( 105% ) ;/* å½©åº¦ */
    opacity: 1;
	box-shadow : 0px 0px 30px 3px rgba(6, 19, 47, 0.6);
}
.artists .list.list2 .artist:hover img {
	filter: brightness( 104% ) contrast( 106% ) ;
}
.artists .list.list2 .artist.nolink:hover,
.artists .list.list2 .artist.nolink:hover img  {
	filter: none ;
  opacity: 1;
	box-shadow :none;
}



.artists .list.list2 .artist.no:hover {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}
.artists .list .artist a {
	display: block;
	height: 100%;
}
.artists .list .artist a:hover { opacity: 1;}
.artists .list .artist a:hover .text { opacity: .9;}


.artists .list .artist figure {
	position: relative;
	padding-top: 90%;
	background-image: url(../images/artist2025.jpg);
	background-color: #ccb26a !important;
	background-size: cover !important;
	background-repeat: no-repeat;
	background-position: center center;
	filter: none;
}
.artists .list .artist figure img {
	position: absolute;
	top: 0;
	left: 0;
	width: 25%;
	max-width: 50px;
	height: auto;
	visibility: hidden;
}
.artists .list .artist .new {
	position: absolute;
	top: 0px;
	left: 10px;
	font-size: 2rem;
	z-index: 100;
}
.artists .list .artist .text {
	display: flex;
	justify-content: space-between;
/* 	align-items: flex-start; */
	flex-direction: column;
	padding: .35em 7% .5em;
	height: auto;
}
.artists .list .artist .text p {
	color: #db0078;
	font-family: 'Take Bold';
}
.artists .list .artist .text .nation {
	margin-top: .3em;
	color: #fff;
	font-size: .8em;
	text-align: center;
	line-height: 1.1;
	opacity: .7;
}
.artists .list .artist .text em {
	display: inline-block;
	white-space: nowrap;
}
.artists .list .artist .text .romaji {
	margin-top: .2em;
	color: #7c3207;
	font-size: 1.3rem;
	font-family: 'Likurei';
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: -0.1em;
	text-align: center;
	opacity: .6;
}

.artists .list .artist .text .name small.romaji {
	margin-bottom: .3em;
	display: block;
	color: #7c3207;
	font-size: 1.3rem;
	font-family: 'Likurei';
	font-weight: 600;
	line-height: 1.1;
	text-align: center;
	opacity: .6;

}

.artists .list .artist .text .name {
	margin: 0 0 .4em;
	color: #db0078;/* #7c3207 */
	font-size: 1.7rem;
	font-family: 'Take Bold','Likurei';
	font-weight: 700;
	line-height: 1.1;
	text-align: center;

}
.artists .list .artist .text .name span { display: inline-block;}
.artists .list .artist .text .name small {
	display: inline-block;
	margin: 0 .2em;
	font-size: .75em;
}

.artists .list .artist .text .course {
	margin-bottom: .65em;
	color: #d00;
	font-size: 1.4rem;
	line-height: 1.2;
	text-align: center !important;
}
.artists .list .artist .text .course:before {
	content: "効能 ";
	margin-bottom: .2em;
	margin-right: .2em;
	display: block;
	font-size: .8em;
	opacity: .55;
}

.artists .list .artist .text .genre {
	color: #7c3207;
	font-size: 1.4rem;
	line-height: 1.2;
	text-align: right !important;
}
.artists .list .artist .text .genre:before {
	content: "ジャンル ";
	margin-right: .2em;
	display: inline-block;
	font-size: .8em;
	opacity: .45;
}
.artists .list .artist .text .genre.food:before {
	content: "メニュー ";
	font-size: .85em;
	opacity: .5;
}

.artists .list .artist .text .genre span { display: inline-block;}

.artists .list .artist .edit {
	position: absolute;
	top: 5px;
	right: 5px;
	opacity: .2;
}


.artists .cancel {
	margin: 4vh auto;
	padding: 3vmin 3vmin 0vmin;
	width: 90%;
	max-width: 800px;
	color: #3285b1;
	text-align: center;
	border: 5px solid #fff;
	background-color: #fff;
	border-radius: 15px;
}
.artists .cancel p {
	font-size: 1.55rem;
	text-align: center;
}
.artists .cancel ul {
	margin: 20px auto;
	text-align: center;
}
.artists .cancel ul li {
	display: inline-block;
	margin: .1em .6em;
	color: #203a6b;
	font-size: 2.05rem;
	list-style: circle;
}

.artists p.more {
	margin-top: 5vmin;
	color: #fff;
	font-size: 3.6rem;
	font-family: 'Suzumushi';
	font-weight: normal;
	text-align: center;
	font-style: italic;
	transform:rotate(-5deg);
	filter: blur( 1px );
	opacity: .9;
}




/* ==========================================
	 ã‚¢ãƒ¼ãƒ†ã‚¹ãƒˆãƒãƒƒãƒ—ã‚¢ãƒƒãƒ—(lity)
	 ========================================== */
body .lity {
	background: rgba(0, 0, 0, 0.5) none repeat scroll 0 0;
	z-index: 19990;
	overflow-y: scroll;
}
.lity.lity-iframe .lity-container {
	margin: auto 4%;
	width: 92%;
	max-width: 700px;
	overflow-y: scroll;
	border-radius: 30px;
}
.lity.lity-iframe .lity-container .lity-content {
/*
	-webkit-border-radius: 25px;
	-moz-border-radius   : 25px;
	border-radius        : 25px;
	overflow: hidden;
*/
}
.lity.lity-iframe .lity-container .lity-content::after {
	box-shadow: none;
}



.lity.lity-iframe .lity-container .lity-iframe-container {
	height: 84vh;
	min-height: 400px;
	max-height: 90vh;
	overflow-y: scroll;
/*
	-webkit-border-radius: 25px;
	-moz-border-radius   : 25px;
	border-radius        : 25px;
*/
}

.shinkai .lity.lity-iframe .lity-container .lity-iframe-container iframe {
    background-color: #06ad9b;
    overflow-y: scroll;
}

.lity.lity-iframe .lity-container .lity-iframe-container iframe {
	background: none;/* #056CB9 */
	overflow-y: scroll;
}



.lity.lity-iframe .lity-container .lity-close {
	top: 89%;
	left: calc( 50% - 25px);
	width: 50px;
	height: 50px;
	background-color: #db0078 /* #06ad9b */;/*  */
	-webkit-border-radius: 50%; /* Safari, Chromeç”¨ */
	-moz-border-radius   : 50%; /* Firefoxç”¨ */
	border-radius        : 50%; /* CSS3 */
	box-shadow : 0px 0px 3px 3px rgba(0,0,0,0.3);
}


/* end 	 ã‚¢ãƒ¼ãƒ†ã‚¹ãƒˆãƒãƒƒãƒ—ã‚¢ãƒƒãƒ—(lity) ====================== */







.section.artists .gekidan h4 small {
	text-shadow: none;
	font-size: .4em;
	color: #111;
}
.section.artists .gekidan p {
	text-align: center;
	line-height: 1.3;
}
.section.artists .gekidan p.strong {
	display: inline-block;
	margin-bottom: 1em;
	padding: 0 .3em;
/* 	white-space: nowrap; */
	font-size: 1.3rem;
	font-style: italic;
	line-height: 1.4;
	color: #F9EEB6;
	font-size: 2.2rem;
	font-weight: 600;
	text-shadow:
	1px 1px 1px rgba(0,0,0,1),
	-1px -1px 1px rgba(0,0,0,1),
	-1px 1px 1px rgba(0,0,0,1),
	1px -1px 1px rgba(0,0,0,1),
	2px 2px 1px rgba(0,0,0,1),
	3px 3px 1px rgba(0,0,0,1);
}
.section.artists .gekidan p.strong strong {
	font-style: italic;
}
.section.artists .gekidan .blink {
	font-style: italic;
	font-size: .5em;
	vertical-align: text-top;
}
*/

/* ã‚¿ã‚¤ãƒ ãƒ†ãƒ¼ãƒ–ãƒ« */
#wrap .section.timetable .inner {
	max-width: 1000px;
}
.section.timetable h1 { font-size: 5.3rem;}
.section.timetable .swipe {
	margin-bottom: 1em;
	padding: 1em;
	color: #e20075;
	font-size: 1.45rem;
	line-height: 1.3;
	text-align: center;
	background-color: #fff;
	border-radius : 5px;
}

.section.timetable p.swipe span { text-indent: 0;}




.section.timetable {padding: 2.7em 7% 7em;}
#wrap .section.timetable .inner {
	width: auto;
	max-width: 700px;
}
.section.timetable p.pdf {
	margin: 0 auto 1em;
	text-align: center;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	line-height: 1.2;
}


.section.timetable p.pdf:hover {
}
.section.timetable p.pdf img {
	width: 70px;
	height: auto;
}
.section.timetable p.pdf:hover img {
	opacity: 1;
	filter:  drop-shadow(1px -1px 5px #fff); 
}
.section.timetable p.pdf a:hover {
	opacity: 1;
}
.section.timetable p.pdf a:link,
.section.timetable p.pdf a:visited {
	color: #fff;
}
.section.timetable p.pdf a i {
	margin-bottom: .3em;
	font-size: 4rem;
}


.timetable table {
	width: 100%;
	background-color: #fff;/* #F9EEB6 */
	-webkit-border-radius: 5px; /* Safari, Chromeç”¨ */
	-moz-border-radius   : 5px; /* Firefoxç”¨ */
	border-radius        : 5px; /* CSS3 */


}
.timetable .scroll {
overflow: auto;ã€€ã€€ã€€ã€€/*tableã‚’ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«ã•ã›ã‚‹*/
white-space: nowrap;ã€€ã€€/*tableã®ã‚»ãƒ«å†…ã«ã‚ã‚‹æ–‡å­—ã®æŠ˜ã‚Šè¿”ã—ã‚’ç¦æ­¢*/

}
.timetable .scroll::-webkit-scrollbar{ã€€ã€€/*tableã«ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«ãƒãƒ¼ã‚’è¿½åŠ */
 height: 5px;
}
.timetable .scroll::-webkit-scrollbar-track{ã€€ã€€/*tableã«ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«ãƒãƒ¼ã‚’è¿½åŠ */
 background: #F1F1F1;
}
.timetable .scroll::-webkit-scrollbar-thumb {ã€€ã€€/*tableã«ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«ãƒãƒ¼ã‚’è¿½åŠ */
 background: #BCBCBC;
}
.timetable .scroll img {
	margin-bottom: 20px;
	width: 100%;
	min-width: 700px;
	-webkit-box-shadow: 0 0px 4px rgba(0,0,0,0.4);
	-moz-box-shadow   : 0 0px 4px rgba(0,0,0,0.4);
	box-shadow        : 0 0px 4px rgba(0,0,0,0.4);
}



/* ===============================
	ã‚°ãƒƒã‚º
================================== */
#wrap .section.goods .inner { padding-top: 3vh;}
.section.goods .inner .explanation p {
	font-size: 2.3rem;
	
}
.section.goods .inner .explanation h4 {
	margin: .7em auto .2em;
	font-size: 2.3rem;
	
}
.section.goods .inner .explanation .deadline {
	font-size: 1.5rem;
	text-align: center;
}



.section.goods .period { margin: 50px auto 0;}
.section.goods .period dl {
	display: inline-block;
	padding:0 15px;
	margin:0 10px 40px;
	border: 2px solid #fff;
}
.section.goods .period dl dt {
	margin: -1.2em auto .5em;
	width: auto;
	max-width: 120px;
	font-size: 2rem;
	font-family: 'Knewave',"æ¸¸ã‚´ã‚·ãƒƒã‚¯",YuGothic,"ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3","Hiragino Kaku Gothic ProN", Meiryo,sans-serif;
}
.section.goods .period dl dt strong {
	display: inline-block;
	margin: 0 .1em;
	color: #fff787;
	font-size: 1.5em;
	vertical-align: middle;
}

.section.goods .period ul li {
	margin-bottom: 1em;
}
.section.goods .period ul li p {
	text-align: center;
	font-family: 'Knewave',"æ¸¸ã‚´ã‚·ãƒƒã‚¯",YuGothic,"ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3","Hiragino Kaku Gothic ProN", Meiryo,sans-serif;
	line-height: 1.3;
}
.section.goods .period ul li p strong {
	color: #fff787;
	font-size: 1.5em;
}
.section.goods .period ul.attention { margin-top: -20px;}
.section.goods .banner { margin: 0 auto 3%;}

.section.goods .onsale {
	margin: 5vh auto;
	padding: .6em 2em .5em;
	width: 70%;
	font-size: 2rem;
	border: 3px solid #fff;
	border-radius: 50px;
}
.section.goods .onsale span {
	margin: 0 .5em;
}
.section.goods .onsale strong {
	font-size: 1.35em;
}
.section.goods .onsale p {
	margin: 0 .5em 0;
	color: #fff;
	font-size: 2.1rem;
	text-align: center;
}
.section.goods .onsale .attention li {
	font-size: 1.2rem;
}


.section.goods .production {
	position: relative;
	margin:0 auto 30px;
	padding:0;
	width: 100%;
	font-weight: 600;
	max-width: 800px;
}
.section.goods .production a {
	display: block;
	padding: 0 0 80px;
	height: 100%;
	color: #fff;
	text-align: center;
	background-color: #ccb26a;
	border-radius: 20px;
	box-shadow : 0px 0px 5px 5px rgba(0,0,0,0.1);
	overflow: hidden;	
}
.section.goods .production a:hover {
	box-shadow : 0px 0px 10px 10px rgba(0,0,0,0.15);
}


.section.goods .production .beforelink {
	display: block;
	padding: 0;
	height: 100%;
	color: #fff;
	background-color: #777;
	text-align: center;
}

.section.goods .production figure {
	width: 100%;
	background-color: #fff;
	line-height: .6;
}
.section.goods .production figure img {
	margin: auto;
	padding:  0;
	width: 100%;
}
.section.goods .production .textarea { padding: 15px 9px;}
.section.goods .production h2 {
	margin: .3em auto .6em;
	color: #fff;
	font-size: 3.5rem;
	font-family: 'Suzumushi';
	text-shadow : 1px 1px 2px rgba(0,0,0,0.3);
/*
	animation: fire_ani2 .46s ease-in-out infinite alternate;
  -moz-animation: fire_ani2 .46s ease-in-out infinite alternate;
  -webkit-animation: fire_ani2 .46s ease-in-out infinite alternate;
  -o-animation: fire_ani2 .46s ease-in-out infinite alternate;
*/
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: -0.05em;
}
.section.goods .production  p {
	color: #fff;
	text-align: center;
	line-height: 1.35;
}
.section.goods .production  p.open {
	margin-bottom: .6em;
	color: #fff787;
	line-height: 1.1;
}
.section.goods .production  p.open strong { font-size: 1.6em;}


.section.goods .production  dl {
	display: inline-block;
	padding: 5px 20px 10px;
	min-width: 190px;
	text-align: left;
}
.section.goods .production  dl dt {
	clear: both;
	float: left;
	padding-top: .05em;
	color: #fff;
	font-size: 1.35rem;
}
.section.goods .production  dl dt.size { padding-top: .3em;	}
.section.goods .production  dl dt.price { padding-top: 1.2em;	}
.section.goods .production  dl dt.price.sale {color: #fe020e;}
.section.goods .production  dl dd {
	display: block;
	padding-left: 4em;
	margin-left: 1em;
	color: #fff;
	text-align: left;
	font-weight: bold;
	letter-spacing: 0.04em;
}
.section.goods .production  dl dd small {
	font-size: 0.75em;
	letter-spacing: 0;
}
.section.goods .production  dl dd strong {
	font-size: 1.85em;
	font-weight: normal;
}
.section.goods .production  dl .strikethrough {
	padding-left: 0;
	display: inline-block; /* ボーダーを適用するためにインラインブロック化 */
	position: relative;
}
.section.goods .production  dl .strikethrough::after {
	content: "";
	position: absolute;
	top: 50%; /* テキストの中央に配置 */
	left: 0;
	width: 100%;
	height: 2px; /* 線の太さ */
	background-color: #fe020e; /* 線の色 */
}
.section.goods .production  dl dd.sale {
	padding-left: 0;
	color: #fe020e;
	line-height: 1.2;
	font-size: 2.2em;
	font-family: 'Suzumushi';
}
.section.goods .production  dl dd.sale small {
	font-size: 1.85rem;
}
.section.goods .production  dl dd strong { font-weight: bold;}


.section.goods .production a:hover {
	filter: brightness( 106% ) contrast( 108% ) saturate( 106% );
}

.section.goods .production a .btn {
	position: absolute;
	bottom: 20px;
	width: 100%;
	height: 50px;
	text-align: center;
}
.section.goods .production a .btn .buy {
	display: block;
	margin: auto;
	padding: 0 1em;
	width: 68%;
	height: 40px;
	line-height: 40px;
	color: #fff;
	font-size: 1.75rem;
	text-align: center;
	border: 2px solid #fff;
	border-radius: 30px;
	transition: all 0.5s ease;
}
.section.goods .production a:hover .btn .buy {
	color: #ccb26a;
	background-color: #fff;
}



.section.goods .productions .good_info {
	margin: auto;
	padding: 1em 1em 2em;
	width: 96%;
	border-radius: 20px;
}
.section.goods .productions .good_info ul { margin-bottom: 0;}




/* ===============================
	F.A.Q
================================== */

.section.faq {
	margin: 0 auto;
	padding: 2em 0 0;
	max-width: 900px;
	background-position: 80% .25%;
	background-size: 240px auto;
}
#wrap .section.faq .inner {
	padding: 5vmin 5vmin 130px;
	width: 92%;
	max-width: 900px;
	background-color: #fff;
	border-radius: 30px;
}
.section.faq h3 {
	margin: 1.3em 0 .3em;
	color: #ccb26a;
	font-size: 2.9rem;
	font-weight: bold;
	font-family: 'Suzumushi';
	text-align: left;
	letter-spacing: 0em;
	line-height: 1.2;
}
.section.faq p {
	color: #333;
	text-align: justify;
	letter-spacing: 0.05em;
}

/* ===============================
	ACCESS
================================== */
.section.access {
	margin: 0 auto;
	padding: 2.7em 0 0;
	max-width: 900px;
	background-position: 80% .25%;
	background-size: 240px auto;
}
#wrap .section.access .inner {
	padding: 4vmin;
	width: 92%;
	max-width: 900px;
	font-family:'Brush-U';
}
#wrap .section.access h3.center img {
	filter: invert(100%) sepia(0%) saturate(1%) hue-rotate(181deg) brightness(106%) contrast(100%);
}
#wrap .section.access address {
	margin-bottom: 3vmin;
	font-size: 1.9rem;
	line-height: 1.7;
}
#wrap .section.access .maplink img {
	margin-left: .3em;
	width: 12px;
	height: auto;
	filter: invert(61%) sepia(88%) saturate(1644%) hue-rotate(135deg) brightness(105%) contrast(83%);
}
#wrap .section.access .maplink:hover {
	color: #f00;
}
#wrap .section.access .maplink:hover img {
	filter: invert(17%) sepia(92%) saturate(5912%) hue-rotate(357deg) brightness(101%) contrast(116%);
}

@media (min-width: 751px) {
#wrap .section.access .telnumero {
	margin-top: 1em;
	pointer-events: none;
	cursor: default;
	color: #fff;
	text-decoration: none;	
}
}


#wrap .section.access .map img {
	border-radius: 30px;
} 


/* ===============================
	ARCHIVES
================================== */
#archive { margin-bottom: 10vh;}


/* ===============================
	Footer
================================== */


/* éŽåŽ»ãƒ•ã‚§ã‚¹ãƒãƒŠãƒ¼ */
header.text {
	opacity: 0;
	animation: textfly 4s ease-in-out 1 forwards;
}
@keyframes textfly {
    0% { opacity: 0; }
   40% { opacity: 0; }
  100% { opacity: 1; }
}
h1.pre {
	animation: horizontal 2s ease-in-out infinite alternate;
}
h1.pre img {
	width: auto;
	height: 96vh;
	animation: vertical 1.7s ease-in-out infinite alternate;
}

@keyframes horizontal {
    0% { transform:translateX( -3px); }
  100% { transform:translateX(  0px); }
}
@keyframes vertical {
    0% { transform:translateY(-10px); }
  100% { transform:translateY(  0px); }
}

/* éŽåŽ»ãƒ•ã‚§ã‚¹ãƒãƒŠãƒ¼ */
.past a {
	display: inline-block;
	vertical-align: middle;
	margin:.5em .7em;
}




/* ===============================
	contact
================================== */
.contact #wrap header {
	height: auto;
}
.contact header h1 { color: #e20075;}
.contact header h1 img { width: 100%;	}

.contact #wrap main .inner {
  padding: 7vmin;
  max-width: 1050px;
  color: #e20075;
  font-family: YuGothic,"Hiragino Kaku Gothic ProN", Meiryo,sans-serif,cursive;
  font-weight: normal;
  background-color: #fff;
  border-radius: 30px;
  box-shadow : 0px 0px 10px 0px rgba(0,0,0,0.4);

}
.contact section p {
	margin: 0 auto .7em;
	max-width: 800px;
	text-align: center;
	font-size: 2rem;
	
}
.contact section dl {
	margin: 2em auto 2em;
	text-align: left;
	overflow: hidden;
	max-width: 800px;
}

.contact section dl.website { display: none;}
.contact section dl dt {
	margin-bottom: .2em;
	font-size: 2.1rem;
	
}
.contact section dl dd { margin: 0;}
.contact section dl.contents { margin-top: 3em;}

.wpcf7-text {
	padding: .3em .6em;
	width: 100%;
	max-width: 400px;
	font-size: 2.1rem;
	border: 3px solid #e20075;
	border-radius: 8px;
}
.contact section dl.name .wpcf7-text { max-width: 240px;}
.contact section dl.name .wpcf7-text { max-width: 240px;}
.wpcf7-textarea {
	padding: .6em;
	width: 100%;
	min-height: 350px;
	font-size: 2.1rem;
	border: 3px solid #e20075;
	border-radius: 8px;
}


/* ç¢ºèªãƒœã‚¿ãƒ³ */
.accept .wpcf7-acceptance label {
	display: block;
	margin:30px auto 0;
	padding: 2vmin;
	width: 80%;
	max-width: 500px;
	color: #fff;
	font-size: 1.85rem;
	letter-spacing: .06em;
/* 	background-color: #5798aa; */
	border-radius: 6px;
	border: 2px dashed #e20075;
	cursor: pointer;
	transition: all .5s ease;
}
.accept .wpcf7-acceptance label input {float: left;}
.accept .wpcf7-acceptance label .wpcf7-list-item-label {
	display: block;
	padding-left: 40px;
	text-align: left;
}
.accept .wpcf7-acceptance label .wpcf7-list-item-label span {
	display: inline-block;
	white-space: nowrap;
}

.accept .wpcf7-acceptance label:active {
	filter: brightness( 106% ) contrast( 106% );
}

.accept .wpcf7-not-valid-tip {
	display: block;
	text-align: center;
}


/* ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ ãƒœã‚¿ãƒ³ */
input[type="checkbox"] { display: none; }
input[type="checkbox"] + .wpcf7-list-item-label {
  display: block;
  position: relative;
  padding-left: 35px;
  color: #e20075;
  cursor: pointer;
}
input[type="checkbox"] + .wpcf7-list-item-label:last-child { margin-bottom: 0; }
input[type="checkbox"] + .wpcf7-list-item-label:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border: 2px solid #e20075;;
  position: absolute;
  left: 0;
  top: 5px;
  opacity: .8;
  transition: all .12s, border-color .08s;
}

input[type="checkbox"]:checked + .wpcf7-list-item-label:before {
  width: 10px;
  top: 3px;
  left: 5px;
  border-radius: 0;
  opacity: 1;
  border: 3px solid #c73823;
  border-top-color: transparent;
  border-left-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}







/* é€ä¿¡ãƒœã‚¿ãƒ³ */
.confirm { margin: 2em auto;}
.wpcf7-submit {
	position: relative;
	display: inline-block;
	margin: 0 auto;
	padding: .5em 1.4em;
	width: auto;
	color: #fff;
	font-size: 1.8rem;
	border: none;
	text-align: center;
	background-color:#e20075; ;
	cursor: pointer;
	border-radius: 4px;
}
.wpcf7-submit:hover {
	color: #fff;
	filter: brightness( 114% ) contrast( 116% ) saturate( 120% ) ;
}
#submit {
	position: relative;
	max-width: 400px;
}
#submit[disabled]::before {
	content: "";
	position: absolute;
	display: block;
	margin: auto;
	width: 80%;
	max-width: 400px;
	height: 50px;
	z-index: 1000;
	cursor: not-allowed;
}
#submit input.wpcf7-submit {
	font-size: 1.8rem;
	transition: all 0.5s ease;
}
#submit[disabled] input.wpcf7-submit {
	color: #fff;
	background-color:#aaa ;

}


.wpcf7-response-output {
	margin: auto;
	padding: .3em;
	max-width: 800px;
	color: #c73823;
	font-weight: bold;
	font-size: 1.8rem;
}




.wpcf7-response-output.wpcf7-spam-blocked { background-color: #A50413;}
.wpcf7-response-output.wpcf7-validation-errors { background-color: #e37800;}
.wpcf7-response-output.wpcf7-mail-sent-ok { background-color: #398f14;}

.wpcf7-not-valid-tip {
	display: block;
	margin-top: .3em;
	color: #c73823;
	font-size: 1.6rem;
	font-weight: bold;
}

.screen-reader-response { display: none;}


.contact #footer {
	background: none;
}




@media screen and (min-width:480px){ /*å¤§ãã„ã‚¹ãƒžãƒ›*/

/* ==========================================
	ãƒ¡ãƒ‹ãƒ¥ãƒ¼ï¼ˆmodal menuï¼‰
	https://ecmemo.net/modal-window
============================================= */

/* ãƒ¡ãƒ‹ãƒ¥ãƒ¼éƒ¨åˆ†
--------------------------------------------- */
.fixedmenu .menu-main-container .menu li a { }

/* ===============================
	ã‚¿ã‚¤ãƒˆãƒ«ãƒ»ãƒ•ãƒ©ã‚¤ãƒ¤ãƒ¼ã‚¨ãƒªã‚¢(flyerarea)
================================== */

#wrap .section.flyerarea {
	background-position: center 30px, center -40px;
	background-size: 80% auto, 600px auto;
}


/* ===============================
	å®£è¨€æ–‡
================================== */

.declaration .inner p { font-size: 3.2rem;}


}@media screen and (min-width:768px){ /*ã‚¿ãƒ–ãƒ¬ãƒƒãƒˆ*/

h1.pre img {
	height: 110vmin;
}

h1,h2,h3,h4,h5,h6 {
	margin-bottom:0.4em;
	font-size:1.6rem;
 	font-weight: bold;
}

small { font-size: 0.85em;}
ul li { font-size: 1.5rem; line-height: 1.6;}
dl dt { font-size: 1.5rem; line-height: 1.6;}
dl dd { font-size: 1.5rem; line-height: 1.6;}

.section h1 {margin: 1.5em 0 1em;}
.section h2.title { margin-top: 4em;}



/* ===============================
	ã‚¿ã‚¤ãƒˆãƒ«ãƒ»ãƒ•ãƒ©ã‚¤ãƒ¤ãƒ¼ã‚¨ãƒªã‚¢(flyerarea)
================================== */


@media screen and (orientation: landscape) {
.section.flyerarea .flyer {
	width: auto;
	height: 100vh;
}
.section.flyerarea .flyer img {
width: auto;
}
}


/* ===============================
	ã•ã‚‹ãƒ•ã‚§ã‚¹ã¨ã¯
================================== */
.section.about {
	background-position: 20% 100%;
	background-size: 250px auto;
}
.section.ticket .toform { margin: 3em 15% ;}

/* ===============================
	TICKET
================================== */

.section.ticket .inner .arrow_box { position: relative;}
.section.ticket .inner .arrow_box h2 {
/* 	margin-bottom: 90px; */
}
.section.ticket .inner .arrow_box p.present {
/* 	position: absolute; */
	top: 5vmin;
	right: 5vmin;
	
}
.section.ticket .inner .arrow_box p.present img {
	margin-top: 10px;
	width: 50%;
	max-width: 150px;
}


/* ===============================
	ARTIST
================================== */
.artists .list .artist {
    margin: 0 .5em 1em;
    width: calc(50% - 1em);
}
.artists .list .artist figure { padding-top: 65%;}
.artists .list .artist .text .name { font-size: 2rem;}
.artists .list .artist .text .genre:before {
	display: inline-block;
	padding-right: .2em;
}


/* æ–°æµ· */
.section .innerframe.shinkai {
	margin: 3vmin auto;
}



/* ===============================
	TIMETABLE
================================== */
.section.timetable .swipe {
	display: none;
	visibility: hidden;
}
/* ã‚¿ã‚¤ãƒ ãƒ†ãƒ¼ãƒ–ãƒ« */
.section.timetable h1 { font-size: 6.5rem;}


/* ===============================
	ã‚°ãƒƒã‚º
================================== */

#wrap .section.goods .inner {
    max-width: 900px;
}

.section.goods .productions {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
/* 	align-items: stretch; */
}
.section.goods .production {
	display: inline-block;
	margin: 0 2% 4%;
    width: calc(50% - 4%);
}

.section.goods .banner { margin: 0 2% 3%;}


/* ==========================================
	 FOOTER
========================================== */
#footer {
	margin: auto;
	padding: 0 0 3%;
	
}

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

/* .burgermenu
--------------------------------------------- */
.burgermenu {
	display: none;
	visibility: hidden;
}

/* ==========================================
	modal menu OFF
	https://ecmemo.net/modal-window
============================================= */
.modal.fixedmenu {
	position: fixed;
	top: -100vh;
	left: auto;
	right: 0;
	width: 200px;
	height: 125px;
	opacity: 1;
	visibility: visible;
	transition: all 1s ease;
}
.modal.fixedmenu.is-fixed,
.home .modal.fixedmenu.is-fixed {
    height: 90vh;
    z-index: 1000000;
}
.home .modal.fixedmenu {
	background: none ;
    background-position: left 5vw top -10px ;
	border: none;
}
.modal .modal-window {
	display: inline-block;
	margin: 0 auto;
	height: 100vh;
	background: none;
}
.modal .menu-main-container {
	display: flex;
	flex-direction: column; 
  justify-content: center;
  align-items: center;
	margin: 0 auto;
	width: 96%;
	height: 100vh;
	max-width: 1400px;
	text-align: right;
}

.modal .menu-main-container .menu {
	position: relative;
	top: auto;
	display: inline-block;
	margin:0 ;
	width: auto;
	transform: translateY(0%);
	box-shadow : none;
	text-align: center;
}
.open-menu .modal .menu-main-container .menu li,
.modal .menu-main-container .menu li {
	padding: 4px 0;
	width: auto;
	text-align: center;
}
.modal .menu-main-container .menu li a {
	display: flex; /* 子の水平方向と垂直方向の両方の整列を”柔軟”に操作 */
	flex-direction: column; /* 主軸の方向や向きを定義（column:縦並, row:横並,column-reverse:逆縦並,row-reverse:逆横並）*/
	justify-content: center; /* コンテンツの間や周囲に間隔を整える[justify]（start:最初に合わせる,center：中央に合わせる,space-between：間にスペースを入れる,space-around：周りに一定のスペースを入れる,space-evenly：等間隔のスペースを入れる） */
	align-items: center;	/* 全ての直の子要素に集合として交差軸方向のアイテムを配置（stretch:親要素に合わせ空間を埋める,center:真ん中に揃える,start:最初に揃える,end:最後に揃える） */
	margin: .1em auto;
	padding:  0;
	width: 160px;
/* 	height: 35px; */
}

.modal .menu-main-container .menu li a img {
	height: 1.3em;
	line-height: .6;
	filter:blur(1px) invert(99%) sepia(6%) saturate(0%) hue-rotate(252deg) brightness(105%) contrast(100%) opacity(95%) /* drop-shadow(0px 0px 1px #07a7e5)  */;	
}
.modal .menu-main-container .menu li.timetable a img { 	height: 1.55em;}
.modal .menu-main-container .menu li a:hover { font-size: 2rem;}
.modal .menu-main-container .menu li a:hover img {
	filter: blur(0) invert(99%) sepia(6%) saturate(0%) hue-rotate(252deg) brightness(105%) contrast(100%) opacity(100%);
}
.open-menu .modal .menu-main-container {
	height: 125px;
	background: none;
}
.open-menu. modal .menu-main-container .menu li a { color: #003cf0;}

.modal .menu-main-container .menu li.sns a {
	padding:18px 0% 17px;
	width: 25px;
	line-height: 72px;
	color: rgba(0,0,0,0);
}
.modal .menu-main-container .menu li.sns a::before {
	float: none;
	color: #003cf0;
	font-size: 2.1rem;
}

.modal.fixedmenu.is-fixed,
.home .modal.fixedmenu.is-fixed {
    position: fixed;
    top: 0;
    left: auto;
    right: 0;
    width: 200px;
    z-index: 100;
}
.modal.fixedmenu.is-fixed .menu-main-container .menu {
	position: relative;
	-webkit-transition: all 1s;
	transition: all 1s;
}
.modal.fixedmenu .menu-main-container .menu li a:hover {}

.open-menu .modal.fixedmenu .menu-main-container {
	display: block;
	justify-content:flex-end;
	align-items: baseline;
	overflow: hidden;
}
.modal.fixedmenu .menu-main-container { transition: all 0.5s ease;}
.home .modal.fixedmenu .menu-main-container { background-image: none;}
.open-menu .modal.fixedmenu .menu-main-container .menu li.sns {
	float: none;
	width: auto;
}


/* ===============================
	flyerarea
================================== */

body #wrap .section.flyerarea { background-size: 1200px auto, auto 300px;}

/* ===============================
	しりさんのお言葉・宣言(declaration)
================================== */
.declaration {
	background: url(../images/chara000.png?12),url(../images/bg-fuji01.svg?s12) ;
	background-position: right 30% bottom 40px, center bottom;
	background-repeat: no-repeat;
	background-size: 170px auto, 100% auto;
}


/* ===============================
	TICKET
================================== */

/* ===============================
	TICKET
================================== */
#wrap .section.ticket {
	position: relative;
	margin-bottom: 0;
	padding-bottom: 10vh;
	background-color: #ccb26a;
	background-image: url(../images/chara09-milk.png?1),url(../images/chara02-guitar.png?1),url(../images/chara08-massage2.png),url(../images/chara07-pingpong.png),url(../images/bg-river.svg?);
	background-repeat: no-repeat,no-repeat,no-repeat,no-repeat,repeat;
	background-position: left 5% bottom 6%,center center, right 15% bottom 13%,left 5% top 10%,center top;
	background-size: 155px auto,135px auto,145px auto,130px auto,contain;

}
.ticket ul.type li {
	display: flex; /* 子の水平方向と垂直方向の両方の整列を”柔軟”に操作 */
	flex-direction: row; /* 主軸の方向や向きを定義（column:縦並, row:横並,column-reverse:逆縦並,row-reverse:逆横並）*/
	justify-content: start; /* コンテンツの間や周囲に間隔を整える[justify]（start:最初に合わせる,center：中央に合わせる,space-between：間にスペースを入れる,space-around：周りに一定のスペースを入れる,space-evenly：等間隔のスペースを入れる） */
	align-items: end;	/* 全ての直の子要素に集合として交差軸方向のアイテムを配置（stretch:親要素に合わせ空間を埋める,center:真ん中に揃える,start:最初に揃える,end:最後に揃える） */
	max-width: 100%;
}
.ticket ul.type li figure {
	min-width: 350px;
	max-width: 350px;
}
.ticket ul.type li .shop {
	padding: 10px 20px;
	width: 100%;
}
.ticket ul.type li .shop {}

.ticket ul.type li.ticketA {
	background-position: right 20% top 30%;
	background-size: 150px auto;
}
.ticket ul.type li.ticketB {
	margin-right: 0;
	flex-direction: row-reverse;
	background-size: 150px auto;
}
.ticket ul.type li.ticketC {
	background-position: right 10% top 20%;
	background-size: 150px auto;
}

/* ===============================
	ARTIST
================================== */
.section.artists { padding-top: 100px;}
.artists .list .artist,
.artists .list .artist.last {
	margin: 0 1% 2%;
	width: calc(33.333% - 2%);
}
.artists .list .artist.last figure { padding-top: 65%;}
.section.artists .apology { margin: 3em 17%;}


/* ===============================
	ã‚°ãƒƒã‚º
================================== */

/*
.section.goods .production {
    width: calc(33% - 4%);
}
*/

/* ===============================
	ã‚¢ã‚¯ã‚»ã‚¹
================================== */
.section.access {
	margin-top: -50px;
	background-position: 25% 0%;
	background-size: 220px auto;
}
/* ===============================
	F.A.Q
================================== */
.section.faq {
	background-position: 100% 0%;
	background-size: 300px auto;
}
/* ===============================
	ã‚¹ã‚¿ãƒƒãƒ•
================================== */
.section.staff {
	padding-top: 300px;
	background-size: 270px auto;
}



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



/* ===============================
	ARTIST
================================== */

#wrap .section.artists .inner { max-width: 900px;}


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

/* ===============================
	ã‚¿ã‚¤ãƒˆãƒ«ãƒ»ãƒ•ãƒ©ã‚¤ãƒ¤ãƒ¼ã‚¨ãƒªã‚¢(flyerarea)
================================== */

body #wrap .section.flyerarea { background-size: 1200px auto, auto 40vh ;}


.modal.fixedmenu { right:5vw;}
.modal.fixedmenu.is-fixed,
.home .modal.fixedmenu.is-fixed { right:3.5vw;}



}@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
  #wrap #body {
  background:none;
		-webkit-box-shadow: none; /* webkit:Safari  */
		-moz-box-shadow   : none; /* moz:firefox */
		box-shadow        : none;
  }
}


}
