#firstView .gallery {
  position: relative;
  min-width: 750px;
  line-height: 0;
  overflow: hidden; }
  #firstView .gallery #filter_left, #firstView .gallery #filter_right {
    position: absolute;
    top: 0;
    width: -webkit-calc((100% - 750px)/2);
    width: calc((100% - 750px)/2);
    height: 400px;
    background: rgba(255, 255, 255, 0.5);
    z-index: 2; }
  #firstView .gallery #filter_left {
    left: 0; }
  #firstView .gallery #filter_right {
    right: 0; }
  #firstView .gallery .carousel {
    position: relative;
    width: 750px;
    margin: 0 auto; }
    #firstView .gallery .carousel .thumbs {
      position: relative;
      left: 0;
      width: 10000px;
      clear: both; }
      #firstView .gallery .carousel .thumbs .thumbs_list {
        float: left;
        font-size: 0; }
        #firstView .gallery .carousel .thumbs .thumbs_list li {
          position: relative;
          display: inline-block;
          width: 750px;
          height: 400px; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR {
            position: absolute;
            bottom: 30px;
            width: fit-content;
            text-align: center; }
            #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn a, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL a, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR a {
              padding: 2px 15px 6px;
              font-size: 18px;
              letter-spacing: 2px;
              color: #fff;
              border: 1px solid #ffa0b4;
              border-radius: 20px;
              background: #ffa0b4;
              transition: 0.5s; }
              #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn a:visited, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn a:link, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL a:visited, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL a:link, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR a:visited, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR a:link {
                color: #fff; }
              #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn a:hover, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL a:hover, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR a:hover {
                text-shadow: none;
                box-shadow: none;
                color: #ffa0b4;
                background: #fff; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn {
            left: 0;
            right: 0;
            margin: 0 auto; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL {
            left: 60px;
            margin: 0; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR {
            right: 60px;
            margin: 0; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .guarantee {
            position: absolute;
            right: 10px;
            bottom: 10px;
            width: 120px;
            height: 120px;
            padding: 15px 20px 0;
            text-align: center;
            border: 2px solid #fff;
            border-radius: 50%;
            background: blue;
            transform: -webkit-rotate(20deg);
            transform: rotate(20deg); }
            #firstView .gallery .carousel .thumbs .thumbs_list li .guarantee p {
              font-size: 12px;
              font-weight: 700;
              line-height: 22px;
              color: #fff;
              border-bottom: 2px dotted #fff; }
              #firstView .gallery .carousel .thumbs .thumbs_list li .guarantee p span {
                font-size: 12px;
                color: yellow; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .catch {
            position: absolute;
            width: 1px;
            height: 1px;
            margin: -1px;
            padding: 0;
            border: 0;
            overflow: hidden;
            clip: rect(0 0 0 0);
            white-space: nowrap; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header1 {
          background: url(img/top/firstView1.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header2 {
          background: url(img/top/firstView2.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header3 {
          background: url(img/top/firstView3.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header4 {
          background: url(img/top/firstView4.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header5 {
          background: url(img/top/firstView5.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header6 {
          background: url(img/top/firstView6.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header7 {
          background: url(img/top/firstView7.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
        #firstView .gallery .carousel .thumbs .thumbs_list #header8 {
          background: url(img/top/firstView8.png);
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat; }
    #firstView .gallery .carousel .thumbs_nav {
      position: absolute;
      top: 160px;
      left: 0;
      width: 750px; }
      #firstView .gallery .carousel .thumbs_nav a {
        display: block;
        position: absolute;
        top: 0;
        width: 40px;
        height: 80px;
        background-image: url(img/top/thumbs_nav.png); }
      #firstView .gallery .carousel .thumbs_nav a.prev {
        left: 0;
        background-position: 0 80px; }
      #firstView .gallery .carousel .thumbs_nav a.prev:hover {
        background-position: -40px 80px; }
      #firstView .gallery .carousel .thumbs_nav a.prev:active {
        background-position: -80px 80px; }
      #firstView .gallery .carousel .thumbs_nav a.next {
        right: 0;
        background-position: 0 0; }
      #firstView .gallery .carousel .thumbs_nav a.next:hover {
        background-position: -40px 0; }
      #firstView .gallery .carousel .thumbs_nav a.next:active {
        background-position: -80px 0; }

#greeting #catch h1 {
  padding: 0 0 20px;
  border-bottom: dotted 4px #ffa0b4;
  margin: 20px 0 30px;
  text-align: center;
  font-size: 32px;
  line-height: 60px; }
  #greeting #catch h1 span {
    font-size: 42px;
    color: #ffa0b4; }
    #greeting #catch h1 span.blue {
      color: #b4c8fa; }
#greeting #catch p {
  text-align: center;
  line-height: 50px; }
  #greeting #catch p span {
    color: #ffa0b4; }
    #greeting #catch p span.blue {
      color: #b4c8fa; }

#contents {
  position: relative;
  padding: 100px 20px 50px;
  margin: 50px 0 0;
  background: #cde6ff; }
  #contents::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 293px;
    background: url(img/top/contentsBack.png);
    background-position: center top; }
  #contents ul li {
    position: relative;
    overflow: hidden;
    max-width: 1840px;
    margin: 0 auto 100px; }
    #contents ul li:last-of-type {
      margin: 0; }
    #contents ul li figure {
      float: left;
      width: 50%; }
      #contents ul li figure img {
        width: 100%; }
    #contents ul li h2 {
      float: right;
      width: 50%;
      padding-left: 40px;
      padding-right: calc(10% - 40px);
      font-size: 52px;
      color: #ffa0b4; }
      #contents ul li h2 span {
        display: block;
        font-size: 42px; }
    #contents ul li .descrition {
      float: right;
      width: 50%;
      padding-left: 40px;
      padding-right: calc(10% - 40px); }
      #contents ul li .descrition p {
        line-height: 38px;
        padding: 10px 0 0; }
        #contents ul li .descrition p:first-of-type {
          padding: 10px 0 30px; }
      #contents ul li .descrition .link {
        position: relative;
        overflow: hidden;
        width: fit-content;
        border: 1px solid #ffa0b4;
        border-radius: 40px;
        margin: 40px 0 0;
        background: #ffa0b4; }
        #contents ul li .descrition .link .slideHover {
          background: #b4c8fa; }
        #contents ul li .descrition .link a {
          position: relative;
          display: block;
          padding: 10px 35px 15px;
          font-size: 22px;
          color: #fff; }
          #contents ul li .descrition .link a:visited, #contents ul li .descrition .link a:link {
            color: #fff; }
        #contents ul li .descrition .link:hover {
          border: 1px solid #fff; }
          #contents ul li .descrition .link:hover .slideHover {
            left: 0; }
          #contents ul li .descrition .link:hover a {
            color: #fff; }
    #contents ul li:nth-of-type(even) figure {
      float: right; }
    #contents ul li:nth-of-type(even) h2 {
      float: left; }
    #contents ul li:nth-of-type(even) .descrition {
      float: left; }

