@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Hina+Mincho&family=Oswald:wght@200..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bad+Script&display=swap");
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDPGothic&display=swap");
@font-face {
  font-family: "handWrite";
  src: url("/font/Kei_Ji.ttf") format("truetype");
}

body {
  margin: 0;
  overflow-x: hidden;
  background-color: #eaeff0;
}

header {
  width: 100vw;
  height: 6vw;
  z-index: 15;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: -webkit-sticky;
  position: sticky;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  background: #003399;
}

header #headL {
  width: 23vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 10vw;
  overflow: hidden;
  position: relative;
}

header #headL a {
  margin: auto;
}

header #headL img {
  width: auto;
  height: 5.5vw;
  margin: auto;
}

header #headC {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 100%;
  width: auto;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
  text-align: center;
  line-height: 1.4;
  padding: 0;
}

header #headC a:link, header #headC a:visited {
  text-decoration: none;
  margin: auto;
  color: #f0f8ff;
  display: block;
}

header #headC li {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 2%;
  cursor: pointer;
}

header #headC p {
  margin: auto;
}

header #headC p:nth-of-type(1) {
  font-size: 1.7vw;
  font-family: "Bad Script", cursive;
}

header #headC p:nth-of-type(2) {
  font-size: 0.8vw;
  font-family: "handWrite";
}

header #headR {
  width: 11vw;
  height: 100%;
  margin: auto auto auto 2vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  position: relative;
  cursor: pointer;
}

header #headR a:link, header #headR a:visited {
  color: #1c2943;
  text-decoration: none;
}

header #headR #contact_button {
  width: 9vw;
  height: 70%;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 11;
}

header #headR #contact_button p {
  line-height: 1.4;
  margin: auto auto auto 1vw;
}

header #headR #contact_button p:nth-of-type(1) {
  font-size: 1.5vw;
  font-family: "Bad Script", cursive;
}

header #headR #contact_button p:nth-of-type(2) {
  font-size: 0.9vw;
  font-family: "handWrite";
}

header #headR #contactBack {
  position: absolute;
  width: 40vw;
  height: 40vw;
  top: -20vw;
  border-radius: 50%;
  background: #f0f8ff;
  z-index: 10;
}

footer {
  background: #1c2943;
  width: 80%;
  height: 35vw;
  padding-top: 3vw;
  padding: 0 10%;
  text-align: center;
}

footer #footerLogo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 10vw;
  position: relative;
}

footer #footerLogo a {
  width: 10%;
  margin: auto;
}

footer #footerLogo #companyLogo {
  width: 100%;
  height: auto;
}

footer #footerLogo #snsAccess {
  width: 50%;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

footer #footerLogo #snsAccess #logoInstagram {
  width: 5%;
  height: auto;
  margin: auto;
  min-width: 29px;
}

footer p, footer a {
  color: #eaeff0;
  margin: auto;
  font-family: "BIZ UDPGothic", sans-serif;
}

footer #footer_data {
  margin: auto auto 1.5vw 0;
  line-height: 1.5;
  font-size: 1.5vw;
}

footer #snsicons {
  width: 50%;
  height: 3vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 1vw auto;
}

footer #snsicons img {
  cursor: pointer;
}

footer #snsicons #instagram {
  width: 2vw;
  margin: auto;
}

footer #footer_Link, footer #privacyLink {
  font-size: 1.4vw;
}

footer #privacyLink {
  line-height: 4;
}

footer #copyright_text {
  font-size: 1.3vw;
  line-height: 3;
  text-align: center;
}

.pageNameText {
  position: absolute;
  font-family: "Bad Script", cursive;
  font-size: 10vw;
  font-weight: 800;
  opacity: 0.05;
  z-index: 1;
  -webkit-transform: rotate(-15deg);
          transform: rotate(-15deg);
  top: 0;
}

#firstCover {
  display: block;
}

.main_div {
  z-index: 2;
  width: 70%;
  margin: auto;
}

.main_div .intro_boxes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: "handWrite";
  margin: 1.5vw 0;
}

.main_div .intro_boxes .intro_title {
  line-height: 0.7;
  font-size: 2.4vw;
  font-weight: 600;
  margin: 3vw auto auto 0;
  width: auto;
}

.main_div .intro_boxes .intro_title p {
  width: auto;
  margin: auto;
  border-bottom: 0.7vw solid #ca270acf;
}

