@charset "UTF-8";
@import url("reset.css");
@import url("m_menu.css");
@import url("swiper-bundle.min.css");
S
html {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif,"游明朝体", "Yu Mincho", YuMincho;
  line-height: 2;
  position: relative; }

main {
  display: block; }

a img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease; }

a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-opacity: 0.7; }

/*ヘッダー*/
header {
  width: 100%;
  position: relative; }
  header .swiper h1 {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 1000; }
  header #header_inner {
    margin: 0 auto 0; }
    header #header_inner #top_menu {
      width: 100%; }
  header #top_contact {
    position: absolute;
    top: 50px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 1000; }
    header #top_contact #contact_menu {
      width: 470px;
      margin: 0 0 0 auto;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      header #top_contact #contact_menu a {
        display: block;
        width: 222px; }
        header #top_contact #contact_menu a:hover img {
          opacity: 1.0;
          filter: alpha(opacity=100);
          -moz-opacity: 1.0; }

/*メイン*/
.back01 {
  background-image: url("../img/top/back_b.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  padding: 5em 0; }

.back02 {
  border-top: 20px solid #00aab4;
  background: linear-gradient(rgba(0, 170, 180, 0.2), #fff);
  width: 100%;
  padding: 5em 0; }

.back03 {
  background-image: url("../img/top/back.jpg");
  background-position: center;
  background-repeat: repeat;
  background-size: 100% auto;
  padding: 8em 0; }

.back04 {
  background-image: url("../img/top/back01.png");
  background-size: 445px 730px;
  background-repeat: no-repeat;
  background-position: left top; }

.u-fade-type-up {
  transform: translateY(50px);
  opacity: 0; }

.u-fade-type-up.is-active {
  transition: .6s;
  transform: translateY(0);
  opacity: 1; }

.back05 {
  width: 100%;
  margin: 8em 0 0;
  padding: 8em 0 0;
  border-top: 1px solid #666;
  background: linear-gradient(#fff, rgba(0, 170, 180, 0.2)); }

#about {
  margin: 0 auto; }
  #about h2 {
    width: 70%;
    margin: 0 auto 2em; }

#paper {
  margin: 0 auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  #paper figure {
    width: 48%; }

#top_info {
  margin: 2.5em auto; }
  #top_info h2 {
    color: #00aab4;
    font-size: 175%;
    font-weight: bold; }
  #top_info #inner {
    margin: 1em 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #top_info #inner figure {
      width: 48%; }
      #top_info #inner figure:nth-child(n+3) {
        margin: 2em 0 0; }

#sns {
  margin: 2.5em auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  #sns .chirashi {
    width: 48%;
    margin: 0 0 2.5em; }
    #sns .chirashi dl dt {
      color: #00aab4;
      font-size: 175%;
      font-weight: bold; }
    #sns .chirashi dl dd {
      margin: 1em 0 0; }
  #sns .chirashi_omote {
    width: 48%;
    margin: 0 0 2.5em; }
    #sns .chirashi_omote img {
      width: 100%; }
  #sns .chirashi_ura {
    width: 48%;
    margin: 0 0 2.5em; }
    #sns .chirashi_ura img {
      width: 100%; }
  #sns .twitter {
    width: 48%;
    margin: 0; }
    #sns .twitter dl dt {
      color: #00aab4;
      font-size: 175%;
      font-weight: bold; }
    #sns .twitter dl dd {
      margin: 1em 0 0; }
  #sns .instagram {
    width: 48%;
    margin: 2em 0 0; }
    #sns .instagram dl dt {
      color: #00aab4;
      font-size: 175%;
      font-weight: bold; }
    #sns .instagram dl dd {
      margin: 1em 0 0; }
      #sns .instagram dl dd ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        #sns .instagram dl dd ul li {
          width: 31.333%; }
          #sns .instagram dl dd ul li:nth-child(n+4) {
            margin: 1em 0 0; }
      #sns .instagram dl dd .btn {
        margin: 3.25em auto 0;
        width: 250px; }

#product {
  margin: 0 auto; }
  #product h2 {
    font-size: 175%;
    color: #00aab4;
    text-align: center;
    width: 390px;
    padding: 0.5em 0;
    margin: 0 auto;
    background-color: #fff;
    border-radius: 25px;
    border: 1px solid #00aab4; }
  #product ul {
    margin: 3em 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #product ul li:nth-child(1) {
      width: 41%; }
    #product ul li:nth-child(2) {
      width: 57%;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #product ul li:nth-child(2) figure {
        width: 49%; }

