@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap');
/*---------------------------------------------
	variables
  ---------------------------------------------*/
:root {
--color-navy:#0a3976;
--color-navy:#0a3976;
--color-blue1:#2760ad;
--color-blue1:#2660ac;
}
/*---------------------------------------------
	font
  ---------------------------------------------*/
.zen-maru-gothic-light { font-family: "Zen Maru Gothic", sans-serif; font-weight: 300; font-style: normal; }
.zen-maru-gothic-regular { font-family: "Zen Maru Gothic", sans-serif; font-weight: 400; font-style: normal; }
.zen-maru-gothic-medium { font-family: "Zen Maru Gothic", sans-serif; font-weight: 500; font-style: normal; }
.zen-maru-gothic-bold { font-family: "Zen Maru Gothic", sans-serif; font-weight: 700; font-style: normal; }
.zen-maru-gothic-black { font-family: "Zen Maru Gothic", sans-serif; font-weight: 900; font-style: normal; }
/*---------------------------------------------
	リセット
  ---------------------------------------------*/
html { overflow-y: scroll; font-size: 62.5%; }
body, div, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, aside, header, address,
figure, figcaption { margin: 0; padding: 0; }
address, caption, cite, code, dfn, em, strong, th, var { font-style: normal; font-weight: normal; }
table { border-collapse: collapse; border-spacing: 0; }
caption,
th { text-align: left; }
q:before,
q:after { content: ""; }
object,
embed { vertical-align: top; }
h1, h2, h3, h4, h5, h6 { font-size: 1.3rem; font-weight:700; }
img, abbr, acronym, fieldset { border: 0; }
img { max-width: 100%; height: auto; vertical-align: top; -ms-interpolation-mode: bicubic; }
ul li { list-style-type: none; }
input,
select,
textarea,
button { font-family: inherit; font-size: inherit; cursor: pointer; }
button { background: none; border: 0 none; -webkit-appearance: none; -moz-appearance: none; appearance: none; outline: none; }
input:focus,
button:focus { outline: 0; }
*,
*:before,
*:after { -webkit-box-sizing: border-box; box-sizing: border-box; }
body { -webkit-text-size-adjust: 100%; -moz-text-size-adjust: 100%; -ms-text-size-adjust: 100%; text-size-adjust: 100%; }
/*
body
---------------------------------------------------------------------*/
body { background-color:#2f8dcd; 
    text-align:center; color:#fff; font-family: "Zen Maru Gothic", sans-serif; font-weight:700; font-style: normal; }
#wrapper { overflow:hidden; }
.contentsinner { margin:0 auto; width:min(900px,95vw); }

/*
a
---------------------------------------------------------------------*/
p.btn { text-align:center; padding-top:1em; }

a.btn { display:inline-block; padding:10px 0; width:min(362px,90vw); position: relative;
    text-decoration:none; color:var(--color-navy); font-size:min(1.9rem,5.8vw); line-height:70px;
    background:url(images/btn_white.png) center center no-repeat; background-size:contain; 
    transition:.2s; }
a.btn:hover { transform:translateY(-2px); }
a.btn img { transition:.2s; }
a.btn:hover img { transform:translateY(-2px); }

a.btn_yellow { background-image:url(images/btn_yellow.png); }

a.btn.btn_arrow { background-image:url(images/btn1_shadow.png); 
    width:259px; height:59px; line-height:32px; text-align:center; }
    .frame1 a.btn.btn_arrow { background-image:url(images/btn_white.png); line-height:35px; }

a.btn.btn_arrow::after { content:''; position:absolute; top:0; bottom:5px; right:30px; margin:auto; display:block; 
    width:20px; height:20px; background:url(images/icon_tri.svg) center right no-repeat; background-size:contain; 
    transition:.2s; }
    .frame1 a.btn.btn_arrow::after { bottom:0; right:25px; }
a.btn_arrow:hover::after { transform:translateX(2px); }

/*
h
----------------------------------------*/
h2 + .p1 { margin-top:1em; }

h2 > img { width:min(360px,100%);}
.h3 { height:37px; line-height:34px; margin-top:35px; font-size:min(1.9rem,5vw); }
.h3.h3a { background:url(images/h346px.svg) center center no-repeat; background-size:contain; width:346px; line-height:1.2; height:70px; }
.h3.h3b { background:url(images/h700px.svg) center center no-repeat; background-size:contain; width:min(700px,95vw); }
@media screen and (max-width:500px) {
    .h3.h3b { background-image:url(images/h500px.svg); }
}

.h4 { font-weight:900; font-size:min(2.4rem,6vw); }
.h4 .sub { font-size:1.9rem; display:block; }
.h4img > img { display:block; width:88px; height:auto; }
.h4 + .p1 { margin-top:.7em; }

/*
element
---------------------------------------------------------------------*/
p.lead { font-size:min(2.2rem,3.8vw); line-height:2.2; }

.p1 { font-size:min(1.4rem,3.5vw); line-height:1.8; }
.p1 + .p1,
.p1 + .note,
p + .btn { margin-top:.7em; }
.p_left { text-align:left; }

.lh2 { line-height:1.5; }

.note { font-size:1.1rem; } 
.note a { color:#fff; } 
.note a:hover { text-decoration:none; } 
.img + .note { margin-top:min(10px,3vw); }

.h3 + .p1 { margin-top:min(25px,4vw); }
.img + .h3 { margin-top:min(80px,14vw); }
/*
.frame1 .p1 { line-height:1.8; }
*/
dl.p1 { display:flex; flex-wrap:wrap; text-align:left; margin:0 auto; }
dl.p1 dt { width:70%; }
dl.p1 dd { width:30%; }

.border { display:inline-block; padding:0 .3em; line-height:1.4em; border:1px solid var(--color-navy); }
.border::first-letter { letter-spacing:1em; }

.img { display:block; }

/*
slick
--------------------------------------*/
.slide-container { margin:25px auto 0; }
@media screen and (max-width:699px) {
    .slide-container { 
        /* width:min(300px,90vw); */
        width:95vw; 
    }
    .slick-slide li.item > img { width:94vw; transform:translateX(.5vw); }
}

.slick-slide li.item > img { margin:auto; } 

.slick-dots li { width:min(20px,6vw); margin:0; }
.slick-dots li button:before { opacity:1; color:#357dc1; font-size:10px; transition:.2s; }
.slick-dots li button:hover:before { transform:scale(1.3); }
.slick-dots li.slick-active button:before { opacity:1; color:#fff; transform:none; }

.slick-prev, 
.slick-next,
.slick-prev:focus, 
.slick-next:focus {
    background-color:#69d5e7;
    border:2px solid var(--color-navy);
    border-radius:40px;
    width:50px; height:50px;
    transition:.2s;
    z-index:999;
}
.slick-prev:hover, 
.slick-next:hover {
    background-color:#7de;
    box-shadow:0 0 0 1px var(--color-navy);
    /* border-color:#2760ad; */
}
.slick-prev:before, 
.slick-next:before {
    content:''; display:block; margin:auto;
    position:absolute; top:0; bottom:0; left:4px; right:0;
    width:10px; height:15px;
    opacity:1;
    background:url(images/icon_tri.svg) center center no-repeat;
    background-size:contain;
    transition:.2s;
}
.slick-prev:hover:before, 
.slick-next:hover:before {
    transform:translateX(2px);
}
.slick-prev { top:calc(44% - 13px); left: -65px; transform:rotate(180deg); }
.slick-next { top:calc(44% + 13px); right:-60px; }
@media screen and (max-width:1030px) and (min-width:700px) {
    .slick-prev { left: -35px; }
    .slick-next { right:-30px; }
    .slick-prev:before, 
    .slick-next:before { left:0; right:5px; }
}
/*
@media screen and (max-width:460px) {
*/
@media screen and (max-width:699px) {
    .slick-prev { left: -30px; }
    .slick-next { right:-30px; }
    .slick-prev:before, 
    .slick-next:before { left:0; right:10px; }
}

/* 
ふわふわアニメーション 
-------------------------------------*/
.float-elm {
    pointer-events: none;
    transition: transform 0.1s ease-out;
    animation: floating 4s infinite ease-in-out; 
}
.float-elm-strong {
    animation: floating_strong 3s infinite ease-in-out; 
}
.float-elm-tiny {
    pointer-events: none;
    transition: transform 0.1s ease-out;
    animation: floating_tiny 3s infinite ease-in-out; 
}
.float-elm-tiny2 {
    pointer-events: none;
    transition: transform 0.1s ease-out;
    animation: floating_tiny2 7s infinite ease-in-out; 
}
.float-elm:nth-child(8n+4),
.float-elm-tiny:nth-child(8n+4) { animation-delay:.5s; }
.float-elm:nth-child(8n+1),
.float-elm-tiny:nth-child(8n+1) { animation-delay:1.0s; }
.float-elm:nth-child(8n+5),
.float-elm-tiny:nth-child(8n+5) { animation-delay:1.5s; }
.float-elm:nth-child(8n+2),
.float-elm-tiny:nth-child(8n+2) { animation-delay:2.0s; }
.float-elm:nth-child(8n+6),
.float-elm-tiny:nth-child(8n+6) { animation-delay:2.5s; }
.float-elm:nth-child(8n+3),
.float-elm-tiny:nth-child(8n+3) { animation-delay:3.0s; }
.float-elm:nth-child(8n+7),
.float-elm-tiny:nth-child(8n+7) { animation-delay:3.5s; }
@keyframes floating_strong {
    0% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-7px) rotate(3deg); }
    100% { transform: translateY(0) rotate(0deg); }
}
@keyframes floating {
    0% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-5px) rotate(3deg); }
    100% { transform: translateY(0) rotate(0deg); }
}
@keyframes floating_tiny {
    0% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-2px) rotate(3deg); }
    100% { transform: translateY(0) rotate(0deg); }
}
@keyframes floating_tiny2 {
    0% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-5px) rotate(1deg); }
    100% { transform: translateY(0) rotate(0deg); }
}

