@charset "UTF-8";
body {
  font-family: 'Avenir' ,"游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 15px;
  position: relative;
  min-width: 1000px;
  background: url("../img/common/head_bg.jpg") no-repeat top center; }
  @media screen and (min-width: 2000px) {
    body {
      background-size: 100%; } }
  @media screen and (max-width: 767px) {
    body {
      min-width: 0;
      background-size: 300%; } }

body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ul, ol, li,
brockquote, pre, table, caption, th, td, address,
form, fieldset, legend, object {
  margin: 0;
  padding: 0; }

header, section, navi, footer {
  display: block; }

a, ins {
  text-decoration: none; }

address, em, cite, dfn, var {
  font-style: normal; }

input, textarea {
  font-family: sans-serif;
  font-weight: normal; }

img {
  vertical-align: baseline; }

a img {
  border: none; }

h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ul, ol, li,
brockquote, pre, table, caption, th, td, address {
  line-height: 165%;
  color: #3a3039; }

h1, h2, h3, h4 {
  font-weight: normal;
  letter-spacing: 0; }

a {
  color: #524C43; }

li {
  list-style: none; }

.table {
  display: table; }
  .table .t-tr {
    display: table-row; }
  .table .t-td, .table .t-th {
    display: table-cell; }

br.pcn {
  display: none; }
  @media screen and (max-width: 767px) {
    br.pcn {
      display: block; } }

@media screen and (max-width: 767px) {
  br.spn {
    display: none; } }

.pcn {
  display: none; }

@media screen and (max-width: 767px) {
  .pcn {
    display: initial; } }

@media screen and (max-width: 767px) {
  .spn {
    display: none; } }

@media screen and (max-width: 767px) {
  .onlyPC {
    display: none; } }

.onlySP {
  display: none; }
  @media screen and (max-width: 767px) {
    .onlySP {
      display: initial; } }

.spheader {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 50px;
  box-sizing: border-box;
  background: url("../img/common/sphbg.jpg") repeat-x top left;
  z-index: 100000;
  /* ------ navibtn -----------------------------------*/ }
  @media screen and (max-width: 767px) {
    .spheader {
      display: block; } }
  .spheader .hlogo {
    position: absolute;
    top: 14px;
    left: 20px;
    z-index: 100; }
    @media screen and (max-width: 360px) {
      .spheader .hlogo {
        left: 10px; } }
  .spheader .lang {
    width: 120px;
    letter-spacing: -0.4em;
    position: absolute;
    top: 10px;
    right: 70px; }
    @media screen and (max-width: 360px) {
      .spheader .lang {
        right: 55px;
        width: 100px; } }
    .spheader .lang li {
      margin-left: 10px;
      display: inline-block;
      letter-spacing: normal; }
      @media screen and (max-width: 360px) {
        .spheader .lang li {
          margin-left: 3px; } }
      .spheader .lang li a {
        display: block;
        border: 2px solid #9d36b4;
        width: 30px;
        height: 30px;
        border-radius: 15px;
        box-sizing: border-box;
        background: #FFF;
        color: #9d36b4;
        font-weight: bold;
        font-size: 12px;
        text-align: center;
        padding-top: 2px;
        padding-left: 1px;
        opacity: 1 !important;
        -webkit-transition: all .6s ease;
        -moz-transition: all .6s ease;
        -ms-transition: all .6s ease;
        transition: all .6s ease; }
        .spheader .lang li a:hover, .spheader .lang li a.active {
          background: #9d36b4;
          color: #FFF; }
  .spheader .hnavi_btn {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 100000;
    display: none;
    width: 50px;
    height: 50px; }
    @media screen and (max-width: 767px) {
      .spheader .hnavi_btn {
        display: block; } }
  .spheader .menu-button {
    width: 50px;
    height: 50px;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    background: url("../img/common/menu_btn.png") no-repeat left top;
    background-size: 50px; }
  .spheader .active .menu-button {
    background: url("../img/common/menu_btn_on.png") no-repeat left top;
    background-size: 50px; }
  .spheader .gnavi {
    background: url("../img/common/hnavi_bg.png") no-repeat center top;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    padding-top: 90px;
    padding-bottom: 80px; }
    .spheader .gnavi ul.navi {
      text-align: center;
      margin-bottom: 50px; }
      .spheader .gnavi ul.navi li {
        display: block;
        margin-left: 0; }
        .spheader .gnavi ul.navi li a {
          margin-bottom: 30px; }
          .spheader .gnavi ul.navi li a:after {
            display: block;
            margin: 0 auto;
            position: relative;
            bottom: -10px; }
    .spheader .gnavi ul.hsns {
      text-align: center; }
      .spheader .gnavi ul.hsns li {
        margin: 0 12px; }
        .spheader .gnavi ul.hsns li a:after {
          display: none; }
        .spheader .gnavi ul.hsns li i {
          font-size: 30px; }

#top {
  /*   .sec4{
    text-align: center;
    margin: -100px 0 100px;
    padding-top: 168px;
    padding-bottom: 125px;
    background: url('../img/top/top_ig_bg.png') no-repeat center top;
    background-size: cover;
    @media screen and (max-width: 767px) {
      padding-top: 100px;
      margin-top: -50px;
      padding-bottom: 70px;
    }
    .bx-wrapper{
      max-width: 100% !important;
    }
    .instagram-placeholder {
      float: left;
      width: 200px;
      height: 200px;
      overflow: hidden;
      text-align: center;
      background: #FFF;
      @media screen and (max-width: 767px) {
        width: 120px;
        height: 120px;
      }
      span{
        display: block;
        background-position: center;
        background-size: cover;
        width: 100%;
        height: 100%;
      }
    }
    .ttl{
      margin-bottom: 55px;
      @media screen and (max-width: 767px) {
        margin-bottom: 33px;
      }
    }
    .ig_soon{
      padding: 85px 0 75px;
      @media screen and (max-width: 767px) {
        padding: 55px 0 35px;
      }
    }
  } */ }
  #top .top_hana_l {
    background: url("../img/top/top_hana_l.png") no-repeat;
    position: absolute;
    left: 0;
    top: 3300px;
    width: 207px;
    height: 1286px; }
  #top .top_hana_r {
    background: url("../img/top/top_hana_r.png") no-repeat;
    position: absolute;
    right: 0;
    top: 4312px;
    width: 217px;
    height: 456px; }
  #top .top_hana_l, #top .top_hana_r {
    opacity: 0;
    -webkit-transition: all .6s ease;
    -moz-transition: all .6s ease;
    -ms-transition: all .6s ease;
    transition: all .6s ease; }
    @media screen and (min-width: 1580px) {
      #top .top_hana_l, #top .top_hana_r {
        opacity: 1; } }
    @media screen and (max-width: 767px) {
      #top .top_hana_l, #top .top_hana_r {
        display: none; } }
  #top .spwrap_top_header {
    display: none;
    position: relative;
    background: url("../img/top/sptop_header.png") no-repeat center top;
    background-size: 100%;
    padding: 65px 20px 50px;
    margin-bottom: -90px;
    z-index: 100;
    /* ------ navibtn -----------------------------------*/ }
    @media screen and (max-width: 767px) {
      #top .spwrap_top_header {
        display: block; } }
    @media screen and (max-width: 370px) {
      #top .spwrap_top_header {
        background-size: 120%; } }
    #top .spwrap_top_header .hnavi_btn {
      position: absolute;
      top: 0;
      right: 0;
      z-index: 100000;
      display: block;
      width: 50px;
      height: 50px; }
    #top .spwrap_top_header .menu-button {
      width: 50px;
      height: 50px;
      display: block;
      position: absolute;
      right: 0;
      top: 0;
      background: url("../img/common/menu_btn.png") no-repeat left top;
      background-size: 50px; }
    #top .spwrap_top_header .active .menu-button {
      background: url("../img/common/menu_btn_on.png") no-repeat left top;
      background-size: 50px; }
    #top .spwrap_top_header .gnavi {
      background: url("../img/common/hnavi_bg.png") no-repeat center top;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 1000;
      padding-top: 90px;
      padding-bottom: 80px; }
      #top .spwrap_top_header .gnavi ul.navi {
        text-align: center;
        margin-bottom: 50px; }
        #top .spwrap_top_header .gnavi ul.navi li {
          display: block;
          margin-left: 0; }
          #top .spwrap_top_header .gnavi ul.navi li a {
            margin-bottom: 30px; }
            #top .spwrap_top_header .gnavi ul.navi li a:after {
              display: block;
              margin: 0 auto;
              position: relative;
              bottom: -10px; }
      #top .spwrap_top_header .gnavi ul.hsns {
        text-align: center; }
        #top .spwrap_top_header .gnavi ul.hsns li {
          margin: 0 12px; }
          #top .spwrap_top_header .gnavi ul.hsns li a:after {
            display: none; }
          #top .spwrap_top_header .gnavi ul.hsns li i {
            font-size: 30px; }
    #top .spwrap_top_header h1 {
      width: 92px;
      line-height: 1.2; }
      #top .spwrap_top_header h1 img {
        max-width: 100%;
        height: auto; }
    #top .spwrap_top_header .top_txt {
      display: inline-block;
      background: #FFF;
      padding: 2px 9px 1px;
      margin-bottom: 3px;
      font-size: 11px;
      font-weight: bold; }
    #top .spwrap_top_header .top_read {
      margin-bottom: 84%;
      font-weight: bold;
      font-size: 10px; }
      @media screen and (max-width: 480px) {
        #top .spwrap_top_header .top_read {
          margin-bottom: 70%; } }
      #top .spwrap_top_header .top_read span {
        display: inline-block;
        background: #FFF;
        padding: 2px 9px 1px;
        margin-bottom: 3px; }
    #top .spwrap_top_header .top_lang {
      width: 120px;
      letter-spacing: -0.4em;
      position: absolute;
      top: 24px;
      left: 22px; }
      @media screen and (max-width: 360px) {
        #top .spwrap_top_header .top_lang {
          right: 55px;
          width: 100px; } }
      #top .spwrap_top_header .top_lang li {
        margin-left: 10px;
        display: inline-block;
        letter-spacing: normal; }
        @media screen and (max-width: 360px) {
          #top .spwrap_top_header .top_lang li {
            margin-left: 3px; } }
        #top .spwrap_top_header .top_lang li a {
          display: block;
          border: 2px solid #9d36b4;
          width: 30px;
          height: 30px;
          border-radius: 15px;
          box-sizing: border-box;
          background: #FFF;
          color: #9d36b4;
          font-weight: bold;
          font-size: 12px;
          text-align: center;
          padding-top: 2px;
          padding-left: 1px;
          opacity: 1 !important;
          -webkit-transition: all .6s ease;
          -moz-transition: all .6s ease;
          -ms-transition: all .6s ease;
          transition: all .6s ease; }
          #top .spwrap_top_header .top_lang li a:hover, #top .spwrap_top_header .top_lang li a.active {
            background: #9d36b4;
            color: #FFF; }
    #top .spwrap_top_header .top_info {
      position: relative;
      width: 100%;
      margin: 0 auto 50px; }
      #top .spwrap_top_header .top_info .wrap_sec_ttl {
        margin-bottom: 30px; }
      #top .spwrap_top_header .top_info .wrap_info_cnt:after {
        content: '.';
        display: block;
        visibility: hidden;
        clear: both;
        height: 1px; }
      #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt {
        width: 100%;
        padding: 20px;
        margin-bottom: 30px;
        box-sizing: border-box;
        border: 1px solid #d5c0da;
        background: #FFF;
        overflow: hidden;
        box-shadow: 7.431px 6.691px 0px 0px rgba(26, 26, 92, 0.1); }
        #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt .img {
          float: left;
          margin-bottom: 0;
          line-height: 0.7;
          width: 80px; }
          #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt .img img {
            width: 80px;
            height: auto; }
        #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt .cnt {
          margin-left: 95px; }
          #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt .cnt .date {
            font-size: 13px;
            margin: 0 0 4px; }
          #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt .cnt .ttl {
            font-size: 17px;
            line-height: 1.3; }
            #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt .cnt .ttl a {
              color: #9d36b4; }
          #top .spwrap_top_header .top_info .wrap_info_cnt .info_cnt .cnt .txt {
            font-size: 13px;
            line-height: 1.47; }
  #top .wrap_header {
    position: relative; }
    @media screen and (max-width: 767px) {
      #top .wrap_header {
        display: none; } }
    #top .wrap_header .top_lang {
      display: inline-block;
      letter-spacing: -0.4em;
      margin-bottom: 53px;
      margin-left: -360px;
      vertical-align: top;
      position: absolute;
      top: 80px;
      left: 50%;
      z-index: 1000; }
      #top .wrap_header .top_lang li {
        margin: 0 5px;
        display: inline-block;
        vertical-align: middle;
        letter-spacing: normal; }
        #top .wrap_header .top_lang li a {
          display: block;
          border: 2px solid #9d36b4;
          width: 40px;
          height: 40px;
          border-radius: 20px;
          box-sizing: border-box;
          background: #FFF;
          color: #9d36b4;
          font-weight: bold;
          font-size: 16px;
          text-align: center;
          padding-top: 7px;
          padding-left: 2px;
          opacity: 1 !important;
          -webkit-transition: all .6s ease;
          -moz-transition: all .6s ease;
          -ms-transition: all .6s ease;
          transition: all .6s ease; }
          #top .wrap_header .top_lang li a:hover, #top .wrap_header .top_lang li a.active {
            background: #9d36b4;
            color: #FFF; }
    #top .wrap_header .header_ov1 {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      min-height: 1065px;
      z-index: 20;
      background: url("../img/top/top_head_bg.png") no-repeat center top; }
    #top .wrap_header .header_ov2 {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      min-height: 1800px;
      z-index: 100;
      background: url("../img/top/top_ov2.png") no-repeat center top; }
    #top .wrap_header .wrap_hmovie {
      overflow: hidden;
      width: 100%;
      min-height: 701px;
      position: absolute; }
    #top .wrap_header .hmovie {
      position: absolute;
      top: 0;
      left: 50%;
      margin-left: -340px;
      width: 945px;
      height: 701px;
      background: url("../img/top/top_mv.png") no-repeat;
      margin-left: -190px; }
      #top .wrap_header .hmovie video {
        margin-left: -150px; }
      #top .wrap_header .hmovie iframe {
        display: none;
        width: 1244px;
        height: 700px;
        margin-left: -160px; }
    #top .wrap_header .header {
      width: 980px;
      margin: 0 auto 138px;
      padding-top: 80px;
      position: relative; }
    #top .wrap_header .header_cnt {
      position: absolute;
      top: 80px;
      left: 12px;
      z-index: 100;
      width: 380px;
      margin: 0;
      text-align: center;
      padding-top: 93px; }
      #top .wrap_header .header_cnt h1 {
        margin-bottom: 9px; }
      #top .wrap_header .header_cnt .top_read {
        margin-bottom: 90px;
        font-weight: bold;
        font-size: 16px; }
        #top .wrap_header .header_cnt .top_read span {
          display: inline-block;
          background: #FFF;
          padding: 7px 21px 1px;
          margin-bottom: 7px; }
      #top .wrap_header .header_cnt .icon1 {
        position: absolute;
        top: 9px;
        left: -43px; }
      #top .wrap_header .header_cnt .icon2 {
        position: absolute;
        top: 383px;
        left: -28px; }
      #top .wrap_header .header_cnt .icon3 {
        position: absolute;
        top: 425px;
        left: 258px; }
    #top .wrap_header .top_hnavi {
      position: relative;
      z-index: 110;
      margin: 673px 0 0 558px; }
      #top .wrap_header .top_hnavi .hsns {
        margin-bottom: 28px;
        margin-left: 5px; }
        #top .wrap_header .top_hnavi .hsns li {
          display: inline-block;
          margin-right: 14px; }
          #top .wrap_header .top_hnavi .hsns li a {
            color: #9d36b4;
            font-size: 34px; }
      #top .wrap_header .top_hnavi .top_gnavi li {
        margin-bottom: 31px; }
        #top .wrap_header .top_hnavi .top_gnavi li a {
          position: relative;
          color: #9d36b4;
          font-size: 20px;
          display: inline-block; }
          #top .wrap_header .top_hnavi .top_gnavi li a:after {
            content: '';
            display: block;
            position: absolute;
            background-image: -moz-linear-gradient(0deg, #f067e5 0%, #78d7f6 100%);
            background-image: -webkit-linear-gradient(0deg, #f067e5 0%, #78d7f6 100%);
            background-image: -ms-linear-gradient(0deg, #f067e5 0%, #78d7f6 100%);
            opacity: 0.612;
            position: absolute;
            left: 2px;
            bottom: -8px;
            width: 34px;
            height: 2px;
            z-index: 1;
            -webkit-transition: all .3s ease;
            -moz-transition: all .3s ease;
            -ms-transition: all .3s ease;
            transition: all .3s ease; }
          #top .wrap_header .top_hnavi .top_gnavi li a:hover:after {
            width: 0; }
    #top .wrap_header .top_info {
      position: relative;
      width: 980px;
      margin: 0 auto 50px;
      z-index: 200; }
      #top .wrap_header .top_info .wrap_info_cnt:after {
        content: '.';
        display: block;
        visibility: hidden;
        clear: both;
        height: 1px; }
      #top .wrap_header .top_info .wrap_info_cnt .info_cnt {
        width: 480px;
        min-height: 200px;
        padding: 30px;
        float: left;
        box-sizing: border-box;
        border: 1px solid #d5c0da;
        background: #FFF;
        box-shadow: 7.431px 6.691px 0px 0px rgba(26, 26, 92, 0.1); }
        #top .wrap_header .top_info .wrap_info_cnt .info_cnt:nth-of-type(2) {
          float: right; }
        #top .wrap_header .top_info .wrap_info_cnt .info_cnt .img {
          float: left;
          margin-bottom: 0;
          line-height: 0.7; }
          #top .wrap_header .top_info .wrap_info_cnt .info_cnt .img img {
            width: 140px;
            height: auto; }
        #top .wrap_header .top_info .wrap_info_cnt .info_cnt .cnt {
          margin-left: 160px; }
          #top .wrap_header .top_info .wrap_info_cnt .info_cnt .cnt .date {
            font-size: 13px;
            margin: -6px 0 4px; }
          #top .wrap_header .top_info .wrap_info_cnt .info_cnt .cnt .ttl {
            font-size: 17px;
            line-height: 1.3;
            margin-bottom: 6px; }
            #top .wrap_header .top_info .wrap_info_cnt .info_cnt .cnt .ttl a {
              color: #9d36b4; }
          #top .wrap_header .top_info .wrap_info_cnt .info_cnt .cnt .txt {
            font-size: 15px;
            line-height: 1.47; }
  #top .sec1 .wrap, #top .sec2 .wrap, #top .sec3 .wrap {
    width: 980px;
    margin: 0 auto;
    position: relative;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #top .sec1 .wrap, #top .sec2 .wrap, #top .sec3 .wrap {
        width: 100%; } }
    #top .sec1 .wrap .cnt h2, #top .sec2 .wrap .cnt h2, #top .sec3 .wrap .cnt h2 {
      margin-bottom: 18px; }
      @media screen and (max-width: 767px) {
        #top .sec1 .wrap .cnt h2, #top .sec2 .wrap .cnt h2, #top .sec3 .wrap .cnt h2 {
          padding: 0 30px; } }
    #top .sec1 .wrap .cnt .read, #top .sec2 .wrap .cnt .read, #top .sec3 .wrap .cnt .read {
      margin-bottom: 25px;
      font-weight: bold;
      font-size: 18px; }
      #top .sec1 .wrap .cnt .read span, #top .sec2 .wrap .cnt .read span, #top .sec3 .wrap .cnt .read span {
        background: rgba(255, 255, 225, 0.8);
        display: inline-block;
        margin-bottom: 2px;
        padding: 2px 20px 1px; }
      @media screen and (max-width: 767px) {
        #top .sec1 .wrap .cnt .read, #top .sec2 .wrap .cnt .read, #top .sec3 .wrap .cnt .read {
          margin-bottom: 10px;
          font-size: 12px; } }
    #top .sec1 .wrap .cnt .btn a, #top .sec2 .wrap .cnt .btn a, #top .sec3 .wrap .cnt .btn a {
      display: inline-block;
      background: url("../img/top/btn_bg.png") no-repeat left top;
      background-size: 379px 70px;
      width: 379px;
      height: 70px;
      text-align: center;
      color: #FFF;
      font-weight: bold;
      font-size: 18px;
      padding-top: 17px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #top .sec1 .wrap .cnt .btn a, #top .sec2 .wrap .cnt .btn a, #top .sec3 .wrap .cnt .btn a {
          background: url("../img/top/spbtn_bg.png") no-repeat top left;
          background-size: cover;
          width: 225px;
          height: 45px;
          font-size: 11px;
          padding-top: 8px;
          padding-right: 5px; } }
    @media screen and (max-width: 767px) {
      #top .sec1 .wrap .cnt .img img, #top .sec2 .wrap .cnt .img img, #top .sec3 .wrap .cnt .img img {
        max-width: 100%;
        height: auto; } }
  #top .sec1 {
    background: url("../img/top/sptop_sec_bg1.png") no-repeat top center;
    position: relative;
    min-height: 660px;
    z-index: 120; }
    @media screen and (min-width: 2000px) {
      #top .sec1 {
        background-size: 100% auto; } }
    @media screen and (min-width: 768px) {
      #top .sec1 {
        background: url("../img/top/top_sec_bg1.jpg") no-repeat top center fixed;
        background-size: cover;
        z-index: 80; } }
    @media screen and (max-width: 767px) {
      #top .sec1 {
        background-size: cover;
        min-height: 0; } }
    #top .sec1 .wrap {
      padding-top: 94px;
      height: 660px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #top .sec1 .wrap {
          height: auto;
          padding-top: 26%; } }
      #top .sec1 .wrap .cnt {
        width: 980px; }
        @media screen and (max-width: 767px) {
          #top .sec1 .wrap .cnt {
            width: 100%;
            padding-bottom: 32%; } }
        #top .sec1 .wrap .cnt h2 {
          text-align: left; }
          @media screen and (max-width: 767px) {
            #top .sec1 .wrap .cnt h2 img {
              max-width: 100%;
              height: auto; } }
        #top .sec1 .wrap .cnt .read {
          margin-bottom: 45px;
          width: 580px; }
          @media screen and (max-width: 767px) {
            #top .sec1 .wrap .cnt .read {
              margin-bottom: 20px;
              width: 100%; }
              #top .sec1 .wrap .cnt .read.onlySP {
                display: block; } }
        #top .sec1 .wrap .cnt .btn {
          width: 580px; }
          @media screen and (max-width: 767px) {
            #top .sec1 .wrap .cnt .btn {
              width: 100%; } }
        #top .sec1 .wrap .cnt .img {
          position: absolute;
          right: 10px; }
          @media screen and (max-width: 767px) {
            #top .sec1 .wrap .cnt .img {
              width: 145px; } }
  #top .sec2 {
    background: url("../img/top/sptop_sec_bg2.jpg") no-repeat top center;
    min-height: 654px; }
    @media screen and (min-width: 2000px) {
      #top .sec2 {
        background-size: 100% auto; } }
    @media screen and (min-width: 768px) {
      #top .sec2 {
        background: url("../img/top/top_sec_bg2.jpg") no-repeat center fixed; } }
    @media screen and (max-width: 767px) {
      #top .sec2 {
        background-size: cover;
        min-height: 0; } }
    #top .sec2 .wrap {
      padding-top: 110px;
      height: 654px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #top .sec2 .wrap {
          height: auto;
          padding-top: 22%; } }
      #top .sec2 .wrap .cnt {
        width: 480px;
        float: right; }
        @media screen and (max-width: 767px) {
          #top .sec2 .wrap .cnt {
            width: 100%;
            float: none;
            padding-bottom: 40%; } }
        #top .sec2 .wrap .cnt h2 {
          text-align: right;
          margin-right: 23px; }
          @media screen and (max-width: 767px) {
            #top .sec2 .wrap .cnt h2 {
              margin-bottom: 0; }
              #top .sec2 .wrap .cnt h2 img {
                max-width: 100%;
                height: auto; } }
        @media screen and (max-width: 767px) {
          #top .sec2 .wrap .cnt .read {
            margin-bottom: 20px; }
            #top .sec2 .wrap .cnt .read.onlySP {
              display: block; } }
        #top .sec2 .wrap .cnt .img {
          position: absolute;
          left: 18px; }
          @media screen and (max-width: 767px) {
            #top .sec2 .wrap .cnt .img {
              left: 35px;
              bottom: -43px;
              width: 120px; } }
  #top .sec3 {
    background: url("../img/top/sptop_sec_bg3.jpg") no-repeat top center;
    min-height: 700px; }
    @media screen and (min-width: 2000px) {
      #top .sec3 {
        background-size: 100% auto; } }
    @media screen and (min-width: 768px) {
      #top .sec3 {
        background: url("../img/top/top_sec_bg3.jpg") no-repeat top center fixed; } }
    @media screen and (max-width: 767px) {
      #top .sec3 {
        background-size: cover;
        min-height: 0; } }
    #top .sec3 .wrap {
      padding-top: 113px;
      height: 660px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #top .sec3 .wrap {
          height: auto;
          padding-top: 35%; } }
      #top .sec3 .wrap .cnt {
        width: 500px;
        margin-left: 310px; }
        @media screen and (max-width: 767px) {
          #top .sec3 .wrap .cnt {
            width: 100%;
            margin-left: 0;
            padding-bottom: 33%; } }
        #top .sec3 .wrap .cnt h2 {
          margin-bottom: 40px; }
          @media screen and (max-width: 767px) {
            #top .sec3 .wrap .cnt h2 {
              padding: 0 60px; }
              #top .sec3 .wrap .cnt h2 img {
                max-width: 100%;
                height: auto; } }
        @media screen and (max-width: 767px) {
          #top .sec3 .wrap .cnt .read {
            margin-bottom: 20px; } }
        @media screen and (max-width: 360px) {
          #top .sec3 .wrap .cnt .read span {
            padding: 2px 5px 1px; } }
        #top .sec3 .wrap .cnt .img {
          position: absolute;
          right: 40px; }
          @media screen and (max-width: 767px) {
            #top .sec3 .wrap .cnt .img {
              top: -20px;
              right: 30px;
              width: 125px; } }
  #top .sec4.pet {
    text-align: center;
    margin: -130px 0 100px;
    padding-top: 248px;
    padding-bottom: 125px;
    background: url("../img/top/wrap_pet_bg.png") no-repeat center top;
    background-size: cover; }
    @media screen and (max-width: 767px) {
      #top .sec4.pet {
        background: url("../img/top/sppet_bg.png") no-repeat;
        background-size: cover;
        padding-top: 110px;
        margin-top: -70px;
        padding-bottom: 30px; }
        #top .sec4.pet img {
          max-width: 100%;
          height: auto; } }
    #top .sec4.pet .wrap_pet {
      background: url("../img/top/pet_bg.png") no-repeat top center; }
      @media screen and (max-width: 767px) {
        #top .sec4.pet .wrap_pet {
          background: none; } }
    #top .sec4.pet .wrap_sec_ttl {
      margin-bottom: 15px; }
      @media screen and (max-width: 767px) {
        #top .sec4.pet .wrap_sec_ttl {
          margin-bottom: 4px; } }
    @media screen and (max-width: 767px) {
      #top .sec4.pet .pet_img1 {
        display: block;
        margin-bottom: 2px;
        margin-top: -10px;
        text-align: center; } }
    @media screen and (max-width: 767px) {
      #top .sec4.pet .pet_img2 {
        display: block;
        margin-bottom: 18px;
        text-align: center; } }
    @media screen and (max-width: 767px) {
      #top .sec4.pet .btn {
        padding: 0 20px; }
        #top .sec4.pet .btn img {
          max-width: 100%;
          height: auto; } }
    @media screen and (max-width: 360px) {
      #top .sec4.pet .sec_ttl {
        font-size: 50px; } }
    #top .sec4.pet .sec_ttl span {
      color: #75617a;
      display: block;
      line-height: 4; }
    #top .sec4.pet .fukidashi {
      background: url("../img/top/fukidashi_bg.png") no-repeat;
      width: 710px;
      height: 185px;
      margin: 0 auto 440px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center; }
      @media screen and (max-width: 767px) {
        #top .sec4.pet .fukidashi {
          background: url("../img/top/spfukidashi.png") no-repeat;
          background-size: 316px;
          width: 316px;
          display: block;
          padding-top: 29px;
          margin-bottom: 7px;
          height: 110px; } }
      #top .sec4.pet .fukidashi p {
        font-size: 21px;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          #top .sec4.pet .fukidashi p {
            font-size: 14px; } }
        #top .sec4.pet .fukidashi p a {
          font-size: 20px;
          color: #9d36b4; }
          @media screen and (max-width: 767px) {
            #top .sec4.pet .fukidashi p a {
              font-size: 17px;
              display: block; } }
          #top .sec4.pet .fukidashi p a span {
            text-decoration: underline; }
          @media screen and (max-width: 767px) {
            #top .sec4.pet .fukidashi p a b {
              display: none; } }
  #top .sec5 .access_cnt {
    width: 980px;
    margin: 0 auto;
    min-height: 500px;
    background: url("../img/top/top_map.png") no-repeat right top; }
    @media screen and (max-width: 767px) {
      #top .sec5 .access_cnt {
        width: 100%;
        background: none;
        min-height: 0;
        padding: 0 20px;
        box-sizing: border-box;
        padding-bottom: 50px; } }
    #top .sec5 .access_cnt .spmap {
      display: none; }
      @media screen and (max-width: 767px) {
        #top .sec5 .access_cnt .spmap {
          display: block; }
          #top .sec5 .access_cnt .spmap img {
            max-width: 100%;
            height: auto; } }
    #top .sec5 .access_cnt .cnt {
      padding: 30px 0 0; }
      #top .sec5 .access_cnt .cnt .ttl {
        margin-bottom: 25px; }
        @media screen and (max-width: 767px) {
          #top .sec5 .access_cnt .cnt .ttl {
            display: none; } }
      #top .sec5 .access_cnt .cnt p {
        margin-bottom: 20px;
        font-size: 18px;
        line-height: 1.6; }
        @media screen and (max-width: 767px) {
          #top .sec5 .access_cnt .cnt p.txt {
            font-size: 12px;
            text-align: center; }
            #top .sec5 .access_cnt .cnt p.txt .tel {
              font-size: 18px;
              font-weight: bold; }
              #top .sec5 .access_cnt .cnt p.txt .tel i {
                margin-right: 5px; } }
      #top .sec5 .access_cnt .cnt ul {
        font-size: 0;
        border: 1px solid #a675b0;
        border-right: none;
        margin-bottom: 50px;
        width: 460px; }
        @media screen and (max-width: 767px) {
          #top .sec5 .access_cnt .cnt ul {
            border: 1px solid #a675b0;
            border-bottom: none;
            width: 100%;
            margin-bottom: 20px; } }
        #top .sec5 .access_cnt .cnt ul li {
          width: 110px;
          display: inline-block;
          font-size: 16px;
          color: #a675b0;
          border-right: 1px solid #a675b0;
          padding: 8px 0 6px;
          box-sizing: border-box;
          background: #FFF;
          text-align: center;
          font-weight: bold; }
          @media screen and (max-width: 767px) {
            #top .sec5 .access_cnt .cnt ul li {
              border-bottom: 1px solid #a675b0;
              width: 100%;
              font-size: 11px;
              width: 25%;
              box-sizing: border-box; } }
          #top .sec5 .access_cnt .cnt ul li:last-of-type {
            width: 240px; }
            @media screen and (max-width: 767px) {
              #top .sec5 .access_cnt .cnt ul li:last-of-type {
                width: 50%;
                border-right: none; } }
      #top .sec5 .access_cnt .cnt .btn a {
        display: block;
        background: url("../img/common/btn_bg.png") no-repeat left top;
        background-size: 379px 80px;
        width: 379px;
        height: 80px;
        color: #FFF;
        font-weight: bold;
        text-align: center;
        padding-top: 22px;
        box-sizing: border-box;
        font-size: 20px; }
        @media screen and (max-width: 767px) {
          #top .sec5 .access_cnt .cnt .btn a {
            background: url("../img/top/spbtn_bg.png") no-repeat top left;
            background-size: cover;
            width: 225px;
            height: 45px;
            font-size: 11px;
            padding-top: 11px;
            padding-right: 5px;
            margin: 0 auto; } }
  #top .wrap_spmovie {
    display: none;
    padding: 0 10px;
    margin-bottom: 50px;
    margin-top: -20px; }
    @media screen and (max-width: 767px) {
      #top .wrap_spmovie {
        display: block;
        margin-bottom: 70px; } }
  #top .spmovie {
    position: relative;
    width: 100%;
    padding-top: 56.25%; }
    #top .spmovie iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%;
      pointer-events: initial !important; }
  #top .sec6 {
    background: url("../img/top/top_bg_img.jpg") no-repeat center fixed;
    background-size: cover;
    height: 610px; }
    @media screen and (max-width: 767px) {
      #top .sec6 {
        background: url("../img/top/top_bg_img.jpg") no-repeat center;
        background-size: cover;
        background-position: center top !important;
        height: 160px;
        padding-bottom: 24%; }
        #top .sec6 img {
          max-width: 100%;
          height: auto; } }
  #top .sec7 {
    text-align: center;
    margin: -80px 0 40px;
    background: url("../img/top/model_bg.png") no-repeat center top;
    min-height: 452px;
    text-align: center;
    padding-top: 114px;
    box-sizing: border-box; }
    @media screen and (max-width: 767px) {
      #top .sec7 {
        background-size: 160%;
        padding: 0 20px;
        margin-top: -37px;
        min-height: 0;
        margin-bottom: 0;
        background: none; } }
    #top .sec7 .ttl {
      margin-bottom: 20px;
      padding-left: 20px; }
      @media screen and (max-width: 767px) {
        #top .sec7 .ttl {
          padding-left: 0; } }
    #top .sec7 .txt {
      width: 640px;
      margin: 0 auto;
      font-size: 18px;
      line-height: 2.2;
      margin-bottom: 40px; }
      @media screen and (max-width: 767px) {
        #top .sec7 .txt {
          width: 100%;
          font-size: 15px;
          text-align: left; } }
    #top .sec7 .btn a {
      display: block;
      background: url("../img/common/btn_bg.png") no-repeat left top;
      background-size: 379px 80px;
      width: 379px;
      height: 80px;
      color: #FFF;
      font-weight: bold;
      text-align: center;
      padding-top: 22px;
      box-sizing: border-box;
      font-size: 20px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        #top .sec7 .btn a {
          background: url("../img/top/spbtn_bg.png") no-repeat top left;
          background-size: cover;
          width: 225px;
          height: 45px;
          font-size: 11px;
          padding-top: 11px;
          padding-right: 5px;
          margin: 0 auto; } }
    @media screen and (max-width: 767px) {
      #top .sec7 .sp {
        display: block; }
      #top .sec7 .pc {
        display: none; }
      #top .sec7 img {
        max-width: 100%;
        height: auto; } }

