@charset "UTF-8";
/****************************************************
 * Stylesheet
 *
 * 1.リセット
 * 2.共通設定
 * 3.レイアウト設定
 * 4.テンプレートスタイル
 * 5.コンテンツスタイル
 * 6.装飾
 * 7.印刷用調整
 * 
 ****************************************************/
/****************************************************
 * 1.リセット
 ****************************************************/
/*!
 YUI 3.18.1 (build f7e7bcb)
 Copyright 2014 Yahoo! Inc. All rights reserved.
 Licensed under the BSD License.
 http://yuilibrary.com/license/
 */
html {
  color: #000;
  background: #FFF; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ol, ul {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

q:before, q:after {
  content: ''; }

abbr, acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  *font-size: 100%; }

legend {
  color: #000; }

/****************************************************
 * 2.共通
 ****************************************************/
html {
  background-color: transparent;
  background-image: none;
  font-family: 'Zen Maru Gothic', sans-serif;
  font-size: 62.5%;
  font-weight: 500;
  letter-spacing: -0.05em;
  color: #684638; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    html {
      font-size: 0.8vw; } }
  @media screen and (max-width: 767px) {
    html {
      font-size: 50%; } }

/*IE11 游ゴシックの文字下の謎隙間対策*/
@media all and (-ms-high-contrast: none) {
  html {
    font-family: "メイリオ", meiryo, sans-serif; } }
body {
  font-size: 1.6rem;
  line-height: 2;
  background-color: #fffcfa; }
  @media screen and (max-width: 767px) {
    body {
      -webkit-text-size-adjust: 100%; } }

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

input {
  outline: none; }
  input:focus {
    outline: none; }
  input[type="submit"] {
    -webkit-appearance: none; }

a {
  color: #684638;
  text-decoration: none;
  outline: none; }
  a:focus {
    outline: none; }
  @media screen and (min-width: 768px) {
    a:hover {
      text-decoration: underline; }
      a:hover img {
        opacity: 0.6; } }
  a[href^="tel:"] {
    cursor: default; }
    a[href^="tel:"]:hover {
      text-decoration: none; }
  @media screen and (min-width: 768px) {
    a img {
      -moz-transition: opacity 0.5s;
      -o-transition: opacity 0.5s;
      -webkit-transition: opacity 0.5s;
      transition: opacity 0.5s; } }

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

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

.inner {
  width: 90%;
  max-width: 1120px;
  margin: 0 auto; }
  .inner:after {
    content: "";
    display: block;
    clear: both; }
  .inner .inner_in {
    width: 82%;
    max-width: 920px;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .inner .inner_in {
        width: 90%; } }

.btn01 a {
  width: 294px;
  height: 70px;
  padding-top: 16px;
  font-family: 'Quicksand', sans-serif;
  font-weight: 400;
  font-size: 1.8rem;
  text-align: center;
  background-color: #e8dbd5;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  border-radius: 25px;
  -moz-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  display: inline-block;
  position: relative; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .btn01 a {
      width: 23.52vw;
      height: 5.6vw;
      padding-top: 1.28vw;
      -moz-border-radius: 2vw;
      -webkit-border-radius: 2vw;
      border-radius: 2vw; } }
  @media screen and (max-width: 767px) {
    .btn01 a {
      width: 235px;
      height: 56px;
      padding-top: 12px;
      -moz-border-radius: 20px;
      -webkit-border-radius: 20px;
      border-radius: 20px; } }
  .btn01 a:before {
    width: 284px;
    height: 60px;
    content: '';
    border: dashed 1px #684638;
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    position: absolute;
    top: 5px;
    left: 5px; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .btn01 a:before {
        width: 22.72vw;
        height: 4.8vw;
        top: 0.4vw;
        left: 0.4vw;
        -moz-border-radius: 2vw;
        -webkit-border-radius: 2vw;
        border-radius: 2vw; } }
    @media screen and (max-width: 767px) {
      .btn01 a:before {
        width: 225px;
        height: 46px;
        -moz-border-radius: 20px;
        -webkit-border-radius: 20px;
        border-radius: 20px; } }
  .btn01 a:after {
    width: 13px;
    height: 15px;
    margin-top: -7px;
    content: '';
    background-image: url("../img/icon_sanaku01.png");
    -webkit-background-size: cover;
    position: absolute;
    top: 50%;
    right: 8%; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .btn01 a:after {
        width: 1.04vw;
        height: 1.2vw;
        margin-top: -0.56vw; } }
    @media screen and (max-width: 767px) {
      .btn01 a:after {
        width: 10px;
        height: 12px;
        margin-top: -6px; } }
  .btn01 a:hover {
    text-decoration: none;
    opacity: 0.6; }

.btn02 a:hover {
  text-decoration: none;
  opacity: 0.6; }

.anchor {
  width: 0;
  height: 0;
  margin: -88px 0;
  padding: 88px 0;
  font-size: 0;
  line-height: 0;
  display: block;
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .anchor {
      margin: -100px 0;
      padding: 100px 0; } }
  @media screen and (max-width: 767px) {
    .anchor {
      margin: -70px 0;
      padding: 70px 0; } }

.nami_top_white {
  position: relative;
  z-index: 10; }
  .nami_top_white:before {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_white.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    bottom: calc(100% - 1px);
    left: 0;
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_top_white:before {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_top_white:before {
        height: 13px; } }

.nami_top_cream {
  position: relative;
  z-index: 10; }
  .nami_top_cream:before {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_cream.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    bottom: calc(100% - 1px);
    left: 0;
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_top_cream:before {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_top_cream:before {
        height: 13px; } }

.nami_top_cream2 {
  position: relative;
  z-index: 10; }
  .nami_top_cream2:before {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_cream02.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    bottom: calc(100% - 1px);
    left: 0;
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_top_cream2:before {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_top_cream2:before {
        height: 13px; } }

.nami_top_pink {
  position: relative;
  z-index: 10; }
  .nami_top_pink:before {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_pink.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    bottom: calc(100% - 1px);
    left: 0;
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_top_pink:before {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_top_pink:before {
        height: 13px; } }

.nami_bottom_white {
  position: relative;
  z-index: 10; }
  .nami_bottom_white:after {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_white.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    top: calc(100% - 1px);
    left: 0; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_bottom_white:after {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_bottom_white:after {
        height: 13px; } }

.nami_bottom_cream {
  position: relative;
  z-index: 10; }
  .nami_bottom_cream:after {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_cream.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    top: calc(100% - 1px);
    left: 0; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_bottom_cream:after {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_bottom_cream:after {
        height: 13px; } }

.nami_bottom_cream2 {
  position: relative;
  z-index: 10; }
  .nami_bottom_cream2:after {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_cream02.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    top: calc(100% - 1px);
    left: 0; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_bottom_cream2:after {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_bottom_cream2:after {
        height: 13px; } }

.nami_bottom_pink {
  position: relative;
  z-index: 10; }
  .nami_bottom_pink:after {
    width: 100%;
    height: 26px;
    content: '';
    background-image: url("../img/nami_pink.png");
    background-repeat: repeat-x;
    background-position: center bottom;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    position: absolute;
    top: calc(100% - 1px);
    left: 0; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      .nami_bottom_pink:after {
        height: 2.08vw; } }
    @media screen and (max-width: 767px) {
      .nami_bottom_pink:after {
        height: 13px; } }

.acc .acc_head {
  position: relative; }
  .acc .acc_head i {
    font-style: normal;
    position: absolute;
    right: 3%;
    top: 50%;
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%); }
    .acc .acc_head i:before {
      margin-right: 0.5em;
      content: 'Open';
      font-family: 'Quicksand', sans-serif;
      font-weight: 400;
      font-size: 1.4rem;
      display: inline-block;
      vertical-align: middle; }
    .acc .acc_head i:after {
      width: 15px;
      height: 15px;
      content: '';
      background-image: url("../img/icon_plus01.png");
      -webkit-background-size: cover;
      background-size: cover;
      display: inline-block;
      vertical-align: middle; }
.acc .acc_body {
  display: none; }
.acc.open .acc_head i:before {
  content: 'Close'; }
.acc.open .acc_head i:after {
  background-image: url("../img/icon_minus01.png"); }

.pagetitle {
  width: 100%;
  height: 250px;
  padding-top: 50px;
  background-image: url("../img/pagetitle_bg.jpg");
  -webkit-background-size: auto 100%;
  background-size: auto 100%;
  background-position: center top; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .pagetitle {
      height: 20vw;
      padding-top: 4vw; } }
  @media screen and (max-width: 767px) {
    .pagetitle {
      height: 200px;
      padding-top: 40px;
      background-position: 78% bottom; } }
  .pagetitle h1 {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center; }
    .pagetitle h1 span {
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 2.6rem;
      text-transform: uppercase;
      color: #c6b7ae;
      display: block; }

/****************************************************
 * 3.レイアウト設定
 ****************************************************/
.container {
  width: 100%;
  min-width: 360px;
  padding-top: 88px;
  overflow: hidden; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .container {
      padding-top: 7.28vw; } }
  @media screen and (max-width: 767px) {
    .container {
      padding-top: 70px; } }
  .container .row {
    width: 100%; }
    .container .row:after {
      content: "";
      display: block;
      clear: both; }
    .container .row .column {
      float: left; }
      .container .row .column:last-child {
        float: right; }
      @media screen and (max-width: 767px) {
        .container .row .column {
          width: 100%;
          float: none !important; } }
    .container .row .col_1 {
      width: 8.33333%; }
      @media screen and (max-width: 767px) {
        .container .row .col_1 {
          width: 100%; } }
    .container .row .col_2 {
      width: 16.66667%; }
      @media screen and (max-width: 767px) {
        .container .row .col_2 {
          width: 100%; } }
    .container .row .col_3 {
      width: 25%; }
      @media screen and (max-width: 767px) {
        .container .row .col_3 {
          width: 100%; } }
    .container .row .col_4 {
      width: 33.33333%; }
      @media screen and (max-width: 767px) {
        .container .row .col_4 {
          width: 100%; } }
    .container .row .col_5 {
      width: 41.66667%; }
      @media screen and (max-width: 767px) {
        .container .row .col_5 {
          width: 100%; } }
    .container .row .col_6 {
      width: 50%; }
      @media screen and (max-width: 767px) {
        .container .row .col_6 {
          width: 100%; } }
    .container .row .col_7 {
      width: 58.33333%; }
      @media screen and (max-width: 767px) {
        .container .row .col_7 {
          width: 100%; } }
    .container .row .col_8 {
      width: 66.66667%; }
      @media screen and (max-width: 767px) {
        .container .row .col_8 {
          width: 100%; } }
    .container .row .col_9 {
      width: 75%; }
      @media screen and (max-width: 767px) {
        .container .row .col_9 {
          width: 100%; } }
    .container .row .col_10 {
      width: 83.33333%; }
      @media screen and (max-width: 767px) {
        .container .row .col_10 {
          width: 100%; } }
    .container .row .col_11 {
      width: 91.66667%; }
      @media screen and (max-width: 767px) {
        .container .row .col_11 {
          width: 100%; } }
    .container .row .col_12 {
      width: 100%; }

.contents .container {
  padding-top: 114px; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .contents .container {
      padding-top: 100px; } }
  @media screen and (max-width: 767px) {
    .contents .container {
      padding-top: 70px; } }

/****************************************************
 * 4.テンプレートスタイル
 ****************************************************/
/*ヘッダーブロック*/
#header {
  width: 100%;
  height: 88px;
  background-color: rgba(255, 252, 250, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999; }
  #header:after {
    content: "";
    display: block;
    clear: both; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    #header {
      height: 7.04vw; } }
  @media screen and (max-width: 767px) {
    #header {
      height: 70px; } }
  #header .logo {
    width: 184px;
    margin-left: 2%;
    padding-top: 15px;
    float: left; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      #header .logo {
        width: 14.72vw;
        padding-top: 1.2vw; } }
    @media screen and (max-width: 767px) {
      #header .logo {
        width: 118px;
        height: 70px; } }
  #header .header_right {
    margin-right: 2%;
    float: right; }
    #header .header_right:after {
      content: "";
      display: block;
      clear: both; }
    #header .header_right .navi {
      margin-right: 20px;
      padding-top: 20px;
      float: left; }
      #header .header_right .navi ul {
        letter-spacing: -0.4em; }
        #header .header_right .navi ul > * {
          display: inline-block;
          letter-spacing: -0.05em; }
        #header .header_right .navi ul li {
          vertical-align: middle; }
          #header .header_right .navi ul li a .spMenuOnly {
            display: none; }
          #header .header_right .navi ul li.insta {
            margin-left: 10px; }
            #header .header_right .navi ul li.insta span {
              display: none; }
          #header .header_right .navi ul li.spMenuOnly {
            display: none; }
          #header .header_right .navi ul li:not(.insta) {
            margin-right: 2px; }
            #header .header_right .navi ul li:not(.insta) a {
              padding: 8px;
              display: block;
              position: relative;
              z-index: 1; }
              #header .header_right .navi ul li:not(.insta) a:after {
                width: 100%;
                height: 100%;
                content: '';
                background-color: #f4efec;
                opacity: 0;
                position: absolute;
                top: 0;
                left: 0;
                z-index: -1;
                transition: opacity 0.5s;
                -moz-border-radius: 5px;
                -webkit-border-radius: 5px;
                border-radius: 5px; }
              #header .header_right .navi ul li:not(.insta) a:hover {
                text-decoration: none; }
                #header .header_right .navi ul li:not(.insta) a:hover:after {
                  opacity: 1; }
    #header .header_right .contact {
      width: 180px;
      height: 100%;
      float: right;
      position: relative; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        #header .header_right .contact {
          width: 14.4vw; } }
      #header .header_right .contact a {
        position: absolute;
        top: 0;
        right: 0; }
    #header .header_right .sp_tel {
      margin-top: 18px;
      margin-right: 20px;
      float: left; }
    #header .header_right .sp_mail {
      margin-top: 22px;
      margin-right: 20px;
      float: left; }
    #header .header_right .sp_menu_open {
      width: 40px;
      margin: 21px 25px 0 0;
      padding-top: 30px;
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 1.4rem;
      text-align: center;
      float: left;
      display: none;
      position: relative; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        #header .header_right .sp_menu_open {
          width: 3.2vw;
          margin: 1.68vw 2vw 0 0;
          padding-top: 2.4vw; } }
      @media screen and (max-width: 767px) {
        #header .header_right .sp_menu_open {
          width: 32px;
          margin: 16px 0 0 0;
          padding-top: 24px; } }
      #header .header_right .sp_menu_open span {
        width: 100%;
        height: 4px;
        display: block;
        background-color: #684638;
        position: absolute;
        top: 0;
        left: 0; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          #header .header_right .sp_menu_open span {
            height: 0.32vw; } }
        #header .header_right .sp_menu_open span:before, #header .header_right .sp_menu_open span:after {
          width: 100%;
          height: 100%;
          content: '';
          background-color: #684638;
          position: absolute;
          left: 0; }
        #header .header_right .sp_menu_open span:before {
          top: 12px; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            #header .header_right .sp_menu_open span:before {
              top: 0.96vw; } }
          @media screen and (max-width: 767px) {
            #header .header_right .sp_menu_open span:before {
              top: 10px; } }
        #header .header_right .sp_menu_open span:after {
          top: 24px; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            #header .header_right .sp_menu_open span:after {
              top: 1.92vw; } }
          @media screen and (max-width: 767px) {
            #header .header_right .sp_menu_open span:after {
              top: 20px; } }
    #header .header_right .sp_menu_close {
      width: 40px;
      margin: 21px 25px 0 0;
      padding-top: 30px;
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 1.4rem;
      text-align: center;
      display: none;
      position: absolute;
      top: 16px;
      right: 2%; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        #header .header_right .sp_menu_close {
          width: 3.2vw;
          margin: 1.68vw 2vw 0 0;
          padding-top: 2.4vw; } }
      @media screen and (max-width: 767px) {
        #header .header_right .sp_menu_close {
          width: 32px;
          margin: 16px 0 0 0;
          padding-top: 16px; } }
      #header .header_right .sp_menu_close span {
        width: 100%;
        height: 4px;
        display: block;
        background-color: #684638;
        position: absolute;
        top: 0;
        left: 0;
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          #header .header_right .sp_menu_close span {
            height: 0.32vw; } }
        #header .header_right .sp_menu_close span:after {
          width: 100%;
          height: 100%;
          content: '';
          background-color: #684638;
          position: absolute;
          left: 0;
          top: 0;
          -moz-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
          -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg); }
    @media screen and (max-width: 1349px) {
      #header .header_right .sp_menu_open, #header .header_right .sp_menu_close {
        display: block; }
      #header .header_right .navi {
        width: 100%;
        height: 100vh;
        padding-top: 100px;
        opacity: 0;
        position: fixed;
        top: 0;
        left: 100%;
        z-index: 10;
        background-color: #f4efec; }
        #header .header_right .navi ul li {
          text-align: center;
          display: block;
          border-bottom: dashed 1px #c6b7ae; }
          #header .header_right .navi ul li:last-child {
            border-bottom: none; }
          #header .header_right .navi ul li a {
            padding: 1em !important;
            display: inline-block !important; }
            #header .header_right .navi ul li a .spMenuOnly {
              display: inline; }
          #header .header_right .navi ul li.spMenuOnly {
            display: block; }
          #header .header_right .navi ul li.insta {
            margin: 0; }
            #header .header_right .navi ul li.insta a img {
              display: none; }
            #header .header_right .navi ul li.insta a span {
              display: inline-block; } }
    @media screen and (max-width: 767px) {
      #header .header_right .navi ul li {
        text-align: left; }
        #header .header_right .navi ul li a {
          display: block; } }

