@charset "UTF-8";
/* CSS Document */
* {
 font-family: 'Noto Sans JP', 'Abel', sans-serif;
}
.mb-20 {
 margin-bottom: 20px;
}
.txt_color {
 color: #FFFFFF;
}
.txt-left {
 text-align: left;
}
small {
 background: #000000;
 display: block;
 color: #FFF;
 padding: 16px;
 text-align: center;
 font-size: .65em;
}
/*ヘッダー背景*/
#vegas {
 min-height: 90vh;
 width: 100%;
}
/*フレックスボックス*/
.flex-container-lc {
 display: -ms-flexbox;
 display: -webkit-box;
 display: -webkit-flex;
 display: flex;
 -webkit-box-orient: horizontal;
 -webkit-box-direction: normal;
 -ms-flex-flow: row wrap;
 flex-flow: row wrap;
 -webkit-box-pack: start;
 -ms-flex-pack: start;
 justify-content: flex-start;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -ms-flex-line-pack: center;
 align-content: center;
}
.flex-container-cc {
 display: -ms-flexbox;
 display: -webkit-box;
 display: -webkit-flex;
 display: flex;
 -webkit-box-orient: horizontal;
 -webkit-box-direction: normal;
 -ms-flex-flow: row wrap;
 flex-flow: row wrap;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 -webkit-box-align: center;
 -ms-flex-align: center;
 align-items: center;
 -ms-flex-line-pack: center;
 align-content: center;
}
.flex-container-product {
 display: -ms-flexbox;
 display: -webkit-box;
 display: -webkit-flex;
 display: flex;
 -webkit-box-orient: horizontal;
 -webkit-box-direction: normal;
 -ms-flex-flow: row wrap;
 flex-flow: row wrap;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 -webkit-box-align: start;
 -ms-flex-align: start;
 align-items: flex-start;
 -ms-flex-line-pack: start;
 align-content: flex-start;
 position: relative;
}
.flex-box-ttl {
 color: #FFFFFF;
 background-color: #0064ff;
 padding: 20px;
 font-size: 1.5em;
 letter-spacing: .2em;
 line-height: 1.5;
}
.flex-box-ttl span {
 font-size: .6em;
 color: #FC0;
}
.flex-box {
 -ms-flex-preferred-size: auto;
 flex-basis: auto;
 -ms-flex-item-align: center;
 align-self: center;
 padding: 10px;
 line-height: 1.5;
}
.flex-box-product {
 -ms-flex-preferred-size: auto;
 flex-basis: auto;
 -ms-flex-item-align: center;
 align-self: center;
 padding: 10px;
 line-height: 1.5;
}
.flex-box-navibtn {
 -ms-flex-preferred-size: 80px;
 flex-basis: 80px;
 -ms-flex-item-align: stretch;
 align-self: stretch;
 padding: 10px;
 line-height: 1.5;
 color: #666666;
 font-size: .7em;
}
.flex-box-navibtn a {
 display: block;
}
.flex-box-navibtn a:hover {
 color: #0064FF;
}
/*背景設定*/
section {
 padding: 10px;
 background: #efefef;
}
.bg-blue {
 background: #0064ff;
}
.parallax-bg {
 background-attachment: fixed;
 background-position: center;
 background-size: cover;
 background-repeat: no-repeat;
}
/*各背景の画像*/
.img-bg-01 {
 background-image: url('../images/bg-images/bg1.jpg');
 min-height: 100vh;
}
.img-bg-02 {
 background-image: url('../images/bg-images/bg4.jpg');
 min-height: 100vh;
}
.img-bg-03 {
 background-image: url('../images/bg-images/bg3.jpg');
 min-height: 100vh;
}
/*スクロールするコンテンツ*/
.scrollbox1 {
 color: #333;
 min-height: 50vh;
 text-align: center;
 font-size: .85em;
}
/*見出し装飾*/
.heading10 {
 position: relative;
 font-size: 2em;
 line-height: 1.2;
 font-weight: bold;
}
.heading10 span {
 position: relative;
 z-index: 2;
 color: #fff;
}
.heading10::before {
 content: attr(data-en);
 position: absolute;
 top: -30px;
 left: 0;
 color: rgba(255, 255, 255, .3);
 font-size: 40px;
 text-transform: uppercase;
 z-index: 1;
}
.heading100 {
 position: relative;
 font-size: 2em;
 line-height: 1.2;
 font-weight: bold;
}
.heading100 span {
 position: relative;
 color: #fff;
}
.heading100::before {
 content: attr(data-en);
 position: absolute;
 top: -60px;
 left: 0;
 color: rgba(255, 255, 255, .3);
 font-size: 70px;
 text-transform: uppercase;
 z-index: 1;
}
.heading100::before {
 content: attr(data-en);
 position: absolute;
 top: -60px;
 left: 0;
 color: rgba(255, 255, 255, .3);
 font-size: 70px;
 text-transform: uppercase;
 z-index: 1;
}
.sub-ttl {
 display: block;
 text-align: center;
 font-size: .5em;
 font-weight: normal;
 background: #000000;
 padding: 8px;
 margin-top: 10px;
}
/*固定*/
/*横スクロール*/
.horizontal-list {
 overflow-x: scroll;
 white-space: nowrap;
 -webkit-overflow-scrolling: touch;
}
.item {
 display: inline-block;
 margin: 8px 4px 16px;
}
.position_cc {
 width: 65px;
 position: absolute;
 top: 54%;
 left: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
}
.productname {
 font-family: 'Bebas Neue', cursive;
 font-size: 1.5em;
 line-height: 1;
 margin-bottom: 20px
}
.gallery li {
 background: #FFFFFF;
 padding: 8px;
 margin: 10px 10px;
 border-radius: 3px;
 text-align: center;
}
/*ギャラリー内のイメージは横幅100%にする*/
.gallery img {
 max-width: 300px;
 width: 100%;
 height: auto;
 vertical-align: bottom; /*画像の下にできる余白を削除*/
 margin-bottom: 24px;
}
/* アニメーションCSS
.fadeUp {
 animation-name: fadeUpAnime;
 animation-duration: .7s;
 animation-fill-mode: forwards;
 opacity: 0;
}
@keyframes fadeUpAnime {
 from {
  opacity: 0;
  transform: translateY(100px);
 }
 to {
  opacity: 1;
  transform: translateY(0);
 }
}
.fadeUpTrigger {
 opacity: 1;
} */

