@charset "UTF-8";
/*------------------------------------------------------------
	BASE
------------------------------------------------------------*/
/*------------------------------------------------------------
	COLOR
------------------------------------------------------------*/
/*------------------------------------------------------------
	FONT
------------------------------------------------------------*/
/*------------------------------------------------------------
	FUNCTION
------------------------------------------------------------*/
/*------------------------------------------------------------
	MIXIN
------------------------------------------------------------*/
/*------------------------------------------------------------
	FONT
------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond&display=swap");
/*------------------------------------------------------------
	STYLE
------------------------------------------------------------*/
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent; }

body {
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
  width: 100%;
  font-size: 62.5%;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  color: #4C4D4D; }
  @media screen and (max-width: 751px) {
    body {
      overflow-x: hidden;
      font-size: 20px;
      line-height: 1; } }

a {
  -webkit-tap-highlight-color: transparent;
  text-decoration: none;
  color: #000; }

img, svg {
  vertical-align: bottom;
  max-width: 100%; }

.pc_hide {
  display: none; }

@media screen and (max-width: 751px) {
  .pc_hide {
    display: inline-block; }

  .sp_hide {
    display: none; } }
.pc .hover {
  transition: all 0.5s cubic-bezier(0.21, 0.51, 0.51, 1);
  cursor: pointer; }
  .pc .hover:hover {
    opacity: 0.6; }

.hide {
  display: none !important; }

/*-webkit-transition: $transition;*/
/*transition: $transition;*/
/*------------------------------------------------------------
	ANIMATION
------------------------------------------------------------*/
.fadein {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 1s cubic-bezier(0.21, 0.51, 0.51, 1); }
  @media screen and (max-width: 1800px) {
    .fadein {
      transform: translate(0, 2.60417vw); } }
  @media screen and (max-width: 751px) {
    .fadein {
      transform: translate(0, 6.66667vw); } }

.fadein.show {
  opacity: 1;
  transform: translate(0, 0); }
  @media screen and (max-width: 751px) {
    .fadein.show {
      transform: translate(0, 0); } }

.fadein.img {
  opacity: 0;
  transform: none;
  transition: all 1.0s; }

.fadein.img.show {
  opacity: 1; }

/*------------------------------------------------------------
	FONT
------------------------------------------------------------*/
.f_kyoM {
  font-family: "游教科書体 New M", "Yu Kyokasho New M", serif !important; }

.f_yuM {
  font-family: "游明朝体 Pr6N M", "Yu Mincho Pr6N M", serif !important; }

.f_yuB {
  font-family: "游明朝体 StdN B", "Yu Mincho StdN B", serif !important; }

.f_garaR {
  font-family: "EB Garamond", serif !important; }

/*------------------------------------------------------------
	WRAP
------------------------------------------------------------*/
.wrap {
  margin: 0 auto;
  width: 100%; }
  @media screen and (max-width: 751px) {
    .wrap {
      width: 100%; } }

/*------------------------------------------------------------
	HEADER
------------------------------------------------------------*/
.header {
  position: absolute;
  z-index: 1000;
  width: 100%; }
  @media screen and (max-width: 751px) {
    .header {
      width: 100vw; } }
  .header_navi {
    position: relative;
    width: 100%; }
    .header_navi #burger {
      position: absolute;
      top: 34px;
      left: 50px; }
      @media screen and (max-width: 1800px) {
        .header_navi #burger {
          top: 1.77083vw;
          left: 2.60417vw; } }
      @media screen and (max-width: 751px) {
        .header_navi #burger {
          top: 4.93333vw;
          left: 5.33333vw; } }
      .header_navi #burger a {
        position: relative;
        display: block;
        width: 47px;
        height: 31px;
        transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }
        @media screen and (max-width: 1800px) {
          .header_navi #burger a {
            width: 2.44792vw;
            height: 1.61458vw; } }
        @media screen and (max-width: 751px) {
          .header_navi #burger a {
            width: 6.26667vw;
            height: 4.13333vw; } }
        .pc .header_navi #burger a:hover {
          opacity: 0.7; }
        .header_navi #burger a span {
          display: block;
          position: absolute;
          left: 50%;
          transform: translateX(-50%);
          width: 47px;
          height: 5px;
          background: #fff; }
          @media screen and (max-width: 1800px) {
            .header_navi #burger a span {
              width: 2.44792vw;
              height: 0.26042vw; } }
          @media screen and (max-width: 751px) {
            .header_navi #burger a span {
              width: 6.26667vw;
              height: 0.66667vw; } }
          .header_navi #burger a span:nth-child(1) {
            top: 7px; }
            @media screen and (max-width: 1800px) {
              .header_navi #burger a span:nth-child(1) {
                top: 0.36458vw; } }
            @media screen and (max-width: 751px) {
              .header_navi #burger a span:nth-child(1) {
                top: 0.93333vw; } }
          .header_navi #burger a span:nth-child(2) {
            top: 19px; }
            @media screen and (max-width: 1800px) {
              .header_navi #burger a span:nth-child(2) {
                top: 0.98958vw; } }
            @media screen and (max-width: 751px) {
              .header_navi #burger a span:nth-child(2) {
                top: 2.53333vw; } }
    .header_navi #lang {
      position: absolute;
      display: inline-block;
      top: 40px;
      right: 50px;
      font-size: 26px;
      line-height: 1;
      color: #fff; }
      .header_navi #lang a {
        font-size: 26px;
        line-height: 1;
        color: #fff;
        display: block;
        position: relative;
        margin-bottom: 1vw;
      }
      @media screen and (max-width: 1800px) {
        .header_navi #lang {
          top: 2.08333vw;
          right: 2.60417vw;
          font-size: 1.35417vw; }
           }
      @media screen and (max-width: 751px) {
        .header_navi #lang {
          display: inline-block;
          top: 5.33333vw;
          right: 5.6vw;
          font-size: 3.2vw; }
        .header_navi #lang a{
          font-size: 3.2vw;
          margin-bottom: 3vw; } }
      .header_navi #lang a:after {
        content: '';
        display: block;
        position: absolute;
        bottom: -5px;
        left: 0;
        width: 100%;
        height: 1px;
        background: #fff;
        opacity: 0;
        transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }
        @media screen and (max-width: 751px) {
          .header_navi #lang a:after {
            bottom: -0.66667vw;
            height: 0.26667vw;
            opacity: 1; } }
      .pc .header_navi #lang a:hover:after {
        opacity: 1; }