.main_div .intro_boxes .intro_detail {
  line-height: 1.3;
  margin: 2vw 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.main_div .intro_boxes .intro_detail p {
  margin: auto 0;
}

.main_div .intro_boxes .intro_detail > p {
  font-size: 1.8vw;
  margin: auto auto auto 1.5em;
}

.main_div .intro_boxes .intro_detail .intro_pointBoxes {
  width: 31%;
  height: 29vw;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 0.3vw solid #000000;
  position: relative;
}

.main_div .intro_boxes .intro_detail .intro_pointBoxes .intro_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 50%;
}

.main_div .intro_boxes .intro_detail .intro_pointBoxes .intro_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.main_div .intro_boxes .intro_detail .intro_pointBoxes .intro_pointTitle {
  margin: 1vw;
  font-weight: 600;
  text-align: center;
  font-size: 1.7vw;
}

.main_div .intro_boxes .intro_detail .intro_pointBoxes .intro_pointdetail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: auto;
  margin: 0 auto;
  font-size: 1.6vw;
}

.main_div .intro_boxes .intro_detail .intro_pointBoxes .intro_pointdetail p {
  margin: auto auto auto 0;
}

.main_div .intro_boxes .intro_imgBoxes {
  width: 90%;
  margin: 3vw auto;
}

#index-main #firstCover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  height: 100vh;
  width: 100vw;
  z-index: 13;
  background: #1c2943;
}

#index-main #firstCover.end {
  -webkit-animation: opacity_to_0 1s forwards;
          animation: opacity_to_0 1s forwards;
}

@-webkit-keyframes opacity_to_0 {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes opacity_to_0 {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

#index-main #imgSlideMotion {
  background: #000000;
  overflow: hidden;
  position: relative;
  width: 100%;
}

#index-main #imgSlideMotion #topComment {
  position: absolute;
  width: 50vw;
  height: auto;
  z-index: 14;
}

#index-main #imgSlideMotion #topComment .cls-1, #index-main #imgSlideMotion #topComment .cls-2, #index-main #imgSlideMotion #topComment .cls-3, #index-main #imgSlideMotion #topComment .cls-4, #index-main #imgSlideMotion #topComment .cls-5, #index-main #imgSlideMotion #topComment .cls-6, #index-main #imgSlideMotion #topComment .cls-7, #index-main #imgSlideMotion #topComment .cls-8, #index-main #imgSlideMotion #topComment .cls-9, #index-main #imgSlideMotion #topComment .cls-10, #index-main #imgSlideMotion #topComment .cls-11 {
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
}

#index-main #imgSlideMotion #topComment .cls-1, #index-main #imgSlideMotion #topComment .cls-5, #index-main #imgSlideMotion #topComment .cls-7, #index-main #imgSlideMotion #topComment .cls-9 {
  stroke-linejoin: round;
}

#index-main #imgSlideMotion #topComment .cls-1, #index-main #imgSlideMotion #topComment .cls-8 {
  stroke-width: .75px;
}

#index-main #imgSlideMotion #topComment .cls-2, #index-main #imgSlideMotion #topComment .cls-4, #index-main #imgSlideMotion #topComment .cls-8, #index-main #imgSlideMotion #topComment .cls-10, #index-main #imgSlideMotion #topComment .cls-11 {
  stroke-linejoin: bevel;
}

#index-main #imgSlideMotion #topComment .cls-2, #index-main #imgSlideMotion #topComment .cls-6, #index-main #imgSlideMotion #topComment .cls-9 {
  stroke-width: .5px;
}

#index-main #imgSlideMotion #topComment .cls-12 {
  fill: none;
}

#index-main #imgSlideMotion #topComment .cls-12, #index-main #imgSlideMotion #topComment .cls-13 {
  stroke-width: 0px;
}

#index-main #imgSlideMotion #topComment .cls-3, #index-main #imgSlideMotion #topComment .cls-4, #index-main #imgSlideMotion #topComment .cls-7 {
  stroke-width: .6px;
}

#index-main #imgSlideMotion #topComment .cls-3, #index-main #imgSlideMotion #topComment .cls-6 {
  stroke-miterlimit: 10;
}

#index-main #imgSlideMotion #topComment .cls-13 {
  fill: none;
}

#index-main #imgSlideMotion #topComment .cls-11 {
  stroke-width: .7px;
}