/*
スクロールエフェクト
---------------------------------------------*/
.fadein { /* アニメーション前の初期状態 */
  opacity: 0;
  transform: translate3d(0, -20px, 0); /* 縦に少しずらしておく */
  transition: opacity .5s linear, transform .5s ease-out;
}
.fadein.done { /* 発火（表示）状態 */
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
/* * 横並びの要素に時差（ディレイ）をつける  
.elements .fadein:nth-child(1) { transition-delay: .1s; }
.elements .fadein:nth-child(2) { transition-delay: .3s; }
.elements .fadein:nth-child(3) { transition-delay: .5s; }
.elements .fadein:nth-child(4) { transition-delay: .7s; }
.elements .fadein:nth-child(5) { transition-delay: .9s; }
.elements .fadein:nth-child(6) { transition-delay: 1.1s; }
.elements .fadein:nth-child(7) { transition-delay: 1.3s; }
.elements .fadein:nth-child(8) { transition-delay: 1.5s; }
.elements .fadein:nth-child(9) { transition-delay: 1.7s; }
.elements .fadein:nth-child(10) { transition-delay: 1.9s; }
.elements .fadein:nth-child(11) { transition-delay: 1.1s; }
.elements .fadein:nth-child(12) { transition-delay: 1.3s; }
.elements .fadein:nth-child(13) { transition-delay: 1.5s; }
.elements .fadein:nth-child(14) { transition-delay: 1.7s; }
.elements .fadein:nth-child(15) { transition-delay: 1.9s; }
.elements .fadein:nth-child(16) { transition-delay: 2.1s; }
.elements .fadein:nth-child(17) { transition-delay: 2.3s; }
.elements .fadein:nth-child(18) { transition-delay: 2.5s; }
.elements .fadein:nth-child(19) { transition-delay: 2.7s; }
.elements .fadein:nth-child(20) { transition-delay: 2.9s; }
.title .fadein { transition-delay:3s; }
*/

/* 
スライドイン 
------------------------------------------- */
.slidein {
  visibility: hidden;
}
.slidein-bg {
  position: absolute;
  z-index: 1000;
  display: block;
  overflow: hidden;
}
.slidein-bg span {
  position: absolute;
  display: block;
  width: 120%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #434c4d;
  -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0);
}

