@charset "UTF-8";
@font-face {
  font-family: "TsukuMin";
  src: url(font/myfont.eot) format("eot"), url(./fonts/FOT-TsukuMinPr5-RB.otf) format("woff"); }
* {
  box-sizing: border-box;
  font-family: "Noto Sans JP", 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

body {
  margin: 0;
  padding: 0;
  color: #333;
  font-family: "Noto Sans JP", 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 100;
  font-size: 14px;
  line-height: 2.5;
  letter-spacing: 0.25em; }
  @media screen and (max-width: 768px) {
    body {
      font-size: 12px; } }

section {
  position: relative;
  overflow: hidden;
  background-color: #fff;
  text-align: center; }

@media screen and (max-width: 768px) {
  h2 {
    font-size: 24px;
    text-align: center; } }

li {
  list-style: none; }

img {
  max-width: 100%; }

div[class*="col-"] {
  float: left; }

a {
  color: #000; }

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer; }

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none; }

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px; }

.container {
  padding: 15px;
  vertical-align: middle;
  overflow: hidden;
  text-align: left; }

.wrap {
  max-width: 990px;
  width: 100%;
  margin: 0 auto;
  position: relative; }

.col-1-2 {
  width: 50%; }

.col-1-3 {
  width: 33.33333%;
  width: calc(100%/3); }

.col-2-3 {
  width: 66.666666%;
  width: calc(100%/3*2); }

@media screen and (max-width: 768px) {
  .col-1-2 {
    width: 100%; }

  .col-1-3 {
    width: 100%; }

  .col-2-3 {
    width: 100%; } }
@media screen and (max-width: 768px) {
  h2[class$="_head"] {
    font-size: 24px; } }

.sa-fadein, .sa-slidein, .fa-fadein, .fa-slidein {
  opacity: 0; }

.sa-typo, .sa-typo span {
  opacity: 0.1; }

.sa-typo {
  font-size: 0; }

.sa-typo span {
  font-size: 36px; }

.sa-slidein.show, .fa-slidein.show {
  animation: slideIn 0.8s ease forwards;
  -webkit-animation: slideIn 0.8s ease forwards; }

.zoom-out {
  animation: zoomOut 0.8s ease forwards;
  -webkit-animation: zoomOut 0.8s ease forwards; }

.sa-fadein.show, .fa-fadein.show {
  animation: fadeIn 1.5s ease forwards;
  -webkit-animation: fadeIn 0.8s ease forwards; }

.sa-typo.show, .fa-typo.show {
  animation: typo 0.8s ease forwards;
  -webkit-animation: typo 0.8s ease forwards; }

.hero {
  width: 100vw;
  height: 100vh;
  background-color: #000;
  display: table; }
  @media screen and (max-width: 768px) {
    .hero {
      height: calc(100vh - 80px); } }
  .hero_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: none;
    background-color: #000;
    -webkit-backface-visibility: hidden;
    -webkit-animation: bgZoom 15s linear forwards;
    -moz-animation: bgZoom 15s linear forwards;
    -o-animation: bgZoom 15s linear forwards;
    -ms-animation: bgZoom 15s linear forwards;
    animation: bgZoom 15s linear forwards; }
  .hero_contents {
    /* 2019-01-26 update*/
    width: 100vw;
    height: 100%;
    padding: 0;
    /* 2019-01-26 update*/
    /* 2019-01-26 update*/ }
    .hero_contents_title {
      width: 100%;
      padding: 20px;
      text-align: center;
      position: absolute;
      z-index: 100;
      height: 115px; }
    @media screen and (max-width: 768px) {
      .hero_contents {
        letter-spacing: 0.05em; } }
    .hero_contents img {
      width: 600px;
      height: auto; }
      @media screen and (max-width: 768px) {
        .hero_contents img {
          width: 300px; } }
  .hero .wrap {
    text-align: center; }

