@charset "UTF-8";
/*リセット
/* img */
img,
div, p, blockquote,
h1, h2, h3, h4, h5, h6,
ul, ol, li, dl, dt, dd,
form, fieldset, textarea,
address,
main, article, aside, dialog, figure, footer, header, hgroup, nav, section {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  font-style: normal;
  text-decoration: none;
  list-style-type: none;
  vertical-align: baseline; }

/* common
-----------------------*/
html {
  scroll-padding-top: 240px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400 !important; }

body {
  margin: 0;
  padding: 0;
  background-color: #ffffff; }

a {
  text-decoration: none; }
  a:visited {
    color: inherit; }

.site-main {
  margin-right: 0;
  margin-bottom: 0; }

/* header
-----------------------*/
#masthead {
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  position: fixed;
  background-color: #dbd5c8;
  color: #000;
  height: 16vw; }
  #masthead .masthead-inner {
    width: 100%;
    height: 16vw;
    margin: auto;
    padding-left: 5.3333333333vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4); }
    #masthead .masthead-inner .site-branding {
      width: 23.4666666667vw;
      height: 16vw;
      display: flex;
      align-items: center;
      justify-content: flex-start; }
      #masthead .masthead-inner .site-branding .logo {
        width: 100%;
        object-fit: cover; }
    #masthead .masthead-inner .main-navigation {
      width: 16vw;
      height: 100%; }
      #masthead .masthead-inner .main-navigation .nav-wraper {
        display: block;
        width: 100%;
        height: 213.3333333333vw;
        margin-top: 0;
        background-color: #dbd5c8;
        position: fixed;
        z-index: 98;
        top: 16vw;
        right: -100%;
        transition: 0.3s ease-in-out;
        padding: 16vw 0;
        box-shadow: inset 0px 3px 4px -3px rgba(0, 0, 0, 0.4);
        overflow-y: scroll;
        /*スクロールバー非表示*/
        scrollbar-width: none;
        /* Firefox用 */
        -ms-overflow-style: none;
        /* IE・Edge用 */ }
        #masthead .masthead-inner .main-navigation .nav-wraper::-webkit-scrollbar {
          display: none; }
      #masthead .masthead-inner .main-navigation .menu {
        display: block;
        width: 100%;
        height: 93.3333333333vw;
        /*				margin-top:0;
        				background-color:#dbd5c8;
        				font-size:p2v(15px);
        				position:fixed;
        				z-index:98;
        				right:-100%;
        				transition: 0.3s ease-in-out;
        				padding:p2v(60px) 0;
        				box-shadow:inset 0px 3px 4px -3px rgba(0,0,0,0.4);
        */ }
        #masthead .masthead-inner .main-navigation .menu li {
          width: 80vw;
          height: 13.3333333333vw;
          margin: 0 auto;
          box-sizing: border-box;
          list-style: none;
          text-align: center;
          padding: 0; }
          #masthead .masthead-inner .main-navigation .menu li::before {
            content: "";
            width: 100%;
            height: 1px;
            background-image: url(../img/common/common_06.webp);
            background-repeat: no-repeat;
            background-size: 100%;
            position: absolute;
            top: 0;
            left: 0; }
          #masthead .masthead-inner .main-navigation .menu li:last-child::after {
            content: "";
            width: 100%;
            height: 1px;
            background-image: url(../img/common/common_06.webp);
            background-repeat: no-repeat;
            background-size: 100%;
            position: absolute;
            top: bottom;
            left: 0; }
          #masthead .masthead-inner .main-navigation .menu li.current a {
            background-color: #00ff00;
            color: #444444; }
          #masthead .masthead-inner .main-navigation .menu li a {
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 4.5333333333vw;
            line-height: 4.5333333333vw;
            font-family: "Zen Kaku Gothic New", sans-serif;
            font-weight: 500 !important;
            color: #81766b;
            font-weight: normal;
            position: relative; }
            #masthead .masthead-inner .main-navigation .menu li a:hover:after {
              width: 100%; }
      #masthead .masthead-inner .main-navigation.toggled {
        /*			  .menu {
        				  right: 0;
        			  }
        			.outlink{
        				  right: 0;
        			  }
        */ }
        #masthead .masthead-inner .main-navigation.toggled .menu-toggle {
          height: 16vw; }
          #masthead .masthead-inner .main-navigation.toggled .menu-toggle span {
            width: 7.4666666667vw; }
            #masthead .masthead-inner .main-navigation.toggled .menu-toggle span.bar-1 {
              transform: rotate(52deg);
              top: 50%;
              left: calc(50% - 14px); }
            #masthead .masthead-inner .main-navigation.toggled .menu-toggle span.bar-2 {
              display: none; }
            #masthead .masthead-inner .main-navigation.toggled .menu-toggle span.bar-3 {
              transform: rotate(-52deg);
              top: 50%;
              left: calc(50% - 14px);
              bottom: auto; }
        #masthead .masthead-inner .main-navigation.toggled .nav-wraper {
          right: 0; }
      #masthead .masthead-inner .main-navigation .menu-toggle {
        display: block;
        background-color: #ffef89;
        border: none;
        border-radius: 0px;
        width: 16vw;
        height: 16vw;
        position: relative;
        padding: 0; }
        #masthead .masthead-inner .main-navigation .menu-toggle span {
          display: block;
          width: 4.8vw;
          height: 0.5333333333vw;
          background: #573a1e;
          position: absolute;
          left: calc(50% - 9px);
          right: 0;
          padding: 0;
          transition: 0.2s; }
          #masthead .masthead-inner .main-navigation .menu-toggle span.bar-1 {
            top: 5.0666666667vw; }
          #masthead .masthead-inner .main-navigation .menu-toggle span.bar-2 {
            top: calc(50% - 1px); }
          #masthead .masthead-inner .main-navigation .menu-toggle span.bar-3 {
            bottom: 5.0666666667vw; }
    #masthead .masthead-inner .outlink {
      width: 100%;
      height: 162.6666666667vw;
      margin: 0 auto 2.6666666667vw;
      background-image: url(../img/common/common_05.webp);
      background-repeat: no-repeat;
      background-size: 80vw 121.3333333333vw;
      background-position: center top;
      /*			position:absolute;
      			z-index:98;
      			right:-100%;
      			top:p2v(450px);
      			transition: 0.3s ease-in-out;
      */ }
      #masthead .masthead-inner .outlink .title {
        width: 37.3333333333vw;
        height: 8vw;
        background-color: #e2b04a;
        border-radius: 5.3333333333vw;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
        position: relative;
        top: -2.6666666667vw;
        font-size: 4.5333333333vw;
        line-height: 4.5333333333vw;
        font-family: "Zen Kaku Gothic New", sans-serif;
        font-weight: 500 !important;
        color: #fff; }
      #masthead .masthead-inner .outlink .item {
        width: 48vw;
        padding: 2.4vw 0 2.9333333333vw;
        display: block;
        margin: 0 auto;
        position: relative; }
        #masthead .masthead-inner .outlink .item::before {
          content: "";
          width: 100%;
          height: 0.8vw;
          background-image: url(../img/common/common_07.webp);
          background-repeat: no-repeat;
          background-size: 100%;
          position: absolute;
          bottom: 0;
          left: 0; }
        #masthead .masthead-inner .outlink .item:nth-of-type(5)::before {
          display: none; }
        #masthead .masthead-inner .outlink .item .linkname {
          height: auto;
          object-fit: contain;
          display: block;
          margin: 0 auto 1.3333333333vw; }
          #masthead .masthead-inner .outlink .item .linkname.w01 {
            width: 48vw; }
          #masthead .masthead-inner .outlink .item .linkname.w02 {
            width: 47.7333333333vw; }
          #masthead .masthead-inner .outlink .item .linkname.w03 {
            width: 38.9333333333vw; }
          #masthead .masthead-inner .outlink .item .linkname.w04 {
            width: 36.5333333333vw; }
        #masthead .masthead-inner .outlink .item .text {
          width: 100%;
          margin: 0 auto;
          font-size: 2.6666666667vw;
          line-height: 4vw;
          font-family: "Zen Kaku Gothic New", sans-serif;
          font-weight: 500 !important;
          color: #81766b;
          text-align: center;
          letter-spacing: -0.2666666667vw;
          font-feature-settings: "palt"; }
          #masthead .masthead-inner .outlink .item .text.tf90 {
            width: 102% !important;
            position: relative;
            left: -1.0666666667vw; }
      #masthead .masthead-inner .outlink .ec {
        display: block;
        width: 100%;
        margin: 0 auto;
        font-size: 4.2666666667vw;
        line-height: 4.2666666667vw;
        font-family: "Zen Kaku Gothic New", sans-serif;
        font-weight: 500 !important;
        color: #81766b;
        text-align: center; }

