@charset "UTF-8";
html {
  font-size: 62.5%; }

body {
  font-family: "游ゴシック体",YuGothic,"游ゴシック Medium","Yu Gothic Medium","游ゴシック","Yu Gothic","meiryo",sans-serif;
  letter-spacing: .1em;
  font-size: 1.6rem;
  font-feature-settings: "palt"; }

a {
  color: #000; }

img {
  max-width: 100%; }

strong {
  font-size: 1.1em; }

sup {
  font-size: .45em;
  vertical-align: top; }

.wrap {
  width: 100%;
  overflow-x: hidden;
  padding-top: 675px; }
  @media screen and (max-width: 768px) {
    .wrap {
      padding-top: 295px; } }

@media screen and (min-width: 769px) {
  .is_sp {
    display: none !important; }

  .is_pc {
    display: block; } }
@media screen and (max-width: 768px) {
  .is_sp {
    display: block; }

  .is_pc {
    display: none !important; } }
.serif {
  font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",'Noto Serif JP',serif; }

.container {
  width: 96%;
  max-width: 1024px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .container {
      width: 92%; } }

.upper {
  text-transform: uppercase; }

.label {
  display: inline-block;
  padding: .2em 1em;
  border-radius: 1.5em;
  background: #000;
  color: #fff;
  font-size: 1.7rem; }

.text-center {
  text-align: center; }

.flex {
  display: flex; }
  .flex__item {
    -webkit-flex: 1;
    flex: 1; }
  .flex__1 {
    width: 10%; }
    @media screen and (max-width: 768px) {
      .flex__1 {
        width: 100%; } }
  .flex__2 {
    width: 20%; }
    @media screen and (max-width: 768px) {
      .flex__2 {
        width: 100%; } }
  .flex__3 {
    width: 30%; }
    @media screen and (max-width: 768px) {
      .flex__3 {
        width: 100%; } }
  .flex__4 {
    width: 40%; }
    @media screen and (max-width: 768px) {
      .flex__4 {
        width: 100%; } }
  .flex__5 {
    width: 50%; }
    @media screen and (max-width: 768px) {
      .flex__5 {
        width: 100%; } }
  .flex__6 {
    width: 60%; }
    @media screen and (max-width: 768px) {
      .flex__6 {
        width: 100%; } }
  .flex__7 {
    width: 70%; }
    @media screen and (max-width: 768px) {
      .flex__7 {
        width: 100%; } }
  .flex__8 {
    width: 80%; }
    @media screen and (max-width: 768px) {
      .flex__8 {
        width: 100%; } }

.cont-title {
  font-size: 3rem;
  letter-spacing: .2em;
  text-align: center;
  font-weight: 500;
  left: 0; }
  @media screen and (max-width: 768px) {
    .cont-title {
      font-size: 2rem; } }
  .cont-title::after {
    content: "";
    display: block;
    margin: 1.7rem auto 0 auto;
    width: 100%;
    height: 5px;
    background: url(../imgs/ico_hy.svg) no-repeat center/44px auto; }
    @media screen and (max-width: 768px) {
      .cont-title::after {
        margin-top: .5rem; } }

.btn {
  display: block;
  box-sizing: border-box; }
  .btn--apply {
    width: 48.8%;
    height: 9.7rem;
    margin: 8rem auto 0 auto;
    line-height: 9.7rem;
    font-size: 2rem;
    letter-spacing: .76em;
    border-radius: 5rem;
    background-color: transparent;
    border: #000 1px solid;
    text-decoration: none;
    text-align: center;
    background: url(../imgs/ico_left.svg) no-repeat 92% center/42px auto #fff;
    transition: .2s; }
    .btn--apply:hover {
      opacity: .6; }
    @media screen and (max-width: 768px) {
      .btn--apply {
        width: 30rem;
        height: 5.5rem;
        line-height: 5.5rem;
        font-size: 1.4rem; } }
  .btn--dl, .btn--mail {
    flex: 1;
    text-align: center;
    height: 12rem;
    margin-right: 1%;
    border: #000 1px solid;
    line-height: 12rem;
    font-size: 1.8rem;
    letter-spacing: .2rem;
    text-decoration: none;
    background: url(../imgs/ico_dl.png) no-repeat 92% center/40px auto #fff;
    transition: .2s; }
    .btn--dl:hover, .btn--mail:hover {
      opacity: .6; }
    @media screen and (max-width: 768px) {
      .btn--dl, .btn--mail {
        margin-right: 0;
        height: 6rem;
        line-height: 6rem;
        font-size: 1.2rem;
        background-size: 24px auto; } }
  .btn--mail {
    margin-right: 0;
    color: #fff;
    background: url(../imgs/ico_left_white.svg) no-repeat 93% center/54px auto #000; }
    @media screen and (max-width: 768px) {
      .btn--mail {
        margin-top: .7rem;
        background-size: 36px auto; } }

.apply-btns {
  justify-content: space-between;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .apply-btns {
      flex-direction: column;
      width: 80%;
      max-width: 300px; } }

.sp_entry {
  width: 100%;
  padding: 1.5em 0;
  text-align: center; }
  .sp_entry a {
    letter-spacing: .1em;
    text-decoration: underline;
    color: #c27386; }
  @media screen and (max-width: 768px) {
    .sp_entry {
      font-size: 1.6rem; } }

.acrobat {
  margin: 1em auto 2em auto;
  padding: 1em;
  border: #000 1px solid;
  background: #fff;
  font-size: 1.3rem; }
  @media screen and (max-width: 768px) {
    .acrobat {
      max-width: 300px;
      font-size: 1.2rem; } }
  .acrobat a {
    width: 160px;
    display: block;
    margin: 0 0 1em 0; }

.apply dl dt, .detail article h3 {
  position: relative;
  padding-left: 7.5rem;
  border-bottom: #000 1px solid;
  font-size: 2rem;
  line-height: 4.8rem;
  letter-spacing: .2em;
  font-weight: 500; }
  @media screen and (max-width: 768px) {
    .apply dl dt, .detail article h3 {
      line-height: 2.4rem;
      padding-left: 2rem;
      font-size: 1.5rem; } }
  .apply dl dt::before, .detail article h3::before {
    content: "";
    display: block;
    position: absolute;
    width: 7px;
    height: 100%;
    left: 5rem;
    background: #000; }
    @media screen and (max-width: 768px) {
      .apply dl dt::before, .detail article h3::before {
        height: 2.4rem;
        width: 3px;
        left: 1rem; } }

.carousel {
  position: fixed;
  top: -50px;
  height: 725px;
  width: 105%;
  left: -5%;
  z-index: 0; }
  @media screen and (max-width: 768px) {
    .carousel {
      height: 345px; } }
  .carousel__box img {
    width: 100%;
    height: 725px;
    object-fit: cover; }
    @media screen and (max-width: 768px) {
      .carousel__box img {
        height: 345px; } }
  .carousel__box .animated {
    animation-duration: 3s;
    animation-delay: 0; }
  .carousel__box .fadeOut {
    animation-name: fadeOut; }
@keyframes fadeOut {
  0% {
    opacity: 1; }
  70% {
    opacity: 0; }
  100% {
    opacity: 0;
    transform: translate(5%, 5%); } }
  .carousel .owl-theme .owl-nav.disabled + .owl-dots {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%); }
    @media screen and (max-width: 768px) {
      .carousel .owl-theme .owl-nav.disabled + .owl-dots {
        width: 100%;
        bottom: 13px;
        margin-left: 2%; } }
    @media screen and (max-width: 768px) {
      .carousel .owl-theme .owl-nav.disabled + .owl-dots .owl-dot {
        width: 20%; } }
    .carousel .owl-theme .owl-nav.disabled + .owl-dots .owl-dot span {
      width: 90px;
      height: 4px;
      border-radius: 2px;
      opacity: .4;
      background: #fff; }
      @media screen and (max-width: 768px) {
        .carousel .owl-theme .owl-nav.disabled + .owl-dots .owl-dot span {
          width: 90%; } }
    .carousel .owl-theme .owl-nav.disabled + .owl-dots .owl-dot.active span {
      background: #fff;
      opacity: 1; }
  .carousel__txt {
    position: absolute;
    height: 400px;
    width: 90%;
    max-width: 980px;
    top: 160px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 100; }
    @media screen and (max-width: 768px) {
      .carousel__txt {
        width: 59.3%;
        max-width: 240px;
        top: 65px;
        left: 9%;
        transform: none;
        height: auto; } }
    .carousel__txt .label {
      margin-left: .5em; }
      @media screen and (max-width: 768px) {
        .carousel__txt .label {
          font-size: 1.4rem; } }
    .carousel__txt p {
      margin-top: 2.5rem;
      width: 413px; }
      @media screen and (max-width: 768px) {
        .carousel__txt p {
          margin: 0;
          width: 100%; } }
      .carousel__txt p img {
        display: block;
        width: 100%;
        height: auto;
        margin-top: 1rem; }
    .carousel__txt .btn--apply {
      margin-top: 2rem;
      margin-left: 1rem;
      width: 30rem;
      height: 6rem;
      border-radius: 30px;
      line-height: 6rem;
      letter-spacing: .62em;
      font-size: 1.4rem;
      border: none;
      box-shadow: 0 3px 13px rgba(0, 0, 0, 0.35); }
      @media screen and (max-width: 768px) {
        .carousel__txt .btn--apply {
          width: 22.2rem;
          height: 4rem;
          margin-top: 1rem;
          font-size: 1.2rem;
          line-height: 4rem;
          background-size: 3rem auto; } }

header {
  width: 100%;
  height: 14.4rem;
  background: #fff;
  position: relative;
  z-index: 200; }
  @media screen and (max-width: 768px) {
    header {
      height: 7rem; } }
  header.fixed {
    position: fixed;
    top: 0;
    z-index: 1000; }
  header .container {
    box-sizing: border-box;
    max-width: 1500px;
    float: right;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: relative; }
    @media screen and (max-width: 1600px) {
      header .container {
        margin-left: 0; } }
    @media screen and (max-width: 768px) {
      header .container {
        width: 100%;
        padding: 0; } }
  header h1 {
    width: 12%;
    height: 14.4rem;
    margin-right: 6%;
    display: flex;
    align-items: center;
    position: absolute;
    left: 0; }
    @media screen and (max-width: 768px) {
      header h1 {
        width: 26.6%;
        height: 7rem;
        margin-left: 6%;
        margin-right: auto;
        max-width: 12rem; } }
    header h1 img {
      width: 100%; }
  header nav {
    box-sizing: content-box;
    width: 62%;
    margin: auto;
    padding-right: 3%;
    padding-left: 18%;
    max-width: 78rem;
    display: flex;
    align-items: center;
    justify-content: flex-end; }
    @media screen and (max-width: 768px) {
      header nav {
        display: none; } }
    header nav a {
      box-sizing: content-box;
      padding: 1em 0;
      margin-right: 3.5%;
      font-size: 1.6rem;
      text-decoration: none;
      font-weight: bold;
      position: relative; }
      @media (max-width: 1280px) and (min-width: 768px) {
        header nav a {
          margin-right: 2.5%;
          font-size: 1.3rem; } }
      header nav a:not(.ico)::after {
        content: "";
        display: block;
        width: 100%;
        height: 2px;
        background: transparent;
        position: absolute;
        bottom: .7em;
        transition: .2s; }
      header nav a:hover::after {
        background: #000; }
      header nav a img {
        width: 2rem;
        min-width: 2rem;
        height: auto; }
  header .btns {
    width: 22.5%;
    height: 14.4rem;
    display: flex;
    right: 0; }
    @media screen and (max-width: 768px) {
      header .btns {
        width: 49.5%;
        min-width: 3.75rem;
        height: 7rem;
        justify-content: flex-end; } }
    header .btns .entry {
      width: 62%;
      height: 100%;
      display: flex;
      align-items: center;
      background: #313131;
      text-align: center; }
      @media screen and (max-width: 768px) {
        header .btns .entry {
          width: 63.3%;
          max-width: 12.3rem;
          min-width: 11.6rem; } }
      header .btns .entry img {
        width: 80%;
        height: auto;
        margin: 0 auto; }
    header .btns .pagetop,
    header .btns .menu {
      width: 38%;
      height: 100%;
      display: flex;
      align-items: center;
      background: #000;
      text-align: center; }
      @media screen and (max-width: 768px) {
        header .btns .pagetop,
        header .btns .menu {
          width: 6.7rem;
          max-width: 6.7rem;
          min-width: 6.9rem; } }
      header .btns .pagetop img,
      header .btns .menu img {
        width: 60%;
        height: auto;
        margin: 0 auto; }
  header .js-spnavi {
    display: none;
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    z-index: 1000; }
  header .sp-navi {
    display: flex;
    flex-direction: row-reverse;
    width: 100%;
    height: 100vh; }
    header .sp-navi__panel {
      width: 45%;
      height: 100vh;
      box-sizing: border-box;
      padding: 2.7rem 3% 2.7rem 6%;
      background: #fff; }
      header .sp-navi__panel > img:first-child {
        width: 82%;
        margin-bottom: 2.5rem; }
      header .sp-navi__panel a {
        display: block;
        margin: .2rem;
        padding: .5rem 0;
        font-size: 1.3rem;
        letter-spacing: .2em;
        font-weight: bold;
        text-decoration: none; }
      header .sp-navi__panel .sns-btns {
        display: flex;
        justify-content: center;
        margin-top: 1rem;
        margin-right: 10%; }
        header .sp-navi__panel .sns-btns a {
          padding: 1rem; }
          header .sp-navi__panel .sns-btns a img {
            width: 1.5rem;
            height: 1.5rem; }
      header .sp-navi__panel .entry {
        margin-top: 2.6rem;
        padding: 1rem;
        margin-right: 10%;
        display: block;
        border-radius: .5rem;
        background: #313131; }
        header .sp-navi__panel .entry img {
          width: 100%;
          margin: 0;
          padding: 0; }
    header .sp-navi__bg {
      background: rgba(0, 0, 0, 0.9);
      width: 55%;
      position: relative; }
      header .sp-navi__bg img {
        position: absolute;
        right: 1.5rem;
        top: 1.5rem;
        width: 3rem;
        transform: rotate(45deg); }

.top {
  position: relative;
  padding-bottom: 19rem;
  background: url(../imgs/top_bg.jpg) center;
  z-index: 100; }
  @media screen and (max-width: 768px) {
    .top {
      padding-bottom: 5rem; }
      .top .flex {
        flex-direction: column-reverse; }
      .top article {
        max-width: 35rem;
        margin: 0 auto; } }
  .top h2 {
    margin-top: 40rem;
    font-size: 3rem;
    letter-spacing: .2em;
    font-weight: normal;
    line-height: 1.483;
    white-space: nowrap; }
    @media screen and (max-width: 768px) {
      .top h2 {
        margin-top: 3.25rem;
        font-size: 2rem;
        text-align: center; } }
  .top p {
    margin-top: 5rem;
    letter-spacing: .2em;
    line-height: 2.1875; }
    @media screen and (max-width: 768px) {
      .top p {
        margin-top: 1.5rem;
        font-size: 1.2rem; } }
  .top .artist {
    position: relative; }
    .top .artist .img {
      width: 61.7%;
      max-width: 37rem;
      margin: 12rem auto 0 auto; }
      @media screen and (max-width: 768px) {
        .top .artist .img {
          width: 50.2%;
          margin-top: 2rem; } }
    .top .artist .deco {
      width: 80%;
      height: auto;
      position: absolute;
      right: -25.6%;
      top: 36rem; }
      @media screen and (max-width: 768px) {
        .top .artist .deco {
          width: 53.3%;
          left: 47.7%;
          top: 80%; } }
  .top .formula {
    margin-top: 13.4rem;
    position: relative; }
    .top .formula__img {
      width: 85.9%;
      margin: 0 auto; }
      @media screen and (max-width: 768px) {
        .top .formula__img {
          width: 100%; } }
    .top .formula__deco {
      width: 24.8%;
      height: auto;
      position: absolute;
      left: -20%;
      top: 50%; }
      @media screen and (max-width: 768px) {
        .top .formula__deco {
          width: 41%;
          left: -5%;
          top: -80%; } }
    .top .formula p {
      font-size: 1.2rem;
      line-height: 1.3; }
  .top .sample {
    margin-top: 8rem; }
    @media screen and (max-width: 768px) {
      .top .sample {
        margin-top: 2.5rem; } }
    .top .sample li {
      width: 100%;
      padding: 2.5rem 5%;
      margin: 0 auto 5rem auto;
      max-width: 1000px;
      border-radius: 1rem;
      background: #fff; }
      @media screen and (max-width: 768px) {
        .top .sample li {
          padding: .5em 3%;
          margin-bottom: 1.5rem; } }
      .top .sample li h3 {
        letter-spacing: .2em; }
        @media screen and (max-width: 768px) {
          .top .sample li h3 {
            font-size: 1.2rem; } }
      .top .sample li .flex {
        justify-content: space-between;
        flex-direction: row;
        align-items: center; }
        .top .sample li .flex > .ope {
          -webkit-flex: 1;
          flex: 1;
          margin-top: -3rem; }
        .top .sample li .flex > figure {
          -webkit-flex: 3;
          flex: 3; }
          .top .sample li .flex > figure img {
            width: 90%;
            margin: 0 auto; }
          .top .sample li .flex > figure figcaption {
            margin-top: 1rem;
            text-align: center; }
            @media screen and (max-width: 768px) {
              .top .sample li .flex > figure figcaption {
                font-size: 1rem; } }
      .top .sample li .ico-x {
        transform: rotate(45deg); }
  .top .btn--apply {
    margin: 8rem auto 0 auto; }
    @media screen and (max-width: 768px) {
      .top .btn--apply {
        margin-top: 1.8rem; } }
  .top .deco-pine {
    position: absolute;
    top: 39rem;
    right: -1%;
    width: 26.3%; }
    @media screen and (max-width: 768px) {
      .top .deco-pine {
        width: 67%;
        right: -10%;
        top: 28%;
        max-width: 32rem; } }

.about {
  position: relative;
  z-index: 100;
  padding-bottom: 53.8rem;
  background: url(../imgs/about_bg_top.jpg) no-repeat center top/100% auto #fff; }
  @media screen and (max-width: 768px) {
    .about {
      padding-bottom: 33.5rem;
      background-size: 200% auto; }
      .about .ten {
        width: 4.25rem;
        height: auto;
        margin: auto;
        margin-bottom: 4.4rem;
        position: relative;
        z-index: 10; } }
  .about .flex {
    margin-top: 10rem; }
    @media screen and (max-width: 768px) {
      .about .flex {
        margin-top: 1.7rem; } }
    .about .flex p {
      line-height: 2.1875;
      margin-bottom: 8rem;
      margin-top: -1rem; }
      @media screen and (max-width: 768px) {
        .about .flex p {
          margin-top: 2rem;
          margin-bottom: 3.5rem;
          font-size: 1.2rem;
          line-height: 1.79; }
          .about .flex p:last-child {
            margin-bottom: 0; } }
  .about .container {
    padding: 19.4rem 0 0 0;
    position: relative; }
  .about .js-fade {
    position: absolute;
    opacity: 0;
    transition: 1s ease-in-out; }
    .about .js-fade.act {
      opacity: 1; }
  .about .deco1 {
    width: 18%;
    height: auto;
    top: -7rem;
    left: 1%; }
    @media screen and (max-width: 768px) {
      .about .deco1 {
        width: 45.8%;
        top: -3.5rem;
        left: 0;
        max-width: 150px; } }
  .about .deco2 {
    width: 14.3%;
    height: auto;
    top: 3.4rem;
    left: 21.5%;
    transition: 1s ease-in-out .5s; }
    @media screen and (max-width: 768px) {
      .about .deco2 {
        width: 37%;
        top: 2.5rem;
        left: 45.3%;
        max-width: 135px; } }
  .about .deco3 {
    width: 18.6%;
    bottom: 35.7rem;
    right: 10%; }
    @media screen and (max-width: 768px) {
      .about .deco3 {
        width: 42.6%;
        bottom: 17rem;
        right: 16.2%;
        max-width: 160px; } }
  .about .deco4 {
    width: 12%;
    bottom: 12.7rem;
    right: 43.2%; }
    @media screen and (max-width: 768px) {
      .about .deco4 {
        width: 28%;
        bottom: 15.5rem;
        right: 72.6%;
        max-width: 95px; } }
  .about .deco5 {
    width: 16%;
    bottom: 2rem;
    right: 23.2%; }
    @media screen and (max-width: 768px) {
      .about .deco5 {
        width: 36%;
        bottom: 3rem;
        left: 22.2%;
        max-width: 135px; } }
  .about .deco6 {
    width: 16%;
    bottom: 5.2rem;
    right: 0; }
    @media screen and (max-width: 768px) {
      .about .deco6 {
        width: 33.2%;
        bottom: 4.3rem;
        right: 0;
        max-width: 130px; } }
  .about .deco7 {
    width: 11.6%;
    bottom: 20rem;
    right: 30.5%;
    transition: 1s ease-in-out 1s; }
    @media screen and (max-width: 768px) {
      .about .deco7 {
        width: 26%;
        bottom: 12.4rem;
        right: 57.6%;
        max-width: 100px; } }

.crafts {
  position: relative;
  z-index: 100;
  background: url(../imgs/about_bg_bottom.jpg) no-repeat center bottom/100% #fff;
  padding-bottom: 23rem; }
  @media screen and (max-width: 768px) {
    .crafts {
      background: url(../imgs/about_bg_bottom.jpg) no-repeat 60% bottom/250% #fff;
      padding-bottom: 10rem; } }
  .crafts > h2 + p {
    margin-top: 3.6rem;
    line-height: 1.56; }
    @media screen and (max-width: 768px) {
      .crafts > h2 + p {
        margin-top: 1.5rem;
        font-size: 1.2rem; } }
  .crafts .flex {
    flex-wrap: wrap;
    margin-top: 5rem;
    justify-content: space-between; }
    @media screen and (max-width: 768px) {
      .crafts .flex {
        margin-top: 2.8rem; } }
    .crafts .flex__5 {
      width: 49.5%;
      margin-bottom: 2.3rem;
      position: relative; }
      .crafts .flex__5 img {
        width: 100%;
        transition: .2s;
        max-width: 1000px; }
      .crafts .flex__5:hover img {
        opacity: .6; }
      @media screen and (max-width: 768px) {
        .crafts .flex__5 {
          width: 100%;
          margin-bottom: 1.2rem; } }
      .crafts .flex__5 .wraplink {
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        z-index: 10; }
      .crafts .flex__5 .text {
        padding: 1.7rem 1rem 2rem 1rem;
        color: #fff;
        background: #000;
        text-align: center; }
        @media screen and (max-width: 768px) {
          .crafts .flex__5 .text {
            padding: 1.4rem 1rem; } }
      .crafts .flex__5 h3 {
        font-size: 2rem;
        font-weight: 500;
        letter-spacing: .2em; }
        @media screen and (max-width: 768px) {
          .crafts .flex__5 h3 {
            font-size: 1.5rem; } }
      .crafts .flex__5 p {
        margin-top: 1rem;
        letter-spacing: .05em; }
        @media screen and (max-width: 768px) {
          .crafts .flex__5 p {
            margin-top: .5rem;
            font-size: 1rem; } }
  .crafts .btn--apply {
    max-width: 500px;
    background-color: transparent; }
    @media screen and (max-width: 768px) {
      .crafts .btn--apply {
        margin-top: 3.15rem; } }

.apply {
  position: relative;
  z-index: 100;
  padding: 16rem 0;
  background: url(../imgs/apply_bg.jpg) center/500px auto; }
  @media screen and (max-width: 768px) {
    .apply {
      padding-top: 6.5rem;
      padding-bottom: 5rem; } }
  .apply .container {
    margin-top: 7rem;
    max-width: 1000px; }
    @media screen and (max-width: 768px) {
      .apply .container {
        margin-top: 2.5rem; } }
  .apply dl {
    margin-bottom: 5rem; }
    @media screen and (max-width: 768px) {
      .apply dl {
        margin-bottom: 2.5rem; } }
    .apply dl dd {
      padding-left: 5rem;
      margin-top: 4rem;
      line-height: 1.56; }
      @media screen and (max-width: 768px) {
        .apply dl dd {
          padding-left: 1rem;
          margin-top: 2rem;
          line-height: 1.24;
          font-size: 1.2rem; } }
  .apply .flow {
    padding: 0 5% 4rem 5%;
    margin: 6rem auto 7.5rem auto;
    background: #fff;
    position: relative;
    min-height: 26.5rem; }
    @media screen and (max-width: 768px) {
      .apply .flow {
        margin-top: .5rem;
        margin-bottom: 2.5rem;
        padding-bottom: 2rem;
        min-height: 10px; } }
    .apply .flow::after {
      content: "";
      display: block;
      width: 100%;
      height: 5rem;
      position: absolute;
      bottom: -5rem;
      left: 0;
      background: url(../imgs/tri.svg) no-repeat center top/100% auto; }
      @media screen and (max-width: 768px) {
        .apply .flow::after {
          height: 2rem;
          bottom: -2rem; } }
    .apply .flow h3 {
      box-sizing: border-box;
      margin-left: -5.5%;
      margin-right: -5.5%;
      width: auto;
      padding: .5em;
      background: #778a79;
      color: #fff;
      font-weight: 600;
      font-size: 3rem;
      letter-spacing: .2rem; }
      @media screen and (max-width: 768px) {
        .apply .flow h3 {
          font-size: 1.5rem; } }
      .apply .flow h3 + p {
        margin-top: 2rem;
        font-size: 2rem;
        letter-spacing: .2em; }
        @media screen and (max-width: 768px) {
          .apply .flow h3 + p {
            font-size: 1.2rem;
            text-align: left;
            margin-bottom: 1.2rem; } }
    .apply .flow p {
      letter-spacing: .2em;
      padding-left: 1rem;
      text-indent: -1rem; }
      .apply .flow p.serif {
        margin-bottom: 2rem; }
      @media screen and (max-width: 768px) {
        .apply .flow p {
          font-size: 1.2rem;
          max-width: calc(100% - 8.5rem); }
          .apply .flow p.is_sp_w100 {
            max-width: 100%; } }
    .apply .flow .apply-btns {
      margin-top: 2rem;
      margin-bottom: 0; }
      @media screen and (max-width: 768px) {
        .apply .flow .apply-btns {
          width: 100%; } }
    .apply .flow .line {
      justify-content: center;
      align-items: center;
      margin-top: 2rem; }
      .apply .flow .line img {
        height: 100px;
        width: auto;
        padding: 0 .5rem; }
        @media screen and (max-width: 768px) {
          .apply .flow .line img {
            height: 50px; } }
      .apply .flow .line span {
        line-height: 100px;
        padding: 0 .5rem; }
        @media screen and (max-width: 768px) {
          .apply .flow .line span {
            padding-left: 1.5rem;
            line-height: 50px; } }
    .apply .flow .flowicon {
      display: block;
      width: 15.7rem;
      height: 15.7rem;
      position: absolute;
      right: 5%;
      bottom: 1.5rem;
      border-radius: 50%;
      border: #cd6380 1px solid;
      color: #cd6380;
      text-align: center; }
      @media screen and (max-width: 768px) {
        .apply .flow .flowicon {
          width: 7.6rem;
          height: 7.6rem;
          right: 3%;
          top: 4.5rem; } }
      .apply .flow .flowicon span {
        display: block;
        width: 100%;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem;
        letter-spacing: .2em; }
        @media screen and (max-width: 768px) {
          .apply .flow .flowicon span {
            padding-left: .2rem;
            font-size: 1.2rem; } }
    .apply .flow__deco {
      position: absolute;
      width: 18rem;
      height: auto;
      bottom: -5rem;
      right: 8%; }
      @media screen and (max-width: 768px) {
        .apply .flow__deco {
          display: none; } }
    .apply .flow:last-of-type::after {
      display: none; }
    .apply .flow:last-of-type h3 {
      background: #cd6380; }
  @media screen and (max-width: 768px) {
    .apply .apply-btns {
      width: 90%; } }

.detail {
  position: relative;
  z-index: 100;
  padding: 21rem 0 22rem 0;
  background: url(../imgs/detail_sakura_top.png) no-repeat right -470px/45% auto, url(../imgs/detail_sakura_left.png) no-repeat left 1500px/25% auto, url(../imgs/detail_sakura_left.png) no-repeat left 5400px/25% auto, url(../imgs/detail_sakura_left.png) no-repeat left 9600px/25% auto, url(../imgs/detail_sakura_left.png) no-repeat left 13600px/25% auto, url(../imgs/detail_sakura_right.png) no-repeat right 3300px/25% auto, url(../imgs/detail_sakura_right.png) no-repeat right 11400px/25% auto, url(../imgs/detail_bg.jpg); }
  @media screen and (max-width: 768px) {
    .detail {
      padding: 5rem 0;
      background: url(../imgs/detail_sakura_top.png) no-repeat 140% -1rem/70% auto, url(../imgs/detail_bg.jpg) repeat center/250px auto;
      background-attachment: scroll,fixed; }
      .detail h2 {
        margin-bottom: 2.5rem; } }
  .detail article {
    max-width: 1000px;
    width: 96%;
    margin: 5rem auto;
    padding: 5rem 0 2rem 0;
    box-sizing: border-box;
    background: #f7f4f3;
    border-radius: 1rem; }
    @media screen and (max-width: 768px) {
      .detail article {
        width: 95%;
        padding-top: .7rem;
        padding-bottom: .7rem;
        margin: .5rem auto;
        border-radius: .5rem; }
        .detail article.open {
          padding-bottom: 1.5rem; }
          .detail article.open h3 {
            border-bottom: #000 1px solid; }
            .detail article.open h3::after {
              background: url(../imgs/ico_hy.svg) no-repeat center/100% auto; }
        .detail article .hide {
          display: none; } }
    .detail article .hide > * {
      padding: 0 5%; }
    @media screen and (max-width: 768px) {
      .detail article h3 {
        height: 3rem;
        line-height: 3rem;
        font-size: 1.5rem;
        border: none; }
        .detail article h3::before {
          height: 3rem; }
        .detail article h3::after {
          content: "";
          display: block;
          width: 2rem;
          height: 3rem;
          position: absolute;
          top: 0;
          right: 5%;
          background: url(../imgs/ico_plus.png) no-repeat center/100% auto; } }
    .detail article .flex {
      margin-top: 4rem;
      justify-content: space-between; }
      @media screen and (max-width: 768px) {
        .detail article .flex {
          margin-top: 1rem; } }
      .detail article .flex > * {
        width: 49%; }
    .detail article h4 {
      margin-top: 3.6rem;
      text-align: center;
      font-weight: 500;
      font-size: 2rem;
      letter-spacing: .2em;
      position: relative; }
      @media screen and (max-width: 768px) {
        .detail article h4 {
          margin-top: 1rem;
          font-size: 1.5rem; } }
      .detail article h4 span {
        display: inline-block;
        position: relative;
        width: 14rem;
        padding: 0 .5em;
        z-index: 10;
        background: #f7f4f3; }
        @media screen and (max-width: 768px) {
          .detail article h4 span {
            width: 13rem; } }
      .detail article h4::before {
        content: "";
        display: block;
        position: absolute;
        height: 1px;
        background: #000;
        top: 50%;
        left: 5%;
        right: 5%; }
      .detail article h4 + p {
        width: 96%;
        margin: auto;
        margin-top: 1rem; }
        @media screen and (max-width: 768px) {
          .detail article h4 + p {
            margin-top: .5rem;
            font-size: 1.2rem; } }
    .detail article .artist {
      width: 95%;
      margin: 4rem auto 0 auto;
      padding: 2em 2%;
      background: #fff; }
      @media screen and (max-width: 768px) {
        .detail article .artist {
          padding-top: 1.2rem;
          padding-bottom: 1.5rem; } }
      .detail article .artist h4 {
        margin-top: 0;
        margin-bottom: 3rem; }
        @media screen and (max-width: 768px) {
          .detail article .artist h4 {
            margin-bottom: 1.5rem; } }
        .detail article .artist h4::before {
          width: 100%;
          left: 0;
          right: 0; }
        .detail article .artist h4 span {
          background: #fff; }
      .detail article .artist .flex {
        margin-top: .5rem;
        justify-content: space-between;
        align-items: flex-start; }
        @media screen and (max-width: 768px) {
          .detail article .artist .flex {
            flex-wrap: wrap; } }
        .detail article .artist .flex__44 {
          width: 49%;
          display: flex;
          align-items: flex-end; }
          @media screen and (max-width: 768px) {
            .detail article .artist .flex__44 {
              width: 100%; }
              .detail article .artist .flex__44 img {
                width: 61%;
                margin-right: 2%; } }
        .detail article .artist .flex__item {
          padding-left: 2rem; }
          @media screen and (max-width: 768px) {
            .detail article .artist .flex__item {
              width: 100%;
              padding-left: 0;
              margin-top: 1.5rem; } }
          .detail article .artist .flex__item .label {
            padding: 0 1em;
            border-radius: 0;
            font-weight: 700; }
            @media screen and (max-width: 768px) {
              .detail article .artist .flex__item .label {
                font-size: 1.2rem; } }
          .detail article .artist .flex__item .name {
            padding: 0 .5em;
            font-size: 2rem;
            letter-spacing: .2em; }
            @media screen and (max-width: 768px) {
              .detail article .artist .flex__item .name {
                font-size: 1.2rem; } }
          .detail article .artist .flex__item p {
            margin-bottom: 1.66em;
            font-size: 1.5rem;
            line-height: 1.66; }
            @media screen and (max-width: 768px) {
              .detail article .artist .flex__item p {
                margin-bottom: .5rem;
                font-size: 1.2rem; } }
        .detail article .artist .flex > img, .detail article .artist .flex > li, .detail article .artist .flex > figure {
          -webkit-flex: 1;
          flex: 1;
          margin-right: 1%; }
          @media screen and (max-width: 768px) {
            .detail article .artist .flex > img, .detail article .artist .flex > li, .detail article .artist .flex > figure {
              -webkit-flex: none;
              flex: none;
              width: 49.5%;
              margin: 0 0 1% 0; } }
          .detail article .artist .flex > img:last-child, .detail article .artist .flex > li:last-child, .detail article .artist .flex > figure:last-child {
            margin-right: 0; }
          .detail article .artist .flex > img > *, .detail article .artist .flex > li > *, .detail article .artist .flex > figure > * {
            padding: 0 3%; }
          .detail article .artist .flex > img p, .detail article .artist .flex > li p, .detail article .artist .flex > figure p {
            margin-bottom: 1rem;
            letter-spacing: 0.02em; }
          .detail article .artist .flex > img img, .detail article .artist .flex > li img, .detail article .artist .flex > figure img {
            width: 100%;
            padding: 0;
            max-width: 1000px; }
    .detail article h5 {
      margin: 2rem 0 0 0;
      font-size: 1.6rem;
      font-weight: 500; }
      @media screen and (max-width: 768px) {
        .detail article h5 {
          font-size: 1.2rem; } }
    .detail article .youtube {
      width: 100%;
      overflow: hidden; }
      @media screen and (max-width: 768px) {
        .detail article .youtube {
          width: 37%; } }
      @media screen and (max-width: 768px) {
        .detail article .youtube h5 {
          margin-top: 0; } }
      .detail article .youtube div {
        padding: .5rem 2%;
        border: #d2d2d2 1px solid;
        border-radius: .5em; }
        @media screen and (max-width: 768px) {
          .detail article .youtube div {
            padding: .3rem;
            border-radius: .3rem; } }
      .detail article .youtube iframe {
        display: block;
        width: 98%;
        max-width: 300px;
        margin: 0 auto;
        height: 16rem; }
        @media screen and (max-width: 768px) {
          .detail article .youtube iframe {
            height: 24vw; } }
    .detail article h6 {
      margin: .3rem 0 1rem 0;
      font-size: 2rem;
      font-weight: 500;
      letter-spacing: .02em;
      line-height: 1.15;
      letter-spacing: 0; }
      @media screen and (max-width: 768px) {
        .detail article h6 {
          margin-top: 0;
          margin-bottom: .3rem;
          font-size: 1.25rem; } }
      .detail article h6 .kana {
        display: block;
        font-size: 1.2rem;
        color: #9d9d9d;
        font-weight: 600;
        line-height: 2; }
        @media screen and (max-width: 768px) {
          .detail article h6 .kana {
            font-size: 1rem;
            line-height: 1.25;
            margin-bottom: .5rem; } }
    .detail article .text-small {
      font-size: 1.4rem;
      line-height: 1.85; }
    .detail article .price {
      margin-top: 3rem;
      padding: 0 2.5% 3rem  2.5%;
      border: #000 1px solid;
      border-radius: 1rem; }
      @media screen and (max-width: 768px) {
        .detail article .price {
          margin-top: 2.5rem;
          padding-bottom: 1rem; } }
      .detail article .price__title {
        display: flex;
        margin-top: 2.5rem; }
        @media screen and (max-width: 768px) {
          .detail article .price__title {
            margin-top: 1.1rem;
            flex-direction: column; } }
        .detail article .price__title h5 {
          margin-top: 0;
          white-space: nowrap; }
          @media screen and (max-width: 768px) {
            .detail article .price__title h5 {
              font-size: 1.2rem; } }
        .detail article .price__title p {
          margin-top: 0;
          margin-left: 1em;
          font-size: 1.4rem;
          letter-spacing: .2em;
          margin-top: 2px; }
          @media screen and (max-width: 768px) {
            .detail article .price__title p {
              margin-top: .2rem;
              margin-left: 0;
              font-size: 1rem; } }
      .detail article .price .flex li .img {
        padding: 0; }
        .detail article .price .flex li .img img {
          width: 100%;
          height: 200px;
          object-fit: cover; }
          @media screen and (max-width: 768px) {
            .detail article .price .flex li .img img {
              height: auto;
              object-fit: contain; } }
      .detail article .price .flex li .txt {
        padding: 0 2%; }
      .detail article .price .flex li .text-small {
        padding: 0 2%;
        letter-spacing: 0;
        text-align: justify; }
      @media screen and (max-width: 768px) {
        .detail article .price .flex {
          flex-direction: column; }
          .detail article .price .flex.styles {
            flex-direction: row; }
          .detail article .price .flex li {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            width: 100%; }
            .detail article .price .flex li .img {
              width: 42.5%;
              padding: 0;
              border: #d2d2d2 1px solid;
              display: flex;
              align-items: center; }
              .detail article .price .flex li .img img {
                width: 100%; }
            .detail article .price .flex li .txt {
              width: 56.5%; }
              .detail article .price .flex li .txt p:last-child {
                margin-bottom: 0; }
            .detail article .price .flex li .text-small {
              margin-top: .7rem;
              margin-bottom: 2rem;
              line-height: 1.25; }
            .detail article .price .flex li p {
              font-size: 1rem; } }
    .detail article h5.styles {
      width: 100%;
      padding-top: 1rem;
      border-top: #000 1px solid; }
    .detail article figcaption {
      font-size: 1.4rem; }
  @media screen and (max-width: 768px) {
    .detail .apply-btns {
      margin-top: 5rem;
      margin: 2.5rem auto 0 auto; }
    .detail .sp_entry {
      width: 90%;
      margin: auto; } }

.sns {
  position: relative;
  z-index: 100;
  padding: 16.5rem 0;
  background: url(../imgs/sns_bg.jpg) no-repeat center/cover; }
  @media screen and (max-width: 768px) {
    .sns {
      padding: 10.5rem 0;
      background: url(../imgs/sns_bg_sp.jpg) no-repeat center/cover; } }
  .sns .flex {
    max-width: 1000px;
    justify-content: space-between; }
    @media screen and (max-width: 768px) {
      .sns .flex {
        flex-direction: column-reverse; } }
    .sns .flex__47 {
      width: 47.6%; }
      @media screen and (max-width: 768px) {
        .sns .flex__47 {
          width: 100%; } }
    .sns .flex h2 {
      font-weight: 500;
      color: #fff; }
      @media screen and (max-width: 768px) {
        .sns .flex h2 {
          font-size: 2rem; } }
  .sns__insta {
    padding-top: 4.5rem;
    background: url(../imgs/ico_insta_white.svg) no-repeat top center/2.75rem auto; }
    @media screen and (max-width: 768px) {
      .sns__insta {
        margin-top: 3rem;
        padding-top: 2.75rem; } }
  .sns__fb {
    padding-top: 4.5rem;
    background: url(../imgs/ico_fb_white.svg) no-repeat top center/2.75rem auto; }
    @media screen and (max-width: 768px) {
      .sns__fb {
        padding-top: 2.75rem; } }
  .sns .plugin {
    margin-top: 3.5rem;
    height: 47rem;
    overflow: hidden;
    box-sizing: content-box;
    padding: 3px;
    background: #fff; }
    .sns .plugin.insta {
      position: relative; }
      .sns .plugin.insta > a {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        z-index: 100; }
    .sns .plugin iframe {
      background: #fff;
      padding: 3px; }
    @media screen and (max-width: 768px) {
      .sns .plugin {
        margin-top: .5rem;
        height: auto;
        max-height: 100vw; } }

.cv {
  position: relative;
  z-index: 100;
  padding: 14rem 0;
  background: url(../imgs/cv_bg.jpg) no-repeat center/cover; }
  @media screen and (max-width: 768px) {
    .cv {
      padding: 4.75rem 0 4rem 0;
      background: url(../imgs/cv_bg_sp.jpg) no-repeat center/cover; } }
  .cv .sp_entry {
    width: 90%;
    margin: auto; }
    .cv .sp_entry a {
      color: #fff; }

footer {
  position: relative;
  z-index: 100;
  background: #fff;
  padding: 15rem 0 54rem 0; }
  @media screen and (max-width: 768px) {
    footer {
      padding: 5.25rem 0 50rem 0; } }
  footer > img {
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      footer > img {
        width: 15rem; } }
  footer .sns-btns {
    margin-top: 11rem; }
    @media screen and (max-width: 768px) {
      footer .sns-btns {
        margin-top: 7.5rem; } }
    footer .sns-btns i {
      font-size: 1.3rem;
      color: #9fa0a0;
      display: block;
      margin-bottom: 1rem; }
      @media screen and (max-width: 768px) {
        footer .sns-btns i {
          font-size: 1rem; } }
    footer .sns-btns img {
      height: 34px;
      width: auto;
      margin: 0 .5rem;
      display: inline-block; }
      @media screen and (max-width: 768px) {
        footer .sns-btns img {
          height: 25px; } }
  footer .logos {
    max-width: 1200px;
    margin-top: 23rem;
    flex-wrap: wrap;
    align-items: center; }
    @media screen and (max-width: 768px) {
      footer .logos {
        margin-top: 7rem; } }
    footer .logos span {
      width: 20%;
      margin-top: 5rem;
      text-align: center; }
      footer .logos span img {
        margin: 0 auto;
        height: 25px; }
        @media screen and (max-width: 768px) {
          footer .logos span img {
            height: 9px; } }
        footer .logos span img.kaga, footer .logos span img.gp {
          height: 60px; }
          @media screen and (max-width: 768px) {
            footer .logos span img.kaga, footer .logos span img.gp {
              height: 19px; } }
        footer .logos span img.suzuki {
          height: 58px; }
          @media screen and (max-width: 768px) {
            footer .logos span img.suzuki {
              height: 20px; } }
        footer .logos span img.nakajima {
          height: 23px; }
          @media screen and (max-width: 768px) {
            footer .logos span img.nakajima {
              height: 7px; } }
        footer .logos span img.nomura {
          height: 25px; }
          @media screen and (max-width: 768px) {
            footer .logos span img.nomura {
              height: 8px; } }
        footer .logos span img.hokuryo {
          height: 27px; }
          @media screen and (max-width: 768px) {
            footer .logos span img.hokuryo {
              height: 10px; } }
        footer .logos span img.matsubara {
          height: 45px; }
          @media screen and (max-width: 768px) {
            footer .logos span img.matsubara {
              height: 13px; } }
  footer .copyright {
    display: block;
    margin-top: 21rem;
    text-align: center;
    font-size: 1.3rem; }
    @media screen and (max-width: 768px) {
      footer .copyright {
        margin-top: 7.5rem;
        font-size: 1rem; } }

.result {
  padding: 13rem 0;
  background: url(../imgs/kumo.png) no-repeat center 50px/100% auto, url(../imgs/detail_bg.jpg); }
  @media screen and (max-width: 768px) {
    .result {
      padding: 5rem 0;
      background-size: 150% auto,250px auto; } }
  .result .image {
    margin-top: -4.2rem; }
    @media screen and (max-width: 768px) {
      .result .image {
        margin-top: -1rem; } }
  @media screen and (max-width: 768px) {
    .result p {
      font-size: 1.2rem;
      line-height: 1.79; } }
  .result .note {
    margin-top: 2.5rem; }
    .result .note p {
      margin-top: 1.5rem; }
  .result .border-box {
    margin-top: 2rem;
    padding: 1.5rem;
    border: #000 1px solid;
    background: #fff; }
    .result .border-box p {
      max-width: 740px;
      margin: 0 auto;
      overflow: hidden; }
      .result .border-box p span {
        white-space: nowrap; }
        @media screen and (max-width: 768px) {
          .result .border-box p span {
            float: left; } }

.case {
  padding: 13rem 0;
  background: url(../imgs/kumo2.png) no-repeat center 50px/100% auto, url(../imgs/case_bg.jpg); }
  @media screen and (max-width: 768px) {
    .case {
      padding: 5rem 0;
      background-size: 150% auto,250px auto;
      background: url(../imgs/kumo_sp.png) no-repeat center 25px/100% auto, url(../imgs/case_bg.jpg) repeat center/250px auto; } }
  .case .case__item {
    margin-top: 4.5rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    @media screen and (max-width: 768px) {
      .case .case__item {
        margin-top: 3rem; }
        .case .case__item + .case__item {
          margin-top: 0; } }
    .case .case__item > * {
      width: 32%;
      margin-bottom: 4.7rem; }
      @media screen and (max-width: 768px) {
        .case .case__item > * {
          min-height: 2.2rem;
          margin-bottom: 1.1rem; } }
      .case .case__item > * .name {
        display: block;
        text-align: center;
        margin-top: 1.5rem;
        font-size: 1.6rem;
        line-height: 1.25;
        white-space: nowrap; }
        @media screen and (max-width: 768px) {
          .case .case__item > * .name {
            margin-top: .5rem;
            font-size: 1rem;
            line-height: 1.37;
            letter-spacing: .2em; } }
      .case .case__item > * img {
        display: block;
        width: 100%; }
    @media screen and (min-width: 769px) {
      .case .case__item--s {
        margin-top: 2rem; }
        .case .case__item--s > * {
          width: 23.5%;
          margin-bottom: 2rem; }
          .case .case__item--s > * .name {
            min-height: 2em; } }

.flow-movie {
  margin: 4rem 0; }
  .flow-movie iframe {
    width: 100%;
    height: 45rem; }
    @media screen and (max-width: 768px) {
      .flow-movie iframe {
        height: 40vh; } }



        .iki_top_div{
          background: #fcfcfc;
        }

        .iki_bg{
          position: absolute;
          left: 0;
          top: 0;
          z-index: 100;
        }

        .iki_bg img{
          filter: none;
        }

        .iki_bg img.sp{
          display: none;
        }

        header#iki_top{
          width: 100%;
          height: auto;
          padding: 100px 0;
          background: none;
        }

        header#iki_top h1.iki_top_logo{
          text-align: center;
          position: static;
          width: auto;
          height: auto;
          display: block;
          margin: 0;
        }

        header#iki_top h1.iki_top_logo img{
          width: 7%;
          margin: 0 auto;
        }

        #iki_top{
          position: relative;
          z-index: 111;
        }

        #iki_top .top_content_inner{
          width: 80%;
          margin: 0 auto;
        }

        #iki_top .iki_top_content_box{
          display: flex;
          justify-content: space-between;
        }

        #iki_top .iki_top_content img{
          transition: all 0.3s ease 0s;
        }

        #iki_top .iki_top_content img:hover{
          transform: translateY(-5px);
          opacity: 0.9;
        }

        #iki_top .iki_top_content img.sp{
          display: none;
        }

        #iki_top .iki_top_content p{
          text-align: center;
          font-family: serif;
          font-weight: bold;
        }

        footer#iki_top{
          padding: 0 0 10px 0;
          background: #fcfcfc;
        }

        footer#iki_top .copyright{
          color: #C7C7C7;
          margin-top: 50px;
        }

        @media screen and (max-width: 768px){

          .iki_bg img.pc{
            display: none;
          }

          .iki_bg img.sp{
            display: inline;
            width: 100%;
            height: 350px;
          }

          header#iki_top h1.iki_top_logo{
            max-width: 100%;
          }

          #iki_top .iki_top_content img.pc{
            display: none;
          }

          #iki_top .iki_top_content img.sp{
            display: inline;
          }


        }

        @media screen and (max-width: 480px){

          .iki_bg img.sp{
            height: 600px;
          }

          header#iki_top{
            padding: 50px 0;
          }

          header#iki_top h1.iki_top_logo img{
            width: 20%;
          }

          #iki_top .iki_top_content_box{
            display: block;
          }

          #iki_top .iki_top_content_box .iki_top_content:first-child{
            margin-bottom: 50px;
          }


        }

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