/*
assemble
----------------------------------------*/
.frame1 { border-radius:20px; border:4px solid var(--color-navy); width:min(900px,95vw);
    margin:10px auto 0; background:#fff; overflow:hidden; box-shadow:5px 5px 0 rgba(0,0,0,.2) ; 
    color:var(--color-navy); text-align:left; }
.frame1 h2 { padding:10px; text-align:center; font-size:3.3rem; font-weight:900; line-height:1.15; }
.frame1 h2 span { display:block; font-size:1.2rem; }
    #section_exhibition .frame1 h2 { background:linear-gradient(to right, #f7c7dc, #bae3f9); }
    #section_labtama .frame1 h2    { background:linear-gradient(to right, #fff9b1, #bde1da); }
    #section_campaign .frame1 h2   { background:linear-gradient(to right, #f9cdb3, #fff796); }
.frame1 + .btn { margin-top:35px; }
.frame1 .card { padding:min(6%,40px); }
.frame1 .card .p1 { margin-top:.6em; }
@media screen and (min-width:700px) {
    .frame1 .card { display:flex; justify-content:space-between; align-items:center; }
    .frame1 .card .img { padding-left:30px; text-align:right; }
    .frame1 .card .img img + span { margin-top:.5em; display:block; font-weight:800; }
    .frame1 .card_reverse { flex-direction:row-reverse; }
    .frame1 .card_reverse .img { padding-right:30px; padding-left:0; text-align:left; }
}
@media screen and (max-width:699px) {
    .frame1 .card { margin-top:20px; }
    .frame1 .card .img { margin:20px auto; }
    .frame1 .card_reverse .img { margin-bottom:0; }
    .frame1 .card:nth-of-type(1) .img { text-align:right; }
}
.frame1 .card + .card { padding-top:0; }
.frame1 .card::after { content:''; display:block; clear:both; }