#index-main #imgSlideMotion #motionBlock {
  width: 500vw;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#index-main #imgSlideMotion #motionBlock .scroll_img {
  width: 100vw;
  height: 100%;
  -webkit-animation: scroll_img_move 20s infinite;
          animation: scroll_img_move 20s infinite;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
  margin: 0;
}

@-webkit-keyframes scroll_img_move {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  17% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  22% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  37% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  42% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
  57% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
  62% {
    -webkit-transform: translateX(-300%);
            transform: translateX(-300%);
  }
  77% {
    -webkit-transform: translateX(-300%);
            transform: translateX(-300%);
  }
  82% {
    -webkit-transform: translateX(-400%);
            transform: translateX(-400%);
  }
  97% {
    -webkit-transform: translateX(-400%);
            transform: translateX(-400%);
  }
  100% {
    -webkit-transform: translateX(-400%);
            transform: translateX(-400%);
  }
}

@keyframes scroll_img_move {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  17% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  22% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  37% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  42% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
  57% {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
  62% {
    -webkit-transform: translateX(-300%);
            transform: translateX(-300%);
  }
  77% {
    -webkit-transform: translateX(-300%);
            transform: translateX(-300%);
  }
  82% {
    -webkit-transform: translateX(-400%);
            transform: translateX(-400%);
  }
  97% {
    -webkit-transform: translateX(-400%);
            transform: translateX(-400%);
  }
  100% {
    -webkit-transform: translateX(-400%);
            transform: translateX(-400%);
  }
}

#index-main .introductionTexts {
  height: 100%;
  width: 40%;
  word-break: break-all;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

#index-main .introductionTexts p {
  font-size: 2.6vw;
  font-family: "handWrite";
  margin: auto;
}

#index-main .textsMargin {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 70%;
  width: 100%;
  margin: 2vw auto auto auto;
}

#index-main .textsMargin div {
  margin: auto;
  text-align: left;
}

#index-main .textsMargin div .introduction_title {
  font-size: 2.8vw;
  line-height: 1.1;
  margin: 0.25em 0;
}

#index-main .textsMargin div .detail_texts {
  font-size: 1.8vw;
  line-height: 1.2;
  margin: auto;
}

#index-main .more_btn {
  height: 18%;
  width: 90%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  background: #e4b535;
  -webkit-box-shadow: 0.5vw 0.5vw #5d4a16;
          box-shadow: 0.5vw 0.5vw #5d4a16;
  z-index: 2;
}

#index-main .more_btn .more_text {
  width: 60%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  line-height: 1.2;
}

#index-main .more_btn .more_text p:nth-child(1) {
  margin: auto auto 0 auto;
  font-size: 2.8vw;
  font-family: "Bad Script", cursive;
}

#index-main .more_btn .more_text p:nth-child(2) {
  font-size: 1.5vw;
  margin: 0 auto auto auto;
  font-family: "handWrite";
}

#index-main .more_btn img {
  -webkit-transition: opacity 0.1s ease-in-out;
  transition: opacity 0.1s ease-in-out;
  opacity: 0;
  width: 25%;
  height: auto;
}

#index-main .more_btn:hover img {
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  opacity: 1;
}

#index-main .index-main-sub {
  width: 92vw;
  margin: 5vw auto;
}

#index-main #aboutUsContent {
  height: 45vw;
  margin: 5vw auto;
}

#index-main #aboutUsContent #titleABOUTUS {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 15%;
}

#index-main #aboutUsContent #titleABOUTUS #titleABOUTUS_EN {
  line-height: 1;
  font-weight: 700;
  font-size: 5.5vw;
  margin: auto 0 0 2%;
  font-family: "Bad Script", cursive;
}

#index-main #aboutUsContent #titleABOUTUS #titleABOUTUS_JP {
  line-height: 1.2;
  font-weight: 500;
  font-size: 4vw;
  margin: auto auto 0 1%;
  font-family: "handWrite";
}

#index-main #aboutUsContent #aboutUsText_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 98%;
  height: 85%;
  margin-left: 2%;
}

#index-main #aboutUsContent #aboutUsText_img #all_Photo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 60%;
  height: auto;
  margin: auto;
  -webkit-box-shadow: 0.5vw 0.5vw;
          box-shadow: 0.5vw 0.5vw;
}

