@charset "UTF-8";

/* html */
html.scrollmenu-open {
width: 100%;
height: 100%;
overflow: hidden;
}

/*common class*/
.flex-wrapper {
position: relative;
display: flex;
flex-wrap: wrap;
}
.parallax_wrapper {
position: relative;
overflow-x: hidden;
overflow-y: auto;
}
.parallax_content {
background-attachment: fixed !important;
background-position: top center !important;
background-size: cover !important;
background-repeat: no-repeat !important;
padding: 0;
}
.aligncenter {
display: block;
margin-right: auto;
margin-left: auto;
}
.alignright {
float: right;
margin-bottom: 20px;
margin-left: 20px;
}
.alignleft {
float: left;
margin-right: 20px;
margin-bottom: 20px;
}
.wp-caption,
[class*='wp-image'] {
display: block;
max-width: 100% !important;
margin-top: 1.5em;
text-align: center;
}
.wp-caption-text {
margin-top: 0;
}
.line-through {
text-decoration:line-through;
}
@media (max-width: 760px){
.alignright{ float: none; margin-left: 0; }
.alignleft{ float: none; margin-right: 0;}
}
.swiper-wrapper{user-select: none;-webkit-user-select: none;}


/*１文字ずつ出現*/
.fadein_text span{opacity: 0;}
.fadein_text.appeartext span{ animation:text_anime_on .5s ease-out forwards; }
@keyframes text_anime_on {
  0% {opacity:0;}
  100% {opacity:1;}
}

/* header */
#header {
position: fixed;
width: 100%;
z-index: 10;
transition: .3s;
}
#header a {color:#111;}
#header {background: transparent;}
#header.menuopen-small {background: #B70;background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);}
#header-inner{
position:relative;
z-index:1;
display: flex;
margin:auto;
height:100%;
}
#header #header-title {
display: flex;
justify-content: center;
align-items: start;
text-align:center;
position:relative;
}
#header #header-title a {
position:absolute;
z-index:1;
top:2.5vw;
width:85%;
}
#header.menuopen-small #header-title {
align-items: center;
}
#header.menuopen-small #header-title a {
top:0;
width:45%;
background: #B67B03;
background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 100%);
padding: 1rem 2rem;
}
#header #header-title span {
display:block;
font-size:1.65rem;
}
#header-sns svg {
width: 2rem;
height: 2rem;
fill:#000;
}
#header a:hover svg {
	fill: #B70;
	filter: drop-shadow( 0px 0px 1px #FFF ) drop-shadow( 0px 0px 2px #FFF ) drop-shadow( 0px 0px 3px #FFF ) drop-shadow( 0px 0px 5px rgba(255,255,255,.5) ) drop-shadow( 0px 0px 8px rgba(255,255,255,.5) );
	transition: .3s;
}

/*body*/
#body {
position:relative;
padding:0;
}
#body .section{
position:relative;
padding:80px 0;
}
#body .section:before {
content: "";
position: absolute;
inset: 0;
mix-blend-mode: multiply;
}
#body .section-header{
position:relative;
margin: auto;
width: 80%;
max-width: 1280px;
padding-bottom:.75rem;
}
#body .section h2{
font-size:360%;
position:relative;
display:inline-block;
overflow: visible;
color:#430;
text-shadow: 
1px 1px 1px #fff, 1px -1px 1px #fff, -1px 1px 1px #fff, -1px -1px 1px #fff,
1px 2px 1px #fff, 1px -2px 1px #fff, -1px 2px 1px #fff, -1px -2px 1px #fff,
2px 1px 1px #fff, 2px -1px 1px #fff, -2px 1px 1px #fff, -2px -1px 1px #fff;
}
#body .section h2 span{
position:relative;
z-index:1;
}
#body .section-body {
position:relative;
margin:0 auto;
width:80%;
max-width:1280px;
}




/* mainvisual */
#mainvisual {
position: relative;
margin: 0 auto;
overflow: hidden;
z-index:1;
}
#mainvisual .mv-img{
position: relative;
top:50%;
left:50%;
transform: translate(-50%,-50%);
}
#mainvisual .mv-img img{
object-fit: cover;
height: 900px;
}