.header {
  width: 980px;
  padding-top: 40px;
  margin: 0 auto 50px; }
  @media screen and (max-width: 767px) {
    .header {
      display: block;
      height: 50px;
      padding: 0;
      width: 100%;
      margin: 0 0 40px; }
      .header nav {
        display: none; } }
  .header .hlogo {
    float: left; }
    @media screen and (max-width: 767px) {
      .header .hlogo {
        display: none; } }

.hnavi {
  text-align: right;
  margin-bottom: 40px; }
  @media screen and (max-width: 767px) {
    .hnavi {
      display: none; } }
  .hnavi .hsansaku {
    display: inline-block;
    margin-top: -21px;
    margin-right: 6px; }
  .hnavi ul {
    display: inline-block;
    letter-spacing: -0.4em;
    margin-left: 30px;
    vertical-align: top; }
    .hnavi ul li {
      display: inline-block;
      vertical-align: middle;
      letter-spacing: normal;
      margin-left: 20px; }
      .hnavi ul li a {
        display: block; }
    .hnavi ul.hsns {
      padding-top: 4px; }
      .hnavi ul.hsns li a {
        font-size: 28px;
        color: #9d36b4; }
      .hnavi ul.hsns li:last-of-type a {
        font-size: 30px; }
    .hnavi ul.lang li {
      margin-left: 10px; }
      .hnavi ul.lang li a {
        display: block;
        border: 2px solid #9d36b4;
        width: 40px;
        height: 40px;
        border-radius: 20px;
        box-sizing: border-box;
        background: #FFF;
        color: #9d36b4;
        font-weight: bold;
        font-size: 16px;
        text-align: center;
        padding-top: 7px;
        padding-left: 2px;
        opacity: 1 !important;
        -webkit-transition: all .6s ease;
        -moz-transition: all .6s ease;
        -ms-transition: all .6s ease;
        transition: all .6s ease; }
        .hnavi ul.lang li a:hover, .hnavi ul.lang li a.active {
          background: #9d36b4;
          color: #FFF; }

@media screen and (max-width: 767px) {
  .gnavi {
    display: none; } }

.gnavi ul {
  text-align: right;
  letter-spacing: -0.4em; }
  .gnavi ul li {
    display: inline-block;
    margin-left: 35px;
    letter-spacing: normal; }
    .gnavi ul li a {
      position: relative;
      color: #9d36b4;
      font-size: 16px;
      display: block; }
      .gnavi ul li a:after {
        content: '';
        display: block;
        position: absolute;
        background-image: -moz-linear-gradient(0deg, #f067e5 0%, #78d7f6 100%);
        background-image: -webkit-linear-gradient(0deg, #f067e5 0%, #78d7f6 100%);
        background-image: -ms-linear-gradient(0deg, #f067e5 0%, #78d7f6 100%);
        opacity: 0.612;
        position: absolute;
        left: 0px;
        bottom: -13px;
        width: 34px;
        height: 2px;
        z-index: 1;
        -webkit-transition: all .3s ease;
        -moz-transition: all .3s ease;
        -ms-transition: all .3s ease;
        transition: all .3s ease; }
      .gnavi ul li a:hover:after {
        width: 0; }

.pagetop {
  position: fixed;
  right: 0;
  bottom: 80px;
  z-index: 1000; }
  @media screen and (max-width: 767px) {
    .pagetop {
      width: 40px; }
      .pagetop img {
        max-width: 100%;
        height: auto; } }

.wrap_footer {
  background: url("../img/common/fbg.jpg") no-repeat center bottom;
  min-height: 717px;
  box-sizing: border-box;
  padding-top: 94px; }
  @media screen and (max-width: 767px) {
    .wrap_footer {
      min-height: 0;
      background: url("../img/common/spfbg.jpg") no-repeat center bottom;
      background-size: 100%; } }
  .wrap_footer .footer {
    width: 980px;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .wrap_footer .footer {
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box; } }
    .wrap_footer .footer .fcnt {
      float: left;
      margin-right: 40px; }
      @media screen and (max-width: 767px) {
        .wrap_footer .footer .fcnt {
          margin-right: 0;
          float: none; } }
      .wrap_footer .footer .fcnt .flogo {
        margin-bottom: 30px; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .fcnt .flogo {
            display: none; } }
      .wrap_footer .footer .fcnt .flogosp {
        display: none; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .fcnt .flogosp {
            display: block;
            text-align: center;
            margin-bottom: 15px; } }
      .wrap_footer .footer .fcnt .address {
        margin-bottom: 25px;
        letter-spacing: 0; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .fcnt .address {
            text-align: center;
            margin-bottom: 10px; } }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .fcnt .address span.zip {
            display: none; } }
        .wrap_footer .footer .fcnt .address span.access {
          display: none; }
          @media screen and (max-width: 767px) {
            .wrap_footer .footer .fcnt .address span.access {
              display: block;
              text-align: center;
              margin: 5px 0 10px; }
              .wrap_footer .footer .fcnt .address span.access a {
                display: inline-block;
                font-weight: bold;
                background: url("../img/common/list_icon.png") no-repeat left center;
                background-size: 13px;
                padding-left: 20px;
                color: #75617a; } }
        .wrap_footer .footer .fcnt .address span.tel {
          font-size: 19px;
          font-weight: bold; }
        .wrap_footer .footer .fcnt .address i {
          margin-right: 5px; }
      .wrap_footer .footer .fcnt .fsns {
        font-size: 27px; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .fcnt .fsns {
            display: block;
            text-align: center;
            margin-bottom: 80px; } }
        .wrap_footer .footer .fcnt .fsns li {
          display: inline-block; }
          @media screen and (max-width: 767px) {
            .wrap_footer .footer .fcnt .fsns li {
              margin: 0 8px; } }
          .wrap_footer .footer .fcnt .fsns li a {
            color: #9d36b4; }
    .wrap_footer .footer .fnavi {
      float: left; }
      @media screen and (max-width: 767px) {
        .wrap_footer .footer .fnavi {
          float: none; } }
      @media screen and (max-width: 767px) {
        .wrap_footer .footer .fnavi ul {
          display: none; } }
      .wrap_footer .footer .fnavi ul:first-of-type li {
        margin-bottom: 5px; }
        .wrap_footer .footer .fnavi ul:first-of-type li a {
          background: url("../img/common/list_icon.png") no-repeat left center;
          background-size: 16px;
          font-weight: bold;
          padding: 2px 0 2px 26px; }
    .wrap_footer .footer .wrap_fshop {
      float: right;
      margin-bottom: 170px; }
      @media screen and (max-width: 767px) {
        .wrap_footer .footer .wrap_fshop {
          display: none; } }
      .wrap_footer .footer .wrap_fshop .fshop {
        margin-top: 10px;
        background-color: rgba(255, 255, 255, 0.349);
        box-shadow: 6.691px 7.431px 0px 0px rgba(0, 0, 0, 0.04);
        width: 371px;
        height: 290px;
        padding: 15px 40px 0 50px;
        box-sizing: border-box;
        margin-bottom: 10px; }
        .wrap_footer .footer .wrap_fshop .fshop .ttl {
          font-family: "Satisfy", cursive;
          color: #9d36b4;
          font-size: 30px;
          text-align: center;
          margin-bottom: 30px; }
        .wrap_footer .footer .wrap_fshop .fshop ul {
          float: left;
          margin-right: 20px; }
          .wrap_footer .footer .wrap_fshop .fshop ul:last-of-type {
            margin-right: 0; }
          .wrap_footer .footer .wrap_fshop .fshop ul li {
            font-size: 14px;
            margin-bottom: 7px;
            letter-spacing: 0; }
            .wrap_footer .footer .wrap_fshop .fshop ul li a {
              display: block;
              padding-left: 15px; }
              .wrap_footer .footer .wrap_fshop .fshop ul li a:before {
                content: '>';
                margin-right: 5px;
                margin-left: -15px;
                color: #9d36b4;
                font-size: 12px; }
      .wrap_footer .footer .wrap_fshop > ul {
        text-align: center; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .wrap_fshop > ul {
            display: none; } }
        .wrap_footer .footer .wrap_fshop > ul li {
          margin-bottom: 5px;
          display: inline-block;
          margin: 0 10px; }
          .wrap_footer .footer .wrap_fshop > ul li a {
            background: url("../img/common/list_icon.png") no-repeat left center;
            background-size: 16px;
            font-weight: bold;
            padding: 2px 0 2px 26px; }
    .wrap_footer .footer .ffoot {
      clear: both;
      overflow: hidden; }
      .wrap_footer .footer .ffoot ul {
        float: left;
        letter-spacing: -0.4em;
        padding-top: 6px; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .ffoot ul {
            display: none; } }
        .wrap_footer .footer .ffoot ul li {
          display: inline-block;
          margin-right: 20px;
          letter-spacing: normal; }
          .wrap_footer .footer .ffoot ul li a {
            background: url("../img/common/list_icon2.png") no-repeat left center;
            background-size: 16px;
            padding: 2px 0 2px 26px;
            color: #000; }
      .wrap_footer .footer .ffoot .clogo {
        float: right;
        margin-bottom: 10px; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .ffoot .clogo {
            display: none; } }
      .wrap_footer .footer .ffoot .copyright {
        clear: both;
        text-align: right;
        font-size: 13px; }
        @media screen and (max-width: 767px) {
          .wrap_footer .footer .ffoot .copyright {
            text-align: center;
            margin-bottom: 10px;
            font-size: 9px; } }

.wrap_sec_ttl {
  text-align: center;
  margin-bottom: 45px; }
  @media screen and (max-width: 767px) {
    .wrap_sec_ttl {
      width: 100%; } }
  .wrap_sec_ttl .sec_ttl {
    font-size: 60px;
    color: #9d36b4;
    font-family: "Satisfy", cursive;
    display: inline-block;
    position: relative;
    line-height: 0.65; }
    .wrap_sec_ttl .sec_ttl:before {
      content: '';
      display: inline-block;
      background: url("../img/common/h2before.png") no-repeat;
      background-size: 209px 48px;
      width: 209px;
      height: 48px;
      position: absolute;
      left: -233px;
      top: -20px; }
      @media screen and (max-width: 767px) {
        .wrap_sec_ttl .sec_ttl:before {
          display: none; } }
    .wrap_sec_ttl .sec_ttl:after {
      content: '';
      display: inline-block;
      background: url("../img/common/h2after.png") no-repeat;
      background-size: 226px 58px;
      width: 226px;
      height: 58px;
      position: absolute;
      right: -237px;
      top: -1px; }
      @media screen and (max-width: 767px) {
        .wrap_sec_ttl .sec_ttl:after {
          display: none; } }
    .wrap_sec_ttl .sec_ttl span {
      font-size: 18px;
      color: #000;
      font-family: "Avenir", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif; }

@media screen and (max-width: 767px) {
  .contents {
    width: 100%;
    overflow: hidden;
    padding-top: 30px; } }

.lavenderl {
  display: none; }
  @media screen and (min-width: 768px) {
    .lavenderl {
      display: block;
      opacity: 0;
      position: absolute;
      top: 248px;
      left: 0;
      z-index: -1;
      -webkit-transition: all .6s ease;
      -moz-transition: all .6s ease;
      -ms-transition: all .6s ease;
      transition: all .6s ease; } }
  @media screen and (min-width: 1580px) {
    .lavenderl {
      z-index: 10;
      opacity: 1; } }

.lavenderr {
  display: none; }
  @media screen and (min-width: 768px) {
    .lavenderr {
      display: block;
      opacity: 0;
      position: absolute;
      top: 487px;
      right: 0;
      z-index: -1;
      -webkit-transition: all .6s ease;
      -moz-transition: all .6s ease;
      -ms-transition: all .6s ease;
      transition: all .6s ease; } }
  @media screen and (min-width: 1580px) {
    .lavenderr {
      z-index: 10;
      opacity: 1; } }

.wrap_page_ttl {
  position: relative;
  width: 100%;
  min-height: 470px;
  margin-bottom: 100px; }
  @media screen and (max-width: 767px) {
    .wrap_page_ttl {
      min-height: 280px;
      margin-bottom: 60px; } }
  .wrap_page_ttl:before {
    content: '';
    display: block;
    position: absolute;
    width: calc(60% + 200px);
    height: 410px;
    right: 50%;
    margin-right: -200px;
    top: 60px;
    background: rgba(188, 209, 251, 0.57); }
    @media screen and (max-width: 767px) {
      .wrap_page_ttl:before {
        width: 100%;
        left: 0;
        top: 20px;
        right: auto;
        width: 95%;
        height: 250px; } }
  .wrap_page_ttl:after {
    content: '';
    display: block;
    position: absolute;
    width: calc(50% + 280px);
    height: 410px;
    left: 50%;
    margin-left: -280px;
    top: 0;
    background: url("../img/ttl/common_bg.png") no-repeat center;
    background-size: cover; }
    @media screen and (max-width: 767px) {
      .wrap_page_ttl:after {
        width: 95%;
        margin-left: 0;
        right: 0;
        left: auto;
        height: 250px; } }
  .wrap_page_ttl .page_ttl {
    position: relative;
    width: 980px;
    margin: 0 auto;
    padding-top: 123px;
    z-index: 20;
    margin-bottom: 131px; }
    @media screen and (max-width: 767px) {
      .wrap_page_ttl .page_ttl {
        width: 100%;
        padding-top: 80px;
        margin-bottom: 0; } }
    .wrap_page_ttl .page_ttl h1 {
      display: inline-block;
      text-align: center;
      line-height: 1; }
      .wrap_page_ttl .page_ttl h1 img {
        margin-left: 3px; }
        @media screen and (max-width: 767px) {
          .wrap_page_ttl .page_ttl h1 img {
            width: 100%;
            height: auto; } }
      .wrap_page_ttl .page_ttl h1 span {
        font-size: 16px;
        background: #FFF;
        display: inline-block;
        padding: 9px 20px;
        min-width: 169px;
        box-sizing: border-box;
        text-align: center; }
  .wrap_page_ttl .pan {
    width: 980px;
    margin: 0 auto;
    position: relative;
    font-size: 13px;
    font-weight: bold;
    z-index: 20;
    letter-spacing: 0; }
    @media screen and (max-width: 767px) {
      .wrap_page_ttl .pan {
        display: none; } }
    .wrap_page_ttl .pan span {
      display: inline-block;
      margin: 0 13px;
      color: #04542e; }
    .wrap_page_ttl .pan a {
      color: #9d36b4; }

#about .wrap_page_ttl:after {
  background: url("../img/ttl/about_bg.png") no-repeat center;
  background-size: cover; }

#about .wrap_page_ttl .page_ttl {
  margin-bottom: 151px; }
  @media screen and (max-width: 767px) {
    #about .wrap_page_ttl .page_ttl {
      margin-bottom: 0; } }
  #about .wrap_page_ttl .page_ttl h1 {
    margin-left: 64px; }
    @media screen and (max-width: 767px) {
      #about .wrap_page_ttl .page_ttl h1 {
        margin-left: 0;
        padding: 0 70px; }
        #about .wrap_page_ttl .page_ttl h1 span {
          margin: 0 -30px; } }

#about .contents.about .sec1 {
  background: url("../img/about/about_bg1.png") no-repeat center bottom;
  padding-bottom: 460px; }
  @media screen and (max-width: 767px) {
    #about .contents.about .sec1 {
      background-size: 220%;
      background-position: 20% bottom;
      padding-bottom: 115%; } }
  #about .contents.about .sec1 .cnt1, #about .contents.about .sec1 .cnt2, #about .contents.about .sec1 .cnt3 {
    max-width: 1260px;
    min-height: 420px;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 767px) {
      #about .contents.about .sec1 .cnt1, #about .contents.about .sec1 .cnt2, #about .contents.about .sec1 .cnt3 {
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box; } }
    #about .contents.about .sec1 .cnt1 .cnt, #about .contents.about .sec1 .cnt2 .cnt, #about .contents.about .sec1 .cnt3 .cnt {
      width: 980px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec1 .cnt1 .cnt, #about .contents.about .sec1 .cnt2 .cnt, #about .contents.about .sec1 .cnt3 .cnt {
          width: 100%;
          padding-top: 68%; } }
      #about .contents.about .sec1 .cnt1 .cnt h2, #about .contents.about .sec1 .cnt2 .cnt h2, #about .contents.about .sec1 .cnt3 .cnt h2 {
        margin-bottom: 10px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec1 .cnt1 .cnt h2, #about .contents.about .sec1 .cnt2 .cnt h2, #about .contents.about .sec1 .cnt3 .cnt h2 {
            padding: 0 50px; }
            #about .contents.about .sec1 .cnt1 .cnt h2 img, #about .contents.about .sec1 .cnt2 .cnt h2 img, #about .contents.about .sec1 .cnt3 .cnt h2 img {
              max-width: 100%;
              height: auto; } }
      #about .contents.about .sec1 .cnt1 .cnt .read, #about .contents.about .sec1 .cnt2 .cnt .read, #about .contents.about .sec1 .cnt3 .cnt .read {
        font-size: 19px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec1 .cnt1 .cnt .read, #about .contents.about .sec1 .cnt2 .cnt .read, #about .contents.about .sec1 .cnt3 .cnt .read {
            padding: 0 10px; } }
        #about .contents.about .sec1 .cnt1 .cnt .read span, #about .contents.about .sec1 .cnt2 .cnt .read span, #about .contents.about .sec1 .cnt3 .cnt .read span {
          display: inline-block;
          background: #FFF;
          padding: 5px 30px 3px;
          margin-bottom: 16px; }
          @media screen and (max-width: 767px) {
            #about .contents.about .sec1 .cnt1 .cnt .read span, #about .contents.about .sec1 .cnt2 .cnt .read span, #about .contents.about .sec1 .cnt3 .cnt .read span {
              padding: 0;
              background: none; } }
  #about .contents.about .sec1 .cnt1 {
    margin: 0 auto;
    background: url("../img/about/about1_bg.jpg") no-repeat right top;
    z-index: 10; }
    @media screen and (max-width: 767px) {
      #about .contents.about .sec1 .cnt1 {
        background-size: 100%;
        overflow: hidden; } }
    #about .contents.about .sec1 .cnt1 .cnt {
      top: -55px;
      position: relative; }
      #about .contents.about .sec1 .cnt1 .cnt .read {
        margin-bottom: 100px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec1 .cnt1 .cnt .read {
            margin-bottom: 10px; } }
      #about .contents.about .sec1 .cnt1 .cnt .img {
        margin-left: 80px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec1 .cnt1 .cnt .img {
            width: 160px;
            margin-left: 0;
            float: right; }
            #about .contents.about .sec1 .cnt1 .cnt .img img {
              width: 100%;
              height: auto; } }
  #about .contents.about .sec1 .cnt2 {
    margin: -140px auto 0;
    background: url("../img/about/about2_bg.jpg") no-repeat left top;
    z-index: 5; }
    @media screen and (max-width: 767px) {
      #about .contents.about .sec1 .cnt2 {
        background-size: 100%;
        margin-top: -120px; } }
    #about .contents.about .sec1 .cnt2 .cnt {
      top: -55px;
      position: relative;
      text-align: right; }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec1 .cnt2 .cnt {
          text-align: left; } }
      #about .contents.about .sec1 .cnt2 .cnt .read {
        margin-bottom: 45px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec1 .cnt2 .cnt .read {
            margin-bottom: 10px; } }
      #about .contents.about .sec1 .cnt2 .cnt .img {
        margin-left: 80px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec1 .cnt2 .cnt .img {
            width: 160px;
            margin-left: 0; }
            #about .contents.about .sec1 .cnt2 .cnt .img img {
              width: 100%;
              height: auto; } }
  #about .contents.about .sec1 .cnt3 {
    margin: -90px auto 90px;
    background: url("../img/about/about3_bg.jpg") no-repeat right top; }
    @media screen and (max-width: 767px) {
      #about .contents.about .sec1 .cnt3 {
        background-size: 100%;
        margin-top: -120px;
        margin-bottom: 0; } }
    #about .contents.about .sec1 .cnt3 .cnt {
      top: -40px;
      position: relative; }
      #about .contents.about .sec1 .cnt3 .cnt .read {
        margin-bottom: 100px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec1 .cnt3 .cnt .read {
            margin-bottom: 0; } }
      #about .contents.about .sec1 .cnt3 .cnt .img {
        margin-left: 80px; }
  #about .contents.about .sec1 .cnt4 {
    margin: 0 auto; }
    #about .contents.about .sec1 .cnt4 .cnt {
      width: 980px;
      margin: 0 auto;
      padding-left: 490px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec1 .cnt4 .cnt {
          width: 100%;
          padding: 0 20px; } }
      #about .contents.about .sec1 .cnt4 .cnt p {
        line-height: 2.05; }

