@charset "UTF-8";
/* =======================================
    common
======================================= */
body {
	font-family:"Helvetica Neue", Helvetica, Arial, sans-serif; 
	color: #000;
	background-color:#FFF;
	font-size: 12px;
	text-align: center;
    margin: 0 !important; 
}
.sp_only {  }
.pc_only { display:none }

a { 
    color: #966CB9;
	text-decoration: none;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
a:link		{ color: #966CB9; text-decoration: none; }
a:visited	{ color: #966CB9; }
a:hover		{ color: #000;text-decoration: underline; }
a:active	{ color: #966CB9; }
@media screen and (min-width: 768px) {
    body {
        background-color: #1c1c1c;
    }
    .sp_only { display:none }
    .pc_only { display:block }
}


/* ==================================================
  Main image / Swiper
================================================== */
li.swiper-slide {
    margin: 0 auto 100px;
	width: calc(100% - 50px);
}
li.swiper-slide img {
    width: 100%;
    display: block;
    margin-bottom:10px;
}
#img_01 {
    width: 100%;
    margin:0px 0 20px;
}
#img_01 img:nth-child(1) {
    margin: 0px auto 50px;
}
#img_01 img:nth-child(2) {
    width: calc(100% - 50px);
    margin: 0px auto 100px;
}
#img_05 {
    margin:0px auto 0px;
}
/**640px*/
@media screen and (min-width: 768px) {
    :root {
      --swiper-theme-color: #ccc;
    }
    .swiper-pagination-bullet { background: #999!important;}
    .swiper-pagination-bullet-active { background: #f6f6f6!important;}
    .swiper-button-prev, .swiper-button-next {
        color: #666!important;
        transition: 0.3s;
    }
    .swiper-button-prev:after, .swiper-button-next:after {
        font-size: 35px!important;
    }
    .swiper-button-prev:hover,
    .swiper-button-next:hover {
        color: #999!important
    }
    li.swiper-slide img {
        display: none;
    }
    li.swiper-slide,
    li.swiper-slide:first-child{
        margin: 0 0 0 0 !important;
	    width: 100%;
        background:no-repeat #1c1c1c center/contain;
    }
    li#img_01 { background-image:url("../img/01.jpg") }
    li#img_02 { background-image:url("../img/02.jpg") }
    li#img_03 { background-image:url("../img/03.jpg") }
	li#img_04 { background-image:url("../img/04.jpg") }
    li#img_05 { background-image:url("../img/05.jpg") }
    /*最終ページのクレジット*/
    li#img_05 { 
        display:flex;
        align-items:center;
        justify-content: center
    }
    li#img_05 .credit {
        position: relative;
    }
    li#img_05 .base {
        width: auto;
        margin-bottom: 0;
        max-width: 100%;
        max-height: calc(100vh - 50px);
        display: block;
        visibility: visible;
    } 
    li#img_05 .link-wrap {
        position: absolute;
        bottom:0;
        right:0;
        z-index: 10;
        height: 28.5%;
        width: 100%;
    }
    li#img_05 .link-flex {
        height:100%;
        width: 100%;
        margin: 0 auto;
        display:flex;
        align-content: flex-start;
        align-items: flex-start;
        justify-content: center;
        flex-wrap: wrap;
    }
    li#img_05 .link-flex-inner {
        width: 22%;
    }
    li#img_05 .link_title { 
        display: block;
        width:100%;
    }
    li#img_05 .link_title img {
        display: block;
        width: 100%;
        margin-bottom: 0;
    }
    li#img_05 .link_credit a {
        display: block;
        margin: 2.5em 0 0;
        opacity: 1.0;
        transition: .3s ease-in-out;
    }
    li#img_05 .link_credit a:hover {
        opacity:0.5; 
    }
    li#img_05 .link_credit a img {
        display: block;
    }
    /*swiper control*/
    .swiper-container {
      overflow:visible !important;
    }
    .swiper-pagination-fraction,
    .swiper-pagination-custom,
    .swiper-container-horizontal > .swiper-pagination-bullets {
        background-color:rgba(0,0,0,1.0);
        position: fixed;
        bottom: 0;
        left: 235px;
        z-index: 1;
        
        display: flex;    
        align-items: center;
        justify-content:center;
        width:calc(100% - 470px);
        height: 50px;
    }
    .swiper-container-horizontal > .swiper-pagination-bullets {
        position: absolute;
        bottom:-50px;
    }
}

    
/* ==================================================
  Credit
================================================== */
.credit_sp {
	display: block;
	padding-top:10px;
	padding-bottom: 0px;
}
.credit_sp .profile {
	width: 80%;
	margin: 0 auto;
	text-align: left;
	letter-spacing: 0.1em;
	line-height: 160%;
	font-size: 13px;
}
.credit {
    padding-top:0px;
	}