.frame2 { padding:15px 20px;
    background:linear-gradient(to left, #fff796, #f9cdb3); }
.p1 + .frame2 { margin-top:20px; }

/*-------------------------------------------------------

section

--------------------------------------------------------*/
section { 
    position: relative; margin:-7vw auto 0; text-align:center; 
    background:url(images/dummy.png) center top no-repeat; background-size:100% auto; }
    @media screen and ( max-width:699px ) {
        section { background-size:cover; }
    }
    section > .contentsinner { 
        /*
        padding-top:min(120px,12vw); padding-bottom:calc(20px + 8vw); 
        padding:max(100px,16vw) 0 max(140px,22vw); 
        */
        padding:calc(3vw + 70px) 0 calc(7vw + 50px); 
    }

/* .border_char -------------------------------------------*/
.border_char { position:absolute; top:-50px; left:0; right:0; margin:0 auto;
    display:flex; justify-content:center; align-items:center;
    transform:scale(.5); max-width:90vw; 
    }
    .border_char img { margin:0 min(40px,6vw); }

/* #section_mainv
----------------------------------------------------------*/
#section_mainv { padding:0; margin:0 auto; background-color:var(--color-blue1); position: relative; padding-bottom:27px; }
#section_mainv .mainv_contents { background:url(images/dummy.png) center top no-repeat; background-size:100% auto; width:100%; }
#section_mainv .ticket { transition-delay:2.8s; position:absolute; bottom:0; left:0; right:0; transition:.3s; }
#section_mainv .ticket .btn { width:min(280px,65vw); height:54px; padding-top:13px; }
body.is-scrolled-out #section_mainv .ticket { opacity:1; }
/* #section_mainv .ticket .btn img { width:50%; } */
@media screen and (min-width:700px) {
    #section_mainv .mainv_contents { height:64.76vw; background-image:url(images/mainv_pc.webp); }
    #section_mainv .ticket .btn { max-width:30vw; }
    body.is-scrolled-out #section_mainv .ticket { position:fixed; bottom:10px; z-index:999; }
}
@media screen and (max-width:699px) {
    #section_mainv { padding-bottom:50px; }
    #section_mainv .mainv_contents { height:166vw; background-image:url(images/mainv_sp.webp); }
    #section_mainv .ticket { z-index:999; transition:.5s;}
    body.is-scrolled-out #section_mainv .ticket { position:fixed; bottom:2vw; left:4vw; text-align:left; }
    #section_mainv .ticket .btn { text-align:center; }
}

/* #section_outline
----------------------------------------------------------*/
#section_outline { margin-top:0; background-color:var(--color-blue1); }
#section_outline > .contentsinner { 
    /*padding:min(50px,3vw) 0vw min(190px,40vw); */
    padding:min(8vw,60px) 0 calc(7vw + 50px + 30px); 
    width:min(1100px,95vw); }
#section_outline .frame { 
    display:flex; justify-content:center; align-items:center;
    color:var(--color-navy); 
    padding:3% 5% 5%; margin:2em auto; width:min(840px,95vw); 
    background:var(--color-blue1) url(images/frame1.svg) center center no-repeat; background-size:100% 100%;
}
#section_outline .lead + .note { margin-top:2em; }
@media screen and (max-width:699px) {
    #section_outline .frame { 
        background-image:url(images/frame1b.svg); min-height:44vw; 
        padding:10% 8%;
    }
}