#about .contents.about .sec2 {
  background: url("../img/about/about_bg2.png") no-repeat center top;
  margin-top: -300px;
  padding-top: 135px;
  padding-bottom: 100px; }
  @media screen and (max-width: 767px) {
    #about .contents.about .sec2 {
      padding-top: 170px;
      margin-top: -200px; } }
  #about .contents.about .sec2 .wrap {
    width: 980px;
    margin: 0 auto;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      #about .contents.about .sec2 .wrap {
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box; } }
    #about .contents.about .sec2 .wrap .cnt {
      float: left; }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec2 .wrap .cnt {
          float: none; }
          #about .contents.about .sec2 .wrap .cnt img {
            max-width: 100%;
            height: auto; } }
      #about .contents.about .sec2 .wrap .cnt .txt {
        margin-left: 32px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec2 .wrap .cnt .txt {
            margin-left: 0; } }
        #about .contents.about .sec2 .wrap .cnt .txt p {
          font-size: 18px;
          margin-bottom: 10px;
          margin-left: 80px; }
          @media screen and (max-width: 767px) {
            #about .contents.about .sec2 .wrap .cnt .txt p {
              margin-left: 10px; } }
        #about .contents.about .sec2 .wrap .cnt .txt ul {
          border-radius: 8px;
          background-color: #eaf8fa;
          width: 415px;
          min-height: 162px;
          padding: 30px 80px;
          box-sizing: border-box;
          font-size: 18px;
          font-weight: bold;
          margin-bottom: 15px; }
          @media screen and (max-width: 767px) {
            #about .contents.about .sec2 .wrap .cnt .txt ul {
              padding: 30px 30px;
              width: 100%; } }
    #about .contents.about .sec2 .wrap .img {
      float: right;
      margin-left: -20px;
      padding-top: 65px;
      margin-bottom: 40px; }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec2 .wrap .img {
          margin-left: 0;
          float: none; }
          #about .contents.about .sec2 .wrap .img img {
            max-width: 100%;
            height: auto; } }
    #about .contents.about .sec2 .wrap .link {
      clear: both;
      text-align: center; }
      #about .contents.about .sec2 .wrap .link .btn {
        display: inline-block;
        margin: 0 3px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec2 .wrap .link .btn {
            width: 100%;
            text-align: center;
            margin-bottom: 15px; } }
        #about .contents.about .sec2 .wrap .link .btn a {
          display: block;
          background: url("../img/common/btn_bg.png") no-repeat left top;
          background-size: 379px 80px;
          width: 379px;
          height: 80px;
          color: #FFF;
          font-weight: bold;
          text-align: center;
          padding-top: 22px;
          box-sizing: border-box;
          font-size: 20px; }
          @media screen and (max-width: 767px) {
            #about .contents.about .sec2 .wrap .link .btn a {
              display: inline-block;
              width: 280px;
              height: 60px;
              background-size: 280px auto;
              padding-top: 16px; } }

#about .contents.about .sec3 {
  box-shadow: 0px -6px 0px 0px rgba(0, 0, 0, 0.04);
  margin-bottom: 80px;
  padding-top: 100px; }
  @media screen and (max-width: 767px) {
    #about .contents.about .sec3 {
      padding: 60px 15px 0; } }
  #about .contents.about .sec3 .copy {
    font-size: 24px;
    color: #9d36b4;
    font-weight: bold;
    text-align: center;
    margin-bottom: 24px; }
    @media screen and (max-width: 350px) {
      #about .contents.about .sec3 .copy {
        font-size: 22px; } }
  #about .contents.about .sec3 .read {
    text-align: center;
    margin-bottom: 50px;
    font-size: 18px;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      #about .contents.about .sec3 .read {
        text-align: left; } }
  #about .contents.about .sec3 .cnt {
    width: 980px;
    margin: 0 auto;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      #about .contents.about .sec3 .cnt {
        width: 100%; } }
    #about .contents.about .sec3 .cnt .img {
      float: right; }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec3 .cnt .img {
          float: none;
          margin-bottom: 20px; }
          #about .contents.about .sec3 .cnt .img img {
            max-width: 100%;
            height: auto; } }
    #about .contents.about .sec3 .cnt table {
      margin-right: 490px;
      border-top: 2px solid #e3d7e1;
      border-bottom: 2px solid #e3d7e1;
      border-collapse: collapse;
      width: 490px; }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec3 .cnt table {
          width: 100%;
          margin-right: 0;
          display: block;
          border-bottom: 1px solid #e3d7e1; } }
      @media screen and (max-width: 767px) {
        #about .contents.about .sec3 .cnt table tr {
          display: block; } }
      #about .contents.about .sec3 .cnt table tr th, #about .contents.about .sec3 .cnt table tr td {
        border-bottom: 1px solid #e3d7e1;
        padding: 13px 5px 12px;
        line-height: 1.87; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec3 .cnt table tr th, #about .contents.about .sec3 .cnt table tr td {
            display: block;
            padding-top: 5px; } }
      #about .contents.about .sec3 .cnt table tr th {
        text-align: left;
        vertical-align: top;
        width: 145px; }
        @media screen and (max-width: 767px) {
          #about .contents.about .sec3 .cnt table tr th {
            width: 100%;
            border: none;
            padding-top: 13px;
            padding-bottom: 0; } }
      #about .contents.about .sec3 .cnt table tr td a {
        color: #9d36b4; }

#shop .wrap_page_ttl:after {
  background: url("../img/ttl/shop_bg.png") no-repeat left center;
  background-size: cover; }

@media screen and (max-width: 767px) {
  #shop .wrap_page_ttl .page_ttl {
    padding-top: 65px; } }

#shop .wrap_page_ttl .page_ttl h1 {
  margin-left: 90px; }
  @media screen and (max-width: 767px) {
    #shop .wrap_page_ttl .page_ttl h1 {
      margin-left: 0;
      padding: 0 75px; } }

