/* =======================
VARIABLES
* ======================= */
/* colors */
/* breakpoints */
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Noto+Sans+JP:wght@400;500;700&family=Noto+Sans:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css");
@font-face {
  font-family: "Heisei Mincho Std w9", serif;
  src: url("../fonts/HGSHeiseiMinchotaiW9-01.ttf");
}
@font-face {
  font-family: "heisei-mincho-std-w3", serif;
  src: url("../fonts/HeiseiMinStd-W3.otf");
}
/* =======================
 * Functions CLASS
 * ======================= */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

img {
  width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: #5b5b5b;
}

p {
  font-size: 18px;
}

ul {
  list-style: none;
}

input,
textarea {
  font-family: "Noto Sans JP", sans-serif;
}

/*====================================================================
siteHeader
====================================================================*/
.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 4;
}
.header__container {
  margin: 0 auto;
  padding: 1.5625vw 0 1.5625vw;
  width: calc(100% - 7.8125vw);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap;
  flex-direction: row;
}
.header__navMenu {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap;
  flex-direction: row;
  list-style: none;
}
.header__navMenu.m-pcDb {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: nowrap;
  flex-direction: row;
}
.header__navMenu-item {
  margin-right: 2.0833333333vw;
  position: relative;
}
.header__navMenu-item:last-child {
  margin-right: 0;
}
.header__navMenu-link {
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.875vw;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.6);
  display: block;
  box-sizing: border-box;
  position: relative;
  transition: all 0.6s ease-in-out 0s;
}
@media screen and (max-width: 767px) {
  .header__navMenu-link {
    font-size: 12px;
  }
}
.header__navMenu-link:hover {
  transform: scale(1.1);
  color: white;
}

.mobile-menu {
  display: none;
}