#index-main #aboutUsContent #aboutUsText_img .fadeInPhoto {
  opacity: 0;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition: opacity 0.5s ease-out, -webkit-transform 0.5s ease-out;
  transition: opacity 0.5s ease-out, -webkit-transform 0.5s ease-out;
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
  transition: opacity 0.5s ease-out, transform 0.5s ease-out, -webkit-transform 0.5s ease-out;
}

#index-main #aboutUsContent #aboutUsText_img .fadeInPhoto.fade-in {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-animation: fadeInPhoto 1s;
          animation: fadeInPhoto 1s;
}

@-webkit-keyframes fadeInPhoto {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeInPhoto {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#index-main #aboutUsContent #aboutUsText_img #aboutUs_introduction {
  margin: auto auto auto 5%;
  text-align: left;
}

#index-main #aboutUsContent #more_aboutUs {
  margin: auto 0 auto auto;
}

#index-main #serviceContent {
  height: 45vw;
  margin: 5vw auto;
}

#index-main #serviceContent #titleService {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 7vw;
}

#index-main #serviceContent #titleService #titleService_EN {
  line-height: 1;
  font-weight: 700;
  font-size: 5.5vw;
  margin: auto 2% 0 auto;
  font-family: "Bad Script", cursive;
}

#index-main #serviceContent #titleService #titleService_JP {
  line-height: 1.2;
  font-weight: 500;
  font-size: 4vw;
  margin: auto 1% 0 0;
  font-family: "handWrite";
}

#index-main #serviceContent #serviceText_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 98%;
  height: 85%;
  margin-left: 2%;
}

#index-main #serviceContent #serviceText_img #Service_Photo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 60%;
  height: auto;
  margin: auto;
  -webkit-box-shadow: 0.5vw 0.5vw;
          box-shadow: 0.5vw 0.5vw;
}

#index-main #serviceContent #serviceText_img .fadeInPhoto {
  opacity: 0;
  -webkit-box-shadow: 0.5vw 0.5vw;
          box-shadow: 0.5vw 0.5vw;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition: opacity 0.5s ease-out, -webkit-transform 0.5s ease-out;
  transition: opacity 0.5s ease-out, -webkit-transform 0.5s ease-out;
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
  transition: opacity 0.5s ease-out, transform 0.5s ease-out, -webkit-transform 0.5s ease-out;
}

#index-main #serviceContent #serviceText_img .fadeInPhoto.fade-in {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-animation: fadeInPhoto 1s;
          animation: fadeInPhoto 1s;
}

@keyframes fadeInPhoto {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#index-main #serviceContent #serviceText_img #Service_introduction {
  margin: auto 1% auto auto;
  text-align: left;
}

#index-main #serviceContent #more_aboutUs {
  margin: auto auto auto 0;
}

#index-main #contentsBoxes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 30vw;
  cursor: pointer;
}

#index-main #contentsBoxes .contentTabs {
  width: 80%;
  height: 10vw;
  border: 0.5vw solid #e4b535;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden;
  line-height: 1.5;
  text-align: center;
  color: #000000;
  z-index: 0;
}

#index-main #contentsBoxes .contentTabs .contentTexts {
  width: 40%;
  height: auto;
  margin: auto 0;
  z-index: 3;
  line-height: 1.2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

#index-main #contentsBoxes .contentTabs .contentTexts .contentTexts_EN {
  font-weight: 700;
  font-size: 4.5vw;
  font-family: "Bad Script", cursive;
  margin: 0 auto;
}

#index-main #contentsBoxes .contentTabs .contentTexts .contentTexts_JP {
  font-size: 2.5vw;
  font-family: "handWrite";
  margin: 0 auto;
}

#index-main #contentsBoxes .contentTabs .contentImg {
  margin: auto 3% auto auto;
  width: 8%;
  background: #e4b535;
  border-radius: 50%;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

#index-main #contentsBoxes .contentTabs .contentImg img {
  width: 70%;
  height: auto;
  margin: auto;
}

#index-main #contentsBoxes #voiceTab::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/staffVoiceButton.jpg") center 26%/100% no-repeat;
  -webkit-transition: background-size 0.3s ease-out;
  transition: background-size 0.3s ease-out;
  opacity: 0.5;
  z-index: -1;
}

#index-main #contentsBoxes #companyTab::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/company_building.jpg") center 83%/100% no-repeat;
  -webkit-transition: background-size 0.3s ease-out;
  transition: background-size 0.3s ease-out;
  opacity: 0.5;
  z-index: -1;
}