#shop .contents.shop {
  padding-top: 50px; }
  @media screen and (max-width: 767px) {
    #shop .contents.shop {
      padding-top: 20px; } }
  #shop .contents.shop .pet {
    background: url("../img/shop/pet_bg.png") no-repeat center top;
    padding-top: 210px;
    padding-bottom: 1px; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop .pet {
        background: url("../img/shop/sppet_bg.png") no-repeat center top;
        background-size: cover; } }
    #shop .contents.shop .pet .wrap_sec_ttl {
      margin-bottom: 25px; }
    @media screen and (max-width: 360px) {
      #shop .contents.shop .pet .sec_ttl {
        font-size: 50px; } }
    #shop .contents.shop .pet .sec_ttl span {
      color: #75617a;
      display: block;
      line-height: 4.3; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop .pet .pet_img1 {
        display: block;
        margin-bottom: 10px;
        margin-top: -20px; }
        #shop .contents.shop .pet .pet_img1 img {
          max-width: 100%;
          height: auto;
          text-align: center; } }
    #shop .contents.shop .pet .lead {
      text-align: center;
      font-size: 16px;
      font-weight: bold;
      line-height: 2.06;
      margin-bottom: 68px; }
      @media screen and (max-width: 767px) {
        #shop .contents.shop .pet .lead {
          padding: 0 50px;
          text-align: left;
          font-size: 18px;
          font-weight: normal;
          margin-bottom: 20px; } }
    @media screen and (max-width: 767px) {
      #shop .contents.shop .pet .wrap_table {
        overflow-x: auto;
        width: calc(100% - 40px);
        margin: 0 auto 40px;
        position: relative; } }
    #shop .contents.shop .pet .wrap_table .swipe_img {
      display: none;
      position: absolute;
      top: calc(50% - 45px);
      left: calc(50% - 45px); }
      @media screen and (max-width: 767px) {
        #shop .contents.shop .pet .wrap_table .swipe_img {
          display: block; } }
    #shop .contents.shop .pet table {
      width: 980px;
      margin: 0 auto 125px;
      border-collapse: collapse; }
      @media screen and (max-width: 767px) {
        #shop .contents.shop .pet table {
          width: 800px;
          margin-bottom: 0; } }
      #shop .contents.shop .pet table tr {
        border-bottom: 1px solid #82547d; }
        #shop .contents.shop .pet table tr:nth-of-type(even) {
          background: rgba(216, 179, 223, 0.27); }
        #shop .contents.shop .pet table tr th, #shop .contents.shop .pet table tr td {
          height: 61px;
          padding-top: 6px;
          vertical-align: middle;
          text-align: center;
          font-size: 18px; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop .pet table tr th, #shop .contents.shop .pet table tr td {
              font-size: 14px;
              height: 50px;
              padding-top: 5px; } }
        #shop .contents.shop .pet table tr th {
          color: #9d36b4; }
        #shop .contents.shop .pet table tr td {
          color: #75617a; }
          #shop .contents.shop .pet table tr td:last-of-type {
            font-size: 16px; }
  #shop .contents.shop .sec1 .wrap_sec_ttl {
    margin-bottom: 0; }
    #shop .contents.shop .sec1 .wrap_sec_ttl .sec_ttl span {
      font-family: "Avenir", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
      display: inline-block;
      line-height: 4.3; }
  #shop .contents.shop .sec1 .map {
    text-align: center;
    position: relative;
    width: 1037px;
    margin: 0 auto 60px; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop .sec1 .map {
        display: none; } }
    #shop .contents.shop .sec1 .map ul li {
      position: absolute; }
      #shop .contents.shop .sec1 .map ul li a {
        display: block;
        width: 47px;
        height: 45px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(1) {
        top: 518px;
        left: 707px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(2) {
        top: 468px;
        left: 556px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(3) {
        top: 536px;
        left: 438px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(4) {
        top: 536px;
        left: 376px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(5) {
        top: 436px;
        left: 340px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(6) {
        top: 286px;
        left: 699px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(7) {
        top: 313px;
        left: 534px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(8) {
        top: 286px;
        left: 374px; }
      #shop .contents.shop .sec1 .map ul li:nth-of-type(9) {
        top: 130px;
        left: 565px; }
  #shop .contents.shop .sec1 .spmap {
    display: none; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop .sec1 .spmap {
        display: block;
        padding: 0 15px;
        margin-bottom: 50px; }
        #shop .contents.shop .sec1 .spmap img {
          max-width: 100%;
          height: auto; } }
  #shop .contents.shop .sec1 .shop_list {
    width: 980px;
    margin: 0 auto;
    letter-spacing: -0.4em; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop .sec1 .shop_list {
        width: 100%; } }
    #shop .contents.shop .sec1 .shop_list .shop_cnt {
      width: 304px;
      position: relative;
      letter-spacing: normal;
      display: inline-block;
      margin-right: 34px;
      margin-bottom: 70px;
      vertical-align: top; }
      @media screen and (max-width: 767px) {
        #shop .contents.shop .sec1 .shop_list .shop_cnt {
          width: 280px;
          box-sizing: border-box;
          margin: 0 auto 60px;
          display: block; } }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(3n) {
        margin-right: 0; }
        @media screen and (max-width: 767px) {
          #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(3n) {
            margin-right: auto; } }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:before {
        content: '';
        display: block;
        position: absolute;
        left: 13px;
        top: -22px;
        width: 45px;
        height: 45px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(1):before {
        background: url("../img/shop/no1.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(2):before {
        background: url("../img/shop/no21.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(3):before {
        background: url("../img/shop/no22.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(4):before {
        background: url("../img/shop/no3.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(5):before {
        background: url("../img/shop/no4.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(6):before {
        background: url("../img/shop/no5.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(7):before {
        background: url("../img/shop/no6.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(8):before {
        background: url("../img/shop/no7.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt:nth-of-type(9):before {
        background: url("../img/shop/no8.png") no-repeat left top;
        background-size: 47px; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt .ttl {
        border-top: 1px solid #e3d7e1;
        border-bottom: 1px solid #e3d7e1;
        display: flex;
        display: -webkit-flex;
        justify-content: center;
        align-items: center;
        height: 70px;
        box-sizing: border-box;
        margin-bottom: 20px;
        font-size: 22px;
        font-weight: bold;
        text-align: center;
        line-height: 1.2;
        color: #9d36b4; }
        #shop .contents.shop .sec1 .shop_list .shop_cnt .ttl span {
          font-size: 18px; }
        #shop .contents.shop .sec1 .shop_list .shop_cnt .ttl a {
          display: block;
          color: #9d36b4;
          background: url("../img/shop/list_arrow.png") no-repeat right 10px center;
          background-size: 18px;
          width: 100%; }
      #shop .contents.shop .sec1 .shop_list .shop_cnt .img {
        text-align: center;
        margin-bottom: 15px;
        background: url("../img/shop/shop_list_img_bg.png") no-repeat; }
        @media screen and (max-width: 767px) {
          #shop .contents.shop .sec1 .shop_list .shop_cnt .img {
            background-size: 280px; } }
        #shop .contents.shop .sec1 .shop_list .shop_cnt .img img {
          width: 304px;
          height: 263px;
          mask-image: url("../img/shop/shop_list_mask.png");
          -webkit-mask-image: url("../img/shop/shop_list_mask.png");
          -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
          -webkit-mask-position: center center;
          mask-position: center center; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop .sec1 .shop_list .shop_cnt .img img {
              -webkit-mask-position: 0 0;
              mask-position: 0 0;
              mask-size: 280px;
              -webkit-mask-size: 280px; } }
      #shop .contents.shop .sec1 .shop_list .shop_cnt .txt {
        font-size: 17px; }
  #shop .contents.shop.single .shop_cnt {
    width: 980px;
    margin: -50px auto 0;
    padding-top: 70px;
    background: url("../img/shop/shop_single_bg.png") no-repeat right 25px top; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop.single .shop_cnt {
        width: 100%;
        background: none; } }
    #shop .contents.shop.single .shop_cnt .wrap_sec_ttl {
      text-align: center;
      margin-bottom: 45px; }
      #shop .contents.shop.single .shop_cnt .wrap_sec_ttl .sec_ttl {
        font-size: 38px;
        color: #9d36b4;
        font-family: "Avenir", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
        line-height: 1.3;
        font-weight: bold; }
        #shop .contents.shop.single .shop_cnt .wrap_sec_ttl .sec_ttl:before {
          content: '';
          display: inline-block;
          background: url("../img/shop/shop_ttl_before.png") no-repeat;
          width: 229px;
          height: 50px;
          position: absolute;
          left: -233px;
          top: 20px; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop.single .shop_cnt .wrap_sec_ttl .sec_ttl:before {
              display: none; } }
        #shop .contents.shop.single .shop_cnt .wrap_sec_ttl .sec_ttl:after {
          content: '';
          display: inline-block;
          background: url("../img/shop/shop_ttl_after.png") no-repeat;
          width: 226px;
          height: 58px;
          position: absolute;
          right: -237px;
          top: 39px; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop.single .shop_cnt .wrap_sec_ttl .sec_ttl:after {
              display: none; } }
        #shop .contents.shop.single .shop_cnt .wrap_sec_ttl .sec_ttl span {
          font-weight: normal; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop.single .shop_cnt .body {
        padding: 0 20px; } }
    #shop .contents.shop.single .shop_cnt .body h3 {
      width: 720px;
      margin: 80px auto 40px; }
      @media screen and (max-width: 767px) {
        #shop .contents.shop.single .shop_cnt .body h3 {
          width: 100%; } }
      #shop .contents.shop.single .shop_cnt .body h3 span {
        display: inline;
        background: #fbf3fa;
        padding: 5px;
        color: #9d36b4;
        font-size: 20px;
        font-weight: bold;
        line-height: 2.2; }
    #shop .contents.shop.single .shop_cnt .body p {
      margin-bottom: 40px; }
      #shop .contents.shop.single .shop_cnt .body p.txt {
        width: 720px;
        margin: 0 auto 40px; }
        #shop .contents.shop.single .shop_cnt .body p.txt a {
          color: #9d36b4;
          text-decoration: underline; }
        @media screen and (max-width: 767px) {
          #shop .contents.shop.single .shop_cnt .body p.txt {
            width: 100%; } }
      @media screen and (max-width: 767px) {
        #shop .contents.shop.single .shop_cnt .body p img {
          max-width: 100%;
          height: auto; } }
    #shop .contents.shop.single .shop_cnt .body .gallery {
      width: 980px;
      margin: 0 auto 40px;
      position: relative; }
      @media screen and (max-width: 767px) {
        #shop .contents.shop.single .shop_cnt .body .gallery {
          width: 100%; } }
      #shop .contents.shop.single .shop_cnt .body .gallery ul li {
        text-align: center; }
        #shop .contents.shop.single .shop_cnt .body .gallery ul li img {
          mask-image: url("../img/shop/gallery_mask.png");
          -webkit-mask-image: url("../img/shop/gallery_mask.png");
          -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
          -webkit-mask-position: center center;
          mask-position: center center; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop.single .shop_cnt .body .gallery ul li img {
              max-width: 100%;
              height: auto;
              -webkit-mask-size: 140px auto;
              mask-size: 140px auto;
              -webkit-mask-position: 0 0;
              mask-position: 0 0; } }
          @media screen and (max-width: 350px) {
            #shop .contents.shop.single .shop_cnt .body .gallery ul li img {
              max-width: 100%;
              height: auto;
              -webkit-mask-size: 120px auto;
              mask-size: 120px auto;
              -webkit-mask-position: 0 0;
              mask-position: 0 0; } }
      #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls {
        position: absolute;
        width: 100%;
        top: 85px;
        left: 0; }
        @media screen and (max-width: 767px) {
          #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls {
            top: 50px; } }
        #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls .bx-prev, #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls .bx-next {
          position: absolute;
          left: 0;
          top: 0;
          display: block;
          width: 25px;
          height: 25px;
          background: url("../img/shop/gallery_prev.png") no-repeat left top;
          background-size: 25px; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls .bx-prev, #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls .bx-next {
              left: -15px; } }
        #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls .bx-next {
          left: auto;
          right: 0;
          background: url("../img/shop/gallery_next.png") no-repeat left top;
          background-size: 25px; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop.single .shop_cnt .body .gallery .bx-controls .bx-next {
              right: -15px; } }
  #shop .contents.shop.single .sec2 {
    position: relative;
    box-shadow: 0px -6px 0px 0px rgba(0, 0, 0, 0.04);
    margin-bottom: 80px;
    margin-top: 114px;
    padding-top: 100px; }
    @media screen and (max-width: 767px) {
      #shop .contents.shop.single .sec2 {
        margin-bottom: 40px; } }
    @media screen and (max-width: 767px) {
      #shop .contents.shop.single .sec2 .wrap_sec_ttl {
        margin-bottom: 0; } }
    #shop .contents.shop.single .sec2 .wrap_sec_ttl span {
      line-height: 5.4; }
    #shop .contents.shop.single .sec2 .cnt {
      width: 980px;
      margin: 0 auto;
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        #shop .contents.shop.single .sec2 .cnt {
          width: 100%;
          padding: 0 15px;
          box-sizing: border-box; } }
      #shop .contents.shop.single .sec2 .cnt .img {
        float: right; }
        @media screen and (max-width: 767px) {
          #shop .contents.shop.single .sec2 .cnt .img {
            float: none;
            margin-bottom: 30px; }
            #shop .contents.shop.single .sec2 .cnt .img img {
              max-width: 100%;
              height: auto; } }
      #shop .contents.shop.single .sec2 .cnt .table {
        width: 490px;
        margin-right: 490px; }
        @media screen and (max-width: 767px) {
          #shop .contents.shop.single .sec2 .cnt .table {
            width: 100%;
            margin-right: 0; } }
      #shop .contents.shop.single .sec2 .cnt table {
        border-top: 2px solid #e3d7e1;
        border-bottom: 2px solid #e3d7e1;
        border-collapse: collapse;
        width: 100%;
        margin-bottom: 27px; }
        #shop .contents.shop.single .sec2 .cnt table tr th, #shop .contents.shop.single .sec2 .cnt table tr td {
          border-bottom: 1px solid #e3d7e1;
          padding: 11px 5px 10px;
          line-height: 1.87; }
        #shop .contents.shop.single .sec2 .cnt table tr th {
          text-align: left;
          vertical-align: top;
          width: 145px; }
        #shop .contents.shop.single .sec2 .cnt table tr td a {
          color: #9d36b4; }
      #shop .contents.shop.single .sec2 .cnt .shop_sns {
        overflow: hidden; }
        @media screen and (max-width: 767px) {
          #shop .contents.shop.single .sec2 .cnt .shop_sns {
            letter-spacing: -0.4em; } }
        #shop .contents.shop.single .sec2 .cnt .shop_sns li {
          width: 160px;
          float: left;
          margin-right: 5px; }
          @media screen and (max-width: 767px) {
            #shop .contents.shop.single .sec2 .cnt .shop_sns li {
              width: 33.33%;
              letter-spacing: normal;
              margin-right: 0; } }
          #shop .contents.shop.single .sec2 .cnt .shop_sns li a {
            background: #3b5998;
            color: #FFF;
            text-align: center;
            height: 30px;
            display: flex;
            display: -webkit-flex;
            justify-content: center;
            align-items: center; }
          #shop .contents.shop.single .sec2 .cnt .shop_sns li.tw a {
            background: #55acee; }
          #shop .contents.shop.single .sec2 .cnt .shop_sns li.ig {
            margin-right: 0; }
            #shop .contents.shop.single .sec2 .cnt .shop_sns li.ig a {
              background: #000; }

#access .wrap_page_ttl:after {
  background: url("../img/ttl/access_bg.png") no-repeat center;
  background-size: cover; }

#access .wrap_page_ttl .page_ttl {
  margin-bottom: 132px; }
  @media screen and (max-width: 767px) {
    #access .wrap_page_ttl .page_ttl {
      margin-bottom: 0; } }
  #access .wrap_page_ttl .page_ttl h1 {
    margin-left: 50px; }
    #access .wrap_page_ttl .page_ttl h1 img {
      margin-bottom: 22px; }
      @media screen and (max-width: 767px) {
        #access .wrap_page_ttl .page_ttl h1 img {
          margin-bottom: 0; } }
    @media screen and (max-width: 767px) {
      #access .wrap_page_ttl .page_ttl h1 {
        margin-left: 0;
        padding: 0 60px; } }

#access .contents.access {
  position: relative; }
  @media screen and (max-width: 767px) {
    #access .contents.access .sec1 {
      padding: 0 20px; } }
  #access .contents.access .sec1 .address {
    text-align: center;
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      #access .contents.access .sec1 .address {
        margin-bottom: 30px; }
        #access .contents.access .sec1 .address span {
          display: block; } }
    @media screen and (max-width: 767px) {
      #access .contents.access .sec1 .address .logo {
        margin-bottom: 15px; } }
    #access .contents.access .sec1 .address p {
      display: inline-block;
      text-align: left;
      margin: 0 23px; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec1 .address p {
          margin: 0;
          text-align: center; } }
  #access .contents.access .sec1 ul {
    text-align: center;
    margin-bottom: 100px; }
    @media screen and (max-width: 767px) {
      #access .contents.access .sec1 ul {
        letter-spacing: -0.4em;
        margin-bottom: 60px; } }
    #access .contents.access .sec1 ul li {
      display: inline-block;
      margin: 0 10px; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec1 ul li {
          letter-spacing: normal;
          width: 48%;
          margin: 0 1%; }
          #access .contents.access .sec1 ul li img {
            max-width: 100%;
            height: auto; } }
  #access .contents.access .sec2 {
    position: relative;
    box-shadow: 0px -6px 0px 0px rgba(0, 0, 0, 0.04);
    margin-bottom: 80px;
    padding-top: 100px;
    background: url("../img/access/access_bg.png") no-repeat center bottom; }
    @media screen and (max-width: 767px) {
      #access .contents.access .sec2 {
        padding: 60px 20px 0; }
        #access .contents.access .sec2 .wrap_sec_ttl h2 {
          line-height: 1; } }
    #access .contents.access .sec2 .map {
      text-align: center;
      margin-bottom: 45px; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec2 .map {
          display: none; }
          #access .contents.access .sec2 .map img {
            max-width: 100%;
            height: auto; } }
    #access .contents.access .sec2 .spmap {
      display: none; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec2 .spmap {
          display: block;
          margin-bottom: 40px; }
          #access .contents.access .sec2 .spmap img {
            max-width: 100%;
            height: auto; } }
    #access .contents.access .sec2 .way {
      text-align: center;
      margin-bottom: 100px; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec2 .way {
          display: none; } }
      #access .contents.access .sec2 .way li {
        margin-bottom: 20px; }
        @media screen and (max-width: 767px) {
          #access .contents.access .sec2 .way li img {
            max-width: 100%;
            height: auto; } }
    #access .contents.access .sec2 .spway {
      display: none; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec2 .spway {
          display: block;
          margin-bottom: 80px; } }
      #access .contents.access .sec2 .spway li {
        margin-bottom: 20px; }
        @media screen and (max-width: 767px) {
          #access .contents.access .sec2 .spway li img {
            max-width: 100%;
            height: auto; } }
    #access .contents.access .sec2 .timetable {
      width: 980px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec2 .timetable {
          width: 100%; } }
      #access .contents.access .sec2 .timetable .ttl {
        text-align: center;
        font-size: 24px;
        font-weight: bold;
        margin-bottom: 10px;
        color: #9d36b4; }
      #access .contents.access .sec2 .timetable .table {
        width: 100%;
        border-top: 1px solid #f4e1ee;
        border-left: 1px solid #f4e1ee;
        margin-bottom: 40px; }
        @media screen and (max-width: 767px) {
          #access .contents.access .sec2 .timetable .table {
            display: block;
            margin-bottom: 40px;
            box-sizing: border-box;
            overflow: hidden; } }
        @media screen and (max-width: 767px) {
          #access .contents.access .sec2 .timetable .table .t-tr {
            display: block;
            width: 50%;
            float: left; } }
        #access .contents.access .sec2 .timetable .table .t-tr .t-td {
          border-bottom: 1px solid #f4e1ee;
          border-right: 1px solid #f4e1ee;
          font-size: 15px;
          text-align: center;
          padding: 7px 0;
          font-weight: bold; }
          @media screen and (max-width: 767px) {
            #access .contents.access .sec2 .timetable .table .t-tr .t-td {
              display: block; } }
      #access .contents.access .sec2 .timetable .price {
        background-color: #fefaf5;
        box-shadow: 6.691px 7.431px 0px 0px rgba(0, 0, 0, 0.04);
        width: 980px;
        min-height: 130px;
        padding-top: 36px;
        box-sizing: border-box;
        margin: 0 auto 40px;
        text-align: center;
        font-size: 18px;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          #access .contents.access .sec2 .timetable .price {
            width: 100%;
            padding: 36px 15px 20px; } }
        #access .contents.access .sec2 .timetable .price p {
          line-height: 1.89; }
          #access .contents.access .sec2 .timetable .price p a {
            color: #9d36b4;
            text-decoration: underline; }
      #access .contents.access .sec2 .timetable .contact {
        text-align: center;
        font-size: 17px; }
    #access .contents.access .sec2 .ov {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      min-height: 1650px;
      background: url("../img/access/access_ov.png") no-repeat center 260px; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec2 .ov {
          display: none; } }
  #access .contents.access .sec3 {
    margin-bottom: 130px; }
    @media screen and (max-width: 767px) {
      #access .contents.access .sec3 {
        margin-bottom: 80px; } }
    #access .contents.access .sec3 .btn {
      width: 980px;
      margin: 0 auto;
      text-align: right; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec3 .btn {
          width: 100%;
          text-align: center; } }
      #access .contents.access .sec3 .btn a {
        display: inline-block;
        background: url("../img/common/btn_bg.png") no-repeat left top;
        background-size: 379px 80px;
        width: 379px;
        height: 80px;
        color: #FFF;
        font-weight: bold;
        text-align: center;
        padding-top: 22px;
        box-sizing: border-box;
        font-size: 20px;
        top: -43px;
        position: relative; }
        @media screen and (max-width: 767px) {
          #access .contents.access .sec3 .btn a {
            width: 280px;
            background-size: 280px auto;
            top: auto;
            margin-top: 30px;
            padding-top: 16px; } }
  #access .contents.access .sec4 {
    text-align: center;
    padding-top: 80px;
    margin-top: -80px; }
    @media screen and (max-width: 767px) {
      #access .contents.access .sec4 {
        padding: 80px 20px 0;
        margin-top: -80px; }
        #access .contents.access .sec4 img {
          max-width: 100%;
          height: auto; } }
    #access .contents.access .sec4 .wrap_sec_ttl {
      margin-bottom: 46px; }
    #access .contents.access .sec4 .read {
      margin-bottom: 80px;
      font-size: 18px;
      font-weight: bold;
      line-height: 1.78; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec4 .read {
          margin: 0 0 55px; } }
    @media screen and (max-width: 767px) {
      #access .contents.access .sec4 .map {
        display: none; } }
    #access .contents.access .sec4 .spmap {
      display: none; }
      @media screen and (max-width: 767px) {
        #access .contents.access .sec4 .spmap {
          display: block; } }
  #access .contents.access .hana_l1 {
    background: url("../img/common/hana_l.png") no-repeat;
    width: 208px;
    height: 1286px;
    position: absolute;
    left: 0;
    top: 760px; }
  #access .contents.access .hana_l2 {
    background: url("../img/common/hana_l.png") no-repeat;
    width: 208px;
    height: 1286px;
    position: absolute;
    left: 0;
    bottom: 360px; }
  #access .contents.access .hana_r1 {
    background: url("../img/common/hana_r.png") no-repeat;
    width: 203px;
    height: 456px;
    position: absolute;
    right: 0;
    top: 1780px; }
  #access .contents.access .hana_r2 {
    background: url("../img/common/hana_r.png") no-repeat;
    width: 203px;
    height: 456px;
    position: absolute;
    right: 0;
    bottom: 170px; }
  #access .contents.access .hana_l1, #access .contents.access .hana_l2, #access .contents.access .hana_r1, #access .contents.access .hana_r2 {
    opacity: 0;
    -webkit-transition: all .6s ease;
    -moz-transition: all .6s ease;
    -ms-transition: all .6s ease;
    transition: all .6s ease; }
    @media screen and (min-width: 1580px) {
      #access .contents.access .hana_l1, #access .contents.access .hana_l2, #access .contents.access .hana_r1, #access .contents.access .hana_r2 {
        opacity: 1; } }
    @media screen and (max-width: 767px) {
      #access .contents.access .hana_l1, #access .contents.access .hana_l2, #access .contents.access .hana_r1, #access .contents.access .hana_r2 {
        display: none; } }

#policy .wrap_page_ttl .page_ttl {
  padding-top: 144px; }
  @media screen and (max-width: 767px) {
    #policy .wrap_page_ttl .page_ttl {
      padding-top: 80px; } }
  #policy .wrap_page_ttl .page_ttl h1 {
    margin-left: -50px; }
    @media screen and (max-width: 767px) {
      #policy .wrap_page_ttl .page_ttl h1 {
        margin-left: 0;
        padding: 0 30px; } }

#policy .contents.policy {
  padding-top: 52px;
  background: url("../img/policy/pp_bg.png") no-repeat center 230px; }
  @media screen and (max-width: 767px) {
    #policy .contents.policy {
      padding: 0 20px;
      box-sizing: border-box; } }
  #policy .contents.policy .cnt {
    width: 720px;
    margin: 0 auto 63px; }
    @media screen and (max-width: 767px) {
      #policy .contents.policy .cnt {
        width: 100%;
        box-sizing: border-box; } }
    #policy .contents.policy .cnt h2 {
      border-bottom: 1px solid #e3d7e1;
      font-size: 17px;
      padding-bottom: 10px;
      margin-bottom: 22px; }
    #policy .contents.policy .cnt p {
      margin-bottom: 35px; }
    #policy .contents.policy .cnt ul {
      margin-bottom: 35px; }
      #policy .contents.policy .cnt ul li {
        margin-left: 20px; }
        #policy .contents.policy .cnt ul li:before {
          content: '';
          display: inline-block;
          background: #e3d7e1;
          margin-top: 8px;
          margin-left: -17px;
          margin-right: 8px;
          width: 10px;
          height: 10px;
          border-radius: 5px;
          vertical-align: top; }

