@charset "UTF-8";
/* placeholder color */
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Noto+Sans+JP:wght@400;500;700&display=swap");
/**********************************************************************************************

　全体

**********************************************************************************************/
#wrap {
  font-size: 1.3rem;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  overflow: hidden; }
  @media (min-width: 751px) {
    #wrap {
      min-width: 1024px; } }
  @media (max-width: 750px) {
    #wrap {
      font-size: 3.2vw; } }

img[src$=".svg"] {
  width: 100%; }

/* common */
img {
  max-width: 100%;
  height: auto; }

.inner {
  min-width: 824px;
  max-width: calc(100% - 200px);
  margin: auto;
  position: relative; }
  @media (min-width: 751px) {
    .inner {
      max-width: 1000px;
      width: calc(100% - 200px); } }
  @media (max-width: 750px) {
    .inner {
      min-width: unset;
      max-width: 90vw; } }

main {
  display: block;
  position: relative;
  margin: 170px 0 0; }
  @media (max-width: 750px) {
    main {
      margin: 21.3vw 0 0; } }

@media (min-width: 751px) {
  .fadelink {
    transition: .4s opacity; }
    .fadelink:hover {
      opacity: 0.6; } }

.lang-en {
  font-family: 'Lato', sans-serif;
  letter-spacing: .1em; }
  .lang-en .detail_tit {
    letter-spacing: .1em; }

.webfont {
  font-family: 'Lato', sans-serif; }

.bold {
  font-weight: 700; }

.pagetop {
  position: fixed;
  display: none;
  z-index: 1000; }
  @media (min-width: 751px) {
    .pagetop {
      width: 80px;
      right: 30px;
      bottom: 30px; } }
  @media (max-width: 750px) {
    .pagetop {
      width: 17.3vw;
      right: 5vw;
      bottom: 30px; } }
  .pagetop a {
    display: block; }
  .pagetop.is-abs {
    position: absolute;
    bottom: calc(100% - 90px); }
    @media (max-width: 750px) {
      .pagetop.is-abs {
        bottom: calc(100% - 21.3vw); } }

/* フェードイン */
.is-fadeIn {
  opacity: 0;
  transform: translate3d(0, 30px, 0);
  transition: opacity 1.0s, transform 1.0s; }

.is-fadeIn.is-scrollIn {
  opacity: 1;
  transform: translate(0, 0); }

@media (min-width: 751px) {
  .u-sp {
    display: none !important; }

  a[href^="tel:"] {
    pointer-events: none; } }
@media (max-width: 750px) {
  .u-pc {
    display: none !important; } }
/**********************************************************************************************

　header

**********************************************************************************************/
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  background: #fff;
  width: 100%;
  padding: 30px 100px 0;
  transition: .4s; }
  @media (min-width: 751px) {
    header {
      min-width: 1024px; }
      header.is_scroll {
        padding: 10px 100px 10px; } }
  @media (max-width: 750px) {
    header {
      padding: 2.6vw 5vw 1.3vw; } }

.head_inner {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 750px) {
    .head_inner {
      align-items: flex-start; } }

.head_content {
  display: flex;
  align-items: center;
  padding: 10px 0; }
  @media (max-width: 750px) {
    .head_content {
      padding: 2.6vw 0 0; } }

.head_logo {
  width: 139px;
  transition: .6s; }
  @media (max-width: 750px) {
    .head_logo {
      width: 34vw; } }
  @media (min-width: 751px) {
    .head_logo.is_scroll {
      width: 89px;
      padding: 0 0 5px; } }

@media (min-width: 751px) {
  .headNav {
    display: flex !important;
    align-items: center;
    height: auto !important; } }
@media (max-width: 750px) {
  .headNav {
    display: none;
    position: absolute;
    top: 100%;
    background: #00a7e3;
    color: #fff;
    z-index: 9999;
    width: 100%;
    overflow: auto;
    left: 0;
    height: 100%; } }

