@charset "UTF-8";
/* ---------------------------------------------
 INDEX STYLES
 --------------------------------------------- */
.intro {
  position: relative;
}
.intro:before {
  content: "";
  display: block;
  position: absolute;
  top: 65%;
  bottom: auto;
  right: 9.1145833333%;
  left: auto;
  width: 3.90625%;
  height: 0;
  padding: 2.6041666667% 0 0;
  background: url(../images/common/moyou1.png) no-repeat 0 0;
  background-size: contain;
}

.accessSection {
  position: relative;
}
.accessSection:before {
  content: "";
  display: block;
  position: absolute;
  top: 15%;
  bottom: auto;
  right: auto;
  left: 9.7395833333%;
  width: 3.90625%;
  height: 0;
  padding: 2.6041666667% 0 0;
  background: url(../images/common/moyou1.png) no-repeat 0 0;
  background-size: contain;
}

.ttl {
  margin: 0;
  font-size: 2.5em;
}

/* --------------------
   visualSection
-------------------- */
.visualSection .slick-dotted.slick-slider {
  margin-bottom: 0;
}

.visualSection .slick-slide {
  padding: 0;
}

.intro .lead {
  margin-bottom: 8%;
}
.intro .lead:before, .intro .lead:after {
  content: "";
  display: block;
  position: absolute;
}
.intro .lead:before {
  width: 88px;
  height: 31px;
  left: 5%;
  bottom: 0;
  background: url(../images/common/cloud1.svg) no-repeat 0 0;
  background-size: contain;
}
.intro .lead:after {
  width: 159px;
  height: 55px;
  right: 0;
  bottom: 0;
  background: url(../images/common/cloud2.svg) no-repeat 0 0;
  background-size: contain;
}
@media print, screen and (max-width: 1292px) {
  .intro .lead:before {
    width: 6.8111455108vw;
    height: 2.399380805vw;
  }
  .intro .lead:after {
    width: 12.306501548vw;
    height: 4.2569659443vw;
  }
}

/* -------------------------
 menuSection
 --------------------------- */