#information .wrap_page_ttl .page_ttl {
  margin-bottom: 152px; }
  @media screen and (max-width: 767px) {
    #information .wrap_page_ttl .page_ttl {
      margin-bottom: 0; } }
  #information .wrap_page_ttl .page_ttl h1 {
    margin-left: -85px; }
    #information .wrap_page_ttl .page_ttl h1 img {
      margin-bottom: -26px; }
      @media screen and (max-width: 767px) {
        #information .wrap_page_ttl .page_ttl h1 img {
          margin-bottom: 0; } }
    @media screen and (max-width: 767px) {
      #information .wrap_page_ttl .page_ttl h1 {
        margin-left: 0;
        padding: 0 20px; } }

#information .contents.information .sec1 {
  width: 980px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    #information .contents.information .sec1 {
      width: 100%; } }
  #information .contents.information .sec1:after {
    content: '.';
    display: block;
    clear: both;
    height: 1px;
    visibility: hidden; }

#information .contents.information .main_cnt {
  width: 720px;
  float: left; }
  @media screen and (max-width: 767px) {
    #information .contents.information .main_cnt {
      width: 100%;
      float: none;
      margin-bottom: 60px; } }
  #information .contents.information .main_cnt .pickup {
    margin-bottom: 69px; }
    @media screen and (max-width: 767px) {
      #information .contents.information .main_cnt .pickup {
        margin-bottom: 20px; } }
    #information .contents.information .main_cnt .pickup:after {
      content: '.';
      display: block;
      clear: both;
      height: 1px;
      visibility: hidden; }
    #information .contents.information .main_cnt .pickup .cnt {
      width: 340px;
      float: left;
      position: relative; }
      @media screen and (max-width: 767px) {
        #information .contents.information .main_cnt .pickup .cnt {
          width: 280px;
          float: none;
          margin: 0 auto 40px; } }
      #information .contents.information .main_cnt .pickup .cnt:nth-of-type(2) {
        float: right; }
        @media screen and (max-width: 767px) {
          #information .contents.information .main_cnt .pickup .cnt:nth-of-type(2) {
            float: none; } }
    #information .contents.information .main_cnt .pickup .icon {
      position: absolute;
      right: 0;
      top: -50px;
      z-index: 100; }
      @media screen and (max-width: 767px) {
        #information .contents.information .main_cnt .pickup .icon {
          width: 100px;
          top: -20px; }
          #information .contents.information .main_cnt .pickup .icon img {
            width: 100%;
            height: auto; } }
    #information .contents.information .main_cnt .pickup .img {
      text-align: center;
      margin-bottom: 15px;
      background: url("../img/info/info_mask_bg.png") no-repeat; }
      @media screen and (max-width: 767px) {
        #information .contents.information .main_cnt .pickup .img {
          background-size: 260px auto;
          margin-bottom: -20px; } }
      #information .contents.information .main_cnt .pickup .img img {
        mask-image: url("../img/info/info_mask.png");
        -webkit-mask-image: url("../img/info/info_mask.png");
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center center;
        mask-position: center center; }
        @media screen and (max-width: 767px) {
          #information .contents.information .main_cnt .pickup .img img {
            width: 100%;
            height: auto;
            -webkit-mask-size: 260px auto;
            mask-size: 260px auto;
            -webkit-mask-position: 0 0;
            mask-position: 0 0; } }
    #information .contents.information .main_cnt .pickup .date {
      font-size: 13px;
      font-weight: bold; }
    #information .contents.information .main_cnt .pickup .ttl {
      font-size: 17px;
      font-weight: bold; }
      #information .contents.information .main_cnt .pickup .ttl a {
        color: #9d36b4; }
  #information .contents.information .main_cnt .cate_ttl {
    text-align: center;
    margin: 15px 0;
    font-size: 22px;
    font-weight: bold; }
  #information .contents.information .main_cnt .wrap_info_list {
    clear: both;
    border-top: 1px solid #e3d7e1; }
    #information .contents.information .main_cnt .wrap_info_list ul.info_list li {
      border-bottom: 1px solid #e3d7e1;
      padding: 17px 0;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        #information .contents.information .main_cnt .wrap_info_list ul.info_list li {
          padding: 10px 8px; } }
      #information .contents.information .main_cnt .wrap_info_list ul.info_list li .date {
        font-size: 13px;
        width: 76px;
        display: inline-block;
        vertical-align: middle; }
        @media screen and (max-width: 767px) {
          #information .contents.information .main_cnt .wrap_info_list ul.info_list li .date {
            width: 76px; } }
      #information .contents.information .main_cnt .wrap_info_list ul.info_list li .cate {
        font-size: 12px;
        display: inline-block;
        width: 70px;
        min-height: 20px;
        line-height: 20px;
        margin-right: 5px;
        text-align: center; }
        #information .contents.information .main_cnt .wrap_info_list ul.info_list li .cate.info {
          background: #bcfbf4;
          color: #38afa4; }
        #information .contents.information .main_cnt .wrap_info_list ul.info_list li .cate.event {
          background: #bcdefb;
          color: #5291c5; }
        #information .contents.information .main_cnt .wrap_info_list ul.info_list li .cate.shop_news {
          background: #ddc9f8;
          color: #b472c8;
          line-height: 1.2;
          vertical-align: middle;
          padding: 3px 0; }
        #information .contents.information .main_cnt .wrap_info_list ul.info_list li .cate.other {
          background: #faf7d9;
          color: #a69815; }
      #information .contents.information .main_cnt .wrap_info_list ul.info_list li .ttl {
        font-size: 17px;
        vertical-align: middle; }
        #information .contents.information .main_cnt .wrap_info_list ul.info_list li .ttl a {
          color: #9d36b4; }
        @media screen and (max-width: 767px) {
          #information .contents.information .main_cnt .wrap_info_list ul.info_list li .ttl {
            width: 100%;
            display: block; } }
    #information .contents.information .main_cnt .wrap_info_list .wrap_more {
      text-align: center;
      padding-top: 30px; }
      #information .contents.information .main_cnt .wrap_info_list .wrap_more .more_btn a {
        display: inline-block;
        background: #4d464c url("../img/common/arrow_u_w.png") no-repeat right 16px center;
        background-size: 15px;
        width: 240px;
        height: 45px;
        color: #FFF;
        font-size: 17px;
        font-weight: bold;
        border-radius: 26px;
        text-align: center;
        padding-top: 12px;
        padding-right: 8px;
        box-sizing: border-box; }

#information .contents.information .side_cnt {
  float: right;
  width: 200px;
  padding-bottom: 80px;
  background: url("../img/info/side_bg.png") no-repeat center bottom; }
  @media screen and (max-width: 767px) {
    #information .contents.information .side_cnt {
      float: none;
      width: 100%;
      text-align: center;
      margin-bottom: 60px; } }
  #information .contents.information .side_cnt .side_box {
    margin-bottom: 70px; }
    #information .contents.information .side_cnt .side_box .ttl {
      margin-bottom: 15px; }
    #information .contents.information .side_cnt .side_box .catelist li {
      margin-bottom: 10px; }
      @media screen and (max-width: 767px) {
        #information .contents.information .side_cnt .side_box .catelist li {
          padding: 0 20px; } }
      #information .contents.information .side_cnt .side_box .catelist li a {
        display: block;
        width: 200px;
        height: 60px;
        box-sizing: border-box;
        font-size: 18px;
        text-align: center;
        padding-top: 20px;
        position: relative; }
        @media screen and (max-width: 767px) {
          #information .contents.information .side_cnt .side_box .catelist li a {
            width: 100%; } }
        #information .contents.information .side_cnt .side_box .catelist li a:after {
          content: '';
          position: absolute;
          display: block;
          right: 0;
          bottom: 0;
          width: 0;
          height: 0; }
      #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(1) a {
        background: #bcfbf4;
        color: #38afa4; }
        #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(1) a:after {
          border-style: solid;
          border-width: 0 0 9px 9px;
          border-color: transparent transparent #38afa4 transparent; }
      #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(2) a {
        background: #bcdefb;
        color: #5291c5; }
        #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(2) a:after {
          border-style: solid;
          border-width: 0 0 9px 9px;
          border-color: transparent transparent #5291c5 transparent; }
      #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(3) a {
        background: #ddc9f8;
        color: #b472c8; }
        #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(3) a:after {
          border-style: solid;
          border-width: 0 0 9px 9px;
          border-color: transparent transparent #b472c8 transparent; }
      #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(4) a {
        background: rgb(241, 227, 209);
        color: #918d70; }
        #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(4) a:after {
          border-style: solid;
          border-width: 0 0 9px 9px;
          border-color: transparent transparent #b6b49f transparent; }
      #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(5) a {
            background: #faf7d9;
            color: #a69815; }
      #information .contents.information .side_cnt .side_box .catelist li:nth-of-type(5) a:after {
              border-style: solid;
              border-width: 0 0 9px 9px;
              border-color: transparent transparent #a69815 transparent; }
      
    #information .contents.information .side_cnt .side_box.side_tag ul li {
      font-size: 14px;
      display: inline; }
      #information .contents.information .side_cnt .side_box.side_tag ul li a {
        color: #9d36b4; }

@media screen and (max-width: 767px) {
  #information .contents.information.single .entry {
    padding: 0 20px; }
    #information .contents.information.single .entry img {
      max-width: 100%;
      height: auto; } }

#information .contents.information.single .entry .date {
  font-weight: bold; }

#information .contents.information.single .entry .ttl {
  font-size: 20px;
  font-weight: bold;
  color: #9d36b4;
  margin-bottom: 20px;
  position: relative; }
  @media screen and (max-width: 767px) {
    #information .contents.information.single .entry .ttl {
      padding-right: 72px;
      margin-bottom: 10px; } }
  #information .contents.information.single .entry .ttl:after {
    content: '';
    display: block;
    position: absolute;
    right: 1px;
    top: -79px;
    width: 137px;
    height: 107px; }
    @media screen and (max-width: 767px) {
      #information .contents.information.single .entry .ttl:after {
        width: 70px;
        height: 57px;
        top: -15px; } }
  #information .contents.information.single .entry .ttl.info:after {
    background: url("../img/info/info_icon1.png") no-repeat right top;
    background-size: 137px 107px; }
    @media screen and (max-width: 767px) {
      #information .contents.information.single .entry .ttl.info:after {
        background-size: 70px auto; } }
  #information .contents.information.single .entry .ttl.event:after {
    background: url("../img/info/info_icon2.png") no-repeat right top;
    background-size: 137px 107px; }
    @media screen and (max-width: 767px) {
      #information .contents.information.single .entry .ttl.event:after {
        background-size: 70px auto; } }
  #information .contents.information.single .entry .ttl.shop_news:after {
    background: url("../img/info/info_icon3.png") no-repeat right top;
    background-size: 137px 107px; }
    @media screen and (max-width: 767px) {
      #information .contents.information.single .entry .ttl.shop_news:after {
        background-size: 70px auto; } }
  #information .contents.information.single .entry .ttl.other:after {
    background: url("../img/info/info_icon4.png") no-repeat right top;
    background-size: 137px 107px; }
    @media screen and (max-width: 767px) {
      #information .contents.information.single .entry .ttl.other:after {
        background-size: 70px auto; } }

  #information .contents.information.single .entry .ttl.column:after {
    background: url("../img/info/info_icon5.png") no-repeat right top;
    background-size: 137px 107px; }
    @media screen and (max-width: 767px) {
      #information .contents.information.single .entry .ttl.column:after {
        background-size: 70px auto; } }
      

#information .contents.information.single .entry .body {
  padding: 40px 0 30px;
  margin-bottom: 40px;
  background: url("../img/info/info_bd.png") no-repeat left top, url("../img/info/info_bd.png") no-repeat left bottom; }
  #information .contents.information.single .entry .body p {
    margin-bottom: 30px; }
  #information .contents.information.single .entry .body a {
    color: #9d36b4;
    text-decoration: underline; }
  #information .contents.information.single .entry .body img {
    max-width: 100%;
    height: auto; }

#information .contents.information.single .pagenation {
  text-align: center; }
  #information .contents.information.single .pagenation .back_list {
    display: inline-block;
    vertical-align: middle;
    margin: 0 36px; }
    #information .contents.information.single .pagenation .back_list a {
      display: block;
      background: #4d464c url("../img/info/back_list_icon.png") no-repeat 32px center;
      background-size: 15px 17px;
      width: 240px;
      height: 45px;
      font-size: 17px;
      padding-top: 11px;
      padding-left: 20px;
      box-sizing: border-box;
      color: #FFF;
      text-align: center;
      border-radius: 23px; }
  #information .contents.information.single .pagenation .prev, #information .contents.information.single .pagenation .next {
    display: inline-block;
    vertical-align: middle; }
    #information .contents.information.single .pagenation .prev a, #information .contents.information.single .pagenation .next a {
      display: block;
      background: url("../img/info/prev.png") no-repeat left top;
      background-size: 28px;
      width: 28px;
      height: 28px; }
  #information .contents.information.single .pagenation .next a {
    background: url("../img/info/next.png") no-repeat left top;
    background-size: 28px; }

#contact .wrap_page_ttl .page_ttl h1 {
  margin-left: 38px; }
  #contact .wrap_page_ttl .page_ttl h1 img {
    margin-bottom: 30px; }
    @media screen and (max-width: 767px) {
      #contact .wrap_page_ttl .page_ttl h1 img {
        margin-bottom: 0; } }
  @media screen and (max-width: 767px) {
    #contact .wrap_page_ttl .page_ttl h1 {
      margin-left: 0;
      padding: 0 50px; } }

@media screen and (max-width: 767px) {
  #contact .contents.contact .sec1 {
    padding: 0 15px; } }

#contact .contents.contact .sec1 .email {
  width: 710px;
  height: 36px;
  margin: 0 auto 30px;
  background: #fbf3fa;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  padding-top: 2px;
  box-sizing: border-box;
  color: #9d36b4; }
  @media screen and (max-width: 767px) {
    #contact .contents.contact .sec1 .email {
      width: 100%;
      font-size: 14px;
      padding-top: 7px; } }
  #contact .contents.contact .sec1 .email i {
    margin-right: 20px; }
    @media screen and (max-width: 767px) {
      #contact .contents.contact .sec1 .email i {
        margin-right: 10px; } }
  #contact .contents.contact .sec1 .email a {
    color: #9d36b4; }

#contact .contents.contact .sec1 ul {
  width: 710px;
  margin: 0 auto 105px; }
  @media screen and (max-width: 767px) {
    #contact .contents.contact .sec1 ul {
      width: 100%;
      margin-bottom: 60px; } }
  #contact .contents.contact .sec1 ul li {
    margin-left: 18px;
    position: relative; }
    @media screen and (max-width: 767px) {
      #contact .contents.contact .sec1 ul li {
        margin-bottom: 8px; } }
    #contact .contents.contact .sec1 ul li:before {
      content: '※';
      display: block;
      margin-left: -18px;
      vertical-align: top;
      position: absolute;
      left: 0;
      top: 0; }
    #contact .contents.contact .sec1 ul li span {
      display: block; }
      @media screen and (max-width: 767px) {
        #contact .contents.contact .sec1 ul li span {
          display: inline; } }

#contact .contents.contact .sec2 {
  position: relative;
  box-shadow: 0px -6px 0px 0px rgba(0, 0, 0, 0.04);
  padding-top: 100px;
  background: url("../img/contact/contact_bg.png") no-repeat center bottom;
  width: 980px;
  margin: 0 auto 80px; }
  @media screen and (max-width: 767px) {
    #contact .contents.contact .sec2 {
      width: 100%;
      padding: 70px 15px 40px;
      margin: 0;
      box-sizing: border-box; } }
  #contact .contents.contact .sec2 .wrap_sec_ttl {
    margin-bottom: 40px; }
  #contact .contents.contact .sec2 .form {
    width: 720px;
    margin: 0 auto;
    text-align: left; }
    @media screen and (max-width: 767px) {
      #contact .contents.contact .sec2 .form {
        width: 100%; } }
    #contact .contents.contact .sec2 .form p.ttl {
      font-size: 17px;
      font-weight: bold;
      margin-bottom: 10px; }
      #contact .contents.contact .sec2 .form p.ttl span.his {
        font-size: 12px;
        text-align: center;
        display: inline-block;
        background: #9d36b4;
        width: 44px;
        padding: 4px 0;
        line-height: 1;
        border-radius: 3px;
        box-sizing: border-box;
        color: #FFF;
        margin-left: 8px;
        vertical-align: text-top; }
    #contact .contents.contact .sec2 .form p.input_area {
      margin-bottom: 24px; }
      #contact .contents.contact .sec2 .form p.input_area input {
        width: 100%;
        height: 42px;
        font-size: 16px;
        box-sizing: border-box;
        border: 1px solid #e3d7e1;
        padding: 0 8px; }
      #contact .contents.contact .sec2 .form p.input_area textarea {
        width: 100%;
        height: 222px;
        font-size: 16px;
        box-sizing: border-box;
        border: 1px solid #e3d7e1;
        padding: 0 8px; }
    #contact .contents.contact .sec2 .form p.submit {
      text-align: center; }
      #contact .contents.contact .sec2 .form p.submit input {
        display: inline-block;
        background: #4d464c url("../img/common/arrow_w.png") no-repeat right 21px center;
        background-size: 14px;
        border: none;
        width: 240px;
        height: 45px;
        color: #FFF;
        text-align: center;
        font-size: 17px;
        font-weight: bold;
        border-radius: 23px;
        cursor: pointer;
        -webkit-transition: all .6s ease;
        -moz-transition: all .6s ease;
        -ms-transition: all .6s ease;
        transition: all .6s ease; }
        #contact .contents.contact .sec2 .form p.submit input.wpcf7-back {
          width: 160px;
          background: #DDD url("../img/common/arrow_w2.png") no-repeat 21px center;
          background-size: 14px;
          margin-right: 10px; }
          @media screen and (max-width: 767px) {
            #contact .contents.contact .sec2 .form p.submit input.wpcf7-back {
              width: 240px;
              display: block;
              margin: 0 auto 15px; } }
        #contact .contents.contact .sec2 .form p.submit input.wpcf7-submit {
          width: 280px;
          margin-left: 10px; }
          @media screen and (max-width: 767px) {
            #contact .contents.contact .sec2 .form p.submit input.wpcf7-submit {
              width: 240px;
              display: block;
              margin: 0 auto; } }

@media screen and (max-width: 767px) {
  #sitemap .wrap_page_ttl .page_ttl h1 {
    padding: 0 50px; } }

#sitemap .sitemap {
  width: 800px;
  margin: 0 auto;
  padding-top: 31px; }
  @media screen and (max-width: 767px) {
    #sitemap .sitemap {
      width: 100%;
      padding: 0 20px;
      box-sizing: border-box; } }
  #sitemap .sitemap .cnt {
    overflow: hidden;
    margin-bottom: 30px; }
    #sitemap .sitemap .cnt ul {
      float: left;
      margin-right: 63px; }
      #sitemap .sitemap .cnt ul:nth-of-type(2) {
        margin-right: 84px; }
      #sitemap .sitemap .cnt ul:last-of-type {
        margin-right: 0; }
      #sitemap .sitemap .cnt ul li {
        background: url("../img/common/list_bd.png") no-repeat 3px bottom;
        background-size: 193px 11px;
        padding-bottom: 16px;
        margin-bottom: 35px;
        font-size: 17px;
        min-width: 196px;
        letter-spacing: 0; }
        #sitemap .sitemap .cnt ul li a {
          background: url("../img/common/list_icon.png") no-repeat left center;
          background-size: 16px;
          font-weight: bold;
          padding: 2px 0 2px 30px; }
  #sitemap .sitemap .shop_list {
    background-color: rgba(251, 243, 250, 0.349);
    box-shadow: 6.691px 7.431px 0px 0px rgba(0, 0, 0, 0.04);
    width: 800px;
    height: 320px;
    padding: 41px 94px 0;
    margin-bottom: 80px;
    box-sizing: border-box; }
    @media screen and (max-width: 767px) {
      #sitemap .sitemap .shop_list {
        width: 100%;
        padding: 30px 20px;
        height: auto; } }
    #sitemap .sitemap .shop_list .ttl {
      font-family: "Satisfy", cursive;
      color: #9d36b4;
      font-size: 45px;
      text-align: center;
      margin-bottom: 23px;
      letter-spacing: 0; }
    #sitemap .sitemap .shop_list ul {
      float: left;
      margin-right: 70px; }
      @media screen and (max-width: 767px) {
        #sitemap .sitemap .shop_list ul {
          float: none; } }
      #sitemap .sitemap .shop_list ul:last-of-type {
        margin-right: 0; }
      #sitemap .sitemap .shop_list ul li {
        font-size: 17px;
        margin-bottom: 20px;
        letter-spacing: 0; }
        #sitemap .sitemap .shop_list ul li a {
          display: block; }
          #sitemap .sitemap .shop_list ul li a:before {
            content: '>';
            margin-right: 9px;
            color: #9d36b4;
            font-family: "Avenir", "ＭＳ ゴシック", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro";
            font-size: 12px; }

