@charset 'utf-8';

@media screen and (max-width: 1170px) {
  #header h2.bold {
    font-size: 4.5vw;
  }

  .item-text {
    font-size: 1.75vw;
  }

  .contens_box_text {
    font-size: 1.5vw;
  }

  .contens_box_heading {
    font-size: 2.5vw;
  }

  .holdings_box_text {
    font-size: 1.7vw;
  }

  #guide .flex-col3 .contens_box p {
    font-size: 2.222vw;
  }

  #catalog .catalog_text {
    font-size: 3.4vw;
  }

  #area div.flex-col4 {
    padding-left: 5%;
  }

  #guide_article .shizai_table table tbody tr td {
    font-size: 2.5641vw;
  }

  #guide_article .shizai_rei {
    margin-bottom: 17.54%;
  }

  #guide_article .shizai_rei h4 {
    font-size: 2.56vw;
    padding: 0 4.387%;
    width: 35%;
  }

  #guide_article .shizai_rei p {
    font-size: 2.05vw;
  }

  #guide_article .shizai_table {
    margin-bottom: 11.4%;
  }
}

@media screen and (min-width: 767px) and (max-width: 1170px) {
  /* ====================
  tenpo
  ==================== */

  #tenpoNews .bnr .bnr_box .bnr_box_heading {
    font-size: 3.0769vw;
    width: calc(300 / 500 * 100%);
  }

  #tenpoNews .bnr .bnr_box .bnr_box_text {
    font-size: 2.2222vw;
    width: calc(250 / 500 * 100%);
  }
}

@media screen and (max-width: 1169px) {
  #list div ul li:nth-child(5),
  #list div ul li:nth-child(10) {
    border-right: 1px solid #5a5a5a;
  }

  #list div ul li:nth-child(6) {
    border-bottom: 0;
    border-right: 0;
  }
}

@media screen and (max-width: 979px) {
  #list div ul li:nth-child(4),
  #list div ul li:nth-child(8) {
    border-right: 1px solid #5a5a5a;
  }

  #list div ul li:nth-child(5) {
    border-right: 0;
  }

  #list div ul li:nth-child(11) {
    border-left: 0;
    border-top: 0;
  }
}

@media screen and (max-width: 789px) {
  #list div ul li:nth-child(3),
  #list div ul li:nth-child(6),
  #list div ul li:nth-child(9) {
    border-right: 1px solid #5a5a5a;
  }

  #list div ul li:nth-child(4),
  #list div ul li:nth-child(8) {
    border-right: 0;
  }

  #list div ul li:nth-child(7) {
    border-bottom: 0;
  }
}