.credit .pc_button,
.credit .blank_button {
    display: none;
}
.credit .sp_button {
	color: #000;
	background-color:#FFF; 
	border: #FFF 1px solid;
	display: block;
    margin: 0 auto;
    line-height: 1;
    font-size: 14px;
	width:11em;
	padding: 0.5em 1em 0.45em 0;
   /* transition: .3s ease-in-out;*/
	}
.credit_sp .sp_button {
	color: #000;
	background-color:#FFF; 
	border: #FFF 1px solid;
	display: block;
    margin: 0 auto;
    line-height: 1;
    font-size: 14px;
	width:11em;
	padding: 0.5em 1em 0.45em 0;
   /* transition: .3s ease-in-out;*/
	}
.credit .sp_button:hover {
    cursor: pointer;
    background-color: #000;
	border-color: #FFF;
	}
.credit_sp .sp_button:hover {
    cursor: pointer;
    background-color: #000;
	border-color: #FFF;
	}
.credit .sp_button:after {
	content: "";
	display: inline-block;
	width: 0.75em;
	height:0.75em;
	border-right: 1px solid #000;
	border-top: 1px solid #000;
	-webkit-transform: translate(1em, -0.2em) rotate(135deg);
	-ms-transform: translate(1em, -0.2em) rotate(135deg);
	transform: translate(1em, -0.2em) rotate(135deg);
	}
.credit_sp .sp_button:after {
	content: "";
	display: inline-block;
	width: 0.75em;
	height:0.75em;
	border-right: 1px solid #000;
	border-top: 1px solid #000;
	-webkit-transform: translate(1em, -0.2em) rotate(135deg);
	-ms-transform: translate(1em, -0.2em) rotate(135deg);
	transform: translate(1em, -0.2em) rotate(135deg);
	}
.credit_sp.margin_sp {
    margin-bottom: 5em;
    }
.credit .is-active {
	text-indent: 1em;
    }
.credit_sp .is-active {
	text-indent: 1em;
    }
.credit .is-active:after {
	-webkit-transform: translate(3em, 1em) rotate(-45deg);
	-ms-transform: translate(1em, -0.2em) rotate(-45deg);
	transform: translate(2.5em, 0.25em) rotate(315deg);
	}
.credit_sp .is-active:after {
	-webkit-transform: translate(3em, 1em) rotate(-45deg);
	-ms-transform: translate(1em, -0.2em) rotate(-45deg);
	transform: translate(2.5em, 0.25em) rotate(315deg);
	}
.credit .contents {
    color:#777;
	line-height:2.25;
	padding:15px 0 0;
    display: none;
	}
.credit_sp .contents {
    color:#777;
	line-height:2.25;
	padding:15px 0 0;
    display: none;
	}