/* whatsnew */
#whatsnew{position:relative; z-index:1;display:flex; justify-content:space-between; flex-wrap:wrap;height:400px;background:#FFF;overflow:hidden;padding:20px 0;
-ms-overflow-style: none;scrollbar-width: none;
}
#whatsnew:-webkit-scrollbar{display: none;}
#whatsnew .whatsnew-item{flex-basis:49%;}
#whatsnew .whatsnew-item > div {width:90%; max-width:620px;}
#whatsnew #news.whatsnew-item > div { margin-left:auto; margin-right:0;-ms-overflow-style: none;scrollbar-width: none;}
#whatsnew #twitter.whatsnew-item > div { margin-left:0; margin-right:auto;-ms-overflow-style: none;scrollbar-width: none;}
#whatsnew .whatsnew-title {background: #B70;background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%); color:#FFF; font-weight:900;padding:.25rem 1.5rem;}
#whatsnew #twitter .whatsnew-title {background:#111; display:flex; justify-content:space-between; align-items: center; flex-wrap: wrap;}
#whatsnew #news ul {-ms-overflow-style: none;scrollbar-width: none; height:330px;overflow-y:scroll;}
#whatsnew #news li {padding:1rem 1.5rem; margin-top:3px; display:flex; justify-content:space-between;line-height:1.4;}
#whatsnew #news li:nth-of-type(odd) {background:#f1f1f1;}
#whatsnew #news li:nth-of-type(even) {background:#f8f8f8;}
#whatsnew #news span {display:block;}
#whatsnew #news span.day {flex-basis:16%; margin-right:3%;}
#whatsnew #news span.topic {flex-basis:81%;}
#whatsnew #news a {color:#B70; text-decoration:underline;}
#whatsnew #twitter a {background:#fff; color:#111; font-size:1.2rem; padding:0 1rem; border-radius:1.3rem;}
#whatsnew #twitter a:hover {color:#fff; background:#111; border:1px #fff solid;}
#whatsnew #twitter a:hover svg {fill:#FFF;}
#whatsnew #twitter span:nth-of-type(2) {font-size:1.43rem;}
#whatsnew #twitter svg { display:inline; vertical-align:-1px; width:11px; height:11px; margin-left:3px; fill:#111;}
#whatsnew #twitter iframe{-ms-overflow-style: none;scrollbar-width: none; height:330px;}
#whatsnew #twitter iframe:-webkit-scrollbar{display: none;}

/*details*/
#details.section{
color:#FFF;
text-shadow:0px 0px 3px rgba(255,255,225,.4);
padding: 0;
background: rgba(30,15,0,1);
}
.details_bg.lazyloaded {
padding:80px 0;
background: url("../img/bg.jpg");
}
#details.section:before {
background: radial-gradient(circle, rgba(255,225,200,.9) 0%, rgba(30,15,0,.9) 90%);
}
#details img {filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);}
#details .section-body p{
position:relative;
z-index:1;
}
@keyframes detailbg {
0% {opacity: .5;}
50% {opacity: 0;}
100% {opacity: .5;}
}
#details .section-body {
display:flex;
justify-content:space-between;
flex-wrap:wrap;
}
#details .section-body p{
flex-basis:100%;
margin-bottom:2.5rem;
}
#details .section-body #detail-title{
flex-basis:47%;
margin-bottom:8rem;
}
#details .section-body #pv{
position:relative;
flex-basis:48%;
width: 100%;
z-index:1;
overflow: visible;
}
#details .section-body #pv iframe{
width: 100%;
height: 100%;
border:none;
vertical-align:bottom;
}


/*event-parts*/
#event-parts h2:after{
content:"";
position:absolute;
top:-25%;
left:-15%;
width:400px;
height:120px;
opacity:.5;
background: url("../img/title-eventparts.svg") no-repeat top center;
filter: brightness(0) saturate(100%) invert(100%) sepia(18%) saturate(4893%) hue-rotate(3deg) brightness(100%) contrast(70%) drop-shadow( 0px 3px 5px rgba(168,150,50,1) );
z-index:0;
}
#event-parts {margin-top:3rem; margin-bottom:40px;}
#event-parts ol {display:flex;flex-wrap:wrap; justify-content:space-between;}
#event-parts ol li {flex-basis:48%;border:2px rgba(255,211,0,.5) solid;background:rgba(255,211,70,.4);}
#event-parts dt {background:rgba(80,66,0,.7); padding:.25rem 2rem; font-weight:900;}
#event-parts dd { padding:2rem 2rem;}

#event-parts ul {margin-top:1rem; display:flex;flex-wrap:wrap; justify-content:space-between;}
#event-parts  ul li {flex-basis:48%;}
#story > h3,#setlist > h3 {
    background: #B70;
    background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
    color: #fff;
    padding: 0.25rem 1rem;
    font-weight: 900;
    margin-top:3rem;
}
#story img,#setlist img {
filter:none;
margin: 0 !important;
}


