@charset "UTF-8";
/****************************************************
Break Point Settings
****************************************************/
/**
* Table of Contntens:
*
*  1.0 - リセット
*  2.0 - 基本構造
*  3.0 - ヘッダー
*    3.1 - ドロワーメニュー
*  4.0 - サイドバー
*  5.0 - フッター
*  6.0 - ページ共通
*  7.0 - トップページ
*  8.0 - 下層ページ
*   8.1 - 予約受付中
*   8.2 - 最新の入荷情報
*   8.3 - メーカー一覧
*   8.4 - カテゴリー別ページ
*   8.5 - 商品個別ページ
*   8.6 - 店舗のご案内
*   8.7 - お知らせ
*    8.7.1 - 一覧
*    8.7.2 - 個別
*   8.8 - ご注文・お問い合わせ
* -----------------------------------------------------------------------------
*/
/**
* 1.0 - リセット
* -----------------------------------------------------------------------------
*/
* {
  box-sizing: border-box; }

html {
  font-size: 16px;
  font-feature-settings: "palt";
  margin: 0; }

body {
  margin: 0; }

main {
  display: block; }

/* img */
img {
  vertical-align: bottom;
  border: none; }

/* list */
ul {
  list-style: none;
  margin: 0;
  padding: 0; }

/* table */
table {
  border-collapse: collapse;
  width: 100%; }

p {
  font-feature-settings: "pkna"; }

/* link */
a {
  text-decoration: none;
  color: inherit; }
  a:hover, a:link, a:visited, a:active {
    text-decoration: none;
    color: inherit; }

/* align */
.right {
  text-align: right; }

.center {
  text-align: center; }

/* typography */
h1, h2, h3, h4, h5 {
  margin: 0;
  font-weight: normal;
  line-height: 1; }

body {
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; }

/* visibility */
@media screen and (max-width: 768px) {
  .pconly {
    display: none !important; } }

@media screen and (max-width: 480px) {
  .pc-tab {
    display: none !important; } }

@media screen and (min-width: 769px) {
  .tab-sp {
    display: none !important; } }
@media screen and (max-width: 768px) {
  .tab-sp {
    display: block; } }

@media screen and (min-width: 769px) {
  .tabonly {
    display: none !important; } }
@media screen and (max-width: 768px) {
  .tabonly {
    display: block; } }
@media screen and (max-width: 480px) {
  .tabonly {
    display: none !important; } }

@media screen and (min-width: 769px) {
  .sponly {
    display: none !important; } }
@media screen and (max-width: 768px) {
  .sponly {
    display: none !important; } }
@media screen and (max-width: 480px) {
  .sponly {
    display: block !important; } }

/**
* 2.0 - 基本構造
* -----------------------------------------------------------------------------
*/
body {
  line-height: 1.5; }

.inner {
  max-width: 1100px;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto; }

.flex {
  display: flex;
  justify-content: space-between; }

.wrapper > .inner > .flex {
  flex-direction: row-reverse; }
  @media screen and (max-width: 480px) {
    .wrapper > .inner > .flex {
      display: block; } }

/**
* 3.0 - ヘッダー
* -----------------------------------------------------------------------------
*/
header {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.8); }
  header:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0;
    height: 7px;
    background-color: #c30d23; }
  header .inner {
    position: relative;
    max-width: 1060px;
    padding-left: 0; }
  header h1 {
    background-color: #c30d23;
    display: inline-block;
    padding: 13px 10px 10px 10px;
    height: 67px; }
    header h1 img {
      width: 96px; }
  header .header_right {
    position: absolute;
    right: 70px;
    top: 0;
    height: 67px; }
    header .header_right > div {
      height: 100%;
      line-height: 67px; }
    header .header_right .tel {
      font-weight: bold; }
    header .header_right .to_contanct {
      padding-left: 10px;
      padding-right: 10px; }
      header .header_right .to_contanct a {
        display: inline-block;
        background-color: #c30d23;
        color: #fff;
        line-height: normal;
        padding: 5px 10px;
        border-radius: 6px;
        font-size: 15px; }
    @media screen and (max-width: 480px) {
      header .header_right {
        display: none; } }

