@charset "UTF-8";
body {
  font-size: 16px;
  line-height: 1.9;
  font-family: "Zen Kaku Gothic New", Helvetica, Arial, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
  overflow-x: hidden;
  background: #F0F0F0;
}

a {
  display: block;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
  color: #aaa;
  opacity: 100%;
}

img {
  width: 100%;
}
img:hover {
  opacity: 100%;
}

a img {
  transition: 0.4s ease-out;
}
a img:hover {
  opacity: 70%;
}

p {
  font-size: 16px;
  line-height: 24px;
}

.pc-none {
  display: none;
}

.sp-none {
  display: block;
}

.pc-reverse {
  flex-direction: row-reverse;
}

.contents-wrap {
  overflow-x: hidden;
  position: relative;
}

/*------------fix-btn--------------*/
.fix-btn {
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.8s ease;
}
.fix-btn a img {
  box-shadow: 0px 0px 14px #7D818C;
  border-radius: 60px;
}

.fix-btn.show {
  opacity: 1;
  pointer-events: auto;
}

/*------------MV--------------*/
#mv {
  width: 100vw;
  height: auto;
  background: url(../img/mv-bg.jpg) no-repeat center/cover;
  animation: changeBg 2s ease-in-out 1s forwards;
}
#mv .mv-content {
  max-width: 580px;
  width: 100%;
  margin: auto;
  padding: 100px 30px;
  box-sizing: border-box;
  opacity: 0;
  transition: opacity 2s ease-in-out;
  animation: showText 2s ease-in-out 3s forwards;
}
#mv .mv-content .mv-btn {
  max-width: 320px;
  width: 90%;
  margin: 30px auto;
}
#mv .mv-content .mv-btn a img {
  box-shadow: 0px 0px 14px #7D818C;
  border-radius: 60px;
}

@keyframes changeBg {
  0% {
    background-image: url(../img/mv-bg.jpg);
  }
  100% {
    background-image: url(../img/mv-bg-after.jpg);
  }
}
@keyframes showText {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.mv-bottom {
  margin-top: -1px;
}

/*------------intro--------------*/
#intro .intro-container {
  width: 100%;
  margin-bottom: 80px;
}
#intro .intro-container .title-intro {
  width: 100%;
  max-width: 730px;
  margin: auto;
}
#intro .intro-container .title-intro img {
  box-sizing: border-box;
  padding: 30px;
}
#intro .intro-container .intro-text {
  max-width: 680px;
  width: 100%;
  margin: auto;
  box-sizing: border-box;
  padding: 30px;
}
#intro .intro-container .intro-text img {
  width: 100%;
  box-sizing: border-box;
}
#intro .intro-container .intro-bg {
  display: flex;
  justify-content: space-between;
}
#intro .intro-container .intro-bg .intro-img {
  width: 24%;
}
#intro .intro-container .intro-bg .intro-img:nth-child(1) img {
  max-width: 380px;
  margin-top: -80px;
}
#intro .intro-container .intro-bg .intro-img:nth-child(2) img {
  max-width: 230px;
  margin: 110px 10px 50px 300px;
}
#intro .intro-container .intro-bg .intro-img:nth-child(3) {
  max-width: 300px;
}
#intro .intro-container .intro-bg .intro-img:nth-child(3) img {
  margin: -280px 0 0 30px;
}

/*------------coat--------------*/
#coat {
  background: url(../img/coat-bg.jpg) no-repeat;
  background-size: cover;
}
#coat .coat-container {
  position: relative;
  padding: 120px 30px;
}
#coat .coat-container .title-coat {
  width: 100%;
  max-width: 730px;
  margin: 0 auto 20px;
  box-sizing: border-box;
}
#coat .coat-container .title-coat img {
  padding: 30px;
  box-sizing: border-box;
}
#coat .coat-container .side-pan {
  width: 50%;
  position: absolute;
  top: 10%;
  left: -30px;
}
#coat .coat-container .coat-main {
  max-width: 1020px;
  width: calc(100% - 60px);
  margin: auto;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: end;
}
#coat .coat-container .coat-main img {
  width: 100%;
}
#coat .coat-container .coat-main img:nth-child(1) {
  max-width: 430px;
  width: 50%;
  margin-right: 40px;
}
#coat .coat-container .coat-main img:nth-child(2) {
  max-width: 530px;
  width: 50%;
}
#coat .coat-container .coat-main::after {
  content: url(../img/sub-pan.png);
  position: absolute;
  right: -130px;
  bottom: -230px;
}
#coat .coat-container .coat-voice {
  max-width: 1020px;
  width: 100%;
  margin: auto;
  display: flex;
  align-items: start;
  margin-top: 60px;
}
#coat .coat-container .coat-voice img {
  max-width: 300px;
  width: 40%;
}
#coat .coat-container .coat-voice p {
  margin: 0 60px;
  color: white;
}
#coat .coat-container .coat-voice p span {
  color: #C0B399;
}