@media screen and (max-width: 999px) {
  #firstView .gallery {
    min-width: 100%; }
    #firstView .gallery #filter_left, #firstView .gallery #filter_right {
      display: none; }
    #firstView .gallery .carousel {
      width: 100vw; }
      #firstView .gallery .carousel .thumbs .thumbs_list li {
        width: 100vw;
        height: 300px; }
        #firstView .gallery .carousel .thumbs .thumbs_list li .guarantee {
          width: 90px;
          height: 90px;
          padding: 12px 10px 0; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .guarantee p {
            font-size: 10px;
            line-height: 18px; }
            #firstView .gallery .carousel .thumbs .thumbs_list li .guarantee p span {
              font-size: 10px; }
        #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR {
          bottom: 30px; }
          #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtn a, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL a, #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR a {
            font-size: 16px; }
        #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnL {
          left: 30px; }
        #firstView .gallery .carousel .thumbs .thumbs_list li .detailsBtnR {
          right: 30px; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header1 {
        background: url(img/top/firstView-sp1.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header2 {
        background: url(img/top/firstView-sp2.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header3 {
        background: url(img/top/firstView-sp3.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header4 {
        background: url(img/top/firstView-sp4.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header5 {
        background: url(img/top/firstView-sp5.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header6 {
        background: url(img/top/firstView-sp6.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header7 {
        background: url(img/top/firstView-sp7.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs .thumbs_list #header8 {
        background: url(img/top/firstView-sp8.png);
        background-position: center top; }
      #firstView .gallery .carousel .thumbs_nav {
        top: 130px;
        left: 0;
        width: 100%; }
        #firstView .gallery .carousel .thumbs_nav a {
          width: 20px;
          height: 40px;
          background-image: url(img/top/thumbs_nav-sp.png); }
        #firstView .gallery .carousel .thumbs_nav a.prev {
          left: 0;
          background-position: 0 40px; }
        #firstView .gallery .carousel .thumbs_nav a.prev:hover {
          background-position: -20px 40px; }
        #firstView .gallery .carousel .thumbs_nav a.prev:active {
          background-position: -40px 40px; }
        #firstView .gallery .carousel .thumbs_nav a.next:hover {
          background-position: -20px 0; }
        #firstView .gallery .carousel .thumbs_nav a.next:active {
          background-position: -40px 0; }

  #greeting #catch h1 {
    margin: 20px 0 10px;
    font-size: 26px;
    line-height: 50px; }
    #greeting #catch h1 span {
      font-size: 36px; }
  #greeting #catch p {
    padding: 10px 0 0;
    line-height: 30px; }

  #contents {
    padding: 50px 20px;
    margin: 20px 0 0; }
    #contents::before {
      content: '';
      height: 303px;
      background: url(img/top/contentsBack.png);
      background-position: center top;
      background-size: contain;
      background-repeat: no-repeat; }
    #contents ul li {
      overflow: hidden;
      max-width: 100vw;
      margin: 0 auto 50px; }
      #contents ul li figure {
        float: none;
        width: 100%; }
        #contents ul li figure img {
          width: 100%; }
      #contents ul li h2 {
        float: none;
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        margin: 0 0 20px;
        font-size: 48px;
        text-align: center; }
        #contents ul li h2 span {
          font-size: 34px; }
      #contents ul li .descrition {
        float: none;
        width: 100%;
        padding-left: 0;
        padding-right: 0; }
        #contents ul li .descrition p {
          line-height: 30px; }
          #contents ul li .descrition p:first-of-type {
            padding: 10px 0 20px; }
        #contents ul li .descrition .link {
          margin: 40px auto 0; }
      #contents ul li:nth-of-type(even) figure {
        float: none; }
      #contents ul li:nth-of-type(even) h2 {
        float: none; }
      #contents ul li:nth-of-type(even) .descrition {
        float: none; } }
