@import url("https://fonts.googleapis.com/earlyaccess/notosanstc.css");
article#dog_type {
  background-image: url(../images/bg.png);
  background-position: center top;
  background-color: #000;
  background-size: contain;
  position: relative;
  overflow: hidden; }
  @media only screen and (max-width: 1920px) {
    article#dog_type {
      background-size: 1920px; } }
  @media only screen and (max-width: 800px) {
    article#dog_type {
      background-size: 1000px; } }

.d01, .d02, .d03, .d04, .d05 {
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 3; }
  @media only screen and (max-width: 800px) {
    .d01, .d02, .d03, .d04, .d05 {
      display: none; } }

.d01 {
  background-image: url(../images/dog_type_d01.png);
  width: 111px;
  height: 53px;
  left: 50%;
  top: 460px;
  margin-left: -30px; }
  @media only screen and (max-width: 1200px) {
    .d01 {
      width: 80px;
      margin-left: -60px; } }

.d02 {
  background-image: url(../images/dog_type_d02.png);
  width: 149px;
  height: 175px;
  left: 50px;
  top: 470px;
  margin-left: -10px; }
  @media only screen and (max-width: 1200px) {
    .d02 {
      width: 100px;
      top: 490px; } }

.d03 {
  background-image: url(../images/dog_type_d03.png);
  width: 311px;
  height: 443px;
  left: 0;
  top: 610px;
  margin-left: -60px; }
  @media only screen and (max-width: 1200px) {
    .d03 {
      width: 230px; } }

.d04 {
  background-image: url(../images/dog_type_d04.png);
  width: 500px;
  height: 500px;
  right: -280px;
  top: 700px; }
  @media only screen and (max-width: 1200px) {
    .d04 {
      width: 400px;
      right: -230px; } }

.d05 {
  background-image: url(../images/stamp_dog.png);
  width: 250px;
  height: 250px;
  right: 60px;
  top: 680px;
  z-index: 2;
  opacity: 0; }
  @media only screen and (max-width: 1200px) {
    .d05 {
      width: 190px;
      right: 10px;
      top: 670px; } }