/*cast*/
#cast.section{
color:#333;
}
#cast.section:before {
background: linear-gradient(180deg, rgba(100,0,10,.9) 0%, rgba(185,25,50,.5) 30%,rgba(255,255,255,1) 60%);
}
#cast.section:after {
content:"";
position:absolute;
inset: 0;
background: url("../img/bg-cast.jpg") repeat top center;
background-size:25%;
z-index:0;
mix-blend-mode: multiply;
}
#cast .section-header{
z-index:1;
}
#cast h2:after{
content:"";
position:absolute;
top:-25%;
left:-30%;
width:400px;
height:120px;
opacity:.5;
background: url("../img/title-cast.svg") no-repeat top center;
filter: brightness(0) saturate(100%) invert(15%) sepia(79%) saturate(5156%) hue-rotate(345deg) brightness(92%) contrast(119%) drop-shadow( 0px 3px 5px rgba(255, 0, 29,1) );
z-index:0;
}
#cast .section-body {
z-index:1;
}
#cast ul {display:flex; justify-content:start; flex-wrap:wrap;}
#cast #regular > h3 {background:#B70;background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%); color:#fff; padding:.25rem 1rem; font-weight:900;}
#cast #regular ul li {flex-basis:calc( 90% / 6 ); margin:1%;}
#cast #regular ul li.spacer {background:transparent;}
#cast #regular ul li:nth-of-type(6n+1) {margin-left:0;}
#cast #regular ul li:nth-of-type(6n) {margin-right:0;}
#cast ul li p {margin-bottom:0;text-align:center;}
#cast ul li p:nth-of-type(2) { font-weight:900; padding:1rem .25rem; color:#FFF;background:#306;}
#cast ul li p span {display:block; font-size:1.1rem;font-weight:700;}
#cast ul li p:nth-of-type(3){margin-top:.5rem;}
#cast ul li p:nth-of-type(3),#cast ul li p:nth-of-type(4) {font-size:1.1rem; text-align:left;}
#cast #regular ul li:nth-of-type(1) p:nth-of-type(2){background:#C21;}/*赤*/
#cast #regular ul li:nth-of-type(2) p:nth-of-type(2){background:#25C;}/*青*/
#cast #regular ul li:nth-of-type(3) p:nth-of-type(2){background:#EB0;}/*黄*/
#cast #regular ul li:nth-of-type(4) p:nth-of-type(2){background:#83C;}/*紫*/
#cast #regular ul li:nth-of-type(5) p:nth-of-type(2){background:#111;}/*黒*/
#cast #regular ul li:nth-of-type(6) p:nth-of-type(2){background:#888;}/*グレー*/
#cast #regular ul li:nth-of-type(7) p:nth-of-type(2){background:#89B;}/*グレー*/
#cast #regular li.non-regular {position:relative; overflow:visible; }
#cast #regular li.non-regular h4 {position:absolute; top:-.5em; left:0; background:#FFF; padding:0 .5rem; border:2px #333 solid; font-size:1.1rem;transform: scale(0.85, 1) translateX(-10%);}
#cast #regular li.non-regular p:nth-of-type(2) {background:#E73;}

#cast #special-guest {margin-top:30px;}
#cast #special-guest .flex-wrapper{justify-content:space-between; margin-bottom:15px;}
#cast #special-guest .flex-item:nth-of-type(1) p:nth-of-type(2) {background:#390;}
#cast #special-guest h3 {background:#B70;background: linear-gradient(45deg, #A02 0%, #B13 45%, #FDD 70%, #B13 85%, #A02 90% 100%); color:#fff; padding:.25rem 1rem; font-weight:900;}
#cast #special-guest > p {margin-bottom:0;}
#cast #special-guest ul li {flex-basis:calc( 90% / 6 ); margin:1%;}
#cast #special-guest ul li:nth-of-type(6n+1) {margin-left:0;}
#cast #special-guest ul li:nth-of-type(6n) {margin-right:0;}
#cast #special-guest li.non-regular {position:relative; overflow:visible; }
#cast #special-guest li.non-regular h4 {position:absolute; top:-.5em; left:0; background:#FFF; padding:0 .5rem; border:2px #333 solid; font-size:1.1rem;transform: scale(0.85, 1) translateX(-10%);}