.en .hnavi {
  margin-bottom: 32px; }
  .en .hnavi ul {
    margin-left: 40px; }
    .en .hnavi ul.hsns {
      padding-top: 4px; }
      .en .hnavi ul.hsns li a {
        font-size: 34px;
        color: #9d36b4; }
      .en .hnavi ul.hsns li:last-of-type a {
        font-size: 34px; }

.en .header .hlogo {
  margin-right: 40px; }

.en .gnavi ul {
  text-align: left;
  font-weight: bold; }
  .en .gnavi ul li {
    margin-left: 65px; }
    .en .gnavi ul li a:after {
      left: 1px;
      bottom: -9px; }

.en .wrap_footer {
  background: url("../img/common/fbg.jpg") no-repeat center bottom;
  min-height: 717px;
  box-sizing: border-box;
  padding-top: 94px; }
  @media screen and (max-width: 767px) {
    .en .wrap_footer {
      min-height: 0;
      background: url("../img/common/spfbg.jpg") no-repeat center bottom;
      background-size: 100%; } }
  .en .wrap_footer .footer {
    width: 980px;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .en .wrap_footer .footer {
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box; } }
    .en .wrap_footer .footer .fcnt {
      float: left;
      margin-right: 65px;
      padding-top: 4px; }
      @media screen and (max-width: 767px) {
        .en .wrap_footer .footer .fcnt {
          margin-right: 0;
          float: none; } }
      .en .wrap_footer .footer .fcnt .flogo {
        margin-bottom: 30px; }
      .en .wrap_footer .footer .fcnt .address {
        margin-bottom: 25px;
        letter-spacing: 0;
        font-weight: bold; }
        .en .wrap_footer .footer .fcnt .address i {
          margin-right: 5px; }
      .en .wrap_footer .footer .fcnt ul li {
        margin-bottom: 5px; }
        .en .wrap_footer .footer .fcnt ul li a {
          background: url("../img/common/list_icon.png") no-repeat left center;
          background-size: 16px;
          font-weight: bold;
          padding: 2px 0 2px 26px; }
    .en .wrap_footer .footer .fnavi {
      float: left; }
      @media screen and (max-width: 767px) {
        .en .wrap_footer .footer .fnavi {
          float: none; } }
      .en .wrap_footer .footer .fnavi ul:first-of-type {
        margin-bottom: 31px; }
        .en .wrap_footer .footer .fnavi ul:first-of-type li {
          margin-bottom: 6px; }
          .en .wrap_footer .footer .fnavi ul:first-of-type li a {
            background: url("../img/common/list_icon.png") no-repeat left center;
            background-size: 16px;
            font-weight: bold;
            padding: 2px 0 2px 30px; }
      .en .wrap_footer .footer .fnavi .fsns {
        font-size: 30px; }
        @media screen and (max-width: 767px) {
          .en .wrap_footer .footer .fnavi .fsns {
            display: block;
            text-align: center;
            margin-bottom: 80px; } }
        .en .wrap_footer .footer .fnavi .fsns li {
          display: inline-block;
          margin-right: 9px; }
          @media screen and (max-width: 767px) {
            .en .wrap_footer .footer .fnavi .fsns li {
              margin: 0 8px; } }
          .en .wrap_footer .footer .fnavi .fsns li a {
            color: #9d36b4; }
    .en .wrap_footer .footer .fshop {
      margin-top: 4px;
      padding: 39px 20px 0 25px; }
      .en .wrap_footer .footer .fshop .ttl {
        font-family: "Satisfy", cursive;
        color: #9d36b4;
        font-size: 30px;
        text-align: center;
        margin-bottom: 30px; }
      .en .wrap_footer .footer .fshop ul {
        float: left;
        margin-right: 15px; }
        .en .wrap_footer .footer .fshop ul:last-of-type {
          margin-right: 0; }
        .en .wrap_footer .footer .fshop ul li {
          font-size: 14px;
          margin-bottom: 10px;
          letter-spacing: 0;
          line-height: 1.43; }
          .en .wrap_footer .footer .fshop ul li a {
            display: block;
            padding-left: 15px; }
            .en .wrap_footer .footer .fshop ul li a:before {
              content: '>';
              margin-right: 5px;
              margin-left: -15px;
              color: #9d36b4;
              font-size: 12px; }
    .en .wrap_footer .footer .ffoot {
      clear: both;
      overflow: hidden; }
      .en .wrap_footer .footer .ffoot ul {
        float: left;
        letter-spacing: -0.4em;
        padding-top: 6px; }
        .en .wrap_footer .footer .ffoot ul li {
          display: inline-block;
          margin-right: 20px; }
          .en .wrap_footer .footer .ffoot ul li a {
            background: url("../img/common/list_icon2.png") no-repeat left center;
            background-size: 16px;
            padding: 2px 0 2px 26px;
            color: #000; }
      .en .wrap_footer .footer .ffoot .clogo {
        float: right;
        margin-bottom: 10px;
        font-size: 18px;
        font-weight: bold; }
      .en .wrap_footer .footer .ffoot .copyright {
        clear: both;
        text-align: right;
        font-size: 13px; }
        @media screen and (max-width: 767px) {
          .en .wrap_footer .footer .ffoot .copyright {
            text-align: center;
            margin-bottom: 10px;
            font-size: 9px; } }

.en#shop .contents.shop .sec1 .wrap_sec_ttl {
  margin-bottom: 45px; }

.en#shop .contents.shop .sec2 .wrap_sec_ttl {
  margin-bottom: 75px; }
  @media screen and (max-width: 767px) {
    .en#shop .contents.shop .sec2 .wrap_sec_ttl {
      margin-bottom: 50px; } }

.en#shop .wrap_page_ttl .page_ttl {
  margin-bottom: 83px; }
  @media screen and (max-width: 767px) {
    .en#shop .wrap_page_ttl .page_ttl {
      margin-bottom: 40px; } }
  .en#shop .wrap_page_ttl .page_ttl h1 {
    margin-left: 0;
    padding-top: 15px; }
    @media screen and (max-width: 767px) {
      .en#shop .wrap_page_ttl .page_ttl h1 {
        padding: 5px 20px 0; } }

.en#access .contents.access .sec2 .timetable .price {
  background: none;
  box-shadow: none;
  width: auto;
  min-height: 0;
  padding-top: 0;
  margin: 0 auto 40px; }

.en#about .contents.about .sec1 {
  padding-bottom: 360px; }
  @media screen and (max-width: 767px) {
    .en#about .contents.about .sec1 {
      padding-bottom: 115%; } }
  .en#about .contents.about .sec1 .cnt1 .cnt h2 {
    margin-bottom: 30px; }
  .en#about .contents.about .sec1 .cnt2 .cnt h2 {
    margin-bottom: 30px; }
  .en#about .contents.about .sec1 .cnt3 {
    margin: -90px auto 120px; }
    @media screen and (max-width: 767px) {
      .en#about .contents.about .sec1 .cnt3 {
        margin-bottom: 40px; } }
    .en#about .contents.about .sec1 .cnt3 .cnt h2 {
      margin-bottom: 30px; }
  .en#about .contents.about .sec1 .cnt4 .cnt p {
    font-size: 19px; }

.en#about .contents.about .sec2 .wrap .cnt .txt p {
  font-size: 18px;
  margin-bottom: 10px;
  margin-left: 35px; }

.en#about .contents.about .sec2 .wrap .cnt .txt ul {
  border-radius: 8px;
  background-color: #eaf8fa;
  width: 415px;
  min-height: 162px;
  padding: 30px 35px;
  box-sizing: border-box;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px; }
  @media screen and (max-width: 767px) {
    .en#about .contents.about .sec2 .wrap .cnt .txt ul {
      width: 100%;
      padding: 30px 20px; } }

@media screen and (max-width: 767px) {
  .en#about .contents.about .sec2 .wrap .img {
    padding-top: 10px; } }

.en#top .spwrap_top_header {
  background: url("../img/top/en/sptop_header.png") no-repeat center top;
  background-size: 100%; }
  @media screen and (max-width: 370px) {
    .en#top .spwrap_top_header {
      background-size: 120%; } }

.en#top .wrap_header .header_ov2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 1800px;
  z-index: 100;
  background: url("../img/top/en/top_ov2.png") no-repeat center top; }

.en#top .wrap_header .header {
  width: 980px;
  margin: 0 auto 200px;
  padding-top: 80px; }

.en#top .wrap_header .header_cnt {
  width: auto;
  left: 20px; }
  .en#top .wrap_header .header_cnt .top_lang {
    display: block;
    width: 365px; }
  .en#top .wrap_header .header_cnt h1 {
    margin-bottom: 1px;
    width: 365px; }
  .en#top .wrap_header .header_cnt .top_txt {
    text-align: center;
    font-weight: bold;
    margin-bottom: 34px;
    width: 365px;
    font-size: 16px; }
  .en#top .wrap_header .header_cnt .top_read {
    margin-bottom: 83px;
    text-align: left; }
    .en#top .wrap_header .header_cnt .top_read span {
      padding: 5px 45px 3px 21px; }
  .en#top .wrap_header .header_cnt .top_img {
    text-align: left;
    margin-left: -6px; }
  .en#top .wrap_header .header_cnt .icon1 {
    position: absolute;
    top: 9px;
    left: -49px; }
  .en#top .wrap_header .header_cnt .icon2 {
    position: absolute;
    top: 383px;
    left: -34px; }
  .en#top .wrap_header .header_cnt .icon3 {
    position: absolute;
    top: 425px;
    left: 252px; }

.en#top #top .sec1 .wrap, .en#top #top .sec2 .wrap, .en#top #top .sec3 .wrap {
  width: 980px;
  margin: 0 auto;
  position: relative;
  text-align: center; }

@media screen and (max-width: 767px) {
  .en#top #top .sec1 .wrap, .en#top #top .sec2 .wrap, .en#top #top .sec3 .wrap {
    width: 100%; } }

.en#top #top .sec1 .wrap .cnt h2, .en#top #top .sec2 .wrap .cnt h2, .en#top #top .sec3 .wrap .cnt h2 {
  margin-bottom: 15px; }

.en#top #top .sec1 .wrap .cnt .read, .en#top #top .sec2 .wrap .cnt .read, .en#top #top .sec3 .wrap .cnt .read {
  margin-bottom: 25px;
  font-weight: bold;
  font-size: 18px; }

@media screen and (max-width: 767px) {
  .en#top #top .sec1 .wrap .cnt .read, .en#top #top .sec2 .wrap .cnt .read, .en#top #top .sec3 .wrap .cnt .read {
    margin-bottom: 10px;
    font-size: 12px; } }

.en#top #top .sec1 .wrap .cnt .read span, .en#top #top .sec2 .wrap .cnt .read span, .en#top #top .sec3 .wrap .cnt .read span {
  display: block; }

.en#top .sec1 .wrap .cnt .read span, .en#top .sec2 .wrap .cnt .read span, .en#top .sec3 .wrap .cnt .read span {
  background: none;
  display: inline;
  margin-bottom: 0;
  padding: 0; }

.en#top .sec1 {
  background: url("../img/top/en/sptop_sec_bg1.png") no-repeat top center;
  position: relative;
  min-height: 660px;
  z-index: 100; }
  @media screen and (min-width: 2000px) {
    .en#top .sec1 {
      background-size: 100% auto; } }
  @media screen and (min-width: 768px) {
    .en#top .sec1 {
      background: url("../img/top/en/top_sec_bg1.png") no-repeat top center; } }
  @media screen and (max-width: 767px) {
    .en#top .sec1 {
      background-size: cover;
      min-height: 0; } }
  .en#top .sec1 .wrap {
    padding-top: 257px; }
    @media screen and (max-width: 767px) {
      .en#top .sec1 .wrap {
        padding-top: 35%; } }
    .en#top .sec1 .wrap .cnt {
      width: 540px; }
      @media screen and (max-width: 767px) {
        .en#top .sec1 .wrap .cnt {
          width: 100%;
          padding-bottom: 42%; } }
      .en#top .sec1 .wrap .cnt h2 {
        margin-left: 0;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .en#top .sec1 .wrap .cnt h2 {
            width: 100%;
            box-sizing: border-box; }
            .en#top .sec1 .wrap .cnt h2 img {
              width: 165px; } }

.en#top .sec2 {
  background: url("../img/top/en/sptop_sec_bg2.png") no-repeat top center;
  min-height: 654px; }
  @media screen and (min-width: 2000px) {
    .en#top .sec2 {
      background-size: 100% auto; } }
  @media screen and (min-width: 768px) {
    .en#top .sec2 {
      background: url("../img/top/en/top_sec_bg2.png") no-repeat top center; } }
  @media screen and (max-width: 767px) {
    .en#top .sec2 {
      background-size: cover;
      min-height: 0; } }
  .en#top .sec2 .wrap .cnt {
    width: 484px; }
    @media screen and (max-width: 767px) {
      .en#top .sec2 .wrap .cnt {
        width: 100%; } }
    .en#top .sec2 .wrap .cnt h2 {
      margin-left: 0;
      text-align: center; }
      @media screen and (max-width: 767px) {
        .en#top .sec2 .wrap .cnt h2 {
          width: 100%;
          box-sizing: border-box; }
          .en#top .sec2 .wrap .cnt h2 img {
            width: 242px; } }

.en#top .sec3 {
  background: url("../img/top/en/sptop_sec_bg3.png") no-repeat top center;
  min-height: 660px; }
  @media screen and (min-width: 2000px) {
    .en#top .sec3 {
      background-size: 100% auto; } }
  @media screen and (min-width: 768px) {
    .en#top .sec3 {
      background: url("../img/top/en/top_sec_bg3.png") no-repeat top center; } }
  @media screen and (max-width: 767px) {
    .en#top .sec3 {
      background-size: cover;
      min-height: 0; } }
  @media screen and (max-width: 767px) {
    .en#top .sec3 .wrap {
      padding-top: 35%; } }
  @media screen and (max-width: 767px) {
    .en#top .sec3 .wrap .cnt {
      padding-bottom: 42%; } }
  .en#top .sec3 .wrap .cnt h2 {
    margin-left: 0;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .en#top .sec3 .wrap .cnt h2 {
        width: 100%;
        box-sizing: border-box; }
        .en#top .sec3 .wrap .cnt h2 img {
          width: 215px; } }

.en#top .sec5 {
  padding-top: 80px; }
  .en#top .sec5 .access_cnt {
    width: 980px;
    margin: 0 auto;
    min-height: 500px;
    background: url("../img/top/cn/top_map.png") no-repeat right top; }
    @media screen and (max-width: 767px) {
      .en#top .sec5 .access_cnt {
        background: none;
        min-height: 0;
        width: 100%; } }
    .en#top .sec5 .access_cnt .cnt {
      padding: 30px 0 0; }
      .en#top .sec5 .access_cnt .cnt .ttl {
        margin-bottom: 25px; }
      .en#top .sec5 .access_cnt .cnt ul {
        font-size: 0;
        border: 1px solid #a675b0;
        border-right: none;
        margin-bottom: 50px;
        width: 400px; }
        @media screen and (max-width: 767px) {
          .en#top .sec5 .access_cnt .cnt ul {
            width: 100%;
            border: 1px solid #a675b0;
            border-bottom: none; } }
        .en#top .sec5 .access_cnt .cnt ul li {
          width: 230px;
          display: inline-block;
          font-size: 16px;
          color: #a675b0;
          border-right: 1px solid #a675b0;
          padding: 8px 0 6px;
          box-sizing: border-box;
          background: #FFF;
          text-align: center;
          font-weight: bold; }
          @media screen and (max-width: 767px) {
            .en#top .sec5 .access_cnt .cnt ul li {
              border-right: none;
              width: 100%;
              display: block; } }
          .en#top .sec5 .access_cnt .cnt ul li:nth-of-type(2) {
            width: 170px; }
            @media screen and (max-width: 767px) {
              .en#top .sec5 .access_cnt .cnt ul li:nth-of-type(2) {
                width: 100%; } }
          .en#top .sec5 .access_cnt .cnt ul li:last-of-type {
            width: 400px;
            border-top: 1px solid #a675b0; }
            @media screen and (max-width: 767px) {
              .en#top .sec5 .access_cnt .cnt ul li:last-of-type {
                width: 100%;
                border-top: none; } }

.cn .hnavi {
  margin-bottom: 32px; }
  .cn .hnavi ul {
    margin-left: 40px; }
    .cn .hnavi ul.hsns {
      padding-top: 4px; }
      .cn .hnavi ul.hsns li a {
        font-size: 34px;
        color: #9d36b4; }
      .cn .hnavi ul.hsns li:last-of-type a {
        font-size: 34px; }

.cn .header .hlogo {
  margin-right: 4px; }

.cn .gnavi ul {
  text-align: left;
  font-weight: bold; }
  .cn .gnavi ul li {
    margin-left: 100px; }
    .cn .gnavi ul li a:after {
      left: 1px;
      bottom: -9px; }

.cn .wrap_footer {
  padding-top: 94px; }
  .cn .wrap_footer .footer .fcnt {
    float: left;
    margin-right: 74px;
    padding-top: 4px; }
    @media screen and (max-width: 767px) {
      .cn .wrap_footer .footer .fcnt {
        margin-right: 0;
        float: none; } }
    .cn .wrap_footer .footer .fcnt .flogo {
      margin-bottom: 30px; }
    .cn .wrap_footer .footer .fcnt .address {
      margin-bottom: 25px;
      letter-spacing: 0;
      font-weight: bold; }
      .cn .wrap_footer .footer .fcnt .address i {
        margin-right: 5px; }
    .cn .wrap_footer .footer .fcnt ul li {
      margin-bottom: 5px; }
      .cn .wrap_footer .footer .fcnt ul li a {
        background: url("../img/common/list_icon.png") no-repeat left center;
        background-size: 16px;
        font-weight: bold;
        padding: 2px 0 2px 26px; }
  .cn .wrap_footer .footer .fnavi {
    margin-top: 20px;
    float: left; }
    @media screen and (max-width: 767px) {
      .cn .wrap_footer .footer .fnavi {
        float: none; } }
    .cn .wrap_footer .footer .fnavi ul:first-of-type {
      margin-bottom: 2px; }
      .cn .wrap_footer .footer .fnavi ul:first-of-type li {
        margin-bottom: 6px; }
        .cn .wrap_footer .footer .fnavi ul:first-of-type li a {
          background: url("../img/common/list_icon.png") no-repeat left center;
          background-size: 16px;
          font-weight: bold;
          padding: 2px 0 2px 30px; }
    .cn .wrap_footer .footer .fnavi .fsns {
      font-size: 30px; }
      .cn .wrap_footer .footer .fnavi .fsns li {
        display: inline-block;
        margin-right: 9px; }
        .cn .wrap_footer .footer .fnavi .fsns li a {
          color: #9d36b4; }
  .cn .wrap_footer .footer .fshop {
    margin-top: -85px;
    width: 431px;
    height: 240px;
    padding: 12px 10px 0 39px; }
    .cn .wrap_footer .footer .fshop .ttl {
      font-family: "Satisfy", cursive;
      color: #9d36b4;
      font-size: 30px;
      text-align: center;
      margin-bottom: 17px; }
    .cn .wrap_footer .footer .fshop ul {
      float: left;
      margin-right: 25px; }
      .cn .wrap_footer .footer .fshop ul:last-of-type {
        margin-right: 0; }
      .cn .wrap_footer .footer .fshop ul li {
        font-size: 14px;
        margin-bottom: 10px;
        letter-spacing: 0;
        line-height: 1.43; }
        .cn .wrap_footer .footer .fshop ul li a {
          display: block;
          padding-left: 15px; }
          .cn .wrap_footer .footer .fshop ul li a:before {
            content: '>';
            margin-right: 5px;
            margin-left: -15px;
            color: #9d36b4;
            font-size: 12px; }
  .cn .wrap_footer .footer .ffoot {
    clear: both;
    overflow: hidden; }
    .cn .wrap_footer .footer .ffoot ul {
      float: left;
      letter-spacing: -0.4em;
      padding-top: 6px; }
      .cn .wrap_footer .footer .ffoot ul li {
        display: inline-block;
        margin-right: 20px; }
        .cn .wrap_footer .footer .ffoot ul li a {
          background: url("../img/common/list_icon2.png") no-repeat left center;
          background-size: 16px;
          padding: 2px 0 2px 26px;
          color: #000; }
    .cn .wrap_footer .footer .ffoot .clogo {
      float: right;
      margin-bottom: 10px;
      font-size: 18px;
      font-weight: bold; }
    .cn .wrap_footer .footer .ffoot .copyright {
      clear: both;
      text-align: right;
      font-size: 13px; }
      @media screen and (max-width: 767px) {
        .cn .wrap_footer .footer .ffoot .copyright {
          text-align: center;
          margin-bottom: 10px;
          font-size: 9px; } }

.cn#access .contents.access .sec2 .timetable .price {
  background: none;
  box-shadow: none;
  width: auto;
  min-height: 0;
  padding-top: 0;
  margin: 0 auto 40px; }

.cn#about .contents.about .sec1 {
  padding-bottom: 420px; }
  .cn#about .contents.about .sec1 .cnt1 .cnt h2 {
    margin-bottom: 30px; }
  .cn#about .contents.about .sec1 .cnt2 .cnt h2 {
    margin-bottom: 30px; }
  .cn#about .contents.about .sec1 .cnt3 .cnt h2 {
    margin-bottom: 30px; }
  .cn#about .contents.about .sec1 .cnt4 .cnt p {
    font-size: 19px; }

@media screen and (max-width: 767px) {
  .cn#about .contents.about .sec2 {
    padding-bottom: 0; } }

.cn#about .contents.about .sec2 .wrap .cnt .txt p {
  font-size: 18px;
  margin-bottom: 10px;
  margin-left: 35px; }
  @media screen and (max-width: 767px) {
    .cn#about .contents.about .sec2 .wrap .cnt .txt p {
      margin-left: 8px; } }

.cn#about .contents.about .sec2 .wrap .cnt .txt ul {
  border-radius: 8px;
  background-color: #eaf8fa;
  width: 415px;
  min-height: 162px;
  padding: 30px 35px;
  box-sizing: border-box;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px; }
  @media screen and (max-width: 767px) {
    .cn#about .contents.about .sec2 .wrap .cnt .txt ul {
      width: 100%;
      padding: 30px 20px; } }

.cn#shop .contents.shop {
  padding-top: 50px; }
  @media screen and (max-width: 767px) {
    .cn#shop .contents.shop {
      padding-top: 20px; } }
  .cn#shop .contents.shop .sec1 .wrap_sec_ttl {
    margin-bottom: 0; }
    .cn#shop .contents.shop .sec1 .wrap_sec_ttl .sec_ttl span {
      display: inline-block;
      line-height: 4.4; }

.cn#top .spwrap_top_header {
  background: url("../img/top/en/sptop_header.png") no-repeat center top;
  background-size: 100%; }
  @media screen and (max-width: 370px) {
    .cn#top .spwrap_top_header {
      background-size: 120%; } }

.cn#top .wrap_header .header_ov2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 1800px;
  z-index: 100;
  background: url("../img/top/en/top_ov2.png") no-repeat center top; }

.cn#top .wrap_header .header {
  width: 980px;
  margin: 0 auto 200px;
  padding-top: 80px; }