.headNav_list {
  display: flex;
  margin: 0 20px 0 0;
  align-items: center;
  text-align: center;
  line-height: 1.4; }
  @media (max-width: 750px) {
    .headNav_list {
      display: block;
      margin: 0 0 9vw;
      font-size: 3.73vw; } }
  @media (max-width: 750px) {
    .headNav_list li {
      border-bottom: 1px solid #fff; } }
  @media (min-width: 751px) {
    .headNav_list li:not(:last-child) {
      margin: 0 20px 0 0; } }
  .headNav_list a {
    transition: .2; }
    @media (max-width: 750px) {
      .headNav_list a {
        position: relative;
        display: block;
        padding: 3.6vw 8vw; }
        .headNav_list a::after {
          content: "";
          display: block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 1.46vw 0 1.46vw 2.4vw;
          border-color: transparent transparent transparent #fff;
          position: absolute;
          top: 50%;
          right: 5.3vw;
          transform: translateY(-50%); } }
    @media (min-width: 751px) {
      .headNav_list a:hover {
        color: #e95193;
        opacity: 1; } }

.headNav_contactBtn {
  background: #e95193;
  color: #fff;
  padding: 5px 25px;
  margin: 0 30px 0 0;
  transition: .4s; }
  @media (max-width: 750px) {
    .headNav_contactBtn {
      border-radius: 5px;
      padding: 3vw 0;
      width: 66.6vw;
      margin: auto;
      display: block;
      font-size: 4.2vw;
      text-align: center; } }
  @media (min-width: 751px) {
    .headNav_contactBtn:hover {
      background: #00a7e3;
      opacity: 1; } }

.bogo-language-switcher,
.head_langList {
  font-weight: 400;
  color: #626262;
  line-height: 1;
  display: flex;
  flex-direction: row-reverse;
  font-family: 'Lato', sans-serif;
  font-size: 0; }
  @media (max-width: 750px) {
    .bogo-language-switcher,
    .head_langList {
      margin: 0 4vw 0 0; } }
  .bogo-language-switcher li:nth-child(1) a::after,
  .head_langList li:nth-child(1) a::after {
    content: "EN"; }
  .bogo-language-switcher li:nth-child(2),
  .head_langList li:nth-child(2) {
    border-right: 1px solid #626262; }
    .bogo-language-switcher li:nth-child(2) a::after,
    .head_langList li:nth-child(2) a::after {
      content: "JP"; }
  .bogo-language-switcher a,
  .head_langList a {
    padding: 0 8px;
    display: block; }
    .bogo-language-switcher a::after,
    .head_langList a::after {
      font-size: 1.3rem; }
      @media (max-width: 750px) {
        .bogo-language-switcher a::after,
        .head_langList a::after {
          font-size: 3.6vw; } }
    @media (max-width: 750px) {
      .bogo-language-switcher a,
      .head_langList a {
        padding: 0 2.6vw; } }
    @media (min-width: 751px) {
      .bogo-language-switcher a,
      .head_langList a {
        transition: .4s; }
        .bogo-language-switcher a:hover,
        .head_langList a:hover {
          background: #e95193;
          opacity: 1;
          color: #fff; } }

.menuBtn,
.menuBtn span {
  display: inline-block;
  transition: all .4s;
  cursor: pointer;
  z-index: 1000; }

.menuBtn {
  width: 8vw;
  height: 5.3vw;
  right: 0;
  position: relative; }
  .menuBtn span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #e95193; }
    .menuBtn span:nth-of-type(1) {
      top: 0; }
    .menuBtn span:nth-of-type(2) {
      top: calc(50% - 1px); }
    .menuBtn span:nth-of-type(3) {
      bottom: 0; }
  .menuBtn.active span:nth-of-type(1) {
    transform: translateY(2.5vw) rotate(-45deg); }
  .menuBtn.active span:nth-of-type(2) {
    opacity: 0; }
  .menuBtn.active span:nth-of-type(3) {
    transform: translateY(-2.4vw) rotate(45deg); }

/**********************************************************************************************

　footer

**********************************************************************************************/
footer {
  position: relative; }

.foot_sns {
  padding: 80px 0; }
  @media (max-width: 750px) {
    .foot_sns {
      padding: 13.3vw 0; } }

.foot_sns_list {
  display: flex;
  justify-content: center;
  align-items: center; }
  .foot_sns_list li:not(:last-child) {
    margin: 0 50px 0 0; }
    @media (max-width: 750px) {
      .foot_sns_list li:not(:last-child) {
        margin: 0 6.6vw 0 0; } }
  .foot_sns_list a {
    display: block; }

.foot_sns_icon {
  width: 64px; }
  @media (max-width: 750px) {
    .foot_sns_icon {
      width: 11.2vw; } }

.foot_sns_btn {
  width: 200px;
  font-size: 1.8rem;
  display: block;
  padding: 10px 0;
  text-align: center;
  border: 1px solid #000;
  transition: .4s; }
  @media (min-width: 751px) {
    .foot_sns_btn:hover {
      background: #000;
      color: #fff;
      opacity: 1; } }
  @media (max-width: 750px) {
    .foot_sns_btn {
      width: 48vw;
      font-size: 4.53vw;
      padding: 2.6vw 0; } }

.foot_contact {
  padding: 90px 0 110px;
  background: #00a7e3;
  color: #fff;
  text-align: center;
  position: relative;
  display: block; }
  @media (min-width: 751px) {
    .foot_contact {
      transition: .4s; }
      .foot_contact:hover {
        background: #e95193;
        opacity: 1; } }
  @media (max-width: 750px) {
    .foot_contact {
      padding: 13.3vw 0; } }

.foot_contact_tit {
  font-size: 2rem; }
  @media (max-width: 750px) {
    .foot_contact_tit {
      font-size: 4.8vw;
      font-weight: 700; } }

.foot_contact_subTit {
  font-size: 1.5rem;
  margin: 0 0 40px;
  position: relative; }
  @media (max-width: 750px) {
    .foot_contact_subTit {
      font-size: 3.2vw;
      margin: 0 0 8vw; } }
  .foot_contact_subTit::after {
    content: "";
    display: block;
    width: 45px;
    height: 1px;
    background: #fff;
    position: absolute;
    top: calc(100% + 15px);
    left: 50%;
    transform: translateX(-50%); }
    @media (max-width: 750px) {
      .foot_contact_subTit::after {
        width: 11.2vw;
        top: calc(100% + 3vw); } }

.foot_inner {
  padding: 80px 0 40px;
  margin: auto;
  position: relative; }
  @media (max-width: 750px) {
    .foot_inner {
      padding: 9.3vw 0; } }

.foot_logo {
  width: 232px;
  margin: 0 auto 20px;
  display: block; }
  @media (max-width: 750px) {
    .foot_logo {
      width: 44.5vw;
      margin: 0 auto 9.3vw; } }

.footNav_list {
  display: flex;
  justify-content: center;
  line-height: 1.4; }
  @media (max-width: 750px) {
    .footNav_list {
      flex-wrap: wrap;
      width: 84vw;
      margin: auto;
      text-align: center; } }
  @media (max-width: 750px) {
    .footNav_list li {
      width: 100%; } }
  .footNav_list li:not(:last-child) {
    margin: 0 20px 0 0; }
    @media (max-width: 750px) {
      .footNav_list li:not(:last-child) {
        width: 26%;
        margin: 0 0 5vw;
        text-align: left; } }
  .footNav_list a {
    transition: .2s; }
    @media (min-width: 751px) {
      .footNav_list a:hover {
        color: #e95193;
        opacity: 1; } }

.lang-en .footNav_list {
  align-items: center; }
  .lang-en .footNav_list li {
    text-align: center; }

.copyright {
  font-weight: 400;
  display: block;
  background: #b2e5f7;
  text-align: center;
  padding: 20px 0; }
  @media (max-width: 750px) {
    .copyright {
      padding: 2.6vw 0;
      font-size: 2.6vw; } }