#cast #osaka-special {margin-top:30px;}
#cast #osaka-special .flex-wrapper{justify-content:space-between; margin-bottom:15px;}
#cast #osaka-special .flex-item:nth-of-type(1) p:nth-of-type(2) {background:#390;}
#cast #osaka-special h3 {background:#B70;background: linear-gradient(45deg, #A02 0%, #B13 45%, #FDD 70%, #B13 85%, #A02 90% 100%); color:#fff; padding:.25rem 1rem; font-weight:900;}
#cast #osaka-special h4 {border:1px #A02 solid; color:#A02; padding:.25rem 1rem; font-weight:900; }
#cast #osaka-special > p {margin-bottom:0;}
#cast #osaka-special ul li {flex-basis:calc( 90% / 6 ); margin:1%;}
#cast #osaka-special ul li:nth-of-type(6n+1) {margin-left:0;}
#cast #osaka-special ul li:nth-of-type(6n) {margin-right:0;}


/*schedule*/
#schedule {
color:#333;
}
#schedule.section {overflow-x: hidden;}
#schedule.section:before {
background: url("../img/bg-schedule.gif") repeat top center;
background-size:50%;
}
#schedule .section-header{
}
#schedule h2:after{
content:"";
position:absolute;
top:-25%;
left:-15%;
width:400px;
height:120px;
opacity:.5;
background: url("../img/title-schedule.svg") no-repeat top center;
filter: brightness(0) saturate(100%) invert(44%) sepia(48%) saturate(4459%) hue-rotate(184deg) brightness(101%) contrast(108%) drop-shadow( 0px 3px 5px rgba(0,150,255,1) );
z-index:0;
}
#schedule .section-body {
width:100%;
max-width: none;
padding-left: 10vw;
}
#schedule .table-wrapper{ overflow-x: scroll; margin:0 auto; padding:0; -ms-overflow-style: none;scrollbar-width: none; padding-right:10vw;}
#schedule .table-wrapper::-webkit-scrollbar{display:none;}
#schedule table { white-space: nowrap; border-spacing:3px;width:100%;}
#schedule th {font-size:90%; background:rgba(255, 230, 0,.9); }
#schedule td { padding:1rem 2.5rem; font-size:120%; background:rgba(255,255,255,.95);}
#schedule td p { margin-bottom:0;}
#schedule td:nth-of-type(6),
#schedule td:nth-of-type(7),
#schedule td:nth-of-type(8){ font-size:100%;}
#schedule td.none{display:none;}
#schedule td.state{text-align:center; color:#fff; font-weight:900;}
#schedule td.state a{color:#fff; font-weight:900;}
#schedule td a svg{display: inline; width: 1.4rem; height: 1.4rem; margin-left: 3px;}
#schedule td .linktogmap{ margin-top:-.25em; }
#schedule td .linktogmap a {font-size:1.2rem; text-decoration:underline;}
#schedule td .linktogmap a svg{fill:#333;width: 1.1rem; height: 1.1rem;}
#schedule td.state span{display:inline-block;padding:0.5rem 1.5rem;border-radius:2rem;}
#schedule td.actors-venue {padding:1rem;}
#schedule .actors-venue ul {display:flex; justify-content:center; flex-wrap:wrap;width:122px;}
#schedule .actors-venue li { width:55px; margin:3px;}
#schedule .actors-venue li {font-size:9px; text-align:center;}
#schedule .state.onsale span{ background:#e43;}
#schedule .state.soldout span{ background:#63E;}
#schedule .state.showclose span{ background:#333;}
#schedule .state.upcoming span{ background:#0B5;}
#schedule .slidehint {position:absolute; top:20px; right:10%; display:flex; flex-flow: column;align-items: center;}
#schedule .slidehint figure { width: 30px; height: 27px; animation: slidehint 3s linear infinite;}
#schedule .slidehint p { display:inline-block; font-size: 1.2rem; line-height: 1.4; margin: 0; color:#fff;}
@keyframes slidehint {
0%,100% {transform: translateX(30px); }
50% {transform: translateX(-30px); }
}