@media print, screen and (min-width: 768px) {
  .menuSection {
    padding-bottom: 5.2083333333% !important;
  }
}
.menuSection .container {
  max-width: 1230px;
}
.menuSection .sec_type01 {
  padding-top: 5.2083333333%;
  padding-bottom: 5.2083333333%;
  gap: 0 7%;
}
@media print, screen and (min-width: 1920px) {
  .menuSection .sec_type01 {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
.menuSection .sec_type01 .ttl {
  position: relative;
  writing-mode: tb;
  display: flex;
  overflow: visible;
  align-items: center;
  font-size: 2.5em;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.3em;
}
.menuSection .sec_type01 .ttl .en {
  margin: 0.75em 0;
  font-size: 0.35em;
  letter-spacing: 0.15em;
  writing-mode: initial;
  display: block;
  color: var(--keyColor);
  transform: rotate(-15deg);
  font-size: 0.475em;
  font-weight: normal;
  font-family: "Sacramento", cursive;
}

.sec_type01 .ttl.ico {
  height: fit-content;
  padding-left: 0;
}
@media print, screen and (min-width: 768px) {
  .sec_type01 .ttl.ico {
    padding-bottom: 2.25em;
  }
}
.sec_type01 .ttl.ico:before {
  left: 50%;
  top: auto;
  bottom: 0;
  transform: translate(-50%, 0);
  width: 2em;
  height: 2em;
  background: url(../images/index/ico_ttl_top.png) no-repeat 0 0;
  background-size: 100% auto;
}
.sec_type01 .ttl.ico.senbei:before {
  background-position: 0 -2em;
}
.sec_type01 .ttl.ico.musubi:before {
  background-position: 0 -4em;
}
.sec_type01 .ttl.ico.maki:before {
  background-position: 0 -6em;
}

.menuSection .sec_type01 .colWrap .txt {
  flex-grow: 1;
  padding: 0 1%;
}

.menuSection .sec_type01 .colWrap .txt .btn_more {
  margin: 3.8em 0 0;
}

.menuSection .sec_type01 .colWrap .img {
  flex: 0 1 55%;
  padding: 0 5% 0 0;
  min-width: calc(250px + 10%);
  z-index: 1;
}
.menuSection .sec_type01 .colWrap .img .imgItem {
  position: relative;
}
.menuSection .sec_type01 .colWrap .img .imgItem:before, .menuSection .sec_type01 .colWrap .img .imgItem:after {
  content: "";
  display: block;
  position: absolute;
}

.menuSection .sec_type01 .colWrap.rtl .img {
  padding: 0 0 0 5%;
}

.menuSection.menu_about .sec_type01 .colWrap .img .imgItem {
  max-width: 493px;
}
.menuSection.menu_about .sec_type01 .colWrap .img .imgItem:before {
  width: 32.2515212982%;
  height: 0;
  padding: 26.369168357% 0 0;
  left: 0;
  bottom: 0;
  background: url(../images/index/deco_01_bl.svg) no-repeat 0 0;
  background-size: contain;
}
.menuSection.menu_about .sec_type01 .colWrap .img .imgItem:after {
  width: 21.906693712%;
  height: 0;
  padding: 21.7038539554% 0 0;
  right: 0;
  top: 0;
  background: url(../images/index/deco_01_tr.svg) no-repeat 0 0;
  background-size: contain;
  z-index: -2;
}
.menuSection.menu_product .sec_type01 .colWrap .img .imgItem {
  max-width: 563px;
}
.menuSection.menu_product .sec_type01 .colWrap .img .imgItem:before {
  width: 25.7548845471%;
  height: 0;
  padding: 25.3996447602% 0 0;
  left: 0;
  bottom: 0;
  background: url(../images/index/deco_02_bl.svg) no-repeat 0 0;
  background-size: contain;
  transform: translate(-38%, -8%);
}
.menuSection.menu_product .sec_type01 .colWrap .img .imgItem:after {
  width: 23.2682060391%;
  height: 0;
  padding: 17.9396092362% 0 0;
  right: 0;
  top: 0;
  background: url(../images/index/deco_02_tr.svg) no-repeat 0 0;
  background-size: contain;
  transform: translate(-28%, 16%);
  z-index: 1;
}
.menuSection.menu_quality .sec_type01 .colWrap .img .imgItem {
  max-width: 459px;
}
.menuSection.menu_quality .sec_type01 .colWrap .img .imgItem:before {
  width: 18.082788671%;
  height: 0;
  padding: 16.5577342048% 0 0;
  left: 0;
  top: 0;
  background: url(../images/index/deco_03_tl.svg) no-repeat 0 0;
  background-size: contain;
  transform: translate(51%, 22%);
}
.menuSection.menu_quality .sec_type01 .colWrap .img .imgItem:after {
  width: 32.6797385621%;
  height: 0;
  padding: 25.2723311547% 0 0;
  right: 0;
  bottom: 0;
  background: url(../images/index/deco_03_br.svg) no-repeat 0 0;
  background-size: contain;
  transform: translate(12%, 12%);
  z-index: 1;
}

.menuSection .img .img-inner {
  position: relative;
  max-width: 467.769px;
  z-index: -1;
}

.menuSection.menu_about .ttl.ico:before,
.menuSection.menu_product .ttl.ico:before {
  margin-left: 0.15em;
}

.menuSection.menu_about .img .img-inner:before {
  padding: 87.366% 0 0;
}

.menuSection.menu_product .img .img-inner:before {
  padding: 80.94262295% 0 0;
}

.menuSection.menu_quality .img .img-inner:before {
  padding: 89.580835446% 0 0;
}

.menuSection.menu_about .img .img-inner {
  clip-path: url(#mask1);
}

.menuSection.menu_product .img .img-inner {
  clip-path: url(#mask2);
}

.menuSection.menu_quality .img .img-inner {
  clip-path: url(#mask3);
}

/* -------------------------
 inquirySection
 --------------------------- */
.inquirySection .box {
  margin: 0 auto;
  max-width: 1122px;
}
.inquirySection .box + .box {
  margin-top: 8.9552238806%;
}
.inquirySection .box a {
  display: block;
  position: relative;
  color: #fff;
}
.inquirySection .box a:before {
  content: "";
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.7;
  background: #53656c;
  border: 1.875em solid #a0a0a0;
  background: #354E57;
  border: 1.875em solid #707070;
  mix-blend-mode: hard-light;
  z-index: 1;
}
.inquirySection .box a .ttl {
  position: relative;
  color: #fff;
  position: absolute;
  display: grid;
  place-content: center;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  letter-spacing: 0.09em;
  font-size: 2.1875em;
  z-index: 2;
}
.inquirySection .box a .ttl .en {
  display: block;
  position: relative;
  font-family: "Sacramento", cursive;
  font-size: 0.5428571429em;
  color: #fff;
  font-weight: normal;
  transform: rotate(-15deg);
}
.inquirySection .box a:hover:before {
  background: #AFDCD5;
  border-color: #909090;
}
.inquirySection .box a:hover .ttl {
  color: var(--fontColor);
}
.inquirySection .box a:hover .ttl .en {
  color: inherit;
}

.inquirySection .container {
  padding-bottom: 6%;
}

.inquirySection {
  position: relative;
}
.inquirySection:before {
  content: "";
  display: block;
  position: absolute;
  top: 7%;
  bottom: auto;
  right: auto;
  left: 9.1666666667%;
  width: 4.0104166667%;
  height: 0;
  padding: 2.65625% 0 0;
  background: url(../images/common/moyou1_d.png) no-repeat 0 0;
  background-size: contain;
}

.inquirySection .container {
  position: relative;
}
.inquirySection .container:before {
  content: "";
  display: block;
  position: absolute;
  top: auto;
  bottom: 0;
  right: auto;
  left: -1.5625%;
  width: 16.171875%;
  height: 0;
  padding: 16.09375% 0 0;
  background: url(../images/common/moyou3_1.svg) no-repeat 0 0;
  background-size: contain;
}

.inquirySection .container {
  position: relative;
}
.inquirySection .container:after {
  content: "";
  display: block;
  position: absolute;
  top: -13%;
  bottom: auto;
  right: 0.0703125%;
  left: auto;
  width: 10.78125%;
  height: 0;
  padding: 10.703125% 0 0;
  background: url(../images/common/moyou3_2.svg) no-repeat 0 0;
  background-size: contain;
}

/* -------------------------
 accessSection
 --------------------------- */
.accessSection {
  margin-top: 0;
}
@media only screen and (min-width: 1920px) {
  .accessSection {
    margin-top: 0;
  }
}
.accessSection:before {
  display: none;
}
.accessSection .container {
  max-width: 1112px;
}
.accessSection .inner {
  padding: 0 2.5em;
}
.accessSection .map {
  max-width: 818px;
}
.accessSection .map:before {
  content: "";
  display: block;
  padding: 52.20049% 0 0;
  padding: 52.2004889976% 0 0;
}

.accessSection .accessFrame {
  position: relative;
}
.accessSection .accessFrame:before {
  content: "";
  display: block;
  position: absolute;
  top: -15%;
  bottom: auto;
  right: auto;
  left: 9.7395833333%;
  width: 3.90625%;
  height: 0;
  padding: 2.6041666667% 0 0;
  background: url(../images/common/moyou1.png) no-repeat 0 0;
  background-size: contain;
}

.accessSection .accessFrame {
  position: relative;
}
.accessSection .accessFrame:after {
  content: "";
  display: block;
  position: absolute;
  top: auto;
  bottom: 10%;
  right: 10.8333333333%;
  left: auto;
  width: 3.4895833333%;
  height: 0;
  padding: 3.1770833333% 0 0;
  background: url(../images/common/moyou2.png) no-repeat 0 0;
  background-size: contain;
}

/* index幅991px以下から
------------------------------------------------------------*/
@media only screen and (max-width: 991px) {
  .intro .lead {
    margin-bottom: 3%;
    padding-bottom: 5%;
  }
  .menuSection .sec_type01 .ttl {
    font-size: 2em;
  }
  .menuSection .sec_type01 .colWrap .txt .btn_more {
    max-width: 15em;
  }
  .inquirySection .box a .ttl {
    font-size: 1.8em;
  }
}
/* index幅767px以下から
------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
  .ttl {
    font-size: 1.8571428571em;
  }
  .sec_type01 .ttl {
    letter-spacing: 0.1em;
  }
  .sec_type01 .ttl.ico {
    padding-bottom: 0;
  }
  .sec_type01 .ttl.ico:before {
    bottom: auto;
    top: 50%;
    left: 0;
    margin: -0.1em 0 0;
    width: 1.3076923077em;
    height: 1.3076923077em;
    transform: translate(calc(-100% - 0.3em), -50%);
    background-size: 100% auto;
  }
  .sec_type01 .ttl.ico.senbei:before {
    background-position: 0 -1.3076923077em;
  }
  .sec_type01 .ttl.ico.musubi:before {
    background-position: 0 -2.6153846154em;
  }
  .sec_type01 .ttl.ico.maki:before {
    background-position: 0 -3.9230769231em;
  }
  .visualFrame img {
    height: 600px;
    object-fit: cover;
  }
  .visualFrame .slider .slick-slide {
    position: relative;
  }
  .visualFrame .slider .catch {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    justify-content: flex-end;
    padding: 7.9em 2.6em;
    z-index: 1;
  }
  .visualFrame .slider .catch p {
    font-size: 1.15em;
    writing-mode: tb;
    font-weight: bold;
    line-height: 1.75;
    letter-spacing: 0.54em;
    text-shadow: 0 0 2px rgb(255, 255, 255), 0 0 0.35em rgb(255, 255, 255), 0 0 0.5em rgb(255, 255, 255), 0 0 0.5em rgb(255, 255, 255), 0 0 0.75em rgb(255, 255, 255), 0 0 1em rgb(255, 255, 255), 0 0 1.5em rgb(255, 255, 255);
  }
  .intro {
    margin-top: -15%;
  }
  .intro:before {
    width: 34px;
    height: 23px;
  }
  .intro .lead {
    padding-top: 15%;
    padding-bottom: 12%;
  }
  .intro .lead:before {
    width: 58px;
    height: 20px;
    bottom: auto;
    top: 0;
  }
  .intro .lead:after {
    width: 80px;
    height: 28px;
  }
  .menuSection .sec_type01 .colWrap .txt .btn_more {
    margin: 2em auto 0;
    max-width: 17.2em;
    padding: 1em 1.57em;
  }
  .menuSection .sec_type01 {
    padding-top: 4em;
    padding-bottom: 4em;
  }
  .menuSection .sec_type01 .ttl {
    margin: 0 auto 2em;
    font-size: 2em;
    writing-mode: initial;
    width: fit-content;
  }
  .menuSection .sec_type01 .ttl .en {
    margin: 0 -0.5em 0 0;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(100%, -50%) rotate(-15deg);
  }
  .menuSection .sec_type01 .colWrap .txt {
    margin: 2.75em 0 0;
    padding: 0;
  }
  .menuSection .sec_type01 .colWrap .txt .btn_more {
    font-size: 13px;
    max-width: 18.47em;
    margin: 3em auto 0;
    padding: 1.16em 1.57em;
  }
  .menuSection .sec_type01 .colWrap .img .imgItem {
    max-width: 250px !important;
    margin: 0 auto;
  }
  .inquirySection .container {
    padding-top: 3%;
  }
  .inquirySection:before {
    width: 34px;
    height: 23px;
    top: 3.5%;
  }
  .inquirySection .box a:before {
    border-width: 15px;
  }
  .inquirySection .box a .ttl {
    font-size: 1.6428571429em;
  }
  .inquirySection .box a .ttl .en {
    font-size: 0.5652173913em;
  }
  .inquirySection .box a img {
    width: 100%;
  }
  .accessSection {
    padding: 1em 0 2em !important;
  }
  .accessSection .inner {
    padding: 0 1.3em;
  }
  .accessSection .ttl {
    padding-left: 0 !important;
  }
  .accessSection .accessFrame {
    padding: 2.5em 0 5em;
  }
  .accessSection .accessFrame:before {
    width: 34px;
    height: 23px;
    top: 0;
    left: auto;
    right: 8%;
  }
  .accessSection .accessFrame:after {
    width: 28px;
    height: 26px;
    right: auto;
    left: 8%;
    bottom: 0;
  }
}

/*# sourceMappingURL=index.css.map */
