@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans:400");
/* base */
html {
  font-size: 62.5%; }

body {
  color: #000;
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
  letter-spacing: 0.1em;
  background-color: #EAE8E8; }

#wrapper {
  position: relative; }

img {
  vertical-align: bottom; }

a {
  color: #000;
  text-decoration: none; }
  a:hover {
    color: #FF8700; }
  a[href^="tel:"] {
    pointer-events: none; }

.pc {
  display: block !important; }

.sp {
  display: none !important; }

.flexContainer {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  flex-wrap: wrap; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

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

.fadein {
  opacity: 0.0;
  -webkit-transition: all 0.6s linear 0s;
  -moz-transition: all 0.6s linear 0s;
  -o-transition: all 0.6s linear 0s;
  transition: all 0.6s linear 0s; }

.fadein.scrollin {
  opacity: 1;
  -webkit-transition: all 0.6s linear 0s;
  -moz-transition: all 0.6s linear 0s;
  -o-transition: all 0.6s linear 0s;
  transition: all 0.6s linear 0s; }

/* header */
#headerSp, #gNaviSp {
  display: none; }

#header {
  width: 100%;
  min-width: 1170px;
  height: 134px;
  display: block;
  background-color: #FFF;
  position: relative; }
  #header #headerContent {
    width: 800px;
    position: absolute;
    top: 46px;
    left: 50px;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-family: 'Noto Sans', serif;
    font-weight: 400;
    letter-spacing: 0.1em; }
    #header #headerContent .logo {
      width: 324px; }
    #header #headerContent #gNavi {
      width: 240px;
      padding-top: 2px; }
      #header #headerContent #gNavi ul {
        display: flex;
        display: -webkit-flex;
        justify-content: flex-start;
        flex-wrap: wrap; }
        #header #headerContent #gNavi ul li {
          font-size: 1.1rem;
          margin-bottom: 17px; }
          #header #headerContent #gNavi ul li:first-child {
            width: 158px; }
          #header #headerContent #gNavi ul li:nth-child(3) {
            width: 158px; }
        #header #headerContent #gNavi ul .active {
          color: #FF8700; }
    #header #headerContent .copyright {
      font-size: 0.8rem;
      padding-top: 2px; }
  #header .private {
    position: absolute;
    top: 46px;
    right: 30px;
    font-size: 1.1rem;
    font-family: 'Noto Sans', serif;
    font-weight: 400; }

@media screen and (max-width: 768px) {
  a:hover {
    opacity: 1; }
  .pc {
    display: none !important; }
  .sp {
    display: block !important; }
  #header {
    display: none; }
  #headerSp {
    display: block;
    width: 100%;
    height: 62px;
    background-color: #FFF;
    position: relative; }
    #headerSp .logo {
      position: absolute;
      width: 100%;
      height: 34px;
      top: 0;
      left: 0;
      bottom: 0;
      margin: auto;
      padding-left: 15px;
      text-align: left;
      z-index: 1001;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      -o-box-sizing: border-box;
      -ms-box-sizing: border-box;
      box-sizing: border-box; }
    #headerSp .menu-trigger,
    #headerSp .menu-trigger span {
      display: inline-block;
      transition: all 0.4s;
      box-sizing: border-box;
      z-index: 1012; }
    #headerSp .menu-trigger {
      position: absolute;
      top: 20px;
      right: 20px;
      width: 30px;
      height: 27px; }
    #headerSp .menu-trigger span {
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #000;
      border-radius: 4px; }
    #headerSp .menu-trigger span:nth-of-type(1) {
      top: 0; }
    #headerSp .menu-trigger span:nth-of-type(2) {
      top: 10px; }
    #headerSp .menu-trigger span:nth-of-type(3) {
      top: 20px; }
    #headerSp .menu-trigger.active span:nth-of-type(1) {
      -webkit-transform: translateY(10px) rotate(-45deg);
      transform: translateY(10px) rotate(-45deg); }
    #headerSp .menu-trigger.active span:nth-of-type(2) {
      opacity: 0; }
    #headerSp .menu-trigger.active span:nth-of-type(3) {
      -webkit-transform: translateY(-10px) rotate(45deg);
      transform: translateY(-10px) rotate(45deg); }
  #gNaviSp {
    display: none;
    width: 100%;
    height: 100vh !important;
    position: absolute;
    top: 0;
    background-color: #FFF;
    z-index: 1000;
    text-align: center;
    font-family: 'Noto Sans', serif;
    font-weight: 400; }
    #gNaviSp ul {
      width: 92%;
      margin: 110px auto 0; }
      #gNaviSp ul li {
        font-size: 1.3rem;
        margin-bottom: 45px;
        line-height: 1; }
    #gNaviSp .copyright {
      font-size: 1.0rem;
      margin-top: 60px; }
    #gNaviSp .private {
      font-size: 1.3rem;
      margin-top: 100px; } }

body {
  background-color: #FFF; }

/* mainvisual */
#main {
  position: relative;
  width: 100%;
  min-width: 1170px;
  height: calc(100vh - 134px);
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal; }
  #main .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 3s ease; }
  #main .bg.bg--1 {
    animation: fadeinout 15s 0s infinite; }
  #main .bg.bg--2 {
    animation: fadeinout 15s 5s infinite; }
  #main .bg.bg--3 {
    animation: fadeinout 15s 10s infinite; }

@keyframes fadeinout {
  0% {
    opacity: 0; }
  10% {
    opacity: 1; }
  40% {
    opacity: 1; }
  60% {
    opacity: 0; }
  100% {
    opacity: 0; } }

@media screen and (max-width: 768px) {
  html, body {
    width: 100%;
    height: 100%;
    overflow: hidden;
    margin: 0;
    padding: 0;
    border: none; }
  #main {
    min-width: auto;
    min-width: initial;
    height: calc(100vh - 62px); }
    #main .bg.bg--1 {
      animation: fadeinout 15s 0s infinite; }
    #main .bg.bg--2 {
      animation: fadeinout 15s 5s infinite; }
    #main .bg.bg--3 {
      animation: fadeinout 15s 10s infinite; } }