/*tickets*/
#tickets.section{
color:#fff;
overflow:hidden;
}
#tickets.section:before {
background: radial-gradient(circle, rgba(255,220,0,.9) 10%, rgba(75,50,0,1) 75%);
}
#tickets.section:after {
content:"";
position:absolute;
background: url("../img/bg-ticket.gif") repeat top center;
background-size:25%;
z-index:0;
opacity:.3;
mix-blend-mode: multiply;
width:100%;
height:100%;
top:50%;
left:50%;
transform: translate(-50%,-50%);
}
#tickets .section-header{
z-index:1;
}
#tickets h2:after{
content:"";
position:absolute;
top:-25%;
left:-5%;
width:270px;
height:120px;
opacity:.5;
background: url("../img/title-tickets.svg") no-repeat top center;
filter: brightness(0) saturate(100%) invert(82%) sepia(72%) saturate(2936%) hue-rotate(348deg) brightness(103%) contrast(106%) drop-shadow( 0px 3px 5px rgba(255,220,0,1) );
z-index:0;
}
#tickets .section-body {
z-index:1;
}
#tickets #online.section-body {
margin-top:50px;
}
#tickets .section-body h4 { background:rgba(235, 190, 50,1); margin:2em 0 0; padding:0 2rem;}
#tickets .section-body dl {display:flex; flex-wrap:wrap;font-size:2.4rem;width:100%;}
#tickets .section-body dt {flex-basis:35%; color:#333; background:rgba(255,255,255,1); margin:1px 1px 1px 0; padding:1rem 1.5rem;}
#tickets .section-body dd {flex-basis:calc(65% - 2px); color:#333; background:rgba(255,255,255,1); margin:1px 0 1px 1px; padding:1rem 2rem;}
#tickets .section-body ul a{color:#fff; text-decoration:underline;}
#tickets .section-body .linktoplayguide {
margin-top:25px;
text-align:center;
}
#tickets .section-body .linktoplayguide a {
display:inline-block;
font-size:2.4rem;
font-weight:900;
color:#0A2;
background:#fff;
padding:1rem 2rem;
border-radius:1rem;
transition: .3s;
}
#tickets .section-body .linktoplayguide a:hover {
color:#fff;
background:#0A2;
}
#tickets .section-body .linktoplayguide span {
white-space: nowrap;
display: inline-block;
}
#tickets .section-body .linktoplayguide svg {
display:inline-block;
vertical-align:-1px;
width:2rem;
height:2rem;
fill:#0A2;
margin-left:3px;
}
#tickets .section-body .linktoplayguide a:hover svg {
fill:#FFF;
}
#tickets dl#sales-schedule {
font-size:100%;
}
#tickets dl#sales-schedule dt,#tickets dl#sales-schedule dd {
padding:.75rem 2rem;
}

#tickets h5 {color:#fff; font-size:125%;margin-top:1em;}
.slide-button {
 margin-top:1rem;
    text-align:center;
    padding:2px 10px;
    color:rgba(170, 100, 0,1);
    border:rgba(170, 100, 0,1) 2px solid;
    background:#FFF;
    width:300px;
    cursor:pointer;
    border-radius:1.5em;
    font-size:125%;
    font-weight:900;
}

#ticket-goods{ margin-top:1.5em }
#ticket-goods.flex-wrapper { margin-top:1.5em; justify-content: space-between;}
#ticket-goods .flex-item:nth-of-type(1) {flex-basis:100%; background:none;}
#ticket-goods .flex-item {flex-basis:48.5%;background:#FFF; color:#111;margin:1em 0;}
#ticket-goods .flex-item h4 {margin:0;padding:0 .5em; color:#FFF;}
#ticket-goods .flex-item p {padding:.5em 1em 0; margin:0;}
#ticket-goods .flex-item:nth-of-type(1) p {padding:0;}
#ticket-goods .flex-item ul {padding:.5em 1em 1em; margin:0; line-height:1.2;}

/*firsttime*/
#body #firsttime.section {overflow-x: hidden;
background: url("../img/bg-paper.jpg") repeat top center;
}
#firsttime h2:after{
content:"";
position:absolute;
top:-25%;
left:-15%;
width:270px;
height:120px;
opacity:.5;
background: url("../img/title-firsttime.svg") no-repeat top center;
filter: brightness(0) saturate(100%) invert(76%) sepia(10%) saturate(569%) hue-rotate(7deg) brightness(100%) contrast(87%);
z-index:0;
}
#firsttime .section-header {margin-bottom: 2rem;}
#firsttime .section-body {width: 100% !important;}
#firsttime .alignright {margin-top:1rem;float:right; margin-right:5% !important;}