/*フッターブロック*/
#footer {
  padding-top: 50px;
  background-color: #ffffff; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    #footer {
      padding-top: 4vw; } }
  @media screen and (max-width: 767px) {
    #footer {
      padding-top: 30px; } }
  #footer .logo {
    width: 184px;
    margin: 0 auto 40px auto; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      #footer .logo {
        width: 14.72vw;
        margin-bottom: 3.2vw; } }
    @media screen and (max-width: 767px) {
      #footer .logo {
        width: 118px;
        margin-bottom: 20px; } }
  #footer .border_top {
    width: 100%;
    height: 2px;
    background-image: url("../img/border01.png");
    background-repeat: repeat-x;
    position: relative; }
    #footer .border_top:before {
      width: 36px;
      height: 28px;
      content: '';
      background-image: url("../img/icon_dog01.png");
      -webkit-background-size: cover;
      background-size: cover;
      position: absolute;
      bottom: 100%;
      left: -15px; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        #footer .border_top:before {
          width: 2.88vw;
          height: 2.24vw;
          left: -1.2vw; } }
  #footer .border_bottom {
    width: 100%;
    height: 2px;
    background-image: url("../img/border01.png");
    background-repeat: repeat-x; }
  #footer .footer_link01 {
    padding: 0.75em 0;
    letter-spacing: -0.4em; }
    #footer .footer_link01 > * {
      display: inline-block;
      letter-spacing: -0.05em; }
    #footer .footer_link01 a {
      margin: 0.75em 1.25em; }
      #footer .footer_link01 a:before {
        width: 10px;
        height: 12px;
        margin-right: 0.25em;
        content: '';
        background-image: url("../img/icon_sanaku01.png");
        -webkit-background-size: cover;
        background-size: cover;
        display: inline-block;
        vertical-align: 0; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          #footer .footer_link01 a:before {
            width: 0.8vw;
            height: 0.96vw; } }
  #footer .footer_link02 {
    margin: 1em 0;
    font-size: 1.4rem;
    letter-spacing: -0.4em; }
    #footer .footer_link02 > * {
      display: inline-block;
      letter-spacing: -0.05em; }
    #footer .footer_link02 a + a {
      margin-left: 1.5em; }
  #footer .copyright {
    padding-bottom: 1em;
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.2rem;
    text-align: center; }

/*ボトム　コンタクトエリア*/
.bottom_contact {
  padding: 75px 0;
  background-image: url("../img/bottom_contact_bg.jpg");
  -webkit-background-size: cover;
  background-size: cover;
  background-position: center center; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .bottom_contact {
      padding: 6vw 0; } }
  @media screen and (max-width: 767px) {
    .bottom_contact {
      padding: 40px 0;
      background-position: 15% center; } }
  .bottom_contact dl {
    text-align: center; }
    .bottom_contact dl dt {
      margin-bottom: 1em;
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 4.4rem; }
      @media screen and (max-width: 767px) {
        .bottom_contact dl dt {
          margin-bottom: 0.5em; } }
    .bottom_contact dl dd p {
      margin-bottom: 2em;
      font-size: 2rem;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        .bottom_contact dl dd p {
          font-size: 1.8rem; } }
    .bottom_contact dl dd .btn {
      letter-spacing: -0.4em; }
      .bottom_contact dl dd .btn > * {
        display: inline-block;
        letter-spacing: -0.05em; }
      .bottom_contact dl dd .btn a {
        width: 360px;
        height: 90px;
        line-height: normal;
        text-decoration: none !important;
        vertical-align: middle;
        background-color: #ffffff;
        -moz-border-radius: 25px;
        -webkit-border-radius: 25px;
        border-radius: 25px;
        position: relative; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          .bottom_contact dl dd .btn a {
            width: 28.8vw;
            height: 7.2vw;
            -moz-border-radius: 2vw;
            -webkit-border-radius: 2vw;
            border-radius: 2vw; } }
        @media screen and (max-width: 767px) {
          .bottom_contact dl dd .btn a {
            max-width: 100%;
            height: auto;
            margin: 0 auto;
            display: block; } }
        .bottom_contact dl dd .btn a:before {
          margin-right: 0.5em;
          content: '';
          -webkit-background-size: cover;
          background-size: cover;
          display: inline-block;
          vertical-align: 0; }
        .bottom_contact dl dd .btn a:after {
          width: 340px;
          height: 70px;
          content: '';
          border: dashed 2px #684638;
          position: absolute;
          top: 10px;
          left: 10px;
          -moz-border-radius: 25px;
          -webkit-border-radius: 25px;
          border-radius: 25px; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            .bottom_contact dl dd .btn a:after {
              width: 27.2vw;
              height: 5.6vw;
              -moz-border-radius: 2vw;
              -webkit-border-radius: 2vw;
              border-radius: 2vw;
              top: 0.8vw;
              left: 0.8vw; } }
          @media screen and (max-width: 767px) {
            .bottom_contact dl dd .btn a:after {
              width: calc(100% - 20px);
              height: calc(100% - 20px); } }
        .bottom_contact dl dd .btn a + a {
          margin-left: 2em; }
          @media screen and (max-width: 767px) {
            .bottom_contact dl dd .btn a + a {
              margin: 2em auto 0 auto; } }
        .bottom_contact dl dd .btn a > span {
          display: inline-block; }
        .bottom_contact dl dd .btn a.tel {
          padding: 30px 70px; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            .bottom_contact dl dd .btn a.tel {
              padding: 2.4vw 5.6vw; } }
          @media screen and (max-width: 767px) {
            .bottom_contact dl dd .btn a.tel {
              padding: 20px; } }
          .bottom_contact dl dd .btn a.tel:before {
            width: 28px;
            height: 28px;
            background-image: url("../img/icon_tel01.png");
            vertical-align: -0.2em; }
            @media screen and (max-width: 1250px) and (min-width: 768px) {
              .bottom_contact dl dd .btn a.tel:before {
                width: 2.24vw;
                height: 2.24vw; } }
          .bottom_contact dl dd .btn a.tel > span {
            font-family: 'Quicksand', sans-serif;
            font-weight: 700;
            font-size: 2.6rem; }
        .bottom_contact dl dd .btn a.mail {
          padding: 30px 70px;
          -moz-transition: opacity 0.5s;
          -o-transition: opacity 0.5s;
          -webkit-transition: opacity 0.5s;
          transition: opacity 0.5s; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            .bottom_contact dl dd .btn a.mail {
              padding: 2.4vw 5.6vw; } }
          @media screen and (max-width: 767px) {
            .bottom_contact dl dd .btn a.mail {
              padding: 20px; } }
          .bottom_contact dl dd .btn a.mail:before {
            width: 28px;
            height: 21px;
            background-image: url("../img/icon_mail01.png");
            vertical-align: -0.05em; }
            @media screen and (max-width: 1250px) and (min-width: 768px) {
              .bottom_contact dl dd .btn a.mail:before {
                width: 2.24vw;
                height: 1.68vw; } }
          .bottom_contact dl dd .btn a.mail:hover {
            opacity: 0.6; }
          .bottom_contact dl dd .btn a.mail > span {
            font-size: 2.1rem; }

/****************************************************
 * 5.コンテンツスタイル
 ****************************************************/