/*------------detail--------------*/
#detail .detail-container {
  padding: 120px 0;
}
#detail .detail-container .title-detail {
  width: 100%;
  max-width: 730px;
  margin: 0 auto 50px;
  box-sizing: border-box;
}
#detail .detail-container .title-detail img {
  padding: 20px;
  box-sizing: border-box;
}
#detail .detail-container .detail-content {
  width: 100%;
  display: flex;
  align-items: center;
}
#detail .detail-container .detail-content .detail-img {
  max-width: 840px;
  min-width: 560px;
  width: 100%;
}
#detail .detail-container .detail-content .detail-text {
  max-width: 520px;
  display: flex;
  flex-direction: column;
  margin: -50px 6% 0;
}
#detail .detail-container .detail-content .detail-text img {
  max-width: 560px;
  width: 100%;
  margin-bottom: 50px;
}
#detail .detail-container .detail-content .detail-text p span {
  color: #988153;
}
#detail .detail-container .detail-content:nth-of-type(3) {
  margin-top: 80px;
}
#detail .detail-container .detail-content:nth-of-type(3) .detail-text {
  align-items: flex-end;
}

/*------------iron--------------*/
#iron {
  width: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
  color: #fff;
}
#iron .iron-container {
  margin: 0;
  padding: 0;
}
#iron .iron-container .title-iron {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto 50px;
  box-sizing: border-box;
  padding: 120px 0 50px;
}
#iron .iron-container .title-iron img {
  padding: 20px;
  box-sizing: border-box;
}
#iron .iron-container .parallax .para-bg {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) translateY(0);
  will-change: transform;
  min-width: 100%;
  min-height: 120%;
  -o-object-fit: cover;
     object-fit: cover;
}
#iron .iron-container .iron-item {
  position: relative;
  overflow: hidden;
  height: 420px;
  margin: 0;
}
#iron .iron-container .iron-item .iron-text {
  height: 100%;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 10%;
}
#iron .iron-container .iron-item .iron-text img {
  max-width: 450px;
  width: 100%;
  margin-bottom: 30px;
}
#iron .iron-container .iron-item .iron-text p {
  max-width: 520px;
}
#iron .iron-container .iron-item:nth-child(even) .iron-text {
  align-items: flex-end;
}
#iron .iron-container .iron-item:nth-child(3) .iron-text img {
  max-width: 260px;
}
#iron .iron-container .iron-item:nth-child(4) .iron-text img {
  max-width: 230px;
}

/*------------slide--------------*/
#slide {
  padding: 120px 0;
  background-color: white;
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
#slide .scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
#slide .scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0;
}
#slide .scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
#slide .scroll-infinity__item {
  width: 520px;
  margin: 20px;
}
#slide .scroll-infinity__item > img {
  width: 100%;
}

/*------------lineup--------------*/
#lineup .lineup-title {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 150px;
}
#lineup .lineup-title img {
  max-width: 720px;
  width: 100%;
}
#lineup .lineup-outer {
  display: flex;
  width: 100vw;
}
#lineup .lineup-outer .lineup-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 150px 20px;
}
#lineup .lineup-outer .lineup-content img {
  max-width: 440px;
}
#lineup .lineup-outer .lineup-content a {
  padding-top: 30px;
}
#lineup .lineup-outer .lineup-content:nth-child(1) {
  background: #E8E4DB;
}
#lineup .lineup-outer .lineup-content:nth-child(2) {
  background: #eaeaea;
}