/*goods*/
#goods {
color:#333;
}
#goods.section:before {
background: radial-gradient(circle, rgba(134, 12, 156,1) 10%, rgba(80,0,94,1) 85%);
}
#goods.section:after {
content:"";
position:absolute;
background: url("../img/bg-goods.gif") repeat top center;
background-size:25%;
z-index:0;
opacity:.3;
mix-blend-mode: multiply;
width:100%;
height:100%;
top:50%;
left:50%;
transform: translate(-50%,-50%);
}
#goods .section-header{
z-index:1;
}
#goods h2:after{
content:"";
position:absolute;
top:-25%;
left:10%;
width:170px;
height:120px;
opacity:.5;
background: url("../img/title-goods.svg") no-repeat top center;
filter: brightness(0) saturate(100%) invert(26%) sepia(79%) saturate(7113%) hue-rotate(284deg) brightness(101%) contrast(130%) drop-shadow( 0px 3px 5px rgba(217, 0, 255,1) );
z-index:0;
}
#goods .section-body {
z-index:1;
}
#goods ul {display:flex; justify-content:start; flex-wrap:wrap;}
#goods ul li {flex-basis:calc( 92% / 5 ); background:#f5f5f5; margin:1%;padding:1rem;}
#goods ul li:nth-of-type(5n+1) {margin-left:0;}
#goods ul li:nth-of-type(5n) {margin-right:0;}
#goods ul li p {margin-bottom:0;text-align:center;}
#goods ul li p:nth-of-type(2) { font-size:1.6rem; line-height: 1.2; margin-top:.6rem;}
#goods ul li p span {display:block; font-size:1.2rem;}
#goods h4 {margin:1.5em 0 .5em; background: rgba(176, 18, 204,1); color:#fff; padding: .5rem 2rem;}
#goods p {margin-top:1.5rem; color:#FFF;}
#goods a {color:#FFF; text-decoration:underline;}
#goods ul {display: block;}
#goods ul li { color:#fff; background: transparent; margin: 0; padding: 0;}
#goods h5{color:#fff;}

/*notice*/
#notice.section{
color:#fff;
overflow:hidden;
}
#notice.section:before {
background: radial-gradient(circle, rgba(98,100,111,1) 0%, rgba(33,35,36,1) 100%);
}
#notice.section:after {
content:"";
position:absolute;
background: url("../img/bg-notice.gif") repeat top center;
background-size:25%;
z-index:0;
opacity:.3;
mix-blend-mode: multiply;
width:100%;
height:100%;
top:50%;
left:50%;
transform: translate(-50%,-50%);
}
#notice .section-header{
z-index:1;
}
#notice h2:after{
content:"";
position:absolute;
top:-25%;
left:-15%;
width:270px;
height:120px;
opacity:.5;
background: url("../img/title-notice.svg") no-repeat top center;
filter: drop-shadow( 0px 3px 5px rgba(255, 255, 255,1) );
z-index:0;
}
#notice .section-body {
margin-bottom:40px;
z-index: 1;
}
#notice .section-body h3 {
background: #000;
color: #fff;
padding: 0.25rem 1.5rem;
font-weight: 900;
margin-bottom:15px;
}
#fureai.section-body table{
border-collapse: collapse;
margin:0 auto;
}
#fureai.section-body table th{
background:#000;
}
#fureai.section-body td {
padding:1rem 2.5rem;
font-size:120%;
background:rgba(0,0,0,.4);
border:1px solid rgba(255,255,255,.5)
}
#fureai.section-body p{
margin-top: 15px;
}
#notice .section-body .linktopdf {
margin-top:25px;
text-align:center;
}
#notice .section-body .linktopdf a {
display:inline-block;
font-size:1.6rem;
font-weight:900;
color:#000;
background:#fff;
padding:1rem 2rem;
border-radius:1rem;
transition: .3s;
}
#notice .section-body .linktopdf a:hover {
color:#fff;
background:#000;
}
#notice .section-body .linktopdf span {
white-space: nowrap;
}
#notice ul li:last-child {
font-size:125%;
display:inline-block;
color:red;
position:relative;
}
#notice ul li:last-child a {
color: red;
font-weight: 900;
text-decoration: underline;
text-underline-offset: 4px;
text-decoration-thickness: 2px;
}

/*privacy-policy*/
#privacy-policy{
}
#privacy-policy.section:before {
background: transparent;
}
#privacy-policy .section-header{
margin-bottom: 25px;
}
#privacy-policy .section-body{
margin-bottom:50px;
}
#privacy-policy .section-body h3{
background: #B70;
background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 100%);
color:#111;
padding:.25rem 1rem;
margin-bottom:15px;
}
#privacy-policy .section-body a {
text-decoration:underline;
}