.cn#top .wrap_header .header_cnt {
  width: auto;
  left: 18px; }
  .cn#top .wrap_header .header_cnt .top_lang {
    display: block;
    width: 365px; }
  .cn#top .wrap_header .header_cnt h1 {
    margin-bottom: 5px;
    width: 365px; }
  .cn#top .wrap_header .header_cnt .top_txt {
    text-align: center;
    font-weight: bold;
    margin-bottom: 19px;
    width: 365px;
    font-size: 16px; }
  .cn#top .wrap_header .header_cnt .top_read {
    margin-bottom: 90px;
    text-align: left; }
    .cn#top .wrap_header .header_cnt .top_read span {
      display: inline-block;
      background: #FFF;
      padding: 7px 17px 3px;
      margin-bottom: 7px; }
  .cn#top .wrap_header .header_cnt .top_img {
    margin-left: -5px; }
  .cn#top .wrap_header .header_cnt .icon1 {
    position: absolute;
    top: 9px;
    left: -49px; }
  .cn#top .wrap_header .header_cnt .icon2 {
    position: absolute;
    top: 383px;
    left: -34px; }
  .cn#top .wrap_header .header_cnt .icon3 {
    position: absolute;
    top: 425px;
    left: 252px; }

.cn#top #top .sec1 .wrap, .cn#top #top .sec2 .wrap, .cn#top #top .sec3 .wrap {
  width: 980px;
  margin: 0 auto;
  position: relative;
  text-align: center; }

@media screen and (max-width: 767px) {
  .cn#top #top .sec1 .wrap, .cn#top #top .sec2 .wrap, .cn#top #top .sec3 .wrap {
    width: 100%; } }

.cn#top #top .sec1 .wrap .cnt h2, .cn#top #top .sec2 .wrap .cnt h2, .cn#top #top .sec3 .wrap .cnt h2 {
  margin-bottom: 15px; }

.cn#top #top .sec1 .wrap .cnt .read, .cn#top #top .sec2 .wrap .cnt .read, .cn#top #top .sec3 .wrap .cnt .read {
  margin-bottom: 25px;
  font-weight: bold;
  font-size: 18px; }

@media screen and (max-width: 767px) {
  .cn#top #top .sec1 .wrap .cnt .read, .cn#top #top .sec2 .wrap .cnt .read, .cn#top #top .sec3 .wrap .cnt .read {
    margin-bottom: 10px;
    font-size: 12px; } }

.cn#top #top .sec1 .wrap .cnt .read span, .cn#top #top .sec2 .wrap .cnt .read span, .cn#top #top .sec3 .wrap .cnt .read span {
  display: block; }

.cn#top .sec1 .wrap .cnt .read span, .cn#top .sec2 .wrap .cnt .read span, .cn#top .sec3 .wrap .cnt .read span {
  background: none;
  display: inline;
  margin-bottom: 0;
  padding: 0; }

.cn#top .sec1 {
  background: url("../img/top/cn/sptop_sec_bg1.png") no-repeat top center;
  position: relative;
  min-height: 660px;
  z-index: 100; }
  @media screen and (min-width: 2000px) {
    .cn#top .sec1 {
      background-size: 100% auto; } }
  @media screen and (min-width: 768px) {
    .cn#top .sec1 {
      background: url("../img/top/cn/top_sec_bg1.png") no-repeat top center; } }
  @media screen and (max-width: 767px) {
    .cn#top .sec1 {
      background-size: cover;
      min-height: 0; } }
  .cn#top .sec1 .wrap {
    padding-top: 257px; }
    @media screen and (max-width: 767px) {
      .cn#top .sec1 .wrap {
        padding-top: 46%; } }
    .cn#top .sec1 .wrap .cnt {
      width: 540px; }
      @media screen and (max-width: 767px) {
        .cn#top .sec1 .wrap .cnt {
          width: 100%;
          padding-bottom: 37%;
          box-sizing: border-box; } }
      .cn#top .sec1 .wrap .cnt h2 {
        margin-left: 230px;
        text-align: left; }
        @media screen and (max-width: 767px) {
          .cn#top .sec1 .wrap .cnt h2 {
            width: 70px;
            margin-left: 65%;
            margin-bottom: 0;
            padding: 0; }
            .cn#top .sec1 .wrap .cnt h2 img {
              max-width: 100%;
              height: auto; } }

.cn#top .sec2 {
  background: url("../img/top/cn/sptop_sec_bg2.png") no-repeat top center;
  min-height: 654px; }
  @media screen and (min-width: 2000px) {
    .cn#top .sec2 {
      background-size: 100% auto; } }
  @media screen and (min-width: 768px) {
    .cn#top .sec2 {
      background: url("../img/top/cn/top_sec_bg2.png") no-repeat top center; } }
  @media screen and (max-width: 767px) {
    .cn#top .sec2 {
      background-size: cover;
      min-height: 0; } }
  .cn#top .sec2 .wrap {
    padding-top: 230px;
    height: 654px; }
    @media screen and (max-width: 767px) {
      .cn#top .sec2 .wrap {
        height: auto;
        padding-top: 26%; } }
    .cn#top .sec2 .wrap .cnt {
      width: 460px;
      float: right; }
      @media screen and (max-width: 767px) {
        .cn#top .sec2 .wrap .cnt {
          width: 100%;
          float: none;
          padding-bottom: 47%;
          box-sizing: border-box; } }
      .cn#top .sec2 .wrap .cnt h2 {
        text-align: right;
        margin-right: 23px; }
        @media screen and (max-width: 767px) {
          .cn#top .sec2 .wrap .cnt h2 {
            width: 70px;
            margin-left: 65%;
            margin-bottom: 0;
            padding: 0; }
            .cn#top .sec2 .wrap .cnt h2 img {
              max-width: 100%;
              height: auto; } }
      @media screen and (max-width: 767px) {
        .cn#top .sec2 .wrap .cnt .read span {
          display: inline; } }

.cn#top .sec3 {
  background: url("../img/top/cn/sptop_sec_bg3.png") no-repeat top center;
  min-height: 660px; }
  @media screen and (min-width: 2000px) {
    .cn#top .sec3 {
      background-size: 100% auto; } }
  @media screen and (min-width: 768px) {
    .cn#top .sec3 {
      background: url("../img/top/cn/top_sec_bg3.png") no-repeat top center; } }
  @media screen and (max-width: 767px) {
    .cn#top .sec3 {
      background-size: cover;
      min-height: 0; } }
  .cn#top .sec3 .wrap {
    padding-top: 240px;
    height: 660px; }
    @media screen and (max-width: 767px) {
      .cn#top .sec3 .wrap {
        height: auto;
        padding-top: 40%; } }
    @media screen and (max-width: 767px) {
      .cn#top .sec3 .wrap .cnt {
        width: 100%;
        margin-left: 0;
        padding-bottom: 33%;
        box-sizing: border-box; } }
    .cn#top .sec3 .wrap .cnt h2 {
      margin-left: 90px;
      margin-bottom: 20px; }
      @media screen and (max-width: 767px) {
        .cn#top .sec3 .wrap .cnt h2 {
          width: 70px;
          margin-bottom: 0;
          padding: 0; }
          .cn#top .sec3 .wrap .cnt h2 img {
            max-width: 100%;
            height: auto; } }

.cn#top .sec5 {
  padding-top: 80px; }
  .cn#top .sec5 .access_cnt {
    width: 980px;
    margin: 0 auto;
    min-height: 500px;
    background: url("../img/top/cn/top_map.png") no-repeat right top; }
    @media screen and (max-width: 767px) {
      .cn#top .sec5 .access_cnt {
        min-height: 0;
        width: 100%;
        background: none; } }
    .cn#top .sec5 .access_cnt .cnt {
      padding: 30px 0 0; }
      .cn#top .sec5 .access_cnt .cnt .ttl {
        margin-bottom: 25px; }

.access .parking {
  text-align: center;
  background: url("../img/access/spparking_bg.jpg") no-repeat center top;
  -webkit-background-size: cover;
  background-size: cover;
  padding: 100px 0 70px; }

.access .parking .txt {
  font-size: 17px;
  margin-top: -6px;
  font-weight: bold; }

@media screen and (max-width: 767px) {
  .access .parking .wrap_sec_ttl {
    margin-bottom: 12px; }
  .access .parking {
    margin: 0 -20px 60px;
    padding: 35px 20px; }
  .access .parking img {
    max-width: 100%;
    height: auto; }
  .access .parking .txt {
    font-size: 13px;
    margin-top: 10px; } }

@media screen and (min-width: 768px) {
  .access .parking {
    text-align: center;
    margin-bottom: 113px;
    background: url("../img/access/parking_bg.jpg") no-repeat center; }
  .access .parking .wrap_sec_ttl {
    margin-bottom: -72px; }
  .access .parking .wrap_sec_ttl .sec_ttl span {
    line-height: 5.2; } }

#modelcourse .lavenderl {
  display: none; }

#modelcourse .lavenderr {
  display: none; }

#modelcourse .hana_l {
  display: none;
  background: url("../img/modelcourse/hana_l.png") no-repeat;
  width: 335px;
  height: 1553px;
  position: absolute;
  left: 0;
  top: 1620px; }
  @media screen and (min-width: 768px) {
    #modelcourse .hana_l {
      display: block;
      opacity: 0;
      z-index: -1;
      -webkit-transition: all .6s ease;
      -moz-transition: all .6s ease;
      -ms-transition: all .6s ease;
      transition: all .6s ease; } }
  @media screen and (min-width: 1580px) {
    #modelcourse .hana_l {
      z-index: 10;
      opacity: 1; } }

#modelcourse .hana_r {
  display: none;
  background: url("../img/modelcourse/hana_r.png") no-repeat;
  width: 161px;
  height: 2964px;
  position: absolute;
  right: 0;
  top: 800px; }
  @media screen and (min-width: 768px) {
    #modelcourse .hana_r {
      display: block;
      opacity: 0;
      z-index: -1;
      -webkit-transition: all .6s ease;
      -moz-transition: all .6s ease;
      -ms-transition: all .6s ease;
      transition: all .6s ease; } }
  @media screen and (min-width: 1580px) {
    #modelcourse .hana_r {
      z-index: 10;
      opacity: 1; } }

#modelcourse .wrap_page_ttl:after {
  background: url("../img/ttl/access_bg.png") no-repeat center;
  background-size: cover; }

#modelcourse .wrap_page_ttl .page_ttl {
  margin-bottom: 81px; }
  @media screen and (max-width: 767px) {
    #modelcourse .wrap_page_ttl .page_ttl {
      margin-bottom: 0;
      padding-top: 40px; } }
  #modelcourse .wrap_page_ttl .page_ttl h1 {
    margin-left: 64px; }
    #modelcourse .wrap_page_ttl .page_ttl h1 img {
      margin-bottom: 16px; }
    @media screen and (max-width: 767px) {
      #modelcourse .wrap_page_ttl .page_ttl h1 {
        margin-left: 0;
        padding: 0 70px; }
        #modelcourse .wrap_page_ttl .page_ttl h1 span {
          margin: 0 -30px; } }

#modelcourse .model {
  padding-top: 0; }
  @media screen and (max-width: 767px) {
    #modelcourse .model img {
      max-width: 100%;
      height: auto; } }
  #modelcourse .model .sec_ttl {
    margin-bottom: 21px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #modelcourse .model .sec_ttl {
        padding: 0 20px; } }
  #modelcourse .model .model_lead {
    text-align: center;
    font-size: 19px;
    font-weight: bold;
    margin-bottom: 14px;
    line-height: 1.9; }
    @media screen and (max-width: 767px) {
      #modelcourse .model .model_lead {
        font-size: 16px;
        text-align: left;
        padding: 0 20px;
        margin-bottom: 20px; } }
  #modelcourse .model .model_txt_bg {
    color: #9d36b4;
    line-height: 34px;
    font-size: 16px;
    font-weight: bold;
    background-image: -moz-linear-gradient(0deg, rgba(255, 145, 246, 0.25) 0%, rgba(132, 254, 255, 0.25) 100%);
    background-image: -webkit-linear-gradient(0deg, rgba(255, 145, 246, 0.25) 0%, rgba(132, 254, 255, 0.25) 100%);
    background-image: -ms-linear-gradient(0deg, rgba(255, 145, 246, 0.25) 0%, rgba(132, 254, 255, 0.25) 100%);
    width: 452px;
    height: 34px;
    margin: 0 auto -20px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #modelcourse .model .model_txt_bg {
        width: calc(100% - 40px);
        margin: 0 20px 30px;
        height: auto;
        line-height: 1.6;
        padding: 8px 0 6px; } }
  #modelcourse .model .model_map {
    background: url("../img/modelcourse/spmodel_map_bg.jpg") no-repeat center top;
    background-size: 100%;
    min-height: 1058px;
    margin-bottom: 30px; }
    @media screen and (min-width: 768px) {
      #modelcourse .model .model_map {
        background: url("../img/modelcourse/model_map_bg.png") no-repeat center top; } }
    @media screen and (max-width: 767px) {
      #modelcourse .model .model_map {
        min-height: 0;
        margin-bottom: 0; } }
    #modelcourse .model .model_map ul {
      position: relative;
      width: 980px;
      height: 930px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        #modelcourse .model .model_map ul {
          width: 100%;
          height: auto;
          padding: 20px 20px;
          box-sizing: border-box; } }
      #modelcourse .model .model_map ul li {
        position: absolute; }
        @media screen and (max-width: 767px) {
          #modelcourse .model .model_map ul li {
            position: relative;
            top: auto !important;
            left: auto !important;
            width: 80%; } }
        #modelcourse .model .model_map ul li a {
          display: block;
          -webkit-transition: all .1s ease;
          -moz-transition: all .1s ease;
          -ms-transition: all .1s ease;
          transition: all .1s ease; }
          #modelcourse .model .model_map ul li a:hover {
            position: relative;
            transform: scale(0.94) translate3d(0, 5px, 0); }
          @media screen and (max-width: 767px) {
            #modelcourse .model .model_map ul li a {
              opacity: 1 !important; } }
        #modelcourse .model .model_map ul li:nth-of-type(1) {
          top: 56px;
          left: 57px; }
          @media screen and (max-width: 767px) {
            #modelcourse .model .model_map ul li:nth-of-type(1) {
              margin-left: -15px;
              margin-bottom: -30px; } }
        #modelcourse .model .model_map ul li:nth-of-type(2) {
          top: 199px;
          left: 587px; }
          @media screen and (max-width: 767px) {
            #modelcourse .model .model_map ul li:nth-of-type(2) {
              float: right;
              margin-right: -10px;
              margin-bottom: 85%; } }
        #modelcourse .model .model_map ul li:nth-of-type(3) {
          top: 526px;
          left: 287px; }
          @media screen and (max-width: 767px) {
            #modelcourse .model .model_map ul li:nth-of-type(3) {
              text-align: center;
              clear: both;
              margin: 0 auto; } }
    #modelcourse .model .model_map .map_txt {
      font-size: 20px;
      margin: 0 auto 50px;
      width: 980px;
      padding-left: 405px;
      padding-right: 190px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #modelcourse .model .model_map .map_txt {
          width: 100%;
          margin: 0;
          padding: 15px 20px 0;
          font-size: 13px; } }

#modelcourse .modelcourse_link {
  text-align: center;
  letter-spacing: -0.4em;
  margin-bottom: 30px; }
  @media screen and (max-width: 767px) {
    #modelcourse .modelcourse_link {
      padding: 0 12px; } }
  #modelcourse .modelcourse_link li {
    display: inline-block;
    letter-spacing: normal;
    background: url("../img/modelcourse/model_link.png") no-repeat;
    width: 236px;
    height: 92px;
    margin-right: 12px; }
    @media screen and (max-width: 767px) {
      #modelcourse .modelcourse_link li {
        background-size: 100%;
        width: 48%;
        margin-right: 4%;
        margin-bottom: 8px;
        height: auto; }
        #modelcourse .modelcourse_link li:nth-of-type(even) {
          margin-right: 0; } }
    #modelcourse .modelcourse_link li:last-of-type {
      margin-right: 0; }
    #modelcourse .modelcourse_link li.active {
      background: url("../img/modelcourse/model_link_on.png") no-repeat; }
      @media screen and (max-width: 767px) {
        #modelcourse .modelcourse_link li.active {
          background-size: 100%; } }
      #modelcourse .modelcourse_link li.active span {
        background: none; }
    #modelcourse .modelcourse_link li a, #modelcourse .modelcourse_link li span {
      color: #FFF;
      font-size: 18px;
      padding-top: 29px;
      display: block;
      background: url("../img/common/arrow_w.png") no-repeat center bottom;
      background-size: 16px;
      padding-bottom: 19px; }
      @media screen and (max-width: 767px) {
        #modelcourse .modelcourse_link li a, #modelcourse .modelcourse_link li span {
          font-size: 16px;
          padding-top: 14%;
          padding-bottom: 12%;
          background: none; } }

#modelcourse .model_course {
  margin-top: 30px; }
  #modelcourse .model_course .course_cnt {
    width: 980px;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 767px) {
      #modelcourse .model_course .course_cnt {
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box; } }
    #modelcourse .model_course .course_cnt .ttl {
      margin-bottom: 7px; }
    @media screen and (max-width: 767px) {
      #modelcourse .model_course .course_cnt .inviewfadeInUp,
      #modelcourse .model_course .course_cnt .inviewfadeInUp2 {
        opacity: 1 !important;
        -webkit-animation-name: fadeInUpaa;
        -webkit-animation-duration: 1.1s;
        animation-name: fadeInUpaa;
        animation-duration: 1.1s; } }
    #modelcourse .model_course .course_cnt .txt {
      padding-left: 25px;
      line-height: 2;
      margin-bottom: 13px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .txt {
          box-sizing: border-box; } }
      #modelcourse .model_course .course_cnt .txt a {
        text-decoration: underline; }
    #modelcourse .model_course .course_cnt .btn {
      margin-left: 26px; }
      #modelcourse .model_course .course_cnt .btn a {
        background: url("../img/modelcourse/btn_bg.png") no-repeat;
        background-size: 240px;
        width: 240px;
        height: 65px;
        display: block;
        color: #FFF;
        font-size: 16px;
        font-weight: bold;
        padding: 18px 0 0 45px; }
    #modelcourse .model_course .course_cnt .plan1_1 {
      margin-left: 8px;
      margin-bottom: 64px;
      padding-top: 24px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan1_1 {
          margin-left: 0;
          margin-bottom: 0;
          background: url("../img/modelcourse/dot.png") no-repeat center bottom;
          background-size: 5px;
          padding-bottom: 48px; } }
    #modelcourse .model_course .course_cnt .plan1_2 {
      margin-left: 55px;
      margin-bottom: 210px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan1_2 {
          margin-left: 0;
          margin-bottom: 25px; } }
      #modelcourse .model_course .course_cnt .plan1_2 .txt {
        width: 330px; }
        @media screen and (max-width: 767px) {
          #modelcourse .model_course .course_cnt .plan1_2 .txt {
            width: 100%; } }
    #modelcourse .model_course .course_cnt .plan1_3 {
      float: right;
      width: 405px;
      margin-bottom: 138px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan1_3 {
          width: 100%;
          float: none;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .plan1_4 {
      clear: both;
      margin-left: 15px;
      width: 360px;
      margin-bottom: 112px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan1_4 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .plan1_5 {
      float: right;
      width: 405px;
      margin-bottom: 503px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan1_5 {
          width: 100%;
          float: none;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .plan1_6 {
      clear: both;
      margin-left: 15px;
      width: 350px;
      margin-bottom: 130px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan1_6 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .fukidashi1_1 {
      position: absolute;
      top: 734px;
      left: 390px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi1_1 {
          position: relative;
          top: auto;
          left: auto;
          margin-bottom: -25px; } }
    #modelcourse .model_course .course_cnt .fukidashi1_2 {
      position: absolute;
      top: 1354px;
      left: 361px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi1_2 {
          position: relative;
          top: auto;
          left: auto;
          margin-bottom: -25px; } }
    #modelcourse .model_course .course_cnt .fukidashi1_3 {
      position: absolute;
      top: 2413px;
      left: 163px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi1_3 {
          position: relative;
          top: auto;
          left: auto;
          margin-bottom: -10px; } }
    #modelcourse .model_course .course_cnt .plan2_1 {
      padding-left: 413px;
      margin-bottom: 44px;
      padding-top: 24px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan2_1 {
          width: 100%;
          float: none;
          margin-left: 0;
          padding-left: 0;
          margin-bottom: 0;
          background: url("../img/modelcourse/dot.png") no-repeat center bottom;
          background-size: 5px;
          padding-bottom: 48px; } }
    #modelcourse .model_course .course_cnt .plan2_2 {
      float: right;
      width: 444px;
      margin-bottom: 198px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan2_2 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .plan2_3 {
      clear: both;
      padding-left: 10px;
      width: 395px;
      box-sizing: border-box;
      margin-bottom: 181px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan2_3 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .plan2_4 {
      float: right;
      width: 326px;
      margin-bottom: 126px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan2_4 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .plan2_5 {
      clear: both;
      width: 410px;
      margin-bottom: 553px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan2_5 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .plan2_6 {
      float: right;
      width: 346px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan2_6 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
    #modelcourse .model_course .course_cnt .fukidashi2_1 {
      position: absolute;
      top: 756px;
      left: 215px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi2_1 {
          position: relative;
          top: auto;
          left: auto;
          margin-bottom: -25px; } }
    #modelcourse .model_course .course_cnt .fukidashi2_2 {
      position: absolute;
      top: 1327px;
      left: 313px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi2_2 {
          position: relative;
          top: auto;
          left: auto;
          text-align: right;
          margin-bottom: -25px; } }
    #modelcourse .model_course .course_cnt .fukidashi2_3 {
      position: absolute;
      top: 2405px;
      left: 544px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi2_3 {
          position: relative;
          top: auto;
          left: auto;
          margin-bottom: -10px; } }
    #modelcourse .model_course .course_cnt .plan3_1 {
      margin-left: 8px;
      margin-bottom: 64px;
      padding-top: 24px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan3_1 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 0;
          background: url("../img/modelcourse/dot.png") no-repeat center bottom;
          background-size: 5px;
          padding-bottom: 48px; } }
    #modelcourse .model_course .course_cnt .plan3_2 {
      margin-left: 55px;
      margin-bottom: 200px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan3_2 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 25px; } }
      #modelcourse .model_course .course_cnt .plan3_2 .txt {
        width: 380px; }
        @media screen and (max-width: 767px) {
          #modelcourse .model_course .course_cnt .plan3_2 .txt {
            width: 100%; } }
    #modelcourse .model_course .course_cnt .plan3_3 {
      float: right;
      width: 365px;
      padding-right: 35px;
      box-sizing: border-box;
      margin-bottom: 118px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan3_3 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 20px; } }
    #modelcourse .model_course .course_cnt .plan3_4 {
      clear: both;
      margin-left: 15px;
      width: 360px;
      margin-bottom: 129px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan3_4 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 20px; } }
    #modelcourse .model_course .course_cnt .plan3_5 {
      float: right;
      width: 435px;
      margin-bottom: 503px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan3_5 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 20px; } }
    #modelcourse .model_course .course_cnt .plan3_6 {
      clear: both;
      width: 350px;
      margin-bottom: 130px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .plan3_6 {
          width: 100%;
          float: none;
          margin-left: 0;
          margin-bottom: 20px; } }
    #modelcourse .model_course .course_cnt .fukidashi3_1 {
      position: absolute;
      top: 724px;
      left: 401px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi3_1 {
          position: relative;
          top: auto;
          left: auto;
          text-align: right;
          margin-bottom: -24px;
          margin-right: -10px; }
          #modelcourse .model_course .course_cnt .fukidashi3_1 img {
            width: 220px; } }
    #modelcourse .model_course .course_cnt .fukidashi3_2 {
      position: absolute;
      top: 1335px;
      left: 314px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi3_2 {
          position: relative;
          top: auto;
          left: auto;
          margin-bottom: -26px; }
          #modelcourse .model_course .course_cnt .fukidashi3_2 img {
            width: 240px; } }
    #modelcourse .model_course .course_cnt .fukidashi3_3 {
      position: absolute;
      top: 2433px;
      left: 33px; }
      @media screen and (max-width: 767px) {
        #modelcourse .model_course .course_cnt .fukidashi3_3 {
          position: relative;
          top: auto;
          left: auto;
          margin-bottom: -36px; }
          #modelcourse .model_course .course_cnt .fukidashi3_3 img {
            width: 240px; } }
  #modelcourse .model_course.plan1 {
    background: none; }
    @media screen and (min-width: 768px) {
      #modelcourse .model_course.plan1 {
        background: url("../img/modelcourse/course1_bg.png") no-repeat center top 12px;
        min-height: 3012px; } }
  #modelcourse .model_course.plan2 {
    background: none; }
    @media screen and (min-width: 768px) {
      #modelcourse .model_course.plan2 {
        background: url("../img/modelcourse/course2_bg.png") no-repeat center top 12px;
        margin-top: -14px;
        overflow: hidden;
        margin-bottom: 60px; } }
  #modelcourse .model_course.plan3 {
    background: none; }
    @media screen and (min-width: 768px) {
      #modelcourse .model_course.plan3 {
        background: url("../img/modelcourse/course3_bg.png") no-repeat center top;
        min-height: 3040px;
        padding-top: 11px;
        margin-top: -24px; } }
  @media screen and (max-width: 767px) {
    #modelcourse .model_course .plan_img {
      margin-bottom: 10px;
      display: block;
      background: url("../img/modelcourse/dot.png") no-repeat center bottom;
      background-size: 5px;
      padding-bottom: 56px; } }
  @media screen and (max-width: 767px) {
    #modelcourse .model_course .plan_img:last-of-type {
      background: none; } }