/* #section_exhibition
----------------------------------------------------------*/
#section_exhibition { background-image:url(images/bg1.svg); }
    #section_exhibition .border_char { top:-80px; flex-direction:column; transform:scale(.7); } /*あわたん*/
    #section_exhibition .border_char img:nth-child(1) { width:68px; height:auto; }
    #section_exhibition .border_char img:nth-child(2) { width:120px; height:auto; margin:10px 0 0 25px; }
#section_exhibition > .contentsinner { 
    padding:calc(3vw + 70px - 1.5vw) 0 calc(7vw + 50px - 4vw);
    }
#section_exhibition .period1 { margin-right:.5em; }
#section_exhibition .card:last-child { margin-bottom:0; }
@media screen and (min-width:700px) {
    /*#section_exhibition .card { margin-bottom:25px; }
    #section_exhibition .img { width:calc(100% - 270px); }
    */
    #section_exhibition .card:first-of-type .txt { padding-bottom:40px; }
    #section_exhibition .card:first-of-type .img { padding-top:20px; }
    #section_exhibition .img img { display:block; width:min(364px,35vw); max-width:initial; box-sizing:content-box; }
}

/* #section_labtama
----------------------------------------------------------*/
#section_labtama { background-image:url(images/bg2.svg); }
    #section_labtama .border_char { transform:scale(.3); top:calc(5vw - 90px); }
#section_labtama > .contentsinner { 
    padding:calc(2vw + 70px + 4vw - 10px) 0 calc(7vw + 50px - 5.1vw + 20px);     
    }
#section_labtama .p1 { margin-top:0px; }
#section_labtama .img { padding:0; max-width:initial; }
@media screen and (min-width:700px) {
    #section_labtama .p1 > span.ib { display:inline; }
    #section_labtama .img { margin-left:20px; width:min(473px,46vw); }
}
@media screen and (max-width:699px) {
    #section_labtama .img { margin-top:20px; text-align:center; }
    #section_labtama .card { margin-top:0; }
    #section_labtama .card .p1 { text-align:center; }
}