#obsession01 {
  width: 96%;
  padding: 0 2%;
  margin: 0;
  padding: 154px 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between; }
  #obsession01 .single-item {
    width: 627px; }
  #obsession01 .point_inner {
    width: 48%; }
    #obsession01 .point_inner h2 {
      font-size: 175%;
      color: #ff7896;
      margin: 0 0 1em; }
    #obsession01 .point_inner p {
      font-size: 125%; }
      #obsession01 .point_inner p a {
        display: block;
        width: 200px;
        margin: 2em 0 0; }

#obsession02 {
  width: 100%;
  margin: 0;
  padding: 8em 0 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between; }
  #obsession02 .multiple-list {
    width: 48%; }
  #obsession02 .multiple-item {
    display: block;
    width: 250px;
    margin: 0 0 0 auto; }
  #obsession02 .is-active .u-fade-type-up {
    transition: .6s;
    transform: translateY(0);
    opacity: 1; }
    #obsession02 .is-active .u-fade-type-up:nth-child(2) {
      transition-delay: .4s; }
  #obsession02 .point_inner {
    width: 48%; }
    #obsession02 .point_inner h2 {
      font-size: 175%;
      color: #00aab4;
      margin: 0 0 1em 2%; }
    #obsession02 .point_inner p {
      font-size: 125%;
      margin: 0 0 0 2%; }
      #obsession02 .point_inner p a {
        display: block;
        width: 200px;
        margin: 2em 0 0; }

#bottom {
  margin: 0 auto; }
  #bottom #bottom_inner {
    margin: 0 0 8em;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #bottom #bottom_inner dl {
      width: 48%;
      text-align: center; }
      #bottom #bottom_inner dl dt {
        width: 300px;
        margin: 0 auto 2em; }
      #bottom #bottom_inner dl dd {
        width: 80%;
        margin: 0 auto;
        color: #666; }
        #bottom #bottom_inner dl dd span {
          font-size: 175%;
          display: block; }
          #bottom #bottom_inner dl dd span a {
            text-decoration: none;
            color: #666; }
            #bottom #bottom_inner dl dd span a:hover, #bottom #bottom_inner dl dd span a:active {
              color: #666;
              text-decoration: underline; }
          #bottom #bottom_inner dl dd span img {
            width: 27px;
            vertical-align: middle; }
    #bottom #bottom_inner figure {
      width: 48%; }
  #bottom .ggmap {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden; }
    #bottom .ggmap iframe, #bottom .ggmap object, #bottom .ggmap embed {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

/*フッター*/
footer {
  width: 100%;
  background-color: rgba(0, 170, 180, 0.2);
  padding: 8em 0 0;
  color: #666;
  /*TOPへ戻るボタン設定*/ }
  footer #footer_inner {
    margin: 0 auto; }
    footer #footer_inner #f_button {
      width: 100%;
      margin: 0 0 2em;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      footer #footer_inner #f_button li:nth-child(1) {
        width: 460px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        footer #footer_inner #f_button li:nth-child(1) a {
          display: block;
          width: 222px; }
      footer #footer_inner #f_button li:nth-child(2) {
        width: calc(100% - 500px); }
        footer #footer_inner #f_button li:nth-child(2) #f_sns {
          width: 120px;
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          footer #footer_inner #f_button li:nth-child(2) #f_sns a {
            display: block;
            width: 51px; }
    footer #footer_inner #f_menu {
      width: 80%;
      margin: 2em 0 0; }
      footer #footer_inner #f_menu ul {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        footer #footer_inner #f_menu ul li {
          width: 25%; }
          footer #footer_inner #f_menu ul li a {
            display: block;
            color: #666;
            text-decoration: none; }
            footer #footer_inner #f_menu ul li a:hover, footer #footer_inner #f_menu ul li a:active {
              color: #666;
              text-decoration: underline; }
  footer address {
    margin: 5em 0 0;
    background-color: #00aab4;
    color: #fff;
    font-style: normal;
    text-align: center;
    width: 96%;
    padding: 0 2%; }
  footer #page-top {
    position: fixed;
    bottom: 10px;
    right: 20px;
    font-size: 90%;
    z-index: 999; }
  footer #page-top a {
    display: block;
    text-decoration: none;
    color: #fff;
    text-align: center;
    font-weight: bold;
    width: 100px;
    background-color: #FF9AB0;
    padding: 1em 0;
    border-radius: 6px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease; }
  footer #page-top a:hover, footer #page-top a:active {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7; }