section.kv {
  position: relative;
  padding-top: 140px;
  padding-bottom: 60px;
  overflow: hidden;
  margin-bottom: 80px; }
  @media only screen and (max-width: 1200px) {
    section.kv {
      padding-top: 90px;
      margin-bottom: 80px; } }
  @media only screen and (max-width: 800px) {
    section.kv {
      margin-bottom: 50px;
      padding-bottom: 0; } }
  section.kv::before {
    content: "";
    position: absolute;
    z-index: 2;
    left: 0;
    top: 0;
    width: 100%;
    height: 200px;
    background: -moz-linear-gradient(top, black 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(top, black 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(black), to(rgba(0, 0, 0, 0)));
    background: -o-linear-gradient(top, black 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#00000000',GradientType=0 ); }
  section.kv .i01, section.kv .light {
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat; }
  section.kv .i01 {
    background-image: url(../images/dog_type_i01.png);
    width: 759px;
    height: 660px;
    right: 0;
    top: -20px;
    z-index: 1; }
    @media only screen and (max-width: 1200px) {
      section.kv .i01 {
        width: 550px;
        top: 150px;
        right: -10px; } }
    @media only screen and (max-width: 800px) {
      section.kv .i01 {
        z-index: 2;
        width: 410px;
        top: 160px; } }
  section.kv .light {
    background-image: url(../images/light.png);
    width: 681px;
    height: 457px;
    left: 50%;
    top: 140px;
    margin-left: -680px;
    opacity: 0.2; }
    @media only screen and (max-width: 1200px) {
      section.kv .light {
        width: 600px;
        top: 100px;
        margin-left: -450px; } }
    @media only screen and (max-width: 800px) {
      section.kv .light {
        width: 681px;
        top: -80px;
        margin-left: -500px; } }
  section.kv .main {
    width: 1100px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 40px;
    position: relative;
    z-index: 5; }
    @media only screen and (max-width: 1200px) {
      section.kv .main {
        width: 675px; } }
    @media only screen and (max-width: 800px) {
      section.kv .main {
        width: 100%;
        padding: 0 20px; } }
    section.kv .main .bread {
      position: relative;
      z-index: 3;
      margin-bottom: 60px; }
      @media only screen and (max-width: 800px) {
        section.kv .main .bread {
          margin-bottom: 40px; } }
      section.kv .main .bread a {
        font-size: 16px;
        font-weight: 500;
        line-height: 24px;
        color: #FFF;
        cursor: pointer; }
      section.kv .main .bread label {
        font-size: 16px;
        font-weight: 500;
        line-height: 24px;
        color: #FFF;
        margin-left: 5px; }
      section.kv .main .bread span {
        font-size: 16px;
        font-weight: 500;
        line-height: 24px;
        color: #EBE696;
        margin-left: 5px; }
    section.kv .main .title {
      width: 1023px;
      height: 279px;
      margin-bottom: 70px; }
      @media only screen and (max-width: 1200px) {
        section.kv .main .title {
          width: 670px;
          height: 172px;
          margin-bottom: 250px; } }
      @media only screen and (max-width: 800px) {
        section.kv .main .title {
          width: 345px;
          height: 116px;
          margin: 0 auto;
          margin-bottom: 250px; } }
      section.kv .main .title img.pc {
        display: block; }
        @media only screen and (max-width: 800px) {
          section.kv .main .title img.pc {
            display: none; } }
      section.kv .main .title img.m {
        display: none; }
        @media only screen and (max-width: 800px) {
          section.kv .main .title img.m {
            display: block; } }
    section.kv .main .info {
      position: relative;
      width: 675px;
      margin: 0 auto; }
      @media only screen and (max-width: 1200px) {
        section.kv .main .info {
          width: 100%; } }
      section.kv .main .info h1 {
        font-family: 'Noto Serif TC', serif;
        font-size: 36px;
        font-weight: 900;
        line-height: 52px;
        color: #FFF;
        margin-bottom: 20px; }
      section.kv .main .info h2 {
        font-size: 16px;
        font-weight: 400;
        line-height: 24px;
        color: #FFF; }

section.product_list {
  position: relative;
  width: 1030px;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 100px; }
  @media only screen and (max-width: 1000px) {
    section.product_list {
      width: calc(100% - 30px); } }
  section.product_list .title_box {
    text-align: center;
    margin-bottom: 50px; }
    section.product_list .title_box .cate {
      font-size: 14px;
      font-weight: 700;
      line-height: 15px;
      color: #EBE696;
      border: solid 2px #EBE696;
      border-radius: 20px;
      padding: 5px 20px;
      margin: 0 10px 20px;
      display: inline-block; }
    section.product_list .title_box h2 {
      font-family: 'Noto Serif TC', serif;
      font-size: 36px;
      font-weight: 900;
      line-height: 36px;
      color: #EBE696;
      margin-bottom: 20px; }
    section.product_list .title_box h3 {
      font-family: 'Noto Serif TC', serif;
      font-size: 24px;
      font-weight: 900;
      line-height: 36px;
      color: #EBE696;
      margin-bottom: 20px; }
    section.product_list .title_box p {
      font-size: 16px;
      color: #FFF;
      width: 680px;
      text-align: left;
      margin: 0 auto; }
      @media only screen and (max-width: 800px) {
        section.product_list .title_box p {
          width: 100%; } }
  section.product_list .list {
    position: relative;
    text-align: left;
    width: 100%;
    margin: 0 auto; }
    @media only screen and (max-width: 1000px) {
      section.product_list .list {
        width: 610px; } }
    @media only screen and (max-width: 800px) {
      section.product_list .list {
        width: 345px; } }
    section.product_list .list a {
      text-align: center;
      display: inline-block;
      vertical-align: top;
      margin: 0 15px 80px;
      width: 170px; }
      @media only screen and (max-width: 800px) {
        section.product_list .list a {
          margin: 0 0px 50px; } }
      @media only screen and (min-width: 801px) {
        section.product_list .list a:hover figure {
          -webkit-transform: scale(1.4);
          -ms-transform: scale(1.4);
          transform: scale(1.4);
          top: -15px; }
        section.product_list .list a:hover .size {
          background-color: #EBE696; }
        section.product_list .list a:hover .p_name {
          color: #EBE696; }
        section.product_list .list a:hover .p_en {
          color: #FFF; } }
      section.product_list .list a figure {
        position: relative;
        top: 0;
        margin: 0 auto;
        margin-bottom: 10px;
        width: 135px;
        -webkit-transition: .5s;
        -o-transition: .5s;
        transition: .5s; }
        @media only screen and (max-width: 800px) {
          section.product_list .list a figure {
            width: 150px; } }
      section.product_list .list a .size {
        font-size: 15px;
        font-weight: bold;
        color: #000;
        margin-bottom: 10px;
        border-radius: 20px;
        background-color: #fff;
        padding: 5px 10px;
        display: inline-block;
        -webkit-transition: .5s;
        -o-transition: .5s;
        transition: .5s; }
      section.product_list .list a .p_name {
        font-size: 16px;
        font-weight: bold;
        color: #adadad;
        margin-bottom: 10px;
        -webkit-transition: .5s;
        -o-transition: .5s;
        transition: .5s; }
        @media only screen and (max-width: 800px) {
          section.product_list .list a .p_name {
            font-size: 20px;
            color: #EBE696; } }
      section.product_list .list a .p_en {
        font-size: 14px;
        color: #adadad;
        -webkit-transition: .5s;
        -o-transition: .5s;
        transition: .5s; }
        @media only screen and (max-width: 800px) {
          section.product_list .list a .p_en {
            color: #FFF; } }
  section.product_list .back_type {
    font-size: 16px;
    font-weight: 700;
    line-height: 15px;
    color: #EBE696;
    border: solid 2px #EBE696;
    border-radius: 20px;
    padding: 5px 8px;
    margin: 0 10px;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s; }
    @media only screen and (min-width: 801px) {
      section.product_list .back_type:hover {
        background-color: #EBE696;
        color: #000; } }