/*====================================================================
Header SP
====================================================================*/
@media screen and (max-width: 767px) {
  .header {
    width: 100%;
    z-index: 12;
  }
  .header__container {
    margin: 0 auto;
    padding: 4.6875vw 0;
    width: 100%;
    max-width: calc(100% - 6.25vw);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    flex-direction: row;
  }
  .header__navMenuContainer {
    position: fixed;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: #5b5b5b;
    transition: all 0.6s ease-in-out 0s;
  }
  .header__navMenuContainer.m-pcDb {
    display: none;
  }
  .header__navMenuContainer.m-spDb {
    display: none;
  }
  .header__navMenuContainer.is-active {
    left: 0;
  }
  .header__navMenu {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    list-style: none;
    text-align: center;
    background-color: #5b5b5b;
    z-index: 100;
  }
  .header__navMenu-item {
    margin-right: 0;
    margin-bottom: 4.6875vw;
    position: relative;
    transition: all 0.6s ease-in-out 0s;
    display: block !important;
  }
  .header__navMenu-item:last-child {
    margin-bottom: 0;
    margin-right: 0;
  }
  .header__navMenu-item:last-child {
    margin-right: 0;
  }
  .header__navMenu-link {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.2;
    color: #fff;
    display: block;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .header__navMenu-link {
    font-size: 4.375vw;
  }
}
@media screen and (max-width: 767px) {
  .header__navMenu-link:after {
    display: none;
  }
  .header__navMenu-link:hover:after {
    display: none;
  }
  .header__navMenu-link.is-active:after {
    display: none;
  }
  .bar {
    margin: 1.25vw auto;
    width: 6.25vw;
    height: 0.3125vw;
    display: block;
    background: #fff;
    transition: all 0.7s ease;
  }
  .bar.top {
    margin-top: 0;
  }
  .bar.bottom {
    margin-bottom: 0;
  }
  .bars {
    cursor: pointer;
    display: inline-block;
    margin: 0 auto;
    width: auto;
    transition: all 0.7s ease;
  }
  .bars.bars-clicked .bar {
    background-color: #fff;
  }
  .menu-bar {
    margin: 0 0 0 auto;
    padding: 0;
    width: auto;
    display: inline-block;
    text-align: center;
    height: auto;
    position: relative;
    z-index: 100;
    font-size: 0;
  }
  .middle {
    margin: 0 auto;
  }
  .bars-clicked .top {
    transform: translateY(1.25vw) rotateZ(45deg);
  }
  .bars-clicked .bottom {
    transform: translateY(-1.875vw) rotateZ(-45deg);
  }
  .bars-clicked .middle {
    opacity: 0;
  }
}
/*====================================================================
siteFooter
====================================================================*/
.footer {
  margin: 0 auto;
  width: 100%;
  position: relative;
  z-index: 2;
}
.footer__bgElem {
  width: 100%;
  max-width: 100%;
  text-align: center;
}
.footer__copyrights {
  padding-bottom: 1.3020833333vw;
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.6666666667vw;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1.8;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .footer__copyrights {
    font-size: 12px;
  }
}

/*====================================================================
siteFooter SP
====================================================================*/
@media screen and (max-width: 767px) {
  .footer__copyrights {
    padding: 37.5vw 0 4.6875vw 0;
    box-sizing: border-box;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.5;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .footer__copyrights {
    font-size: 3.4375vw;
  }
}
/*====================================================================
COMMON LAYOUT
====================================================================*/
html {
  font-family: "Heisei Mincho Std w9", serif;
  font-size: 62.5%;
  background-color: #d2d0d2;
  overflow-x: hidden;
}
@media screen and (max-width: 767px) {
  html {
    font-size: 16px;
  }
}

body {
  font-feature-settings: "palt" 1;
  overflow-x: hidden;
  position: relative;
}
body.menu-is-active {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  body {
    min-width: inherit;
    overflow-x: hidden;
  }
}

main {
  margin-top: 0;
}

/*-----------------------------------------------
PC/SP
------------------------------------------------*/
.m-pcDb {
  display: block;
}

.m-pcDib {
  display: inline-block;
}

.m-pcDin {
  display: inline;
}

.m-pcDf {
  display: flex;
}

.m-pcDt {
  display: table;
}

.m-pcDtc {
  display: table-cell;
}

.m-spDb,
.m-spDib,
.m-spDin,
.m-spDf,
.m-spDt,
.m-spDtc {
  display: none;
}

@media screen and (max-width: 767px) {
  .m-pcDb,
  .m-pcDib,
  .m-pcDin,
  .m-pcDf,
  .m-pcDt,
  .m-pcDtc {
    display: none;
  }
  .m-spDb {
    display: block;
  }
  .m-spDib {
    display: inline-block;
  }
  .m-spDin {
    display: inline;
  }
  .m-spDf {
    display: flex;
  }
  .m-spDt {
    display: table;
  }
  .m-spDtc {
    display: table-cell;
  }
}
/*-----------------------------------------------
Container
------------------------------------------------*/
.siteContainer {
  margin: auto;
  width: 100%;
  max-width: 74.4791666667vw;
  position: relative;
}
@media screen and (max-width: 767px) {
  .siteContainer {
    max-width: calc(100% - 6.25vw);
  }
}

/*-----------------------------------------------
Anchor
------------------------------------------------*/
.anchor {
  position: relative;
}
.anchor__box {
  margin: auto;
  position: absolute;
  top: -5.2083333333vw;
  left: 0;
  right: 0;
  width: 2.6041666667vw;
  height: 2.6041666667vw;
  outline: none;
  pointer-events: none;
  cursor: default;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .anchor__box {
    top: -15.625vw;
    left: 0;
    right: 0;
    width: 15.625vw;
    height: 15.625vw;
  }
}

/*-----------------------------------------------
keyframes animation
------------------------------------------------*/
@keyframes rotate360 {
  to {
    transform: rotate(360deg);
  }
}
@keyframes phoneRotate {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(-25deg);
  }
}
/*-----------------------------------------------
Body BG bottom element
------------------------------------------------*/
.body__bgElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.body__bgElem.elem--1 {
  bottom: 0;
  left: -3.6979166667vw;
  width: 12.1875vw;
  height: 70.9895833333vw;
  background-image: url(../images/contact/background-elements/bg-elem-1.svg);
  z-index: -1;
}
.body__bgElem.elem--2 {
  bottom: 0;
  right: -2.0833333333vw;
  width: 19.6875vw;
  height: 70.2604166667vw;
  background-image: url(../images/contact/background-elements/bg-elem-2.svg);
  z-index: -1;
}
.body__bgElem.elem--3 {
  bottom: 0;
  width: 100%;
  max-width: 101.0416666667vw;
  height: 19.7916666667vw;
  background-image: url(../images/footer/background-elements/bg-elem-1.svg);
  z-index: 1;
  background-position: top;
}
@media screen and (max-width: 767px) {
  .body__bgElem.elem--1 {
    left: -6.25vw;
    width: 18.75vw;
    height: 125vw;
  }
  .body__bgElem.elem--2 {
    bottom: 12.5vw;
    right: -3.125vw;
    width: 18.75vw;
    height: 75vw;
  }
  .body__bgElem.elem--3 {
    height: 37.5vw;
    background-size: cover;
    background-position: bottom;
    background-image: url(../images/footer/background-elements/bg-elem-1-mob.svg);
  }
}

/*====================================================================
KV Section PC
====================================================================*/
.keyVisual {
  margin: 0 auto;
  width: 100%;
  display: block;
  position: relative;
}
.keyVisual__container {
  margin: 0 auto;
  padding: 14.6354166667vw 0 21.5625vw;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: column;
  position: relative;
}
.keyVisual__bgElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.keyVisual__bgElem.elem--1 {
  top: -4.21875vw;
  left: -1.5625vw;
  width: 76.875vw;
  height: 25.8333333333vw;
  background-image: url(../images/kv/background-elements/bg-elem-1.svg);
  z-index: 2;
}
.keyVisual__bgElem.elem--2 {
  top: -3.2291666667vw;
  right: -11.09375vw;
  width: 82.8645833333vw;
  height: 40.1041666667vw;
  background-image: url(../images/kv/background-elements/bg-elem-2.svg);
  z-index: 3;
}
.keyVisual__bgElem.elem--3 {
  top: -4.4791666667vw;
  right: -16.4583333333vw;
  width: 36.9270833333vw;
  height: 46.40625vw;
  background-image: url(../images/kv/background-elements/bg-elem-3.svg);
  z-index: 1;
}
.keyVisual__bgElem.elem--4 {
  top: 3.90625vw;
  right: -3.125vw;
  width: 19.1145833333vw;
  height: 89.21875vw;
  background-image: url(../images/kv/background-elements/bg-elem-4.svg);
  z-index: 1;
}
.keyVisual__bgElem.elem--5 {
  top: -3.2291666667vw;
  left: -4.5833333333vw;
  width: 120.0520833333vw;
  height: 110.625vw;
  background-image: url(../images/kv/background-elements/bg-elem-5.svg);
  z-index: 1;
}
.keyVisual__bgElem.elem--6 {
  top: 65.1041666667vw;
  left: -10.5208333333vw;
  width: 44.6875vw;
  height: 76.0416666667vw;
  background-image: url(../images/kv/background-elements/bg-elem-6.svg);
  z-index: 2;
}
.keyVisual__floatElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.keyVisual__floatElem.elem--1 {
  top: 20.3125vw;
  left: 8.28125vw;
  width: 5.7291666667vw;
  height: 5.7291666667vw;
  background-image: url(../images/kv/float-elem-1.png);
  z-index: -1;
}
.keyVisual__floatElem.elem--2 {
  top: 14.3229166667vw;
  left: 27.9166666667vw;
  width: 7.03125vw;
  height: 8.125vw;
  background-image: url(../images/kv/float-elem-2.png);
  z-index: -1;
}
.keyVisual__floatElem.elem--3 {
  top: 7.6041666667vw;
  right: 25vw;
  width: 8.6458333333vw;
  height: 10.8333333333vw;
  background-image: url(../images/kv/float-elem-3.png);
  z-index: -1;
}
.keyVisual__floatElem.elem--3 {
  top: 6.25vw;
  right: 25vw;
  width: 8.6458333333vw;
  height: 10.8333333333vw;
  background-image: url(../images/kv/float-elem-3.png);
  z-index: -1;
}
.keyVisual__floatElem.elem--4 {
  top: 24.4791666667vw;
  right: 16.5104166667vw;
  width: 9.4791666667vw;
  height: 9.4791666667vw;
  background-image: url(../images/kv/float-elem-4.png);
  z-index: -1;
}
.keyVisual__floatElem.elem--5 {
  top: 37.5vw;
  left: 14.1145833333vw;
  width: 8.0208333333vw;
  height: 8.0208333333vw;
  background-image: url(../images/kv/float-elem-5.png);
  z-index: -1;
}
.keyVisual__floatElem.elem--6 {
  top: 40.3645833333vw;
  left: 52.7083333333vw;
  width: 9.4270833333vw;
  height: 9.21875vw;
  background-image: url(../images/kv/float-elem-6.png);
  z-index: -1;
}
.keyVisual__floatElem.elem--7 {
  top: 45.1041666667vw;
  right: 15.3645833333vw;
  width: 3.6458333333vw;
  height: 4.6354166667vw;
  background-image: url(../images/kv/float-elem-7.png);
  z-index: -1;
}
.keyVisual__logo {
  margin: 0 auto 0.78125vw;
  width: 14.1666666667vw;
}
.keyVisual__heading {
  margin: 0 auto 1.875vw;
  width: 23.9583333333vw;
}
.keyVisual__subTitle {
  font-size: 1.6458333333vw;
  font-weight: bold;
  letter-spacing: 0.24em;
  line-height: normal;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .keyVisual__subTitle {
    font-size: 12px;
  }
}
.keyVisual__intr {
  margin: 0 auto 0;
  padding: 21.6145833333vw 0 0;
  width: 100%;
  position: relative;
  z-index: 3;
  text-align: center;
}
.keyVisual__intrText {
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.9791666667vw;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.6;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .keyVisual__intrText {
    font-size: 12px;
  }
}
.keyVisual__intrText.last__block {
  font-family: "heisei-mincho-std-w3", serif;
  margin-top: 4.6875vw;
  font-size: 2.0833333333vw;
  font-weight: 400;
  letter-spacing: 0.12em;
  line-height: 1.8;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .keyVisual__intrText.last__block {
    font-size: 12px;
  }
}
.keyVisual__intrText.sm-text {
  font-family: "heisei-mincho-std-w3", serif;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  flex-direction: row;
  margin-top: -0.2604166667vw;
  margin-bottom: 3.125vw;
  font-size: 0.8802083333vw;
  font-weight: 400;
  letter-spacing: 1.15em;
  line-height: normal;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 767px) {
  .keyVisual__intrText.sm-text {
    font-size: 12px;
  }
}
.keyVisual__intrText.sm-text .batch--1 {
  padding-left: 0vw;
  padding-right: 0.2604166667vw;
  position: relative;
  letter-spacing: 0.85em;
  display: inline-block;
}
.keyVisual__intrText.sm-text .batch--2 {
  letter-spacing: 1.2em;
  display: inline-block;
  position: relative;
  left: 0vw;
}
.keyVisual__intrText.en-text {
  line-height: 0.06em;
}
.keyVisual__intrPerson {
  position: absolute;
  top: 6.7708333333vw;
}
.keyVisual__intrPerson.person--left {
  left: 5.625vw;
  width: 17.5vw;
}
.keyVisual__intrPerson.person--right {
  right: 6.25vw;
  width: 14.6354166667vw;
}

/*====================================================================
KV Section PC Breakpoint
====================================================================*/
/*====================================================================
KV Section SP
====================================================================*/
@media screen and (max-width: 767px) {
  .keyVisual__bgElem.elem--1 {
    top: -3.125vw;
    left: -1.5625vw;
    width: 93.75vw;
    height: 31.25vw;
  }
  .keyVisual__bgElem.elem--2 {
    top: -3.125vw;
    right: -9.375vw;
    width: 100%;
    height: 43.75vw;
  }
  .keyVisual__bgElem.elem--3 {
    top: 21.875vw;
    right: -28.125vw;
    width: 37.5vw;
    height: 46.875vw;
  }
  .keyVisual__bgElem.elem--4 {
    top: 3.125vw;
    right: -15.625vw;
    width: 37.5vw;
    height: 187.5vw;
  }
  .keyVisual__bgElem.elem--5 {
    top: 87.5vw;
    left: -9.375vw;
    width: 109.375vw;
    height: 109.375vw;
    background-image: url(../images/kv/background-elements/bg-elem-5-mobile.png);
  }
  .keyVisual__bgElem.elem--6 {
    top: auto;
    bottom: -21.25vw;
    left: -15.625vw;
    width: 43.75vw;
    height: 78.125vw;
  }
  .keyVisual__floatElem.elem--1 {
    top: 26.5625vw;
    left: 3.125vw;
    width: 9.375vw;
    height: 9.375vw;
  }
  .keyVisual__floatElem.elem--2 {
    top: 21.875vw;
    left: 25vw;
    width: 9.375vw;
    height: 14.375vw;
  }
  .keyVisual__floatElem.elem--3 {
    top: 6.25vw;
    right: 21.875vw;
    width: 9.375vw;
    height: 15.625vw;
  }
  .keyVisual__floatElem.elem--4 {
    top: 37.5vw;
    right: 7.8125vw;
    width: 9.375vw;
    height: 15.625vw;
  }
  .keyVisual__floatElem.elem--5 {
    top: 62.5vw;
    left: 3.125vw;
    width: 9.375vw;
    height: 9.375vw;
  }
  .keyVisual__floatElem.elem--6 {
    top: 84.375vw;
    left: 18.75vw;
    width: 15.625vw;
    height: 18.75vw;
  }
  .keyVisual__floatElem.elem--7 {
    top: 93.75vw;
    right: 18.75vw;
    width: 6.25vw;
    height: 12.1875vw;
  }
  .keyVisual__container {
    padding: 31.25vw 0 25vw;
  }
  .keyVisual__logo {
    margin: 0 auto 3.125vw;
    width: 21.875vw;
  }
  .keyVisual__heading {
    margin: 0 auto 3.125vw;
    width: 43.75vw;
  }
  .keyVisual__subTitle {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.24em;
    line-height: normal;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .keyVisual__subTitle {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .keyVisual__intr {
    margin: 0 auto 0;
    padding: 31.25vw 0 0;
    width: 100%;
    position: relative;
    z-index: 3;
    text-align: center;
  }
  .keyVisual__intrText {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.6;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .keyVisual__intrText {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .keyVisual__intrText.last__block {
    margin-top: 4.6875vw;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.12em;
    line-height: 1.8;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .keyVisual__intrText.last__block {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .keyVisual__intrText.sm-text {
    padding: 0;
    margin-top: -0.625vw;
    margin-bottom: 6.25vw;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.3em;
    line-height: normal;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .keyVisual__intrText.sm-text {
    font-size: 2.1875vw;
  }
}
@media screen and (max-width: 767px) {
  .keyVisual__intrText.sm-text .batch--1 {
    padding-left: -0.625vw;
    letter-spacing: 0.23em;
  }
  .keyVisual__intrText.sm-text .batch--2 {
    margin-left: 0.9375vw;
    letter-spacing: 0.5em;
    left: -0.625vw;
  }
  .keyVisual__intrText.en-text {
    line-height: 0.06em;
  }
  .keyVisual__intrPerson {
    position: absolute;
    top: 31.25vw;
  }
  .keyVisual__intrPerson.person--left {
    top: 29.6875vw;
    left: 6.25vw;
    width: 18.75vw;
  }
  .keyVisual__intrPerson.person--right {
    right: 6.25vw;
    width: 15.625vw;
  }
}
/*====================================================================
services Section PC
====================================================================*/
.serviceSec {
  margin: 0 auto 28.4375vw;
  width: 100%;
  position: relative;
}
.serviceSec__bgElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.serviceSec__bgElem.elem--1 {
  top: 32.6041666667vw;
  left: -2.0833333333vw;
  width: 11.4583333333vw;
  height: 115vw;
  background-image: url(../images/services/background-elements/bg-elem-1.svg);
  z-index: 5;
}
.serviceSec__bgElem.elem--2 {
  top: 67.7083333333vw;
  left: 2.5vw;
  width: 47.2916666667vw;
  height: 65.46875vw;
  background-image: url(../images/services/background-elements/bg-elem-2.svg);
  z-index: 3;
}
.serviceSec__bgElem.elem--3 {
  top: 18.2291666667vw;
  right: -4.1666666667vw;
  width: 18.28125vw;
  height: 76.6145833333vw;
  background-image: url(../images/services/background-elements/bg-elem-3.svg);
  z-index: 4;
}
.serviceSec__floatElem {
  position: absolute;
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
}
.serviceSec__floatElem.elem--1 {
  top: 2.0833333333vw;
  left: -0.5208333333vw;
  width: 39.5833333333vw;
  height: 29.1666666667vw;
  background-image: url(../images/services/float-img-1.png);
}
.serviceSec__floatElem.elem--2 {
  top: -5.9895833333vw;
  right: 0;
  width: 33.1770833333vw;
  height: 27.0833333333vw;
  background-image: url(../images/services/float-img-2.png);
  z-index: 3;
}
.serviceSec__floatElem.elem--3 {
  top: 55.7291666667vw;
  left: 3.125vw;
  width: 38.3333333333vw;
  height: 22.8645833333vw;
  background-image: url(../images/services/float-img-3.png);
}
.serviceSec__container {
  margin: 0 auto;
  text-align: center;
  position: relative;
}
.serviceSec__listItms {
  display: block;
  position: relative;
  z-index: 6;
}
.serviceSec__listItm {
  margin: 0 auto 3.125vw;
  display: block;
}
.serviceSec__listItm__ttl {
  font-size: 1.8166666667vw;
  font-weight: bold;
  letter-spacing: 0.18em;
  line-height: 1.7;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .serviceSec__listItm__ttl {
    font-size: 12px;
  }
}
.serviceSec__listItm__content {
  font-size: 1.3078125vw;
  font-weight: bold;
  letter-spacing: 0.18em;
  line-height: 1.4;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .serviceSec__listItm__content {
    font-size: 12px;
  }
}
.serviceSec__bigTxt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -33%);
  font-size: 19.2708333333vw;
  font-weight: bold;
  letter-spacing: 0;
  line-height: normal;
  color: rgba(196, 196, 196, 0.8);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .serviceSec__bigTxt {
    font-size: 12px;
  }
}

/*====================================================================
services Section PC Breakpoint
====================================================================*/
/*====================================================================
services Section SP
====================================================================*/
@media screen and (max-width: 767px) {
  .serviceSec {
    margin: 0 auto 31.25vw;
    width: 100%;
    position: relative;
  }
  .serviceSec__bgElem {
    width: 100%;
    height: 100%;
    position: absolute;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: none;
  }
  .serviceSec__bgElem.elem--1 {
    top: 32.6041666667vw;
    left: -2.0833333333vw;
    width: 11.4583333333vw;
    height: 115vw;
  }
  .serviceSec__bgElem.elem--2 {
    top: 67.7083333333vw;
    left: 2.5vw;
    width: 47.2916666667vw;
    height: 65.46875vw;
  }
  .serviceSec__bgElem.elem--3 {
    top: 18.2291666667vw;
    right: -4.1666666667vw;
    width: 18.28125vw;
    height: 76.6145833333vw;
  }
  .serviceSec__floatElem {
    opacity: 0.7;
  }
  .serviceSec__floatElem.elem--1 {
    top: -1.5625vw;
    left: -15.625vw;
    width: 46.875vw;
    height: 23.4375vw;
  }
  .serviceSec__floatElem.elem--2 {
    top: 25vw;
    right: -15.625vw;
    width: 40.625vw;
    height: 32.8125vw;
    z-index: -1;
  }
  .serviceSec__floatElem.elem--3 {
    top: 109.375vw;
    left: -15.625vw;
    width: 46.875vw;
    height: 31.25vw;
  }
  .serviceSec__listItm {
    margin: 0 auto 4.6875vw;
  }
  .serviceSec__listItm__ttl {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.18em;
    line-height: 1.7;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .serviceSec__listItm__ttl {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .serviceSec__listItm__content {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.18em;
    line-height: 1.4;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .serviceSec__listItm__content {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 767px) {
  .serviceSec__bigTxt {
    transform: translate(-50%, -50%);
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: normal;
    color: rgba(196, 196, 196, 0.7);
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .serviceSec__bigTxt {
    font-size: 25vw;
  }
}
/*====================================================================
access Section PC
====================================================================*/
.accessSec {
  margin: 0 auto 33.125vw;
  width: 100%;
  position: relative;
}
.accessSec__bgElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.accessSec__bgElem.elem--1 {
  top: -123.916667vw;
  right: -3.125vw;
  width: 105.4166666667vw;
  height: 245.010417vw;
  background-image: url(../images/access/background-elements/bg-elem-1.svg);
  background-size: cover;
  z-index: 3;
}
.accessSec__bgElem.elem--2 {
  top: 0.5208333333vw;
  right: -5.9895833333vw;
  width: 18.59375vw;
  height: 87.3958333333vw;
  background-image: url(../images/access/background-elements/bg-elem-2.svg);
  z-index: 4;
}
.accessSec__floatElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 3;
}
.accessSec__floatElem.elem--1 {
  top: 29.1666666667vw;
  left: 3.3854166667vw;
  width: 13.59375vw;
  height: 14.2708333333vw;
  background-image: url(../images/access/float-img-car.png);
}
.accessSec__floatElem.elem--2 {
  top: -9.8958333333vw;
  right: 0;
  width: 21.09375vw;
  height: 16.1458333333vw;
  background-image: url(../images/access/float-img-train.png);
}
.accessSec__headingImg {
  margin: auto;
  position: absolute;
  bottom: 34.5vw;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 56.6666666667vw;
}
.accessSec__container {
  margin: 0 auto;
  padding-top: 2.6041666667vw;
  text-align: center;
  position: relative;
  z-index: 3;
}
.accessSec__listInfos {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: nowrap;
  flex-direction: row;
}
.accessSec__infoItm {
  margin: 0 10.5208333333vw 3.125vw 0;
  width: 100%;
  max-width: 26.3020833333vw;
  display: block;
}
.accessSec__infoItm:last-child {
  margin-right: 0;
}
.accessSec__infoItm__ttl {
  margin-bottom: 0.2604166667vw;
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.34375vw;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1.7;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .accessSec__infoItm__ttl {
    font-size: 12px;
  }
}
.accessSec__infoItm__content {
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.0625vw;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1.8;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .accessSec__infoItm__content {
    font-size: 12px;
  }
}
.accessSec__infoItm__map {
  margin: 3.125vw auto 0;
  height: 21.71875vw;
}
.accessSec__infoItm__map iframe {
  width: 100%;
  height: 100%;
}

/*====================================================================
access Section PC Breakpoint
====================================================================*/
/*====================================================================
access Section SP
====================================================================*/
@media screen and (max-width: 767px) {
  .accessSec {
    margin: 0 auto 25vw;
    width: 100%;
    position: relative;
  }
  .accessSec__bgElem {
    width: 100%;
    height: 100%;
    position: absolute;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
  }
  .accessSec__bgElem.elem--1 {
    top: -43.25vw;
    right: auto;
    left: -9.375vw;
    width: 109.375vw;
    height: 365.5vw;
    background-size: cover;
    background-image: url(../images/access/background-elements/bg-elem-1-mobile.png);
    z-index: 3;
  }
  .accessSec__bgElem.elem--2 {
    top: 3.125vw;
    right: -3.125vw;
    width: 15.625vw;
    height: 93.75vw;
    display: none;
  }
  .accessSec__floatElem.elem--1 {
    top: 109.375vw;
    left: 1.5625vw;
    width: 15.625vw;
    height: 17.5vw;
  }
  .accessSec__floatElem.elem--2 {
    top: -12.5vw;
    right: 0;
    width: 21.875vw;
    height: 23.75vw;
  }
  .accessSec__headingImg {
    margin: auto;
    position: absolute;
    bottom: 31.25vw;
    left: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
  }
  .accessSec__bigTxt {
    position: absolute;
    top: auto;
    left: 50%;
    transform: translateX(-50%);
    bottom: -21.875vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: normal;
    color: #7D7D7D;
    opacity: 1;
    z-index: -1;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .accessSec__bigTxt {
    font-size: 25vw;
  }
}
@media screen and (max-width: 767px) {
  .accessSec__container {
    padding-top: 0;
  }
  .accessSec__listInfos {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .accessSec__infoItm {
    margin: 0 0 9.375vw 0;
    width: 100%;
    max-width: 100%;
    display: block;
  }
  .accessSec__infoItm__ttl {
    margin-bottom: 0.625vw;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.7;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .accessSec__infoItm__ttl {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .accessSec__infoItm__content {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.8;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .accessSec__infoItm__content {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 767px) {
  .accessSec__infoItm__map {
    margin: 3.125vw auto 0;
    width: 100%;
    max-width: 70%;
    height: 50vw;
  }
}
/*====================================================================
agent Section PC
====================================================================*/
.agentSec {
  margin: 0 auto 0;
  width: 100%;
  position: relative;
}
.agentSec__container {
  margin: 0 auto;
  width: 100%;
  max-width: 55.7291666667vw;
}
.agentSec__bgElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.agentSec__bgElem.elem--1 {
  top: 12.5vw;
  left: -1.9270833333vw;
  width: 11.9791666667vw;
  height: 64.5833333333vw;
  background-image: url(../images/agents/background-elements/bg-elem-1.svg);
  z-index: 5;
}
.agentSec__bgElem.elem--2 {
  top: 25.3125vw;
  right: -4.84375vw;
  width: 15.78125vw;
  height: 73.75vw;
  background-image: url(../images/agents/background-elements/bg-elem-2.svg);
  z-index: 5;
}
.agentSec__headingImg {
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 13.5416666667vw;
  font-size: 19.2708333333vw;
  font-weight: bold;
  letter-spacing: 0;
  line-height: normal;
  color: #c4c4c4;
  z-index: 1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .agentSec__headingImg {
    font-size: 12px;
  }
}
.agentSec__container {
  margin: 0 auto;
  padding-top: 2.6041666667vw;
  position: relative;
  z-index: 3;
}
.agentSec__listInfos {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: nowrap;
  flex-direction: row;
}
.agentSec__infoItm {
  margin: 0 7.03125vw 0 0;
  width: 100%;
  max-width: 23.4375vw;
  display: block;
}
.agentSec__infoItm:first-child {
  max-width: 23.6979166667vw;
  text-align: left;
}
.agentSec__infoItm:first-child .agentSec__infoContentsContainer {
  padding-left: 3.3854166667vw;
}
.agentSec__infoItm:last-child {
  margin-right: 0;
  text-align: right;
}
.agentSec__infoItm:last-child .agentSec__infoContentsContainer {
  padding-right: 2.8645833333vw;
}
.agentSec__infoContentsContainer {
  position: relative;
  z-index: 3;
}
.agentSec__infoThumb {
  margin: 0 auto 0.78125vw;
}
.agentSec__infoPos {
  margin-bottom: 0.5208333333vw;
  font-size: 1.4895833333vw;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 2;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .agentSec__infoPos {
    font-size: 12px;
  }
}
.agentSec__infoName {
  margin-bottom: 0.78125vw;
  font-size: 2.0979166667vw;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .agentSec__infoName {
    font-size: 12px;
  }
}
.agentSec__infoName.en-name {
  display: block;
  font-size: 1.5703125vw;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .agentSec__infoName.en-name {
    font-size: 12px;
  }
}
.agentSec__infoSkillLabel {
  font-size: 1.4911458333vw;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.5;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .agentSec__infoSkillLabel {
    font-size: 12px;
  }
}
.agentSec__infoSkills {
  font-size: 1.5703125vw;
  font-weight: bold;
  letter-spacing: 0.1;
  line-height: 1.5;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .agentSec__infoSkills {
    font-size: 12px;
  }
}
.agentSec__agentsImg {
  margin: 2.34375vw auto 0;
  width: 100%;
  max-width: 25.0520833333vw;
}

/*====================================================================
agent Section PC Breakpoint
====================================================================*/
/*====================================================================
agent Section SP
====================================================================*/
@media screen and (max-width: 767px) {
  .agentSec {
    margin: 0 auto 0;
  }
  .agentSec__container {
    max-width: calc(100% - 6.25vw);
  }
  .agentSec__bgElem.elem--1 {
    top: -15.625vw;
    left: -3.125vw;
    width: 18.75vw;
    height: 106.25vw;
    z-index: -1;
  }
  .agentSec__bgElem.elem--2 {
    top: 43.75vw;
    right: -9.375vw;
    width: 18.75vw;
    height: 106.25vw;
    z-index: -1;
  }
  .agentSec__headingImg {
    width: 100%;
    bottom: 10.9375vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: normal;
    color: #c4c4c4;
    z-index: 1;
    text-align: center;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .agentSec__headingImg {
    font-size: 25vw;
  }
}
@media screen and (max-width: 767px) {
  .agentSec__container {
    padding-top: 6.25vw;
  }
  .agentSec__listInfos {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: nowrap;
    flex-direction: row;
  }
  .agentSec__infoItm {
    margin: 0 4% 0 0;
    width: 100%;
    max-width: 45%;
    display: block;
  }
  .agentSec__infoItm:first-child {
    max-width: 45%;
  }
  .agentSec__infoItm:first-child .agentSec__infoContentsContainer {
    padding-left: 3.125vw;
  }
  .agentSec__infoItm:last-child {
    max-width: 44.5%;
  }
  .agentSec__infoItm:last-child .agentSec__infoContentsContainer {
    padding-right: 3.125vw;
  }
  .agentSec__infoThumb {
    margin: 0 auto 1.5625vw;
  }
  .agentSec__infoPos {
    margin-bottom: 1.5625vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 2;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .agentSec__infoPos {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 767px) {
  .agentSec__infoName {
    margin-bottom: 3.125vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.5;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .agentSec__infoName {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 767px) {
  .agentSec__infoName.en-name {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.5;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .agentSec__infoName.en-name {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 767px) {
  .agentSec__infoSkillLabel {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.5;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .agentSec__infoSkillLabel {
    font-size: 2.8125vw;
  }
}
@media screen and (max-width: 767px) {
  .agentSec__infoSkills {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1;
    line-height: 1.5;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .agentSec__infoSkills {
    font-size: 2.8125vw;
  }
}
@media screen and (max-width: 767px) {
  .agentSec__agentsImg {
    margin: 3.125vw auto 0;
    width: 100%;
    max-width: 31.25vw;
  }
}
/*====================================================================
partner Section PC
====================================================================*/
.partnerSec {
  margin: -6.25vw auto 28.125vw;
  width: 100%;
  position: relative;
}
.partnerSec__bgElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.partnerSec__bgElem.elem--1 {
  top: -31.25vw;
  left: -2.2395833333vw;
  width: 12.0833333333vw;
  height: 63.125vw;
  background-image: url(../images/partner/background-elements/bg-elem-1.svg);
  z-index: 4;
}
.partnerSec__bgElem.elem--2 {
  top: -31.25vw;
  left: -1.4583333333vw;
  width: 105vw;
  height: 77.34375vw;
  background-image: url(../images/partner/background-elements/bg-elem-2.svg);
  z-index: 3;
}
.partnerSec__floatElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 3;
}
.partnerSec__floatElem.elem--1 {
  top: -1.5625vw;
  left: 1.3020833333vw;
  width: 21.25vw;
  height: 11.71875vw;
  background-image: url(../images/partner/float-img-1.png);
  animation: pulse 2s linear infinite;
}
.partnerSec__floatElem.elem--2 {
  top: 5.7291666667vw;
  right: 0;
  width: 17.34375vw;
  height: 18.1770833333vw;
  background-image: url(../images/partner/float-img-2.png);
  animation: rotate360 20s linear infinite;
}
.partnerSec__headingImg {
  margin: auto;
  position: absolute;
  bottom: 8.59375vw;
  left: 21.875vw;
  width: 100%;
  max-width: 58.8541666667vw;
}
.partnerSec__container {
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 3;
}
.partnerSec__listItms {
  display: block;
}
.partnerSec__listItm {
  margin: 0 auto 5.46875vw;
  width: 100%;
  display: block;
}
.partnerSec__listItm:last-child {
  margin-bottom: 0;
}
.partnerSec__itmName {
  margin-bottom: 0.2604166667vw;
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.4973958333vw;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1.4;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .partnerSec__itmName {
    font-size: 12px;
  }
}
.partnerSec__itmPos {
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.3541666667vw;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1.8;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .partnerSec__itmPos {
    font-size: 12px;
  }
}
.partnerSec__itmPos span {
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 2.0833333333vw;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1.3;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .partnerSec__itmPos span {
    font-size: 12px;
  }
}
.partnerSec__itmURL {
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.3020833333vw;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.8;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .partnerSec__itmURL {
    font-size: 12px;
  }
}

/*====================================================================
partner Section PC Breakpoint
====================================================================*/
/*====================================================================
partner Section SP
====================================================================*/
@media screen and (max-width: 767px) {
  .partnerSec {
    margin: -3.125vw auto 21.875vw;
  }
  .partnerSec__bgElem.elem--1 {
    top: -12.5vw;
    left: -9.375vw;
    width: 15.625vw;
    height: 93.75vw;
  }
  .partnerSec__bgElem.elem--2 {
    top: -46.875vw;
    left: 0vw;
    width: 100%;
    height: 125vw;
    background-image: url(../images/partner/background-elements/bg-elem-2-mobile.png);
  }
  .partnerSec__floatElem.elem--1 {
    top: -6.25vw;
    left: 9.375vw;
    width: 18.75vw;
    height: 10.9375vw;
    background-size: 100%;
  }
  .partnerSec__floatElem.elem--2 {
    top: 40.625vw;
    right: 0;
    width: 18.75vw;
    height: 20.3125vw;
    z-index: -1;
  }
  .partnerSec__headingImg {
    margin: auto;
    position: absolute;
    bottom: 8.59375vw;
    left: 21.875vw;
    width: 100%;
    max-width: 58.8541666667vw;
  }
  .partnerSec__bigTxt {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: normal;
    color: #838383;
    z-index: -1;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .partnerSec__bigTxt {
    font-size: 25vw;
  }
}
@media screen and (max-width: 767px) {
  .partnerSec__listItm {
    margin: 0 auto 4.6875vw;
  }
  .partnerSec__listItm:last-child {
    margin-bottom: 0;
  }
  .partnerSec__itmName {
    margin-bottom: 1.5625vw;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.4;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .partnerSec__itmName {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .partnerSec__itmPos {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.6;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .partnerSec__itmPos {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .partnerSec__itmPos span {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.3;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .partnerSec__itmPos span {
    font-size: 4.0625vw;
  }
}
@media screen and (max-width: 767px) {
  .partnerSec__itmURL {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.8;
    color: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .partnerSec__itmURL {
    font-size: 3.125vw;
  }
}
/*====================================================================
contact Section PC
====================================================================*/
.contactSec {
  margin: 0 auto 21.875vw;
  width: 100%;
  position: relative;
}
.contactSec__floatElem {
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
}
.contactSec__floatElem.elem--1 {
  top: 25.1041666667vw;
  left: 9.0625vw;
  width: 12.1354166667vw;
  height: 19.9479166667vw;
  background-image: url(../images/contact/float-img-1.png);
  z-index: 4;
  animation: pulse 3s linear infinite;
}
.contactSec__floatElem.elem--2 {
  top: -1.6145833333vw;
  right: 0.78125vw;
  width: 19.7916666667vw;
  height: 20.8333333333vw;
  background-image: url(../images/contact/float-img-2.png);
  z-index: -1;
  animation: pulse 3s linear infinite;
}
.contactSec__intr {
  margin: 0 auto 4.1666666667vw;
  font-size: 1.5vw;
  font-weight: bold;
  letter-spacing: 0.22em;
  line-height: 1.8;
  color: #5b5b5b;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contactSec__intr {
    font-size: 12px;
  }
}
.contactSec__form {
  margin: 0 auto;
  width: 100%;
  position: relative;
  z-index: 10;
}
.contactSec__formField {
  margin: auto;
  width: 100%;
  max-width: 47.9166666667vw;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: nowrap;
  flex-direction: row;
}
.contactSec__formItm {
  margin-bottom: 1.5625vw;
  display: block;
  width: 100%;
  position: relative;
}
.contactSec__formItm.form--name {
  max-width: 19.2708333333vw;
  margin-right: 4.6875vw;
}
.contactSec__formItm.form--tel {
  max-width: 19.2708333333vw;
}
.contactSec__formItm.form--email {
  max-width: 33.3333333333vw;
}
.contactSec__formItm.form--info {
  margin-bottom: 3.125vw;
}
.contactSec__formItm.form--info .contactSec__formItmLabel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  flex-direction: row;
  width: 100%;
}
.contactSec__formItm.form--info .contactSec__formItmInput {
  resize: none;
  height: 15.625vw;
}
.contactSec__formItm.form--submit {
  margin: 0 auto;
  text-align: center;
}
.contactSec__formItm .error-text {
  margin-top: geet-vw-desktop(10px);
  position: absolute;
  bottom: -1.3020833333vw;
  left: 0.2604166667vw;
  font-size: 0.8333333333vw;
  font-weight: bold;
  letter-spacing: 0.14em;
  line-height: 1.6;
  color: #E83131;
  display: none;
}
@media screen and (max-width: 767px) {
  .contactSec__formItm .error-text {
    font-size: 12px;
  }
}
.contactSec__formItm.has-error .error-text {
  display: block;
}
.contactSec__formItmLabel {
  font-size: 1.25vw;
  font-weight: bold;
  letter-spacing: 0.14em;
  line-height: 1.6;
  color: #5b5b5b;
}
@media screen and (max-width: 767px) {
  .contactSec__formItmLabel {
    font-size: 12px;
  }
}
.contactSec__formItmInput {
  padding: 0.3125vw;
  width: 100%;
  font-size: 1.25vw;
  font-weight: bold;
  letter-spacing: 0.14em;
  line-height: 1.6;
  color: #5b5b5b;
  border-radius: 0.5208333333vw;
  border: 1px solid #5b5b5b;
  outline: 0;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .contactSec__formItmInput {
    font-size: 12px;
  }
}
.contactSec__requiredLabel {
  font-size: 1.25vw;
  font-weight: bold;
  letter-spacing: 0.14em;
  line-height: 1.6;
  color: #9b9666;
}
@media screen and (max-width: 767px) {
  .contactSec__requiredLabel {
    font-size: 12px;
  }
}
.contactSec__submitBtn {
  margin: 0 auto;
  padding: 0.3645833333vw;
  -webkit-appearance: none;
          appearance: none;
  width: 100%;
  max-width: 19.2708333333vw;
  background-color: #9b9666;
  border: 0.0520833333vw solid #9b9666;
  border-radius: 0.5208333333vw;
  font-family: "heisei-mincho-std-w3", serif;
  font-size: 1.6666666667vw;
  font-weight: 400;
  letter-spacing: 0.24em;
  line-height: 1.5;
  color: #fff;
  box-sizing: border-box;
  box-shadow: 0.3645833333vw 0.3645833333vw 0px 0px rgba(0, 0, 0, 0.15);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .contactSec__submitBtn {
    font-size: 12px;
  }
}
.contactSec__bigTxt {
  margin: auto;
  position: absolute;
  top: -2.0833333333vw;
  left: 0;
  right: 0;
  font-size: 14.5833333333vw;
  font-weight: bold;
  letter-spacing: 0;
  line-height: normal;
  color: #c4c4c4;
  z-index: -1;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .contactSec__bigTxt {
    font-size: 12px;
  }
}

/*====================================================================
contact Section PC Breakpoint
====================================================================*/
/*====================================================================
contact Section SP
====================================================================*/
@media screen and (max-width: 767px) {
  .contactSec {
    margin: 0 auto 0vw;
  }
  .contactSec__floatElem {
    z-index: -1;
  }
  .contactSec__floatElem.elem--1 {
    top: auto;
    bottom: -15.625vw;
    left: 0vw;
    width: 15.625vw;
    height: 28.125vw;
  }
  .contactSec__floatElem.elem--2 {
    top: 31.25vw;
    right: 3.125vw;
    width: 15.625vw;
    height: 18.75vw;
  }
  .contactSec__intr {
    margin: 0 auto 18.75vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.02em;
    line-height: 1.8;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contactSec__intr {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .contactSec__formField {
    margin: auto;
    width: 100%;
    max-width: 90%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: nowrap;
    flex-direction: column;
  }
  .contactSec__formItm {
    margin-bottom: 6.25vw;
    display: block;
    width: 100%;
  }
  .contactSec__formItm.form--name {
    max-width: 100%;
    margin-right: 0;
  }
  .contactSec__formItm.form--tel {
    max-width: 100%;
  }
  .contactSec__formItm.form--email {
    max-width: 100%;
  }
  .contactSec__formItm.form--info {
    margin-bottom: 6.25vw;
  }
  .contactSec__formItm.form--info .contactSec__formItmInput {
    height: 40.625vw;
  }
  .contactSec__formItm .error-text {
    margin-top: geet-vw-mobile(5px);
    position: absolute;
    bottom: -4.0625vw;
    left: 0vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.14em;
    line-height: 1.6;
    color: #E83131;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contactSec__formItm .error-text {
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 767px) {
  .contactSec__formItmLabel {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.14em;
    line-height: 1.6;
    color: #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contactSec__formItmLabel {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .contactSec__formItmInput {
    padding: 1.25vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.14em;
    line-height: 1.6;
    color: #5b5b5b;
    border-radius: 1.25vw;
    border: 0.3125vw solid #5b5b5b;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contactSec__formItmInput {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .contactSec__requiredLabel {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.14em;
    line-height: 1.6;
    color: #9b9666;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contactSec__requiredLabel {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .contactSec__submitBtn {
    padding: 1.25vw;
    width: 100%;
    max-width: 31.25vw;
    border: 0.3125vw solid #9b9666;
    border-radius: 1.25vw;
    font-family: "heisei-mincho-std-w3", serif;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.24em;
    line-height: 1.5;
    color: #fff;
    box-shadow: 0.625vw 0.625vw 0px 0px rgba(0, 0, 0, 0.15);
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contactSec__submitBtn {
    font-size: 3.4375vw;
  }
}
@media screen and (max-width: 767px) {
  .contactSec__bigTxt {
    top: 21.875vw;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: normal;
    color: #c4c4c4;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .contactSec__bigTxt {
    font-size: 25vw;
  }
}
/*# sourceMappingURL=style.css.map */