@charset "UTF-8";
/* Scss Document */
/* Reset Stylesheet @ html5doctor.com */
main, article, aside, details, figcaption, figure, footer, header, hgroup, hr, menu, nav, section {
  display: block;
}

a, hr {
  padding: 0;
}

abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0;
}

ins, mark {
  background-color: #ff9;
  color: #000;
}

body {
  line-height: 1;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:after, blockquote:before, q:after, q:before {
  content: "";
  content: none;
}

a {
  margin: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0;
}

ins {
  text-decoration: none;
}

mark {
  font-style: italic;
  font-weight: 700;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
}

input, select {
  vertical-align: middle;
}

input, button, textarea, select {
  border-radius: 0;
}

u {
  display: inline-block;
  white-space: nowrap;
  text-decoration: none;
}

ul, dl {
  list-style: none;
}

a, a:link, a:visited, a:hover, a:active {
  color: inherit;
  text-decoration: none;
}

p, a, li, dt, dd, h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
}

/* スマホ用  詳細 → http://www.nxworld.net/tips/15-smartphone-css-tips.html */
html {
  -webkit-text-size-adjust: 100%;
}

input[type=button], input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

@font-face {
  font-family: "noto-sans";
  src: local("Noto Sans CJK JP Thin"), local("源ノ角ゴシック JP ExtraLight"), url(../font/noto-thin.woff2) format("woff2"), url(../font/noto-thin.woff) format("woff");
  font-weight: 100;
  font-display: swap;
}
@font-face {
  font-family: "noto-sans";
  src: local("Noto Sans CJK JP Light"), local("源ノ角ゴシック JP Light"), url(../font/noto-light.woff2) format("woff2"), url(../font/noto-light.woff) format("woff");
  font-weight: 200;
  font-display: swap;
}
@font-face {
  font-family: "note-sans";
  src: local("Noto Sans CJK JP DemiLight"), local("源ノ角ゴシック JP Normal"), url(../font/noto-demilight.woff2) format("woff2"), url(../font/noto-demilight.woff) format("woff");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "noto-sans";
  src: local("Noto Sans CJK JP Regular"), local("源ノ角ゴシック JP Regular"), url(../font/noto-regular.woff2) format("woff2"), url(../font/noto-regular.woff) format("woff");
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "noto-sans";
  src: local("Noto Sans CJK JP Medium"), local("源ノ角ゴシック JP Medium"), url(../font/noto-midium.woff2) format("woff2"), url(../font/noto-midium.woff) format("woff");
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "noto-sans";
  src: local("Noto Sans CJK JP Bold"), local("源ノ角ゴシック JP Bold"), url(../font/noto-bold.woff2) format("woff2"), url(../font/noto-bold.woff) format("woff");
  font-weight: 700;
  font-display: swap;
}
@font-face {
  font-family: "noto-sans";
  src: local("Noto Sans CJK JP Black"), local("源ノ角ゴシック JP Heavy"), url(../font/noto-black.woff2) format("woff2"), url(../font/noto-black.woff) format("woff");
  font-weight: 900;
  font-display: swap;
}
@font-face {
  font-family: "din-bold";
  src: url(../font/din_bold.woff2) format("woff2"), url(../font/din_bold.woff) format("woff"), url(../font/din_bold.ttf) format("ttf"), url("../font/DIN Bold.otf") format("opentype");
}
html, body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "小塚ゴシック Pro", "MS Pゴシック", "MS PGothic", "Droid Sans Mono", Verdana, sans-serif;
}

.map-daigae {
  background: url(../image/company/gaiyo-image.jpg) no-repeat right center;
  background: -webkit-image-set(url(../image/company/gaiyo-image.jpg) 1x, url(../image/company/gaiyo-image@2x.jpg) 2x) right center;
  background-size: cover;
}

.purchase-page .common-main-image {
  background: url("../image/purchase/main-image.jpg") no-repeat center center;
  background: -webkit-image-set(url("../image/purchase/main-image" ".jpg") 1x, url("../image/purchase/main-image@2x.jpg") 2x) no-repeat center center;
  background-size: cover;
}
@media (max-width: 700px) {
  .purchase-page .common-main-image {
    background: url("../image/purchase/main-image_sp.jpg") no-repeat center center;
    background: -webkit-image-set(url("../image/purchase/main-image_sp.jpg") 1x, url("../image/purchase/main-image_sp@2x.jpg") 2x) no-repeat center center;
    background-size: cover;
  }
}