/*------------tradition--------------*/
#tradition {
  background: url(../img/tradition-bg.jpg) no-repeat;
  background-size: cover;
  color: white;
  padding-bottom: 360px;
}
#tradition .title-tradition {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 150px;
}
#tradition .title-tradition img {
  max-width: 630px;
  width: 100%;
}
#tradition .tradition-container {
  width: 100%;
  display: flex;
  justify-content: center;
}
#tradition .tradition-container .tradition-content {
  position: relative;
  max-width: 570px;
  display: flex;
  flex-direction: column;
  margin-left: 60px;
  margin-right: 20px;
}
#tradition .tradition-container .tradition-content p {
  margin: 60px 0;
}
#tradition .tradition-container .tradition-content .tradition-logo {
  position: absolute;
  max-width: 280px;
  right: 0;
  bottom: 0;
  margin-top: 20px;
}

/*------------message--------------*/
#message .message-bg {
  margin-top: -200px;
}
#message .message-btn {
  position: relative;
  max-width: 360px;
  width: 100%;
  margin: -4% auto 140px;
}
#message .message-btn a img {
  box-shadow: 0px 0px 14px #7D818C;
  border-radius: 60px;
}

/*------------footer--------------*/
footer .footer-logo {
  background: white;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 70px 30px;
}
footer .footer-logo img {
  max-width: 280px;
  width: 100%;
}
footer .footer-logo a {
  margin-top: 40px;
}
footer .footer-logo a img {
  max-width: 260px;
  width: 100%;
}
footer .footer-logo a:hover {
  opacity: 50%;
}
footer .copyright {
  background: black;
  color: white;
}
footer .copyright p {
  font-size: 10px;
  text-align: center;
  padding: 30px 20px;
}