.intro {
  height: auto; }
  .intro_wave_bg {
    top: 100px;
    left: 400px; }
    @media screen and (max-width: 768px) {
      .intro_wave_bg {
        left: 300px; } }
  .intro_contents {
    padding-top: 150px; }
    @media screen and (max-width: 768px) {
      .intro_contents {
        padding-top: 80px; } }
    .intro_contents_head {
      position: relative; }
      .intro_contents_head h2 {
        font-size: 36px;
        margin: 0;
        padding: 10px 0 40px;
        line-height: 1; }
        @media screen and (max-width: 768px) {
          .intro_contents_head h2 {
            font-size: 24px;
            font-weight: 900; } }
      .intro_contents_head hr {
        height: 1px;
        background-size: 100px 1px;
        background-image: url(./images/bg_ccc.png);
        background-repeat: no-repeat;
        border: none; }
        @media screen and (max-width: 768px) {
          .intro_contents_head hr {
            background-position-x: center; } }
    .intro_contents_desc {
      margin-top: 35px;
      font-family: 'TsukuMin'; }

.about {
  height: auto; }
  .about_wave_bg {
    top: 500px;
    left: -500px; }
    @media screen and (max-width: 768px) {
      .about_wave_bg {
        left: -300px; } }
  .about_wave_bg_2 {
    top: 1500px;
    left: 600px; }
    @media screen and (max-width: 768px) {
      .about_wave_bg_2 {
        top: 1200px;
        left: 380px; } }
  .about_contents {
    padding-top: 150px; }
    @media screen and (max-width: 768px) {
      .about_contents {
        padding-top: 80px; } }
    .about_contents_head h2 {
      font-size: 36px;
      margin: 0;
      padding: 10px 0 40px;
      line-height: 1; }
      @media screen and (max-width: 768px) {
        .about_contents_head h2 {
          font-size: 24px; } }
    .about_contents_head hr {
      height: 1px;
      background-size: 100px 1px;
      background-image: url(./images/bg_ccc.png);
      background-repeat: no-repeat;
      border: none; }
      @media screen and (max-width: 768px) {
        .about_contents_head hr {
          background-position-x: center; } }
    .about_contents_head_titles_archive {
      text-align: left !important;
      line-height: 1.5 !important; }
      .about_contents_head_titles_archive span {
        font-size: 11px;
        font-weight: 100; }
    .about_contents_desc {
      margin-top: 35px;
      padding: 0;
      border-top: 1px solid #f3f3f3; }
      .about_contents_desc_list {
        width: 100%;
        padding: 20px 0;
        overflow: hidden;
        border-bottom: 1px solid #f3f3f3; }
        .about_contents_desc_list h4 {
          width: 25%;
          float: left;
          margin: 0;
          padding-left: 20px;
          line-height: 2.0; }
          @media screen and (max-width: 768px) {
            .about_contents_desc_list h4 {
              padding-left: 5px;
              padding-right: 10px;
              font-weight: 800; } }
        .about_contents_desc_list p {
          width: 75%;
          float: left;
          margin: 0;
          line-height: 2.0; }
          @media screen and (max-width: 768px) {
            .about_contents_desc_list p {
              padding-left: 10px; } }
    .about_contents_guest_list {
      position: relative;
      overflow: hidden;
      border-bottom: 1px solid #ccc;
      padding: 50px 0; }
      @media screen and (max-width: 768px) {
        .about_contents_guest_list {
          text-align: center; } }
      .about_contents_guest_list img {
        width: 200px;
        border-radius: 50%;
        margin-right: 50px;
        float: left; }
        @media screen and (max-width: 768px) {
          .about_contents_guest_list img {
            width: 150px;
            float: none;
            margin-right: 0; } }
      @media screen and (max-width: 768px) {
        .about_contents_guest_list_desc {
          width: 100%; } }
      .about_contents_guest_list_desc_position {
        font-size: 10px;
        letter-spacing: 0.25em;
        margin: 0 0 8px; }
        @media screen and (max-width: 768px) {
          .about_contents_guest_list_desc_position {
            line-height: 1.5;
            letter-spacing: 0.2em; } }
      .about_contents_guest_list_desc h4 {
        font-size: 36px;
        margin: 0;
        line-height: 1;
        font-family: 'TsukuMin'; }
      .about_contents_guest_list_desc_text {
        font-size: 12px !important;
        margin-top: 30px; }
        @media screen and (max-width: 768px) {
          .about_contents_guest_list_desc_text {
            text-align: left; } }

.contact {
  padding: 150px 0 70px; }
  @media screen and (max-width: 768px) {
    .contact {
      padding: 80px 0 0; } }
  .contact_contents_head h2 {
    font-size: 36px;
    margin: 0;
    padding: 10px 0 40px;
    line-height: 1; }
    @media screen and (max-width: 768px) {
      .contact_contents_head h2 {
        font-size: 24px; } }
  .contact_contents_head hr {
    height: 1px;
    background-size: 100px 1px;
    background-image: url(./images/bg_ccc.png);
    background-repeat: no-repeat;
    border: none; }
  .contact_contents_form {
    width: 100%;
    margin: 0 auto; }
    .contact_contents_form_success {
      display: none;
      margin-top: 20px;
      background-color: rgba(0, 170, 255, 0.2);
      text-align: center;
      padding: 20px 0; }
    .contact_contents_form_entry_list {
      width: 100%;
      display: block;
      position: relative;
      border-bottom: 1px solid #e9e9e9;
      margin-top: 10px; }
      .contact_contents_form_entry_list .error-label {
        position: absolute;
        bottom: 3px;
        right: 0;
        color: #f00;
        font-size: 8px;
        font-weight: 300;
        margin: 0;
        line-height: 1;
        letter-spacing: 0.1em;
        -webkit-animation: fadeIn 1s ease 0s 1 normal;
        animation: fadeIn 1s ease 0s 1 normal; }
      .contact_contents_form_entry_list span {
        position: absolute;
        display: block;
        opacity: 1;
        font-size: 12px;
        color: #000;
        top: 0;
        left: 0;
        line-height: 50px;
        padding-left: 5px; }
        @media screen and (max-width: 768px) {
          .contact_contents_form_entry_list span {
            line-height: 1;
            padding-left: 0;
            padding-top: 10px; } }
      .contact_contents_form_entry_list input {
        height: 50px;
        padding-left: 150px;
        width: 100%;
        font-size: 12px;
        font-weight: 300;
        border: none;
        box-shadow: 0;
        -webkit-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        letter-spacing: 1.7px;
        background: none;
        /* Google Chrome, Safari, Opera 15+, Android, iOS */
        /* Firefox 18- */
        /* Firefox 19+ */
        /* IE 10+ */ }
        .contact_contents_form_entry_list input:focus {
          outline: 0;
          border-color: orange;
          background: #f5f5f5; }
        @media screen and (max-width: 768px) {
          .contact_contents_form_entry_list input {
            height: 70px;
            padding-left: 0px;
            padding-top: 20px; } }
        .contact_contents_form_entry_list input:placeholder-shown {
          color: #ccc; }
        .contact_contents_form_entry_list input::-webkit-input-placeholder {
          color: #ccc; }
        .contact_contents_form_entry_list input:-moz-placeholder {
          color: #ccc;
          opacity: 1; }
        .contact_contents_form_entry_list input::-moz-placeholder {
          color: #ccc;
          opacity: 1; }
        .contact_contents_form_entry_list input:-ms-input-placeholder {
          color: #ccc; }
      .contact_contents_form_entry_list textarea {
        width: 100%;
        height: 150px;
        border: none;
        box-shadow: 0;
        padding: 40px 5px 5px;
        font-size: 12px;
        font-weight: 300;
        -webkit-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        letter-spacing: 1.7px;
        line-height: 1.3rem;
        resize: none;
        background: none;
        /* Google Chrome, Safari, Opera 15+, Android, iOS */
        /* Firefox 18- */
        /* Firefox 19+ */
        /* IE 10+ */ }
        .contact_contents_form_entry_list textarea:focus {
          outline: 0;
          border-color: orange;
          background: #f5f5f5; }
        .contact_contents_form_entry_list textarea:placeholder-shown {
          color: #ccc; }
        .contact_contents_form_entry_list textarea::-webkit-input-placeholder {
          color: #ccc; }
        .contact_contents_form_entry_list textarea:-moz-placeholder {
          color: #ccc;
          opacity: 1; }
        .contact_contents_form_entry_list textarea::-moz-placeholder {
          color: #ccc;
          opacity: 1; }
        .contact_contents_form_entry_list textarea:-ms-input-placeholder {
          color: #ccc; }
        @media screen and (max-width: 768px) {
          .contact_contents_form_entry_list textarea {
            padding: 40px 0 0 0; } }
    .contact_contents_form_entry .submit-box {
      text-align: center;
      padding: 25px 0 15px; }
      .contact_contents_form_entry .submit-box .submit-button {
        width: 300px;
        padding: 15px;
        border-radius: 2px;
        background-color: #000;
        color: #eeeeee;
        border-width: initial;
        border-style: none;
        border-color: initial;
        border-image: initial;
        line-height: 2.5;
        letter-spacing: 0.25em;
        font-size: 12px; }
        .contact_contents_form_entry .submit-box .submit-button:disabled {
          cursor: default;
          background-color: #ccc; }
        @media screen and (max-width: 768px) {
          .contact_contents_form_entry .submit-box .submit-button {
            width: 100%; } }
  .contact_contents_caution {
    width: 100%;
    margin-top: 30px;
    padding: 15px;
    background: #f5f5f5; }
    .contact_contents_caution p {
      font-size: 10px; }

.support {
  background: #f0f4c3; }
  .support_contents {
    padding-top: 30px;
    padding-bottom: 30px; }
    .support_contents_head_title {
      margin: 0 0 0px 0; }
    .support_contents_desc p {
      margin: 0; }

.back {
  margin-top: 50px; }
  .back_contents_btn {
    width: 100%;
    display: block;
    padding: 10px 10px;
    border: 1px solid #e9e9e9;
    background: #F9F9F9;
    text-align: center;
    font-weight: 800;
    color: #000;
    font-size: 14px; }

.archive {
  margin-top: 100px; }
  .archive_contents a {
    text-decoration: none;
    display: block;
    cursor: pointer;
    padding: 15px; }
  .archive_contents_list {
    width: 100%;
    background: #f5f5f5;
    border: 1px solid #CECECE;
    line-height: 1.4; }
    .archive_contents_list::after {
      content: "";
      position: absolute;
      right: 4px;
      bottom: 4px;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 0 0 14px 14px;
      border-color: transparent transparent #999; }
    .archive_contents_list_date {
      font-size: 10px;
      margin: 0; }
    .archive_contents_list_title {
      font-size: 20px;
      margin: 0 0 10px; }
    .archive_contents_list_desk {
      font-size: 12px;
      margin: 0;
      color: #999;
      line-height: 1.8; }

.footer {
  margin-top: 50px;
  padding: 45px 0 30px;
  text-align: center;
  border-top: 1px solid #e9e9e9; }
  .footer_menu {
    width: 100%;
    margin-bottom: 20px;
    font-size: 0; }
    .footer_menu_list {
      display: inline-block;
      padding: 0 15px;
      border-right: 1px solid #e9e9e9;
      font-size: 12px; }
      .footer_menu_list:last-child {
        border: none; }

/*------ WAVE ANIMATION -----*/
.wave_bg {
  opacity: 0.2;
  box-shadow: 0 2px 30px rgba(0, 0, 0, 0.2);
  background: #fbfcee;
  position: relative;
  transform: translate3d(0, 0, 0); }

.wave {
  opacity: .4;
  position: absolute;
  top: 3%;
  left: 50%;
  background: #0af;
  width: 500px;
  height: 500px;
  margin-left: -250px;
  margin-top: -250px;
  transform-origin: 50% 48%;
  border-radius: 43%;
  animation: drift 5000ms infinite linear;
  animation-delay: 0s; }

.wave.-three {
  animation: drift 7000ms infinite linear;
  animation-delay: 0s; }

.wave.-two {
  animation: drift 9000ms infinite linear;
  opacity: .1;
  background: yellow;
  animation-delay: 0s; }

.wave_bg:after {
  content: '';
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, #ee88aa, rgba(221, 238, 255, 0) 80%, rgba(255, 255, 255, 0.5));
  z-index: 11;
  transform: translate3d(0, 0, 0);
  animation-delay: 0s; }

.title_wave_bg {
  opacity: 0.2;
  box-shadow: 0 2px 30px rgba(0, 0, 0, 0.2);
  background: #fbfcee;
  position: absolute;
  top: 27px;
  left: 50%;
  z-index: 0;
  transform: translate3d(0, 0, 0); }
  @media screen and (min-width: 769px) {
    .title_wave_bg {
      display: none; } }

.title_wave {
  opacity: .4;
  position: absolute;
  top: 3%;
  left: 50%;
  background: #ff0000;
  width: 80px;
  height: 80px;
  margin-left: -40px;
  margin-top: -40px;
  transform-origin: 50% 48%;
  border-radius: 43%;
  animation: drift 3000ms infinite linear; }

.title_wave.-three {
  animation: drift 5000ms infinite linear; }

.title_wave.-two {
  animation: drift 7000ms infinite linear;
  opacity: .1;
  background: #999; }

.title_wave_bg:after {
  content: '';
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, #ee88aa, rgba(221, 238, 255, 0) 80%, rgba(255, 255, 255, 0.5));
  z-index: 11;
  transform: translate3d(0, 0, 0); }

/*------ WAVE ANIMATION -----*/
/*----- SCROLL ANIMATION -----*/
.hero_scroll {
  position: absolute;
  bottom: 0px;
  left: 50%;
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none; }
  @media screen and (max-width: 768px) {
    .hero_scroll {
      bottom: -15px; } }

.hero_scroll {
  padding-top: 60px;
  margin-left: -28px;
  color: #000;
  font-size: 10px; }

.hero_scroll span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 30px;
  height: 50px;
  margin-left: -15px;
  border: 2px solid #000;
  border-radius: 50px;
  box-sizing: border-box; }

.hero_scroll span::before {
  position: absolute;
  top: 10px;
  left: 50%;
  content: '';
  width: 6px;
  height: 6px;
  margin-left: -3px;
  background-color: #000;
  border-radius: 100%;
  -webkit-animation: sdb 2s infinite;
  animation: sdb 2s infinite;
  box-sizing: border-box; }

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0; }
  40% {
    opacity: 1; }
  80% {
    -webkit-transform: translate(0, 20px);
    opacity: 0; }
  100% {
    opacity: 0; } }
@keyframes sdb {
  0% {
    transform: translate(0, 0);
    opacity: 0; }
  40% {
    opacity: 1; }
  80% {
    transform: translate(0, 20px);
    opacity: 0; }
  100% {
    opacity: 0; } }
/*----- SCROLL ANIMATION -----*/
@keyframes drift {
  0% {
    transform: rotate(0deg); }
  25% {
    transform: rotate(90deg); }
  50% {
    transform: rotate(180deg); }
  75% {
    transform: rotate(270deg); }
  100% {
    transform: rotate(360deg); } }
@keyframes shrink {
  100% {
    height: 0; } }
@keyframes bgZoom {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(1.1); } }
@keyframes slideIn {
  0% {
    transform: translateY(50px);
    opacity: 0; }
  100% {
    transform: translateY(0px);
    opacity: 1; } }
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes typo {
  0% {
    opacity: 0.1; }
  100% {
    opacity: 1; } }
@keyframes zoomOut {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(0); } }
/*----- Slick js -----*/
.slick-slider {
  margin: 0;
  padding: 0; }

.slick-slider .slick-list {
  width: 100vw;
  height: 100vh; }

.slick-slider2 {
  margin: 0;
  padding: 0; }

.slick-slider2 .slick-list2 {
  width: 100%;
  height: 115px; }

.title_1 {
  background: #0092da; }

.title_2 {
  background: #fff100; }

.hero_contents_title {
  width: 100%;
  text-align: center;
  position: absolute;
  z-index: 100;
  height: 115px; }

@media screen and (max-width: 768px) {
  .hero_contents_title {
    height: 70px; } }
.slick-slide img {
  display: inline-block; }

.slick-prev, .slick-next {
  z-index: 100; }

.slick-prev {
  left: 20px; }

.slick-next {
  right: 20px; }

.slick-prev:before, .slick-next:before {
  color: #000; }

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