#modelcourse .course_map {
  background: url("../img/modelcourse/course_map_bg.png") no-repeat;
  min-height: 1180px;
  padding-top: 200px;
  box-sizing: border-box;
  text-align: center; }
  @media screen and (min-width: 2000px) {
    #modelcourse .course_map {
      background-size: 100%; } }
  @media screen and (max-width: 767px) {
    #modelcourse .course_map {
      min-height: 0; } }
  #modelcourse .course_map .wrap_sec_ttl {
    margin-bottom: -90px; }
    @media screen and (max-width: 767px) {
      #modelcourse .course_map .wrap_sec_ttl {
        margin-bottom: 0; } }
  @media screen and (max-width: 767px) {
    #modelcourse .course_map .plan_map {
      margin-bottom: 30px; } }
  #modelcourse .course_map ul {
    text-align: center;
    letter-spacing: -0.4em;
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      #modelcourse .course_map ul {
        padding: 0 20px; } }
    #modelcourse .course_map ul li {
      letter-spacing: normal;
      display: inline-block;
      margin: 0 10px; }
      @media screen and (max-width: 767px) {
        #modelcourse .course_map ul li {
          display: block;
          margin-bottom: 15px;
          text-align: center; } }
      #modelcourse .course_map ul li a {
        display: block;
        background: url("../img/common/btn_bg.png") no-repeat;
        background-size: 379px;
        width: 379px;
        height: 80px;
        font-size: 20px;
        color: #FFF;
        padding: 25px;
        box-sizing: border-box; }
        @media screen and (max-width: 767px) {
          #modelcourse .course_map ul li a {
            background-size: cover;
            width: 280px;
            height: 58px;
            display: inline-block;
            padding-top: 15px; } }

#gallery .wrap_page_ttl:after {
  background: url("../img/ttl/gallery_bg.png") no-repeat center;
  background-size: cover; }

#gallery .wrap_page_ttl .page_ttl {
  margin-bottom: 130px; }
  @media screen and (max-width: 767px) {
    #gallery .wrap_page_ttl .page_ttl {
      margin-bottom: 0; } }
  #gallery .wrap_page_ttl .page_ttl h1 {
    margin-left: 64px; }
    @media screen and (max-width: 767px) {
      #gallery .wrap_page_ttl .page_ttl h1 {
        margin-left: 0;
        padding: 0 70px; }
        #gallery .wrap_page_ttl .page_ttl h1 span {
          margin: 0 -30px; } }

#gallery .contents.galleryf {
  background: url("../img/gallery/gallery_bg.png") no-repeat center top; }
  #gallery .contents.galleryf img {
    max-width: 100%;
    height: auto; }
  @media screen and (max-width: 767px) {
    #gallery .contents.galleryf .sec1 {
      padding: 0 15px;
      box-sizing: border-box; } }
  #gallery .contents.galleryf .sec1 .movie_cnt {
    width: 860px;
    margin: 85px auto 120px; }
    @media screen and (max-width: 767px) {
      #gallery .contents.galleryf .sec1 .movie_cnt {
        width: 100%;
        margin-bottom: 60px; } }
    #gallery .contents.galleryf .sec1 .movie_cnt .youtube {
      width: 860px;
      height: 480px;
      background: #CCC;
      position: relative;
      margin-bottom: 15px; }
      @media screen and (max-width: 767px) {
        #gallery .contents.galleryf .sec1 .movie_cnt .youtube {
          width: 100%;
          height: 51.8vw; } }
      #gallery .contents.galleryf .sec1 .movie_cnt .youtube:before {
        content: '';
        display: block;
        position: absolute;
        top: -54px; }
        @media screen and (max-width: 767px) {
          #gallery .contents.galleryf .sec1 .movie_cnt .youtube:before {
            top: -20px; } }
      #gallery .contents.galleryf .sec1 .movie_cnt .youtube iframe {
        width: 100%;
        height: 100%; }

    #gallery .contents.galleryf .sec1 .movie_cnt.spring .youtube:before {
      background: url("../img/gallery/spring_icon.png") no-repeat;
      width: 122px;
      height: 104px;
      left: -60px; }
      @media screen and (max-width: 767px) {
        #gallery .contents.galleryf .sec1 .movie_cnt.spring .youtube:before {
          background-size: cover;
          width: 61px;
          height: 52px;
          left: -10px; } }

    #gallery .contents.galleryf .sec1 .movie_cnt.summer .youtube:before {
      background: url("../img/gallery/summer_icon.png") no-repeat;
      width: 122px;
      height: 104px;
      right: -60px; }
      @media screen and (max-width: 767px) {
        #gallery .contents.galleryf .sec1 .movie_cnt.summer .youtube:before {
          background-size: cover;
          width: 61px;
          height: 52px;
          right: -10px; } }


    #gallery .contents.galleryf .sec1 .movie_cnt.fall .youtube:before {
      background: url("../img/gallery/fall_icon.png") no-repeat;
      width: 122px;
      height: 104px;
      left: -60px; }
      @media screen and (max-width: 767px) {
        #gallery .contents.galleryf .sec1 .movie_cnt.fall .youtube:before {
          background-size: cover;
          width: 61px;
          height: 52px;
          left: -10px; } }
  #gallery .contents.galleryf .sec2 {
    background: url("../img/gallery/sec2_bg.png") no-repeat center top;
    padding-top: 155px;
    padding-bottom: 100px; }
    @media screen and (max-width: 767px) {
      #gallery .contents.galleryf .sec2 {
        padding-top: 170px;
        background-size: 150%;
        padding: 100px 15px 0; } }
    #gallery .contents.galleryf .sec2 .sec_ttl {
      text-align: center;
      margin-bottom: 55px; }
      @media screen and (max-width: 767px) {
        #gallery .contents.galleryf .sec2 .sec_ttl {
          margin-bottom: 30px; } }
    #gallery .contents.galleryf .sec2 .lead {
      text-align: center;
      font-size: 18px;
      line-height: 2.22;
      margin-bottom: 60px; }
    #gallery .contents.galleryf .sec2 .season {
      width: 980px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        #gallery .contents.galleryf .sec2 .season {
          width: 100%; } }
      #gallery .contents.galleryf .sec2 .season .flowers ul li {
        opacity: 0;
        transform: translateY(88px);
        transition: 1.15s; }
      #gallery .contents.galleryf .sec2 .season .flowers.flower_on ul li {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0); }
      #gallery .contents.galleryf .sec2 .season .spring_flowers {
        background: url("../img/gallery/spring_bg.png") no-repeat center top -56px;
        width: 980px;
        height: 786px;
        margin-bottom: 35px;
        position: relative; }
        @media screen and (max-width: 767px) {
          #gallery .contents.galleryf .sec2 .season .spring_flowers {
            width: 100%;
            background: none;
            height: 145vw; }
            #gallery .contents.galleryf .sec2 .season .spring_flowers:before {
              content: '';
              background: url("../img/gallery/spring_icon1.png") no-repeat;
              background-size: 97px;
              width: 97px;
              height: 60px;
              display: block;
              position: absolute;
              left: 23vw;
              top: 91vw; }
            #gallery .contents.galleryf .sec2 .season .spring_flowers:after {
              content: '';
              background: url("../img/gallery/spring_icon2.png") no-repeat;
              background-size: 42px;
              width: 43px;
              height: 41px;
              display: block;
              position: absolute;
              left: 8vw;
              top: 32vw; } }
        #gallery .contents.galleryf .sec2 .season .spring_flowers .ttl {
          padding-left: 63px; }
          @media screen and (max-width: 767px) {
            #gallery .contents.galleryf .sec2 .season .spring_flowers .ttl {
              width: 45%;
              padding-left: 0; } }
        #gallery .contents.galleryf .sec2 .season .spring_flowers ul {
          position: absolute;
          top: 30px;
          width: 100%; }
          #gallery .contents.galleryf .sec2 .season .spring_flowers ul li {
            position: absolute; }
            #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(1) {
              top: 0;
              right: 187px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(1) {
                  right: 0;
                  width: 54%; } }
            #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(2) {
              top: 224px;
              right: 0; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(2) {
                  top: 50vw;
                  right: -10px;
                  width: 45%; } }
            #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(3) {
              top: 240px;
              left: 40px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(3) {
                  top: 38vw;
                  left: -5px;
                  width: 52%; } }
            #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(4) {
              top: 445px;
              right: 25px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(4) {
                  top: 100vw;
                  right: auto;
                  left: -8px;
                  width: 60%; } }
            #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(5) {
              top: 541px;
              left: 246px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .spring_flowers ul li:nth-of-type(5) {
                  top: 93vw;
                  right: 3vw;
                  left: auto;
                  width: 40%; } }
        #gallery .contents.galleryf .sec2 .season .spring_flowers.flower_on ul li:nth-of-type(2) {
          transition-delay: 0.15s; }
        #gallery .contents.galleryf .sec2 .season .spring_flowers.flower_on ul li:nth-of-type(3) {
          transition-delay: 0.22s; }
        #gallery .contents.galleryf .sec2 .season .spring_flowers.flower_on ul li:nth-of-type(4) {
          transition-delay: 0.4s; }
        #gallery .contents.galleryf .sec2 .season .spring_flowers.flower_on ul li:nth-of-type(5) {
          transition-delay: 0.36s; }
      #gallery .contents.galleryf .sec2 .season .summer_flowers {
        background: url("../img/gallery/summer_bg.png") no-repeat center top 110px;
        width: 980px;
        height: 880px;
        margin-bottom: 55px;
        position: relative; }
        @media screen and (max-width: 767px) {
          #gallery .contents.galleryf .sec2 .season .summer_flowers {
            width: 100%;
            height: 192vw;
            background: none; }
            #gallery .contents.galleryf .sec2 .season .summer_flowers:before {
              content: '';
              background: url("../img/gallery/summer_icon1.png") no-repeat;
              background-size: 48px;
              width: 48px;
              height: 33px;
              display: block;
              position: absolute;
              right: 2vw;
              top: 95vw; }
            #gallery .contents.galleryf .sec2 .season .summer_flowers:after {
              content: '';
              background: url("../img/gallery/summer_icon2.png") no-repeat;
              background-size: 42px;
              width: 42px;
              height: 60px;
              display: block;
              position: absolute;
              right: 14vw;
              top: 105vw; } }
        #gallery .contents.galleryf .sec2 .season .summer_flowers .ttl {
          text-align: right;
          padding-right: 106px; }
          @media screen and (max-width: 767px) {
            #gallery .contents.galleryf .sec2 .season .summer_flowers .ttl {
              padding-right: 4%;
              padding-left: 42%; } }
        #gallery .contents.galleryf .sec2 .season .summer_flowers ul {
          position: absolute;
          top: 105px;
          left: 0;
          width: 100%; }
          @media screen and (max-width: 767px) {
            #gallery .contents.galleryf .sec2 .season .summer_flowers ul {
              top: 110px; } }
          #gallery .contents.galleryf .sec2 .season .summer_flowers ul li {
            position: absolute; }
            #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(1) {
              top: 0;
              left: -3px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(1) {
                  top: 5vw;
                  width: 50%; } }
            #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(2) {
              top: 140px;
              left: 270px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(2) {
                  top: 19vw;
                  left: auto;
                  right: -1.5vw;
                  width: 50%; } }
            #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(3) {
              top: 170px;
              right: 50px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(3) {
                  top: 57vw;
                  left: -10px;
                  width: 70%; } }
            #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(4) {
              top: 325px;
              left: 12px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(4) {
                  top: 97vw;
                  left: auto;
                  right: -2vw;
                  width: 40%; } }
            #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(5) {
              top: 458px;
              left: 260px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(5) {
                  top: 120vw;
                  left: -8px;
                  width: 47%; } }
            #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(6) {
              top: 571px;
              right: 103px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .summer_flowers ul li:nth-of-type(6) {
                  top: 133vw;
                  right: 0;
                  width: 50%; } }
        #gallery .contents.galleryf .sec2 .season .summer_flowers.flower_on ul li:nth-of-type(1) {
          transition-delay: 0.15s; }
        #gallery .contents.galleryf .sec2 .season .summer_flowers.flower_on ul li:nth-of-type(2) {
          transition-delay: 0.25s; }
        #gallery .contents.galleryf .sec2 .season .summer_flowers.flower_on ul li:nth-of-type(4) {
          transition-delay: 0.38s; }
        #gallery .contents.galleryf .sec2 .season .summer_flowers.flower_on ul li:nth-of-type(5) {
          transition-delay: 0.33s; }
        #gallery .contents.galleryf .sec2 .season .summer_flowers.flower_on ul li:nth-of-type(5) {
          transition-delay: 0.32s; }
        #gallery .contents.galleryf .sec2 .season .summer_flowers.flower_on ul li:nth-of-type(6) {
          transition-delay: 0.2s; }
      #gallery .contents.galleryf .sec2 .season .fall_flowers {
        background: url("../img/gallery/fall_bg.png") no-repeat center bottom;
        width: 980px;
        height: 750px;
        position: relative; }
        @media screen and (max-width: 767px) {
          #gallery .contents.galleryf .sec2 .season .fall_flowers {
            width: 100%;
            height: 200vw;
            background: none; }
            #gallery .contents.galleryf .sec2 .season .fall_flowers:before {
              content: '';
              background: url("../img/gallery/fall_icon1.png") no-repeat;
              background-size: 125px;
              width: 125px;
              height: 118px;
              display: block;
              position: absolute;
              left: 10px;
              bottom: 0px; } }
        #gallery .contents.galleryf .sec2 .season .fall_flowers .ttl {
          padding-left: 46px; }
          @media screen and (max-width: 767px) {
            #gallery .contents.galleryf .sec2 .season .fall_flowers .ttl {
              padding-left: 0;
              width: 60%; } }
        #gallery .contents.galleryf .sec2 .season .fall_flowers ul {
          position: absolute;
          top: 112px;
          left: 0;
          width: 100%; }
          #gallery .contents.galleryf .sec2 .season .fall_flowers ul li {
            position: absolute; }
            #gallery .contents.galleryf .sec2 .season .fall_flowers ul li:nth-of-type(1) {
              top: 0;
              right: 10px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .fall_flowers ul li:nth-of-type(1) {
                  top: 20vw;
                  width: 90%; } }
            #gallery .contents.galleryf .sec2 .season .fall_flowers ul li:nth-of-type(2) {
              top: 158px;
              left: 0; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .fall_flowers ul li:nth-of-type(2) {
                  top: 95vw;
                  left: -10px;
                  width: 46%; } }
            #gallery .contents.galleryf .sec2 .season .fall_flowers ul li:nth-of-type(3) {
              top: 270px;
              left: 238px; }
              @media screen and (max-width: 767px) {
                #gallery .contents.galleryf .sec2 .season .fall_flowers ul li:nth-of-type(3) {
                  top: 110vw;
                  left: auto;
                  right: -5px;
                  width: 64%; } }
        #gallery .contents.galleryf .sec2 .season .fall_flowers.flower_on ul li:nth-of-type(2) {
          transition-delay: 0.15s; }
        #gallery .contents.galleryf .sec2 .season .fall_flowers.flower_on ul li:nth-of-type(3) {
          transition-delay: 0.22s; }

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




/*お知らせ スタイル追加↓*/
#gallery-1 .gallery-item{overflow: hidden;}
#gallery-2 .gallery-item{overflow: hidden;}
#gallery-3 .gallery-item{overflow: hidden;}
#gallery-4 .gallery-item{overflow: hidden;}
#gallery-5 .gallery-item{overflow: hidden;}

#gallery-1 img{border: none !important; padding: 5px;}
#gallery-2 img{border: none !important; padding: 5px;}
#gallery-3 img{border: none !important; padding: 5px;}
#gallery-4 img{border: none !important; padding: 5px;}
#gallery-5 img{border: none !important; padding: 5px;}


mark{background:none; font-style: normal;}
#information .contents.information.single .entry .ttl{font-size:1.6em;}
@media screen and (max-width: 767px) {
  #information .contents.information.single .entry .ttl{font-size:1.2em; }
}

#information .main_cnt .entry .body{font-size: 1.05rem; line-height: 1.6;}
#information .main_cnt .entry .body p{ text-align: justify;}

.information .main_cnt .entry h2  {
  font-size: 1.6em;
  line-height: 1.8;
  font-weight: 900;
  margin: 2em 0 1em 0;
  padding: 10px 0px;
  color: #9d36b4;
  border-bottom: solid 1px #9d36b4;
}

@media screen and (max-width: 767px) {
  .information .main_cnt .entry h2  { font-size: 1.2em;{}
}

.information .main_cnt .entry h3 {
	font-size:1.3em;
	margin: 2em 0 0.5em 0; line-height: 1.3;
	padding: 10px 0px;
	font-weight: 800;
}

@media screen and (max-width: 767px) {
  .information .main_cnt .entry h3  { font-size: 1.1em;{}
}


.information .main_cnt .entry h4 {
	border-left: solid 1px #000;
	font-size:1em;
	font-weight: bold;
	margin: 2em 0 1em 0;
	padding: 0px 0 0 10px;
	line-height: 1.3;
}

.information .main_cnt .entry h5 {font-size:1em;
	margin: 1em 0;
	border-bottom: solid 2px #ccc;
	padding: 5px 0;
	font-weight: bold;
	line-height:1.3;
}
.information .main_cnt .entry h6 {
	font-size: 1em;
	padding: 0;
	margin-bottom: 0.5em;
	font-weight: normal;
	line-height: 1.4;
	font-weight: bold;
}

.information .main_cnt .entry table {
	/*border: solid 1px #ccc;*/
	border-collapse: collapse;
	background: #fff;
	margin-top: 1em;
	box-sizing: border-box;
	border: solid 1px #ccc;
}
.information .main_cnt .entry table tr{border-bottom: solid 1px #ccc;}
.information .main_cnt table th{
	border: solid 1px #ccc;
	border-collapse: collapse;
	text-align: left;
	padding: 10px;
	vertical-align: middle;
	line-height: 1.4;
	background: #f7f7f7;
	font-weight: 400;
	box-sizing: border-box;
}
.information .main_cnt .entry table td{
	border: solid 1px #ccc;
	border-collapse: collapse;
	padding: 10px;
	line-height: 1.6;
	box-sizing: border-box;
	vertical-align: middle;
}

.information .main_cnt .entry ul{margin-left : 15px; margin-top: 1em; padding-left:15px; list-style-type: disc;}
.information .main_cnt .entry ul li{padding : 0px 0px 2px 0px; display: list-item;}

.information .main_cnt .entry ol {padding : 0px 0px 0px 16px; margin-top: 1em; margin-left: 15px;　list-style-type: decimal;}
.information .main_cnt .entry ol li { list-style-type: decimal;}