/*トップページ*/
body.index .loading_catchcopy {
  width: 100vw;
  height: 100vh;
  content: '';
  background-color: #fffcfa;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999; }
  body.index .loading_catchcopy span {
    font-size: 6rem;
    font-weight: 700;
    text-align: center;
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    @media screen and (max-width: 767px) {
      body.index .loading_catchcopy span {
        font-size: 3rem; } }
body.index .mv {
  width: 100%;
  height: 900px;
  padding-top: 660px;
  background-image: url("../img/index/mv.jpg");
  -webkit-background-size: cover;
  background-size: cover;
  background-position: center center; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.index .mv {
      height: 72vw;
      padding-top: 52.8vw; } }
  @media screen and (max-width: 767px) {
    body.index .mv {
      height: 560px;
      padding-top: 380px;
      -webkit-background-size: auto 460px;
      background-size: auto 460px;
      background-repeat: no-repeat;
      background-position: center top; } }
  body.index .mv .inner {
    max-width: 1360px; }
  body.index .mv .btn a {
    width: 410px;
    height: 85px;
    margin: 0 0 0 auto;
    padding-top: 1.25em;
    padding-left: 1em;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: normal;
    text-align: center;
    display: block;
    background-image: url("../img/index/mv_btn.png");
    -webkit-background-size: cover;
    background-size: cover;
    position: relative;
    -moz-transition: opacity 0.5s;
    -o-transition: opacity 0.5s;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.index .mv .btn a {
        width: 32.8vw;
        height: 6.8vw; } }
    @media screen and (max-width: 767px) {
      body.index .mv .btn a {
        width: 328px;
        height: 68px; } }
    body.index .mv .btn a:before {
      width: 31px;
      height: 23px;
      margin-top: -11px;
      content: '';
      -webkit-background-size: cover;
      background-size: cover;
      position: absolute;
      top: 50%;
      left: 6.5%; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .mv .btn a:before {
          width: 2.48vw;
          height: 1.84vw;
          margin-top: -0.88vw; } }
      @media screen and (max-width: 767px) {
        body.index .mv .btn a:before {
          width: 24px;
          height: 18px;
          margin-top: -9px; } }
    body.index .mv .btn a:after {
      width: 13px;
      height: 15px;
      margin-top: -7px;
      content: '';
      background-image: url("../img/icon_sanaku01.png");
      -webkit-background-size: cover;
      background-size: cover;
      position: absolute;
      top: 50%;
      right: 5%; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .mv .btn a:after {
          width: 1.04vw;
          height: 1.2vw;
          margin-top: -0.56vw; } }
      @media screen and (max-width: 767px) {
        body.index .mv .btn a:after {
          width: 10px;
          height: 12px;
          margin-top: -6px; } }
    body.index .mv .btn a:hover {
      text-decoration: none;
      opacity: 0.6; }
    body.index .mv .btn a:nth-child(1) {
      margin-bottom: 1.25em; }
      body.index .mv .btn a:nth-child(1):before {
        background-image: url("../img/icon_dog01.png"); }
    body.index .mv .btn a:nth-child(2):before {
      background-image: url("../img/icon_mail02.png"); }
body.index .sec_news {
  padding: 20px 0 60px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.index .sec_news {
      padding: 1.6vw 0 4.8vw 0; } }
  body.index .sec_news .inner_in:after {
    content: "";
    display: block;
    clear: both; }
  body.index .sec_news .ttl {
    width: 140px;
    float: left; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.index .sec_news .ttl {
        width: 11.2vw; } }
    @media screen and (max-width: 767px) {
      body.index .sec_news .ttl {
        width: 100%;
        margin-bottom: 1em; } }
    body.index .sec_news .ttl h2 {
      margin-bottom: 0.15em;
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 4.4rem; }
    body.index .sec_news .ttl .link a {
      font-size: 1.7rem; }
      body.index .sec_news .ttl .link a:after {
        width: 13px;
        height: 15px;
        margin-left: 0.5em;
        content: '';
        background-image: url("../img/icon_sanaku01.png");
        -webkit-background-size: cover;
        background-size: cover;
        display: inline-block;
        vertical-align: 0; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_news .ttl .link a:after {
            width: 1.04vw;
            height: 1.2vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_news .ttl .link a:after {
            width: 10px;
            height: 12px; } }
  body.index .sec_news .news_list {
    width: 710px;
    float: right; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.index .sec_news .news_list {
        width: 56.8vw; } }
    @media screen and (max-width: 767px) {
      body.index .sec_news .news_list {
        width: 100%; } }
    body.index .sec_news .news_list li {
      padding: 0.5em 0;
      font-size: 1.7rem;
      letter-spacing: -0.4em; }
      body.index .sec_news .news_list li > * {
        display: inline-block;
        letter-spacing: -0.05em; }
      body.index .sec_news .news_list li .date {
        width: 110px;
        font-family: 'Quicksand', sans-serif;
        font-weight: 400;
        vertical-align: top; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_news .news_list li .date {
            width: 8.8vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_news .news_list li .date {
            width: 100%;
            display: block; } }
      body.index .sec_news .news_list li a {
        width: 600px;
        padding-right: 50px;
        vertical-align: top;
        position: relative; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_news .news_list li a {
            width: 48vw;
            padding-right: 4vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_news .news_list li a {
            width: 100%;
            display: block; } }
        body.index .sec_news .news_list li a:after {
          width: 13px;
          height: 15px;
          margin-top: -7px;
          content: '';
          background-image: url("../img/icon_sanaku01.png");
          -webkit-background-size: cover;
          position: absolute;
          top: 50%;
          right: 0; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.index .sec_news .news_list li a:after {
              width: 1.04vw;
              height: 1.2vw;
              margin-top: -0.56vw; } }
          @media screen and (max-width: 767px) {
            body.index .sec_news .news_list li a:after {
              width: 10px;
              height: 12px;
              margin-top: -6px; } }
body.index .sec_about {
  padding: 90px 0 60px 0;
  background-color: #f8eff1; }
  body.index .sec_about .inner {
    position: relative; }
  body.index .sec_about .text {
    width: 710px; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.index .sec_about .text {
        width: 56.8vw; } }
    @media screen and (max-width: 767px) {
      body.index .sec_about .text {
        width: 100%; }
        body.index .sec_about .text:after {
          content: "";
          display: block;
          clear: both; } }
    body.index .sec_about .text .img {
      position: absolute;
      top: 0;
      left: 70%; }
      @media screen and (max-width: 767px) {
        body.index .sec_about .text .img {
          width: 30%;
          margin: 0 0 1em 1em;
          float: right;
          position: static; } }
      body.index .sec_about .text .img img {
        width: 581px;
        max-width: none; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_about .text .img img {
            width: 46.48vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_about .text .img img {
            max-width: 100%; } }
    body.index .sec_about .text h2 {
      margin-bottom: 3em;
      font-size: 1.8rem;
      text-align: center; }
      body.index .sec_about .text h2 span {
        font-family: 'Quicksand', sans-serif;
        font-weight: 600;
        font-size: 4.4rem;
        display: block; }
    body.index .sec_about .text h3 {
      font-size: 2rem;
      font-weight: 700;
      margin-bottom: 1em; }
    body.index .sec_about .text p {
      margin-bottom: 3em; }
    body.index .sec_about .text .btn01 {
      text-align: center; }
body.index .sec_puppy {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.index .sec_puppy {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.index .sec_puppy {
      padding: 40px 0; } }
  body.index .sec_puppy h2 {
    margin-bottom: 3em;
    font-size: 1.8rem;
    text-align: center; }
    body.index .sec_puppy h2 span {
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 4.4rem;
      display: block; }
    body.index .sec_puppy h2 + p {
      font-size: 2rem;
      font-weight: 700;
      text-align: center; }
  body.index .sec_puppy .puppy_list {
    margin: 4em 0;
    display: -webkit-flex;
    display: flex; }
    @media screen and (max-width: 767px) {
      body.index .sec_puppy .puppy_list {
        display: block; } }
    body.index .sec_puppy .puppy_list li {
      width: 31%;
      margin: 0 3.5% 0 0;
      background-color: #ffffff;
      border: solid 3px #e8dbd5;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px;
      overflow: hidden; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .sec_puppy .puppy_list li {
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.index .sec_puppy .puppy_list li {
          width: 100%;
          max-width: 340px;
          margin-left: auto !important;
          margin-right: auto !important;
          margin-bottom: 20px; } }
      body.index .sec_puppy .puppy_list li:last-child {
        margin: 0; }
      body.index .sec_puppy .puppy_list li a {
        height: 100%;
        display: block;
        text-decoration: none !important;
        -moz-transition: background-color 0.5s;
        -o-transition: background-color 0.5s;
        -webkit-transition: background-color 0.5s;
        transition: background-color 0.5s; }
        body.index .sec_puppy .puppy_list li a:hover {
          background-color: #f4efec; }
      body.index .sec_puppy .puppy_list li .img {
        width: 100%;
        height: 210px;
        overflow: hidden; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_puppy .puppy_list li .img {
            height: 16.8vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_puppy .puppy_list li .img {
            height: 180px; } }
        body.index .sec_puppy .puppy_list li .img img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
      body.index .sec_puppy .puppy_list li .text {
        padding: 20px 25px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_puppy .puppy_list li .text {
            padding: 1.6vw 2vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_puppy .puppy_list li .text {
            padding: 10px; } }
        body.index .sec_puppy .puppy_list li .text .status {
          width: 60%;
          height: 50px;
          margin: 0 auto 0.5em auto;
          font-size: 1.7rem;
          line-height: 46px;
          text-align: center;
          -moz-border-radius: 14px;
          -webkit-border-radius: 14px;
          border-radius: 14px;
          border: solid 2px #e8dbd5; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.index .sec_puppy .puppy_list li .text .status {
              height: 4vw;
              line-height: 3.68vw;
              -moz-border-radius: 1.12vw;
              -webkit-border-radius: 1.12vw;
              border-radius: 1.12vw;
              top: -1.6vw; } }
          @media screen and (max-width: 767px) {
            body.index .sec_puppy .puppy_list li .text .status {
              height: 40px;
              line-height: 36px;
              top: -15px; } }
          body.index .sec_puppy .puppy_list li .text .status.sale {
            background-color: #f8eff1; }
          body.index .sec_puppy .puppy_list li .text .status.sold {
            background-color: #ffffff; }
        body.index .sec_puppy .puppy_list li .text table {
          width: 90%;
          margin: 0 auto; }
          body.index .sec_puppy .puppy_list li .text table tr {
            border-bottom: dashed 2px #e8dbd5; }
            body.index .sec_puppy .puppy_list li .text table tr:last-child {
              border-bottom: none; }
            body.index .sec_puppy .puppy_list li .text table tr th {
              width: 40%;
              padding: 0.5em 1.5em 0.5em 0;
              line-height: 1.25;
              vertical-align: top;
              text-align: right;
              position: relative; }
              body.index .sec_puppy .puppy_list li .text table tr th:after {
                content: '：';
                position: absolute;
                top: 0.5em;
                right: 0.25em; }
            body.index .sec_puppy .puppy_list li .text table tr td {
              padding: 0.5em 0;
              line-height: 1.25;
              vertical-align: top; }
        body.index .sec_puppy .puppy_list li .text .more {
          font-size: 1.4rem;
          text-align: right; }
          body.index .sec_puppy .puppy_list li .text .more:after {
            width: 13px;
            height: 15px;
            margin-left: 0.5em;
            content: '';
            background-image: url("../img/icon_sanaku01.png");
            -webkit-background-size: cover;
            display: inline-block;
            vertical-align: -0.2em; }
            @media screen and (max-width: 1250px) and (min-width: 768px) {
              body.index .sec_puppy .puppy_list li .text .more:after {
                width: 1.04vw;
                height: 1.2vw; } }
            @media screen and (max-width: 767px) {
              body.index .sec_puppy .puppy_list li .text .more:after {
                width: 10px;
                height: 12px; } }
  body.index .sec_puppy .btn01 {
    text-align: center; }
body.index .sec_voice {
  padding: 80px 0;
  background-color: #f4efec;
  background-image: url("../img/index/voice_bg.png");
  background-repeat: no-repeat;
  background-position: center top; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.index .sec_voice {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.index .sec_voice {
      padding: 40px 0 100px 0; } }
  body.index .sec_voice h2 {
    margin-bottom: 3em;
    font-size: 1.8rem;
    text-align: center; }
    body.index .sec_voice h2 span {
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 4.4rem;
      display: block; }
    body.index .sec_voice h2 + p {
      font-size: 2rem;
      font-weight: 700;
      text-align: center; }
  body.index .sec_voice .voice_list {
    margin: 4em 0;
    display: -webkit-flex;
    display: flex; }
    @media screen and (max-width: 767px) {
      body.index .sec_voice .voice_list {
        display: block; }
        body.index .sec_voice .voice_list:before, body.index .sec_voice .voice_list:after {
          width: 39.11343vw;
          height: 48.2399vw;
          content: '';
          -webkit-background-size: cover;
          background-size: cover;
          position: absolute;
          z-index: -1; }
        body.index .sec_voice .voice_list:before {
          background-image: url("../img/index/voice_img_sp02.png");
          top: 2%;
          right: 0; }
        body.index .sec_voice .voice_list:after {
          background-image: url("../img/index/voice_img_sp01.png");
          bottom: 0;
          left: 0; } }
    body.index .sec_voice .voice_list li {
      width: 31%;
      margin: 0 3.5% 0 0;
      padding: 25px;
      background-color: #ffffff;
      border: solid 3px #e8dbd5;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px;
      overflow: hidden; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .sec_voice .voice_list li {
          padding: 2vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.index .sec_voice .voice_list li {
          width: 100%;
          max-width: 340px;
          margin-left: auto !important;
          margin-right: auto !important;
          margin-bottom: 20px;
          padding: 1em; } }
      body.index .sec_voice .voice_list li:last-child {
        margin: 0; }
      body.index .sec_voice .voice_list li .note {
        margin-top: 1em;
        font-weight: 700;
        text-align: right;
        letter-spacing: -0.4em; }
        body.index .sec_voice .voice_list li .note > * {
          display: inline-block;
          letter-spacing: -0.05em; }
        body.index .sec_voice .voice_list li .note .address {
          margin-right: 1em; }
  body.index .sec_voice .btn01 {
    text-align: center; }
body.index .sec_flow {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.index .sec_flow {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.index .sec_flow {
      padding: 40px 0; } }
  body.index .sec_flow h2 {
    margin-bottom: 3em;
    font-size: 1.8rem;
    text-align: center; }
    body.index .sec_flow h2 span {
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 4.4rem;
      display: block; }
    body.index .sec_flow h2 + p {
      font-size: 2rem;
      font-weight: 700;
      text-align: center; }
  body.index .sec_flow .flow_list {
    margin: 4em 0; }
    @media screen and (max-width: 767px) {
      body.index .sec_flow .flow_list {
        text-align: center; } }
    body.index .sec_flow .flow_list:before {
      width: 367px;
      height: 18px;
      margin-bottom: 3em;
      content: '';
      background-image: url("../img/index/flow_img01.png");
      -webkit-background-size: cover;
      background-size: cover;
      display: block; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .sec_flow .flow_list:before {
          width: 29.36vw;
          height: 1.44vw; } }
      @media screen and (max-width: 767px) {
        body.index .sec_flow .flow_list:before {
          width: 300px;
          height: 15px; } }
    body.index .sec_flow .flow_list:after {
      width: 572px;
      height: 113px;
      margin: 3em 0 0 auto;
      content: '';
      background-image: url("../img/index/flow_img02.png");
      -webkit-background-size: cover;
      background-size: cover;
      display: block; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .sec_flow .flow_list:after {
          width: 45.76vw;
          height: 9.04vw; } }
      @media screen and (max-width: 767px) {
        body.index .sec_flow .flow_list:after {
          width: 300px;
          height: 59px; } }
    body.index .sec_flow .flow_list ol {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        body.index .sec_flow .flow_list ol {
          display: inline-block; } }
      body.index .sec_flow .flow_list ol li {
        font-size: 2rem;
        font-weight: 700; }
        @media screen and (max-width: 767px) {
          body.index .sec_flow .flow_list ol li {
            margin-bottom: 1em;
            text-align: left; }
            body.index .sec_flow .flow_list ol li:last-child {
              margin-bottom: 0; } }
        body.index .sec_flow .flow_list ol li:before {
          width: 38px;
          height: 38px;
          margin-right: 0.5em;
          content: '';
          -webkit-background-size: cover;
          background-size: cover;
          display: inline-block;
          vertical-align: -0.5em; }
        body.index .sec_flow .flow_list ol li:nth-child(1):before {
          background-image: url("../img/index/num01.png"); }
        body.index .sec_flow .flow_list ol li:nth-child(2):before {
          background-image: url("../img/index/num02.png"); }
        body.index .sec_flow .flow_list ol li:nth-child(3):before {
          background-image: url("../img/index/num03.png"); }
        body.index .sec_flow .flow_list ol li:nth-child(4):before {
          background-image: url("../img/index/num04.png"); }
        body.index .sec_flow .flow_list ol li:nth-child(5):before {
          background-image: url("../img/index/num05.png"); }
  body.index .sec_flow .btn01 {
    text-align: center; }
body.index .sec_owner {
  padding: 90px 0 60px 0;
  background-color: #f8eff1; }
  body.index .sec_owner .inner {
    max-width: 1320px;
    position: relative; }
  body.index .sec_owner .text {
    width: 650px;
    margin: 0 0 0 auto; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.index .sec_owner .text {
        width: 52vw; } }
    @media screen and (max-width: 767px) {
      body.index .sec_owner .text {
        width: 100%; } }
    body.index .sec_owner .text .img {
      position: absolute;
      top: 0;
      right: 65%; }
      @media screen and (max-width: 767px) {
        body.index .sec_owner .text .img {
          width: 50%;
          margin: 0 auto 4em auto;
          position: static; } }
      body.index .sec_owner .text .img img {
        width: 638px;
        max-width: none; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_owner .text .img img {
            width: 51.04vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_owner .text .img img {
            max-width: 100%; } }
    body.index .sec_owner .text h2 {
      margin-bottom: 3em;
      font-size: 1.8rem;
      text-align: center; }
      body.index .sec_owner .text h2 span {
        font-family: 'Quicksand', sans-serif;
        font-weight: 600;
        font-size: 4.4rem;
        display: block; }
      body.index .sec_owner .text h2 + p {
        font-size: 2rem;
        font-weight: 700;
        text-align: center; }
    body.index .sec_owner .text .link {
      margin: 4em 0;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-justify-content: center;
      justify-content: center; }
      body.index .sec_owner .text .link a {
        margin: 0 15px;
        font-size: 1.8rem;
        font-weight: 700;
        text-align: center;
        -webkit-background-size: cover;
        background-size: cover;
        position: relative; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_owner .text .link a {
            margin: 0 1.2vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_owner .text .link a {
            margin: 5px; } }
        body.index .sec_owner .text .link a:nth-child(1) {
          width: 178px;
          height: 167px;
          background-image: url("../img/index/owner_btn_bg01.png"); }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.index .sec_owner .text .link a:nth-child(1) {
              width: 14.24vw;
              height: 13.36vw; } }
          @media screen and (max-width: 767px) {
            body.index .sec_owner .text .link a:nth-child(1) {
              width: 142.4px;
              height: 133.6px; } }
        body.index .sec_owner .text .link a:nth-child(2) {
          width: 180px;
          height: 170px;
          background-image: url("../img/index/owner_btn_bg02.png"); }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.index .sec_owner .text .link a:nth-child(2) {
              width: 14.4vw;
              height: 13.6vw; } }
          @media screen and (max-width: 767px) {
            body.index .sec_owner .text .link a:nth-child(2) {
              width: 144px;
              height: 136px; } }
        body.index .sec_owner .text .link a:nth-child(3) {
          width: 178px;
          height: 167px;
          background-image: url("../img/index/owner_btn_bg03.png"); }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.index .sec_owner .text .link a:nth-child(3) {
              width: 14.24vw;
              height: 13.36vw; } }
          @media screen and (max-width: 767px) {
            body.index .sec_owner .text .link a:nth-child(3) {
              width: 142.4px;
              height: 133.6px; } }
        body.index .sec_owner .text .link a:nth-child(4) {
          width: 179px;
          height: 167px;
          background-image: url("../img/index/owner_btn_bg04.png"); }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.index .sec_owner .text .link a:nth-child(4) {
              width: 14.32vw;
              height: 13.36vw; } }
          @media screen and (max-width: 767px) {
            body.index .sec_owner .text .link a:nth-child(4) {
              width: 143.2px;
              height: 133.6px; } }
        body.index .sec_owner .text .link a:nth-child(5) {
          width: 179px;
          height: 169px;
          background-image: url("../img/index/owner_btn_bg05.png"); }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.index .sec_owner .text .link a:nth-child(5) {
              width: 14.32vw;
              height: 13.52vw; } }
          @media screen and (max-width: 767px) {
            body.index .sec_owner .text .link a:nth-child(5) {
              width: 143.2px;
              height: 135.2px; } }
        body.index .sec_owner .text .link a span {
          width: 100%;
          position: absolute;
          top: 50%;
          left: 0;
          -moz-transform: translate(0, -50%);
          -ms-transform: translate(0, -50%);
          -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%); }
    body.index .sec_owner .text .btn01 {
      text-align: center; }
body.index .sec_bnr {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.index .sec_bnr {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.index .sec_bnr {
      padding: 40px 0; } }
  body.index .sec_bnr .inner {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center; }
    @media screen and (max-width: 767px) {
      body.index .sec_bnr .inner {
        display: block;
        text-align: center; } }
    @media screen and (max-width: 767px) {
      body.index .sec_bnr .inner a {
        max-width: 90%;
        margin: 0 auto;
        display: block; } }
    body.index .sec_bnr .inner a + a {
      margin-left: 2em; }
      @media screen and (max-width: 767px) {
        body.index .sec_bnr .inner a + a {
          margin: 2em auto 0 auto; } }
body.index .sec_insta #sb_instagram .sb_instagram_header {
  text-align: center; }
  body.index .sec_insta #sb_instagram .sb_instagram_header a {
    display: inline-block;
    float: none; }
    body.index .sec_insta #sb_instagram .sb_instagram_header a .sbi_header_text h3 {
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 2.6rem;
      text-transform: uppercase; }
body.index .sec_insta #sb_instagram .sbi_load_btn .sbi_btn_text {
  font-size: 1.8rem; }
body.index .sec_insta #sb_instagram .sbi_follow_btn a span {
  font-size: 1.8rem; }
body.index .sec_faq {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.index .sec_faq {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.index .sec_faq {
      padding: 40px 0; } }
  body.index .sec_faq h2 {
    margin-bottom: 3em;
    font-size: 1.8rem;
    text-align: center; }
    body.index .sec_faq h2 span {
      font-family: 'Quicksand', sans-serif;
      font-weight: 600;
      font-size: 4.4rem;
      display: block; }
  body.index .sec_faq .faq_list li {
    margin-bottom: 2em; }
    body.index .sec_faq .faq_list li .faq_q {
      padding: 10px 120px 10px 90px;
      background-color: #f8eff1;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .sec_faq .faq_list li .faq_q {
          padding: 0.8vw 9.6vw 0.8vw 7.2vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.index .sec_faq .faq_list li .faq_q {
          padding: 10px 96px 10px 72px; } }
      body.index .sec_faq .faq_list li .faq_q:before {
        width: 43px;
        height: 43px;
        content: '';
        background-image: url("../img/faq_q.png");
        -webkit-background-size: cover;
        background-size: cover;
        position: absolute;
        top: 5px;
        left: 20px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_faq .faq_list li .faq_q:before {
            width: 3.44vw;
            height: 3.44vw;
            top: 0.4vw;
            left: 1.6vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_faq .faq_list li .faq_q:before {
            width: 34px;
            height: 34px;
            left: 16px; } }
    body.index .sec_faq .faq_list li .faq_a {
      padding: 20px 10px 10px 90px;
      position: relative; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.index .sec_faq .faq_list li .faq_a {
          padding: 1.6vw 0.8vw 0.8vw 7.2vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.index .sec_faq .faq_list li .faq_a {
          padding: 10px 10px 10px 72px; } }
      body.index .sec_faq .faq_list li .faq_a:before {
        width: 43px;
        height: 43px;
        content: '';
        background-image: url("../img/faq_a.png");
        -webkit-background-size: cover;
        background-size: cover;
        position: absolute;
        top: 15px;
        left: 20px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.index .sec_faq .faq_list li .faq_a:before {
            width: 3.44vw;
            height: 3.44vw;
            top: 1.2vw;
            left: 1.6vw; } }
        @media screen and (max-width: 767px) {
          body.index .sec_faq .faq_list li .faq_a:before {
            width: 34px;
            height: 34px;
            left: 16px; } }
  body.index .sec_faq .btn01 {
    text-align: center; }

/*l.y.b.familyについて*/
body.about .sec01 {
  padding: 80px 0 180px 0;
  background-image: url("../img/about/bg01.png");
  background-repeat: no-repeat;
  background-position: center top; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.about .sec01 {
      padding: 6.4vw 0 14.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.about .sec01 {
      padding: 40px 0 80px 0; } }
  body.about .sec01 h2 {
    margin-bottom: 2em;
    font-size: 3rem;
    font-weight: 700;
    text-align: center; }
  body.about .sec01 .box {
    padding: 60px 150px;
    background-color: #ffffff;
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.about .sec01 .box {
        padding: 4.8vw 12vw; } }
    @media screen and (max-width: 767px) {
      body.about .sec01 .box {
        width: 90%;
        margin: 0 auto;
        padding: 2em; } }
    body.about .sec01 .box:before {
      width: calc(100% - 20px);
      height: calc(100% - 20px);
      content: '';
      border: dashed 1px #684638;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px;
      position: absolute;
      top: 10px;
      left: 10px;
      z-index: -2; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.about .sec01 .box:before {
          width: calc(100% - 1.6233vw);
          height: calc(100% - 1.6233vw);
          top: 0.8vw;
          left: 0.8vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.about .sec01 .box:before {
          width: calc(100% - 10px);
          height: calc(100% - 10px);
          -moz-border-radius: 20px;
          -webkit-border-radius: 20px;
          border-radius: 20px;
          top: 5px;
          left: 5px; } }
    body.about .sec01 .box:after {
      width: 141px;
      height: 193px;
      content: '';
      background-image: url("../img/about/img01.png");
      -webkit-background-size: cover;
      background-size: cover;
      position: absolute;
      bottom: -100px;
      left: -70px;
      z-index: -1; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.about .sec01 .box:after {
          width: 11.28vw;
          height: 15.44vw;
          bottom: -8vw;
          left: -5.6vw; } }
      @media screen and (max-width: 767px) {
        body.about .sec01 .box:after {
          width: 70px;
          height: 96px;
          bottom: -35px;
          left: -48px; } }
body.about .sec02 {
  padding: 80px 0;
  background-color: #f8eff1;
  background-image: url("../img/about/bg02.png");
  background-repeat: no-repeat;
  background-position: center top; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.about .sec02 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.about .sec02 {
      padding: 100px 0 180px 0; } }
  @media screen and (max-width: 767px) {
    body.about .sec02 .inner .inner_in:before, body.about .sec02 .inner .inner_in:after {
      width: 39.11343vw;
      height: 51.36897vw;
      content: '';
      -webkit-background-size: cover;
      background-size: cover;
      position: absolute;
      z-index: -1; }
    body.about .sec02 .inner .inner_in:before {
      background-image: url("../img/about/about_gaiyou_img_sp01.png");
      top: 0;
      left: 0; }
    body.about .sec02 .inner .inner_in:after {
      background-image: url("../img/about/about_gaiyou_img_sp02.png");
      right: 0;
      bottom: 0; } }
  body.about .sec02 h2 {
    margin-bottom: 2em;
    font-size: 3rem;
    font-weight: 700;
    text-align: center; }
  body.about .sec02 table {
    width: 100%; }
    body.about .sec02 table tbody tr th {
      width: 20%;
      padding: 20px 0;
      font-size: 2rem;
      font-weight: 700;
      text-align: right;
      background-image: url("../img/about/table_border.png");
      background-repeat: repeat-x;
      background-position: left bottom; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.about .sec02 table tbody tr th {
          padding: 1.6vw; } }
      @media screen and (max-width: 767px) {
        body.about .sec02 table tbody tr th {
          width: 35%;
          font-size: 1.8rem; } }
    body.about .sec02 table tbody tr td {
      padding: 20px 0 20px 100px;
      font-size: 1.8rem;
      background-image: url("../img/about/table_border.png");
      background-repeat: repeat-x;
      background-position: left bottom; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.about .sec02 table tbody tr td {
          padding: 1.6vw 0 1.6vw 8vw; } }
      @media screen and (max-width: 767px) {
        body.about .sec02 table tbody tr td {
          padding: 20px 0 20px 1em; } }

/*お引き渡しまでの流れ*/
body.flow .sec01 h2 {
  margin-bottom: 80px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.flow .sec01 h2 {
      margin-bottom: 6.4vw; } }
  @media screen and (max-width: 767px) {
    body.flow .sec01 h2 {
      margin-bottom: 40px; } }
body.flow .sec01 .flow_list {
  padding: 80px 0;
  background-color: #f4efec;
  background-repeat: no-repeat;
  background-position: center top; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.flow .sec01 .flow_list {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.flow .sec01 .flow_list {
      padding: 40px 0; } }
  body.flow .sec01 .flow_list li:after {
    content: "";
    display: block;
    clear: both; }
  body.flow .sec01 .flow_list li:after {
    width: 51px;
    height: 110px;
    margin: 0 auto;
    content: '';
    background-image: url("../img/flow/arrow.png");
    -webkit-background-size: cover;
    background-size: cover;
    display: block; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.flow .sec01 .flow_list li:after {
        width: 4.08vw;
        height: 8.8vw; } }
    @media screen and (max-width: 767px) {
      body.flow .sec01 .flow_list li:after {
        width: 25px;
        height: 55px;
        margin: 2em auto; } }
  body.flow .sec01 .flow_list li:last-child:after {
    content: none; }
  body.flow .sec01 .flow_list li .img {
    width: 35%;
    float: left; }
    @media screen and (max-width: 767px) {
      body.flow .sec01 .flow_list li .img {
        width: 100%;
        float: none;
        text-align: center; }
        body.flow .sec01 .flow_list li .img img {
          max-width: 50%; } }
  body.flow .sec01 .flow_list li .text {
    width: 60%;
    padding-top: 40px;
    float: right; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.flow .sec01 .flow_list li .text {
        padding-top: 3.2vw; } }
    @media screen and (max-width: 767px) {
      body.flow .sec01 .flow_list li .text {
        width: 100%;
        padding-top: 20px;
        float: none; } }
    body.flow .sec01 .flow_list li .text h3 {
      margin-bottom: 0.5em;
      padding-bottom: 0.5em;
      font-size: 2rem;
      font-weight: 700;
      background-image: url("../img/flow/midashi_border.png");
      background-repeat: repeat-x;
      background-position: center bottom; }
    body.flow .sec01 .flow_list li .text p {
      font-size: 1.8rem; }
      body.flow .sec01 .flow_list li .text p small {
        font-size: 0.8333em; }
      body.flow .sec01 .flow_list li .text p .pay_img {
        margin: 1em 0;
        display: block; }

/*お客様の声*/
body.voice .sec01 h2 {
  margin-bottom: 80px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.voice .sec01 h2 {
      margin-bottom: 6.4vw; } }
  @media screen and (max-width: 767px) {
    body.voice .sec01 h2 {
      margin-bottom: 40px; } }
body.voice .sec01 .voice_list {
  padding: 80px 0;
  background-color: #f4efec;
  background-image: url("../img/voice/bg01.png");
  background-repeat: no-repeat;
  background-position: center top; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.voice .sec01 .voice_list {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.voice .sec01 .voice_list {
      padding: 150px 0; } }
  body.voice .sec01 .voice_list ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      body.voice .sec01 .voice_list ul {
        display: block; }
        body.voice .sec01 .voice_list ul:before, body.voice .sec01 .voice_list ul:after {
          width: 39.11343vw;
          height: 48.2399vw;
          content: '';
          -webkit-background-size: cover;
          background-size: cover;
          position: absolute;
          z-index: -1; }
        body.voice .sec01 .voice_list ul:before {
          background-image: url("../img/voice/voice_img_sp01.png");
          top: 0;
          left: 0; }
        body.voice .sec01 .voice_list ul:after {
          background-image: url("../img/voice/voice_img_sp02.png");
          bottom: 0;
          right: 0; } }
    body.voice .sec01 .voice_list ul li {
      width: 31%;
      margin: 0 3.5% 3.5% 0;
      padding: 25px;
      background-color: #ffffff;
      border: solid 3px #e8dbd5;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px;
      overflow: hidden; }
      body.voice .sec01 .voice_list ul li:nth-child(3n) {
        margin-right: 0; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.voice .sec01 .voice_list ul li {
          padding: 2vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.voice .sec01 .voice_list ul li {
          width: 100%;
          max-width: 340px;
          margin-left: auto !important;
          margin-right: auto !important;
          margin-bottom: 20px;
          padding: 1em; } }
      body.voice .sec01 .voice_list ul li .note {
        margin-top: 1em;
        font-weight: 700;
        text-align: right;
        letter-spacing: -0.4em; }
        body.voice .sec01 .voice_list ul li .note > * {
          display: inline-block;
          letter-spacing: -0.05em; }
        body.voice .sec01 .voice_list ul li .note .address {
          margin-right: 1em; }

/*トイプードルについて*/
body.toy_poodle .sec01 {
  padding: 80px 0 180px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.toy_poodle .sec01 {
      padding: 6.4vw 0 14.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.toy_poodle .sec01 {
      padding: 40px 0; } }
  body.toy_poodle .sec01 h2 {
    margin-bottom: 80px;
    font-size: 3rem;
    font-weight: 700;
    text-align: center; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.toy_poodle .sec01 h2 {
        margin-bottom: 6.4vw; } }
    @media screen and (max-width: 767px) {
      body.toy_poodle .sec01 h2 {
        margin-bottom: 40px; } }
  body.toy_poodle .sec01 .text {
    padding-left: 430px;
    position: relative; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.toy_poodle .sec01 .text {
        padding-left: 34.4vw; } }
    @media screen and (max-width: 767px) {
      body.toy_poodle .sec01 .text {
        padding-left: 0; } }
    body.toy_poodle .sec01 .text .img {
      width: 895px;
      position: absolute;
      top: -100px;
      right: 730px; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.toy_poodle .sec01 .text .img {
          width: 71.6vw;
          top: -8vw;
          right: 58.4vw; } }
      @media screen and (max-width: 767px) {
        body.toy_poodle .sec01 .text .img {
          width: auto;
          max-width: 90%;
          margin: 0 auto 1em auto;
          position: static; } }
    body.toy_poodle .sec01 .text h3 {
      margin-bottom: 1em;
      font-size: 2rem;
      font-weight: 700; }
body.toy_poodle .sec02 dl {
  background-color: #ffffff;
  border: solid 3px #e8dbd5;
  -moz-border-radius: 25px;
  -webkit-border-radius: 25px;
  border-radius: 25px;
  overflow: hidden; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.toy_poodle .sec02 dl {
      -moz-border-radius: 2vw;
      -webkit-border-radius: 2vw;
      border-radius: 2vw; } }
  @media screen and (max-width: 767px) {
    body.toy_poodle .sec02 dl {
      margin-bottom: 20px; } }
  body.toy_poodle .sec02 dl dt {
    padding: 0.5em;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    background-color: #e8dbd5; }
  body.toy_poodle .sec02 dl dd {
    padding: 2em; }
    body.toy_poodle .sec02 dl dd:after {
      content: "";
      display: block;
      clear: both; }
    body.toy_poodle .sec02 dl dd .img {
      width: 370px;
      float: right; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.toy_poodle .sec02 dl dd .img {
          width: 29.6vw; } }
      @media screen and (max-width: 767px) {
        body.toy_poodle .sec02 dl dd .img {
          width: 40%;
          margin: 0 0 1em 1em; } }
    body.toy_poodle .sec02 dl dd p {
      width: 610px;
      line-height: 1.5625;
      float: left; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.toy_poodle .sec02 dl dd p {
          width: 48.8vw; } }
      @media screen and (max-width: 767px) {
        body.toy_poodle .sec02 dl dd p {
          width: 100%;
          float: none; } }
body.toy_poodle .sec03 {
  padding: 100px 0 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.toy_poodle .sec03 {
      padding: 8vw 0 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.toy_poodle .sec03 {
      padding: 40px 0; } }
  body.toy_poodle .sec03 h2 {
    margin-bottom: 80px;
    font-size: 3rem;
    font-weight: 700;
    text-align: center; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.toy_poodle .sec03 h2 {
        margin-bottom: 6.4vw; } }
    @media screen and (max-width: 767px) {
      body.toy_poodle .sec03 h2 {
        margin-bottom: 40px; } }
  body.toy_poodle .sec03 .text {
    padding-right: 440px;
    position: relative; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.toy_poodle .sec03 .text {
        padding-right: 35.2vw; } }
    @media screen and (max-width: 767px) {
      body.toy_poodle .sec03 .text {
        padding-right: 0; } }
    body.toy_poodle .sec03 .text .img {
      width: 844px;
      position: absolute;
      top: -240px;
      left: 730px; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.toy_poodle .sec03 .text .img {
          width: 67.52vw;
          top: -19.2vw;
          left: 58.4vw; } }
      @media screen and (max-width: 767px) {
        body.toy_poodle .sec03 .text .img {
          width: auto;
          max-width: 90%;
          margin: 0 auto 1em auto;
          position: static; } }
    body.toy_poodle .sec03 .text h3 {
      margin-bottom: 1em;
      font-size: 2rem;
      font-weight: 700; }

/*よくある質問*/
body.faq .sec01 {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.faq .sec01 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.faq .sec01 {
      padding: 40px 0; } }
  body.faq .sec01 .faq_list li {
    margin-bottom: 2em; }
    body.faq .sec01 .faq_list li .faq_q {
      padding: 10px 120px 10px 90px;
      background-color: #f8eff1;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.faq .sec01 .faq_list li .faq_q {
          padding: 0.8vw 9.6vw 0.8vw 7.2vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.faq .sec01 .faq_list li .faq_q {
          padding: 10px 96px 10px 72px; } }
      body.faq .sec01 .faq_list li .faq_q:before {
        width: 43px;
        height: 43px;
        content: '';
        background-image: url("../img/faq_q.png");
        -webkit-background-size: cover;
        background-size: cover;
        position: absolute;
        top: 5px;
        left: 20px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.faq .sec01 .faq_list li .faq_q:before {
            width: 3.44vw;
            height: 3.44vw;
            top: 0.4vw;
            left: 1.6vw; } }
        @media screen and (max-width: 767px) {
          body.faq .sec01 .faq_list li .faq_q:before {
            width: 34px;
            height: 34px;
            left: 16px; } }
    body.faq .sec01 .faq_list li .faq_a {
      padding: 20px 10px 10px 90px;
      position: relative; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.faq .sec01 .faq_list li .faq_a {
          padding: 1.6vw 0.8vw 0.8vw 7.2vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.faq .sec01 .faq_list li .faq_a {
          padding: 10px 10px 10px 72px; } }
      body.faq .sec01 .faq_list li .faq_a:before {
        width: 43px;
        height: 43px;
        content: '';
        background-image: url("../img/faq_a.png");
        -webkit-background-size: cover;
        background-size: cover;
        position: absolute;
        top: 15px;
        left: 20px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.faq .sec01 .faq_list li .faq_a:before {
            width: 3.44vw;
            height: 3.44vw;
            top: 1.2vw;
            left: 1.6vw; } }
        @media screen and (max-width: 767px) {
          body.faq .sec01 .faq_list li .faq_a:before {
            width: 34px;
            height: 34px;
            left: 16px; } }

/*子犬の紹介*/
body.puppy .sec01 {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.puppy .sec01 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.puppy .sec01 {
      padding: 40px 0; } }
  body.puppy .sec01 h2 {
    margin-bottom: 80px;
    font-size: 2rem;
    font-weight: 700;
    text-align: center; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.puppy .sec01 h2 {
        margin-bottom: 6.4vw; } }
    @media screen and (max-width: 767px) {
      body.puppy .sec01 h2 {
        margin-bottom: 40px; } }
  body.puppy .sec01 .puppy_list {
    margin: 4em 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      body.puppy .sec01 .puppy_list {
        display: block; } }
    body.puppy .sec01 .puppy_list li {
      width: 31%;
      margin: 0 3.5% 3.5% 0;
      background-color: #ffffff;
      border: solid 3px #e8dbd5;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px;
      overflow: hidden; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.puppy .sec01 .puppy_list li {
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.puppy .sec01 .puppy_list li {
          width: 100%;
          max-width: 340px;
          margin-left: auto !important;
          margin-right: auto !important;
          margin-bottom: 20px; } }
      body.puppy .sec01 .puppy_list li:nth-child(3n) {
        margin-right: 0; }
      body.puppy .sec01 .puppy_list li a {
        height: 100%;
        display: block;
        text-decoration: none !important;
        -moz-transition: background-color 0.5s;
        -o-transition: background-color 0.5s;
        -webkit-transition: background-color 0.5s;
        transition: background-color 0.5s; }
        body.puppy .sec01 .puppy_list li a:hover {
          background-color: #f4efec; }
      body.puppy .sec01 .puppy_list li .img {
        width: 100%;
        height: 210px;
        overflow: hidden; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy .sec01 .puppy_list li .img {
            height: 16.8vw; } }
        @media screen and (max-width: 767px) {
          body.puppy .sec01 .puppy_list li .img {
            height: 180px; } }
        body.puppy .sec01 .puppy_list li .img img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
      body.puppy .sec01 .puppy_list li .text {
        padding: 20px 25px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy .sec01 .puppy_list li .text {
            padding: 1.6vw 2vw; } }
        @media screen and (max-width: 767px) {
          body.puppy .sec01 .puppy_list li .text {
            padding: 10px; } }
        body.puppy .sec01 .puppy_list li .text .status {
          width: 60%;
          height: 50px;
          margin: 0 auto 0.5em auto;
          font-size: 1.7rem;
          line-height: 46px;
          text-align: center;
          -moz-border-radius: 14px;
          -webkit-border-radius: 14px;
          border-radius: 14px;
          border: solid 2px #e8dbd5; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.puppy .sec01 .puppy_list li .text .status {
              height: 4vw;
              line-height: 3.68vw;
              -moz-border-radius: 1.12vw;
              -webkit-border-radius: 1.12vw;
              border-radius: 1.12vw;
              top: -1.6vw; } }
          @media screen and (max-width: 767px) {
            body.puppy .sec01 .puppy_list li .text .status {
              height: 40px;
              line-height: 36px;
              top: -15px; } }
          body.puppy .sec01 .puppy_list li .text .status.sale {
            background-color: #f8eff1; }
          body.puppy .sec01 .puppy_list li .text .status.sold {
            background-color: #ffffff; }
        body.puppy .sec01 .puppy_list li .text table {
          width: 90%;
          margin: 0 auto; }
          body.puppy .sec01 .puppy_list li .text table tr {
            border-bottom: dashed 2px #e8dbd5; }
            body.puppy .sec01 .puppy_list li .text table tr:last-child {
              border-bottom: none; }
            body.puppy .sec01 .puppy_list li .text table tr th {
              width: 40%;
              padding: 0.5em 1.5em 0.5em 0;
              line-height: 1.25;
              text-align: right;
              vertical-align: top;
              position: relative; }
              body.puppy .sec01 .puppy_list li .text table tr th:after {
                content: '：';
                position: absolute;
                top: 0.5em;
                right: 0.25em; }
            body.puppy .sec01 .puppy_list li .text table tr td {
              padding: 0.5em 0;
              line-height: 1.25;
              vertical-align: top; }
            body.puppy .sec01 .puppy_list li .text table tr:nth-child(5) th {
              vertical-align: middle; }
              body.puppy .sec01 .puppy_list li .text table tr:nth-child(5) th:after {
                top: 50%;
                -moz-transform: translate(0, -50%);
                -ms-transform: translate(0, -50%);
                -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%); }
            body.puppy .sec01 .puppy_list li .text table tr:nth-child(5) td {
              vertical-align: middle; }
        body.puppy .sec01 .puppy_list li .text .more {
          font-size: 1.4rem;
          text-align: right; }
          body.puppy .sec01 .puppy_list li .text .more:after {
            width: 13px;
            height: 15px;
            margin-left: 0.5em;
            content: '';
            background-image: url("../img/icon_sanaku01.png");
            -webkit-background-size: cover;
            display: inline-block;
            vertical-align: -0.2em; }
            @media screen and (max-width: 1250px) and (min-width: 768px) {
              body.puppy .sec01 .puppy_list li .text .more:after {
                width: 1.04vw;
                height: 1.2vw; } }
            @media screen and (max-width: 767px) {
              body.puppy .sec01 .puppy_list li .text .more:after {
                width: 10px;
                height: 12px; } }
body.puppy_detail .sec01 {
  padding: 0 0 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.puppy_detail .sec01 {
      padding: 0 0 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.puppy_detail .sec01 {
      padding: 0 0 40px 0; } }
  body.puppy_detail .sec01 .box {
    padding: 50px;
    background-color: #ffffff;
    border: solid 3px #e8dbd5;
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    overflow: hidden; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.puppy_detail .sec01 .box {
        padding: 4vw;
        -moz-border-radius: 2vw;
        -webkit-border-radius: 2vw;
        border-radius: 2vw; } }
    @media screen and (max-width: 767px) {
      body.puppy_detail .sec01 .box {
        padding: 0.5em; } }
    body.puppy_detail .sec01 .box h2 {
      font-size: 3.6rem;
      font-weight: 700;
      text-align: center; }
    body.puppy_detail .sec01 .box .status {
      width: 220px;
      height: 50px;
      margin: 1em auto 4em auto;
      font-size: 1.7rem;
      line-height: 46px;
      text-align: center;
      -moz-border-radius: 14px;
      -webkit-border-radius: 14px;
      border-radius: 14px;
      border: solid 2px #e8dbd5; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.puppy_detail .sec01 .box .status {
          width: 17.6vw;
          height: 4vw;
          line-height: 3.68vw;
          -moz-border-radius: 1.12vw;
          -webkit-border-radius: 1.12vw;
          border-radius: 1.12vw; } }
      @media screen and (max-width: 767px) {
        body.puppy_detail .sec01 .box .status {
          width: 176px;
          height: 40px;
          margin-bottom: 2em;
          line-height: 36px; } }
      body.puppy_detail .sec01 .box .status.sale {
        background-color: #f8eff1; }
      body.puppy_detail .sec01 .box .status.sold {
        background-color: #ffffff; }
    body.puppy_detail .sec01 .box .detail:after {
      content: "";
      display: block;
      clear: both; }
    body.puppy_detail .sec01 .box .detail .img_area {
      width: 465px;
      float: left; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.puppy_detail .sec01 .box .detail .img_area {
          width: 37.2vw; } }
      @media screen and (max-width: 767px) {
        body.puppy_detail .sec01 .box .detail .img_area {
          width: 100%;
          margin-bottom: 30px;
          float: none; } }
      body.puppy_detail .sec01 .box .detail .img_area .icatch {
        width: 465px;
        height: 345px;
        margin-bottom: 25px;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        overflow: hidden; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy_detail .sec01 .box .detail .img_area .icatch {
            width: 37.2vw;
            height: 27.6vw;
            margin-bottom: 2vw;
            -moz-border-radius: 0.8vw;
            -webkit-border-radius: 0.8vw;
            border-radius: 0.8vw; } }
        @media screen and (max-width: 767px) {
          body.puppy_detail .sec01 .box .detail .img_area .icatch {
            width: 100%;
            height: 62.26vw;
            margin-bottom: 10px; } }
        body.puppy_detail .sec01 .box .detail .img_area .icatch img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
      body.puppy_detail .sec01 .box .detail .img_area .sub_img:after {
        content: "";
        display: block;
        clear: both; }
      body.puppy_detail .sec01 .box .detail .img_area .sub_img li {
        width: 221px;
        height: 164px;
        margin-bottom: 25px;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        overflow: hidden;
        float: left; }
        body.puppy_detail .sec01 .box .detail .img_area .sub_img li:nth-child(odd) {
          margin-right: 23px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy_detail .sec01 .box .detail .img_area .sub_img li {
            width: 17.68vw;
            height: 13.12vw;
            margin-bottom: 2vw;
            -moz-border-radius: 0.8vw;
            -webkit-border-radius: 0.8vw;
            border-radius: 0.8vw; }
            body.puppy_detail .sec01 .box .detail .img_area .sub_img li:nth-child(odd) {
              margin-right: 1.84vw; } }
        @media screen and (max-width: 767px) {
          body.puppy_detail .sec01 .box .detail .img_area .sub_img li {
            width: 100%;
            height: 62.26vw;
            margin-right: 0 !important;
            margin-bottom: 10px; } }
        body.puppy_detail .sec01 .box .detail .img_area .sub_img li img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
      body.puppy_detail .sec01 .box .detail .img_area .movie {
        margin-top: 25px;
        background-color: #eeeeee;
        border: solid 2px #e8dbd5;
        overflow: hidden;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy_detail .sec01 .box .detail .img_area .movie {
            -moz-border-radius: 0.8vw;
            -webkit-border-radius: 0.8vw;
            border-radius: 0.8vw; } }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy_detail .sec01 .box .detail .img_area .movie {
            margin-top: 2vw; } }
        @media screen and (max-width: 767px) {
          body.puppy_detail .sec01 .box .detail .img_area .movie {
            margin-top: 10px; } }
        body.puppy_detail .sec01 .box .detail .img_area .movie video {
          width: 100%;
          vertical-align: bottom; }
    body.puppy_detail .sec01 .box .detail .text_area {
      width: 512px;
      float: right; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.puppy_detail .sec01 .box .detail .text_area {
          width: 40.96vw; } }
      @media screen and (max-width: 767px) {
        body.puppy_detail .sec01 .box .detail .text_area {
          width: 100%;
          float: none; } }
      body.puppy_detail .sec01 .box .detail .text_area table {
        width: 100%;
        margin-bottom: 40px;
        font-size: 2rem; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy_detail .sec01 .box .detail .text_area table {
            margin-bottom: 3.2vw; } }
        @media screen and (max-width: 767px) {
          body.puppy_detail .sec01 .box .detail .text_area table {
            margin-bottom: 20px;
            font-size: 1.8rem; } }
        body.puppy_detail .sec01 .box .detail .text_area table tr {
          border-bottom: dashed 2px #e8dbd5; }
          body.puppy_detail .sec01 .box .detail .text_area table tr th {
            width: 33%;
            padding: 0.75em 1.5em 0.75em 0;
            line-height: 1.25;
            text-align: right;
            vertical-align: top;
            position: relative; }
            body.puppy_detail .sec01 .box .detail .text_area table tr th:after {
              content: '：';
              position: absolute;
              top: 0.75em;
              right: 0.25em; }
          body.puppy_detail .sec01 .box .detail .text_area table tr td {
            padding: 0.75em 0;
            line-height: 1.25;
            vertical-align: top; }
          body.puppy_detail .sec01 .box .detail .text_area table tr:nth-child(5) th {
            vertical-align: middle; }
            body.puppy_detail .sec01 .box .detail .text_area table tr:nth-child(5) th:after {
              top: 50%;
              -moz-transform: translate(0, -50%);
              -ms-transform: translate(0, -50%);
              -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%); }
          body.puppy_detail .sec01 .box .detail .text_area table tr:nth-child(5) td {
            vertical-align: middle; }
      body.puppy_detail .sec01 .box .detail .text_area .box2 {
        padding: 20px;
        border: solid 2px;
        -moz-border-radius: 15px;
        -webkit-border-radius: 15px;
        border-radius: 15px;
        overflow: hidden; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.puppy_detail .sec01 .box .detail .text_area .box2 {
            padding: 1.6vw;
            -moz-border-radius: 1.2vw;
            -webkit-border-radius: 1.2vw;
            border-radius: 1.2vw; } }
        @media screen and (max-width: 767px) {
          body.puppy_detail .sec01 .box .detail .text_area .box2 {
            padding: 1.5em; } }
        body.puppy_detail .sec01 .box .detail .text_area .box2 h3 {
          font-size: 2rem;
          font-weight: 700;
          text-align: center; }
          body.puppy_detail .sec01 .box .detail .text_area .box2 h3:before {
            width: 41px;
            height: 31px;
            margin-right: 0.5em;
            content: '';
            -webkit-background-size: cover;
            background-size: cover;
            display: inline-block;
            vertical-align: -0.2em; }
            @media screen and (max-width: 1250px) and (min-width: 768px) {
              body.puppy_detail .sec01 .box .detail .text_area .box2 h3:before {
                width: 3.28vw;
                height: 2.48vw; } }
            @media screen and (max-width: 767px) {
              body.puppy_detail .sec01 .box .detail .text_area .box2 h3:before {
                width: 32px;
                height: 24px; } }
        body.puppy_detail .sec01 .box .detail .text_area .box2 table {
          margin-bottom: 0;
          font-size: 1.6rem; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.puppy_detail .sec01 .box .detail .text_area .box2 table {
              margin-bottom: 0; } }
          @media screen and (max-width: 767px) {
            body.puppy_detail .sec01 .box .detail .text_area .box2 table {
              margin-bottom: 0;
              font-size: 1.4rem; } }
          body.puppy_detail .sec01 .box .detail .text_area .box2 table tr:last-child {
            border-bottom: none; }
          body.puppy_detail .sec01 .box .detail .text_area .box2 table tr th {
            width: 20%; }
        body.puppy_detail .sec01 .box .detail .text_area .box2.father {
          border-color: #d5e3e8;
          margin-bottom: 40px; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.puppy_detail .sec01 .box .detail .text_area .box2.father {
              margin-bottom: 3.2vw; } }
          @media screen and (max-width: 767px) {
            body.puppy_detail .sec01 .box .detail .text_area .box2.father {
              margin-bottom: 20px; } }
          body.puppy_detail .sec01 .box .detail .text_area .box2.father h3:before {
            background-image: url("../img/icon_dog02.png"); }
          body.puppy_detail .sec01 .box .detail .text_area .box2.father table tr {
            border-bottom-color: #d5e3e8; }
        body.puppy_detail .sec01 .box .detail .text_area .box2.mother {
          border-color: #f0d8de; }
          body.puppy_detail .sec01 .box .detail .text_area .box2.mother h3:before {
            background-image: url("../img/icon_dog03.png"); }
          body.puppy_detail .sec01 .box .detail .text_area .box2.mother table tr {
            border-bottom-color: #f0d8de; }
  body.puppy_detail .sec01 .btn01 {
    margin-top: 4em;
    text-align: center; }
    body.puppy_detail .sec01 .btn01 a {
      font-family: 'Zen Maru Gothic', sans-serif !important;
      font-weight: 500 !important; }

/*飼い主へのお願い*/
body.owner .sec01 {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.owner .sec01 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.owner .sec01 {
      padding: 40px 0; } }
  body.owner .sec01 h2 {
    margin-bottom: 2em;
    font-size: 3rem;
    font-weight: 700;
    text-align: center; }
  body.owner .sec01 .kakunin_list {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    body.owner .sec01 .kakunin_list li {
      width: 30%;
      margin: 0 5% 5% 0;
      padding: 20px 10px 20px 80px;
      background-color: #ffffff;
      -moz-border-radius: 15px;
      -webkit-border-radius: 15px;
      border-radius: 15px;
      border: solid 3px #e8dbd5;
      overflow: hidden;
      position: relative; }
      body.owner .sec01 .kakunin_list li:nth-child(3n) {
        margin-right: 0; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.owner .sec01 .kakunin_list li {
          padding: 1.6vw 0.8vw 1.6vw 6.4vw;
          -moz-border-radius: 1.2vw;
          -webkit-border-radius: 1.2vw;
          border-radius: 1.2vw;
          border: solid 0.24vw #e8dbd5; } }
      @media screen and (max-width: 767px) {
        body.owner .sec01 .kakunin_list li {
          width: 48%;
          margin: 0 4% 4% 0 !important;
          padding: 1em; }
          body.owner .sec01 .kakunin_list li:nth-child(2n) {
            margin-right: 0 !important; } }
      body.owner .sec01 .kakunin_list li h3 {
        margin-bottom: 0.5em;
        font-size: 2rem;
        font-weight: 700; }
      body.owner .sec01 .kakunin_list li img {
        width: 50px;
        margin-top: -25px;
        position: absolute;
        top: 50%;
        left: 15px; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.owner .sec01 .kakunin_list li img {
            width: 4vw;
            margin-top: -2vw;
            left: 1.2vw; } }
        @media screen and (max-width: 767px) {
          body.owner .sec01 .kakunin_list li img {
            width: auto;
            display: block;
            margin: 0 auto 10px auto;
            position: static; } }
body.owner .sec02 {
  padding: 60px 0;
  background-color: #f8eff1; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.owner .sec02 {
      padding: 4.8vw 0; } }
  @media screen and (max-width: 767px) {
    body.owner .sec02 {
      padding: 40px 0; } }
  body.owner .sec02 .inner {
    position: relative; }
    body.owner .sec02 .inner .text {
      width: 60%; }
      @media screen and (max-width: 767px) {
        body.owner .sec02 .inner .text {
          width: auto; } }
      body.owner .sec02 .inner .text h2 {
        margin-bottom: 2em;
        font-size: 3rem;
        font-weight: 700;
        text-align: center; }
      body.owner .sec02 .inner .text h3 {
        margin-bottom: 1em;
        font-size: 2rem;
        font-weight: 700; }
      @media screen and (max-width: 767px) {
        body.owner .sec02 .inner .text p:after {
          content: "";
          display: block;
          clear: both; } }
      body.owner .sec02 .inner .text p img {
        width: 657px;
        position: absolute;
        top: 50%;
        left: 62.5%;
        z-index: 99;
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%); }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.owner .sec02 .inner .text p img {
            width: 52.56vw; } }
        @media screen and (max-width: 767px) {
          body.owner .sec02 .inner .text p img {
            width: auto;
            max-width: 40%;
            margin: 0 0 1em 1em;
            float: right;
            position: static;
            -moz-transform: none;
            -ms-transform: none;
            -webkit-transform: none;
            transform: none; } }
body.owner .sec03 {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.owner .sec03 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.owner .sec03 {
      padding: 40px 0; } }
  body.owner .sec03 ul {
    display: -webkit-flex;
    display: flex; }
    @media screen and (max-width: 767px) {
      body.owner .sec03 ul {
        display: block; } }
    body.owner .sec03 ul li {
      width: 31.25%;
      margin-right: 3.125%;
      -moz-border-radius: 15px;
      -webkit-border-radius: 15px;
      border-radius: 15px;
      border: solid 3px #e8dbd5;
      overflow: hidden; }
      body.owner .sec03 ul li:nth-child(3) {
        margin-right: 0; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.owner .sec03 ul li {
          -moz-border-radius: 1.2vw;
          -webkit-border-radius: 1.2vw;
          border-radius: 1.2vw;
          border: solid 0.24vw #e8dbd5; } }
      @media screen and (max-width: 767px) {
        body.owner .sec03 ul li {
          width: 100%;
          margin: 0 0 20px 0 !important; } }
      body.owner .sec03 ul li .img {
        margin-bottom: 1.5em; }
        body.owner .sec03 ul li .img img {
          width: 100%; }
      body.owner .sec03 ul li h2 {
        font-size: 2rem;
        font-weight: 700;
        text-align: center; }
        body.owner .sec03 ul li h2 span {
          display: inline-block; }
          body.owner .sec03 ul li h2 span:before, body.owner .sec03 ul li h2 span:after {
            width: 19px;
            height: 17px;
            margin: 0 0.5em;
            content: '';
            background-image: url("../img/icon_ashiato01.png");
            -webkit-background-size: cover;
            background-size: cover;
            display: inline-block;
            vertical-align: 0; }
            @media screen and (max-width: 1250px) and (min-width: 768px) {
              body.owner .sec03 ul li h2 span:before, body.owner .sec03 ul li h2 span:after {
                width: 1.52vw;
                height: 1.36vw; } }
      body.owner .sec03 ul li p {
        padding: 1em; }
body.owner .sec04 {
  padding: 80px 0;
  background-color: #f4efec;
  z-index: 20; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.owner .sec04 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.owner .sec04 {
      padding: 40px 0; } }
  body.owner .sec04 h2 {
    margin-bottom: 2em;
    font-size: 3rem;
    font-weight: 700;
    text-align: center; }
    body.owner .sec04 h2 + p {
      margin-bottom: 3em;
      font-size: 2rem;
      font-weight: 700;
      text-align: center; }
      body.owner .sec04 h2 + p span {
        font-size: 1.7rem;
        font-weight: 500;
        display: block; }
  body.owner .sec04 .box {
    padding: 30px 60px;
    background-color: #ffffff;
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.owner .sec04 .box {
        padding: 2.4vw 4.8vw; } }
    @media screen and (max-width: 767px) {
      body.owner .sec04 .box {
        width: 90%;
        margin: 0 auto;
        padding: 2em; } }
    body.owner .sec04 .box:before {
      width: calc(100% - 20px);
      height: calc(100% - 20px);
      content: '';
      border: dashed 1px #684638;
      -moz-border-radius: 25px;
      -webkit-border-radius: 25px;
      border-radius: 25px;
      position: absolute;
      top: 10px;
      left: 10px;
      z-index: -2; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.owner .sec04 .box:before {
          width: calc(100% - 1.6233vw);
          height: calc(100% - 1.6233vw);
          top: 0.8vw;
          left: 0.8vw;
          -moz-border-radius: 2vw;
          -webkit-border-radius: 2vw;
          border-radius: 2vw; } }
      @media screen and (max-width: 767px) {
        body.owner .sec04 .box:before {
          width: calc(100% - 10px);
          height: calc(100% - 10px);
          -moz-border-radius: 20px;
          -webkit-border-radius: 20px;
          border-radius: 20px;
          top: 5px;
          left: 5px; } }
    body.owner .sec04 .box ol li {
      padding: 25px 10px 25px 160px;
      border-bottom: solid 1px #684638;
      position: relative; }
      body.owner .sec04 .box ol li:before {
        width: 82px;
        height: 53px;
        content: '';
        -webkit-background-size: cover;
        background-size: cover;
        position: absolute;
        top: 50%;
        left: 35px;
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%); }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.owner .sec04 .box ol li {
          padding: 2vw 0.8vw 2vw 12.8vw; }
          body.owner .sec04 .box ol li:before {
            width: 6.56vw;
            height: 4.24vw;
            left: 2.8vw; } }
      @media screen and (max-width: 767px) {
        body.owner .sec04 .box ol li {
          padding: 1em; }
          body.owner .sec04 .box ol li:before {
            margin: 0 auto 0.5em auto;
            display: block;
            position: static;
            -moz-transform: none;
            -ms-transform: none;
            -webkit-transform: none;
            transform: none; } }
      body.owner .sec04 .box ol li:nth-child(1):before {
        background-image: url("../img/owner/num1.png"); }
      body.owner .sec04 .box ol li:nth-child(2):before {
        background-image: url("../img/owner/num2.png"); }
      body.owner .sec04 .box ol li:nth-child(3):before {
        background-image: url("../img/owner/num3.png"); }
      body.owner .sec04 .box ol li:nth-child(4):before {
        background-image: url("../img/owner/num4.png"); }
      body.owner .sec04 .box ol li:nth-child(5):before {
        background-image: url("../img/owner/num5.png"); }
      body.owner .sec04 .box ol li:nth-child(6):before {
        background-image: url("../img/owner/num6.png"); }
      body.owner .sec04 .box ol li:nth-child(7):before {
        background-image: url("../img/owner/num7.png"); }
      body.owner .sec04 .box ol li:nth-child(8):before {
        background-image: url("../img/owner/num8.png"); }
      body.owner .sec04 .box ol li:nth-child(9):before {
        background-image: url("../img/owner/num9.png"); }
      body.owner .sec04 .box ol li:nth-child(10) {
        border-bottom: none; }
        body.owner .sec04 .box ol li:nth-child(10):before {
          background-image: url("../img/owner/num10.png"); }
body.owner .sec05 {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.owner .sec05 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.owner .sec05 {
      padding: 40px 0; } }
  body.owner .sec05 h2 {
    margin-bottom: 1em;
    font-size: 1.8rem;
    overflow: hidden; }
    body.owner .sec05 h2 span {
      padding-right: 1em;
      display: inline-block;
      position: relative; }
      body.owner .sec05 h2 span:after {
        width: 99999px;
        height: 1px;
        content: '';
        background-color: #e8dbd5;
        position: absolute;
        top: 50%;
        left: 100%; }

/*お知らせ・ブログ*/
body.archive .sec01 {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.archive .sec01 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.archive .sec01 {
      padding: 40px 0; } }
  body.archive .sec01 .archive_list {
    padding-right: 20px; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.archive .sec01 .archive_list {
        padding-right: 1.6vw; } }
    @media screen and (max-width: 767px) {
      body.archive .sec01 .archive_list {
        margin-bottom: 3em;
        padding-right: 0; } }
    body.archive .sec01 .archive_list ul li {
      margin-bottom: 2em; }
      body.archive .sec01 .archive_list ul li a {
        padding: 25px;
        background-color: #ffffff;
        display: block;
        position: relative;
        -moz-border-radius: 25px;
        -webkit-border-radius: 25px;
        border-radius: 25px;
        -moz-transition: background-color 0.5s;
        -o-transition: background-color 0.5s;
        -webkit-transition: background-color 0.5s;
        transition: background-color 0.5s; }
        @media screen and (max-width: 1250px) and (min-width: 768px) {
          body.archive .sec01 .archive_list ul li a {
            padding: 2vw;
            -moz-border-radius: 2vw;
            -webkit-border-radius: 2vw;
            border-radius: 2vw; } }
        @media screen and (max-width: 767px) {
          body.archive .sec01 .archive_list ul li a {
            padding: 15px;
            -moz-border-radius: 20px;
            -webkit-border-radius: 20px;
            border-radius: 20px; } }
        body.archive .sec01 .archive_list ul li a:before {
          width: calc(100% - 20px);
          height: calc(100% - 20px);
          content: '';
          border: dashed 1px #684638;
          -moz-border-radius: 25px;
          -webkit-border-radius: 25px;
          border-radius: 25px;
          position: absolute;
          top: 10px;
          left: 10px; }
          @media screen and (max-width: 1250px) and (min-width: 768px) {
            body.archive .sec01 .archive_list ul li a:before {
              width: calc(100% - 1.623vw);
              height: calc(100% - 1.623vw);
              top: 0.8vw;
              left: 0.8vw;
              -moz-border-radius: 2vw;
              -webkit-border-radius: 2vw;
              border-radius: 2vw; } }
          @media screen and (max-width: 767px) {
            body.archive .sec01 .archive_list ul li a:before {
              width: calc(100% - 10px);
              height: calc(100% - 10px);
              top: 5px;
              left: 5px;
              -moz-border-radius: 20px;
              -webkit-border-radius: 20px;
              border-radius: 20px; } }
        body.archive .sec01 .archive_list ul li a:hover {
          text-decoration: none;
          background-color: #f8eff1; }
      body.archive .sec01 .archive_list ul li .date {
        margin-right: 1em;
        font-family: 'Quicksand', sans-serif;
        font-weight: 400;
        display: inline-block; }
      body.archive .sec01 .archive_list ul li .cate {
        padding: 0.1em 1em;
        font-size: 1.4rem;
        color: #ffffff;
        background-color: #684638;
        display: inline-block; }
body.archive .widget .wp-block-archives-dropdown {
  margin-bottom: 4em; }
  body.archive .widget .wp-block-archives-dropdown label {
    margin-bottom: 0.5em;
    font-size: 2rem;
    font-weight: 700;
    display: block; }
  body.archive .widget .wp-block-archives-dropdown select {
    width: 100%;
    padding: 0.5em;
    color: #684638;
    background-color: #ffffff;
    border: solid 1px #684638; }
body.archive .widget h2 {
  margin-bottom: 0.5em;
  font-size: 2rem;
  font-weight: 700;
  display: block; }
body.archive .widget .wp-block-categories-list li {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  border-bottom: dashed 1px #684638; }
  body.archive .widget .wp-block-categories-list li:first-child {
    border-top: dashed 1px #684638; }
body.single .sec01 .single_header {
  margin-bottom: 80px; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.single .sec01 .single_header {
      margin-bottom: 6.4vw; } }
  @media screen and (max-width: 767px) {
    body.single .sec01 .single_header {
      margin-bottom: 40px; } }
  body.single .sec01 .single_header h2 {
    margin-bottom: 1em;
    font-size: 2rem;
    font-weight: 700;
    text-align: center; }
  body.single .sec01 .single_header .date {
    font-family: 'Quicksand', sans-serif;
    font-weight: 400;
    font-size: 1.4rem;
    text-align: right; }
body.single .sec01 .single_body {
  padding: 80px 0;
  background-color: #f4efec; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.single .sec01 .single_body {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.single .sec01 .single_body {
      padding: 40px 0; } }
  body.single .sec01 .single_body .icatch {
    margin-bottom: 3em; }
    body.single .sec01 .single_body .icatch img {
      margin: 0 auto;
      display: block; }
  body.single .sec01 .single_body .btn01 {
    margin-top: 4em;
    text-align: center; }
    body.single .sec01 .single_body .btn01 a {
      font-family: 'Zen Maru Gothic', sans-serif !important;
      font-weight: 500 !important; }

/*お問い合わせ*/
body.contact .sec01 h2 {
  margin-bottom: 80px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.contact .sec01 h2 {
      margin-bottom: 6.4vw; } }
  @media screen and (max-width: 767px) {
    body.contact .sec01 h2 {
      margin-bottom: 40px; } }
body.contact .sec01 .mailform {
  padding: 80px 0;
  background-color: #f8eff1;
  background-image: url("../img/contact/bg01.png");
  background-repeat: no-repeat;
  background-position: center top; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.contact .sec01 .mailform {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.contact .sec01 .mailform {
      padding: 100px 0 150px 0; } }
  @media screen and (max-width: 767px) {
    body.contact .sec01 .mailform .inner .inner_in:before, body.contact .sec01 .mailform .inner .inner_in:after {
      width: 39.11343vw;
      height: 53.97653vw;
      content: '';
      -webkit-background-size: cover;
      background-size: cover;
      position: absolute;
      z-index: -1; }
    body.contact .sec01 .mailform .inner .inner_in:before {
      background-image: url("../img/contact/contact_img_sp02.png");
      top: 0;
      right: 0; }
    body.contact .sec01 .mailform .inner .inner_in:after {
      background-image: url("../img/contact/contact_img_sp01.png");
      left: 0;
      bottom: 0; } }
  body.contact .sec01 .mailform .annotation {
    margin-bottom: 1em;
    font-size: 1.8rem;
    text-align: center; }
    body.contact .sec01 .mailform .annotation .required {
      margin-right: 0.5em; }
  body.contact .sec01 .mailform i.required {
    width: 18px;
    height: 16px;
    background-image: url("../img/icon_ashiato02.png");
    -webkit-background-size: cover;
    background-size: cover;
    text-indent: 200%;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    vertical-align: -0.1em; }
    @media screen and (max-width: 1250px) and (min-width: 768px) {
      body.contact .sec01 .mailform i.required {
        width: 1.44vw;
        height: 1.28vw; } }
  body.contact .sec01 .mailform table {
    width: 100%; }
    @media screen and (max-width: 767px) {
      body.contact .sec01 .mailform table {
        display: block; } }
    @media screen and (max-width: 767px) {
      body.contact .sec01 .mailform table tbody {
        display: block; } }
    @media screen and (max-width: 767px) {
      body.contact .sec01 .mailform table tbody tr {
        display: block; } }
    body.contact .sec01 .mailform table tbody tr th {
      width: 37%;
      padding: 20px 0;
      font-size: 2.2rem;
      font-weight: 700;
      vertical-align: top; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.contact .sec01 .mailform table tbody tr th {
          padding: 1.6vw 0; } }
      @media screen and (max-width: 767px) {
        body.contact .sec01 .mailform table tbody tr th {
          width: 100%;
          padding: 0;
          font-size: 1.8rem;
          display: block; } }
      body.contact .sec01 .mailform table tbody tr th .required {
        margin-left: 1em; }
    body.contact .sec01 .mailform table tbody tr td {
      padding: 20px 0;
      vertical-align: top; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.contact .sec01 .mailform table tbody tr td {
          padding: 1.6vw 0; } }
      @media screen and (max-width: 767px) {
        body.contact .sec01 .mailform table tbody tr td {
          padding: 10px 0;
          display: block; } }
      body.contact .sec01 .mailform table tbody tr td .wpcf7-text {
        width: 100%;
        padding: 0.5em;
        background-color: #ffffff;
        border: solid 1px #eacfd5;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px; }
      body.contact .sec01 .mailform table tbody tr td .wpcf7-textarea {
        width: 100%;
        height: 14em;
        padding: 0.5em;
        background-color: #ffffff;
        border: solid 1px #eacfd5;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px; }
  body.contact .sec01 .mailform .submit {
    margin-top: 4em;
    text-align: center; }
    body.contact .sec01 .mailform .submit .wpcf7-submit {
      width: 294px;
      height: 70px;
      background: none;
      background-image: url("../img/contact/btn-send.png");
      -webkit-background-size: cover;
      background-size: cover;
      border: none;
      text-indent: 200%;
      white-space: nowrap;
      overflow: hidden; }
      @media screen and (max-width: 1250px) and (min-width: 768px) {
        body.contact .sec01 .mailform .submit .wpcf7-submit {
          width: 23.52vw;
          height: 5.6vw; } }
      @media screen and (max-width: 767px) {
        body.contact .sec01 .mailform .submit .wpcf7-submit {
          width: 200px;
          height: 48px; } }
body.contact .sec01 .privacy_text {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.contact .sec01 .privacy_text {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.contact .sec01 .privacy_text {
      padding: 40px 0; } }
  body.contact .sec01 .privacy_text h3 {
    margin-bottom: 1em;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    color: #ac9f99; }
  body.contact .sec01 .privacy_text p {
    text-align: center;
    color: #ac9f99; }

/*プライバシーポリシー*/
body.privacy .sec01 {
  padding: 80px 0; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    body.privacy .sec01 {
      padding: 6.4vw 0; } }
  @media screen and (max-width: 767px) {
    body.privacy .sec01 {
      padding: 40px 0; } }
  body.privacy .sec01 h2 {
    margin-bottom: 2em;
    font-size: 3rem;
    font-weight: 700;
    text-align: center; }
  body.privacy .sec01 ul {
    margin-top: 2em; }
    body.privacy .sec01 ul li {
      margin-bottom: 1em; }
      body.privacy .sec01 ul li h3 {
        margin-bottom: 0.5em;
        font-size: 1.8rem;
        font-weight: 700; }

/*編集エリア用*/
.editor-area > *:first-child {
  margin-top: 0 !important; }
.editor-area > *:last-child {
  margin-bottom: 0 !important; }
.editor-area h1:after, .editor-area h2:after, .editor-area h3:after, .editor-area h4:after, .editor-area h5:after, .editor-area h6:after, .editor-area p:after, .editor-area div:after, .editor-area li:after {
  content: "";
  display: block;
  clear: both; }
.editor-area .aligncenter {
  display: block;
  margin: 1.5rem auto; }
.editor-area .alignright {
  float: right;
  margin: 0 0 1em 1em; }
.editor-area .alignleft {
  float: left;
  margin: 0 1em 1em 0; }
.editor-area img.alignright, .editor-area img.alignleft, .editor-area figure.alignright, .editor-area figure.alignleft {
  max-width: 50%; }
.editor-area .wp-caption {
  border: 1px solid #666666;
  text-align: left;
  background-color: #cccccc;
  padding: 0.25em;
  border-radius: 3px; }
.editor-area .wp-caption img {
  margin: 0;
  padding: 0;
  border: 0 none; }
.editor-area .wp-caption p.wp-caption-text {
  font-size: 1.4rem;
  line-height: 1.5;
  margin: 0;
  padding: 0; }
.editor-area p {
  margin: 2em 0; }
.editor-area b, .editor-area strong {
  font-weight: 700; }
.editor-area i, .editor-area em {
  font-style: italic; }
.editor-area h1, .editor-area h2, .editor-area h3 {
  margin: 1.5em 0;
  font-size: 2rem;
  font-weight: 700; }
.editor-area h4 {
  margin: 1.5em 0;
  font-size: 1.8rem;
  font-weight: 700; }
.editor-area h5, .editor-area h6 {
  margin: 1.5em 0;
  font-size: 1.6rem;
  font-weight: 700; }
.editor-area ul, .editor-area ol {
  margin: 2em 0;
  padding-left: 1em; }
.editor-area ul {
  list-style: disc outside; }
.editor-area ol {
  list-style: decimal outside; }
.editor-area blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px; }
.editor-area table {
  width: 100%;
  margin: 2em 0;
  border-collapse: collapse; }
  .editor-area table th, .editor-area table td {
    padding: 1em;
    border-bottom: dashed 2px #684638; }
  .editor-area table th {
    width: 25%;
    font-weight: 700; }

/*contactform7 調整*/
.screen-reader-response {
  display: none; }

.wpcf7-form-control-wrap {
  position: relative; }

.wpcf7-form-control-wrap.your-message {
  display: block; }

.wpcf7-not-valid-tip {
  position: absolute;
  left: 70px;
  top: -30px;
  color: #ffffff !important;
  background: #684638;
  font-weight: bold;
  font-size: 1.2rem;
  width: 200px;
  padding: 2px;
  text-align: center;
  border-radius: 20px; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .wpcf7-not-valid-tip {
      width: 16vw;
      padding: 0.16vw;
      left: 5.6vw;
      top: -2.4vw;
      border-radius: 1.6vw; } }

.wpcf7-not-valid-tip:before {
  display: block;
  position: absolute;
  bottom: -6px;
  margin: 0 auto;
  left: 0;
  right: 0;
  width: 12px;
  height: 12px;
  background: #666666;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: ""; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .wpcf7-not-valid-tip:before {
      width: 0.96vw;
      padding: 0.96vw;
      bottom: -0.48vw; } }

.wpcf7-response-output {
  width: 100%;
  text-align: center;
  color: #666666;
  border-color: #666666 !important;
  padding: 10px;
  box-sizing: border-box;
  font-weight: bold; }
  @media screen and (max-width: 1250px) and (min-width: 768px) {
    .wpcf7-response-output {
      padding: 0.8vw; } }

@media screen and (max-width: 767px) {
  .wpcf7-not-valid-tip {
    top: -25px;
    right: 0;
    left: auto;
    font-size: 10px;
    width: 160px; }

  .wpcf7-form-control-wrap {
    display: block; } }
/*wp-pagenavi 調整*/
.wp-pagenavi {
  margin-top: 5em;
  text-align: center;
  clear: both; }

.wp-pagenavi a, .wp-pagenavi span {
  text-decoration: none;
  border: 1px solid #684638;
  padding: 0.25em 0.75em;
  margin: 0.25em;
  font-size: 1.8rem;
  font-weight: 500;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px; }

.wp-pagenavi a:hover, .wp-pagenavi span.current {
  color: #ffffff;
  background-color: #684638; }

/****************************************************
 * 6.装飾
 ****************************************************/
.underline {
  text-decoration: underline; }

.bold {
  font-weight: 700; }

.colorRed {
  color: #ff0000; }

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

.ta-l {
  text-align: left; }

.ta-r {
  text-align: right; }

/****************************************************
 * 7.印刷用調整
 ****************************************************/
@media print {
  @page {
    /* A4縦サイズ */
    size: 210mm 297mm; }
  html {
    font-size: 10pt !important; }

  body {
    margin: 0 !important;
    padding: 0 !important; }

  * {
    -webkit-print-color-adjust: exact; }

  .container {
    padding: 0 !important; }

  #header {
    position: static !important; }

  img {
    display: block !important; } }
