@charset "utf-8";

html, body {
height: 100%;
}

body, text {
font-family: 'Noto Sans JP', sans-serif;
word-break: break-all;
-webkit-text-size-adjust: 100%;
letter-spacing: 1px;
font-weight: 400;
line-height: 1.6;
margin: 0;
}

::-moz-focus-inner {
border: 0;
}

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

img {
vertical-align: bottom;
width: 100%;
}

h1, h2, h3, h4, p {
margin: 0;
font-size: 100%;
font-weight: normal;
}

ul, li {
list-style: none;
margin: 0;
padding: 0;
}


/* Main visual area ------------------------- */
.video_box {
overflow: hidden;
width: 100%;
height: 55.7vw;
}

.video {
z-index: 1;
position: absolute;
width: 100%;
height: 55.7vw;
}

.overlay::after {
position: absolute;
top: 0;
left: 0;
display: block;
width: 100%;
height: 100%;
content: "";
background-color: rgba(0, 0, 0, 0);
background-image: radial-gradient(#000 15%, transparent 0), radial-gradient(#000 15%, transparent 0);
background-position: 0 0, 10px 10px;
background-size: 0px 0px;
}

/* under 800 ------------------------- */
@media (max-width: 800px) {
.video_box {
height: 56.2vw;
}

.video {
height: 56.2vw;
}
}


/* Common ------------------------- */
.contents_wrap {
padding: 100px 0;
}

.contents_wrap2 {
padding: 0 0 100px;
}

.contents_inner {
width: 1100px;
margin: 0 auto;
overflow: hidden;
}

/* under 1200 ------------------------- */
@media (max-width: 1200px) {
.contents_inner {
width: 750px;
}
}

/* under 800 ------------------------- */
@media (max-width: 800px) {
.contents_wrap {
padding: 50px 0;
}

.contents_wrap2 {
padding: 0 0 50px;
}

.contents_inner {
width: 90%;
}
}


/* Header ------------------------- */
.home .logo {
width: 440px;
margin: 100px auto 0;
}

.subpage .logo {
width: 300px;
margin: 50px auto;
}

/* under 800 ------------------------- */
@media (max-width: 800px) {
.home .logo {
width: 300px;
margin: 50px auto 0;
}

.subpage .logo {
width: 210px;
margin: 20px auto;
}
}


/* globalMenu ------------------------- */
.globalMenuSp {
box-shadow: 0px 0px 1px rgba(0, 0, 0, .2);
z-index: 10002;
top: 0;
left: auto;
right: 0;
margin: auto;
position: fixed;
transform: translateX(100%);
transition: all .8s;
width: 300px;
text-align: center;
background-color: rgba(0, 0, 0, 1);
height: 100%;
overflow: auto;
-webkit-overflow-scrolling: touch;
-ms-overflow-style: none;
}

.globalMenuSp ul {
width: 80%;
margin: 80px auto 40px;
padding: 0;
}

.globalMenuSp li {
list-style-type: none;
padding: 15px 10px;
width: 100%;
border-bottom: 1px solid #383838;
}

.globalMenuSp li a {
font-family: 'Bebas Neue', cursive;
text-decoration: none;
font-size: 26px;
color: #969696;
letter-spacing: 4px;
}

.globalMenuSp.active {
transform: translateX(0px);
}

.navToggle {
display: block;
position: fixed;
right: 15px;
top: 15px;
width: 50px;
height: 48px;
cursor: pointer;
z-index: 10005;
background: #000;
text-align: center;
border-radius: 5px;
}

.navToggle span {
display: block;
position: absolute;
width: 28px;
border-bottom: solid 2px #fff;
-webkit-transition: .5s ease-in-out;
-moz-transition: .5s ease-in-out;
transition: .5s ease-in-out;
left: 11px;
}

.navToggle span:nth-child(1) {
top: 12px;
}

.navToggle span:nth-child(2) {
top: 23px;
}

.navToggle span:nth-child(3) {
top: 34px;
}

.navToggle span:nth-child(4) {
border: none;
}

.navToggle.active span:nth-child(1) {
top: 23px;
left: 11px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
top: 23px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}

/* under 800 ------------------------- */
@media (max-width: 800px) {
.globalMenuSp {
width: 100%;
}

.globalMenuSp ul {
margin: 80px auto 20px;
}

.navToggle {
width: 50px;
height: 48px;
top: 8px;
right: 8px;
}
}


/* video ------------------------- */
.video-js.vjs-custom.vjs-16-9 {
  width: 100%;
  margin: 0 auto;
  height: auto;
  padding: 0px;
  background-color: #fff;

}
.video-js {
  line-height: 0;
  background-color: transparent;
}

.video-js.vjs-custom .vjs-tech {
  position: static;
}

.video-js.vjs-custom .vjs-control-bar {
  width: auto;
  justify-content: flex-end;
  background-color: transparent;
  padding: 0 6px 0 0;
  margin-bottom: 10px;
}


/*各種ボタンの削除*/
.video-js.vjs-custom .vjs-control-bar .vjs-play-control{
  display: none;
}
.video-js.vjs-custom .vjs-control-bar .vjs-progress-control{
  display: none;
}
.video-js.vjs-custom .vjs-control-bar .vjs-remaining-time{
  display: none;
}
.video-js.vjs-custom .vjs-control-bar .vjs-playback-rate{
  display: none;
}
.video-js.vjs-custom .vjs-control-bar .vjs-picture-in-picture-control{
  display: none;
}
.video-js.vjs-custom .vjs-control-bar .vjs-fullscreen-control {
  display: none;
}

/*常にボタン表示*/
.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  opacity: 1!important;}