/*基本ボタン*/
.button {
 font-size: .9em;
 padding: 8px 16px;
 line-height: 1;
 text-decoration: none;
 color: #ffffff;
 border-radius: 3px;
 transition: 0.3s;
 background-color: #0064FF;
}
.button:hover {
 background: #039;
}
#footer04 {
 background: #222;
 width: 100%;
 padding: 18px;
}
#footer04 .inner-block {
 max-width: 1280px;
 margin: 0 auto;
}
#footer04 .cont {
 display: -webkit-box;
 display: -webkit-flex;
 display: -ms-flexbox;
 display: flex;
 padding: 30px 0;
}
#footer04 .cont-item {
 display: block;
 width: calc(100% / 4);
}
#footer04 .nav {
 display: block;
 color: #ccc;
}
#footer04 .nav .ttl {
 display: block;
 margin: 30px 0 6px;
 font-size: 1em;
 color: #ccc;
}
#footer04 .nav .ttl:first-child {
 margin-top: 0;
}
#footer04 .nav .ttl + .ttl {
 margin-top: 10px;
}
#footer04 .nav ul {
 display: block;
 font-size: 1em;
 line-height: 2;
}
#footer04 .nav li {
 display: block;
 font-size: .85em;
 line-height: 2;
}
#footer04 .nav li:first-child {
 margin-top: 0;
}
#footer04 .nav li ul {
 margin: 0 0 2em 2em;
}
#footer04 .nav li li {
 position: relative;
}
#footer04 .nav li li:before {
 position: absolute;
 top: 50%;
 left: -10px;
 content: "";
 display: block;
 width: 4px;
 height: 1px;
 background-color: #fff;
}
@media screen and (max-width:1023px) {
 #vegas {
  min-height: 500px;
 }
 .img-bg-01 {
  min-height: 500px;
 }
 .img-bg-02 {
  min-height: 500px;
 }
 .img-bg-03 {
  min-height: 500px;
 }
 .scrollbox1 {
  min-height: 250px;
 }
 #footer04 .cont {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  justify-content: space-between;
 }
 #footer04 .cont-item {
  display: block;
  width: 48%;
 }
 #footer04 .cont-item:nth-child(n+3) {
  margin-top: 30px;
 }
 #footer04 .nav ul {
  margin: 0;
  font-size: 1em;
 }
 #footer04 .nav ul + .ttl {
  margin-top: 10px;
 }
 #footer04 .nav li {
  font-size: .85em;
 }
}