/*------------------------------------------------------------
	MAIN
------------------------------------------------------------*/
.main {
  position: relative; }

/*------------------------------------------------------------
FOOTER
------------------------------------------------------------*/
.footer {
  position: relative;
  z-index: 10;
  background: #F0EDEC; }
  .footer .inner {
    padding: 130px 0 68px; }
    @media screen and (max-width: 1800px) {
      .footer .inner {
        padding: 6.77083vw 0 3.54167vw; } }
    @media screen and (max-width: 751px) {
      .footer .inner {
        padding: 6.66667vw 0; } }
  .footer_sns {
    display: flex;
    justify-content: center;
    align-items: center; }
    .footer_sns li {
      padding: 0 0 0 95px; }
      @media screen and (max-width: 1800px) {
        .footer_sns li {
          padding: 0 0 0 4.94792vw; } }
      @media screen and (max-width: 751px) {
        .footer_sns li {
          padding: 0 0 0 10.66667vw; } }
      .footer_sns li:first-child {
        padding: 0; }
        @media screen and (max-width: 1800px) {
          .footer_sns li:first-child {
            padding: 0; } }
        @media screen and (max-width: 751px) {
          .footer_sns li:first-child {
            padding: 0; } }
      .footer_sns li a {
        display: inline-block;
        opacity: 0.5;
        transition: all 0.25s cubic-bezier(0.21, 0.51, 0.51, 1); }
        @media screen and (max-width: 1800px) {
          .footer_sns li a {
            width: 3.38542vw; } }
        @media screen and (max-width: 751px) {
          .footer_sns li a {
            width: 8.66667vw;
            opacity: 1; } }
        .pc .footer_sns li a:hover {
          opacity: 1; }
    .footer_sns #icon_fb {
      background: transparent; }
  .footer .pagetop {
    padding: 75px 0 0;
    text-align: center; }
    @media screen and (max-width: 1800px) {
      .footer .pagetop {
        padding: 3.90625vw 0 0; } }
    @media screen and (max-width: 751px) {
      .footer .pagetop {
        padding: 7.33333vw 0 0; } }
    .footer .pagetop a {
      display: inline-block;
      margin: 0 auto;
      font-size: 25px;
      line-height: 1;
      letter-spacing: 0.05em;
      color: #7B7B7B; }
      @media screen and (max-width: 1800px) {
        .footer .pagetop a {
          font-size: 1.30208vw; } }
      @media screen and (max-width: 751px) {
        .footer .pagetop a {
          font-size: 3.33333vw;
          line-height: 1; } }
      .footer .pagetop a span {
        display: block;
        margin: 5px auto 0;
        width: 40px; }
        @media screen and (max-width: 1800px) {
          .footer .pagetop a span {
            width: 2.08333vw; } }
        @media screen and (max-width: 751px) {
          .footer .pagetop a span {
            margin: 0.66667vw auto 0;
            width: 5.33333vw; } }
  .footer .copyrights {
    padding: 23px 0 26px;
    text-align: center;
    background: #fff;
    font-size: 20px;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #4C4D4D; }
    @media screen and (max-width: 1800px) {
      .footer .copyrights {
        padding: 1.19792vw 0 1.35417vw;
        font-size: 1.04167vw; } }
    @media screen and (max-width: 751px) {
      .footer .copyrights {
        padding: 4.66667vw 0 4vw;
        font-size: 3.2vw;
        line-height: 1.66667; } }
    .footer .copyrights a {
      display: inline-block;
      margin: 0 0 0 20px; }
      @media screen and (max-width: 1800px) {
        .footer .copyrights a {
          margin: 0 0 0 1.04167vw; } }
      @media screen and (max-width: 751px) {
        .footer .copyrights a {
          margin: 0; } }

/*# sourceMappingURL=common.css.map */