/* Other ------------------------- */
.center, .center2 {
text-align: center;
}

.bold {
font-weight: bold;
}

.fa-external-link-alt {
font-size: 20px;
}

.block_main_ttl {
text-align: center;
font-size: 60px;
font-family: 'Bebas Neue', cursive;
}

.block_sub_ttl {
text-align: center;
font-size: 30px;
font-family: 'Bebas Neue', cursive;
line-height: 35px;
border-bottom: 4px solid #000;
width: 200px;
padding-bottom: 8px;
margin: 0 auto 10px;
letter-spacing: 2px;
}

.block_sub_ttl_jp {
text-align: center;
font-size: 23px;
font-weight: 700;
margin-bottom: 40px;
letter-spacing: 3px;
}

.catchcopy {
font-size: 30px;
font-weight: 700;
margin-bottom: 30px;
}

.section_wrap {
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
height: 300px;
position: relative;
}

.section_ttl {
color: #fff;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
height: 100px;
}

.commit_bg {
background-image: url(image/commit-img-1.jpg);
}

.message_wrap {
margin: 50px auto 100px;
}

.message_wrap2 {
margin: 50px auto 0;
}

.map_area {
margin: 30px auto;
max-width: 800px;
width: 100%;
}

.sns_area {
margin: 30px auto 0;
width: 100px;
overflow: hidden;
}

.insta {
float: left;
width: 38%;
}

.twitter {
float: right;
width: 38%;
}

.foot_contents {
background-color: #000;
padding: 10px 0;
}

.copyright {
font-size: 12px;
text-align: center;
margin: 30px auto;
}

.fixed-bottom2 {
bottom: -66px;
opacity: 0;
width: 100%;
position: fixed;
background-color: #000;
padding: 16px 0;
z-index: 999;
}

.fixed-bottom2 li {
float: left;
width: 50%;
border-left: 1px solid #969696;}

.fixed-bottom2 li a {
text-decoration: none;
}

.fixed-bottom2 li:first-child {border-left: none;}

.fixed-bottom-text {
font-size: 13px;
color: #969696;
text-align: center;
}

.subpage_ttl {
text-align: center;
font-family: 'Bebas Neue', cursive;
color: #969696;
font-size: 50px;
padding: 30px 0;
background-color: #000;
letter-spacing: 2px;
}

.shoplist_wrap {
padding: 20px 0;
border-bottom: 1px solid #000;
}

.shop_name {
font-weight: bold;
font-size: 110%;
}

.shop_site a {
display: block;
padding: 5px 0 7px;
margin-top: 5px;
width: 110px;
text-align: center;
background-color: #000;
color: #fff;
text-decoration: none;
}

.link_btn a {
background-color: #000;
display: block;
text-align: center;
font-family: 'Bebas Neue', cursive;
color: #969696;
font-size: 50px;
padding: 30px 0;
background-color: #000;
letter-spacing: 2px;
text-decoration: none;
}

.fa-chevron-right {
font-size: 30px;
display: table-cell;
vertical-align: middle;
}

/* under 800 ------------------------- */
@media (max-width: 800px) {
body, text {
font-size: 14px;
}

.brsp {
display: block;
}

.pc {
display: none;
}

.center2 {
text-align: left;
}

.block_main_ttl {
font-size: 34px;
}

.block_sub_ttl {
font-size: 22px;
line-height: 28px;
width: 160px;
padding-bottom: 8px;
margin: 0 auto 10px;
}

.block_sub_ttl_jp {
font-size: 20px;
margin-bottom: 20px;
}

.catchcopy {
font-size: 24px;
}

.section_wrap {
height: 140px;
}

.section_ttl {
height: 70px;
}

.message_wrap {
margin: 20px auto 50px;
}

.message_wrap2 {
margin: 20px auto 0;
}

.map {
margin-top: 30px;
}

.subpage_ttl {
font-size: 30px;
padding: 20px 0;
}

.link_btn a {
font-size: 30px;
padding: 20px 0;
}

.fa-chevron-right {
font-size: 20px;
}
}

/* over 800 ------------------------- */
@media (min-width: 801px) {
.sp {
display: none;
}
}