/* #section_campaign
----------------------------------------------------------*/
#section_campaign { background-image:url(images/bg3.svg); }
    #section_campaign .border_char { top:calc(-50px - 20px + 7vw); }
#section_campaign > .contentsinner { 
    padding:calc(2vw + 70px + 5.1vw - 20px) 0 calc(7vw + 50px + 1vw + 20px); 
}
@media screen and (min-width:700px) {
    #section_campaign  .frame2 { width:min(350px,100%); margin-top:15px; }
    #section_campaign .img img { width:min(280px,27vw); max-width:initial; }
}
#section_campaign .img { padding:0 10%; }
@media screen and (max-width:699px) {
    #section_campaign .img { margin:20px auto; }
    #section_campaign .card { margin-top:0; }
    #section_campaign .card .p1 { text-align:center; }
}

/* #section_goods
----------------------------------------------------------*/
#section_goods { background-image:url(images/bg4.svg); }
    #section_goods .border_char { top:calc(-65px + 1vw); }
#section_goods > .contentsinner { width:min(900px,95vw);
    padding-top:calc(3vw + 70px - 1vw - 20px);
}
#section_goods .note { text-align:left; }
.frame3 { margin-top:10px; width:100%; height:60px;
    display:flex; align-items:center;
    background:url(images/frame3.svg) center center no-repeat; background-size:contain;
}
.frame3 .note { padding:15px min(8%,3vw); text-align:left; }
@media screen and (max-width:699px) {
    #section_goods > .contentsinner { 
        padding-top:calc(3vw + 70px - 1vw - 10px);
    }
}
@media screen and (max-width:549px) {
    .frame3 { background-image:url(images/frame3sp.svg); height:28vw; }
    .frame3 .note { padding:15px 8%; }
}
/* #section_novelties
----------------------------------------------------------*/
#section_novelties { background-image:url(images/bg5.svg); }
    #section_novelties .border_char { top:calc(-50px + 1.5vw); }
/*#section_novelties > .contentsinner { padding-top:min(120px,21vw); padding-bottom:min(200px,22vw); }*/
#section_novelties .h3 { width:min(900px,90vw); height:52px; padding-top:10px; margin-top:10px; 
    font-size:min(1.3rem,3.4vw); line-height:1.3; }
#section_novelties .item-list { margin-top:20px; }

/* #section_access
----------------------------------------------------------*/
#section_access { background-image:url(images/bg6.svg); }
/*    #section_access .border_char { top:calc(-70px - 2vw); }*/
#section_access > .contentsinner { max-width:700px; 
    padding-bottom:min(19vw,130px); }
#section_access dl.p1 { width:min(360px,80vw); }
.map .img { margin-top:min(40px,8vw); }


/* --------------------------------------------------------

footer

----------------------------------------------------------*/
#footer {
    background-color: #fff;
    color: #333; /* 文字は暗く */
    padding:70px 0;
    text-align: center;
    position: relative;
}
#footer .border_char { top:-50px; }
#footer .border_char img { margin:0 25px; }
#footer .contentsinner { width:min(900px,95vw); }
#footer a img { transition:.3s; }
#footer a:hover img { transform:scale(.95); }
#footer .footer-logo { width:min(240px,47vw); height:auto; }
#footer .sns { margin:40px auto; }
#footer .sns a { margin:0 20px; display:inline-block; width:50px; }
#footer .sns a:nth-child(1) { transform:scale(.9); }
#footer .note { text-align:left; margin-top:20px; }
#footer .note:nth-of-type(2) { font-weight:500; }
#footer .copyright { margin-top:20px; }