#index-main #contentsBoxes #voiceTab:hover::before {
  background-size: 150%;
}

#index-main #contentsBoxes #companyTab:hover::before {
  background-size: 150%;
}

#index-main #contentsBoxes .contentTabs:hover .contentImg {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
}

#index-main #contentsNews {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 80vw;
  margin: 5vw auto;
}

#index-main #contentsNews .insta-boxes {
  width: 31%;
  height: 50vw;
  border: 0.1vw solid #000;
  border-radius: 5vw;
  -webkit-box-shadow: 0.4vw 0.4vw;
          box-shadow: 0.4vw 0.4vw;
  overflow: hidden;
  margin: auto;
}

#index-main #contentsNews .insta-boxes .mediaBoxes {
  height: 25vw;
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#index-main #contentsNews .insta-boxes .mediaBoxes .insta_media {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#index-main #contentsNews .insta-boxes .insta-mainTextBox {
  width: 100%;
  height: 25vw;
  overflow: scroll;
  overflow-x: hidden;
  background: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

#index-main #contentsNews .insta-boxes .insta-mainTextBox .insta-mainTexts {
  padding: 0.5em;
  font-size: 1vw;
  margin-bottom: 2.5em;
}

#index-main #contentsContacts {
  width: 100%;
  height: 15vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#index-main #contentsContacts .contactsTabs {
  width: 50%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

#index-main #contentsContacts .contactsTabs .contactsTexts {
  width: 70%;
  height: 100%;
  margin-left: 3%;
}

#index-main #contentsContacts .contactsTabs .contactsTexts .contactsMain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 95%;
  height: 50%;
}

#index-main #contentsContacts .contactsTabs .contactsTexts .contactsMain .contactsTexts_EN {
  text-align: center;
  width: 50%;
  font-size: 4vw;
  line-height: 1;
  margin: auto auto 0 auto;
  font-family: "Bad Script", cursive;
  font-weight: 600;
}

#index-main #contentsContacts .contactsTabs .contactsTexts .contactsMain .contactsTexts_JP {
  width: 50%;
  font-size: 2.5vw;
  margin: auto auto 0.1em auto;
  line-height: 1;
  font-family: "handWrite";
}

#index-main #contentsContacts .contactsTabs .contactsTexts .contactsDetail {
  height: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#index-main #contentsContacts .contactsTabs .contactsTexts .contactsDetail .contentTextsDetails_JP {
  text-align: center;
  margin: auto;
  font-size: 2vw;
  font-family: "handWrite";
}

#index-main #contentsContacts .contactsTabs .contactsImg {
  margin: auto;
  width: 12%;
  background: #e4b535;
  border-radius: 50%;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

#index-main #contentsContacts .contactsTabs .contactsImg img {
  width: 70%;
  height: auto;
  margin: auto;
}

#index-main #contentsContacts #recruitTab::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/recruitButton.jpg") center 80%/100% no-repeat;
  opacity: 0.3;
  z-index: -1;
}

#index-main #contentsContacts #contactTab::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/company_building.jpg") center 100%/100% no-repeat;
  opacity: 0.3;
  z-index: -1;
}

#index-main #contentsContacts .contactsTabs:hover .contactsImg {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
}

#aboutus-main #companyTable {
  width: 70%;
  margin: 3vw auto;
  font-family: "BIZ UDPGothic", sans-serif;
  scroll-margin-top: 8vw;
}

#aboutus-main #companyTable #tableTitle {
  margin: 2vw auto;
  font-size: 1.5vw;
}

#aboutus-main #companyTable table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

#aboutus-main #companyTable table tr td {
  border: 0.1vw solid #000;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#aboutus-main #companyTable table tr td p {
  font-size: 1vw;
}

#aboutus-main #companyTable table tr td:nth-of-type(1) {
  text-align: center;
}

#aboutus-main #companyTable table tr td:nth-of-type(2) p {
  margin-left: 1em;
}

#aboutus-main #companyTable #companyMap #mapTitle {
  margin: 1.5vw auto;
}

#aboutus-main #companyTable #companyMap #mapTitle p:nth-of-type(1) {
  margin: auto auto 0.5em auto;
  font-size: 1.5vw;
}

