@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

/* add 20181122 */
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  vertical-align: top;
}

:root {
  --White: #FFF;
  /* Base Variable Width */
  --pc-min-size:1000;
  --base-size:1440;
  --variable-length:var(--base-size) * 100vw;
}

/*--------------------------------------------------------------------------
  ブレイクポイント
---------------------------------------------------------------------------*/
@media all and (min-width: 961px) {
  .-sp {
    display: none !important;
  }
}
@media all and (max-width: 960px) {
  .-pc {
    display: none !important;
  }
}
.-enFont {
  font-family: "";
}

/* ==========================================================
  html5 elements
========================================================== */
article, aside, figure, figcaption, footer, header, nav, section, main {
  display: block;
}

/* ==========================================================
  reseting
========================================================== */
html {
  height: 100%;
  font-size: 100%;
}
html.is-fixed {
  position: fixed;
  left: 0;
  width: 100%;
}

body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1rem;
  color: #1A1A1A;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  -webkit-overflow-scrolling: touch !important;
  overflow: auto !important;
  height: 100% !important;
  -webkit-font-smoothing: antialiased;
}

input, textarea, select, button {
  font-family: "Zen Kaku Gothic New", sans-serif;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, button, figure, figcaption {
  margin: 0;
  padding: 0;
}

input, textarea {
  margin: 0;
  font-size: 100%;
}

textarea {
  resize: none;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
          appearance: none;
}

button {
  border: none;
  overflow: visible;
  background: none;
  vertical-align: top;
  font-size: 100%;
  color: inherit;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%;
}

fieldset {
  border: 0;
}

img {
  border: 0;
  height: auto;
  vertical-align: top;
  -ms-interpolation-mode: bicubic;
}

address, caption, code, em, th {
  font-style: normal;
  font-weight: 500;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6, strong, em {
  font-size: 100%;
  font-weight: normal;
}

sup, sub {
  font-size: 63%;
}

sup {
  vertical-align: top;
}

sub {
  vertical-align: baseline;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* ==========================================================
  base Link
========================================================== */
a {
  color: #1A1A1A;
  text-decoration: none;
}

button:disabled {
  cursor: default;
}

html {
  font-size: 100px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  -webkit-font-smoothing: subpixel-antialiased;
}
@media screen and (min-width: 961px) {
  html {
    font-size: clamp(var(--pc-min-size) / var(--base-size) * 10px, 10 / var(--variable-length), 10px);
  }
}
@media screen and (max-width: 960px) {
  html {
    -webkit-text-size-adjust: 100%;
    font-size: 2.6666666667vw;
  }
}

.indexPage {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  position: relative;
  background: #0B9E31;
  color: #fff;
}
@media screen and (max-width: 960px) {
  .indexPage.-spCntIn .header {
    opacity: 1;
  }
}
.indexPage .kv {
  position: absolute;
  top: 0;
  right: 0;
  width: 76rem;
}
@media screen and (max-width: 960px) {
  .indexPage .kv {
    width: 100%;
  }
}
.indexPage .kv img {
  width: 100%;
}
.indexPage .kv .img-1 {
  opacity: 0;
}
.indexPage .kv .img-2, .indexPage .kv .img-3 {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 0;
}
.indexPage .kv[data-step="1"] .img-1 {
  opacity: 1;
}
.indexPage .kv[data-step="2"] .img-2 {
  opacity: 1;
}
.indexPage .kv[data-step="3"] .img-3 {
  opacity: 1;
}
.indexPage .spLogo {
  margin-left: 2rem;
}
@media screen and (min-width: 961px) {
  .indexPage .spLogo {
    display: none;
  }
}
.indexPage .spLogo img {
  width: 21.5rem;
}
.indexPage .header {
  color: #fff;
  position: fixed;
  z-index: 10;
}
@media screen and (min-width: 961px) {
  .indexPage .header {
    top: 10rem;
    left: 8rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .header {
    top: 2.7rem;
    right: 1rem;
    opacity: 0;
  }
}
.indexPage .header__logo img {
  width: 15.2rem;
}
@media screen and (max-width: 960px) {
  .indexPage .header__logo img {
    width: 4rem;
  }
}
.indexPage .header__txt {
  font-weight: 700;
  font-size: 1.2rem;
  margin-top: 2.4rem;
}
@media screen and (max-width: 960px) {
  .indexPage .header__txt {
    display: none;
  }
}
.indexPage .mainWrp {
  position: relative;
}
@media screen and (min-width: 961px) {
  .indexPage .mainWrp {
    padding-top: 39.5rem;
    padding-left: 26.4rem;
    padding-right: 4rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .mainWrp {
    padding-top: 35.2rem;
  }
}
.indexPage .mainWrp__in {
  margin: 0 auto;
  max-width: 113.6rem;
  padding-bottom: 16rem;
}
@media screen and (max-width: 960px) {
  .indexPage .mainWrp__in {
    padding-top: 11.5em;
    padding-bottom: 6.5rem;
  }
}
.indexPage .secTtl {
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
}
@media screen and (max-width: 960px) {
  .indexPage .secTtl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-left: 2rem;
  }
}
.indexPage .secTtl__clm {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
}
.indexPage .secTtl__ico {
  position: relative;
  top: 0.2rem;
  width: 1.8rem;
}
@media screen and (max-width: 960px) {
  .indexPage .secTtl__ico {
    width: 1.6rem;
  }
}
.indexPage .secTtl__ttl {
  font-weight: 500;
  font-size: 2.6rem;
}
@media screen and (max-width: 960px) {
  .indexPage .secTtl__ttl {
    font-size: 2rem;
  }
}
.indexPage .secTtl__txt {
  font-size: 1.2rem;
}
@media screen and (max-width: 960px) {
  .indexPage .secTtl__txt {
    font-size: 1.1rem;
    margin-left: 1.7rem;
  }
}
.indexPage .aboutSec {
  position: relative;
}
@media screen and (min-width: 961px) {
  .indexPage .aboutSec {
    margin-left: 13.6rem;
    width: 80rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .aboutSec {
    overflow: hidden;
  }
}
.indexPage .aboutSec__cnt {
  margin-top: 10rem;
}
@media screen and (max-width: 960px) {
  .indexPage .aboutSec__cnt {
    width: 29.5rem;
    margin-left: 2rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .aboutSec__cnt {
    margin-top: 7rem;
  }
}
.indexPage .aboutSec__cnt .ttl {
  line-height: normal;
  font-weight: 700;
  font-size: 3.2rem;
  margin-bottom: 4.5rem;
}
@media screen and (max-width: 960px) {
  .indexPage .aboutSec__cnt .ttl {
    font-size: 2.4rem;
    margin-bottom: 2.5rem;
  }
}
.indexPage .aboutSec__cnt .txt {
  line-height: 1.75;
  font-size: 1.4rem;
}
@media screen and (max-width: 960px) {
  .indexPage .aboutSec__cnt .txt {
    text-align: justify;
    font-size: 1.3rem;
    line-height: 1.7;
  }
}
.indexPage .aboutSec__cnt .img {
  position: relative;
  margin: 7.5rem auto 0;
  width: 34rem;
  left: 3.5rem;
}
@media screen and (max-width: 960px) {
  .indexPage .aboutSec__cnt .img {
    width: 27.7rem;
    margin: 5.5rem 0 0 auto;
    left: auto;
    right: -8rem;
  }
}
.indexPage .aboutSec__cnt .img img {
  width: 100%;
}
.indexPage .aboutSec__cnt .img img[data-step="2"] {
  -webkit-transform: translate(-1rem, -1rem);
          transform: translate(-1rem, -1rem);
}
.indexPage .aboutSec__cnt .img img[data-step="3"] {
  -webkit-transform: translate(1rem, 1rem);
          transform: translate(1rem, 1rem);
}
.indexPage .aboutSec__cnt .img img[data-step="4"] {
  -webkit-transform: translate(-1rem, 1rem);
          transform: translate(-1rem, 1rem);
}
.indexPage .worldSec {
  padding: 1rem 0 0;
}
@media screen and (max-width: 960px) {
  .indexPage .worldSec {
    padding-top: 4.5rem;
  }
}
@media screen and (min-width: 961px) {
  .indexPage .worldSec .secTtl {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.indexPage .worldSec__cnt {
  position: relative;
  width: 100%;
  margin-top: 7.5rem;
}
@media screen and (max-width: 960px) {
  .indexPage .worldSec__cnt {
    margin-top: 4rem;
  }
}
.indexPage .worldSec__cnt img {
  width: 100%;
}
.indexPage .worldSec__cnt .js-world-bottom {
  position: absolute;
  width: 100%;
  height: 1px;
  top: 100%;
}
.indexPage .worldSec__cnt .js-world-img {
  -webkit-transform: scale(0);
          transform: scale(0);
}
.indexPage .corpSec {
  position: relative;
  padding-top: 24.7rem;
}
@media screen and (min-width: 961px) {
  .indexPage .corpSec {
    margin-left: 13.6rem;
    width: 80rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .corpSec {
    overflow: hidden;
    padding-top: 11.7rem;
  }
}
.indexPage .corpSec .img {
  position: absolute;
  right: -18rem;
  top: 12rem;
  width: 30.3rem;
}
@media screen and (max-width: 960px) {
  .indexPage .corpSec .img {
    width: 19.3rem;
    right: -4.5rem;
    top: 4.2rem;
  }
}
.indexPage .corpSec .img img {
  width: 100%;
}
.indexPage .corpSec .img img[data-step="2"] {
  -webkit-transform: translate(1rem, -1rem);
          transform: translate(1rem, -1rem);
}
.indexPage .corpSec .img img[data-step="3"] {
  -webkit-transform: translate(0rem, -1rem);
          transform: translate(0rem, -1rem);
}
.indexPage .corpSec .img img[data-step="4"] {
  -webkit-transform: translate(-1rem, -1rem);
          transform: translate(-1rem, -1rem);
}
.indexPage .corpSec__cnt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 6rem;
}
@media screen and (max-width: 960px) {
  .indexPage .corpSec__cnt {
    width: 29.5rem;
    margin-left: 2rem;
  }
}
.indexPage .corpSec__cnt dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  padding: 3rem 0;
}
@media screen and (max-width: 960px) {
  .indexPage .corpSec__cnt dl {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    font-size: 1.5rem;
    line-height: 1.75;
    padding: 2rem 0 2.3rem;
  }
}
.indexPage .corpSec__cnt dl dt {
  width: 16rem;
}
@media screen and (max-width: 960px) {
  .indexPage .corpSec__cnt dl dt {
    width: 8rem;
  }
}
.indexPage .corpSec__cnt dl dd {
  width: 62rem;
}
@media screen and (max-width: 960px) {
  .indexPage .corpSec__cnt dl dd {
    width: 19.5rem;
  }
}
.indexPage .corpSec__cnt dl dd .gmap {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
}
@media screen and (min-width: 961px) {
  .indexPage .corpSec__cnt dl dd .gmap {
    margin-left: 3.2rem;
    font-size: 1.3rem;
  }
}
.indexPage .corpSec__cnt dl dd .gmap__blnk {
  display: inline-block;
  width: 1.2rem;
  margin-left: 1rem;
}
@media screen and (max-width: 960px) {
  .indexPage .corpSec__cnt dl dd .gmap__blnk {
    margin-left: 0.2rem;
    margin-top: 0.7rem;
  }
}
.indexPage .contactSec {
  position: relative;
  padding-top: 31rem;
}
@media screen and (min-width: 961px) {
  .indexPage .contactSec {
    margin-left: 13.6rem;
    width: 80rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec {
    overflow: hidden;
    padding-top: 11.5rem;
  }
}
.indexPage .contactSec .img {
  position: absolute;
  right: -17rem;
  top: 21.5rem;
  width: 30rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .img {
    width: 19.4rem;
    right: -4.7rem;
    top: 7rem;
  }
}
.indexPage .contactSec .img img {
  width: 100%;
}
.indexPage .contactSec .img img[data-step="2"] {
  -webkit-transform: translate(-1rem, -1rem);
          transform: translate(-1rem, -1rem);
}
.indexPage .contactSec .img img[data-step="2"] {
  -webkit-transform: translate(1rem, -1rem);
          transform: translate(1rem, -1rem);
}
.indexPage .contactSec .img img[data-step="3"] {
  -webkit-transform: translate(0rem, -1rem);
          transform: translate(0rem, -1rem);
}
.indexPage .contactSec .img img[data-step="4"] {
  -webkit-transform: translate(2rem, 2rem);
          transform: translate(2rem, 2rem);
}
.indexPage .contactSec__cnt {
  margin-top: 6rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec__cnt {
    width: 29.5rem;
    margin-left: 2rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec__cnt {
    margin-top: 4rem;
  }
}
.indexPage .contactSec .reqTxt {
  font-size: 1.2rem;
  margin-bottom: 6rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .reqTxt {
    font-size: 1.1rem;
    margin-bottom: 3rem;
  }
}
.indexPage .contactSec .formBlock .inputList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
  font-size: 1.6rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList {
    line-height: 1.75;
    font-size: 1.5rem;
    gap: 2.4rem;
  }
}
.indexPage .contactSec .formBlock .inputList input, .indexPage .contactSec .formBlock .inputList select, .indexPage .contactSec .formBlock .inputList textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: none;
}
.indexPage .contactSec .formBlock .inputList dd input, .indexPage .contactSec .formBlock .inputList dd select, .indexPage .contactSec .formBlock .inputList dd textarea {
  border-radius: 0.1rem;
  background: rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1) inset;
          box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1) inset;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.8rem 2.4rem;
  color: #fff;
  border-radius: 1rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList dd input, .indexPage .contactSec .formBlock .inputList dd select, .indexPage .contactSec .formBlock .inputList dd textarea {
    padding: 1.5rem 2rem;
  }
}
.indexPage .contactSec .formBlock .inputList dd input::-webkit-input-placeholder, .indexPage .contactSec .formBlock .inputList dd select::-webkit-input-placeholder, .indexPage .contactSec .formBlock .inputList dd textarea::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.75);
}
.indexPage .contactSec .formBlock .inputList dd input::-moz-placeholder, .indexPage .contactSec .formBlock .inputList dd select::-moz-placeholder, .indexPage .contactSec .formBlock .inputList dd textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.75);
}
.indexPage .contactSec .formBlock .inputList dd input:-ms-input-placeholder, .indexPage .contactSec .formBlock .inputList dd select:-ms-input-placeholder, .indexPage .contactSec .formBlock .inputList dd textarea:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.75);
}
.indexPage .contactSec .formBlock .inputList dd input::-ms-input-placeholder, .indexPage .contactSec .formBlock .inputList dd select::-ms-input-placeholder, .indexPage .contactSec .formBlock .inputList dd textarea::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.75);
}
.indexPage .contactSec .formBlock .inputList dd input::placeholder, .indexPage .contactSec .formBlock .inputList dd select::placeholder, .indexPage .contactSec .formBlock .inputList dd textarea::placeholder {
  color: rgba(255, 255, 255, 0.75);
}
.indexPage .contactSec .formBlock .inputList dd select {
  background: url(../images/ico-pd.svg) center right 2.4rem/1.2rem 0.8rem no-repeat rgba(0, 0, 0, 0.1);
  padding: 2.2rem 2.4rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList dd select {
    padding: 1.9rem 2rem;
  }
}
.indexPage .contactSec .formBlock .inputList dd textarea {
  height: 32rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList dd textarea {
    height: 26rem;
  }
}
.indexPage .contactSec .formBlock .inputList dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 961px) {
  .indexPage .contactSec .formBlock .inputList dl {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.6rem;
  }
}
@media screen and (min-width: 961px) {
  .indexPage .contactSec .formBlock .inputList dl dt {
    padding-top: 2rem;
    width: 16rem;
  }
}
@media screen and (min-width: 961px) {
  .indexPage .contactSec .formBlock .inputList dl dd {
    width: 64rem;
  }
}
.indexPage .contactSec .formBlock .inputList dl dd.-clm {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.8rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList dl dd.-clm {
    gap: 0.4rem;
  }
}
.indexPage .contactSec .formBlock .inputList .ppBlock {
  border-radius: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  height: 35.8rem;
  padding: 3.6rem 2.4rem;
  overflow-y: auto;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList .ppBlock {
    padding: 2.6rem 1.5rem 2.6rem 2rem;
  }
}
.indexPage .contactSec .formBlock .inputList .ppBlock::-webkit-scrollbar {
  width: 0.5rem; /* スクロールバーの太さ */
}
.indexPage .contactSec .formBlock .inputList .ppBlock::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.3); /* ハンドル色 */
  border-radius: 0.6rem; /* 角丸 */
}
.indexPage .contactSec .formBlock .inputList .ppBlock::-webkit-scrollbar-track {
  background: transparent; /* 背景色 */
}
.indexPage .contactSec .formBlock .inputList .ppBlock__ttl {
  line-height: 1;
  font-size: 1.6rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList .ppBlock__ttl {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
}
.indexPage .contactSec .formBlock .inputList .ppBlock__txt {
  line-height: 1.75;
  font-size: 1.2rem;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList .ppBlock__txt {
    font-size: 1.1rem;
  }
}
.indexPage .contactSec .formBlock .inputList .ppBlock__txt a {
  color: inherit;
  text-decoration: underline;
}
.indexPage .contactSec .formBlock .inputList .ppBlock__txt a:hover {
  text-decoration: none;
}
.indexPage .contactSec .formBlock .inputList .ppBlock .-indent {
  display: inline-block;
  line-height: 1.75;
  font-size: 1.2rem;
  text-indent: -0.75em;
  padding-left: 0.75em;
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList .ppBlock .-indent {
    font-size: 1.1rem;
  }
}
.indexPage .contactSec .formBlock .inputList .ppBlock b {
  font-weight: 700;
}
.indexPage .contactSec .formBlock .inputList .agreeBlock input {
  background: rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1) inset;
          box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1) inset;
  border-radius: 0.4rem;
  width: 1.8rem;
  height: 1.8rem;
}
.indexPage .contactSec .formBlock .inputList .agreeBlock label {
  position: relative;
  margin-left: 0.4rem;
  top: -0.3rem;
}
.indexPage .contactSec .formBlock .inputList .agreeBlock #agreement:checked {
  background: #fff;
}
.indexPage .contactSec .formBlock .inputList .submitBlock {
  margin-top: 2rem;
}
@media screen and (min-width: 961px) {
  .indexPage .contactSec .formBlock .inputList .submitBlock {
    position: relative;
  }
  .indexPage .contactSec .formBlock .inputList .submitBlock:before {
    border-radius: 1rem;
    background: rgba(0, 0, 0, 0.1);
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 31.6rem;
    height: 100%;
  }
}
.indexPage .contactSec .formBlock .inputList .submitBlock .submitBtn {
  color: #0B9E31;
  border-radius: 1rem;
  -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.3) inset;
          box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.3) inset;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: url(../images/ico-arw.svg) center right 2.4rem/0.47rem 0.76rem no-repeat #fff;
  line-height: 1;
  width: 31.6rem;
  padding: 2.1rem 2.4rem;
  font-size: 1.6rem;
}
@media screen and (min-width: 961px) {
  .indexPage .contactSec .formBlock .inputList .submitBlock .submitBtn {
    position: relative;
    -webkit-box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.3) inset;
            box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.3) inset;
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
  }
  .indexPage .contactSec .formBlock .inputList .submitBlock .submitBtn:hover {
    -webkit-transform: translate(-0.8rem, -0.8rem);
            transform: translate(-0.8rem, -0.8rem);
  }
}
@media screen and (max-width: 960px) {
  .indexPage .contactSec .formBlock .inputList .submitBlock .submitBtn {
    width: 100%;
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 961px) {
  .indexPage .totop {
    position: absolute;
    bottom: 0;
    right: 4rem;
  }
  .indexPage .totop .totop__img img {
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    transition: -webkit-transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    transition: transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    transition: transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55), -webkit-transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
  }
  .indexPage .totop .totop__txt {
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    transition: -webkit-transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    transition: transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    transition: transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55), -webkit-transform 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
  }
  .indexPage .totop:hover .totop__img img {
    -webkit-transform: translateY(3.7rem);
            transform: translateY(3.7rem);
  }
  .indexPage .totop:hover .totop__txt {
    -webkit-transform: translateY(-1rem);
            transform: translateY(-1rem);
  }
}
@media screen and (max-width: 960px) {
  .indexPage .totop {
    position: relative;
    width: 18rem;
    margin: 0 auto;
    display: block;
  }
}
.indexPage .totop__img {
  width: 18rem;
  margin: 0 auto;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  .indexPage .totop__img {
    position: relative;
    left: 1rem;
  }
}
.indexPage .totop__img img {
  width: 100%;
  -webkit-transform: translateY(8.7rem);
          transform: translateY(8.7rem);
}
.indexPage .totop__txt {
  color: #fff;
  position: absolute;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  bottom: 3.5rem;
  left: -4rem;
  gap: 1rem;
}
@media screen and (max-width: 960px) {
  .indexPage .totop__txt {
    right: auto;
    left: -3rem;
    bottom: 3rem;
  }
}
.indexPage .totop__txt img {
  width: 2.8rem;
}
.indexPage .totop__txt p {
  -webkit-font-feature-settings: "vkna" on, "vrt2" on;
          font-feature-settings: "vkna" on, "vrt2" on;
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
  font-size: 1.2rem;
}
.indexPage .fixBlock {
  position: fixed;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
  bottom: 4rem;
  font-size: 0.9rem;
}
@media screen and (min-width: 961px) {
  .indexPage .fixBlock {
    left: 7.6rem;
  }
}
@media screen and (max-width: 960px) {
  .indexPage .fixBlock {
    right: 1.5rem;
  }
}
.indexPage .fixBlock .langList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4rem;
}
.indexPage .fixBlock .langList li {
  position: relative;
}
@media screen and (min-width: 961px) {
  .indexPage .fixBlock .langList li:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 5rem;
    background: rgba(0, 0, 0, 0.05);
  }
}
.indexPage .fixBlock .langList a {
  position: relative;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: solid 1px #fff;
  border-radius: 4rem;
  width: 2.8rem;
  height: 2.4rem;
}
@media screen and (min-width: 961px) {
  .indexPage .fixBlock .langList a {
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
  }
  .indexPage .fixBlock .langList a:hover {
    -webkit-transform: translate(-0.4rem, -0.4rem);
            transform: translate(-0.4rem, -0.4rem);
  }
}
.indexPage .fixBlock .langList a.-cr {
  pointer-events: none;
  background: #fff;
  color: #0B9E31;
}
.indexPage .fixBlock .copy {
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
  margin: 3.6rem 0 1.2rem;
}
.indexPage .fixBlock .snsList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.indexPage .fixBlock .snsList li {
  position: relative;
}
@media screen and (min-width: 961px) {
  .indexPage .fixBlock .snsList li:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 5rem;
    background: rgba(0, 0, 0, 0.05);
  }
}
.indexPage .fixBlock .snsList a {
  position: relative;
  display: block;
  background: #0B9E31;
}
@media screen and (min-width: 961px) {
  .indexPage .fixBlock .snsList a {
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    transition: transform 0.2s;
    transition: transform 0.2s, -webkit-transform 0.2s;
    border-radius: 50%;
  }
  .indexPage .fixBlock .snsList a:hover {
    -webkit-transform: translate(-0.4rem, -0.4rem);
            transform: translate(-0.4rem, -0.4rem);
  }
}
.indexPage .fixBlock .snsList img {
  width: 3.2rem;
}