/* #pagetop
----------------------------------------------------------*/
#pagetop { position:fixed; bottom:-120px; right:min(30px,3vw); transition:.5s; z-index:999; }
.is-scroll #pagetop { bottom:min(30px,2vw); }
#pagetop img { transition:.2s; display:block; width:min(95px,20vw); }
#pagetop:hover img { transform:translateY(-2px); }

/*---------------------------------------------------------

nav

----------------------------------------------------------*/
#global-nav { position:fixed; top:0; right:0; height:60px; z-index:999; }
#global-nav.on { height:100vh; overflow-y:auto; }
#global-nav.on:before { content:''; width:100vw; height:100vh; display:block;
    position:absolute; top:0; right:0; 
    background:rgba(0,0,0,.5);
    }

#global-nav ul { 
    background-color:var(--color-blue1); padding:70px 0 10px; min-height:100vh; 
    width:min(450px,100vw); box-sizing:content-box; text-align:center; 
    transform:translateX(500px); transition:.2s; }
#global-nav.on ul { transform:translateX(0); }
#global-nav ul li { margin:0 auto min(2vw,20px); display:block; }
#global-nav ul li a { height:min(70px,20vw); width:min(365px,80vw); display:block;
    margin:0 auto;
    background:url(images/btn_white.png) center center no-repeat; 
    background-size:contain;
    display:flex; align-items:center; justify-content:center; 
    transition:.8s; }
#global-nav ul li a:hover { transform: translateY(-3px); }
#global-nav ul li a img { display:block; max-width:300px; height:auto; transition:.1s; max-height:6.5vw; }
#global-nav ul li a:hover img { transform: translateY(-3px); }
#global-nav ul li.nav-ticket a { background-image:url(images/btn_yellow.png); }

#btn-menu {
  position:fixed; top:13px; right:15px; cursor: pointer;
  z-index: 1000; overflow: hidden;
  width: 50px; height: 50px;
  background-color:var(--color-blue1);
  border:2px solid #fff; border-radius: 5px; 
  transition: background-color 0.2s linear;
}
#btn-menu button {
  position: relative;
  display: block; width: 100%; height: 100%; 
  color: #fff; font-size: 1rem; line-height: 100px; 
  background-color: transparent; 
  border: 0 none; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;
}
#btn-menu:after {
  content: ""; z-index: 1;
  position: absolute; top:0; bottom:0; right: 0; left: 0; margin:auto;
  display: block; width:31px; height:3px;
  background-color: #fff; border-radius:3px;
  transition: transform 0.3s ease-out, top 0.3s ease-out, width 0.3s ease-out;
}
#btn-menu button:before {
  content: ""; z-index: 1;
  position: absolute; top:10px; right: 0; left: 0; margin: 0 auto;
  display: block; width:31px; height:3px;
  background-color: #fff; border-radius:3px;
  transition: width 0.3s ease-out, right 0.3s ease-out;
}
#btn-menu button:after {
  content: ""; cursor: pointer;
  position: absolute; top:34px; right: 0; left: 0; margin: 0 auto; z-index: 1;
  display: block; width:31px; height:3px;
  background-color: #fff; border-radius:3px;
  transition: transform 0.3s ease-out, top 0.3s ease-out;
}
#btn-menu.on { border-color:var(--color-blue1); }
#btn-menu.on:after { width:35px; /*top:10px;*/ transform: rotate(45deg); }
#btn-menu.on button:before { width: 0 !important; right:31px; }
#btn-menu.on button:after { width:35px; top:22px; transform: rotate(-45deg); }
@media screen and (min-width:700px) {
    #btn-menu:hover:after { width:22px !important; }
    #btn-menu button:hover:before { width:12px; }
}

/*------------------------------------------------------

調整

-------------------------------------------------------*/
.ib { display:inline-block; }

@media screen and (min-width:700px) {
    .show-sp { display:none !important; }
    .center-sp { text-align:center; }
}
@media screen and (max-width:699px) {
    .show-pc { display:none !important; }
}