/*----------------------------responsive-1500px--------------------------*/
@media screen and (max-width: 1500px) {
  /*------------coat--------------*/
  #coat .coat-container .side-pan {
    top: 18%;
  }
  /*------------tradition--------------*/
  #tradition .tradition-container .tradition-content .tradition-logo {
    max-width: 220px;
  }
}
/*----------------------------responsive-1080px--------------------------*/
@media screen and (max-width: 1080px) {
  p {
    font-size: 14px;
  }
  /*------------intro--------------*/
  #intro .intro-container .title-intro {
    max-width: 560px;
    margin-bottom: 50px;
  }
  #intro .intro-container .intro-bg .intro-img:nth-child(2) img {
    margin: 110px 10px 50px 100px;
  }
  /*------------coat--------------*/
  #coat .coat-container .side-pan {
    top: 20%;
  }
  #coat .coat-container .coat-main::after {
    content: url(../img/sub-pan.png);
    width: 200px;
  }
  /*------------detail--------------*/
  #detail .detail-container .detail-content .detail-img {
    min-width: 40%;
  }
  #detail .detail-container .detail-content .detail-text {
    margin: -50px 4% 0;
  }
  #lineup .lineup-outer .lineup-content img {
    max-width: 320px;
  }
  /*------------tradition--------------*/
  #tradition .title-tradition {
    padding: 100px;
  }
  #tradition .tradition-container .tradition-content .tradition-logo {
    max-width: 180px;
  }
}
/*----------------------------responsive-640px--------------------------*/
@media screen and (max-width: 640px) {
  .pc-none {
    display: block;
  }
  .sp-none {
    display: none;
  }
  .pc-reverse {
    flex-direction: row;
  }
  /*------------MV--------------*/
  #mv {
    background: url(../img/mv-bg-sp.jpg) no-repeat center/cover;
    animation: changeBgSp 2s ease-in-out 1s forwards;
  }
  #mv .mv-content {
    padding: 60px 30px 40px;
  }
  #mv .mv-content .mv-text img {
    max-width: 360px;
    margin: auto;
  }
  @keyframes changeBgSp {
    0% {
      background-image: url(../img/mv-bg-sp.jpg);
    }
    100% {
      background-image: url(../img/mv-bg-after-sp.jpg);
    }
  }
  .mv-btn {
    max-width: 280px;
    width: 100%;
    margin: -42% auto 90px;
    box-shadow: 0px 0px 14px #7D818C;
    border-radius: 60px;
  }
  /*------------fix-btn--------------*/
  .fix-btn {
    bottom: 20px;
    width: 100%;
    margin: auto;
    right: inherit;
  }
  .fix-btn a img {
    max-width: 340px;
    width: 100%;
    margin: auto;
  }
  /*------------intro--------------*/
  #intro .intro-container .title-intro {
    max-width: 400px;
    margin-bottom: 50px;
  }
  /*------------coat--------------*/
  #coat .coat-container {
    padding: 80px 0 120px;
  }
  #coat .coat-container .coat-img-sp img {
    width: 100%;
  }
  #coat .coat-container .title-coat {
    margin: 0 auto -20px;
    max-width: 400px;
  }
  #coat .coat-container .coat-main::after {
    content: none;
  }
  #coat .coat-container .coat-voice {
    position: relative;
    flex-direction: column;
  }
  #coat .coat-container .coat-voice img {
    max-width: 240px;
    width: 100%;
    margin-left: 20px;
    z-index: 10;
  }
  #coat .coat-container .coat-voice p {
    margin: 80px 40px 0;
    z-index: 10;
  }
  #coat .coat-container .coat-voice::after {
    content: url(../img/sub-pan.png);
    position: absolute;
    right: -130px;
    top: 0px;
    z-index: 0;
  }
  /*------------detail--------------*/
  #detail .detail-container {
    padding: 70px 0;
  }
  #detail .detail-container .title-detail {
    margin: 0 auto 30px;
    max-width: 340px;
  }
  #detail .detail-container .detail-content {
    flex-direction: column;
    align-items: center;
    margin-top: 10px;
  }
  #detail .detail-container .detail-content .detail-img {
    min-width: auto;
    width: 100%;
    max-width: 100%;
  }
  #detail .detail-container .detail-content .detail-text {
    margin: 0;
    max-width: 90%;
    align-items: flex-start;
  }
  #detail .detail-container .detail-content .detail-text img {
    margin-bottom: 40px;
  }
  #detail .detail-container .detail-content .detail-text p {
    font-size: 15px;
    line-height: 1.8;
  }
  #detail .detail-container:nth-of-type(3) {
    flex-direction: column;
  }
  #detail .detail-container:nth-of-type(3) .detail-text {
    align-items: inherit;
  }
  /*------------iron--------------*/
  #iron .iron-container .title-iron {
    max-width: 480px;
  }
  #iron .iron-container .iron-item-sp div {
    padding: 20px;
  }
  #iron .iron-container .iron-item-sp div img {
    width: auto;
    height: 52px;
  }
  #iron .iron-container .iron-item-sp div p {
    padding: 20px 0;
    color: black;
  }
  /*------------slide--------------*/
  #slide {
    padding: 40px 0 70px;
  }
  #slide .scroll-infinity__item {
    width: 300px;
    margin: 6px;
  }
  /*------------lineup--------------*/
  #lineup .lineup-title {
    padding: 80px 60px 40px;
    background: url(../img/lineup-bg-sp.jpg) no-repeat;
    background-size: cover;
  }
  #lineup .lineup-title img {
    max-width: 270px;
  }
  #lineup .lineup-outer {
    flex-direction: column;
  }
  #lineup .lineup-outer .lineup-content {
    width: auto;
    padding: 40px;
  }
  #lineup .lineup-outer .lineup-content img {
    max-width: 320px;
  }
  /*------------tradition--------------*/
  #tradition {
    padding-bottom: 260px;
  }
  #tradition .title-tradition {
    padding: 80px 20px 40px;
  }
  #tradition .title-tradition img {
    max-width: 400px;
  }
  #tradition .tradition-container {
    flex-direction: column;
  }
  #tradition .tradition-container .tradition-img {
    margin-left: 20px;
  }
  #tradition .tradition-container .tradition-content {
    margin: 20px;
  }
  #tradition .tradition-container .tradition-content img {
    max-width: 240px;
    width: 100%;
    margin: 20px auto 0;
  }
  #tradition .tradition-container .tradition-content p {
    margin: 40px 20px;
  }
  #tradition .tradition-container .tradition-content .tradition-logo {
    max-width: 180px;
    position: relative;
    margin: auto;
  }
  /*------------message--------------*/
  #message .message-bg {
    margin-top: -200px;
  }
  #message .message-text-sp {
    width: 100%;
    max-width: 280px;
    margin: -6% auto 0;
  }
  #message .message-btn {
    max-width: 280px;
    margin: 40px auto 70px;
  }
  /*------------footer--------------*/
  footer .footer-logo img {
    max-width: 210px;
  }
  footer .footer-logo a img {
    max-width: 240px;
  }
  footer .copyright p {
    padding: 30px 20px;
  }
}/*# sourceMappingURL=style.css.map */