.enPage {
  font-family: "Poppins", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
}
.enPage .fixBlock {
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.enPage .secTtl__ttl {
  font-weight: 600;
}
.enPage .secTtl__ico {
  top: -0.2rem;
}
@media screen and (max-width: 960px) {
  .enPage .secTtl__clm {
    gap: 0.8rem;
  }
}
.enPage .aboutSec__cnt .ttl {
  line-height: 1.5;
}
.enPage .aboutSec__cnt .txt {
  text-align: left;
}
@media screen and (max-width: 960px) {
  .enPage .corpSec__cnt {
    margin-top: 8rem;
  }
}
.enPage .corpSec__cnt dl {
  padding: 3.9rem 0;
}
@media screen and (max-width: 960px) {
  .enPage .corpSec__cnt dl {
    padding: 2.9rem 0;
  }
}
.enPage .corpSec__cnt dl dd .gmap {
  margin-left: 0;
  margin-top: 1.5rem;
}
@media screen and (min-width: 961px) {
  .enPage .contactSec {
    padding-top: 18rem;
  }
}
@media screen and (max-width: 960px) {
  .enPage .contactSec {
    padding-top: 12rem;
  }
  .enPage .contactSec__cnt {
    margin-top: 6rem;
  }
}/*# sourceMappingURL=style.css.map */