.credit .contents a {
    display: block
}
.credit_sp .contents a {
    display: block
}
.credit_sp .staff {
	line-height: 180%;
	margin: 0px auto 50px;
}
@media screen and (min-width: 768px) {  
    /*credit*/
	.credit_sp {
	    display: none;
    }
    .credit {
        padding-top:0;
     }
    .credit .sp_button {
        display: none;
    }
    .credit .pc_button, 
    .credit .blank_button {
        cursor: pointer;
        margin: 0;
        font-size: 12px;
        text-align: left;

        color:#fff;
        background-color:rgba(0,0,0,1.0);
        position: fixed;
        bottom:-50px;
        left: 135px;
        z-index: 10;
        
        display:flex;
        align-content: center;
        align-items: center;
        padding:0 0 0 0;
        width:100px;
        height: 50px;
	}
    .credit .blank_button {
        z-index: 11;
    }
    .credit .pc_button:hover {
        text-decoration: underline
    }
    .credit .blank_button {
        cursor: default
    }
    .cedit-box {
        position: fixed;
        width: 100%;
        height: 100vh;
        background-color:rgba(0,0,0,0.8);
        z-index: 100;
        top:0;
        bottom:0;
        display: none;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
    }
    .cedit-box .contents {
        color: #fff;
        margin-bottom: 5em;
    }
    .cedit-box .contents a,
    .cedit-box .contents p{
        display: block;
        line-height: 3;
    }
    .credit .contents {
        visibility: hidden;
    }
    .line {
        background-color:rgba(0,0,0,1.0);
        position: absolute;
        bottom:0;
        z-index: -1;
        width:100%;
        height: 6vh;
        min-height: 50px;
    }
}


/* ==================================================
   Section / Item・Staff Credit
================================================== */
.credit-wrap .common-w {
    margin-bottom: 6em;
}
.credit-wrap ul.item {
    margin-bottom: 3em;
}
.credit-wrap ul.item li {
    font-size: 1.25em;
}
.credit-wrap ul.staff li {
    font-size: 1.25em;
}
@media (min-width:768px) {
     .credit-wrap {
        display: none;
    }
}


/* ==================================================
   Section / store_info
================================================== */ 
#store_info .store .common-w {
    border-top: solid rgba(0,0,0,0.3) 1px; 
    padding-top: 4.5em;
    padding-bottom:0em;
    line-height: 1.6;
    margin: 0 auto 4.5em;
    width: calc(100% - 50px);
}
#store_info .store .store-info {
    margin-bottom: 2.5em;
    font-size: 1em;
}
#store_info .store .store-info h4 {
    font-size: 1.5em;
    margin-bottom: 0.25em;
}
#store_info .store .store-list li {
    font-size: 120%;
    margin-bottom: 1.75em;
    letter-spacing: 0.05em;
}
#store_info .store .store-list li h5 {
    font-size: 1.1em;
    margin-bottom: 0.1em;
    line-height: 1.5;
    letter-spacing: 0.01em;
}
#store_info .store .store-list li a {
    display: block;
    text-decoration: none;
    color: rgba(150,108,185,1.00);
}
@media (min-width:768px) {
    #store_info .store .common-w {
        border: none;
        padding: 0 0 5em;
        color: #fff;
        margin: inherit;
        width: 30%;
        min-width: 600px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
     }
    #store_info .store .store-info {
        margin-bottom: 3em;
        font-size: 1em;
    }
    #store_info .store .store-info h4 {
        font-size: 1.5em;
        margin-bottom:0.5em;
    }
    #store_info .store .store-list li {
        margin-bottom: 2.25em;
    }
    #store_info .store .store-list li h5 {
        font-size: 1.1em;
        margin-bottom: 0.25em
    }
    #store_info .store .store-list li span {
        letter-spacing: 0.1em;
    }
    #store_info .store .store-list li a {
        display: inline-block;
        text-decoration: none;
        color: #fff;
    }
    #store_info .store .store-list li a:before {
        display: inline-block;
        content:" | ";
        padding:0 0.55em 0 0.3em;
        color: rgba(255,255,255,0.2);
        vertical-align:baseline;
    }
    #store_info .store .store-list li a:hover {
        color: rgba(150,108,185,1.00);
    }
    #store_info #store_button {
        margin-bottom: 0;
        font-size: 14px;
        border-top:none;
        cursor: pointer;

        background-color:rgba(0,0,0,1.0);
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 10;
        
        display: flex;    
        align-items: center;
        padding:0 0 0 30px;
        width: 105px;
        height: 50px;
        color:rgba(255,255,255,1.00);
        transition: 0.3s;
    }
    #store_info #store_button:hover {
        text-decoration:none;
        color: rgba(150,108,185,1.00)
    }
    #store_info #store_address {
        display: none;
        position: fixed;
        width: 100%;
        height: 100vh;
        background-color:rgba(0,0,0,0.8);
        z-index: 1000;
        top:0;
        overflow: scroll
    }
    #store_info #store_address #store_address_close {
        position: absolute;
        left:0;
        top:0;
        width: 100%;
        height: 100%;
        cursor: pointer;
    }
    #store_info #store_address #store_address_info {
        position: absolute;
        width: auto;
        height: auto;
        top:45%;
        left:50%;
        padding: 7em 3em 7em 3em;
        margin-top:-260px;
        margin-left: -215px;
    }
}