#aboutus-main #companyTable #companyMap #mapTitle p:nth-of-type(2) {
  margin: 0.3em auto;
  font-size: 1.2vw;
}

#aboutus-main #companyTable #companyMap #mapFrame {
  border: none;
  width: 70%;
  height: auto;
  aspect-ratio: 1/0.6;
}

#voice-main {
  width: 100%;
}

#voice-main #voice-headImg {
  width: 100%;
  height: 33vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#voice-main #voice-headImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(60%, black), color-stop(90%, rgba(0, 0, 0, 0)));
  -webkit-mask-image: linear-gradient(to bottom, black 60%, rgba(0, 0, 0, 0) 90%);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-image: -webkit-gradient(linear, left top, left bottom, color-stop(60%, black), color-stop(90%, rgba(0, 0, 0, 0)));
  mask-image: linear-gradient(to bottom, black 60%, rgba(0, 0, 0, 0) 90%);
  mask-repeat: no-repeat;
  mask-size: 100% 100%;
}

#voice-main #voice-texts .voice_box {
  width: 70%;
  margin: 0.5vw auto 4.5vw auto;
  font-family: "handWrite";
}

#voice-main #voice-texts .voice_box .profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#voice-main #voice-texts .voice_box .profile p {
  margin: 0 1vw 0.1em 0;
  font-size: 1.8vw;
}

#voice-main #voice-texts .voice_box .voice_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
  width: auto;
}

#voice-main #voice-texts .voice_box .voice_text .main_voice {
  font-size: 2.4vw;
  line-height: 1;
  margin: 0.2em auto 0.5em 0;
  border-bottom: 0.7vw solid #ca270acf;
}

#voice-main #voice-texts .voice_box .voice_text .sub_voice {
  font-size: 1.8vw;
  line-height: 1.6;
  margin: 0;
}

#contact-main {
  margin: 2vw auto;
  font-family: "BIZ UDPGothic", sans-serif;
}

#contact-main #contact-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 1vw auto;
}

#contact-main #contact-title p {
  margin: auto 0 0 0;
}

#contact-main #contact-title p:nth-child(1) {
  line-height: 1;
  font-size: 2.5vw;
}

#contact-main #contact-title p:nth-child(2) {
  line-height: 1.2;
  font-size: 1.7vw;
  padding-left: 0.5em;
}

#contact-main #contact-mail #mail-form .mail-detail {
  margin-bottom: 1vw;
}

#contact-main #contact-mail #mail-form .mail-detail label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2.6vw;
  position: relative;
}

#contact-main #contact-mail #mail-form .mail-detail label .mail_label {
  font-size: 1.3vw;
  margin: auto 0 auto 0;
}

#contact-main #contact-mail #mail-form .mail-detail label .mail_no_required, #contact-main #contact-mail #mail-form .mail-detail label .mail_required {
  margin: auto auto auto 0.5vw;
  border-radius: 0.5vw;
  line-height: 1;
  padding: 0.3em;
  color: #eaeff0;
}

#contact-main #contact-mail #mail-form .mail-detail label .mail_no_required {
  font-size: 0.9vw;
  background: #858585;
}

#contact-main #contact-mail #mail-form .mail-detail label .mail_required {
  font-size: 0.9vw;
  background: #d52505;
}

#contact-main #contact-mail #mail-form .mail-detail input, #contact-main #contact-mail #mail-form .mail-detail #content {
  font-size: 1.2vw;
  border: 0.1vw solid #000000;
  border-radius: 0;
  padding: 0.3%;
  width: 99.7%;
}

#contact-main #contact-mail #mail-form .mail-detail input {
  height: 2em;
}

#contact-main #contact-mail #mail-form .mail-detail input:placeholder-shown {
  background-color: #ffbbaf;
}

#contact-main #contact-mail #mail-form .mail-detail #content:placeholder-shown {
  background-color: #ffbbaf;
}

#contact-main #contact-mail #mail-form .mail-detail #content {
  line-height: 1.6;
  height: 10em;
  resize: none;
}

#contact-main #contact-mail #mail-form #privacy {
  text-align: center;
}

#contact-main #contact-mail #mail-form #privacy #privacy_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.4vw;
}

#contact-main #contact-mail #mail-form #privacy #privacy_text a {
  margin: 0.5vw 0 0.5vw auto;
}

#contact-main #contact-mail #mail-form #privacy #privacy_text p {
  margin: 0.5vw auto 0.5vw 0;
}