/*link_banners*/
#link_banners {
position:relative;
height:160px;
background: #F6F6F6;
display: flex;
align-items: center;
justify-content: center;
margin-top:30px;
box-shadow: none;
}
#link_banners.section{
box-shadow: none;
}
/*
#link_banners:before{
transform: skewY(-1.4deg) translateY(-1.4vw);
}
*/
#link_banners ul{
display:flex;
justify-content: space-between;
width:100%;
max-width:100%;
position:absolute;
top:50%;
left:50%;
transform: translate(-50%, -50%);
z-index: 1;
}
#link_banners li {
  flex-basis:calc(94% / 5);
  max-width:calc(94% / 5);
  text-align:center;
}
#link_banners li a {
  display:block;
}
#link_banners img {
vertical-align:middle;
width:100%;
max-width:240px;
}
#link_banners li a:hover img {
filter: blur(2px) brightness(1.3);
transition: all 0.3s linear;
}
#link_banners .row_inner {
  transition: 450ms all;
  white-space: nowrap;
  z-index:1;
  position:relative;
  padding:20px;
  overflow-x: scroll;
  width:100%;
  max-width:100%;
  -ms-overflow-style: none;scrollbar-width: none;
}
#link_banners .row_inner::-webkit-scrollbar{display:none;}
#link_banners .tile {
  position: relative;
  display: inline-block;
  width: 240px;
  height: 120px;
  margin-right: 20px;
  font-size: 10px;
  cursor: pointer;
  transition: 450ms all;
  transform-origin: center center;
}
#link_banners .tile:last-child {
  margin-right: 0;
}
#link_banners .tile_img {
  width: 240px;
  height: 120px;
  object-fit: cover;
}
#link_banners .tile_details {
  position: absolute;
  inset:0;
  opacity: 0;
  background: rgba(0,0,0,0.75);
}
#link_banners .tile_details:before {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  color:#FFF;
  content: 'クリックすると以下のサイトを\A新規ウインドウで開きます';
  white-space: pre;
  font-size: 10px;
  text-align: center;
  border:1px #FFF solid;
  padding:.5em 1em;
}
#link_banners .tile:hover .tile_details {
  opacity: 1;
}
#link_banners .tile_title {
  position: absolute;
  font-size: clamp(10px, .8rem, 1rem);
  width:100%;
  bottom:20%;
  padding: 0 10px;
  color:#FFF;
  text-align:center;
}
#link_banners .tile_title svg {
display:inline;
vertical-align:-1px;
width:12px;
height:12px;
}
#link_banners .row_inner:hover .tile {
  opacity: 0.75;
}
#link_banners .row_inner:hover .tile:hover {
  transform: scale(1.1);
  opacity: 1;
  z-index: 5;
}






/* footer */
#footer {
background: #B70;
background: linear-gradient(45deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);
position:relative;
overflow:visible;
}
#footer-menu-wrapper{
display: grid;
grid-template-columns: repeat(2, 1fr);
width: 80%;
padding:50px 0 60px;
max-width: 1280px;
margin: 0 auto;
}

/* footer-logo */
#footer-logo {
grid-area: 1 / 1 / 4 / 2;
}
#footer-logo p.title {
width: 90%;
/* margin: 0 auto; */
}
#footer-logo img{
max-width:480px;
}
#footer-logo p span {
display:block;
font-size:1.3rem;
}

/* footer-sns */
ul#footer-sns{
display: flex;
justify-content: center;
align-content: center;
flex-wrap: wrap;
padding: 10px 0;
}
#footer-sns li {
flex-basis:30px;
margin:0 2%;
}
#footer-sns li a {
display:block
}
#footer-sns svg {
width: 100%;
height: 30px;
fill: #000;
}
#footer-sns a:hover svg {
fill: #B70;
filter: drop-shadow( 0px 0px 1px #FFF ) drop-shadow( 0px 0px 2px #FFF ) drop-shadow( 0px 0px 3px #FFF ) drop-shadow( 0px 0px 5px rgba(255,255,255,.5) ) drop-shadow( 0px 0px 8px rgba(255,255,255,.5) );
transition: .3s;
}

/* footer-menu */
#footer-menu {
height: 10em;
display: flex;
flex-flow: column wrap;
}
#footer-menu li {
flex-basis: 25%;
display: flex;
align-content: center;
flex-wrap: wrap;
margin: 0 3px;
}
#footer-menu a{
display: block;
background: rgba(255,255,255,.5);
white-space: nowrap;
padding: 0.4rem 1rem;
text-align: center;
width: 100%;
transition: .3s;
}
#footer-menu a:hover {
background: #B70;
color:#FFF;
}

/* copyright */
#copyright {
display: flex;
justify-content: center;
align-content: center;
flex-wrap: wrap;
padding: 10px 0;
}
#copyright p{font-size: 1.2rem;}