/*共通設定ここまで-------------------------------------------------------------------------------------------------------------------------------------*/
/* pc */
@media screen and (min-width: 1300px) {
  /*ヘッダー*/
  #header_inner, #top_contact {
    width: 1280px; }

  .sp {
    display: none; }

  /*メイン*/
  #about, #top_info, #paper, #sns, #product, #bottom {
    width: 1280px; }

  /*フッター*/
  #footer_inner {
    width: 1280px; } }
/* tablet以下共通 ------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 1299px) {
  /*ヘッダー*/
  #header_inner, #top_contact {
    width: 90%; }

  /*メイン*/
  #about, #top_info, #paper, #sns, #product, #bottom {
    width: 90%; }

  /*フッター*/
  #footer_inner {
    width: 90%; } }
/* tablet以下共通ここまで ------------------------------------------------------------------------------------------*/
/* tablet1  */
@media only screen and (min-width: 1024px) and (max-width: 1299px) {
  /*基本設定*/
  html {
    font-size: 85%; }

  .sp {
    display: none; }

  /*ヘッダー*/
  header #top_contact #contact_menu {
    width: 40%; }
    header #top_contact #contact_menu a {
      width: 48%; }

  /*メイン*/
  .back01 {
    padding: 4.5em 0; }

  #obsession01 .point_inner {
    width: calc(100% - 650px); }

  /*フッター*/ }
/* tablet2  */
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  /*基本設定*/
  html {
    font-size: 85%; }

  .sp {
    display: none; }

  /*ヘッダー*/
  header #top_contact #contact_menu {
    width: 40%; }
    header #top_contact #contact_menu a {
      width: 48%; }

  /*メイン*/
  .back01 {
    padding: 3em 0; }

  .back02 {
    padding: 4em 0; }

  .back03 {
    padding: 5em 0; }

  .back04 {
    background-size: 40% 512px; }

  #sns .instagram dl dd ul li {
    width: 48%; }
    #sns .instagram dl dd ul li:nth-child(n+3) {
      margin: 1em 0 0; }

  #obsession01 {
    padding: 107px 0 0; }
    #obsession01 .single-item {
      width: 439px; }
    #obsession01 .point_inner {
      width: calc(100% - 450px); }

  #obsession02 {
    padding: 8em 0 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between; }
    #obsession02 .multiple-list {
      width: 48%; }
    #obsession02 .multiple-item {
      display: block;
      width: 250px;
      margin: 0 0 0 auto; }
    #obsession02 .is-active .u-fade-type-up {
      transition: .6s;
      transform: translateY(0);
      opacity: 1; }
      #obsession02 .is-active .u-fade-type-up:nth-child(2) {
        transition-delay: .4s; }
    #obsession02 .point_inner {
      width: 48%; }
      #obsession02 .point_inner h2 {
        font-size: 175%;
        color: #00aab4;
        margin: 0 0 1em 2%; }
      #obsession02 .point_inner p {
        font-size: 125%; }
        #obsession02 .point_inner p a {
          display: block;
          width: 200px;
          margin: 2em 0 0; }

  #bottom #bottom_inner {
    margin: 0 0 5em; }

  /*フッター*/
  footer {
    padding: 5em 0 0; }
    footer #footer_inner #f_menu {
      width: 100%; } }