@media screen and (max-width: 782px) {
  /**
   * アドミンバーの分、46px下げる。
   */
  .logged-in .header_top {
    top: 46px;
  }

  .logged-in .zdo_drawer_menu .zdo_drawer_button {
    top: 66px;
  }
}

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

  .br::before {
    content: '\A';
    white-space: pre;
  }

  .br_sp::before {
    display: none;
  }

  #guide .contens_box_heading.petCente {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

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

  .br_sp::before {
    content: '\A';
    white-space: pre;
  }

  .topic-path ul,
  #topic-path ul {
    font-size: 1.6rem;
  }

  .topic-path ul li::after,
  #topic-path ul li::after {
    font-size: 1.6rem;
  }

  /* info btn
  -------------------- */

  .information_btn {
    padding-bottom: 7.0721%;
  }

  /* iframeのレスポンシブ対応
    -------------------- */

  .movie {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding-top: 56.25%;
    position: relative;
    width: 100%;
  }

  .movie iframe {
    border: none;
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }


  .flex-col3 .flex-child,
  .flex-col4 .flex-child {
    width: calc((100% - 25px) / 2);
  }

  .header_top {
    background-color: rgba(255, 255, 255, .9);
    box-shadow: 0 2px 4px rgba(0, 0, 0, .3);
    height: 100%;
    height: 100px;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
  }

  .item-text {
    align-content: baseline;
    align-items: center;
    -webkit-box-align: center;
    -webkit-box-flex: 1;
    -webkit-box-pack: center;
    display: -webkit-box;
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    font-size: 3.3vw;
    justify-content: initial;
    padding: .77em;
  }

  .item-meta {
    align-items: initial;
    flex-direction: column;
    margin-bottom: 6.09%;
  }

  .item-text time {
    font-size: 2.74vw;
  }

  .item-image {
    width: 50%;
  }

  #news .flex-col3 .flex-child,
  #tenpoNews .flex-col3 .flex-child {
    width: 100%;
  }

  .item.flex-child {
    display: -webkit-box;
    display: flex;
  }

  .trimming {
    padding-top: 36%;
  }

  .flex-child {
    margin-bottom: 20px;
  }

  .heading {
    font-size: 2.6rem;
  }

  .next {
    margin-bottom: 16.28%;
  }

  .next p a {
    font-size: 1.8rem;
  }

  .next a {
    font-size: 1.8rem;
  }

  #header {
    margin-bottom: 6.78%;
  }

  #header h1 {
    left: 30px;
    top: 20px;
  }

  #header h1 img {
    width: 80%;
  }

  #footer {
    padding: 40px 0 30px;
  }

  #footer small {
    font-size: 1.2rem;
    padding: 0 15px;
  }

  .nav_wrapper,
  .kakutenpo_nav,
  #footer .flex div:not(:last-of-type),
  #footer .flex div:last-of-type dl dt {
    display: none;
  }

  #footer .flex div:last-of-type {
    width: 100%;
  }

  #footer .flex div:last-of-type dl {
    -webkit-box-pack: center;
    display: -webkit-box;
    display: flex;
    flex-wrap: nowrap;
    font-size: 1.2rem;
    justify-content: center;
    padding-bottom: 15px;
  }

  #footer .flex div:last-of-type dl dd:nth-of-type(1) a {
    padding-right: 15px;
  }

  #footer .flex div:last-of-type dl dd:nth-of-type(1) a {
    border-right: 1px solid #fff;
  }

  #footer .flex div:last-of-type dl dd:nth-of-type(2) a {
    padding-left: 15px;
  }

  /* ====================
  top
  ==================== */

  .heading_h2 {
    font-size: 2.6rem;
    margin-bottom: 1.25em;
    padding-bottom: .5em;
  }

  .holdings_box_text {
    font-size: 2.5vw;
  }

  #contens {
    background: #f0f0f0;
    margin-bottom: 13.57%;
    margin-left: -15px;
    margin-right: -15px;
    padding: 9% 15% 5% 15%;
  }

  #news {
    margin-bottom: 6.78%;
  }

  #holdings {
    margin-bottom: 10.018%;
  }

  #news .flex-col3 div:last-child {
    margin-bottom: 0;
  }

  #guide .flex-col3 .flex-child {
    width: calc((100% - 25px) / 2);
  }

  #guide .contens_box_heading {
    font-size: 3.8vw;
  }

  #guide .flex-col3 .contens_box p {
    font-size: 3.389vw;
  }

  /* ====================
  news
  ==================== */

  .pagenav {
    font-size: 2.4rem;
    margin-bottom: 13.568%;
  }

  /* ====================
  shop
  ==================== */

  #shop .heading3 {
    font-size: 2.6rem;
  }

  #shop .flex-col2 .flex-child dl dd ul li {
    font-size: 3.1555vw;
    height: 100%;
    line-height: 2;
  }

  #shop .flex-col2 .flex-child {
    width: 100%;
  }

  #shop .flex-col2 .flex-child dl {
    max-width: 100%;
  }

  /* ====================
  article
  ==================== */

  #article {
    margin-bottom: 10.018%;
  }

  #article .flex-col3 .flex-child {
    width: 100%;
  }

  #article time {
    font-size: 1.6rem;
  }

  #article .cat {
    font-size: 1.4rem;
  }

  #article h1 {
    font-size: 3.2rem;
  }

  #article h2 {
    font-size: 2.8rem;
  }

  #article h3 {
    font-size: 2.4rem;
  }

  #article p {
    font-size: 1.8rem;
  }

  #article .article_text {
    border-bottom: none;
  }

  #article .flex-col3 div.flex-child:last-child div div.article_text {
    border-bottom: 1px solid #333;
  }

  #catalog div {
    height: 800px;
    padding: 0 13.056%;
  }

  #catalog div .catalog_img {
    bottom: 0;
    left: 0;
    margin: auto;
    right: 0;
    top: inherit;
  }

  #catalog .catalog_text {
    font-size: 4rem;
  }

  #area .area_contact {
    padding: 0 13.056%;
  }

  #area div.flex-col4 {
    max-height: inherit;
  }

  #area div:nth-child(3) dl:nth-child(1),
  #area div:nth-child(3) dl:nth-child(2),
  #area div:nth-child(4) dl:nth-child(1),
  #area div:nth-child(4) dl:nth-child(2),
  #area div:nth-child(4) dl:nth-child(3) {
    margin-bottom: 14.522%;
  }

  #area .area_contact ul {
    align-items: center;
    -webkit-box-align: center;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    flex-flow: column;
  }

  #area .area_contact ul li:first-child,
  #area .area_contact ul li:last-child {
    max-width: 548px;
    width: 100%;
  }

  #area .area_contact ul li:nth-child(2) {
    max-width: 93px;
    padding: 1.875em 0;
    width: 100%;
  }

  #area {
    margin-top: 13.08%;
  }

  #area .area_contact ul li img.arrow {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }

  #area .area_contact h4 {
    font-size: 6.258vw;
    line-height: 1.5;
    margin-bottom: 5.294%;
    white-space: nowrap;
  }

  #area .area_contact p {
    font-size: 4.694vw;
    margin-top: 9%;
    padding-bottom: 7.942%;
  }

  /* ====================
  guide
  ==================== */

  #guide {
    margin-bottom: 27.137%;
  }

  #guide .contens_box_heading.petCente {
    -webkit-transform: translate(-50%, -105%);
    transform: translate(-50%, -105%);
  }

  /* ====================
  shizai
  ==================== */

  #guide_article .shizai_text h3 {
    font-size: 2.4rem;
  }

  #guide_article .shizai_text p {
    font-size: 1.8rem;
  }

  /* ====================
  tenpo
  ==================== */

  #tenpoHeader .tenpoHeader_nav,
  #hikitori,
  #barrier {
    display: none;
  }

  #tenpoHeader h2,
  #tenpoNews h3,
  #tenpoInfo h3 {
    font-size: 3.6rem;
  }

  #tenpoHeader h2 {
    margin-bottom: 6.784%;
  }

  #tenpoNews h3 {
    margin: 0 -15px 1.9444em -15px;
  }

  #tenpoHeader .keyvisual,
  #tenpoInfo .tenpoInfo_map {
    margin: 0 -15px 9.497% -15px;
  }

  #tenpoNews .bnr {
    align-items: center;
    -webkit-box-align: center;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    flex-direction: column;
    margin-bottom: 13.568%;
  }

  #tenpoNews .bnr .bnr_box {
    max-width: 550px;
    width: 100%;
  }

  #tenpoNews .next {
    margin: 5.427% 0 16.282% 0;
  }

  #tenpoNews .bnr div.bnr_box:first-child {
    margin-bottom: 4.748%;
  }

  #tenpoInfo h3 {
    background: none;
    border-bottom: 1px solid #5a5a5a;
    margin: 0 -15px 0 -15px;
  }

  #tenpoInfo .tenpoInfo_list,
  #barrier .barrier_list {
    margin-bottom: 6.784%;
  }

  #tenpoInfo .tenpoInfo_list dl,
  #barrier .barrier_list dl {
    font-size: 3.129vw;
  }

  /* --- アコーディオンボタン --- */

  .service__btn {
    font-size: 3.14vw;
    padding: 0 .3em;
  }

  /* LINE
-------------------- */

  .line {
    margin-bottom: 6.52%;
  }

  .line_text {
    font-size: 1.8rem;
  }

  /* ====================
  service
  ==================== */

  #service,
  #petCenter,
  #heisetu,
  #toriatukai {
    margin-bottom: 19.5%;
  }

  #service h3,
  #petCenter h3,
  #heisetu h3,
  #toriatukai h3 {
    font-size: 2.8rem;
    margin-left: -15px;
    margin-right: -15px;
  }

  #service p {
    font-size: 1.6rem;
    margin: 2.6% 0 10.4% 0;
    text-align: left;
  }

  #service .flex {
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    flex-direction: column;
    flex-wrap: wrap;
  }

  #service .flex div:first-of-type {
    margin-bottom: 2.5em;
  }

  #service .flex div dl {
    font-size: 1.6rem;
  }

  /* ====================
  petCenter
  ==================== */

  #petCenter p {
    font-size: 1.6rem;
    margin: 2.6% 0 10.4% 0;
    text-align: left;
  }

  #petCenter .pet-ichiran {
    font-size: 2rem;
    margin-bottom: 10.4%;
    padding: 20px;
    padding: 10px;
    width: 280px;
  }

  #petCenter .pet-content {
    margin-bottom: 13.0378%;
  }

  /* ====================
  heisetu
  ==================== */

  #heisetu .heisetu_list dl dt {
    width: 10%;
  }

  #heisetu .heisetu_list dl dd {
    width: 90%;
  }

  #heisetu .heisetu_list_first img {
    height: 25px;
  }

  #heisetu .heisetu_list_first {
    margin-left: 2%;
  }

  #heisetu .heisetu_list_second {
    width: 48%;
  }

  #heisetu .heisetu_list_third {
    width: 48% !important;
  }

  #heisetu .heisetu_list dl {
    font-size: 3.129vw;
  }

  #heisetu .heisetu_list dl ul {
    flex-wrap: nowrap;
  }

  #tenpoHeader {
    padding-top: 40px;
  }

  /* ====================
  toriatukai
  ==================== */

  #toriatukai .shizai_table table thead tr th:nth-of-type(2),
  #toriatukai .shizai_table table thead tr th:nth-of-type(3),
  #toriatukai .shizai_table table thead tr th:nth-of-type(4),
  #toriatukai .shizai_table table thead tr th:nth-of-type(5) {
    white-space: nowrap;
  }

  #toriatukai .shizai_table table thead tr th,
  #toriatukai .shizai_table table thead tr td,
  #toriatukai .shizai_table table tbody tr th,
  #toriatukai .shizai_table table tbody tr td {
    font-size: 2.4vw;
    vertical-align: middle;
  }

  /* guide_article共通
==================== */

  #guide_article .heading {
    margin-bottom: 2em;
    padding-bottom: 1em;
  }

  #guide_article .keyvisual {
    margin-bottom: 9.5%;
  }

  #guide_article .shizai_text h3 {
    margin-bottom: 2.14em;
  }

  #guide_article .shizai_text {
    margin-bottom: 8.48%;
  }

  /***  stuff  ***/
  #stuff table th:nth-child(1),
  #stuff table td:nth-child(1) {
    width: 5em;
  }

  #stuff table th:nth-child(2),
  #stuff table td:nth-child(2) {
    width: 5em;
  }

  #stuff table th:nth-child(3),
  #stuff table td:nth-child(3) {
    width: 5em;
  }

  #stuff table th:nth-child(4),
  #stuff table td:nth-child(4) {
    max-width: 10em;
  }

  /* ====================
  カテゴリー
  ==================== */

  .cat {
    font-size: 2.74vw;
    height: initial;
    margin-bottom: .2381em;
    width: auto;
  }

  /* ====================
  カテゴリーナビ
  ==================== */
  .cat-nav_item {
    width: 31.5%;
  }

  .cat-nav_item:not(:last-of-type),
  .cat-nav li.cat-nav_item:last-of-type {
    margin: initial;
  }

  .cat-nav .cat-nav_item:nth-of-type(1),
  .cat-nav .cat-nav_item:nth-of-type(2),
  .cat-nav .cat-nav_item:nth-of-type(4) {
    margin: 0 2.6042% 2.6024% 0;
  }

  .cat-nav .cat-nav_item:nth-of-type(3),
  .cat-nav .cat-nav_item:nth-of-type(5) {
    margin-bottom: 2.6042% !important;
  }

  /* ====================
  ページトップ
  ==================== */

  #page-top {
    right: initial;
    top: -30px;
  }

  #page-top img {
    width: 60px;
  }
}