.fv {
  min-height: 100vh; }

/* link-top
-----------------------*/
.link-top {
  position: fixed;
  right: 0;
  bottom: 0;
  cursor: pointer;
  z-index: 999;
  transform: translateY(100px);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s, transform 4s; }
  .link-top .common-totop {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    width: 13.3333333333vw;
    height: 13.3333333333vw;
    color: #fff;
    font-size: 10px;
    padding: 30px 0 13px;
    background: #c4c4c4;
    position: relative;
    transition: 0.5s; }
    .link-top .common-totop:hover {
      background: #d0d0d0; }
    .link-top .common-totop::before {
      content: "";
      width: 2.9333333333vw;
      height: 2.9333333333vw;
      border-top: solid 2px #FFFFFF;
      border-right: solid 2px #FFFFFF;
      transform: rotate(-45deg);
      position: absolute;
      left: 5.0666666667vw;
      top: 6.1333333333vw; }
  .link-top.change-position {
    transform: translateY(0px);
    opacity: 1;
    visibility: visible;
    transition: opacity 1s, visibility 1s, transform 2s; }

/* footer
-----------------------*/
#colophon {
  width: 100%;
  height: 64vw;
  background-color: #ffe189; }
  #colophon ul {
    width: 77.3333333333vw;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto;
    padding-top: 13.3333333333vw; }
    #colophon ul li {
      margin: 0 3.2vw; }
      #colophon ul li a {
        font-size: 4vw;
        line-height: 10.6666666667vw;
        color: #81766b;
        font-family: "Zen Kaku Gothic New", sans-serif;
        font-weight: 500 !important; }
      #colophon ul li:nth-child(4) {
        margin: 0 3.2vw 0 13.3333333333vw; }
      #colophon ul li:nth-child(5) {
        margin: 0 13.3333333333vw 0 3.2vw; }
      #colophon ul li:nth-child(6) a, #colophon ul li:nth-child(7) a {
        font-size: 3.4666666667vw; }
  #colophon .cr {
    width: 100%;
    font-size: 2.4vw;
    display: block;
    text-align: center;
    color: #81766b;
    padding-top: 8vw;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 500 !important; }

/*# sourceMappingURL=common_sp.css.map */