/* ==================================================
   Footer / Section / share-button
================================================== */
.share-button .common-w {
    margin-bottom: 4em;
}
.share-button ul {
    justify-content:center;
}
.share-button ul li a {
    margin: 0 0.25em;
    display: flex;
    align-items:center;
    justify-content: center;
    border-radius: 50%;
    border: rgba(0,0,0,0.5) 1px solid;
    line-height:1;
    width: 2.25em;
    height: 2.25em;
    background-color: rgba(0,0,0,0.0)!important;
}
.share-button ul, .share-button ul li, .share-button ul li i {
    color:rgba(0,0,0,0.7);
}
.share-button .fab,
.share-button .fa {
    text-align: center;
    font-size: 1.1em;
}
.share-button ul li a:hover {
    text-decoration: none;
    background-color: rgba(0,0,0,0.1)!important;
    border-color: rgba(255,255,255,0.00);
}


/* ==================================================
   Footer / copyright・scroll
================================================== */ 
footer .footer-wrap .common-w {
    border-top: solid rgba(0,0,0,0.3) 1px; 
    line-height: 1.6;
    margin: 0 auto;
    width: calc(100% - 50px);
    padding-top: 2.5em;
    padding-bottom: 3em;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
/* copyright */
footer .footer-wrap .copyright {
    display: flex;
    line-height: 1;
    align-items: center;
    justify-content: flex-start;
    font-style: normal;
    font-size: 1.15em;
    text-align: center;
}
footer .footer-wrap .copyright div:first-child {
    padding-top: 0.1em;
    margin-right: 0.25em;
}
footer .footer-wrap .copyright div:last-child {
    font-size: 1em;
    letter-spacing: 0.051em;
    font-weight: normal
}
/* scroll */
footer .footer-wrap .scroll-up {
    width: 3.5em;
    height: 3.5em;
    border: 1px solid rgba(1,1,1,0.3);
    border-radius: 50%;
    position: absolute;
    right: 0;
    cursor: pointer;
    background-color: rgba(0,0,0,0.00);
    transition: 0.3s;
}
footer .footer-wrap .scroll-up:hover {
    border: 1px solid rgba(1,1,1,0);
    background-color: rgba(0,0,0,0.1)
}
footer .footer-wrap .scroll-up a {
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1.0;
}
footer .footer-wrap .scroll-up a div {
    transform: rotate(45deg);
    width: 1.5em;
    height: 1.5em;
    margin-top: 1.35em;
    border-top: 1px solid rgba(0,0,0,0.5);
    border-left: 1px solid rgba(0,0,0,0.5);
}
@media (min-width:768px) {
    footer .footer-wrap .common-w {
        border-top: none; 
        padding:0;
        align-items: center;
        justify-content: center;
        position: inherit;
        width: inherit;
        }
    footer .footer-wrap .scroll-up {
        position: absolute;
        right:0.5em;
        top:3.75em;
        width: 3.5em;
    }
    footer .footer-wrap .copyright {
        font-size: 12px;
        background-color:rgba(0,0,0,1.0);
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: 10;
        justify-content: flex-end;
        padding:0 30px 0 0;
        width: 205px;
        height: 50px;
        color: #fff;
    }
}