/* tablet3  */
@media only screen and (max-width: 767px) {
  /*基本設定*/
  html {
    font-size: 85%; }

  .pc {
    display: none; }

  /*ヘッダー*/
  header {
    position: relative; }
    header #top_contact {
      top: 70px;
      z-index: 10; }
      header #top_contact #contact_menu {
        width: 100%;
        margin: 0 auto; }
        header #top_contact #contact_menu a {
          display: block;
          width: 48%; }

  /*メイン*/
  .back01 {
    background-image: url("../img/top/back_b_sp.jpg");
    padding: 1.5em 0; }

  .back02 {
    padding: 2em 0; }

  .back03 {
    padding: 3em 0; }

  .back04 {
    background-size: 80% 50%; }

  #about {
    margin: 0;
    width: 100%; }
    #about h2 {
      width: 100%;
      margin: 0; }

  #paper {
    flex-direction: column; }
    #paper figure {
      width: 100%; }
      #paper figure:nth-child(n+2) {
        margin: 2.5em 0 0; }

  #top_info h2 {
    font-size: 130%; }
  #top_info #inner {
    flex-direction: column; }
    #top_info #inner figure {
      width: 100%; }
      #top_info #inner figure:nth-child(n+2) {
        margin: 2em 0 0; }

  #sns {
    margin: 2.5em auto;
    flex-direction: column; }
    #sns .chirashi {
      width: 100%;
      margin: 0 0 1em; }
      #sns .chirashi dl dt {
        font-size: 130%; }
    #sns .chirashi_omote {
      width: 100%;
      margin: 0 0 1em; }
    #sns .chirashi_ura {
      width: 100%;
      margin: 0 0 2.5em; }
    #sns .twitter {
      width: 100%; }
      #sns .twitter dl dt {
        font-size: 130%; }
    #sns .instagram {
      width: 100%;
      margin: 2em 0 0; }
      #sns .instagram dl dt {
        font-size: 130%; }
      #sns .instagram dl dd {
        margin: 1em 0 0; }
        #sns .instagram dl dd ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          #sns .instagram dl dd ul li {
            width: 48%; }
            #sns .instagram dl dd ul li:nth-child(n+3) {
              margin: 1em 0 0; }

  #product {
    margin: 0 auto; }
    #product h2 {
      font-size: 150%;
      width: 70%; }
    #product ul {
      margin: 3em 0 0;
      flex-direction: column; }
      #product ul li:nth-child(1) {
        width: 100%; }
      #product ul li:nth-child(2) {
        width: 100%;
        flex-direction: column; }
        #product ul li:nth-child(2) figure {
          margin: 1em 0 0;
          width: 100%; }

  #obsession01 {
    padding: 2em 0 0;
    width: 100%;
    margin: 0;
    flex-direction: column; }
    #obsession01 .single-item {
      width: 100%; }
    #obsession01 .point_inner {
      width: 80%;
      margin: 2em auto 0; }
      #obsession01 .point_inner h2 {
        font-size: 150%; }
      #obsession01 .point_inner p {
        font-size: 125%; }

  #obsession02 {
    margin: 0;
    width: 100%;
    padding: 4em 0 0;
    flex-direction: column; }
    #obsession02 .multiple-list {
      width: 100%; }
    #obsession02 .multiple-item {
      max-width: 150px; }
    #obsession02 .point_inner {
      width: 80%;
      margin: 0 auto 2em; }
      #obsession02 .point_inner h2 {
        font-size: 150%;
        color: #00aab4;
        margin: 0 0 1em; }
      #obsession02 .point_inner p {
        font-size: 125%; }

  #bottom {
    width: 100%;
    margin: 0; }
    #bottom #bottom_inner {
      margin: 0;
      flex-direction: column; }
      #bottom #bottom_inner dl {
        width: 100%;
        text-align: center; }
        #bottom #bottom_inner dl dt {
          max-width: 250px; }
        #bottom #bottom_inner dl dd {
          width: 80%; }
      #bottom #bottom_inner figure {
        width: 100%;
        margin: 2em 0 0; }
    #bottom .ggmap {
      padding-bottom: 76.25%; }

  /*フッター*/
  footer {
    padding: 4em 0 0;
    /*TOPへ戻るボタン設定*/ }
    footer #footer_inner #f_button {
      width: 100%;
      margin: 0 0 2em;
      flex-direction: column-reverse; }
      footer #footer_inner #f_button li:nth-child(1) {
        width: 100%;
        margin: 2em 0 0; }
        footer #footer_inner #f_button li:nth-child(1) a {
          width: 48%; }
      footer #footer_inner #f_button li:nth-child(2) {
        width: 100%;
        text-align: center; }
        footer #footer_inner #f_button li:nth-child(2) #f_sns {
          width: 120px;
          margin: 0 auto; }
    footer #footer_inner #f_menu {
      display: none; }
    footer address {
      margin: 5em 0 0;
      background-color: #00aab4;
      color: #fff;
      font-style: normal;
      text-align: center;
      width: 96%;
      padding: 0 2%; }
    footer #page-top {
      position: fixed;
      bottom: 10px;
      right: 20px;
      font-size: 90%;
      z-index: 999; }
    footer #page-top a {
      display: block;
      text-decoration: none;
      color: #fff;
      text-align: center;
      font-weight: bold;
      width: 100px;
      background-color: #FF9AB0;
      padding: 1em 0;
      border-radius: 6px;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all  0.3s ease; }
    footer #page-top a:hover, footer #page-top a:active {
      opacity: 0.7;
      filter: alpha(opacity=70);
      -moz-opacity: 0.7; } }
/* smartPhone1 */
@media only screen and (max-width: 499px) {
  /*基本設定*/
  html {
    font-size: 80%; }

  /*ヘッダー*/
  /*メイン*/
  /*フッター*/ }