.parts-page .common-main-image {
  background: url("../image/parts/main-image.jpg") no-repeat center center;
  background: -webkit-image-set(url("../image/parts/main-image" ".jpg") 1x, url("../image/parts/main-image@2x.jpg") 2x) no-repeat center center;
  background-size: cover;
}
@media (max-width: 700px) {
  .parts-page .common-main-image {
    background: url("../image/parts/main-image_sp.jpg") no-repeat center center;
    background: -webkit-image-set(url("../image/parts/main-image_sp.jpg") 1x, url("../image/parts/main-image_sp@2x.jpg") 2x) no-repeat center center;
    background-size: cover;
  }
}
.parts-page .image-gaiso {
  background: url(../image/parts/list_image1.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/parts/list_image1.jpg) 1x, url(../image/parts/list_image1@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.parts-page .image-engin {
  background: url(../image/parts/list_image2.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/parts/list_image2.jpg) 1x, url(../image/parts/list_image2@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.parts-page .image-denki {
  background: url(../image/parts/list_image3.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/parts/list_image3.jpg) 1x, url(../image/parts/list_image3@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.parts-page .image-kudou {
  background: url(../image/parts/list_image4.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/parts/list_image4.jpg) 1x, url(../image/parts/list_image4@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.parts-page .rebuild-image {
  background: url(../image/parts/rebuild.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/parts/rebuild.jpg) 1x, url(../image/parts/rebuild@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.parts-page .shagai-image {
  background: url(../image/parts/shagai.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/parts/shagai.jpg) 1x, url(../image/parts/shagai@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}

.company-page .common-main-image {
  background: url("../image/company/main-image.jpg") no-repeat center center;
  background: -webkit-image-set(url("../image/company/main-image" ".jpg") 1x, url("../image/company/main-image@2x.jpg") 2x) no-repeat center center;
  background-size: cover;
}
@media (max-width: 700px) {
  .company-page .common-main-image {
    background: url("../image/company/main-image_sp.jpg") no-repeat center center;
    background: -webkit-image-set(url("../image/company/main-image_sp.jpg") 1x, url("../image/company/main-image_sp@2x.jpg") 2x) no-repeat center center;
    background-size: cover;
  }
}
.company-page .boss-image {
  background: url(../image/company/boss.jpg) no-repeat right top;
  background: -webkit-image-set(url(../image/company/boss.jpg) 1x, url(../image/company/boss@2x.jpg) 2x) no-repeat right top;
  background-size: cover;
}
.company-page .gaiyo-image {
  background: url(../image/company/gaiyo-image.jpg) no-repeat right center;
  background: -webkit-image-set(url(../image/company/gaiyo-image.jpg) 1x, url(../image/company/gaiyo-image@2x.jpg) 2x) no-repeat right center;
  background-size: cover;
}

.business-page .common-main-image {
  background: url("../image/business/main-image.jpg") no-repeat center center;
  background: -webkit-image-set(url("../image/business/main-image" ".jpg") 1x, url("../image/business/main-image@2x.jpg") 2x) no-repeat center center;
  background-size: cover;
}
@media (max-width: 700px) {
  .business-page .common-main-image {
    background: url("../image/business/main-image_sp.jpg") no-repeat center center;
    background: -webkit-image-set(url("../image/business/main-image_sp.jpg") 1x, url("../image/business/main-image_sp@2x.jpg") 2x) no-repeat center center;
    background-size: cover;
  }
}
.business-page .nyuko-image {
  background: url(../image/business/nyuko-imge.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/business/nyuko-imge.jpg) 1x, url(../image/business/nyuko-imge@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.business-page .shori-image {
  background: url(../image/business/shori-imge.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/business/shori-imge.jpg) 1x, url(../image/business/shori-imge@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.business-page .buhin-image {
  background: url(../image/business/buhin-image.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/business/buhin-image.jpg) 1x, url(../image/business/buhin-image@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.business-page .hinshitu-image {
  background: url(../image/business/hinshitu-image.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/business/hinshitu-image.jpg) 1x, url(../image/business/hinshitu-image@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.business-page .hokan-image {
  background: url(../image/business/hokan-image.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/business/hokan-image.jpg) 1x, url(../image/business/hokan-image@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.business-page .hassou-image {
  background: url(../image/business/hassou-image.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/business/hassou-image.jpg) 1x, url(../image/business/hassou-image@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.business-page .boeki-image {
  background: url(../image/business/boeki-imge.jpg) no-repeat right center;
  background: -webkit-image-set(url(../image/business/boeki-imge.jpg) 1x, url(../image/business/boeki-imge@2x.jpg) 2x) no-repeat right center;
  background-size: cover;
}
.business-page .kaitai-image {
  background: url(../image/business/kaitai-imge.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/business/kaitai-imge.jpg) 1x, url(../image/business/kaitai-imge@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}

.recruit-page .common-main-image {
  background: url("../image/recruit/main-image.jpg") no-repeat center center;
  background: -webkit-image-set(url("../image/recruit/main-image" ".jpg") 1x, url("../image/recruit/main-image@2x.jpg") 2x) no-repeat center center;
  background-size: cover;
}
@media (max-width: 700px) {
  .recruit-page .common-main-image {
    background: url("../image/recruit/main-image_sp.jpg") no-repeat center center;
    background: -webkit-image-set(url("../image/recruit/main-image_sp.jpg") 1x, url("../image/recruit/main-image_sp@2x.jpg") 2x) no-repeat center center;
    background-size: cover;
  }
}
.recruit-page .senpai1-image {
  background: url(../image/recruit/senpai1.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/senpai1.jpg) 1x, url(../image/recruit/senpai1@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.recruit-page .senpai2-image {
  background: url(../image/recruit/senpai2.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/senpai2.jpg) 1x, url(../image/recruit/senpai2@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.recruit-page .senpai3-image {
  background: url(../image/recruit/senpai3.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/senpai3.jpg) 1x, url(../image/recruit/senpai3@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.recruit-page .senpai4-image {
  background: url(../image/recruit/senpai4.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/senpai4.jpg) 1x, url(../image/recruit/senpai4@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.recruit-page .senpai5-image {
  background: url(../image/recruit/senpai5.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/senpai5.jpg) 1x, url(../image/recruit/senpai5@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.recruit-page .senpai6-image {
  background: url(../image/recruit/senpai6.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/senpai6.jpg) 1x, url(../image/recruit/senpai6@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}
.recruit-page .senpai7-image {
  background: url(../image/recruit/senpai7.jpg) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/senpai7.jpg) 1x, url(../image/recruit/senpai7@2x.jpg) 2x) no-repeat center center;
  background-size: cover;
}

.sdgs-page .common-main-image {
  background: url("../image/sdgs/main-image.jpg") no-repeat center center;
  background: -webkit-image-set(url("../image/sdgs/main-image" ".jpg") 1x, url("../image/sdgs/main-image@2x.jpg") 2x) no-repeat center center;
  background-size: cover;
}
@media (max-width: 700px) {
  .sdgs-page .common-main-image {
    background: url("../image/sdgs/main-image_sp.jpg") no-repeat center center;
    background: -webkit-image-set(url("../image/sdgs/main-image_sp.jpg") 1x, url("../image/sdgs/main-image_sp@2x.jpg") 2x) no-repeat center center;
    background-size: cover;
  }
}

::-webkit-scrollbar {
  width: 5px;
  background: rgba(232, 3, 3, 0.2);
}

::-webkit-scrollbar-thumb {
  background: rgba(232, 3, 3, 0.8);
}

:root {
  font-size: 14px;
  font-weight: 500;
}

.grecaptcha-badge {
  display: none !important;
}

.page-contact .grecaptcha-badge {
  display: block !important;
}

.google-privacy {
  color: #fff;
}
.google-privacy .g-title {
  -moz-text-align-last: center;
       text-align-last: center;
  font-size: 13px;
  letter-spacing: 0.1em;
  margin-top: 40px;
}
.google-privacy .g-link {
  -moz-text-align-last: center;
       text-align-last: center;
  font-size: 11px;
  letter-spacing: 0.1em;
  line-height: 1.5em;
}
.google-privacy .g-link a {
  display: inline-block;
  text-decoration: underline;
  margin: 5px 10px;
}

body.single {
  background: #fff;
}
body .main-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 21px 0 0;
  z-index: 9999;
}
body .main-header h1 {
  padding-right: 19px;
  padding-left: 0.5em;
}
body .main-header h1 a {
  display: block;
}
body .main-header h1 img {
  max-width: 100%;
  height: auto;
}
body .main-header:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 0;
  background: #fff;
  height: 29px;
  width: 100%;
  display: block;
}
body .main-header .pc-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .main-header .pc-nav > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .main-header .pc-nav > ul > li {
  font-size: 0.875rem;
  letter-spacing: 0.2em;
  padding: 0 19px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body .main-header .pc-nav > ul > li > a {
  display: inline-block;
  position: relative;
  z-index: 2;
}
body .main-header .pc-nav > ul > li > a:after {
  content: "";
  display: block;
  background: rgba(232, 3, 3, 0.75);
  height: 1px;
  width: 0;
  position: absolute;
  top: calc(100% + 6px);
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  -webkit-transition: width 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
  transition: width 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
}
body .main-header .pc-nav > ul > li > a:hover:after {
  width: 100%;
}
body .main-header .pc-nav > ul > li.aco ul {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100vw;
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
  top: 100%;
  left: 0;
  z-index: 1;
  -webkit-transition: height 0.2s cubic-bezier(0.59, 0.01, 0.26, 1);
  transition: height 0.2s cubic-bezier(0.59, 0.01, 0.26, 1);
  overflow: hidden;
  height: 0;
}
body .main-header .pc-nav > ul > li.aco ul:before {
  content: "";
  display: block;
  height: 29px;
  background: #fff;
  width: 100%;
}
body .main-header .pc-nav > ul > li.aco ul li {
  padding: 20px 0 20px;
  margin: 0 2.7777777778vh;
}
body .main-header .pc-nav > ul > li.aco ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body .main-header .pc-nav > ul > li.aco ul li a img {
  margin-right: 6px;
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
body .main-header .pc-nav > ul > li.aco ul li a:hover img {
  opacity: 1;
}
body .main-header .pc-nav .nav-tel {
  padding-left: 19px;
  padding-right: 0.5em;
}
body .main-header .pc-nav .nav-tel img {
  max-width: 100%;
  height: auto;
}
@media (max-width: 1074px) {
  body .main-header {
    padding: 15px 0 0;
  }
  body .main-header:after {
    height: 18px;
  }
  body .main-header h1 {
    width: 45px;
    padding-right: 13px;
  }
  body .main-header .pc-nav > ul > li {
    font-size: 0.8125rem;
    padding: 0 13px;
  }
  body .main-header .pc-nav .nav-tel {
    padding-left: 13px;
    width: 130px;
  }
}
@media (max-width: 930px) {
  body .main-header h1 {
    width: 35px;
    padding-right: 8px;
  }
  body .main-header .pc-nav > ul > li {
    padding: 0 8px;
  }
  body .main-header .pc-nav .nav-tel {
    padding-left: 8px;
    width: 120px;
  }
}
@media (max-width: 820px) {
  body .main-header h1 {
    padding-right: 5px;
    width: 30px;
  }
  body .main-header .pc-nav > ul > li {
    padding: 0 5px;
    font-size: 0.6875rem;
  }
  body .main-header .pc-nav .nav-tel {
    padding-left: 5px;
    width: 110px;
  }
}
body .main-header.single-header {
  background: #e80303;
}
body .main-header.single-header .pc-nav ul > li a {
  color: #fff;
}
body .main-header.single-header .pc-nav ul > li a:after {
  background: #fff;
}
body .main-header.single-header .pc-nav ul > li.aco ul:before {
  background: #e80303;
}
body .main-header.single-header:after {
  background: #e80303;
}
body.home .main-header {
  position: relative;
}
body .footer-link {
  margin: 0 auto 0;
  width: 980px;
  padding-bottom: 12vh;
}
@media (max-width: 1280px) {
  body .footer-link {
    width: 76.5625vw;
  }
}
body .footer-link h2 {
  text-align: center;
}
body .footer-link ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 8vh;
}
body .footer-link ul .action-link {
  width: 476px;
}
body .footer-link ul .action-link a {
  display: block;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
body .footer-link ul .action-link a img {
  width: 476px;
  height: auto;
  display: block;
}
body .footer-link ul .action-link a .normal-image {
  display: block;
  width: 150%;
  padding-top: 150%;
  -webkit-transform-origin: top right;
          transform-origin: top right;
  -webkit-transform: translate(0, 0) rotate(45deg);
          transform: translate(0, 0) rotate(45deg);
  top: 50%;
  right: -50%;
  overflow: hidden;
  position: absolute;
  -webkit-transition: width 0.2s linear;
  transition: width 0.2s linear;
}
body .footer-link ul .action-link a .normal-image img {
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: rotate(-45deg) translate(-47.8%, 38.9%);
          transform: rotate(-45deg) translate(-47.8%, 38.9%);
}
body .footer-link ul .action-link a > img {
  position: relative;
  z-index: -1;
}
body .footer-link ul .action-link a:hover .normal-image {
  width: 0;
}
@media (max-width: 1280px) {
  body .footer-link ul .action-link {
    width: 37.1875vw;
  }
  body .footer-link ul .action-link a img {
    width: 37.1875vw;
  }
}
body .page-top {
  position: fixed;
  z-index: -1;
  right: 5%;
  bottom: 13%;
  -webkit-transition: opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  opacity: 0;
  -webkit-transform: translate(0, -200%);
          transform: translate(0, -200%);
}
body .page-top img {
  display: block;
  padding: 1vh;
  height: auto;
}
body .page-top:hover {
  cursor: pointer;
}
body .page-top.on-page-top {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  z-index: 8000;
}
body .main-footer {
  border-bottom: #992610 20px solid;
  background: #c65436;
}
body .main-footer .map-box {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .main-footer .map-box .left-box {
  width: 57.421875%;
}
body .main-footer .map-box .left-box #map {
  width: 100%;
  padding-top: 60.2721088435%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  position: relative;
}
body .main-footer .map-box .left-box #map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
body .main-footer .map-box .right-box {
  width: 42.578125%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body .main-footer .map-box .right-box h2 {
  text-align: center;
  padding-top: 5.5555555556vh;
  padding-bottom: 1.1111111111vh;
  width: 100%;
}
body .main-footer .map-box .right-box h2 a {
  color: #fff;
  display: block;
  font-weight: 500;
}
body .main-footer .map-box .right-box h2 a img {
  margin-bottom: 1.5555555556vh;
  max-width: 85%;
  height: auto;
}
body .main-footer .map-box .right-box .add, body .main-footer .map-box .right-box .tel {
  text-align: center;
  color: #fff;
  font-size: 0.9375rem;
  line-height: 1.8em;
  letter-spacing: 0.2em;
  width: 100%;
}
body .main-footer .map-box .right-box .add {
  margin-top: 0.8888888889vh;
}
body .main-footer .map-box .right-box > div {
  margin-top: 3.7777777778vh;
  width: 100%;
}
body .main-footer .map-box .right-box > div .foot-link {
  text-align: center;
  margin-top: 1.7777777778vh;
}
body .main-footer .map-box .right-box > div .foot-link a {
  display: inline-block;
  border: 1px solid #fff;
  padding: 1vh 0;
  width: 248px;
  max-width: 90%;
  text-align: center;
  color: #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  font-size: 0.9375rem;
  letter-spacing: 0.2em;
  position: relative;
  overflow: hidden;
  z-index: 0;
}
body .main-footer .map-box .right-box > div .foot-link a:after {
  content: "";
  display: block;
  background: #c65436;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
}
body .main-footer .map-box .right-box > div .foot-link a:before {
  content: "";
  display: block;
  background: #fff;
  width: 200%;
  padding-top: 200%;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: rotate(45deg) translate(-65%, -35%);
          transform: rotate(45deg) translate(-65%, -35%);
  z-index: -1;
  top: 0;
  left: -100%;
  position: absolute;
  -webkit-transition: left 0.3s linear;
  transition: left 0.3s linear;
}
body .main-footer .map-box .right-box > div .foot-link a:hover {
  color: #c65436;
}
body .main-footer .map-box .right-box > div .foot-link a:hover:before {
  left: 100%;
}
body .main-footer .map-box .right-box .innear-copy {
  color: #fff;
  margin: 5vh auto 0;
  padding-bottom: 3.6666666667vh;
  width: 270px;
  max-width: 90%;
  font-size: 0.75rem;
  line-height: 1.25em;
  font-weight: 100;
}
body .top-slide {
  position: relative;
  height: 100vh;
}
body .top-slide .slide-content {
  visibility: hidden;
  position: relative;
  height: 100vh;
}
body .top-slide .slide-content li {
  position: relative;
  z-index: 0;
}
body .top-slide .slide-content li:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}
body .top-slide .slide-content li .slide-image {
  width: 100%;
  height: 100vh;
  background-repeat: no-repeat;
  background-size: cover;
}
body .top-slide .etc-box {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (min-width: 701px) {
  body .top-slide .etc-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
body .top-slide .etc-box .text {
  text-align: center;
  color: #fff;
  width: 100%;
  font-size: 1.6875rem;
  letter-spacing: 0.2em;
  margin-bottom: 4.7777777778vh;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  opacity: 0;
}
body .top-slide .etc-box .logo {
  text-align: center;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  opacity: 0;
}
body .top-slide .etc-box .logo img {
  max-width: 50%;
  height: auto;
}
body .top-slide .etc-box .slide-bar-box {
  position: absolute;
  right: 10%;
  bottom: 2.890625vw;
  height: 9px;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  opacity: 0;
}
body .top-slide .etc-box .slide-bar-box .slide-bar {
  position: relative;
  display: inline-block;
  border-right: 1px solid rgba(255, 255, 255, 0.5);
  width: 53px;
  height: 100%;
}
body .top-slide .etc-box .slide-bar-box .slide-bar:before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: 50%;
  left: 0;
}
body .top-slide .etc-box .slide-bar-box .slide-bar:first-of-type {
  border-left: 1px solid rgba(255, 255, 255, 0.5);
}
body .top-slide .etc-box .slide-bar-box .slide-bar .action-bar {
  position: absolute;
  top: -7px;
  left: 0;
  height: 3px;
  width: 0;
  display: block;
  background: rgba(255, 255, 255, 0.4);
}
body .top-slide .etc-box .slide-scroll-box {
  text-align: center;
  width: 100%;
  position: absolute;
  bottom: 2.890625vw;
  left: 0;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  opacity: 0;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll {
  display: inline-block;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .dotto-flow {
  display: inline-block;
  height: 31px;
  margin-bottom: 10px;
  width: 5px;
  position: relative;
  overflow: hidden;
  /*
  @for $i from 2 through 7 {
    span:nth-of-type(i){
      background: #f00;
    }
  }*/
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .dotto-flow span {
  display: inline-block;
  width: 1px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 0;
  left: 50%;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .dotto-flow span:nth-of-type(1) {
  -webkit-animation: scroll-act 1.5s linear 0s infinite;
          animation: scroll-act 1.5s linear 0s infinite;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .dotto-flow span:nth-of-type(2) {
  -webkit-animation: scroll-act 1.5s linear 0.3s infinite;
          animation: scroll-act 1.5s linear 0.3s infinite;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .dotto-flow span:nth-of-type(3) {
  -webkit-animation: scroll-act 1.5s linear 0.6s infinite;
          animation: scroll-act 1.5s linear 0.6s infinite;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .dotto-flow span:nth-of-type(4) {
  -webkit-animation: scroll-act 1.5s linear 0.9s infinite;
          animation: scroll-act 1.5s linear 0.9s infinite;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .dotto-flow span:nth-of-type(5) {
  -webkit-animation: scroll-act 1.5s linear 1.2s infinite;
          animation: scroll-act 1.5s linear 1.2s infinite;
}
@-webkit-keyframes scroll-act {
  0% {
    top: -2px;
  }
  100% {
    top: calc(100% + 2px);
  }
}
@keyframes scroll-act {
  0% {
    top: -2px;
  }
  100% {
    top: calc(100% + 2px);
  }
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll .scroll-text {
  font-size: 0.9375rem;
  letter-spacing: 0.0253333333em;
  display: inline-block;
  color: #fff;
}
body .top-slide .etc-box .slide-scroll-box .slide-scroll:hover {
  cursor: pointer;
}
@media (max-width: 870px) {
  body .top-slide .etc-box .text {
    font-size: 1.375rem;
  }
  body .top-slide .etc-box .logo img {
    width: 209px;
  }
}
@media (max-width: 780px) {
  body .top-slide .etc-box .text {
    margin-bottom: 2.5555555556vh;
  }
}
body .top-page {
  padding-top: 29px;
  padding-bottom: 10.8888888889vh;
}
@media (max-width: 1050px) {
  body .top-page {
    padding-top: 15px;
  }
}
body .top-page .top-banner {
  text-align: center;
  width: 80%;
  margin: 4vh auto -2vh;
}
body .top-page .top-banner li a img {
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  max-width: 100%;
}
body .top-page .top-banner li a:hover img {
  opacity: 0.6;
}
body .top-page .top-news {
  margin-top: 5vh;
}
body .top-page .top-news h2 {
  text-align: center;
}
body .top-page .top-news .news-box {
  width: 757px;
  max-width: 90%;
  margin: 6.6666666667vh auto 0;
}
body .top-page .top-news .news-box ul {
  border-top: 1px solid rgba(232, 3, 3, 0.5);
  border-bottom: 1px solid rgba(232, 3, 3, 0.5);
  padding: 0 5.4161162483%;
}
body .top-page .top-news .news-box ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .top-page .top-news .news-box ul li time {
  display: block;
  border-right: 1px solid rgba(232, 3, 3, 0.5);
  padding: 1.4444444444vh 5.284015852% 1.4444444444vh 0;
  font-size: 0.9375rem;
  color: #e80303;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-weight: 700;
  width: 109px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
body .top-page .top-news .news-box ul li a {
  padding: 1.4444444444vh 0 1.4444444444vh 4.6235138705%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 1.0625rem;
  letter-spacing: 0.05em;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}
body .top-page .top-news .news-box ul li a:hover {
  color: #999;
}
body .top-page .top-news .news-box ul li:first-of-type time, body .top-page .top-news .news-box ul li:first-of-type a {
  padding-top: 3.8888888889vh;
}
body .top-page .top-news .news-box ul li:last-of-type time, body .top-page .top-news .news-box ul li:last-of-type a {
  padding-bottom: 3.8888888889vh;
}
body .top-page .top-news .news-box .common-arrow-link {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 4.4444444444vh;
}
body .top-page .top-kaitori {
  margin-top: 9.1111111111vh;
}
body .top-page .top-kaitori .main-image {
  width: 100%;
  position: relative;
}
body .top-page .top-kaitori .main-image > img {
  width: 100%;
  height: auto;
  display: block;
}
body .top-page .top-kaitori .main-image .chara {
  display: block;
  width: 19.6875vw;
  position: absolute;
  bottom: -6%;
  right: 8%;
}
body .top-page .top-kaitori .main-image .chara img {
  width: 100%;
  height: auto;
  display: block;
}
body .top-page .top-kaitori .main-image .catch {
  position: absolute;
  width: 74.21875%;
  top: 45%;
  left: 0;
  font-size: 1.3125rem;
  letter-spacing: 0.3em;
  color: #fff;
  line-height: 1.35em;
  text-align: center;
  text-shadow: 0 0 5px #000;
}
body .top-page .top-kaitori .main-image .catch span {
  display: inline-block;
  width: 90%;
}
body .top-page .top-kaitori .middle-box {
  width: 887px;
  max-width: 90%;
  margin: 7.4444444444vh auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .top-page .top-kaitori .middle-box section {
  width: 57.6099210823%;
  padding-top: 3vh;
}
body .top-page .top-kaitori .middle-box section .text-box .common-arrow-link {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-transform: translate(0, -60%);
          transform: translate(0, -60%);
}
body .top-page .top-kaitori .middle-box section .text-box .common-text {
  margin-top: 2.8888888889vh;
}
body .top-page .top-kaitori .middle-box section .point-box {
  margin-top: 37.625px;
}
body .top-page .top-kaitori .middle-box section .point-box dd {
  margin-top: 10.5px;
}
body .top-page .top-kaitori .middle-box section .point-box dd ol li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
body .top-page .top-kaitori .middle-box section .point-box dd ol li .nth {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
body .top-page .top-kaitori .middle-box section .point-box dd ol li .nth-box {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: calc(100% - 32px);
  position: relative;
  color: #e80303;
  font-size: 15.75px;
  font-weight: 500;
  line-height: 1.5;
  padding: 0 0 5.25px 0.3888888889em;
}
body .top-page .top-kaitori .middle-box section .point-box dd ol li .nth-box:before {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: 0;
  height: 14px;
  background: #f2f2f2;
}
body .top-page .top-kaitori .middle-box section .point-box dd ol li + li {
  margin-top: 10.5px;
}
body .top-page .top-kaitori .middle-box section .common-link-button {
  margin-top: 8.8888888889vh;
}
body .top-page .top-kaitori .middle-box .image-box {
  width: 33.7091319053%;
}
body .top-page .top-kaitori .middle-box .image-box p {
  margin-top: 2.2222222222vh;
}
body .top-page .top-kaitori .middle-box .image-box p:first-of-type {
  margin-top: 0;
}
body .top-page .top-kaitori .middle-box .image-box p img {
  width: 100%;
  height: auto;
}
body .top-page .top-used {
  background: #f2f2f2;
  padding: 9.4444444444vh 0 11.8888888889vh;
  margin-top: 13.3333333333vh;
}
body .top-page .top-used h2 {
  text-align: center;
}
body .top-page .top-used .middle-box .common-arrow-link {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 880px;
  margin: 0 auto;
  max-width: 90%;
}
body .top-page .top-used .middle-box .common-arrow-link a {
  -webkit-transform: translate(0, -100%);
          transform: translate(0, -100%);
}
body .top-page .top-used .middle-box .common-text {
  width: 616px;
  margin: 2.2222222222vh auto 0;
  max-width: 90%;
}
body .top-page .top-used .used-list {
  width: 665px;
  max-width: 90%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 4.4444444444vh auto 0;
}
body .top-page .top-used .used-list figure {
  margin-top: 6.8888888889vh;
  width: 21.8045112782%;
  text-align: center;
}
body .top-page .top-used .used-list figure:nth-of-type(2), body .top-page .top-used .used-list figure:nth-of-type(5) {
  padding: 0 15%;
}
body .top-page .top-used .used-list figure a img {
  max-width: 100%;
  height: auto;
}
body .top-page .top-used .used-list figure a img:nth-of-type(2) {
  display: none;
}
body .top-page .top-used .used-list figure a figcaption {
  font-size: 1.0625rem;
  letter-spacing: 0.05em;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
  display: inline-block;
  margin-top: 2.5555555556vh;
  text-align: center;
  line-height: 1.3em;
}
body .top-page .top-used .used-list figure a:hover img {
  -webkit-animation: icon-jump 0.4s linear 0s 3;
          animation: icon-jump 0.4s linear 0s 3;
}
body .top-page .top-used .used-list figure a:hover figcaption {
  color: #e80303;
}
@-webkit-keyframes icon-jump {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  10% {
    -webkit-transform: scale(1, 1) translate(0%, 2%);
            transform: scale(1, 1) translate(0%, 2%);
  }
  50% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  75% {
    -webkit-transform: scale(1, 1) translate(0%, -20%);
            transform: scale(1, 1) translate(0%, -20%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}
@keyframes icon-jump {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  10% {
    -webkit-transform: scale(1, 1) translate(0%, 2%);
            transform: scale(1, 1) translate(0%, 2%);
  }
  50% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
  75% {
    -webkit-transform: scale(1, 1) translate(0%, -20%);
            transform: scale(1, 1) translate(0%, -20%);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%);
            transform: scale(1, 1) translate(0%, 0%);
  }
}
body .top-page .top-about .main-image {
  position: relative;
}
body .top-page .top-about .main-image > img {
  width: 100%;
  height: auto;
  display: block;
}
body .top-page .top-about .main-image .catch {
  position: absolute;
  font-size: 1.3125rem;
  letter-spacing: 0.3em;
  line-height: 2.0476190476em;
  text-align: left;
  top: 20%;
  left: 11%;
  text-shadow: 1px 1px 3px #fff, 1px 1px 2px #fff, 1px 1px 4px #fff;
}
body .top-page .top-about .main-image .chara {
  position: absolute;
  width: 34%;
  right: 10%;
  top: 80%;
}
body .top-page .top-about .main-image .chara img {
  width: 100%;
  height: auto;
  max-width: 540px;
}
body .top-page .top-about .middle-bod {
  width: 887px;
  max-width: 90%;
  margin: 7.4444444444vh auto 0;
}
body .top-page .top-about .middle-bod section {
  width: 57.6099210823%;
  padding-top: 3vh;
}
body .top-page .top-about .middle-bod section .common-text {
  margin-top: 2.8888888889vh;
}
body .top-page .how-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 13.3333333333vh auto 0;
  width: 980px;
  max-width: 100%;
}
body .top-page .how-box a {
  display: block;
  position: relative;
  border-top: 1px solid #ff9b78;
  border-bottom: 1px solid #ff9b78;
  width: 50%;
  padding-top: 8.4444444444vh;
  padding-bottom: 5vh;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
body .top-page .how-box a section h2 {
  background: #fff;
  font-size: 1.125rem;
  letter-spacing: 0.1em;
  padding: 1.7777777778vh 3.6666666667vh;
  border: 1px solid #ff9b78;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-weight: 600;
}
body .top-page .how-box a section .image {
  border-radius: 50%;
  overflow: hidden;
  width: 68.5714285714%;
  margin: 0 auto;
  border: 10px solid #ffb07b;
}
body .top-page .how-box a section .image img {
  width: 100%;
  height: auto;
}
body .top-page .how-box a section .common-arrow-link {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 380px;
  max-width: 90%;
  margin: 0 auto;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
body .top-page .how-box a section .common-arrow-link .more-inner {
  display: block;
  text-align: left;
  position: relative;
  font-size: 1.3125rem;
  color: #e80303;
  letter-spacing: 0.05em;
  overflow: hidden;
  font-weight: 100;
}
body .top-page .how-box a section .common-arrow-link .more-inner img {
  display: block;
  width: 47px;
  max-width: 80%;
  height: auto;
  -webkit-transform: translate(-40%, 0);
          transform: translate(-40%, 0);
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  margin-top: 6px;
}
body .top-page .how-box a section .common-text {
  margin: 2.2222222222vh auto 0;
  width: 380px;
  max-width: 90%;
}
body .top-page .how-box a:first-of-type {
  background: rgba(255, 155, 120, 0.15);
}
body .top-page .how-box a:hover {
  opacity: 0.7;
}
body .top-page .how-box a:hover section .common-arrow-link .more-inner img {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
body .purchase-page .purchase-flow {
  border-left: 2vh solid #b3b3b3;
  border-right: 2vh solid #b3b3b3;
  padding: 8.2222222222vh 0 11.5555555556vh;
}
body .purchase-page .purchase-flow h2 {
  text-align: center;
}
body .purchase-page .purchase-flow .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .purchase-page .purchase-flow .icon-field {
  width: 980px;
  max-width: 90%;
  margin: 7.7777777778vh auto 0;
}
body .purchase-page .purchase-flow .icon-field .titles {
  border-top: 1px solid rgba(232, 3, 3, 0.5);
  border-bottom: 1px solid rgba(232, 3, 3, 0.5);
  background: #f2f2f2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding: 2.6666666667vh 0;
}
body .purchase-page .purchase-flow .icon-field .titles li {
  text-align: center;
  font-size: 1.125rem;
  letter-spacing: 0.075em;
  line-height: 1.35em;
  width: 145px;
}
body .purchase-page .purchase-flow .icon-field .titles li .nth {
  line-height: 0em;
  height: 1px;
  color: #e80303;
  font-family: "din-bold", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "小塚ゴシック Pro", "MS Pゴシック", "MS PGothic", "Droid Sans Mono", Verdana, sans-serif;
  font-size: 4.2222222222vh;
  letter-spacing: -0.05em;
  display: inline-block;
  margin-bottom: 1px;
}
body .purchase-page .purchase-flow .icon-field .icon-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding: 5vh 0 0;
}
body .purchase-page .purchase-flow .icon-field .icon-list li {
  text-align: center;
  width: 18.9795918367%;
}
body .purchase-page .purchase-flow .icon-field .icon-list li img {
  max-width: 85%;
  height: auto;
}
body .purchase-page .purchase-flow .description-box {
  margin-top: 4.6666666667vh;
  border-top: 1px solid rgba(232, 3, 3, 0.5);
  border-bottom: 1px solid rgba(232, 3, 3, 0.5);
}
body .purchase-page .purchase-flow .description-box dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .purchase-page .purchase-flow .description-box dl dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border-right: 1px solid rgba(232, 3, 3, 0.5);
  padding: 1.8888888889vh 5.7142857143%;
  color: #e80303;
  font-size: 1rem;
  margin-right: 5.7142857143%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body .purchase-page .purchase-flow .description-box dl dt .nth {
  font-family: "din-bold", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "小塚ゴシック Pro", "MS Pゴシック", "MS PGothic", "Droid Sans Mono", Verdana, sans-serif;
  font-size: 1.875rem;
  letter-spacing: -0.0333333333em;
  display: inline-block;
  padding-left: 3px;
}
body .purchase-page .purchase-flow .description-box dl dd {
  width: 100%;
  padding: 1.8888888889vh 0;
  font-size: 1.0625rem;
  line-height: 1.5882352941em;
  letter-spacing: 0.05em;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .purchase-page .purchase-flow .description-box dl:nth-of-type(1) dt, body .purchase-page .purchase-flow .description-box dl:nth-of-type(1) dd {
  padding-top: 3.7777777778vh;
}
body .purchase-page .purchase-flow .description-box dl:last-of-type dt, body .purchase-page .purchase-flow .description-box dl:last-of-type dd {
  padding-bottom: 3.7777777778vh;
}
body .purchase-page .jisseki {
  padding: 8.1111111111vh 0 9.1111111111vh;
  background: url(../image/common/bg_line.png) repeat center center;
  background: -webkit-image-set(url(../image/common/bg_line.png) 1x, url(../image/common/bg_line@2x.png) 2x) repeat center center;
}
body .purchase-page .jisseki h2 {
  text-align: center;
}
body .purchase-page .jisseki .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .purchase-page .jisseki .jisseki-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 980px;
  margin: 4.4444444444vh auto 0;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.7777777778vh;
  max-width: 90%;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner {
  margin: 1.7777777778vh 0;
  width: 30.1020408163%;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .img img {
  width: 100%;
  height: auto;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl {
  display: block;
  margin-top: 1vh;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl:after {
  content: "";
  display: block;
  clear: both;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl dt {
  float: left;
  line-height: 1.7em;
  font-size: 1.7rem;
  letter-spacing: 0.1em;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl dd {
  float: right;
  line-height: 1.7em;
  font-weight: bold;
  font-size: 1.4rem;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl dd strong {
  font-size: 2rem;
  color: #e80303;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .info table tr th {
  background: #dedede;
  border: 1px dashed #000;
  padding: 3px 15px 3px 15px;
  text-align: left;
  border-width: 1px 0;
  letter-spacing: 0.1em;
  font-size: 1.0625rem;
  line-height: 1.4em;
  white-space: nowrap;
}
body .purchase-page .jisseki .jisseki-list .ebox-inner .info table tr td {
  border: 1px dashed #000;
  border-width: 1px 0;
  padding: 3px 0 3px 15px;
  font-size: 1.0625rem;
  line-height: 1.4em;
}
body .purchase-page .must-paper {
  padding: 8.1111111111vh 0 9.1111111111vh;
}
body .purchase-page .must-paper h2 {
  text-align: center;
}
body .purchase-page .must-paper .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .purchase-page .must-paper .chart {
  width: 926px;
  max-width: 95%;
  position: relative;
  margin: 6vh auto 0;
}
body .purchase-page .must-paper .chart img {
  display: block;
  width: 100%;
  height: auto;
}
body .purchase-page .must-paper .chart .inner {
  display: block;
  position: absolute;
  width: 13.0669546436%;
  height: 23.5880398671%;
  bottom: 0;
}
body .purchase-page .must-paper .chart .link1 {
  left: 2.3%;
}
body .purchase-page .must-paper .chart .link2 {
  left: 18.4%;
}
body .purchase-page .must-paper .chart .link3 {
  left: 34.5%;
}
body .purchase-page .must-paper .chart .link4 {
  left: 50.5%;
}
body .purchase-page .must-paper .chart .link5 {
  left: 66.6%;
}
body .purchase-page .must-paper .chart .link6 {
  left: 82.8%;
}
body .purchase-page .satei-content {
  border-left: 18px solid #e80303;
  border-right: 18px solid #e80303;
  background: #f2f2f2;
}
body .purchase-page .satei-content .satei-info {
  padding: 10.2222222222vh 0 10.5555555556vh;
  background: url(../image/common/back_gra.png) no-repeat center center;
  background: -webkit-image-set(url(../image/common/back_gra.png) 1x, url(../image/common/back_gra@2x.png) 2x) no-repeat center center;
  background-size: 100% 100%;
}
body .purchase-page .satei-content .satei-info h2 {
  text-align: center;
}
body .purchase-page .satei-content .satei-info .flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 885px;
  max-width: 90%;
  margin: 8.3333333333vh auto 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .purchase-page .satei-content .satei-info .flex-box .common-text {
  width: 47.4576271186%;
}
body .purchase-page .satei-content .satei-info .flex-box .common-text .red-text {
  color: #e80303;
}
body .purchase-page .satei-content .satei-info .flex-box .tel-contact {
  width: 44.2937853107%;
  background: #fff;
  border: 1px solid #e80303;
  border-radius: 14px;
  overflow: hidden;
}
body .purchase-page .satei-content .satei-info .flex-box .tel-contact .head-text {
  background: #e80303;
  color: #fff;
  text-align: center;
  font-size: 1.1875rem;
  letter-spacing: 0.1em;
  line-height: 1.3em;
  padding: 1.1111111111vh 0.5vh;
}
body .purchase-page .satei-content .satei-info .flex-box .tel-contact .tel {
  text-align: center;
  padding: 0 0.5vh;
  color: #e80303;
  font-size: 2.8125rem;
  letter-spacing: -0.0248888889em;
  white-space: nowrap;
  line-height: 1px;
  margin-top: 2.8888888889vh;
}
body .purchase-page .satei-content .satei-info .flex-box .tel-contact .tel:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  bottom: 3px;
  text-align: center;
  width: 38px;
  height: 38px;
  background: url(../image/common/tel-red.png) no-repeat center center;
  background: -webkit-image-set(url(../image/common/tel-red.png) 1x, url(../image/common/tel-red@2x.png) 2x) no-repeat center center;
  background-size: contain;
  margin-right: 5px;
}
@media (max-width: 850px) {
  body .purchase-page .satei-content .satei-info .flex-box .tel-contact .tel {
    font-size: 2.3125rem;
  }
  body .purchase-page .satei-content .satei-info .flex-box .tel-contact .tel:before {
    width: 28px;
    height: 28px;
  }
}
body .purchase-page .satei-content .satei-info .flex-box .tel-contact .time {
  background: #e6e6e6;
  text-align: center;
  width: 320px;
  max-width: 85%;
  margin: 2.2222222222vh auto 0;
  font-size: 1.0625rem;
  letter-spacing: 0.1em;
  line-height: 1.5882352941em;
  padding: 4px 0.5vh;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 20px;
}
body .purchase-page .satei-content .satei-info .flex-box .tel-contact .atention {
  text-align: center;
  margin: 1.2222222222vh 0 0;
  padding-bottom: 2.5555555556vh;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1.7857142857em;
}
body .purchase-page .satei-content form {
  padding-top: 7vh;
  width: 980px;
  max-width: 90%;
  margin: 0 auto;
  padding-bottom: 15.5555555556vh;
}
body .purchase-page .satei-content form section {
  margin-top: 5.1111111111vh;
  background: #fff;
  padding-bottom: 8.2222222222vh;
}
body .purchase-page .satei-content form section h3 {
  text-align: center;
  color: #fff;
  background: #808080;
  font-size: 1.25rem;
  letter-spacing: 0.2em;
  padding: 2.2222222222vh 0;
  font-weight: 500;
  margin-bottom: 7.1111111111vh;
}
body .purchase-page .satei-content form section .image {
  text-align: center;
  margin-bottom: 3.8888888889vh;
}
body .purchase-page .satei-content form section .image img {
  max-width: 80%;
  height: auto;
}
body .purchase-page .satei-content form section dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 812px;
  max-width: 90%;
  margin: 3.1111111111vh auto 0;
}
body .purchase-page .satei-content form section dl dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  width: 140px;
  margin-right: 4.9261083744%;
  font-size: 0.9375rem;
  letter-spacing: 0.2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  line-height: 1.4em;
}
body .purchase-page .satei-content form section dl dt .req {
  color: #e80303;
}
body .purchase-page .satei-content form section dl dd {
  width: 100%;
}
body .purchase-page .satei-content form section dl dd input[type^=text], body .purchase-page .satei-content form section dl dd input[type^=tel], body .purchase-page .satei-content form section dl dd input[type^=email] {
  height: 43px;
  width: 336px;
  max-width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f2f2f2;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
@media (max-width: 647px) {
  body .purchase-page .satei-content form section dl dd input[type^=text], body .purchase-page .satei-content form section dl dd input[type^=tel], body .purchase-page .satei-content form section dl dd input[type^=email] {
    width: 100%;
  }
}
body .purchase-page .satei-content form section dl dd select {
  height: 43px;
  border-radius: 0;
  max-width: 100%;
  width: 336px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: 1px solid #f2f2f2;
  line-height: 1.4em;
}
@media (min-width: 701px) {
  body .purchase-page .satei-content form section dl dd select {
    -webkit-appearance: button;
  }
}
@media (max-width: 647px) {
  body .purchase-page .satei-content form section dl dd select {
    width: 100%;
  }
}
body .purchase-page .satei-content form section dl dd.full-area input[type^=text], body .purchase-page .satei-content form section dl dd.full-area input[type^=tel], body .purchase-page .satei-content form section dl dd.full-area input[type^=email] {
  width: 100%;
}
body .purchase-page .satei-content form section dl dd.full-area select {
  width: 100%;
}
body .purchase-page .satei-content form section dl dd.full-area .text {
  margin-top: 5px;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .purchase-page .satei-content form section dl dd.mini-area input {
  max-width: 100%;
}
body .purchase-page .satei-content form section dl dd.mini-area .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .purchase-page .satei-content form section dl dd.duble-input .p-region {
  width: 97px;
}
body .purchase-page .satei-content form section dl dd.duble-input .second-input {
  margin-top: 10px;
}
body .purchase-page .satei-content form section dl dd.duble-input .second-input .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .purchase-page .satei-content form section dl dd.area {
  position: relative;
  width: 100%;
}
body .purchase-page .satei-content form section dl dd.area .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  padding-top: 31.3479623824%;
}
body .purchase-page .satei-content form section dl dd.area textarea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f2f2f2;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
body .purchase-page .satei-content form section dl dd .text {
  font-size: 0.9375rem;
  line-height: 1.5625rem;
  letter-spacing: 0.1em;
}
body .purchase-page .satei-content form section dl.duble dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .purchase-page .satei-content form section dl.duble dd .left, body .purchase-page .satei-content form section dl.duble dd .right {
  width: 48%;
}
body .purchase-page .satei-content form section dl.duble dd .left input[type^=text], body .purchase-page .satei-content form section dl.duble dd .right input[type^=text] {
  width: 100%;
}
body .purchase-page .satei-content form section dl.duble dd .left {
  margin-right: 2%;
}
body .purchase-page .satei-content form section .etc-line {
  border-top: 1px solid rgba(179, 179, 179, 0.5);
  padding-top: 4.4444444444vh;
  width: 90%;
  margin: 5.5555555556vh auto 0;
}
body .purchase-page .satei-content form section .etc-info {
  width: 590px;
  max-width: 90%;
  margin: 0 auto;
}
body .purchase-page .satei-content form section .etc-info dl dt {
  width: 175px;
}
body .purchase-page .satei-content form .privacy-policy {
  width: 885px;
  max-width: 90%;
  margin: 6.6666666667vh auto 0;
  border: rgba(179, 179, 179, 0.5) solid 1px;
  background: #fff;
  padding: 1vh 0;
}
body .purchase-page .satei-content form .privacy-policy .privacy-policy-inner {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.5vh;
  height: 170px;
  overflow-x: hidden;
  overflow-y: scroll;
  margin: 0 auto;
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
  line-height: 1.6666666667em;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .purchase-page .satei-content form .privacy-policy .privacy-policy-inner dl dt {
  margin-top: 3px;
}
body .purchase-page .satei-content form .privacy-policy .privacy-policy-inner dl dd {
  padding-left: 1em;
}
body .purchase-page .satei-content form .privacy-policy .privacy-policy-inner dl dd a {
  text-decoration: underline;
}
body .purchase-page .satei-content form .privacy-policy .privacy-policy-inner dl dd ul li {
  padding-left: 1.1em;
  text-indent: -1.1em;
}
body .purchase-page .satei-content form .kakunin {
  text-align: center;
  font-size: 0.9375rem;
  line-height: 1.6666666667em;
  letter-spacing: 0.05em;
  margin-top: 3.7777777778vh;
}
body .purchase-page .satei-content form .submit {
  text-align: center;
  margin-top: 6.2222222222vh;
}
body .purchase-page .satei-content form .submit label input, body .purchase-page .satei-content form .submit label .ajax-loader, body .purchase-page .satei-content form .submit label .wpcf7-spinner {
  display: none;
}
body .purchase-page .satei-content form .submit label .real-button:hover {
  cursor: pointer;
}
@media (max-width: 1280px) {
  body .purchase-page .satei-content {
    border-left: 1.40625vw solid #e80303;
    border-right: 1.40625vw solid #e80303;
  }
}
body .parts-page {
  overflow: hidden;
}
body .parts-page .parts-genre {
  padding-top: 8.2222222222vh;
  margin-bottom: 14.4444444444vh;
}
body .parts-page .parts-genre .common-title {
  text-align: center;
}
body .parts-page .parts-genre .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .parts-page .parts-genre .genre-list {
  width: 980px;
  max-width: 90%;
  margin: 7.7777777778vh auto 0;
}
body .parts-page .parts-genre .genre-list ul li {
  padding: 6.1111111111vh 0;
  position: relative;
  z-index: 1;
}
body .parts-page .parts-genre .genre-list ul li:before {
  content: "";
  display: block;
  z-index: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.55);
}
body .parts-page .parts-genre .genre-list ul li .line-image {
  z-index: 3;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 167px;
  max-width: 30%;
}
body .parts-page .parts-genre .genre-list ul li .line-image img {
  display: block;
  width: 100%;
  height: auto;
}
body .parts-page .parts-genre .genre-list ul li .inner {
  width: 365px;
  max-width: 90%;
  margin: 0 auto;
  position: relative;
  z-index: 4;
}
body .parts-page .parts-genre .genre-list ul li .inner .logo {
  text-align: center;
}
body .parts-page .parts-genre .genre-list ul li .inner .logo img {
  max-width: 38%;
  height: auto;
}
body .parts-page .parts-genre .genre-list ul li .inner .catch {
  text-align: center;
  font-size: 1.1875rem;
  line-height: 1.4em;
  letter-spacing: 0.2em;
  color: #fff;
  margin-top: 1.4444444444vh;
}
body .parts-page .parts-genre .genre-list ul li .inner .text {
  font-size: 0.9375rem;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.5333333333em;
  letter-spacing: 0.05em;
  color: #fff;
  margin-top: 2.8888888889vh;
}
body .parts-page .parts-genre .list-pc ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
body .parts-page .parts-genre .list-pc ul li {
  width: 48.6734693878%;
  margin-top: 2.2222222222vh;
}
body .parts-page .act-image-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}
body .parts-page .act-image-box .back {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: #f2f2f2;
  z-index: -1;
}
@media (min-width: 701px) {
  body .parts-page .act-image-box .action1 {
    right: 100%;
    -webkit-transition: right 0.4s cubic-bezier(0.59, 0.01, 0.26, 1);
    transition: right 0.4s cubic-bezier(0.59, 0.01, 0.26, 1);
  }
  body .parts-page .act-image-box .action1.on-action {
    right: 0;
  }
  body .parts-page .act-image-box .action2 {
    opacity: 0;
    -webkit-transition: opacity 0.3s linear;
    transition: opacity 0.3s linear;
  }
  body .parts-page .act-image-box .action2.on-action {
    opacity: 1;
  }
}
body .parts-page .act-image-box .image {
  width: 57.34375%;
}
body .parts-page .act-image-box .image .image-base {
  display: block;
  padding-top: 76.0217983651%;
}
body .parts-page .act-image-box .text-field {
  width: 42.65625%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.5vh 0;
}
body .parts-page .act-image-box .text-field .common-title {
  text-align: center;
  width: 90%;
}
body .parts-page .act-image-box .text-field .common-text {
  width: 270px;
  max-width: 90%;
  margin-top: 7.2222222222vh;
}
body .parts-page .act-image-box.revers .back {
  right: auto !important;
  left: 0;
}
body .parts-page .act-image-box.revers .image {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media (min-width: 701px) {
  body .parts-page .act-image-box.revers .action1 {
    right: auto !important;
    left: 100%;
    -webkit-transition: left 0.4s cubic-bezier(0.59, 0.01, 0.26, 1);
    transition: left 0.4s cubic-bezier(0.59, 0.01, 0.26, 1);
  }
  body .parts-page .act-image-box.revers .action1.on-action {
    left: 0;
  }
}
body .parts-page .must-info {
  margin: 12vh auto 0;
  width: 980px;
  max-width: 85%;
  background: url(../image/common/bg_line.png) repeat center center;
  background: -webkit-image-set(url(../image/common/bg_line.png) 1x, url(../image/common/bg_line@2x.png) 2x) repeat center center;
  padding: 11vh 0 10vh;
  border-top: rgba(128, 128, 128, 0.5) solid 1px;
  border-bottom: rgba(128, 128, 128, 0.5) solid 1px;
}
body .parts-page .must-info h2 {
  text-align: center;
}
body .parts-page .must-info .common-text {
  margin: 7.7777777778vh auto 0;
  width: 885px;
  max-width: 90%;
  text-align: center;
}
body .parts-page .yahoo {
  width: 795px;
  max-width: 80%;
  margin: 8.5555555556vh auto 9.2222222222vh;
}
body .parts-page .yahoo .flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .parts-page .yahoo .flex-box .left-image {
  width: 27.4213836478%;
}
body .parts-page .yahoo .flex-box .left-image img {
  width: 100%;
  height: auto;
}
body .parts-page .yahoo .flex-box .right-box {
  width: 69.6855345912%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .parts-page .yahoo .flex-box .right-box .image {
  width: 100%;
}
body .parts-page .yahoo .flex-box .right-box .image a {
  display: block;
}
body .parts-page .yahoo .flex-box .right-box .image a img {
  width: 100%;
  height: auto;
}
body .parts-page .yahoo .flex-box .right-box .common-text {
  width: 100%;
  margin-top: 5px;
}
body .parts-page .yahoo .link {
  width: 100%;
}
body .parts-page .yahoo .link a {
  display: block;
}
body .parts-page .yahoo .link a img {
  width: 100%;
  height: auto;
}
body .parts-page .satei-content {
  border-left: 18px solid #e80303;
  border-right: 18px solid #e80303;
  background: #f2f2f2;
}
body .parts-page .satei-content .satei-info {
  padding: 10.2222222222vh 0 10.5555555556vh;
  background: url(../image/common/back_gra.png) no-repeat center center;
  background: -webkit-image-set(url(../image/common/back_gra.png) 1x, url(../image/common/back_gra@2x.png) 2x) no-repeat center center;
  background-size: 100% 100%;
}
body .parts-page .satei-content .satei-info h2 {
  text-align: center;
}
body .parts-page .satei-content .satei-info .flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 885px;
  max-width: 90%;
  margin: 8.3333333333vh auto 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .parts-page .satei-content .satei-info .flex-box .common-text {
  width: 47.4576271186%;
}
body .parts-page .satei-content .satei-info .flex-box .common-text .red-text {
  color: #e80303;
}
body .parts-page .satei-content .satei-info .flex-box .tel-contact {
  width: 44.2937853107%;
  background: #fff;
  border: 1px solid #e80303;
  border-radius: 14px;
  overflow: hidden;
}
body .parts-page .satei-content .satei-info .flex-box .tel-contact .head-text {
  background: #e80303;
  color: #fff;
  text-align: center;
  font-size: 1.1875rem;
  letter-spacing: 0.1em;
  line-height: 1.3em;
  padding: 1.1111111111vh 0.5vh;
}
body .parts-page .satei-content .satei-info .flex-box .tel-contact .tel {
  text-align: center;
  padding: 0 0.5vh;
  color: #e80303;
  font-size: 2.8125rem;
  letter-spacing: -0.0248888889em;
  white-space: nowrap;
  line-height: 1px;
  margin-top: 2.8888888889vh;
}
body .parts-page .satei-content .satei-info .flex-box .tel-contact .tel:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: relative;
  bottom: 3px;
  text-align: center;
  width: 38px;
  height: 38px;
  background: url(../image/common/tel-red.png) no-repeat center center;
  background: -webkit-image-set(url(../image/common/tel-red.png) 1x, url(../image/common/tel-red@2x.png) 2x) no-repeat center center;
  background-size: contain;
  margin-right: 5px;
}
@media (max-width: 850px) {
  body .parts-page .satei-content .satei-info .flex-box .tel-contact .tel {
    font-size: 2.3125rem;
  }
  body .parts-page .satei-content .satei-info .flex-box .tel-contact .tel:before {
    width: 28px;
    height: 28px;
  }
}
body .parts-page .satei-content .satei-info .flex-box .tel-contact .time {
  background: #e6e6e6;
  text-align: center;
  width: 320px;
  max-width: 85%;
  margin: 2.2222222222vh auto 0;
  font-size: 1.0625rem;
  letter-spacing: 0.1em;
  line-height: 1.5882352941em;
  padding: 4px 0.5vh;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 20px;
}
body .parts-page .satei-content .satei-info .flex-box .tel-contact .atention {
  text-align: center;
  margin: 1.2222222222vh 0 0;
  padding-bottom: 2.5555555556vh;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1.7857142857em;
}
body .parts-page .satei-content form {
  padding-top: 7vh;
  width: 980px;
  max-width: 90%;
  margin: 0 auto;
  padding-bottom: 15.5555555556vh;
}
body .parts-page .satei-content form section {
  margin-top: 5.1111111111vh;
  background: #fff;
  padding-bottom: 8.2222222222vh;
}
body .parts-page .satei-content form section h3 {
  text-align: center;
  color: #fff;
  background: #808080;
  font-size: 1.25rem;
  letter-spacing: 0.2em;
  padding: 2.2222222222vh 0;
  font-weight: 500;
  margin-bottom: 7.1111111111vh;
}
body .parts-page .satei-content form section .image {
  text-align: center;
  margin-bottom: 3.8888888889vh;
}
body .parts-page .satei-content form section .image img {
  max-width: 80%;
  height: auto;
}
body .parts-page .satei-content form section dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 812px;
  max-width: 90%;
  margin: 3.1111111111vh auto 0;
}
body .parts-page .satei-content form section dl dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  width: 140px;
  margin-right: 4.9261083744%;
  font-size: 0.9375rem;
  letter-spacing: 0.2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  line-height: 1.4em;
}
body .parts-page .satei-content form section dl dt .req {
  color: #e80303;
}
body .parts-page .satei-content form section dl dd {
  width: 100%;
}
body .parts-page .satei-content form section dl dd input[type^=text], body .parts-page .satei-content form section dl dd input[type^=tel], body .parts-page .satei-content form section dl dd input[type^=email] {
  height: 43px;
  width: 336px;
  max-width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f2f2f2;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
@media (max-width: 647px) {
  body .parts-page .satei-content form section dl dd input[type^=text], body .parts-page .satei-content form section dl dd input[type^=tel], body .parts-page .satei-content form section dl dd input[type^=email] {
    width: 100%;
  }
}
body .parts-page .satei-content form section dl dd select {
  height: 43px;
  border-radius: 0;
  max-width: 100%;
  width: 336px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: 1px solid #f2f2f2;
  line-height: 1.4em;
}
@media (min-width: 701px) {
  body .parts-page .satei-content form section dl dd select {
    -webkit-appearance: button;
  }
}
@media (max-width: 647px) {
  body .parts-page .satei-content form section dl dd select {
    width: 100%;
  }
}
body .parts-page .satei-content form section dl dd.full-area input[type^=text], body .parts-page .satei-content form section dl dd.full-area input[type^=tel], body .parts-page .satei-content form section dl dd.full-area input[type^=email] {
  width: 100%;
}
body .parts-page .satei-content form section dl dd.full-area select {
  width: 100%;
}
body .parts-page .satei-content form section dl dd.full-area .text {
  margin-top: 5px;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .parts-page .satei-content form section dl dd.mini-area input {
  max-width: 100%;
}
body .parts-page .satei-content form section dl dd.mini-area .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .parts-page .satei-content form section dl dd.duble-input .p-region {
  width: 97px;
}
body .parts-page .satei-content form section dl dd.duble-input .second-input {
  margin-top: 10px;
}
body .parts-page .satei-content form section dl dd.duble-input .second-input .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .parts-page .satei-content form section dl dd.area {
  position: relative;
  width: 100%;
}
body .parts-page .satei-content form section dl dd.area .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  padding-top: 31.3479623824%;
}
body .parts-page .satei-content form section dl dd.area textarea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f2f2f2;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
body .parts-page .satei-content form section dl dd.full-radio .radio-box:last-of-type {
  margin-top: 0.5em;
}
body .parts-page .satei-content form section dl dd .text {
  font-size: 0.9375rem;
  line-height: 1.5625rem;
  letter-spacing: 0.1em;
}
body .parts-page .satei-content form section dl.duble dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .parts-page .satei-content form section dl.duble dd .left, body .parts-page .satei-content form section dl.duble dd .right {
  width: 48%;
}
body .parts-page .satei-content form section dl.duble dd .left input[type^=text], body .parts-page .satei-content form section dl.duble dd .right input[type^=text] {
  width: 100%;
}
body .parts-page .satei-content form section dl.duble dd .left {
  margin-right: 2%;
}
body .parts-page .satei-content form section .etc-line {
  border-top: 1px solid rgba(179, 179, 179, 0.5);
  padding-top: 4.4444444444vh;
  width: 90%;
  margin: 5.5555555556vh auto 0;
}
body .parts-page .satei-content form section .etc-info {
  width: 590px;
  max-width: 90%;
  margin: 0 auto;
}
body .parts-page .satei-content form section .etc-info dl dt {
  width: 175px;
}
body .parts-page .satei-content form .privacy-policy {
  width: 885px;
  max-width: 90%;
  margin: 6.6666666667vh auto 0;
  border: rgba(179, 179, 179, 0.5) solid 1px;
  background: #fff;
  padding: 1vh 0;
}
body .parts-page .satei-content form .privacy-policy .privacy-policy-inner {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.5vh;
  height: 170px;
  overflow-x: hidden;
  overflow-y: scroll;
  margin: 0 auto;
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
  line-height: 1.6666666667em;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .parts-page .satei-content form .privacy-policy .privacy-policy-inner dl dt {
  margin-top: 3px;
}
body .parts-page .satei-content form .privacy-policy .privacy-policy-inner dl dd {
  padding-left: 1em;
}
body .parts-page .satei-content form .privacy-policy .privacy-policy-inner dl dd a {
  text-decoration: underline;
}
body .parts-page .satei-content form .privacy-policy .privacy-policy-inner dl dd ul li {
  padding-left: 1.1em;
  text-indent: -1.1em;
}
body .parts-page .satei-content form .kakunin {
  text-align: center;
  font-size: 0.9375rem;
  line-height: 1.6666666667em;
  letter-spacing: 0.05em;
  margin-top: 3.7777777778vh;
}
body .parts-page .satei-content form .submit {
  text-align: center;
  margin-top: 6.2222222222vh;
}
body .parts-page .satei-content form .submit label input, body .parts-page .satei-content form .submit label .ajax-loader, body .parts-page .satei-content form .submit label .wpcf7-spinner {
  display: none;
}
body .parts-page .satei-content form .submit label .real-button:hover {
  cursor: pointer;
}
@media (max-width: 1280px) {
  body .parts-page .satei-content {
    border-left: 1.40625vw solid #e80303;
    border-right: 1.40625vw solid #e80303;
  }
}
body .company-page .boss-message {
  margin-top: 8.8888888889vh;
  overflow: hidden;
}
body .company-page .boss-message h2 {
  text-align: center;
}
body .company-page .boss-message .middle-box {
  position: relative;
  margin-top: 10.2222222222vh;
  overflow: hidden;
  padding-bottom: 8.8888888889vh;
}
body .company-page .boss-message .middle-box .back-box {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: -1;
  height: 100%;
}
body .company-page .boss-message .middle-box .back-box:before {
  content: "";
  width: 0;
  height: 56.4814814815%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #f2f2f2;
  -webkit-transition: width 0.4s linear;
  transition: width 0.4s linear;
}
body .company-page .boss-message .middle-box .back-box:after {
  content: "";
  display: block;
  width: 0;
  background: #e80303;
  height: 45.6790123457%;
  position: absolute;
  left: 0;
  bottom: 22.2222222222%;
  -webkit-transition: width 0.4s linear 0.2s;
  transition: width 0.4s linear 0.2s;
}
body .company-page .boss-message .middle-box .back-box.on-action:before {
  width: 100%;
}
body .company-page .boss-message .middle-box .back-box.on-action:after {
  width: 52.890625%;
}
body .company-page .boss-message .middle-box .flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 1280px;
  max-width: 100%;
  margin: 0 auto;
}
body .company-page .boss-message .middle-box .flex-box .left-box {
  width: 50.390625%;
  opacity: 0;
  -webkit-transition: opacity 0.2s linear 0.2s;
  transition: opacity 0.2s linear 0.2s;
}
body .company-page .boss-message .middle-box .flex-box .left-box .boss-image .image-base {
  display: block;
  padding-top: 63.2558139535%;
}
body .company-page .boss-message .middle-box .flex-box .left-box .mini-image-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-left: auto;
  width: 438px;
  max-width: 70%;
  margin-top: 1.5555555556vh;
}
body .company-page .boss-message .middle-box .flex-box .left-box .mini-image-box li {
  width: 48.401826484%;
}
body .company-page .boss-message .middle-box .flex-box .left-box .mini-image-box li img {
  width: 100%;
  height: auto;
}
body .company-page .boss-message .middle-box .flex-box .left-box.on-action {
  opacity: 1;
}
body .company-page .boss-message .middle-box .flex-box .right-box {
  width: 40.78125%;
  opacity: 0;
  -webkit-transition: opacity 0.2s linear 0.2s;
  transition: opacity 0.2s linear 0.2s;
}
body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box {
  width: 372px;
  max-width: 90%;
  padding-top: 4.7777777778vh;
}
body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box h3 {
  font-size: 1.125rem;
  letter-spacing: 0.05em;
  line-height: 1.9444444444em;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: 500;
}
body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box .name {
  text-align: right;
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
  line-height: 1.8em;
  margin-top: 7.7777777778vh;
}
body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box .common-text {
  margin-top: 2.8888888889vh;
}
body .company-page .boss-message .middle-box .flex-box .right-box.on-action {
  opacity: 1;
}
body .company-page .gaiyo-box {
  border-left: 18px solid #b3b3b3;
  border-right: 18px solid #b3b3b3;
  padding: 10.4444444444vh 0 11.5555555556vh;
}
@media (max-width: 1280px) {
  body .company-page .gaiyo-box {
    border-left: 1.40625vw solid #b3b3b3;
    border-right: 1.40625vw solid #b3b3b3;
  }
}
body .company-page .gaiyo-box .gaiyo-inner {
  width: 980px;
  max-width: 90%;
  margin: 0 auto;
}
body .company-page .gaiyo-box .gaiyo-inner h2 {
  text-align: center;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box {
  margin-top: 7.2222222222vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box {
  width: 51.0204081633%;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box table tr th {
  font-weight: 500;
  font-size: 1.0625rem;
  letter-spacing: 0.8em;
  line-height: 1.7647058824em;
  height: 1.7647058824em;
  text-align: justify;
  text-justify: inter-ideograph;
  min-width: 108px;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box table tr th:after {
  content: "";
  display: inline-block;
  width: 100%;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box table tr td {
  font-size: 0.9375rem;
  padding-left: 12%;
  line-height: 1.75rem;
  letter-spacing: 0.0747058824%;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box .image {
  width: 41.7346938776%;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box .image .image-base {
  display: block;
  padding-top: 72.6161369193%;
}
body .company-page .gaiyo-box .gaiyo-inner .middlebox {
  margin-top: 8.8888888889vh;
  overflow: hidden;
  border-radius: 20px;
  background: #f2f2f2;
  padding-bottom: 3.8888888889vh;
}
body .company-page .gaiyo-box .gaiyo-inner .middlebox h3 {
  color: #fff;
  background: #808080;
  padding: 1.8vh 0;
  text-align: center;
  font-size: 1.0625rem;
  letter-spacing: 0.14em;
  font-weight: 500;
  margin-bottom: 3.1111111111vh;
}
body .company-page .gaiyo-box .gaiyo-inner .middlebox .list-box {
  width: 95%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
body .company-page .gaiyo-box .gaiyo-inner .middlebox .list-box .list-content {
  max-width: 100%;
  width: 255px;
}
body .company-page .gaiyo-box .gaiyo-inner .middlebox .list-box .list-content dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 1.2222222222vh;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 {
  margin-top: 4.4444444444vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section {
  width: 48.6734693878%;
  overflow: hidden;
  border-radius: 20px;
  background: #f2f2f2;
  padding-bottom: 3.8888888889vh;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section h3 {
  color: #fff;
  background: #808080;
  padding: 1.8vh 0;
  text-align: center;
  font-size: 1.0625rem;
  letter-spacing: 0.14em;
  font-weight: 500;
  margin-bottom: 3.1111111111vh;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section.left-box dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 415px;
  max-width: 90%;
  margin: 0 auto;
  font-size: 0.9375rem;
  line-height: 1.5em;
  margin-top: 0.5vh;
  letter-spacing: 0.1em;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section.left-box dl dt {
  width: 48%;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section.left-box dl dt.maruyasu:after {
  content: "";
  height: 21px;
  width: 21px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 1em;
  margin-bottom: 3px;
  background: url(../image/company/yasu.png) no-repeat center center;
  background: -webkit-image-set(url(../image/company/yasu.png) 1x, url(../image/company/yasu@2x.png) 2x) no-repeat center center;
  background-size: contain;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section.left-box dl dd {
  width: 48%;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section.right-box .common-text {
  width: 415px;
  max-width: 90%;
  margin: 0 auto 1.8888888889vh;
  line-height: 1.6470588235em;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section.right-box .mark {
  width: 415px;
  max-width: 90%;
  margin: 0 auto;
  text-align: center;
}
body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section.right-box .mark img {
  max-width: 80%;
  height: auto;
}
body .company-page .enkaku-box {
  position: relative;
  padding: 8.2222222222vh 0 9.5555555556vh;
}
body .company-page .enkaku-box .bg {
  display: block;
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
body .company-page .enkaku-box .bg:before {
  content: "";
  display: block;
  width: 0;
  height: 100%;
  -webkit-transition: width 0.4s linear;
  transition: width 0.4s linear;
  background: url(../image/common/bg_line.png) repeat right center;
  background: -webkit-image-set(url(../image/common/bg_line.png) 1x, url(../image/common/bg_line@2x.png) 2x) repeat right center;
  position: absolute;
  top: 0;
  right: 0;
}
body .company-page .enkaku-box .bg:after {
  content: "";
  display: block;
  width: 0;
  background: #e80303;
  position: absolute;
  height: 46.6227347611%;
  right: 0;
  -webkit-transition: width 0.4s linear 0.2s;
  transition: width 0.4s linear 0.2s;
  bottom: 14.1680395387%;
}
body .company-page .enkaku-box .bg.on-action:before {
  width: 100%;
}
body .company-page .enkaku-box .bg.on-action:after {
  width: 44.765625%;
}
body .company-page .enkaku-box .enkaku-inner {
  width: 1280px;
  max-width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: opacity 0.2s linear 0.2s;
  transition: opacity 0.2s linear 0.2s;
  opacity: 0;
}
body .company-page .enkaku-box .enkaku-inner.on-action {
  opacity: 1;
}
body .company-page .enkaku-box .enkaku-inner .left-content {
  width: 44.53125%;
}
body .company-page .enkaku-box .enkaku-inner .left-content section {
  margin-left: auto;
  width: 415px;
  max-width: 90%;
}
body .company-page .enkaku-box .enkaku-inner .left-content section h2 {
  text-align: center;
}
body .company-page .enkaku-box .enkaku-inner .left-content section table {
  margin-top: 8.1111111111vh;
}
body .company-page .enkaku-box .enkaku-inner .left-content section table tr {
  font-size: 1.0625rem;
  letter-spacing: 0.0747058824em;
  line-height: 1.4em;
}
body .company-page .enkaku-box .enkaku-inner .left-content section table tr th {
  font-weight: 500;
  white-space: nowrap;
  text-align: left;
}
body .company-page .enkaku-box .enkaku-inner .left-content section table tr td {
  padding-left: 4%;
  padding-bottom: 8px;
}
body .company-page .enkaku-box .enkaku-inner .right-image {
  width: 50.390625%;
}
body .company-page .enkaku-box .enkaku-inner .right-image img {
  width: 100%;
  height: auto;
}
body .company-page .access {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 980px;
  max-width: 90%;
  margin: 11.6666666667vh auto 0;
}
body .company-page .access .map-box {
  width: 50%;
  position: relative;
}
body .company-page .access .map-box:after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  right: 5%;
  bottom: 5%;
  z-index: -1;
  background: #e80303;
}
body .company-page .access .map-box #map2 {
  position: relative;
  padding-top: 69.7394789579%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
}
body .company-page .access section {
  width: 50%;
  padding-top: 7.8888888889vh;
}
body .company-page .access section h2 {
  text-align: center;
}
body .company-page .access section dl {
  margin: 7vh auto 0;
  font-size: 1.0625rem;
  width: 406px;
  max-width: 90%;
  line-height: 1.7647058824em;
  letter-spacing: 0.0747058824em;
}
body .company-page .access section dl dt {
  text-align: center;
}
body .company-page .access section dl dd {
  text-align: justify;
  text-justify: inter-ideograph;
}
body .company-page .how-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 13.3333333333vh auto 0;
  width: 980px;
  max-width: 100%;
}
body .company-page .how-box a {
  display: block;
  position: relative;
  border-top: 1px solid #ff9b78;
  border-bottom: 1px solid #ff9b78;
  width: 50%;
  padding-top: 8.4444444444vh;
  padding-bottom: 5vh;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
body .company-page .how-box a section h2 {
  background: #fff;
  font-size: 1.125rem;
  letter-spacing: 0.1em;
  padding: 1.7777777778vh 3.6666666667vh;
  border: 1px solid #ff9b78;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-weight: 600;
}
body .company-page .how-box a section .image {
  border-radius: 50%;
  overflow: hidden;
  width: 68.5714285714%;
  margin: 0 auto;
  border: 10px solid #ffb07b;
}
body .company-page .how-box a section .image img {
  width: 100%;
  height: auto;
}
body .company-page .how-box a section .common-arrow-link {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 380px;
  max-width: 90%;
  margin: 0 auto;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
body .company-page .how-box a section .common-arrow-link .more-inner {
  display: block;
  text-align: left;
  position: relative;
  font-size: 1.3125rem;
  color: #e80303;
  letter-spacing: 0.05em;
  overflow: hidden;
  font-weight: 100;
}
body .company-page .how-box a section .common-arrow-link .more-inner img {
  display: block;
  width: 47px;
  max-width: 80%;
  height: auto;
  -webkit-transform: translate(-40%, 0);
          transform: translate(-40%, 0);
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  margin-top: 6px;
}
body .company-page .how-box a section .common-text {
  margin: 2.2222222222vh auto 0;
  width: 380px;
  max-width: 90%;
}
body .company-page .how-box a:first-of-type {
  background: rgba(255, 155, 120, 0.15);
}
body .company-page .how-box a:hover {
  opacity: 0.7;
}
body .company-page .how-box a:hover section .common-arrow-link .more-inner img {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
body .business-page .business-main {
  padding-top: 8.2222222222vh;
}
body .business-page .business-main .common-title {
  text-align: center;
}
body .business-page .business-main .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .business-page .business-main .middle-box {
  width: 980px;
  max-width: 100%;
  margin: 8.8888888889vh auto 0;
}
body .business-page .business-main .middle-box .flex-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
body .business-page .business-main .middle-box .flex-box .image {
  width: 55.5102040816%;
}
body .business-page .business-main .middle-box .flex-box .image .image-base {
  display: block;
  padding-top: 64.7058823529%;
}
body .business-page .business-main .middle-box .flex-box section {
  width: 44.4897959184%;
  background: #ffb07b;
  color: #fff;
  padding: 2em 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body .business-page .business-main .middle-box .flex-box section h3 {
  text-align: center;
  width: 100%;
}
body .business-page .business-main .middle-box .flex-box section h3 .num {
  font-size: 1.5625rem;
  letter-spacing: -0.0248em;
  font-weight: 500;
}
body .business-page .business-main .middle-box .flex-box section h3 .title {
  font-size: 1.125rem;
  line-height: 1.9444444444em;
  letter-spacing: 0.05em;
  display: inline-block;
  font-weight: 500;
}
body .business-page .business-main .middle-box .flex-box section .common-text {
  width: 245px;
  max-width: 80%;
  margin-top: 4.4444444444vh;
}
body .business-page .business-main .middle-box .flex-box.revers .image {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
body .business-page .yottu-box {
  margin-top: 7.7777777778vh;
  position: relative;
}
body .business-page .yottu-box:before {
  content: "";
  display: block;
  background: #f2f2f2;
  width: 100%;
  height: calc(100% - 8.5vh);
  top: 4.25vh;
  left: 0;
  position: absolute;
  z-index: 0;
}
body .business-page .yottu-box .yottu-inner {
  width: 100%;
  position: relative;
}
body .business-page .yottu-box .yottu-inner .image {
  width: 68.125%;
  min-height: 350px;
  max-height: 700px;
}
body .business-page .yottu-box .yottu-inner .image .image-base {
  display: block;
  padding-top: 51.9495412844%;
}
body .business-page .yottu-box .yottu-inner .text-wrap {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  height: 100%;
  width: 980px;
  max-width: 100%;
  z-index: 1;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 0;
  -webkit-transition: all 1s cubic-bezier(0.59, 0.01, 0.26, 1);
  transition: all 1s cubic-bezier(0.59, 0.01, 0.26, 1);
  background: #fff;
  padding: 1vh;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 331px;
  max-width: 50%;
  z-index: 1;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box.on-action {
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  opacity: 1;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box section {
  border: 1px solid rgba(249, 148, 98, 0.5);
  position: relative;
  z-index: 2;
  padding: 4.2222222222vh 0 3.6666666667vh;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box section h2 {
  text-align: center;
  font-weight: 500;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box section h2 .num {
  color: #f99462;
  font-size: 1.5625rem;
  letter-spacing: -0.0248em;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box section h2 .title {
  font-size: 1.125rem;
  line-height: 1.9444444444em;
  letter-spacing: 0.05em;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box section .common-text {
  width: 205px;
  max-width: 90%;
  margin: 3vh auto 0;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box .line {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  width: 145px;
  max-width: 35%;
}
body .business-page .yottu-box .yottu-inner .text-wrap .text-box .line img {
  width: 100%;
  height: auto;
}
body .business-page .yottu-box .yottu-inner.revers .image {
  margin-left: auto;
}
body .business-page .yottu-box .yottu-inner.revers .text-wrap .text-box {
  right: auto;
  left: 0;
}
body .business-page .hutattu-box {
  width: 980px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 11.1111111111vh auto 0;
  max-width: 90%;
}
body .business-page .hutattu-box .hutattu-wrap {
  width: 49.4897959184%;
}
body .business-page .hutattu-box .hutattu-wrap .inner {
  padding-top: 74%;
}
body .business-page .hutattu-box .hutattu-wrap .inner section {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}
body .business-page .hutattu-box .hutattu-wrap .inner section h2 {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  text-align: center;
  z-index: 1;
}
body .business-page .hutattu-box .hutattu-wrap .inner section h2 .title-box {
  padding: 3.8888888889vh 0 0;
  display: block;
  font-weight: 500;
  width: 106px;
  text-align: center;
}
body .business-page .hutattu-box .hutattu-wrap .inner section h2 .title-box .num {
  font-size: 1.5625rem;
  letter-spacing: -0.0248em;
}
body .business-page .hutattu-box .hutattu-wrap .inner section h2 .title-box .title {
  font-size: 1.125rem;
  line-height: 1.9444444444em;
  letter-spacing: -0.0555555556em;
}
body .business-page .hutattu-box .hutattu-wrap .inner section h2 .title-box .title.tokushu {
  letter-spacing: 0.1em;
}
body .business-page .hutattu-box .hutattu-wrap .inner section .common-text {
  position: absolute;
  z-index: 2;
  width: 410px;
  max-width: 85%;
  left: 50%;
  bottom: 6.1403508772%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
body .business-page .how-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 13.3333333333vh auto 0;
  width: 980px;
  max-width: 100%;
}
body .business-page .how-box a {
  display: block;
  position: relative;
  border-top: 1px solid #ff9b78;
  border-bottom: 1px solid #ff9b78;
  width: 50%;
  padding-top: 8.4444444444vh;
  padding-bottom: 5vh;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
body .business-page .how-box a section h2 {
  background: #fff;
  font-size: 1.125rem;
  letter-spacing: 0.1em;
  padding: 1.7777777778vh 3.6666666667vh;
  border: 1px solid #ff9b78;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-weight: 600;
}
body .business-page .how-box a section .image {
  border-radius: 50%;
  overflow: hidden;
  width: 68.5714285714%;
  margin: 0 auto;
  border: 10px solid #ffb07b;
}
body .business-page .how-box a section .image img {
  width: 100%;
  height: auto;
}
body .business-page .how-box a section .common-arrow-link {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 380px;
  max-width: 90%;
  margin: 0 auto;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
body .business-page .how-box a section .common-arrow-link .more-inner {
  display: block;
  text-align: left;
  position: relative;
  font-size: 1.3125rem;
  color: #e80303;
  letter-spacing: 0.05em;
  overflow: hidden;
  font-weight: 100;
}
body .business-page .how-box a section .common-arrow-link .more-inner img {
  display: block;
  width: 47px;
  max-width: 80%;
  height: auto;
  -webkit-transform: translate(-40%, 0);
          transform: translate(-40%, 0);
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  margin-top: 6px;
}
body .business-page .how-box a section .common-text {
  margin: 2.2222222222vh auto 0;
  width: 380px;
  max-width: 90%;
}
body .business-page .how-box a:first-of-type {
  background: rgba(255, 155, 120, 0.15);
}
body .business-page .how-box a:hover {
  opacity: 0.7;
}
body .business-page .how-box a:hover section .common-arrow-link .more-inner img {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
body .news-page-archive {
  padding-bottom: 10.8888888889vh;
  margin-top: 11.1111111111vh;
}
body .news-page-archive .common-title {
  text-align: center;
}
body .news-page-archive .news-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 980px;
  max-width: 90%;
  margin: 0 auto;
}
body .news-page-archive .news-list li {
  margin-top: 7.6666666667vh;
  width: 31.3265306122%;
}
body .news-page-archive .news-list li:nth-of-type(1), body .news-page-archive .news-list li:nth-of-type(2) {
  width: 47.6530612245%;
}
body .news-page-archive .news-list li:nth-of-type(1) figure a .image .over-wrap .hover-back img, body .news-page-archive .news-list li:nth-of-type(2) figure a .image .over-wrap .hover-back img {
  width: 44px;
  height: auto;
  margin-right: 13px;
}
body .news-page-archive .news-list li:nth-of-type(1) figure a .image .thumbnail, body .news-page-archive .news-list li:nth-of-type(2) figure a .image .thumbnail {
  padding-top: 71.7948717949%;
}
body .news-page-archive .news-list li figure a {
  display: block;
  position: relative;
  overflow: hidden;
}
body .news-page-archive .news-list li figure a .image {
  position: relative;
}
body .news-page-archive .news-list li figure a .image .over-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
body .news-page-archive .news-list li figure a .image .over-wrap:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: "";
  display: block;
  background: #e80303;
  width: 200%;
  padding-top: 200%;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: rotate(45deg) translate(-65%, -35%);
          transform: rotate(45deg) translate(-65%, -35%);
  z-index: 5;
  top: 0;
  left: -90%;
  position: absolute;
  -webkit-transition: left 0.2s linear;
  transition: left 0.2s linear;
}
body .news-page-archive .news-list li figure a .image .over-wrap:before .inner-book {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
}
body .news-page-archive .news-list li figure a .image .over-wrap > img {
  position: absolute;
  top: 1.4%;
  left: 1%;
  z-index: 6;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  width: 2.6058631922%;
  height: auto;
}
body .news-page-archive .news-list li figure a .image .over-wrap .hover-back {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  color: #fff;
  z-index: 7;
  width: 100%;
  height: 100%;
  bottom: 100%;
  right: 100%;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.125rem;
  letter-spacing: 0.2em;
}
body .news-page-archive .news-list li figure a .image .over-wrap .hover-back img {
  width: 35px;
  height: auto;
  margin-right: 9px;
  display: block;
}
body .news-page-archive .news-list li figure a .image .thumbnail {
  background-position: center center;
  background-size: cover;
  padding-top: 69.7068403909%;
}
body .news-page-archive .news-list li figure a figcaption {
  display: block;
  margin-top: 3vh;
}
body .news-page-archive .news-list li figure a figcaption time {
  font-size: 0.875rem;
  color: #999;
}
body .news-page-archive .news-list li figure a figcaption .title {
  margin-top: 1.2222222222vh;
  font-size: 1rem;
  line-height: 1.375em;
  letter-spacing: 0.05em;
  text-align: justify;
  text-justify: inter-ideograph;
  height: 2.75em;
  overflow: hidden;
  text-overflow: ellipsis;
}
body .news-page-archive .news-list li figure a:hover .image .over-wrap:before {
  left: 100%;
}
body .news-page-archive .news-list li figure a:hover .image .over-wrap > img {
  top: 100%;
  left: 100%;
}
body .news-page-archive .news-list li figure a:hover .image .over-wrap .hover-back {
  bottom: 0;
  right: 0;
}
body .news-page-archive .news-list:after {
  content: "";
  display: block;
  height: 0;
  width: 31.3265306122%;
}
body .news-page-archive .pager {
  margin-top: 7.1111111111vh;
}
body .news-page-archive .pager h2 {
  display: none;
}
body .news-page-archive .pager .nav-links {
  text-align: center;
}
body .news-page-archive .pager .nav-links > * {
  display: inline-block;
  padding: 0.3em 10px;
  font-size: 0.9375rem;
  -webkit-transition: color 0.18s linear;
  transition: color 0.18s linear;
}
body .news-page-archive .pager .nav-links a:hover {
  color: #e80303;
}
body .news-page-archive .pager .nav-links .current {
  color: #e80303;
}
body .news-page-single {
  overflow: hidden;
  padding-bottom: 10.8888888889vh;
}
body .news-page-single .news-info {
  background: #e80303;
  color: #fff;
  padding-top: 9.4444444444vh;
  padding-bottom: 9.7777777778vh;
}
body .news-page-single .news-info time {
  display: block;
  width: 884px;
  max-width: 80%;
  margin: 0 auto;
  font-size: 0.9375rem;
}
body .news-page-single .news-info h2 {
  font-weight: 500;
  font-size: 1.25rem;
  letter-spacing: 0.1em;
  line-height: 1.4em;
  width: 884px;
  max-width: 80%;
  margin: 2vh auto 0;
}
body .news-page-single .user_contents {
  width: 792px;
  max-width: 90%;
  margin: 0 auto;
}
body .news-page-single .user_contents > p:first-of-type img {
  max-width: 110%;
  margin-top: -5.5555555556vh;
  position: relative;
  left: -5%;
}
body .news-page-single .line {
  width: 980px;
  margin: 11.2222222222vh auto 0;
  border-top: 1px solid rgba(0, 0, 0, 0.5);
}
body .news-page-single .news-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 980px;
  max-width: 90%;
  margin: 8.5555555556vh auto 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
body .news-page-single .news-nav .prev-next {
  margin-left: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .news-page-single .news-nav .prev-next p {
  font-size: 1.0625rem;
  letter-spacing: 0.2em;
  margin: 0 1em;
}
body .news-page-single .news-nav .prev-next p .nav-inner {
  -webkit-transition: color 0.18s linear;
  transition: color 0.18s linear;
}
body .news-page-single .news-nav .prev-next p .nav-inner .arrow {
  color: #e80303;
}
body .news-page-single .news-nav .prev-next p > span {
  opacity: 0.4;
}
body .news-page-single .news-nav .prev-next p > span .arrow {
  color: #000 !important;
}
body .news-page-single .news-nav .prev-next p a:hover {
  color: #e80303;
}
body .recruit-page .voice-content {
  padding-top: 8.2222222222vh;
}
body .recruit-page .voice-content h2 {
  text-align: center;
}
body .recruit-page .voice-content .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .recruit-page .voice-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 790px;
  margin: 6.1111111111vh auto 0;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 90%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
body .recruit-page .voice-content ul li {
  margin-top: 1.5vh;
}
body .recruit-page .voice-content ul li .smooth-scroll {
  display: inline-block;
  font-size: 1.125rem;
  letter-spacing: 0.2em;
  border: 1px solid rgba(255, 176, 123, 0.5);
  padding: 0.7777777778vh 3.4444444444vh;
  border-radius: 17px;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
body .recruit-page .voice-content ul li .smooth-scroll:hover {
  cursor: pointer;
  color: #fff;
  background: #ffb07b;
}
body .recruit-page .voice-content .line {
  width: 980px;
  max-width: 90%;
  margin: 7.5555555556vh auto 0;
  border-top: 1px solid rgba(255, 176, 123, 0.5);
}
body .recruit-page .voice-box {
  overflow: hidden;
}
body .recruit-page .voice-box .once-voice {
  width: 980px;
  max-width: 90%;
  margin: 0 auto;
  padding: 8.3333333333vh 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  position: relative;
}
body .recruit-page .voice-box .once-voice .image-box {
  width: 47.6530612245%;
}
body .recruit-page .voice-box .once-voice section {
  width: 38.2653061224%;
}
body .recruit-page .voice-box .once-voice section h2 {
  font-size: 1.125rem;
  line-height: 1.6666666667em;
  letter-spacing: 0.05em;
  text-align: justify;
  text-justify: inter-ideograph;
  padding-top: 2.8888888889vh;
  font-weight: 500;
}
body .recruit-page .voice-box .once-voice section .names {
  text-align: right;
  margin-top: 5.5555555556vh;
  font-size: 1.0625rem;
}
body .recruit-page .voice-box .once-voice section .names .shoku {
  display: inline-block;
  border: 1px solid rgba(0, 0, 0, 0.5);
  padding: 4px 12px;
  margin-right: 1.7777777778vh;
}
body .recruit-page .voice-box .once-voice section .common-text {
  margin-top: 3.3333333333vh;
  line-height: 1.5882352941em;
}
body .recruit-page .voice-box .once-voice.type1 .image-box {
  position: relative;
}
body .recruit-page .voice-box .once-voice.type1 .image-box .image {
  width: 135.9743040685%;
  position: absolute;
  min-height: 100%;
  top: 0;
  right: 0;
}
body .recruit-page .voice-box .once-voice.type1 .image-box .image .image-base {
  display: block;
}
body .recruit-page .voice-box .once-voice.type1 .image-box .image:after {
  content: "";
  display: block;
  background: rgba(255, 155, 120, 0.15);
  z-index: -1;
  position: absolute;
  bottom: 0;
  -webkit-transform: translate(0, 5.9850374065%);
          transform: translate(0, 5.9850374065%);
  left: 0;
  width: 105.0393700787%;
  height: 77.5628626692%;
}
body .recruit-page .voice-box .once-voice.type2:before {
  content: "";
  display: block;
  height: 100%;
  width: 45.1020408163%;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  background: url(../image/common/bg_line_beige.png) repeat center center;
  background: -webkit-image-set(url(../image/common/bg_line_beige.png) 1x, url(../image/common/bg_line_beige@2x.png) 2x) repeat center center;
}
body .recruit-page .voice-box .once-voice.type2 .image-box .big-image .image-base {
  display: block;
  padding-top: 70.8779443255%;
}
body .recruit-page .voice-box .once-voice.type2 .image-box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 1.5555555556vh;
}
body .recruit-page .voice-box .once-voice.type2 .image-box ul li {
  width: 49.4525547445%;
}
body .recruit-page .voice-box .once-voice.type2 .image-box ul li .image-base {
  display: block;
  padding-top: 71.7391304348%;
}
body .recruit-page .voice-box .once-voice.type3:before {
  content: "";
  display: block;
  height: 100%;
  width: 33.8775510204%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 3.1632653061%;
  background: url(../image/common/bg_border.png) repeat-y left top;
  background: -webkit-image-set(url(../image/common/bg_border.png) 1x, url(../image/common/bg_border@2x.png) 2x) repeat-y left top;
  background-size: 100% auto;
}
body .recruit-page .voice-box .once-voice.type3 .image-box ul li {
  margin-bottom: 1.3333333333vh;
}
body .recruit-page .voice-box .once-voice.type3 .image-box ul li .image-base {
  display: block;
  padding-top: 52.5773195876%;
}
body .recruit-page .voice-box .once-voice.type4:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 3px;
  left: 0;
  background: url(../image/common/bg_line_beige.png) repeat center center;
  background: -webkit-image-set(url(../image/common/bg_line_beige.png) 1x, url(../image/common/bg_line_beige@2x.png) 2x) repeat center center;
  width: 81.8367346939%;
  padding-top: 33.8775510204%;
  z-index: -1;
}
body .recruit-page .voice-box .once-voice.type4 .image-box {
  position: relative;
}
body .recruit-page .voice-box .once-voice.type4 .image-box .image {
  width: 135.9743040685%;
  position: absolute;
  min-height: 100%;
  top: 0;
  left: 0;
}
body .recruit-page .voice-box .once-voice.type4 .image-box .image .image-base {
  display: block;
}
body .recruit-page .voice-box .once-voice.revers .image-box {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
body .recruit-page .voice-box .once-voice.revers section .names {
  text-align: left;
}
body .recruit-page .voice-box .once-voice:after {
  content: "";
  display: block;
  height: 2px;
  background: url(../image/recruit/dotto.png) repeat-x left center;
  background: -webkit-image-set(url(../image/recruit/dotto.png) 1x, url(../image/recruit/dotto@2x.png) 2x) repeat-x left center;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
body .recruit-page .voice-box .once-voice:last-of-type:after {
  display: none;
}
body .recruit-page .recruit-info {
  border-right: 18px solid #808080;
  border-left: 18px solid #808080;
  background: url(../image/recruit/bg-reruit-info.png) no-repeat center center;
  background: -webkit-image-set(url(../image/recruit/bg-reruit-info.png) 1x, url(../image/recruit/bg-reruit-info@2x.png) 2x) no-repeat center center;
  background-size: 100% 100%;
  padding: 10.5555555556vh 0 13.3333333333vh;
  margin-top: 9.4444444444vh;
}
body .recruit-page .recruit-info h2 {
  text-align: center;
}
body .recruit-page .recruit-info .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .recruit-page .recruit-info section {
  width: 980px;
  max-width: 90%;
  margin: 9.4444444444vh auto 0;
  background: #fff;
  padding: 7.4444444444vh 0 7.1111111111vh;
}
body .recruit-page .recruit-info section h3 {
  text-align: center;
  font-size: 1.25rem;
  letter-spacing: 0.2em;
  font-weight: 500;
}
body .recruit-page .recruit-info section h3 span {
  display: inline-block;
  position: relative;
}
body .recruit-page .recruit-info section h3 span:after {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  bottom: -5px;
  height: 2px;
  width: 100%;
}
body .recruit-page .recruit-info section dl {
  width: 750px;
  max-width: 90%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.0625rem;
  letter-spacing: 0.0747058824em;
  line-height: 1.4705882353em;
  margin: 5.5555555556vh auto 0;
}
body .recruit-page .recruit-info section dl dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 115px;
  text-align: justify;
  text-justify: inter-ideograph;
  margin-right: 20.2666666667%;
}
body .recruit-page .recruit-info section dl dt:after {
  content: "";
  display: inline-block;
  width: 100%;
}
body .recruit-page .recruit-info section dl dd {
  width: 100%;
}
body .recruit-page .recruit-info section .common-link-button {
  margin-top: 7.5555555556vh;
}
body .recruit-page .recruit-info section .common-link-button .real-button:hover {
  cursor: pointer;
}
body .recruit-page .recruit-info section.new-grad {
  background: linear-gradient(90deg, #e9f3f4 33%, rgb(255, 255, 255) 1px, #fff);
}
body .recruit-page .recruit-info section.new-grad h3 span:after {
  background: #54a8c6;
}
body .recruit-page .recruit-info section.new-grad .common-link-button .real-button:before {
  background: #54a8c6;
}
body .recruit-page .recruit-info section.career {
  background: linear-gradient(90deg, #e6efe8 33%, rgb(255, 255, 255) 1px, #fff);
}
body .recruit-page .recruit-info section.career h3 span:after {
  background: #59aa6e;
}
body .recruit-page .recruit-info section.career .common-link-button .real-button:before {
  background: #59aa6e;
}
@media (max-width: 1280px) {
  body .recruit-page .recruit-info {
    border-right: 1.40625vw solid #808080;
    border-left: 1.40625vw solid #808080;
  }
}
body .recruit-page #entry {
  padding-top: 10vh;
}
body .recruit-page #entry .entry-form-content h2 {
  text-align: center;
}
body .recruit-page #entry .entry-form-content .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .recruit-page #entry .entry-form-content .first-text .red-text {
  color: #e80303;
}
body .recruit-page #entry .entry-form-content form {
  width: 980px;
  margin: 0 auto;
  max-width: 90%;
}
body .recruit-page #entry .entry-form-content form section {
  margin-top: 5.1111111111vh;
  background: #f2f2f2;
  padding-bottom: 8.2222222222vh;
}
body .recruit-page #entry .entry-form-content form section h3 {
  text-align: center;
  color: #fff;
  background: #f99462;
  font-size: 1.25rem;
  letter-spacing: 0.2em;
  padding: 2.2222222222vh 0;
  font-weight: 500;
  margin-bottom: 7.1111111111vh;
}
body .recruit-page #entry .entry-form-content form section dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 812px;
  max-width: 90%;
  margin: 3.1111111111vh auto 0;
}
body .recruit-page #entry .entry-form-content form section dl dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  width: 140px;
  margin-right: 4.9261083744%;
  font-size: 0.9375rem;
  letter-spacing: 0.2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  line-height: 1.4em;
}
body .recruit-page #entry .entry-form-content form section dl dt .req {
  color: #e80303;
}
body .recruit-page #entry .entry-form-content form section dl dd {
  width: 100%;
}
body .recruit-page #entry .entry-form-content form section dl dd input[type^=text], body .recruit-page #entry .entry-form-content form section dl dd input[type^=tel], body .recruit-page #entry .entry-form-content form section dl dd input[type^=email] {
  height: 43px;
  width: 336px;
  max-width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
@media (max-width: 647px) {
  body .recruit-page #entry .entry-form-content form section dl dd input[type^=text], body .recruit-page #entry .entry-form-content form section dl dd input[type^=tel], body .recruit-page #entry .entry-form-content form section dl dd input[type^=email] {
    width: 100%;
  }
}
body .recruit-page #entry .entry-form-content form section dl dd select {
  height: 43px;
  border-radius: 0;
  max-width: 100%;
  width: 336px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: 1px solid #f2f2f2;
  line-height: 1.4em;
}
@media (min-width: 701px) {
  body .recruit-page #entry .entry-form-content form section dl dd select {
    -webkit-appearance: button;
  }
}
@media (max-width: 647px) {
  body .recruit-page #entry .entry-form-content form section dl dd select {
    width: 100%;
  }
}
body .recruit-page #entry .entry-form-content form section dl dd.full-area input[type^=text], body .recruit-page #entry .entry-form-content form section dl dd.full-area input[type^=tel], body .recruit-page #entry .entry-form-content form section dl dd.full-area input[type^=email] {
  width: 100%;
}
body .recruit-page #entry .entry-form-content form section dl dd.full-area select {
  width: 100%;
}
body .recruit-page #entry .entry-form-content form section dl dd.full-area .text {
  margin-top: 5px;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .recruit-page #entry .entry-form-content form section dl dd.mini-area input {
  max-width: 100%;
}
body .recruit-page #entry .entry-form-content form section dl dd.mini-area .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .recruit-page #entry .entry-form-content form section dl dd.duble-input .p-region {
  width: 97px;
}
body .recruit-page #entry .entry-form-content form section dl dd.duble-input .second-input {
  margin-top: 10px;
}
body .recruit-page #entry .entry-form-content form section dl dd.duble-input .second-input .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .recruit-page #entry .entry-form-content form section dl dd.area {
  position: relative;
  width: 100%;
}
body .recruit-page #entry .entry-form-content form section dl dd.area .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  padding-top: 31.3479623824%;
}
body .recruit-page #entry .entry-form-content form section dl dd.area textarea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
body .recruit-page #entry .entry-form-content form section dl dd .text {
  font-size: 0.9375rem;
  line-height: 1.5625rem;
  letter-spacing: 0.1em;
}
body .recruit-page #entry .entry-form-content form section dl.duble dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .recruit-page #entry .entry-form-content form section dl.duble dd .left, body .recruit-page #entry .entry-form-content form section dl.duble dd .right {
  width: 48%;
}
body .recruit-page #entry .entry-form-content form section dl.duble dd .left input[type^=text], body .recruit-page #entry .entry-form-content form section dl.duble dd .right input[type^=text] {
  width: 100%;
}
body .recruit-page #entry .entry-form-content form section dl.duble dd .left {
  margin-right: 2%;
}
body .recruit-page #entry .entry-form-content form section .etc-line {
  border-top: 1px solid rgba(179, 179, 179, 0.5);
  padding-top: 4.4444444444vh;
  width: 90%;
  margin: 5.5555555556vh auto 0;
}
body .recruit-page #entry .entry-form-content form section .etc-info {
  width: 590px;
  max-width: 90%;
  margin: 0 auto;
}
body .recruit-page #entry .entry-form-content form section .etc-info dl dt {
  width: 175px;
}
body .recruit-page #entry .entry-form-content form .privacy-policy {
  width: 885px;
  max-width: 90%;
  margin: 6.6666666667vh auto 0;
  border: rgba(179, 179, 179, 0.5) solid 1px;
  background: #fff;
  padding: 1vh 0;
}
body .recruit-page #entry .entry-form-content form .privacy-policy .privacy-policy-inner {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.5vh;
  height: 170px;
  overflow-x: hidden;
  overflow-y: scroll;
  margin: 0 auto;
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
  line-height: 1.6666666667em;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .recruit-page #entry .entry-form-content form .privacy-policy .privacy-policy-inner dl dt {
  margin-top: 3px;
}
body .recruit-page #entry .entry-form-content form .privacy-policy .privacy-policy-inner dl dd {
  padding-left: 1em;
}
body .recruit-page #entry .entry-form-content form .privacy-policy .privacy-policy-inner dl dd a {
  text-decoration: underline;
}
body .recruit-page #entry .entry-form-content form .privacy-policy .privacy-policy-inner dl dd ul li {
  padding-left: 1.1em;
  text-indent: -1.1em;
}
body .recruit-page #entry .entry-form-content form .kakunin {
  text-align: center;
  font-size: 0.9375rem;
  line-height: 1.6666666667em;
  letter-spacing: 0.05em;
  margin-top: 3.7777777778vh;
}
body .recruit-page #entry .entry-form-content form .submit {
  text-align: center;
  margin-top: 6.2222222222vh;
}
body .recruit-page #entry .entry-form-content form .submit label input, body .recruit-page #entry .entry-form-content form .submit label .ajax-loader, body .recruit-page #entry .entry-form-content form .submit label .wpcf7-spinner {
  display: none;
}
body .recruit-page #entry .entry-form-content form .submit label .real-button:hover {
  cursor: pointer;
}
body .recruit-page #entry .entry-form-content form .submit label .real-button:before {
  background: #f99462;
}
body .recruit-page .how-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 13.3333333333vh auto 0;
  width: 980px;
  max-width: 100%;
}
body .recruit-page .how-box a {
  display: block;
  position: relative;
  border-top: 1px solid #ff9b78;
  border-bottom: 1px solid #ff9b78;
  width: 50%;
  padding-top: 8.4444444444vh;
  padding-bottom: 5vh;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
body .recruit-page .how-box a section h2 {
  background: #fff;
  font-size: 1.125rem;
  letter-spacing: 0.1em;
  padding: 1.7777777778vh 3.6666666667vh;
  border: 1px solid #ff9b78;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-weight: 600;
}
body .recruit-page .how-box a section .image {
  border-radius: 50%;
  overflow: hidden;
  width: 68.5714285714%;
  margin: 0 auto;
  border: 10px solid #ffb07b;
}
body .recruit-page .how-box a section .image img {
  width: 100%;
  height: auto;
}
body .recruit-page .how-box a section .common-arrow-link {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 380px;
  max-width: 90%;
  margin: 0 auto;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
body .recruit-page .how-box a section .common-arrow-link .more-inner {
  display: block;
  text-align: left;
  position: relative;
  font-size: 1.3125rem;
  color: #e80303;
  letter-spacing: 0.05em;
  overflow: hidden;
  font-weight: 100;
}
body .recruit-page .how-box a section .common-arrow-link .more-inner img {
  display: block;
  width: 47px;
  max-width: 80%;
  height: auto;
  -webkit-transform: translate(-40%, 0);
          transform: translate(-40%, 0);
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  margin-top: 6px;
}
body .recruit-page .how-box a section .common-text {
  margin: 2.2222222222vh auto 0;
  width: 380px;
  max-width: 90%;
}
body .recruit-page .how-box a:first-of-type {
  background: rgba(255, 155, 120, 0.15);
}
body .recruit-page .how-box a:hover {
  opacity: 0.7;
}
body .recruit-page .how-box a:hover section .common-arrow-link .more-inner img {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
body .document-page .document-main {
  margin-top: 11.1111111111vh;
}
body .document-page .document-main h2 {
  text-align: center;
}
body .document-page .document-main h2 .mini-text {
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
}
body .document-page .document-main .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .document-page .document-main .first-text .red-text {
  color: #e80303;
}
body .document-page .document-main .must-list {
  width: 980px;
  max-width: 90%;
  margin: 3.3333333333vh auto 0;
  border-top: 1px solid rgba(232, 3, 3, 0.5);
  border-bottom: 1px solid rgba(232, 3, 3, 0.5);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  padding-top: 5.1111111111vh;
  padding-bottom: 5.5555555556vh;
}
body .document-page .document-main .must-list ul li {
  font-size: 1.125rem;
  line-height: 1.5882352941em;
  letter-spacing: 0.05em;
  padding-left: 1.8em;
  text-indent: -1.8em;
  margin-top: 3.6666666667vh;
}
body .document-page .document-main .must-list ul li img {
  margin-right: 0.8em;
  width: 16px;
  height: auto;
  -webkit-transform: translate(0, 3px);
          transform: translate(0, 3px);
}
body .document-page .document-main .must-list ul li .mini-text {
  font-size: 0.9375rem;
}
body .document-page .document-main .must-list ul li:first-of-type {
  margin-top: 0;
}
body .document-page .document-main .documents {
  border-bottom: 1px solid rgba(232, 3, 3, 0.5);
  background: url(../image/common/bg_line.png) repeat center center;
  background: -webkit-image-set(url(../image/common/bg_line.png) 1x, url(../image/common/bg_line@2x.png) 2x) repeat center center;
  padding: 2.3333333333vh 0 4.3333333333vh;
  width: 980px;
  max-width: 90%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
body .document-page .document-main .documents .document {
  margin-top: 2vh;
  padding: 0 1em;
  font-size: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.6em;
  letter-spacing: 0.05em;
}
body .document-page .document-main .documents .document .text {
  margin-right: 2.2222222222vh;
}
body .document-page .document-main .documents .document a {
  display: inline-block;
  text-align: center;
  width: 147px;
  max-width: 100%;
  position: relative;
  padding: 0.6666666667vh 0;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
body .document-page .document-main .documents .document a:after {
  content: "";
  display: block;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid rgba(153, 153, 153, 0.5);
}
body .document-page .document-main .documents .document a:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: "";
  display: block;
  background: #e80303;
  width: 200%;
  padding-top: 200%;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: rotate(45deg) translate(-65%, -35%);
          transform: rotate(45deg) translate(-65%, -35%);
  z-index: -1;
  top: 0;
  left: -100%;
  position: absolute;
  -webkit-transition: left 0.3s linear;
  transition: left 0.3s linear;
}
body .document-page .document-main .documents .document a:hover {
  color: #fff;
}
body .document-page .document-main .documents .document a:hover:before {
  left: 100%;
}
body .document-page .attention-box {
  width: 980px;
  max-width: 90%;
  margin: 5.3333333333vh auto 13.5555555556vh;
}
body .document-page .attention-box .red-text {
  color: #e80303;
  letter-spacing: 0.01em;
}
body .document-page .attention-box ul {
  margin-top: 3.1111111111vh;
}
body .document-page .attention-box ul li {
  margin-top: 3px;
  font-size: 0.9375rem;
  line-height: 1.8666666667em;
  letter-spacing: 0.05em;
}
body .contact-page {
  padding-bottom: 10.6666666667vh;
  border-right: #e80303 18px solid;
  border-left: #e80303 18px solid;
}
@media (max-width: 1280px) {
  body .contact-page {
    border-right: #e80303 1.40625vw solid;
    border-left: #e80303 1.40625vw solid;
  }
}
body .contact-page .contact-main {
  padding-top: 11.1111111111vh;
}
body .contact-page .contact-main h2 {
  text-align: center;
}
body .contact-page .contact-main h2 .mini-text {
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
}
body .contact-page .contact-main .first-text {
  width: 576px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .contact-page .contact-main form {
  width: 980px;
  margin: 0 auto;
  max-width: 90%;
  background: #f2f2f2;
  padding-bottom: 8.5555555556vh;
}
body .contact-page .contact-main form section {
  margin-top: 5.1111111111vh;
  padding-bottom: 8.2222222222vh;
}
body .contact-page .contact-main form section h3 {
  text-align: center;
  color: #fff;
  background: #808080;
  font-size: 1.25rem;
  letter-spacing: 0.2em;
  padding: 2.2222222222vh 0;
  font-weight: 500;
  margin-bottom: 7.1111111111vh;
}
body .contact-page .contact-main form section dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 812px;
  max-width: 90%;
  margin: 3.1111111111vh auto 0;
}
body .contact-page .contact-main form section dl dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  width: 140px;
  margin-right: 4.9261083744%;
  font-size: 0.9375rem;
  letter-spacing: 0.2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  line-height: 1.4em;
}
body .contact-page .contact-main form section dl dt .req {
  color: #e80303;
}
body .contact-page .contact-main form section dl dd {
  width: 100%;
}
body .contact-page .contact-main form section dl dd input[type^=text], body .contact-page .contact-main form section dl dd input[type^=tel], body .contact-page .contact-main form section dl dd input[type^=email] {
  height: 43px;
  width: 336px;
  max-width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
@media (max-width: 647px) {
  body .contact-page .contact-main form section dl dd input[type^=text], body .contact-page .contact-main form section dl dd input[type^=tel], body .contact-page .contact-main form section dl dd input[type^=email] {
    width: 100%;
  }
}
body .contact-page .contact-main form section dl dd select {
  height: 43px;
  border-radius: 0;
  max-width: 100%;
  width: 336px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: 1px solid #f2f2f2;
  line-height: 1.4em;
}
@media (min-width: 701px) {
  body .contact-page .contact-main form section dl dd select {
    -webkit-appearance: button;
  }
}
@media (max-width: 647px) {
  body .contact-page .contact-main form section dl dd select {
    width: 100%;
  }
}
body .contact-page .contact-main form section dl dd.full-area input[type^=text], body .contact-page .contact-main form section dl dd.full-area input[type^=tel], body .contact-page .contact-main form section dl dd.full-area input[type^=email] {
  width: 100%;
}
body .contact-page .contact-main form section dl dd.full-area select {
  width: 100%;
}
body .contact-page .contact-main form section dl dd.full-area .text {
  margin-top: 5px;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .contact-page .contact-main form section dl dd.mini-area input {
  max-width: 100%;
}
body .contact-page .contact-main form section dl dd.mini-area .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .contact-page .contact-main form section dl dd.duble-input .p-region {
  width: 97px;
}
body .contact-page .contact-main form section dl dd.duble-input .second-input {
  margin-top: 10px;
}
body .contact-page .contact-main form section dl dd.duble-input .second-input .text {
  display: inline-block;
  white-space: nowrap;
  padding-left: 0.5em;
}
body .contact-page .contact-main form section dl dd.area {
  position: relative;
  width: 100%;
}
body .contact-page .contact-main form section dl dd.area .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  padding-top: 31.3479623824%;
}
body .contact-page .contact-main form section dl dd.area textarea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 0.5em;
  border: none;
  line-height: 1.4em;
}
body .contact-page .contact-main form section dl dd .text {
  font-size: 0.9375rem;
  line-height: 1.5625rem;
  letter-spacing: 0.1em;
}
body .contact-page .contact-main form section dl.duble dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body .contact-page .contact-main form section dl.duble dd .left, body .contact-page .contact-main form section dl.duble dd .right {
  width: 48%;
}
body .contact-page .contact-main form section dl.duble dd .left input[type^=text], body .contact-page .contact-main form section dl.duble dd .right input[type^=text] {
  width: 100%;
}
body .contact-page .contact-main form section dl.duble dd .left {
  margin-right: 2%;
}
body .contact-page .contact-main form section .etc-line {
  border-top: 1px solid rgba(179, 179, 179, 0.5);
  padding-top: 4.4444444444vh;
  width: 90%;
  margin: 5.5555555556vh auto 0;
}
body .contact-page .contact-main form section .etc-info {
  width: 590px;
  max-width: 90%;
  margin: 0 auto;
}
body .contact-page .contact-main form section .etc-info dl dt {
  width: 175px;
}
body .contact-page .contact-main form .privacy-policy {
  width: 885px;
  max-width: 90%;
  margin: 6.6666666667vh auto 0;
  border: rgba(179, 179, 179, 0.5) solid 1px;
  background: #fff;
  padding: 1vh 0;
}
body .contact-page .contact-main form .privacy-policy .privacy-policy-inner {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.5vh;
  height: 170px;
  overflow-x: hidden;
  overflow-y: scroll;
  margin: 0 auto;
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
  line-height: 1.6666666667em;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .contact-page .contact-main form .privacy-policy .privacy-policy-inner dl dt {
  margin-top: 3px;
}
body .contact-page .contact-main form .privacy-policy .privacy-policy-inner dl dd {
  padding-left: 1em;
}
body .contact-page .contact-main form .privacy-policy .privacy-policy-inner dl dd a {
  text-decoration: underline;
}
body .contact-page .contact-main form .privacy-policy .privacy-policy-inner dl dd ul li {
  padding-left: 1.1em;
  text-indent: -1.1em;
}
body .contact-page .contact-main form .kakunin {
  text-align: center;
  font-size: 0.9375rem;
  line-height: 1.6666666667em;
  letter-spacing: 0.05em;
  margin-top: 3.7777777778vh;
}
body .contact-page .contact-main form .submit {
  text-align: center;
  margin-top: 6.2222222222vh;
}
body .contact-page .contact-main form .submit label input, body .contact-page .contact-main form .submit label .ajax-loader, body .contact-page .contact-main form .submit label .wpcf7-spinner {
  display: none;
}
body .contact-page .contact-main form .submit label .real-button {
  max-width: 90%;
}
body .contact-page .contact-main form .submit label .real-button:hover {
  cursor: pointer;
}
body .contact-page .contact-main form .submit label .real-button:before {
  background: #e80303;
}
body .privacy-page .privacy-main {
  margin-top: 11.1111111111vh;
  padding-bottom: 21.1111111111vh;
}
body .privacy-page .privacy-main h2 {
  text-align: center;
}
body .privacy-page .privacy-main h2 .mini-text {
  font-size: 0.9375rem;
  letter-spacing: 0.05em;
}
body .privacy-page .privacy-main .first-text {
  width: 800px;
  max-width: 80%;
  margin: 6vh auto 0;
}
body .privacy-page .privacy-main .privacy-content {
  width: 980px;
  max-width: 90%;
  margin: 6.6666666667vh auto 0;
  padding-top: 2.5555555556vh;
  border-top: 1px solid #808080;
}
body .privacy-page .privacy-main .privacy-content .color-red {
  color: #e80303;
}
body .privacy-page .privacy-main .privacy-content .br2 {
  width: 100%;
  height: 1em;
  display: inline-block;
}
body .privacy-page .privacy-main .privacy-content dl {
  width: 851px;
  margin: 0 auto;
  max-width: 90%;
}
body .privacy-page .privacy-main .privacy-content dl dt {
  font-size: 1.0625rem;
  margin-top: 4.4444444444vh;
  margin-bottom: 1.6666666667vh;
  line-height: 1.4em;
}
body .privacy-page .privacy-main .privacy-content dl dd {
  font-size: 0.9375rem;
  text-align: justify;
  text-justify: inter-ideograph;
  margin-top: 0.6666666667vh;
  line-height: 1.6em;
}
body .privacy-page .privacy-main .privacy-content dl dd p {
  margin-top: 0.6666666667vh;
}
body .privacy-page .privacy-main .privacy-content dl dd ul li {
  margin-top: 0.9375rem;
}
body .privacy-page .privacy-main .privacy-content dl dd ul li p {
  padding-left: 1em;
}
body .sdgs-page {
  margin-bottom: 16.2222222222vh;
}
body .sdgs-page .top-box {
  width: 980px;
  max-width: 80%;
  margin: 8.8888888889vh auto 0;
}
body .sdgs-page .top-box h2 {
  text-align: center;
  font-size: 1.5625rem;
  letter-spacing: 0.2em;
  font-weight: 500;
  line-height: 1.5em;
  color: #f48f62;
}
body .sdgs-page .top-box h2 small {
  font-size: 0.76em;
}
body .sdgs-page .top-box h2 .en {
  color: #000;
  font-size: 0.84em;
}
body .sdgs-page .top-box .catch {
  width: 620px;
  max-width: 100%;
  font-size: 1.0625rem;
  text-align: justify;
  text-justify: inter-ideograph;
  margin: 5vh auto 0;
  letter-spacing: 0.05em;
  line-height: 1.5882352941em;
}
body .sdgs-page nav {
  width: 980px;
  max-width: 80%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 6.1111111111vh auto 0;
}
body .sdgs-page nav .smooth-scroll {
  width: 7.5555555556em;
  text-align: center;
  margin: 12px 1.0555555556em 0;
  -webkit-transition: color 0.2s, background 0.2s;
  transition: color 0.2s, background 0.2s;
  border: 1px solid #f48f62;
  font-size: 1.125rem;
  letter-spacing: 0.2em;
  font-weight: normal;
  line-height: 1.6111111111em;
  border-radius: 0.8888888889em;
}
body .sdgs-page nav .smooth-scroll:hover {
  cursor: pointer;
  color: #fff;
  background: #f48f62;
}
body .sdgs-page .mini-title {
  font-weight: 500;
  font-size: 1.125rem;
  letter-spacing: 0.2em;
  color: #f48f62;
  letter-spacing: 0.2em;
}
body .sdgs-page .c-text {
  font-size: 1.0625rem;
  letter-spacing: 0.05em;
  line-height: 1.5882352941em;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .sdgs-page .about-sdgs {
  background: url(../image/sdgs/sdgs-bg.png) no-repeat center center;
  background-size: 100% 100%;
  margin-top: 12.5555555556vh;
  padding: 8.3333333333vh 0;
}
body .sdgs-page .about-sdgs .inner {
  width: 808px;
  max-width: 80%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
body .sdgs-page .about-sdgs .inner .image {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  width: 50.495049505%;
}
body .sdgs-page .about-sdgs .inner .image img {
  display: block;
  width: 100%;
}
body .sdgs-page .about-sdgs .inner .text-box {
  width: 41.4603960396%;
  margin-top: 1.8888888889vh;
}
body .sdgs-page .about-sdgs .inner .text-box .c-text {
  margin-top: 2.5555555556vh;
}
body .sdgs-page .other-contents {
  margin-top: 11.2222222222vh;
}
body .sdgs-page .other-contents section {
  margin-bottom: 9.4444444444vh;
  padding-bottom: 10vh;
  position: relative;
}
body .sdgs-page .other-contents section:before {
  content: "";
  display: block;
  width: 980px;
  max-width: 80%;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  border-top: 2px dotted #f48f62;
}
body .sdgs-page .other-contents section .ct-top-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1980px;
  margin: 0 auto;
}
body .sdgs-page .other-contents section .ct-top-box .image-box {
  width: 49.609375%;
  position: relative;
  z-index: 0;
}
body .sdgs-page .other-contents section .ct-top-box .image-box:before {
  content: "";
  display: block;
  width: 105.0393700787%;
  padding-top: 47.5590551181%;
  z-index: -1;
  top: 0;
  margin-top: 23.937007874%;
  position: absolute;
}
body .sdgs-page .other-contents section .ct-top-box .image-box .image img {
  width: 100%;
}
body .sdgs-page .other-contents section .ct-top-box .text-box {
  width: 335px;
  margin-top: 5.078125%;
}
body .sdgs-page .other-contents section .ct-top-box .text-box .icons {
  margin-top: 3.8888888889vh;
}
body .sdgs-page .other-contents section .ct-top-box .text-box .icons img {
  max-width: 100%;
}
body .sdgs-page .other-contents section .ct-top-box .text-box .c-text {
  margin-top: 3.8888888889vh;
}
@media (max-width: 1280px) {
  body .sdgs-page .other-contents section .ct-top-box .text-box {
    width: 26.171875vw;
  }
}
body .sdgs-page .other-contents section .ct-bottom-box {
  width: 980px;
  max-width: 80%;
  margin: 8.1111111111vh auto 0;
  border: 1px solid #f48f62;
  position: relative;
  padding: 3.3333333333vh 0;
  z-index: 0;
}
body .sdgs-page .other-contents section .ct-bottom-box:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  width: 145px;
  height: 145px;
  bottom: -8px;
}
body .sdgs-page .other-contents section .ct-bottom-box .inner {
  width: 77.5510204082%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
}
body .sdgs-page .other-contents section .ct-bottom-box .inner .line {
  width: 1px;
  background: rgba(244, 143, 98, 0.5);
}
body .sdgs-page .other-contents section .ct-bottom-box .inner .left-box, body .sdgs-page .other-contents section .ct-bottom-box .inner .right-box {
  width: 45.6953642384%;
}
body .sdgs-page .other-contents section .ct-bottom-box .inner .left-box ul li, body .sdgs-page .other-contents section .ct-bottom-box .inner .right-box ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.0625rem;
  line-height: 1.5882352941em;
  letter-spacing: 0.05em;
}
body .sdgs-page .other-contents section .ct-bottom-box .inner .left-box ul li:before, body .sdgs-page .other-contents section .ct-bottom-box .inner .right-box ul li:before {
  content: "■";
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #f48f62;
}
body .sdgs-page .other-contents section .ct-bottom-box .inner .left-box ul li + li, body .sdgs-page .other-contents section .ct-bottom-box .inner .right-box ul li + li {
  margin-top: 1.6666666667vh;
}
body .sdgs-page .other-contents section:nth-of-type(odd) .ct-top-box .image-box:before {
  background: url(../image/sdgs/image-bg-left.png) no-repeat center center;
  background-size: contain;
  left: 0;
}
body .sdgs-page .other-contents section:nth-of-type(odd) .ct-top-box .text-box {
  margin-left: 115px;
}
@media (max-width: 1280px) {
  body .sdgs-page .other-contents section:nth-of-type(odd) .ct-top-box .text-box {
    margin-left: 8.984375%;
  }
}
body .sdgs-page .other-contents section:nth-of-type(odd) .ct-bottom-box:before {
  background: url(../image/sdgs/sankaku1.png) no-repeat center center;
  background-size: contain;
  right: -8px;
}
body .sdgs-page .other-contents section:nth-of-type(even) .ct-top-box .image-box {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
body .sdgs-page .other-contents section:nth-of-type(even) .ct-top-box .image-box:before {
  background: url(../image/sdgs/image-bg-right.png) no-repeat center center;
  background-size: contain;
  right: 0;
}
body .sdgs-page .other-contents section:nth-of-type(even) .ct-top-box .text-box {
  margin-left: auto;
  margin-right: 115px;
}
@media (max-width: 1280px) {
  body .sdgs-page .other-contents section:nth-of-type(even) .ct-top-box .text-box {
    margin-right: 8.984375%;
  }
}
body .sdgs-page .other-contents section:nth-of-type(even) .ct-bottom-box:before {
  background: url(../image/sdgs/sankaku2.png) no-repeat center center;
  background-size: contain;
  left: -8px;
}
body .sdgs-page .other-contents section:last-of-type {
  margin-bottom: 0;
  padding-bottom: 0;
}
body .sdgs-page .other-contents section:last-of-type:before {
  display: none;
}
body .notfound-page {
  margin-bottom: 12vh;
}
body .notfound-page .image {
  text-align: center;
  margin-top: 12vh;
}
body .notfound-page .image img {
  width: 250px;
  max-width: 40%;
  height: auto;
}
body .notfound-page h2 {
  text-align: center;
  margin-top: 4vh;
  font-size: 1.75rem;
  width: 600px;
  max-width: 90%;
  border-bottom: 1px solid #e80303;
  padding-bottom: 3vh;
  margin-left: auto;
  margin-right: auto;
}
body .notfound-page .notfound404 h3 {
  text-align: center;
  font-weight: normal;
  font-size: 1.25rem;
  margin-top: 3vh;
  line-height: 1.4em;
}
body .notfound-page .notfound404 .text {
  text-align: center;
  margin-top: 2.5vh;
  font-size: 1.0625rem;
  line-height: 1.4em;
  letter-spacing: 0.1em;
}
body .common-title {
  color: #e80303;
  font-size: 1.5625rem;
  letter-spacing: 0.2em;
  line-height: 1.3em;
  font-weight: 500;
}
body .common-title .mini-title {
  color: #000;
  font-size: 1.3125rem;
  letter-spacing: 0.05em;
  margin-top: 1.1111111111vh;
  font-weight: 500;
}
body .common-title.color2 {
  color: #ff9b78;
}
body .common-arrow-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
body .common-arrow-link a {
  display: block;
  text-align: left;
  position: relative;
  font-size: 1.3125rem;
  color: #e80303;
  letter-spacing: 0.05em;
  overflow: hidden;
  font-weight: 100;
}
body .common-arrow-link a img {
  display: block;
  width: 47px;
  max-width: 80%;
  height: auto;
  -webkit-transform: translate(-40%, 0);
          transform: translate(-40%, 0);
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  margin-top: 6px;
}
body .common-arrow-link a:hover img {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
body .common-arrow-link.color2 a {
  color: #ffb07b;
}
body .common-arrow-link.revers a img {
  display: block;
  -webkit-transform: translate(40%, 0) scale(-1, 1);
          transform: translate(40%, 0) scale(-1, 1);
  margin-left: auto;
}
body .common-arrow-link.revers a:hover img {
  -webkit-transform: translate(0, 0) scale(-1, 1);
          transform: translate(0, 0) scale(-1, 1);
}
body .common-text {
  font-size: 1.0625rem;
  line-height: 1.5882352941em;
  letter-spacing: 0.05em;
  text-align: justify;
  text-justify: inter-ideograph;
}
body .common-text .br2 {
  display: inline-block;
  height: 1em;
  width: 100%;
}
body .common-link-button {
  text-align: center;
}
body .common-link-button a, body .common-link-button .real-button {
  display: inline-block;
  width: 510px;
  max-width: 100%;
  position: relative;
  font-size: 1.5625rem;
  letter-spacing: 0.05em;
  font-weight: 600;
  padding: 2.6666666667vh 0;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
body .common-link-button a .mini-text, body .common-link-button .real-button .mini-text {
  font-size: 1rem;
  line-height: 1.5625em;
  letter-spacing: 0.05em;
  margin-top: 0.8888888889vh;
  display: inline-block;
  font-weight: 500;
}
body .common-link-button a:after, body .common-link-button .real-button:after {
  content: "";
  display: block;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid rgba(153, 153, 153, 0.5);
}
body .common-link-button a:before, body .common-link-button .real-button:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: "";
  display: block;
  background: #e80303;
  width: 200%;
  padding-top: 200%;
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: rotate(45deg) translate(-65%, -35%);
          transform: rotate(45deg) translate(-65%, -35%);
  z-index: -1;
  top: 0;
  left: -100%;
  position: absolute;
  -webkit-transition: left 0.3s linear;
  transition: left 0.3s linear;
}
body .common-link-button a:hover, body .common-link-button .real-button:hover {
  color: #fff;
}
body .common-link-button a:hover:before, body .common-link-button .real-button:hover:before {
  left: 100%;
}
body .common-main-image .image-base {
  display: block;
  padding-top: 32.8125%;
}
body .muryo-satei {
  position: relative;
  width: 100%;
  height: 0;
  z-index: 500;
}
body .muryo-satei .images {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  z-index: 1;
}
body .muryo-satei .images img {
  display: block;
}
body .muryo-satei .images .hover-image {
  position: absolute;
  top: 0;
  left: 72.7272727273%;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  z-index: -1;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
  transition: transform 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
  transition: transform 0.3s cubic-bezier(0.59, 0.01, 0.26, 1), -webkit-transform 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
}
body .muryo-satei .images:hover {
  cursor: pointer;
}
body .muryo-satei .images:hover .hover-image {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
body .muryo-satei.fixed .images {
  position: fixed;
  top: 125px;
  left: 0;
  z-index: 500;
}

.fuwatto-wrap [class*=fuwatto] {
  opacity: 0;
  -webkit-transform: translate(0, 50%);
          transform: translate(0, 50%);
  -webkit-transition: all 1s cubic-bezier(0.59, 0.01, 0.26, 1);
  transition: all 1s cubic-bezier(0.59, 0.01, 0.26, 1);
}
.fuwatto-wrap [class*=fuwatto].on-fuwatto {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media (min-width: 701px) {
  .pc-none {
    display: none;
  }
}
@media (max-width: 700px) {
  :root {
    font-size: 0.8125rem;
    padding-top: 0 !important;
  }
  .sp-none {
    display: none !important;
  }
  .sp-break {
    display: block;
  }
  body main {
    padding-top: 0 !important;
  }
  body .main-header {
    padding-top: 0;
  }
  body .main-header:after {
    display: none;
  }
  body .main-header .sp-nav .open-nav {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    padding: 8px;
  }
  body .main-header .sp-nav .open-nav img {
    width: 40px;
    height: auto;
  }
  body .main-header .sp-nav .visit-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 3;
  }
  body .main-header .sp-nav .visit-nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    background: #e80303;
    padding-bottom: 13px;
  }
  body .main-header .sp-nav .visit-nav ul li a {
    display: block;
    text-align: center;
    margin-top: -14px;
  }
  body .main-header .sp-nav .visit-nav ul li a img {
    width: 45px;
  }
  body .main-header .sp-nav .visit-nav ul li a .text {
    display: block;
    color: #fff;
    font-size: 0.6875rem;
  }
  body .main-header .sp-nav .hidden-nav {
    position: fixed;
    top: 0;
    left: -100%;
    height: 100vh;
    width: 100vw;
    z-index: 2;
    background: rgba(0, 0, 0, 0.4);
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    -webkit-transition: left 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
    transition: left 0.3s cubic-bezier(0.59, 0.01, 0.26, 1);
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear {
    position: relative;
    z-index: 1;
    background: #fff;
    padding-bottom: 80px;
    min-height: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 72.6666666667vw;
    min-width: 245px;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear .close2 {
    display: block;
    position: absolute;
    top: 0;
    left: 100%;
    width: 27.3333333333vw;
    height: 100%;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear .close-nav {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    padding: 8px;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear .close-nav img {
    width: 40px;
    height: auto;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear ul li {
    text-align: center;
    padding-top: 5vh;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear ul li:first-of-type {
    padding-top: 7.7777777778vh;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear ul li a {
    padding: 0.5em;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 0.9375rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    white-space: nowrap;
    width: 182px;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear ul li a .font-number {
    display: inline-block;
    color: #e80303;
    font-family: "din-bold", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "小塚ゴシック Pro", "MS Pゴシック", "MS PGothic", "Droid Sans Mono", Verdana, sans-serif;
    font-size: 1.1875rem;
    padding-right: 0.5em;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear .sp-entry {
    text-align: center;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear .sp-entry a {
    display: inline-block;
    width: 210px;
    background: #e80303;
    color: #fff;
    padding: 9px 0;
    margin-top: 5vh;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear .sp-entry a .eng {
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.1em;
  }
  body .main-header .sp-nav .hidden-nav .hidden-nav-innear .sp-entry a .ja {
    font-size: 0.625rem;
  }
  body .footer-link {
    width: 90%;
  }
  body .footer-link ul {
    display: block;
    width: 630px;
    max-width: 100%;
  }
  body .footer-link ul li {
    margin-top: 3vh;
  }
  body .footer-link ul li img {
    width: 100%;
    height: auto;
  }
  body .page-top img {
    width: 40px;
    height: auto;
  }
  body .main-footer {
    border-bottom-width: 65px;
  }
  body .main-footer .map-box .left-box {
    width: 57.4666666667%;
  }
  body .main-footer .map-box .left-box #map {
    padding-top: 58.0046403712%;
  }
  body .main-footer .map-box .right-box {
    width: 42.5333333333%;
  }
  body .main-footer .map-box .right-box h2 {
    padding-top: 3vh;
  }
  body .main-footer .map-box .right-box h2 a {
    font-size: 0.875rem;
    line-height: 1.4em;
  }
  body .main-footer .map-box .right-box h2 a img {
    width: 50px;
    height: auto;
  }
  body .main-footer .map-box .right-box .add {
    font-size: 0.75rem;
    padding-bottom: 1em;
  }
  body .main-footer .copy-right {
    text-align: center;
    color: #fff;
    background: #992610;
    font-size: 0.6875rem;
    font-weight: 100;
    letter-spacing: 0.1em;
    padding: 0.5em 0;
  }
  body .top-slide {
    height: auto;
  }
  body .top-slide .slide-content li .slide-image {
    height: auto;
    padding-top: 112.6666666667%;
  }
  body .top-slide .etc-box .text {
    font-size: 1rem;
    margin-top: 16.9333333333vw;
    margin-bottom: 2.7777777778vh;
  }
  body .top-slide .etc-box .logo img {
    max-width: 40%;
  }
  body .top-slide .etc-box .slide-bar-box {
    text-align: center;
    position: static;
    margin-top: 6.6666666667vh;
  }
  body .top-slide .etc-box .slide-scroll-box {
    bottom: 3.90625vw;
  }
  body .top-slide .etc-box .slide-scroll-box .slide-scroll .scroll-text {
    font-size: 0.8125rem;
  }
  body .top-page .top-news .news-box ul li time {
    font-size: 0.8125rem;
  }
  body .top-page .top-news .news-box ul li a {
    font-size: 0.9375rem;
  }
  body .top-page .top-news .news-box ul li:nth-of-type(4) {
    display: none;
  }
  body .top-page .top-news .news-box ul li:nth-of-type(3) time, body .top-page .top-news .news-box ul li:nth-of-type(3) a {
    padding-bottom: 3.8888888889vh;
  }
  body .top-page .top-kaitori .main-image .chara {
    bottom: -27%;
    right: 12%;
  }
  body .top-page .top-kaitori .main-image .catch {
    width: 100%;
    max-width: 100%;
    font-size: 0.9375rem;
  }
  body .top-page .top-kaitori .middle-box section {
    width: 100%;
    padding-top: 0;
  }
  body .top-page .top-kaitori .middle-box section .text-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  body .top-page .top-kaitori .middle-box section .text-box .common-arrow-link {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    margin-left: 2em;
  }
  body .top-page .top-kaitori .middle-box section .text-box .common-text {
    width: 427px;
    max-width: 100%;
  }
  body .top-page .top-kaitori .middle-box section .middle-in-image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 4vh;
  }
  body .top-page .top-kaitori .middle-box section .middle-in-image p {
    width: 48.4126984127%;
  }
  body .top-page .top-kaitori .middle-box section .middle-in-image p img {
    width: 100%;
    height: auto;
  }
  body .top-page .top-kaitori .middle-box section .point-box {
    margin-top: 30.8267px;
  }
  body .top-page .top-kaitori .middle-box section .point-box dt img {
    width: 198.198px;
  }
  body .top-page .top-kaitori .middle-box section .point-box dd {
    margin-top: 8.6028px;
  }
  body .top-page .top-kaitori .middle-box section .point-box dd ol li .nth img {
    width: 26.208px;
  }
  body .top-page .top-kaitori .middle-box section .point-box dd ol li .nth-box {
    max-width: calc(100% - 26.208px);
    font-size: 12.9042px;
    padding: 0 0 4.3014px 0.3888888889em;
  }
  body .top-page .top-kaitori .middle-box section .point-box dd ol li .nth-box:before {
    height: 11.4704px;
  }
  body .top-page .top-kaitori .middle-box section .point-box dd ol li + li {
    margin-top: 8.6028px;
  }
  body .top-page .top-used {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  body .top-page .top-used h2 {
    width: 95%;
  }
  body .top-page .top-used .middle-box {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  body .top-page .top-used .list-wrap {
    width: 100%;
    padding-bottom: 3vh;
  }
  body .top-page .top-used .list-wrap::-webkit-scrollbar {
    height: 5px;
    width: 100%;
    background: none;
    padding: 1px 0;
    z-index: 9999;
  }
  body .top-page .top-used .list-wrap::-webkit-scrollbar-track {
    background: #e80303;
    border: none;
    border-radius: 0;
    position: relative;
    height: 1px;
    border-top: 2px solid #f2f2f2;
    border-bottom: 2px solid #f2f2f2;
  }
  body .top-page .top-used .list-wrap::-webkit-scrollbar-thumb {
    background: #e80303;
    border-radius: 0px;
    -webkit-box-shadow: none;
            box-shadow: none;
    height: 5px;
    position: relative;
  }
  body .top-page .top-used .list-wrap #mCSB_1_scrollbar_horizontal {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  body .top-page .top-used .list-wrap .mCSB_draggerRail {
    height: 1px;
    background: #e80303;
  }
  body .top-page .top-used .list-wrap .mCSB_dragger_bar {
    height: 3px;
    background: #e80303;
  }
  body .top-page .top-used .list-wrap .used-list {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    width: auto;
    max-width: none;
    width: 600vw;
  }
  body .top-page .top-used .list-wrap .used-list figure {
    width: 44.4vw;
    padding: 0 27.8vw;
    margin-top: 0;
  }
  body .top-page .top-used .list-wrap .used-list figure a img {
    display: none;
    max-width: 100%;
  }
  body .top-page .top-used .list-wrap .used-list figure a img:nth-of-type(2) {
    display: inline-block;
  }
  body .top-page .top-used .common-link-button {
    width: 90%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-top: 3vh;
  }
  body .top-page .top-used .middle-box {
    width: 90%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 3vh;
  }
  body .top-page .top-used .middle-box .common-arrow-link {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-left: 2em;
    width: auto;
  }
  body .top-page .top-used .middle-box .common-arrow-link a {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  body .top-page .top-used .middle-box .common-text {
    width: 427px;
    max-width: 100%;
  }
  body .top-page .top-about .main-image .catch {
    font-size: 0.9375rem;
    text-shadow: 0 0 5px #fff, 0 0 4px #fff, 0 0 2px #fff;
  }
  body .top-page .top-about .main-image .chara {
    top: 77%;
  }
  body .top-page .top-about .middle-bod section {
    width: 100%;
    padding-top: 0;
  }
  body .top-page .how-box a section h2 {
    padding: 6px 9px;
    font-size: 0.875rem;
    text-align: center;
    width: 165px;
    max-width: 95%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 1.3em;
  }
  body .top-page .how-box a section .image {
    border-width: 5px;
  }
  body .top-page .how-box a section .common-arrow-link {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    margin-top: 2vh;
  }
  body .top-page .how-box a section .common-text {
    font-size: 0.875rem;
  }
  body .purchase-page .purchase-flow {
    background: #f2f2f2;
    border: none;
  }
  body .purchase-page .purchase-flow .slide-field {
    width: 630px;
    max-width: 90%;
    margin: 2.2222222222vh auto 0;
  }
  body .purchase-page .purchase-flow .slide-field .flow-sp-list {
    width: 400vw;
    padding-top: 2.2222222222vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  body .purchase-page .purchase-flow .slide-field .flow-sp-list li {
    width: 23%;
    text-align: center;
  }
  body .purchase-page .purchase-flow .slide-field .flow-sp-list li figure img {
    max-width: 50%;
    height: auto;
  }
  body .purchase-page .purchase-flow .slide-field .flow-sp-list li figure figcaption {
    text-align: center;
    display: block;
    font-size: 1.0625rem;
    margin-top: 3.5vh;
  }
  body .purchase-page .purchase-flow .slide-field .flow-sp-list li dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2vh;
  }
  body .purchase-page .purchase-flow .slide-field .flow-sp-list li dl dt {
    color: #e80303;
    padding-top: 0.7vh;
    font-family: "din-bold", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "小塚ゴシック Pro", "MS Pゴシック", "MS PGothic", "Droid Sans Mono", Verdana, sans-serif;
    letter-spacing: -0.0333333333em;
    font-size: 1.875rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-right: 5%;
  }
  body .purchase-page .purchase-flow .slide-field .flow-sp-list li dl dd {
    font-size: 0.875rem;
  }
  body .purchase-page .jisseki .jisseki-list .ebox-inner {
    width: 48%;
  }
  body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl dt {
    font-size: 1.2rem;
  }
  body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl dd {
    font-size: 1rem;
  }
  body .purchase-page .jisseki .jisseki-list .ebox-inner .info .price dl dd strong {
    font-size: 1.4rem;
  }
  body .purchase-page .jisseki .jisseki-list .ebox-inner .info table tr th {
    font-size: 0.6875rem;
    padding: 3px;
    white-space: nowrap;
  }
  body .purchase-page .jisseki .jisseki-list .ebox-inner .info table tr td {
    font-size: 0.6875rem;
    padding: 3px;
  }
  body .purchase-page .satei-content .satei-info .flex-box {
    display: block;
  }
  body .purchase-page .satei-content .satei-info .flex-box .common-text {
    width: 100%;
  }
  body .purchase-page .satei-content .satei-info .flex-box .tel-contact {
    width: 90%;
    margin-top: 4vh;
    margin-left: auto;
    margin-right: auto;
  }
  body .purchase-page .satei-content form section dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  body .purchase-page .satei-content form section dl dt {
    width: 100%;
  }
  body .purchase-page .satei-content form section dl dd {
    margin-top: 1vh;
  }
  body .purchase-page .satei-content form section dl dd.mini-area select {
    width: 80%;
  }
  body .parts-page .parts-genre .slide-field {
    width: 630px;
    max-width: 90%;
    margin: 2.2222222222vh auto 0;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list {
    width: 400vw;
    padding-top: 2.2222222222vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li {
    width: 23%;
    padding: 3vh 0;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li:before {
    display: none;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li figure .image {
    padding-top: 64.5403377111%;
    position: relative;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li figure .image .line-image {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 167px;
    max-width: 30%;
    -webkit-transform: translate(8px, 8px);
            transform: translate(8px, 8px);
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li figure .image .line-image img {
    width: 100%;
    height: auto;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li figure figcaption {
    text-align: center;
    font-size: 1.1875rem;
    line-height: 1.4em;
    letter-spacing: 0.2em;
    color: #000;
    margin-top: 3.5vh;
    display: block;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 1.5vh;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li dl dt {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-right: 5%;
    width: 60px;
    max-width: 30%;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li dl dt img {
    width: 100%;
    height: auto;
  }
  body .parts-page .parts-genre .slide-field .flow-sp-list li dl dd {
    font-size: 0.875rem;
    color: #000;
    text-align: justify;
    text-justify: inter-ideograph;
    line-height: 1.5333333333em;
    letter-spacing: 0.05em;
  }
  body .parts-page .act-image-box {
    display: block;
  }
  body .parts-page .act-image-box .image {
    width: 100%;
  }
  body .parts-page .act-image-box .image .image-base {
    padding-top: 54.6666666667%;
  }
  body .parts-page .act-image-box .text-field {
    width: 100%;
    padding: 3.3333333333vh 0 5.5555555556vh;
  }
  body .parts-page .act-image-box .text-field .common-text {
    width: 577px;
    margin-top: 4vh;
  }
  body .parts-page .satei-content .satei-info .flex-box {
    display: block;
  }
  body .parts-page .satei-content .satei-info .flex-box .common-text {
    width: 100%;
  }
  body .parts-page .satei-content .satei-info .flex-box .tel-contact {
    width: 90%;
    margin-top: 4vh;
    margin-left: auto;
    margin-right: auto;
  }
  body .parts-page .satei-content form section dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  body .parts-page .satei-content form section dl dt {
    width: 100%;
  }
  body .parts-page .satei-content form section dl dd {
    margin-top: 1vh;
  }
  body .parts-page .satei-content form section dl dd.mini-area select {
    width: 80%;
  }
  body .parts-page .satei-content form section dl dd.full-radio .radio-box .wpcf7-form-control-wrap {
    display: block;
    margin-top: 0.5em;
  }
  body .company-page .boss-message .middle-box .back-box:after {
    display: none;
  }
  body .company-page .boss-message .middle-box .back-box:before {
    width: 100%;
  }
  body .company-page .boss-message .middle-box .flex-box {
    display: block;
  }
  body .company-page .boss-message .middle-box .flex-box .left-box {
    width: 100%;
    opacity: 1;
  }
  body .company-page .boss-message .middle-box .flex-box .left-box .boss-image {
    width: 90.8%;
    position: relative;
  }
  body .company-page .boss-message .middle-box .flex-box .left-box .boss-image:before {
    content: "";
    background: #e80303;
    display: block;
    position: absolute;
    bottom: -3.8461538462%;
    left: 0;
    height: 83.4134615385%;
    width: 102.7900146843%;
    z-index: -1;
  }
  body .company-page .boss-message .middle-box .flex-box .left-box .boss-image .image-base {
    padding-top: 61.0866372981%;
  }
  body .company-page .boss-message .middle-box .flex-box .left-box .boss-image .text-box {
    position: absolute;
    top: 9.6153846154%;
    left: 4.1116005874%;
    width: 371px;
    max-width: 44%;
  }
  body .company-page .boss-message .middle-box .flex-box .left-box .boss-image .text-box h3 {
    font-size: 0.9375rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    line-height: 1.9em;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  body .company-page .boss-message .middle-box .flex-box .left-box .boss-image .text-box .name {
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    line-height: 1.8em;
    margin-top: 2.5vh;
  }
  body .company-page .boss-message .middle-box .flex-box .right-box {
    width: 100%;
    opacity: 1;
  }
  body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box {
    width: 90%;
    margin: 0 auto;
  }
  body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box .common-text {
    width: 90%;
  }
  body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box .mini-image-box {
    margin-left: auto;
    max-width: 70%;
    width: 438px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 1.8888888889vh;
  }
  body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box .mini-image-box li {
    width: 48.401826484%;
  }
  body .company-page .boss-message .middle-box .flex-box .right-box .right-main-box .mini-image-box li img {
    width: 100%;
    height: auto;
  }
  body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box {
    width: 100%;
  }
  body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box table {
    margin-left: auto;
    margin-right: auto;
  }
  body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box table tr th {
    letter-spacing: 0.3em;
    min-width: 85px;
  }
  body .company-page .gaiyo-box .gaiyo-inner .flex-box .left-box table tr td {
    padding-left: 5%;
  }
  body .company-page .gaiyo-box .gaiyo-inner .flex-box2 {
    display: block;
  }
  body .company-page .gaiyo-box .gaiyo-inner .flex-box2 section {
    width: 100%;
    margin-top: 2.5vh;
  }
  body .company-page .gaiyo-box .gaiyo-inner .gaiyo-image {
    margin-top: 2.1111111111vh;
  }
  body .company-page .gaiyo-box .gaiyo-inner .gaiyo-image .image-base {
    display: block;
    padding-top: 50.0941619586%;
  }
  body .company-page .enkaku-box {
    background-color: rgba(0, 0, 0, 0.55);
    position: relative;
  }
  body .company-page .enkaku-box:after {
    content: "";
    background-image: url(../image/company/enkaku-image.jpg);
    background-image: -webkit-image-set(url(../image/company/enkaku-image.jpg) 1x, url(../image/company/enkaku-image@2x.jpg) 2x);
    background-position: right top;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  body .company-page .enkaku-box .enkaku-inner {
    opacity: 1;
    display: block;
  }
  body .company-page .enkaku-box .enkaku-inner .left-content {
    color: #fff;
    width: 100%;
  }
  body .company-page .enkaku-box .enkaku-inner .left-content section {
    margin-right: auto;
  }
  body .company-page .enkaku-box .enkaku-inner .left-content section .common-title {
    color: #fff;
  }
  body .company-page .enkaku-box .enkaku-inner .left-content section .common-title .mini-title {
    color: #fff;
  }
  body .company-page .access {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  body .company-page .access .map-box {
    width: 100%;
    margin-top: 5.5vh;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  body .company-page .access section {
    width: 100%;
    padding-top: 0;
  }
  body .company-page .how-box a section h2 {
    padding: 6px 9px;
    font-size: 0.875rem;
    text-align: center;
    width: 165px;
    max-width: 95%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 1.3em;
  }
  body .company-page .how-box a section .image {
    border-width: 5px;
  }
  body .company-page .how-box a section .common-arrow-link {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    margin-top: 2vh;
  }
  body .company-page .how-box a section .common-text {
    font-size: 0.875rem;
  }
  body .business-page .business-main .middle-box .flex-box.revers {
    margin-top: 1.5vh;
  }
  body .business-page .yottu-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 650px;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  body .business-page .yottu-box:before {
    display: none;
  }
  body .business-page .yottu-box .yottu-inner {
    width: 47.6923076923%;
    margin-top: 2vh;
  }
  body .business-page .yottu-box .yottu-inner .image {
    width: 100%;
    max-height: none;
    min-height: 0;
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  body .business-page .yottu-box .yottu-inner .image .image-base {
    padding-top: 67.4193548387%;
  }
  body .business-page .yottu-box .yottu-inner .text-wrap {
    position: static;
    width: 100%;
    max-width: 100%;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  body .business-page .yottu-box .yottu-inner .text-wrap .text-box {
    position: static;
    opacity: 1 !important;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important;
    width: 100%;
    max-width: 100%;
    background: none;
  }
  body .business-page .yottu-box .yottu-inner .text-wrap .text-box section {
    border: none;
    padding: 0;
    margin-top: -20px;
  }
  body .business-page .yottu-box .yottu-inner .text-wrap .text-box section h2 .num {
    display: inline-block;
    background: #fff;
    border-radius: 50%;
    padding: 10px;
  }
  body .business-page .yottu-box .yottu-inner .text-wrap .text-box section .common-text {
    width: 100%;
    max-width: 100%;
  }
  body .business-page .yottu-box .yottu-inner .text-wrap .text-box .line {
    display: none;
  }
  body .business-page .hutattu-box {
    display: block;
  }
  body .business-page .hutattu-box .hutattu-wrap {
    width: 100%;
    margin-top: 1vh;
  }
  body .business-page .hutattu-box .hutattu-wrap .inner {
    padding-top: 61.5384615385%;
  }
  body .business-page .hutattu-box .hutattu-wrap .inner section h2 .title-box {
    width: 138px;
  }
  body .business-page .hutattu-box .hutattu-wrap .inner section h2 .title-box br {
    display: none;
  }
  body .business-page .hutattu-box .hutattu-wrap .inner section h2 .title-box .title {
    display: inline-block;
    margin-left: 0.8em;
  }
  body .business-page .hutattu-box .hutattu-wrap .inner section .common-text {
    width: 90%;
  }
  body .business-page .how-box a section h2 {
    padding: 6px 9px;
    font-size: 0.875rem;
    text-align: center;
    width: 165px;
    max-width: 95%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 1.3em;
  }
  body .business-page .how-box a section .image {
    border-width: 5px;
  }
  body .business-page .how-box a section .common-arrow-link {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    margin-top: 2vh;
  }
  body .business-page .how-box a section .common-text {
    font-size: 0.875rem;
  }
  body .news-page-archive .news-list li {
    width: 47.7449455677%;
  }
  body .news-page-archive .news-list li:nth-of-type(1), body .news-page-archive .news-list li:nth-of-type(2) {
    width: 100%;
  }
  body .news-page-archive .news-list li:nth-of-type(1) figure a .image .thumbnail, body .news-page-archive .news-list li:nth-of-type(2) figure a .image .thumbnail {
    padding-top: 61.4065180103%;
  }
  body .news-page-archive .news-list li figure a .image .thumbnail {
    padding-top: 69.7068403909%;
  }
  body .recruit-page .voice-content ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
  body .recruit-page .voice-content ul li {
    margin: 8px 2px 0;
  }
  body .recruit-page .voice-content ul li .smooth-scroll {
    font-size: 0.875rem;
    padding: 6px 15px;
  }
  body .recruit-page .voice-box .once-voice {
    display: block;
  }
  body .recruit-page .voice-box .once-voice .image-box {
    width: 100%;
  }
  body .recruit-page .voice-box .once-voice section {
    width: 100%;
    margin-top: 5.1111111111vh;
  }
  body .recruit-page .voice-box .once-voice section h2 {
    text-align: center;
  }
  body .recruit-page .voice-box .once-voice section .names {
    text-align: left;
  }
  body .recruit-page .voice-box .once-voice.type1 .image-box .image {
    width: 111.9791666667%;
    position: relative;
    right: 13.1782945736%;
  }
  body .recruit-page .voice-box .once-voice.type1 .image-box .image .image-base {
    padding-top: 58.9147286822%;
  }
  body .recruit-page .voice-box .once-voice.type1 .image-box .image:after {
    height: 100%;
  }
  body .recruit-page .voice-box .once-voice.type2:before {
    right: -6%;
  }
  body .recruit-page .voice-box .once-voice.type2 .image-box .big-image .image-base {
    padding-top: 52.5129982669%;
  }
  body .recruit-page .voice-box .once-voice.type2 .image-box ul li {
    width: 48.7001733102%;
  }
  body .recruit-page .voice-box .once-voice.type2 .image-box ul li .image-bsae {
    padding-top: 63.3451957295%;
  }
  body .recruit-page .voice-box .once-voice.type3:before {
    height: 50%;
    width: 51.0769230769%;
  }
  body .recruit-page .voice-box .once-voice.type3 .image-box ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  body .recruit-page .voice-box .once-voice.type3 .image-box ul li {
    width: 48.8734835355%;
    margin-bottom: 0;
  }
  body .recruit-page .voice-box .once-voice.type3 .image-box ul li .image-base {
    padding-top: 89.3617021277%;
  }
  body .recruit-page .voice-box .once-voice.type4:before {
    padding-top: 0;
    height: 45%;
  }
  body .recruit-page .voice-box .once-voice.type4 .image-box .image {
    width: 100%;
    position: static;
  }
  body .recruit-page .voice-box .once-voice.type4 .image-box .image .image-base {
    padding-top: 61.6923076923%;
  }
  body .recruit-page .recruit-info section dl {
    font-size: 0.875rem;
  }
  body .recruit-page .recruit-info section dl dt {
    width: 80px;
    margin-right: 10%;
  }
  body .recruit-page .recruit-info section .common-link-button .real-button {
    max-width: 90%;
  }
  body .recruit-page #entry .entry-form-content form section dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  body .recruit-page #entry .entry-form-content form section dl dt {
    width: 100%;
  }
  body .recruit-page #entry .entry-form-content form section dl dd {
    margin-top: 1vh;
  }
  body .recruit-page #entry .entry-form-content form section dl dd.mini-area select {
    width: 80%;
  }
  body .recruit-page .how-box a section h2 {
    padding: 6px 9px;
    font-size: 0.875rem;
    text-align: center;
    width: 165px;
    max-width: 95%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 1.3em;
  }
  body .recruit-page .how-box a section .image {
    border-width: 5px;
  }
  body .recruit-page .how-box a section .common-arrow-link {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    margin-top: 2vh;
  }
  body .recruit-page .how-box a section .common-text {
    font-size: 0.875rem;
  }
  body .document-page .document-main .must-list {
    display: block;
    padding-left: 0.5em;
    padding-right: 0.5em;
  }
  body .document-page .document-main .must-list ul {
    margin-top: 3.6666666667vh;
  }
  body .document-page .document-main .must-list ul:first-of-type {
    margin-top: 0;
  }
  body .document-page .document-main .documents {
    display: block;
  }
  body .document-page .document-main .documents .document {
    padding: 0;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 340px;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  body .document-page .document-main .documents .document .text {
    margin-right: 1vh;
  }
  body .document-page .document-main .documents .document a {
    width: 115px;
    color: #fff;
  }
  body .document-page .document-main .documents .document a:before {
    left: 100%;
  }
  body .contact-page .contact-main form section dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  body .contact-page .contact-main form section dl dt {
    width: 100%;
  }
  body .contact-page .contact-main form section dl dd {
    margin-top: 1vh;
  }
  body .contact-page .contact-main form section dl dd.mini-area select {
    width: 80%;
  }
  body .sdgs-page .mini-title {
    text-align: center;
  }
  body .sdgs-page .about-sdgs {
    background: url(../image/sdgs/sdgs-bg_sp.png) no-repeat center center;
    background-size: 100% 100%;
  }
  body .sdgs-page .about-sdgs .inner {
    display: block;
  }
  body .sdgs-page .about-sdgs .inner .image {
    width: 100%;
  }
  body .sdgs-page .about-sdgs .inner .text-box {
    width: 100%;
    margin-top: 6.1111111111vh;
  }
  body .sdgs-page .about-sdgs .inner .text-box .c-text {
    margin-top: 3.3333333333vh;
  }
  body .sdgs-page .other-contents section .ct-top-box {
    display: block;
  }
  body .sdgs-page .other-contents section .ct-top-box .image-box {
    width: 88.5333333333%;
  }
  body .sdgs-page .other-contents section .ct-top-box .text-box {
    width: 80%;
    margin: 50px auto 0 !important;
  }
  body .sdgs-page .other-contents section .ct-top-box .text-box .icons {
    text-align: center;
  }
  body .sdgs-page .other-contents section .ct-bottom-box:before {
    width: 120px;
    height: 120px;
  }
  body .sdgs-page .other-contents section .ct-bottom-box .inner {
    display: block;
  }
  body .sdgs-page .other-contents section .ct-bottom-box .inner .line {
    display: none;
  }
  body .sdgs-page .other-contents section .ct-bottom-box .inner .left-box, body .sdgs-page .other-contents section .ct-bottom-box .inner .right-box {
    width: 100%;
  }
  body .sdgs-page .other-contents section .ct-bottom-box .inner .right-box {
    margin-top: 1.6666666667vh;
  }
  body .sdgs-page .other-contents section:nth-of-type(even) .ct-top-box .image-box {
    margin-left: auto;
  }
  body .common-title {
    font-size: 1.1875rem;
  }
  body .common-title .mini-title {
    font-size: 1.0625rem;
  }
  body .common-arrow-link a {
    font-size: 1.1875rem;
  }
  body .common-text {
    font-size: 0.9375rem;
  }
  body .common-link-button a, body .common-link-button .real-button {
    font-size: 1.375rem;
    color: #fff;
  }
  body .common-link-button a .mini-text, body .common-link-button .real-button .mini-text {
    font-size: 0.875rem;
  }
  body .common-link-button a:before, body .common-link-button .real-button:before {
    left: 100%;
  }
  body .common-main-image .image-base {
    padding-top: 48.5333333333%;
  }
  body .mCSB_draggerContainer .mCSB_draggerRail {
    height: 1px !important;
    background: #e80303;
  }
  body .mCSB_draggerContainer .mCSB_dragger_bar {
    height: 3px !important;
    background: #e80303 !important;
  }
}
html.act-nav {
  overflow: hidden;
}
html.act-nav body {
  overflow: hidden;
  height: 100vh;
}
html.act-nav body .main-header .sp-nav .hidden-nav {
  left: 0;
}

html.ua-iphone.scroll-down .main-header .visit-nav {
  opacity: 0;
  -webkit-animation-name: sp-bottom-menu;
          animation-name: sp-bottom-menu;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes sp-bottom-menu {
  0% {
    opacity: 0;
    bottom: -100px;
  }
  30% {
    opacity: 0;
    bottom: -100px;
  }
  100% {
    opacity: 1;
    bottom: 0;
  }
}

@keyframes sp-bottom-menu {
  0% {
    opacity: 0;
    bottom: -100px;
  }
  30% {
    opacity: 0;
    bottom: -100px;
  }
  100% {
    opacity: 1;
    bottom: 0;
  }
}
.user_contents {
  text-align: justify;
  text-justify: inter-ideograph;
}
.user_contents a {
  text-decoration: underline;
}
.user_contents * {
  max-width: 100%;
}
.user_contents img {
  max-width: 100%;
  height: auto;
}
.user_contents img.alignright, .user_contents img.alignleft {
  margin: 0.5em 1em;
}
.user_contents p {
  margin: 1em auto;
  word-break: break-all;
}
.user_contents .aligncenter {
  display: block;
  margin: 0 auto;
}
.user_contents .alignright {
  float: right;
}
.user_contents .alignleft {
  float: left;
}
.user_contents strong {
  font-weight: bold;
  font-size: 1.21em;
}
.user_contents em {
  font-style: italic;
}
.user_contents blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px;
}
.user_contents ul {
  list-style-type: disc;
  margin: 0 1em;
}
.user_contents ol {
  list-style-type: decimal;
  margin: 0 1em;
}
.user_contents li {
  display: list-item;
  margin-left: 1em;
}
.user_contents h1, .user_contents h2, .user_contents h3, .user_contents h4, .user_contents h5, .user_contents h6 {
  font-weight: bold;
  margin: 1.2em auto;
}
.user_contents h1 {
  font-size: 1.818em;
}
.user_contents h2 {
  font-size: 1.616em;
}
.user_contents h3 {
  font-size: 1.414em;
}
.user_contents h4 {
  font-size: 1.212em;
}
.user_contents h5 {
  font-size: 1em;
}
.user_contents h6 {
  font-size: 0.9em;
}