@media screen and (max-width: 600px) {
  #list div ul li {
    font-size: 5vw;
    height: 2.4em;
    line-height: 2.4em;
    width: calc(100% / 3);
  }

  #catalog .catalog_text {
    font-size: 3.8rem;
  }
}

@media screen and (max-width: 575px) {
  .badge::before {
    background-size: 80%;
  }

  /* flyer shop共通
  -------------------- */

  .shopLink {
    font-size: 2rem;
  }

  .trimming {
    padding-top: 36%;
  }

  #header {
    margin-top: 70px;
  }

  #header h1 img {
    width: 45%;
  }

  .header_top {
    height: 70px;
  }

  .item {
    display: -webkit-box;
    display: flex;
    flex-wrap: nowrap;
  }

  .item-image {
    width: 50%;
  }

  .topic-path ul,
  #topic-path ul {
    font-size: 1.2rem;
  }

  #news .flex-col3 .flex-child,
  #tenpoNews .flex-col3 .flex-child {
    width: 100%;
  }

  /* ====================
  article
  ==================== */

  #article h1 {
    font-size: 2.4rem;
  }

  #article h2 {
    font-size: 2rem;
  }

  #article h3 {
    font-size: 1.6rem;
  }

  #article p {
    font-size: 1.4rem;
  }

  #catalog .catalog_text {
    font-size: 3rem;
  }

  #area div dl {
    font-size: 2.3rem;
  }

  /* ====================
  tenpo
  ==================== */

  #tenpoHeader h2 {
    font-size: 2.4rem;
  }

  .page-id-4 #tenpoHeader h2 {
    font-size: 2.3rem;
  }

  #tenpoNews h3,
  #tenpoInfo h3 {
    font-size: 2.8rem;
  }

  /* ====================
  tenpo
  ==================== */

  #tenpoNews .bnr .bnr_box .bnr_box_heading {
    font-size: 6.2608vw;
    width: calc(300 / 500 * 100%);
  }

  #tenpoNews .bnr .bnr_box .bnr_box_text {
    font-size: 4.5217vw;
    width: calc(250 / 500 * 100%);
  }

  /* guide_article共通
==================== */

  #guide_article .heading {
    font-size: 2.4rem;
  }

  #guide .contens_box_heading.petCente {
    -webkit-transform: translate(-50%, -110%);
    transform: translate(-50%, -110%);
  }
}

@media screen and (max-width: 474px) {
  .information_btn {
    font-size: 1.4rem;
  }

  #catalog .catalog_text {
    font-size: 2.8rem;
  }

  #catalog div .catalog_btn {
    font-size: 6.316vw;
    padding: 6.28% 11.4%;
  }

  #catalog div .catalog_btn_icon {
    margin-left: 6%;
  }

  #guide .contens_box_heading.petCente {
    -webkit-transform: translate(-50%, -140%);
    transform: translate(-50%, -140%);
  }

  /* ====================
  カテゴリーナビ
  ==================== */
  .cat-nav_item {
    height: 30px;
    line-height: 30px;
  }

  .cat-nav_item--link {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 375px) {
  .badge::before {
    background-size: 60%;
  }

  .information_btn a {
    font-size: 1.2rem;
  }

  #guide .contens_box_heading.petCente {
    -webkit-transform: translate(-50%, -160%);
    transform: translate(-50%, -160%);
  }
}