#contact-main #contact-mail #mail-form #privacy #privacy_check {
  margin-top: 1vw;
  height: 3vw;
  font-size: 1.4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#contact-main #contact-mail #mail-form #privacy #privacy_check #privacy_checkbox {
  width: 2vw;
  height: 2vw;
  margin: auto 0.5vw auto auto;
}

#contact-main #contact-mail #mail-form #privacy #privacy_check label {
  margin: auto auto auto 0.5vw;
}

#contact-main #contact-mail #mail-form #mail_submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  pointer-events: none;
  cursor: pointer;
}

#contact-main #contact-mail #mail-form #mail_submit #mail_submit_button {
  opacity: 0.5;
  width: 30vw;
  height: 5vw;
  margin: 2vw auto;
  text-align: center;
  background: #e4b535;
  border: 0.2vw solid #000000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.3vw;
  font-weight: 600;
}

#contact-main #contact-mail #mail-form #mail_submit #mail_submit_button p {
  margin: auto;
}

#privacy-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-family: "BIZ UDPGothic", sans-serif;
}

#privacy-main #privacy-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 3vw auto 1vw 0;
  width: auto;
  border-bottom: 0.3vw solid #ca270acf;
}

#privacy-main #privacy-title p:nth-child(1) {
  line-height: 1;
  font-size: 2.5vw;
  margin: auto 0 0 0;
}

#privacy-main #privacy-title p:nth-child(2) {
  line-height: 1.2;
  font-size: 1.7vw;
  margin: auto 0 0 0.5em;
}

#privacy-main #privacyTopText {
  font-size: 1.5vw;
}

#privacy-main .privacyDetail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: auto;
}

#privacy-main .privacyDetail .privacyDetail-Top {
  width: auto;
  font-size: 1.6vw;
  line-height: 1;
  margin: 2vw auto 1vw 0;
  border-bottom: 0.3vw solid #ca270acf;
}

#privacy-main .privacyDetail .privacyDetail-Detail > p:nth-child(1) {
  margin: 0 0 auto 0;
}

#privacy-main .privacyDetail .privacyDetail-Detail > p:nth-child(2) {
  margin: 0 auto 0 1em;
}

#privacy-main .privacyDetail .privacyDetail-Detail-nest > p:nth-child(1) {
  margin: 0 0 auto 2em;
}

#privacy-main .privacyDetail .privacyDetail-Detail-nest > p:nth-child(2) {
  margin: 0 auto 0 1em;
}

#privacy-main .privacyDetail .privacyDetail-Detail-nnest > p:nth-child(1) {
  margin: 0 0 auto 4em;
}

#privacy-main .privacyDetail .privacyDetail-Detail-nnest > p:nth-child(2) {
  margin: 0 auto 0 1em;
}

#privacy-main .privacyDetail .privacyDetail-Detail, #privacy-main .privacyDetail .privacyDetail-Detail-nest, #privacy-main .privacyDetail .privacyDetail-Detail-nnest {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  margin: 1vw 0;
  font-size: 1.5vw;
  line-height: 1.3;
}

#mailSendPage {
  font-family: "BIZ UDPGothic", sans-serif;
  text-align: center;
  font-size: 2vw;
}

#mailSendPage #mailSendPage-Logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden;
  width: 50%;
  height: auto;
  margin: auto;
}

#mailSendPage #mailSendPage-Logo > img {
  width: 50%;
  height: auto;
  z-index: 10;
  margin: auto;
}

#mailSendPage #mailSendPage-Logo #mailSendAfterLogo {
  position: absolute;
  z-index: 14;
  margin: auto;
}

#mailSendPage #mailSendPage-Logo #mailSendAfterLogo svg, #mailSendPage #mailSendPage-Logo #mailSendAfterLogo #logo_arrow_ {
  position: absolute;
  right: -26vw;
  bottom: -13vw;
  width: 8vw;
}

#mailSendPage #mailSendPage-Logo #mailSendAfterLogo #logo_arrow_ {
  opacity: 0;
}

#mailSendPage #mailSendPage-Logo #mailSendAfterLogo #logo_arrow_.display {
  -webkit-animation: arrow_display 0.5s forwards;
          animation: arrow_display 0.5s forwards;
}

@-webkit-keyframes arrow_display {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes arrow_display {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*# sourceMappingURL=main.css.map */