/*page-top*/
#page-top {
display:none;
position: fixed;
z-index:100;
right: 15px;
bottom: 15px;
background: #B70;
padding: 10px;
border-radius: 50%;
box-shadow: 0 0 5px rgba(0,0,0,.5);
width:50px;
height:50px;
}
#page-top:hover {
background: #fff;
}
#page-top span {
position: relative;
display:block;
opacity: 0;
animation-iteration-count: infinite;
animation-duration: 2.0s;
animation-name: scroll;
}
#page-top span::before,#page-top span::after{
position: absolute;
display:block;
content: "";
border-bottom:3px solid #FFF;
left:0;
top:50%;
width:50%;
transform: rotate(-45deg) translateX(25%);
}
#page-top:hover span::before,#page-top:hover span::after {
border-color: #777;
}
#page-top span::after {
left:auto;
right:0;
transform: rotate(45deg) translateX(-25%);
}
#page-top span:nth-of-type(1) { animation-delay:.5s; top: 10px; }
#page-top span:nth-of-type(2) { animation-delay: .2s; top: 20px; }


/*share*/
#share {
background:#FFF;
margin-top:30px;
border-radius:2rem;
border-top: 2rem #602 solid;
border-bottom: 2rem #602 solid;
}
#share p {
position:relative;
font-weight:900;
color:#FFF;
background:#602;
padding:0 3rem 2rem;
margin-bottom:0;
}
#share span {
position: absolute;
top: -1.25rem;
left: 3rem;
}
#share ul {
padding:2rem;
display:flex;
justify-content:center;
}
#share li {
margin:0 2%;
}
#share li a {
display:block;
background:#602;
color:#fff;
padding:.5rem 1rem;
border-radius:.5rem;
font-weight:900;
white-space: nowrap;
}
#share svg {
width: 1.6rem;
height: 1.6rem;
vertical-align:-1px;
margin-right:5px;
fill:#fff;
}
#share li:nth-of-type(1) a{
background:#00acee;
}
#share li:nth-of-type(2) a{
background:#3b5998;
}
#share li:nth-of-type(3) a{
background:#00B900;
}
#share.layout-1column {
    width: 85%;
    margin: 0 auto 30px;
    max-width: 1280px;
}

/*follow*/
#follow {
background:#FFF;
margin-top:30px;
border-radius:2rem;
border-top: 2rem #777 solid;
border-bottom: 2rem #777 solid;
}
#follow p {
position:relative;
font-weight:900;
color:#FFF;
background:#777;
padding:0 3rem 2rem;
margin-bottom:0;
}
#follow span {
position: absolute;
top: -1.25rem;
left: 3rem;
}
#follow ul {
padding:2rem 3rem;
display:flex;
justify-content:center;
}
#follow li {
margin:0 2%;
}
#follow li a {
display:block;
background:#777;
color:#fff;
padding:.5rem 1rem;
border-radius:.5rem;
font-weight:900;
white-space:nowrap;
}
#follow svg {
width: 1.6rem;
height: 1.6rem;
vertical-align:-1px;
margin-right:5px;
fill:#fff;
}
#follow li:nth-of-type(1) a{
background:#00acee;
}
#follow li:nth-of-type(2) a{
background:#3b5998;
}
#follow li:nth-of-type(3) a{
background:#00B900;
}
#follow li:nth-of-type(4) a{
background:#2d8c3c;
}
#follow.layout-1column {
width:85%;
margin:0 auto;
max-width:1280px;
}
#follow.home {
display:flex;
justify-content:center;
align-content:center;
flex-wrap:wrap;
width:100%;
margin:0 auto;
background: #777;
margin-top: 0;
padding: 2rem;
border-radius: 0;
border: none;
}
#follow.home p {
flex-basis:25%;
padding:0;
text-align:center;
line-height:1.4;
border:1px #fff solid;
margin-right:3%;
}
#follow.home span {
position: absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%);
white-space:nowrap;
}
#follow.home ul {
flex-basis:50%;
padding:0;
}

/*modal-window*/
.modal-open{ cursor: pointer; text-decoration:underline;}
.modal-container{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(0,0,0,50%);
	padding: 40px 20px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
    box-sizing: border-box;
    z-index:101;
}
.modal-container:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
.modal-container.active{
	opacity: 1;
	visibility: visible;
}
.modal-body{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 500px;
	width: 90%;
}
.modal-close{
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	top: -40px;
	right: -40px;
	width: 40px;
	height: 40px;
	font-size: 40px;
	color: #fff;
	cursor: pointer;
}
.modal-content{
	background: #fff;
	text-align: left;
	padding: 30px;
	height: 525px;
}
.modal-content iframe{ width: 100%; border: none; height: 100%;}