/**
* 3.1 - ドロワーメニュー 
* -----------------------------------------------------------------------------
*/
.drawer {
  position: fixed;
  left: 0;
  width: 100%;
  z-index: 2;
  background-color: rgba(35, 24, 21, 0.7);
  transition: top .3s;
  padding-top: 100px;
  padding-bottom: 100px; }
  @media screen and (max-width: 480px) {
    .drawer {
      padding-top: 60px;
      padding-bottom: 60px; } }
  .drawer .toggle {
    width: 67px;
    height: 67px;
    position: absolute;
    background-image: url("../images/common/toggle.jpg");
    background-size: contain;
    background-repeat: no-repeat;
    bottom: -67px;
    right: 0;
    cursor: pointer; }
  .drawer .inner > .flex {
    justify-content: center; }
    @media screen and (max-width: 480px) {
      .drawer .inner > .flex {
        flex-wrap: wrap; } }
  .drawer ul li {
    margin-bottom: 40px; }
    @media screen and (max-width: 480px) {
      .drawer ul li {
        margin-bottom: 20px; } }
  .drawer ul .sub {
    margin-top: 40px;
    padding-left: 1em; }
    @media screen and (max-width: 480px) {
      .drawer ul .sub {
        margin-top: 20px; } }
  .drawer a {
    color: #fff; }
    .drawer a:hover {
      text-decoration: underline; }
    .drawer a:before {
      content: "";
      display: inline-block;
      margin-right: 10px;
      width: 13px;
      height: 15px;
      background-image: url("../images/common/triangle1.svg");
      background-size: contain;
      background-repeat: no-repeat; }
  @media screen and (max-width: 480px) {
    .drawer nav {
      flex-basis: 50%; } }
  .drawer .nav_drawer2 {
    padding-left: 4vw;
    padding-right: 4vw; }
    @media screen and (max-width: 480px) {
      .drawer .nav_drawer2 {
        padding-left: 2vw;
        padding-right: 0vw; } }
  @media screen and (max-width: 480px) {
    .drawer .nav_drawer3 {
      flex-basis: 100%;
      display: flex;
      margin-top: 20px; } }
  .drawer .nav_drawer3 ul {
    flex-basis: 50%; }
    .drawer .nav_drawer3 ul .li_tel a,
    .drawer .nav_drawer3 ul .li_contact a {
      background-color: #c30d23;
      color: #fff;
      display: block;
      max-width: 164px;
      width: 100%;
      height: 100%;
      padding: 5px 10px;
      text-align: center;
      font-weight: bold;
      border-radius: 6px; }
      .drawer .nav_drawer3 ul .li_tel a:before,
      .drawer .nav_drawer3 ul .li_contact a:before {
        display: none; }

body.open {
  overflow: hidden; }
  body.open .drawer {
    top: 0 !important; }

/**
* 4.0 - サイドバー
* -----------------------------------------------------------------------------
*/
.sidebar {
  flex-basis: 231px; }
  .sidebar .col {
    border-bottom: 1px solid #231815;
    margin-bottom: 40px; }
    .sidebar .col h3 {
      font-size: 18px;
      font-weight: bold;
      color: #231815;
      border-bottom: 1px solid #231815;
      padding-bottom: 10px; }
  .sidebar .search {
    background-color: #4a71c0;
    padding: 15px;
    margin-bottom: 30px; }
    .sidebar .search h3 {
      color: #fff;
      font-size: 16px;
      margin-bottom: 10px; }
    @media screen and (max-width: 480px) {
      .sidebar .search form {
        font-size: 13px; } }
    .sidebar .search form input {
      font-size: 16px;
      padding: 7px 10px;
      border: none;
      margin-right: 2px;
      width: 100%; }
    .sidebar .search form button {
      background-color: #000;
      color: #fff;
      border-radius: 0;
      box-shadow: none;
      border: none;
      height: 32px;
      vertical-align: middle;
      transform: translateY(-1px);
      padding-right: 10px;
      padding-left: 10px;
      cursor: pointer; }
    .sidebar .search .flex .input {
      flex: 1; }
    .sidebar .search .flex button {
      width: 55px; }
  @media screen and (max-width: 480px) {
    .sidebar .category ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; } }
  .sidebar .category li:not(:last-child) {
    border-bottom: 1px solid #b4b4b5; }
  @media screen and (max-width: 480px) {
    .sidebar .category li:nth-last-child(2) {
      border-bottom: none; } }
  .sidebar .category li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 10px 0; }
    .sidebar .category li a:hover {
      background-color: #f7f7f7; }
    @media screen and (max-width: 480px) {
      .sidebar .category li a {
        padding-top: 15px;
        padding-bottom: 15px; } }
  @media screen and (max-width: 480px) {
    .sidebar .category li {
      flex-basis: 48%; } }
  .sidebar .maker {
    padding-bottom: 30px; }
    .sidebar .maker h3 {
      margin-bottom: 20px; }
    .sidebar .maker ul {
      letter-spacing: -.4em;
      border-top: 1px solid #b4b4b5; }
    .sidebar .maker li {
      letter-spacing: normal;
      width: 20%;
      display: inline-block;
      border-bottom: 1px solid #b4b4b5;
      border-right: 1px solid #b4b4b5; }
      .sidebar .maker li a {
        display: block;
        width: 100%;
        height: 100%;
        text-align: center;
        font-weight: bold;
        padding: 7px 5px; }
        .sidebar .maker li a:hover {
          background-color: #f7f7f7; }
      @media screen and (max-width: 480px) {
        .sidebar .maker li {
          width: 11.11%; } }
      .sidebar .maker li:last-child {
        border-right: 1px solid #b4b4b5; }
      .sidebar .maker li:nth-child(5n) {
        border-right: 1px solid #b4b4b5; }
      .sidebar .maker li:nth-child(5n+1) {
        border-left: 1px solid #b4b4b5; }
      @media screen and (max-width: 480px) {
        .sidebar .maker li:nth-child(5n+1) {
          border-left: none; }
        .sidebar .maker li:nth-child(9n+1) {
          border-left: 1px solid #b4b4b5; } }

.nav_sidebar {
  margin-top: 90px; }
  @media screen and (max-width: 480px) {
    .nav_sidebar ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; } }
  .nav_sidebar ul li {
    position: relative;
    margin-bottom: 70px; }
    @media screen and (max-width: 480px) {
      .nav_sidebar ul li {
        margin-bottom: 20px; } }
    .nav_sidebar ul li a {
      width: 100%;
      height: 100%;
      display: block;
      color: #fff;
      padding: 15px 10px;
      font-size: 18px;
      position: relative;
      font-weight: bold; }
      .nav_sidebar ul li a:after {
        width: 10px;
        height: 12px;
        content: "";
        background-image: url("../images/common/triangle1.svg");
        background-size: contain;
        background-repeat: no-repeat;
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%); }
        @media screen and (max-width: 480px) {
          .nav_sidebar ul li a:after {
            right: 10px; } }
      @media screen and (max-width: 480px) {
        .nav_sidebar ul li a {
          font-size: 16px;
          text-align: right;
          padding-right: 40px;
          padding-top: 10px;
          padding-bottom: 10px; } }
      @media screen and (max-width: 480px) {
        .nav_sidebar ul li a span {
          text-align: center;
          display: inline-block; } }
    .nav_sidebar ul li:hover {
      opacity: .8; }
    .nav_sidebar ul li:before {
      content: "";
      background-repeat: no-repeat;
      width: 100%;
      position: absolute;
      height: 38px;
      top: -35px;
      left: 0; }
      @media screen and (max-width: 480px) {
        .nav_sidebar ul li:before {
          top: 50%;
          transform: translateY(-50%);
          height: 27px;
          left: 10px; } }
  .nav_sidebar ul .new {
    background-color: #00a199; }
    @media screen and (max-width: 480px) {
      .nav_sidebar ul .new {
        flex-basis: 47.5%; } }
    .nav_sidebar ul .new:before {
      background-image: url("../images/home/ttl_new.svg"); }
      @media screen and (max-width: 480px) {
        .nav_sidebar ul .new:before {
          background-image: url("../images/common/txt_new_w.svg"); } }
  .nav_sidebar ul .soon {
    background-color: #007dd0; }
    @media screen and (max-width: 480px) {
      .nav_sidebar ul .soon {
        flex-basis: 47.5%; } }
    .nav_sidebar ul .soon:before {
      background-image: url("../images/home/ttl_soon.svg"); }
      @media screen and (max-width: 480px) {
        .nav_sidebar ul .soon:before {
          background-image: url("../images/common/txt_soon_w.svg"); } }
  .nav_sidebar ul .information {
    background-color: #81a100; }
    @media screen and (max-width: 480px) {
      .nav_sidebar ul .information {
        flex-basis: 100%; } }
    .nav_sidebar ul .information:before {
      background-image: url("../images/home/ttl_information.svg"); }
      @media screen and (max-width: 480px) {
        .nav_sidebar ul .information:before {
          background-image: url("../images/common/txt_information_w.svg"); } }
    @media screen and (max-width: 480px) {
      .nav_sidebar ul .information a {
        padding-top: 22px;
        padding-bottom: 22px; } }

/**
* 5.0 - フッター
* -----------------------------------------------------------------------------
*/
footer {
  padding-top: 65px;
  padding-bottom: 30px; }
  @media screen and (max-width: 480px) {
    footer {
      padding-top: 20px; } }
  footer .inner > .flex {
    flex-direction: row-reverse; }
    @media screen and (max-width: 480px) {
      footer .inner > .flex {
        display: block; } }
    footer .inner > .flex > div {
      flex-basis: 50%; }
    footer .inner > .flex .footer_l {
      padding-right: 20px; }
      @media screen and (max-width: 480px) {
        footer .inner > .flex .footer_l {
          padding-right: 0px; } }
      footer .inner > .flex .footer_l nav ul li {
        margin-bottom: 20px; }
        footer .inner > .flex .footer_l nav ul li:before {
          content: "";
          width: 9px;
          height: 10px;
          background-image: url("../images/common/arrow_footer_nav.svg");
          background-size: contain;
          background-repeat: no-repeat;
          display: inline-block;
          vertical-align: middle;
          margin-right: 10px;
          transform: translateY(-2px); }
        footer .inner > .flex .footer_l nav ul li .sub {
          margin-top: 20px;
          padding-left: 1em; }
        footer .inner > .flex .footer_l nav ul li a {
          font-size: 15px; }
          footer .inner > .flex .footer_l nav ul li a:hover {
            text-decoration: underline; }
      footer .inner > .flex .footer_l .nav_footer1 {
        padding-right: 2vw; }
      footer .inner > .flex .footer_l .flex {
        justify-content: flex-start; }
      footer .inner > .flex .footer_l .tel {
        color: #c30d23;
        font-size: 25px;
        font-weight: bold;
        margin-top: 5px; }
      footer .inner > .flex .footer_l .to_map {
        text-align: left;
        margin-top: 20px; }
        footer .inner > .flex .footer_l .to_map a {
          width: auto;
          padding: 6px 40px; }
    footer .inner > .flex .footer_r {
      padding-left: 45px; }
      @media screen and (max-width: 480px) {
        footer .inner > .flex .footer_r {
          padding-left: 0;
          margin-bottom: 40px; } }
  footer .logo_footer {
    max-width: 325px;
    margin-bottom: 20px;
    margin-top: 30px; }
  footer .copyright {
    font-size: 11px;
    text-align: right;
    padding-top: 10px; }
  footer .fb {
    width: 100%; }

/**
* 6.0 - ページ共通
* -----------------------------------------------------------------------------
*/
.abouts {
  background-image: url("../images/common/bg_abouts.jpg");
  background-size: cover;
  background-position: center;
  margin-top: 85px; }
  @media screen and (max-width: 480px) {
    .abouts {
      margin-top: 30px; } }
  @media screen and (max-width: 480px) {
    .abouts .flex {
      justify-content: space-around; } }
  .abouts .flex div {
    flex-basis: 48%;
    text-align: center;
    padding-top: 70px;
    padding-bottom: 70px; }
    @media screen and (max-width: 480px) {
      .abouts .flex div {
        flex-basis: 41.8%; } }
    .abouts .flex div a {
      display: block;
      max-width: 270px;
      margin-left: auto;
      margin-right: auto;
      background-color: #fff;
      color: #c30d23;
      font-size: 20px;
      font-weight: bold;
      border: 2px solid #c30d23;
      padding: 20px 10px; }
      @media screen and (max-width: 480px) {
        .abouts .flex div a {
          padding: 10px;
          font-size: 16px; } }
      .abouts .flex div a span:after {
        content: "";
        width: 9px;
        height: 10px;
        background-image: url("../images/common/arrow_footer_nav.svg");
        background-size: contain;
        background-repeat: no-repeat;
        display: inline-block;
        margin-left: 10px;
        vertical-align: middle; }
    @media screen and (min-width: 440px) and (max-width: 480px) {
      .abouts .flex div:nth-child(1) a span:after {
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-top: 9px;
        margin-bottom: 4px; } }
    @media screen and (max-width: 480px) {
      .abouts .flex div:nth-child(2) a span:after {
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-top: 9px;
        margin-bottom: 4px; } }

.item_wrap {
  letter-spacing: -.4em; }
  .item_wrap * {
    letter-spacing: normal; }

.item {
  display: inline-block;
  vertical-align: top;
  position: relative;
  background-color: #f7f7f7;
  font-size: 15px;
  margin-bottom: 0.25%; }
  .item > a {
    display: block;
    width: 100%;
    height: 100%; }
    .item > a:hover .thum {
      opacity: 0.8; }
  .item .brand {
    background-color: #dbedf0;
    color: #00a199;
    font-size: 14px;
    line-height: 1.5;
    padding: 3px 10px;
    z-index: 1; }
  .item .thum {
    padding-top: 68.75%;
    background-image: url("../images/home/thum_item1.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    transition: opacity .1s; }
  .item .name {
    padding: 10px 10px 0 10px; }
  .item .bottom {
    padding: 10px 10px 10px 10px;
    font-weight: bold; }
    .item .bottom .flex {
      justify-content: space-around; }
      .item .bottom .flex > div {
        flex-basis: 50%;
        white-space: nowrap; }
      .item .bottom .flex .scale {
        text-align: left; }
      .item .bottom .flex .price {
        text-align: right; }

.more {
  text-align: center; }
  .more a {
    display: inline-block;
    background-color: #c30d23;
    text-align: center;
    color: #fff;
    padding: 12px 10px;
    max-width: 190px;
    width: 100%;
    position: relative;
    transition: .2s; }
    .more a:after {
      content: "";
      width: 10px;
      height: 12px;
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translateY(-50%);
      background-image: url("../images/common/triangle1.svg");
      background-position: center;
      background-repeat: no-repeat; }
    .more a:hover {
      opacity: .8; }

/* モーダルウィンドウ */
.modaal-container {
  background-color: #eeee90 !important;
  box-shadow: none !important; }
  .modaal-container .ul_names {
    display: flex;
    flex-wrap: wrap; }
    .modaal-container .ul_names li {
      flex-basis: 30%; }
      @media screen and (max-width: 480px) {
        .modaal-container .ul_names li {
          flex-basis: 48%; } }

.ul_names li {
  flex-basis: 32%;
  line-height: 1.7; }
  .ul_names li:nth-child(3n-2) {
    padding-right: 2%; }
  .ul_names li:nth-child(3n-1) {
    padding-right: 2%; }
  @media screen and (max-width: 480px) {
    .ul_names li {
      padding-right: 0 !important;
      padding-left: 0 !important; } }

/* ページャー */
.wp-pagenavi {
  letter-spacing: normal;
  text-align: center;
  line-height: 4; }
  @media screen and (max-width: 480px) {
    .wp-pagenavi {
      line-height: 3;
      margin-bottom: 30px;
      margin-top: 30px; } }
  .wp-pagenavi .pages,
  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .previouspostslink {
    display: none; }
  .wp-pagenavi .current,
  .wp-pagenavi .page,
  .wp-pagenavi a,
  .wp-pagenavi span {
    display: inline-block;
    height: 51px;
    width: 51px;
    line-height: 51px;
    text-align: center;
    color: #fff;
    border: none;
    margin: 0 7px;
    padding: 0; }
    @media screen and (max-width: 480px) {
      .wp-pagenavi .current,
      .wp-pagenavi .page,
      .wp-pagenavi a,
      .wp-pagenavi span {
        width: 40px;
        height: 40px;
        line-height: 40px;
        margin: 0 5px;
        font-size: 14px; } }
  .wp-pagenavi .current {
    background-color: #c30d23;
    font-weight: normal !important; }
  .wp-pagenavi .page {
    background-color: #888; }
    .wp-pagenavi .page:hover {
      opacity: 0.8; }
  .wp-pagenavi .extend {
    color: #000;
    margin: 0; }
  .wp-pagenavi .last, .wp-pagenavi .first {
    display: inline-block;
    color: #000;
    border: 1px solid #888;
    width: auto;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 14px; }

.anchor {
  position: absolute;
  top: -67px;
  left: 0; }

/* メインビジュアル */
.mainvisual {
  background-size: cover;
  background-position: center;
  color: #fff;
  font-size: 45px;
  font-weight: bold;
  text-align: center;
  text-shadow: 0 0 5px #000; }
  .mainvisual .sm {
    font-size: 24px; }
  .mainvisual img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 558px; }
    @media screen and (max-width: 480px) {
      .mainvisual img {
        max-width: 76.4%; } }

/**
* 7.0 - トップページ
* -----------------------------------------------------------------------------
*/
.home .mainvisual {
  background-image: url("../images/home/mainvisual.jpg");
  padding-top: 180px;
  padding-bottom: 150px; }
.home .search_area {
  background-color: #4a71c0;
  color: #fff;
  padding-top: 20px;
  padding-bottom: 20px; }
  .home .search_area form {
    text-align: center; }
    @media screen and (max-width: 480px) {
      .home .search_area form {
        font-size: 13px; } }
    .home .search_area form input {
      font-size: 16px;
      padding: 7px 10px;
      border: none;
      margin-right: 2px; }
      @media screen and (max-width: 480px) {
        .home .search_area form input {
          width: 40vw; } }
    .home .search_area form button {
      background-color: #000;
      color: #fff;
      border-radius: 0;
      box-shadow: none;
      border: none;
      height: 32px;
      vertical-align: middle;
      transform: translateY(-1px);
      padding-right: 10px;
      padding-left: 10px;
      cursor: pointer; }
.home .home_catch {
  font-size: 15px;
  margin-top: 40px;
  margin-bottom: 80px; }
.home h2 {
  color: #fff;
  padding: 15px;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  margin-bottom: 25px; }
  .home h2 .update {
    float: right;
    font-weight: normal; }
  .home h2:before {
    height: 48px;
    content: "";
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -47px;
    left: 0; }

.home_new {
  padding-bottom: 85px; }
  @media screen and (max-width: 480px) {
    .home_new {
      padding-bottom: 60px; } }
  .home_new h2 {
    background-color: #00a199; }
    .home_new h2:before {
      width: 92px;
      background-image: url("../images/home/ttl_new.svg"); }
  .home_new .item_wrap {
    margin-bottom: 45px; }
    @media screen and (max-width: 480px) {
      .home_new .item_wrap {
        margin-bottom: 30px; } }
    .home_new .item_wrap .item {
      width: 19.8%;
      margin-right: 0.25%; }
      @media screen and (max-width: 480px) {
        .home_new .item_wrap .item {
          width: 47.2%;
          margin-right: 5.6% !important;
          margin-bottom: 5.6%; } }
      .home_new .item_wrap .item:nth-child(5n) {
        margin-right: 0; }
      @media screen and (max-width: 480px) {
        .home_new .item_wrap .item:nth-child(2n) {
          margin-right: 0 !important; } }

.home_info {
  background-color: #edf7f7;
  padding-top: 115px; }
  @media screen and (max-width: 480px) {
    .home_info .inner > .flex {
      display: block; } }
  .home_info .inner > .flex > div {
    flex-basis: 48.6%;
    position: relative;
    padding-bottom: 120px; }
    .home_info .inner > .flex > div .title {
      font-size: 15px; }
      .home_info .inner > .flex > div .title:before {
        content: "";
        width: 12px;
        height: 14px;
        display: inline-block;
        vertical-align: middle;
        background-image: url("../images/common/triangle2.svg");
        background-repeat: no-repeat;
        background-size: contain;
        margin-right: 5px; }
  .home_info .inner > .flex .posts {
    margin-bottom: 20px; }
  .home_info .inner > .flex .more {
    position: absolute;
    bottom: 60px;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto; }
  @media screen and (max-width: 480px) {
    .home_info .soon {
      margin-bottom: 60px; } }
  .home_info .soon h2 {
    background-color: #007dd0; }
    .home_info .soon h2:before {
      max-width: 107px;
      width: 100%;
      background-image: url("../images/home/ttl_soon.svg"); }
  .home_info .soon .posts .accepting {
    background-color: #fff;
    border: 1px solid #007dd0;
    color: #007dd0;
    display: inline-block;
    line-height: 1;
    padding: 5px 10px;
    font-size: 15px;
    margin-bottom: 10px; }
  .home_info .information h2 {
    background-color: #81a100; }
    .home_info .information h2:before {
      max-width: 282px;
      width: 100%;
      background-image: url("../images/home/ttl_information.svg"); }
  .home_info .information .date {
    color: #81a100;
    padding: 5px 10px 5px 0; }

.home_categories {
  position: relative; }
  .home_categories .flex {
    flex-wrap: wrap; }
    .home_categories .flex .cat {
      flex-basis: 25%;
      text-align: center;
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover; }
      @media screen and (max-width: 480px) {
        .home_categories .flex .cat {
          flex-basis: 50%; } }
      .home_categories .flex .cat a {
        padding-top: 75px;
        padding-bottom: 75px;
        width: 100%;
        height: 100%;
        display: block;
        transition: opacity .2s; }
        .home_categories .flex .cat a span {
          display: inline-block;
          font-size: 20px;
          font-weight: bold;
          background-color: rgba(255, 255, 255, 0.8);
          padding: 12px 40px; }
        .home_categories .flex .cat a:hover {
          opacity: .8; }
    .home_categories .flex .plane {
      background-image: url("../images/home/thum_plane.jpg"); }
    .home_categories .flex .ship {
      background-image: url("../images/home/thum_ship.jpg"); }
    .home_categories .flex .vehicle {
      background-image: url("../images/home/thum_vehicle.jpg"); }
    .home_categories .flex .car {
      background-image: url("../images/home/thum_car.jpg"); }
    .home_categories .flex .gundam {
      background-image: url("../images/home/thum_gundam.jpg"); }
    .home_categories .flex .others {
      background-image: url("../images/home/thum_others.jpg"); }
    .home_categories .flex .tool {
      background-image: url("../images/home/thum_tool.jpg"); }
    .home_categories .flex .book {
      background-image: url("../images/home/thum_book.jpg"); }

.home_maker {
  padding-top: 70px;
  position: relative; }
  @media screen and (max-width: 480px) {
    .home_maker {
      padding-top: 50px; } }
  .home_maker h2 {
    text-align: center;
    margin-bottom: 0; }
    .home_maker h2 img {
      max-width: 147px; }
  .home_maker h2 + p {
    text-align: center;
    margin-top: 0;
    margin-bottom: 30px; }
  .home_maker .maker_list {
    flex-wrap: wrap; }
    .home_maker .maker_list li {
      flex-basis: 7.69%;
      background-color: #eeeeef;
      border-bottom: 1px solid #fff;
      border-right: 1px solid #fff;
      display: block;
      width: 100%;
      height: 100%;
      text-align: center;
      font-weight: bold;
      padding-top: 4px;
      padding-bottom: 4px;
      cursor: pointer; }
      .home_maker .maker_list li:hover {
        background-color: #eeee90; }
      @media screen and (max-width: 480px) {
        .home_maker .maker_list li {
          flex-basis: 11.1%; } }
      .home_maker .maker_list li:nth-child(13n) {
        border-right: none; }
        @media screen and (max-width: 480px) {
          .home_maker .maker_list li:nth-child(13n) {
            border-right: 1px solid #fff; } }
      @media screen and (max-width: 480px) {
        .home_maker .maker_list li:nth-child(9n) {
          border-right: none !important; } }
    .home_maker .maker_list .sponly {
      background: none; }
  .home_maker .maker_names {
    background-color: #eeee90;
    height: 300px;
    overflow: scroll;
    padding: 20px; }
    .home_maker .maker_names .ul_names {
      display: none; }
    .home_maker .maker_names .ul_names.active {
      display: flex;
      flex-wrap: wrap; }
      @media screen and (max-width: 480px) {
        .home_maker .maker_names .ul_names.active {
          display: block; } }

.home_insta {
  padding-top: 85px; }
  @media screen and (max-width: 480px) {
    .home_insta {
      padding-top: 30px; } }
  .home_insta h2 {
    text-align: center;
    margin-bottom: 0; }
    @media screen and (max-width: 800px) {
      .home_insta h2 {
        margin-bottom: 20px; } }
    .home_insta h2 img {
      max-width: 186px;
      width: 100%; }
    .home_insta h2 span {
      position: relative;
      display: inline-block;
      color: #000; }
      .home_insta h2 span:before {
        content: "";
        position: absolute;
        right: -80px;
        top: 0;
        width: 55px;
        height: 55px;
        background-image: url("../images/home/icon_insta.jpg");
        background-size: contain;
        background-repeat: no-repeat; }
      .home_insta h2 span .account {
        position: absolute;
        right: -310px;
        top: 50%;
        transform: translateY(-50%);
        color: #000; }
        @media screen and (max-width: 800px) {
          .home_insta h2 span .account {
            position: static;
            transform: none; } }
  .home_insta .text_gallery {
    text-align: center;
    margin-top: 0;
    margin-bottom: 40px;
    font-weight: bold; }
    @media screen and (max-width: 800px) {
      .home_insta .text_gallery {
        display: none; } }
  .home_insta .text_gallery_sp {
    margin-bottom: 20px;
    margin-top: 20px;
    display: none; }
    @media screen and (max-width: 800px) {
      .home_insta .text_gallery_sp {
        display: block !important; } }
  .home_insta .pics {
    overflow: hidden; }
  .home_insta .slider .slick-slide {
    padding-top: 4.16%;
    background-size: cover;
    background-position: center; }
  .home_insta .slider .slick-next,
  .home_insta .slider .slick-prev {
    z-index: 1;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    width: auto;
    padding-left: 10px;
    padding-right: 10px; }
    .home_insta .slider .slick-next:before,
    .home_insta .slider .slick-prev:before {
      width: 10px;
      height: 12px;
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center;
      content: "";
      display: block; }
  .home_insta .slider .slick-next {
    right: 0; }
    .home_insta .slider .slick-next:before {
      background-image: url("../images/home/arrow_next.svg"); }
  .home_insta .slider .slick-prev {
    left: 0; }
    .home_insta .slider .slick-prev:before {
      background-image: url("../images/home/arrow_prev.svg"); }

/**
* 8.0 - 下層ページ
* -----------------------------------------------------------------------------
*/
.page {
  padding-top: 100px; }
  .page .breadcrumb {
    font-size: 15px;
    margin-bottom: 40px; }
    .page .breadcrumb li {
      display: inline-block; }
      .page .breadcrumb li:not(:last-child):after {
        content: "";
        display: inline-block;
        vertical-align: middle;
        width: 12px;
        height: 14px;
        background-size: contain;
        background-repeat: no-repeat;
        background-image: url("../images/common/triangle3.svg");
        transform: translateY(-1px);
        margin: 0 5px; }
  .page main {
    flex: 1;
    padding-left: 3.6%; }
    @media screen and (max-width: 480px) {
      .page main {
        padding-left: 0; } }
    .page main .item {
      width: 30.7%;
      margin-right: 3.95%;
      margin-bottom: 3.95%; }
      .page main .item:nth-child(3n) {
        margin-right: 0; }
      @media screen and (max-width: 480px) {
        .page main .item {
          width: 47.2%;
          margin-right: 5.6% !important;
          margin-bottom: 5.6%; } }
      @media screen and (max-width: 480px) {
        .page main .item:nth-child(2n) {
          margin-right: 0 !important; } }

/* 書品アーカイブページ共通 */
.page-archive h2 {
  background-color: #231815;
  color: #fff;
  font-weight: bold;
  padding: 32px 32px;
  margin-bottom: 35px;
  position: relative;
  letter-spacing: .2em; }
  @media screen and (max-width: 480px) {
    .page-archive h2 {
      line-height: 1.5; } }
  .page-archive h2:before {
    content: "";
    height: 48px;
    width: 200px;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%); }

/**
* 8.1 - 予約受付中
* -----------------------------------------------------------------------------
*/
.page-soon main h2 {
  background-color: #007dd0; }
.page-soon main .item .accept {
  background-color: #007dd0;
  color: #fff;
  text-align: center;
  padding: 10px; }

/**
* 8.2 - 最新の入荷情報
* -----------------------------------------------------------------------------
*/
.page-new main h2 {
  background-color: #00a199; }

/**
* 8.3 - メーカー別ページ
* -----------------------------------------------------------------------------
*/
/**
* 8.4 - カテゴリー別ページ
* -----------------------------------------------------------------------------
*/
.page-cat main h2 span,
.page-maker main h2 span {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 30px;
  font-size: 16px;
  font-weight: normal; }

/**
* 8.5 - 商品個別ページ
* -----------------------------------------------------------------------------
*/
.page-single h2 {
  background-color: #eeeeef;
  margin-bottom: 25px; }
  .page-single h2 .label {
    background-color: #231815;
    color: #fff;
    flex-basis: 105px;
    text-align: center; }
  .page-single h2 .name {
    flex: 1; }
  .page-single h2 .flex > div {
    padding: 13px 10px;
    font-size: 19px;
    font-weight: bold; }
.page-single .detail .detail_l {
  flex-basis: 59.7%; }
  .page-single .detail .detail_l .thum_l {
    padding-top: 75%;
    background-size: cover;
    background-position: center;
    margin-bottom: 20px; }
  .page-single .detail .detail_l .thums {
    letter-spacing: -.4em; }
    .page-single .detail .detail_l .thums > div {
      cursor: pointer;
      letter-spacing: normal;
      vertical-align: top;
      width: 32%;
      display: inline-block;
      padding-top: 24%;
      margin-bottom: 2%;
      background-size: cover;
      background-position: center; }
      .page-single .detail .detail_l .thums > div:not(:nth-child(3n)) {
        margin-right: 2%; }
      .page-single .detail .detail_l .thums > div:hover {
        opacity: .8; }
.page-single .detail .detail_r {
  flex-basis: 40.3%;
  padding-left: 24px; }
  .page-single .detail .detail_r .col {
    margin-bottom: 12px; }
    @media screen and (max-width: 480px) {
      .page-single .detail .detail_r .col {
        display: flex; } }
    .page-single .detail .detail_r .col h3 {
      background-color: #231815;
      color: #fff;
      padding: 10px;
      font-size: 16px;
      line-height: 1; }
      @media screen and (max-width: 480px) {
        .page-single .detail .detail_r .col h3 {
          flex-basis: 100px;
          text-align: center; } }
    .page-single .detail .detail_r .col .text {
      background-color: #eeeeef;
      font-weight: bold;
      padding: 10px;
      line-height: 1; }
      @media screen and (max-width: 480px) {
        .page-single .detail .detail_r .col .text {
          flex: 1; } }
    @media screen and (max-width: 480px) {
      .page-single .detail .detail_r .col h3, .page-single .detail .detail_r .col .text {
        font-size: 15px;
        padding: 15px 10px; } }
  .page-single .detail .detail_r .price {
    font-size: 25px; }
    .page-single .detail .detail_r .price span {
      font-size: 17px;
      font-weight: normal; }
    @media screen and (max-width: 480px) {
      .page-single .detail .detail_r .price .text {
        font-size: 25px; } }
  .page-single .detail .detail_r .more {
    margin-top: 40px; }
  @media screen and (max-width: 480px) {
    .page-single .detail .detail_r {
      padding-left: 0; } }
.page-single .detail .detail_top {
  margin-bottom: 50px; }
  @media screen and (max-width: 480px) {
    .page-single .detail .detail_top {
      display: block; } }
.page-single .detail .description {
  line-height: 1.9; }
  .page-single .detail .description strong {
    font-size: 21px;
    font-weight: bold;
    margin: 30px 0; }
.page-single .detail .bnr_contact {
  margin-top: 40px;
  margin-bottom: 50px;
  color: #fff;
  position: relative; }
  .page-single .detail .bnr_contact:before {
    content: "";
    width: 215px;
    height: 116px;
    background-image: url("../images/single/img_mail.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: bottom center;
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 1; }
    @media screen and (max-width: 480px) {
      .page-single .detail .bnr_contact:before {
        width: 33%;
        left: -10px; } }
  .page-single .detail .bnr_contact a {
    background-color: #c30d23;
    display: block;
    width: 100%;
    height: 100%;
    font-size: 18px;
    font-weight: bold;
    padding: 30px 10px 30px 220px;
    transition: opacity .2s;
    position: relative; }
    .page-single .detail .bnr_contact a:after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 10px;
      height: 12px;
      background-image: url("../images/common/triangle1.svg");
      background-repeat: no-repeat;
      background-size: contain;
      right: 20px; }
    .page-single .detail .bnr_contact a:hover {
      opacity: .8; }
    @media screen and (max-width: 480px) {
      .page-single .detail .bnr_contact a {
        padding-top: 15px;
        padding-bottom: 15px;
        padding-left: 30%;
        font-size: 3.75vw; } }
.page-single .same_cat h2 {
  font-weight: bold;
  font-size: 21px;
  text-align: center;
  padding: 15px 10px; }

/**
* 8.6 - 店舗のご案内
* -----------------------------------------------------------------------------
*/
.page-shop {
  padding-top: 0; }
  .page-shop main {
    padding-left: 0; }
  .page-shop .mainvisual {
    background-image: url("../images/shop/mainvisual.jpg");
    padding-top: 180px; }
    @media screen and (max-width: 480px) {
      .page-shop .mainvisual {
        background-image: url("../images/shop/mainvisual_sp.jpg");
        padding-top: 140px;
        line-height: 1.2;
        padding-bottom: 60px; } }
    .page-shop .mainvisual .sm {
      line-height: 1.7; }
    .page-shop .mainvisual h2 {
      text-align: center;
      margin-top: 40px; }
      .page-shop .mainvisual h2 span {
        font-size: 30px;
        display: inline-block;
        color: #c30d23;
        background-color: #fff;
        padding: 23px 67px 13px 67px;
        text-shadow: none;
        font-weight: bold; }
  .page-shop .breadcrumb {
    margin-top: 20px; }
  .page-shop .catch {
    font-size: 19px;
    margin-top: 95px;
    margin-bottom: 50px;
    font-weight: bold; }
    @media screen and (max-width: 480px) {
      .page-shop .catch {
        margin-top: 50px;
        margin-bottom: 35px; } }
  .page-shop .sec_photos {
    margin-bottom: 100px; }
    @media screen and (max-width: 480px) {
      .page-shop .sec_photos {
        margin-bottom: 60px; } }
    .page-shop .sec_photos .flex {
      flex-wrap: wrap; }
      @media screen and (max-width: 480px) {
        .page-shop .sec_photos .flex {
          display: block; } }
      .page-shop .sec_photos .flex figure {
        flex-basis: 48.8%;
        margin: 0 0 30px 0; }
        .page-shop .sec_photos .flex figure img {
          width: 100%; }
      .page-shop .sec_photos .flex figcaption {
        margin-top: 10px;
        font-size: 15px; }
  .page-shop .sec_netorder {
    position: relative; }
    .page-shop .sec_netorder h2 {
      background-image: url("../images/shop/bg_netorder.jpg");
      background-size: cover;
      background-position: center;
      text-align: center;
      color: #fff;
      font-size: 25px;
      font-weight: bold;
      padding-top: 120px;
      padding-bottom: 120px;
      margin-bottom: 50px; }
      @media screen and (max-width: 480px) {
        .page-shop .sec_netorder h2 {
          padding-top: 85px;
          padding-bottom: 75px;
          margin-bottom: 40px; } }
    .page-shop .sec_netorder .inner {
      max-width: 880px; }
      .page-shop .sec_netorder .inner > p {
        text-align: center;
        line-height: 1.7; }
      .page-shop .sec_netorder .inner > section {
        padding-bottom: 30px; }
        @media screen and (max-width: 480px) {
          .page-shop .sec_netorder .inner > section {
            padding-bottom: 20px; } }
        .page-shop .sec_netorder .inner > section h3 {
          background-color: #f5e3d9;
          text-align: center;
          font-size: 20px;
          font-weight: bold;
          padding: 20px 10px;
          margin-bottom: 30px; }
          @media screen and (max-width: 480px) {
            .page-shop .sec_netorder .inner > section h3 {
              margin-bottom: 20px; } }
        .page-shop .sec_netorder .inner > section p {
          text-align: center;
          line-height: 1.7; }
    .page-shop .sec_netorder .flow {
      margin-top: 70px; }
      @media screen and (max-width: 480px) {
        .page-shop .sec_netorder .flow {
          margin-top: 40px; } }
      .page-shop .sec_netorder .flow .flow_wrap {
        margin-top: 40px; }
      .page-shop .sec_netorder .flow .flow_box {
        position: relative;
        padding-bottom: 55px; }
        .page-shop .sec_netorder .flow .flow_box .num {
          flex-basis: 60px;
          padding-left: 20px; }
          @media screen and (max-width: 480px) {
            .page-shop .sec_netorder .flow .flow_box .num {
              padding-left: 0; } }
          .page-shop .sec_netorder .flow .flow_box .num span {
            display: block;
            width: 60px;
            height: 60px;
            border-radius: 30px;
            background-color: #c30d23;
            color: #fff;
            line-height: 60px;
            text-align: center;
            font-weight: bold; }
        .page-shop .sec_netorder .flow .flow_box .text {
          flex: 1;
          position: relative;
          padding-left: 20px; }
          .page-shop .sec_netorder .flow .flow_box .text span {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            display: inline-block;
            font-weight: bold;
            font-size: 17px; }
            .page-shop .sec_netorder .flow .flow_box .text span a {
              color: #c30d23;
              text-decoration: underline; }
        .page-shop .sec_netorder .flow .flow_box:not(:last-child):after {
          content: "";
          width: 76px;
          height: 18px;
          background-image: url("../images/shop/triangle1.svg");
          background-repeat: no-repeat;
          background-size: contain;
          background-position: center;
          position: absolute;
          margin-left: auto;
          margin-right: auto;
          left: 0;
          right: 0;
          bottom: 20px; }
        @media screen and (max-width: 480px) {
          .page-shop .sec_netorder .flow .flow_box:last-child {
            padding-bottom: 20px; } }

/**
* 8.7 - お知らせ
* -----------------------------------------------------------------------------
*/
.page-information .nav_sidebar {
  margin-top: 36px; }
  .page-information .nav_sidebar .information {
    margin-bottom: 20px; }
.page-information main h2 {
  background-color: #81a100;
  text-align: center; }
  .page-information main h2 .en {
    position: absolute;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    top: 50%;
    transform: translateY(-50%); }
    .page-information main h2 .en img {
      max-height: 36px; }

/**
* 8.7.1 - お知らせ（一覧）
* -----------------------------------------------------------------------------
*/
.page-information .news_posts {
  margin-bottom: 60px; }
  @media screen and (max-width: 480px) {
    .page-information .news_posts {
      letter-spacing: -.4em; } }
  .page-information .news_posts > div {
    padding-bottom: 10px;
    margin-bottom: 15px; }
    .page-information .news_posts > div:not(:last-child) {
      border-bottom: 1px solid #b4b4b5; }
    .page-information .news_posts > div .date {
      color: #81a100;
      font-size: 15px;
      margin-bottom: 10px; }
    .page-information .news_posts > div .title {
      font-size: 15px; }
    @media screen and (max-width: 480px) {
      .page-information .news_posts > div {
        display: inline-block;
        letter-spacing: normal;
        width: 47.5%;
        border-bottom: 1px solid #b4b4b5; }
        .page-information .news_posts > div:nth-child(2n) {
          margin-left: 5%; } }
.page-information main .post {
  display: inline-block;
  vertical-align: top;
  position: relative;
  background-color: #f7f7f7;
  font-size: 15px;
  width: 30.7%;
  margin-right: 3.95%;
  margin-bottom: 3.95%; }
  @media screen and (max-width: 480px) {
    .page-information main .post {
      width: 100%;
      margin-bottom: 5.6%;
      margin-right: 0; } }
  @media screen and (max-width: 480px) {
    .page-information main .post:nth-child(2n) {
      margin-right: 0 !important; } }
  .page-information main .post:nth-child(3n) {
    margin-right: 0 !important; }
  .page-information main .post > a {
    width: 100%;
    height: 100%; }
    @media screen and (max-width: 480px) {
      .page-information main .post > a {
        display: block; } }
    .page-information main .post > a:hover .thum {
      opacity: 0.8; }
  @media screen and (max-width: 480px) {
    .page-information main .post .post_flex {
      display: flex; } }
  .page-information main .post .post_l {
    flex-basis: 50%; }
  .page-information main .post .post_r {
    flex-basis: 50%; }
  .page-information main .post .thum {
    padding-top: 68.7%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat; }
  .page-information main .post .date {
    color: #81a100;
    padding: 10px; }
  .page-information main .post .title {
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 10px; }
.page-information main .item_wrap {
  margin-bottom: 40px; }

/**
* 8.7.1 - お知らせ（個別）
* -----------------------------------------------------------------------------
*/
.single-post article {
  line-height: 2;
  /* 見出し */
  /* 画像 */
  /* 横並び画像 */ }
  .single-post article .date {
    color: #81a100;
    font-size: 17px;
    margin-bottom: 15px; }
  .single-post article .title {
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 30px;
    background: none;
    padding: 0; }
  .single-post article img {
    max-width: 100%;
    height: auto; }
  .single-post article .contents > div {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important; }
  .single-post article h1, .single-post article h2, .single-post article h3, .single-post article h4 {
    font-size: 20px;
    font-weight: bold;
    padding: 15px 20px;
    margin-top: 30px;
    margin-bottom: 30px; }
  .single-post article h1 {
    background-color: #8dc21f;
    color: #fff; }
  .single-post article h2 {
    background-color: #eeee90;
    color: #48ba00; }
  .single-post article h3 {
    background-color: #eeeeef; }
  .single-post article h4 {
    padding-left: 0;
    padding-right: 0; }
    .single-post article h4:after {
      content: "";
      width: 100%;
      height: 2px;
      background-image: url("../images/info/border_h4.png");
      background-size: contain;
      background-repeat: repeat-x;
      display: block;
      margin-top: 10px; }
  .single-post article .image_m {
    max-width: 70%;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (max-width: 480px) {
      .single-post article .image_m {
        max-width: 100%; } }
  .single-post article .image_s_wrap > div:first-child {
    margin-right: 6%; }
  .single-post article .image_s {
    max-width: 47%;
    margin-left: auto;
    margin-right: auto; }
  .single-post article .caption {
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 30px; }
  .single-post article .pdf {
    max-width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    margin-bottom: 30px; }
    .single-post article .pdf p a {
      color: #3e9300;
      text-decoration: underline;
      font-weight: bold; }
      .single-post article .pdf p a:before {
        content: "";
        width: 34px;
        height: 38px;
        background-image: url("../images/info/icon_pdf.svg");
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        display: inline-block;
        vertical-align: middle;
        margin-right: 5px; }
  .single-post article .yt {
    position: relative;
    width: 100%;
    padding-top: 56.25%; }
    .single-post article .yt iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100% !important;
      height: 100% !important; }
  @media screen and (max-width: 480px) {
    .single-post article .scroll {
      overflow: auto;
      white-space: nowrap;
      border: solid 1px #ddd; }
      .single-post article .scroll table {
        margin: 0;
        border: none; } }
  .single-post article .flex_table th, .single-post article .flex_table td {
    border: 1px solid #cdc7c5;
    font-size: 15px;
    padding: 15px;
    min-width: 30%; }
  .single-post article .flex_table th {
    background-color: #f7f6f3; }
  .single-post article .wp-embedded-content {
    width: 100%;
    border: 1px solid #3e9300;
    margin-top: 30px;
    margin-bottom: 30px; }
  .single-post article .v_image {
    margin-top: 40px;
    margin-bottom: 30px;
    display: flex;
    justify-content: space-between; }
    .single-post article .v_image > div {
      flex-basis: 47%; }
.single-post .post_link {
  margin-top: 40px;
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .single-post .post_link {
      display: block; } }
  .single-post .post_link > div {
    flex-basis: auto; }
    .single-post .post_link > div a {
      background-color: #3e9300;
      padding: 10px;
      color: #fff;
      display: block; }
      @media screen and (max-width: 480px) {
        .single-post .post_link > div a {
          display: inline-block; } }
      .single-post .post_link > div a:before, .single-post .post_link > div a:after {
        content: "";
        width: 10px;
        height: 12px;
        background-size: contain;
        display: inline-block; }
      .single-post .post_link > div a:hover {
        opacity: .8; }
  .single-post .post_link .prev a {
    padding-left: 20px; }
    .single-post .post_link .prev a:before {
      background-image: url("../images/info/arrow_prev.svg");
      margin-right: 10px; }
  .single-post .post_link .next a {
    padding-right: 20px; }
    .single-post .post_link .next a:after {
      background-image: url("../images/info/arrow_next.svg");
      margin-left: 10px; }
  @media screen and (max-width: 480px) {
    .single-post .post_link .next {
      text-align: right; } }
.single-post .other_posts {
  margin-top: 105px; }
  @media screen and (max-width: 480px) {
    .single-post .other_posts {
      margin-top: 40px; } }
  .single-post .other_posts h3 {
    background-color: #eeeeef;
    text-align: center;
    font-size: 21px;
    font-weight: bold;
    margin-bottom: 40px;
    padding: 15px 10px; }

/**
* 8.8 - ご注文・お問い合わせ
* -----------------------------------------------------------------------------
*/
.page-contact h2 {
  background-color: #c30d23;
  color: #fff;
  text-align: center;
  font-size: 26px;
  font-weight: bold;
  padding: 30px 10px;
  margin-bottom: 50px; }
  @media screen and (max-width: 480px) {
    .page-contact h2 {
      margin-bottom: 30px; } }
.page-contact .contact_inner {
  max-width: 878px;
  margin-left: auto;
  margin-right: auto; }
  .page-contact .contact_inner .tel {
    border: 1px solid #c30d23;
    border-radius: 10px;
    padding: 20px 10px 30px 10px;
    text-align: center;
    max-width: 433px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    margin-bottom: 30px; }
    .page-contact .contact_inner .tel .num {
      font-size: 25px;
      font-weight: bold;
      color: #c30d23; }
  .page-contact .contact_inner .note {
    color: #c30d23;
    text-align: center; }
    @media screen and (max-width: 480px) {
      .page-contact .contact_inner .note {
        margin-bottom: 50px; } }
.page-contact form table th, .page-contact form table td {
  border-bottom: 9px solid #fff; }
  @media screen and (max-width: 480px) {
    .page-contact form table th, .page-contact form table td {
      display: block; } }
.page-contact form table th {
  padding-right: 20px;
  padding-left: 20px;
  background-color: #f5e3d9;
  color: #c30d23;
  border-right: 9px solid #fff;
  width: 1px;
  white-space: nowrap;
  position: relative; }
  .page-contact form table th.req:before {
    content: "*";
    position: absolute;
    top: 0;
    left: -20px;
    color: #c30d23; }
    @media screen and (max-width: 480px) {
      .page-contact form table th.req:before {
        top: -20px;
        left: 0; } }
  @media screen and (max-width: 480px) {
    .page-contact form table th {
      width: 100%;
      padding-top: 13px;
      padding-bottom: 13px;
      border-right: none; } }
.page-contact form table td {
  background-color: #f7f7f7; }
  .page-contact form table td input[type="text"],
  .page-contact form table td input[type="email"],
  .page-contact form table td textarea {
    background: none;
    width: 100%;
    border: none;
    padding: 15px;
    font-size: 18px; }
  .page-contact form table td textarea {
    vertical-align: bottom; }
  @media screen and (max-width: 480px) {
    .page-contact form table td {
      margin-bottom: 40px; } }
.page-contact form table .td_radio {
  padding: 15px 10px; }
.page-contact .privacypolicy {
  background-color: #eeeeef;
  border: 1px solid #dbdcdc;
  margin-top: 60px;
  padding: 30px;
  font-size: 15px;
  height: 270px;
  overflow: scroll;
  line-height: 1.7; }
  @media screen and (max-width: 480px) {
    .page-contact .privacypolicy {
      margin-top: 10px; } }
  .page-contact .privacypolicy p {
    margin-top: 0; }
  .page-contact .privacypolicy dt {
    font-size: 17px;
    font-weight: bold;
    margin-bottom: 10px; }
  .page-contact .privacypolicy dd {
    margin-left: 0; }
    .page-contact .privacypolicy dd:not(:last-of-type) {
      margin-bottom: 40px; }
    .page-contact .privacypolicy dd ul {
      margin-top: 40px; }
.page-contact .agreement {
  margin-top: 40px;
  text-align: center;
  font-size: 19px; }
.page-contact .buttons {
  margin-top: 80px;
  margin-bottom: 80px; }
  @media screen and (max-width: 480px) {
    .page-contact .buttons {
      margin-top: 40px;
      margin-bottom: 40px; } }
  .page-contact .buttons .flex {
    justify-content: center; }
    @media screen and (max-width: 480px) {
      .page-contact .buttons .flex {
        justify-content: space-between; } }
    .page-contact .buttons .flex button {
      margin: 0 20px;
      max-width: 234px;
      width: 100%;
      padding: 17px 10px;
      font-size: 18px;
      cursor: pointer;
      position: relative; }
      .page-contact .buttons .flex button:after {
        content: "";
        width: 10px;
        height: 12px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 15px; }
      @media screen and (max-width: 480px) {
        .page-contact .buttons .flex button {
          flex-basis: 47%;
          margin-left: 0;
          margin-right: 0; } }
    .page-contact .buttons .flex button[type="reset"] {
      border: 1px solid #717071;
      background-color: #fff; }
      .page-contact .buttons .flex button[type="reset"]:after {
        background-image: url("../images/contact/arrow1.svg"); }
    .page-contact .buttons .flex button[type="submit"] {
      border: 1px solid #c30d23;
      background-color: #c30d23;
      color: #fff; }
      .page-contact .buttons .flex button[type="submit"]:after {
        background-image: url("../images/contact/arrow2.svg"); }

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