@charset "UTF-8";
/*=========================================================================
MODULE
=========================================================================*/
.d_none {
  display: none !important;
}

@media screen and (min-width: 769px) {
  .for_sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .for_pc {
    display: none !important;
  }
}
#page_catchBloc p, #page_catchBloc, #no_pagebox p, ul#foot_linkList li, #footer_conmapyName, dl#tableLayout dt p, dl#tableLayout dd p, .btn_more a, #globalNavi ul#naviList li a, .one_period, #pageTitle.width_caption p {
  font-size: 14px;
  line-height: 180%;
}
@media screen and (max-width: 1919px) {
  #page_catchBloc p, #page_catchBloc, #no_pagebox p, ul#foot_linkList li, #footer_conmapyName, dl#tableLayout dt p, dl#tableLayout dd p, .btn_more a, #globalNavi ul#naviList li a, .one_period, #pageTitle.width_caption p {
    font-size: clamp(13px, 0.729vw, 14px);
  }
}
@media screen and (max-width: 1200px) {
  #page_catchBloc p, #page_catchBloc, #no_pagebox p, ul#foot_linkList li, #footer_conmapyName, dl#tableLayout dt p, dl#tableLayout dd p, .btn_more a, #globalNavi ul#naviList li a, .one_period, #pageTitle.width_caption p {
    font-size: clamp(12px, 1.083vw, 13px);
  }
}
@media screen and (max-width: 768px) {
  #page_catchBloc p, #page_catchBloc, #no_pagebox p, ul#foot_linkList li, #footer_conmapyName, dl#tableLayout dt p, dl#tableLayout dd p, .btn_more a, #globalNavi ul#naviList li a, .one_period, #pageTitle.width_caption p {
    font-size: clamp(12px, 2.343vw, 13px);
  }
}
@media screen and (max-width: 480px) {
  #page_catchBloc p, #page_catchBloc, #no_pagebox p, ul#foot_linkList li, #footer_conmapyName, dl#tableLayout dt p, dl#tableLayout dd p, .btn_more a, #globalNavi ul#naviList li a, .one_period, #pageTitle.width_caption p {
    font-size: clamp(11px, 3.125vw, 12px);
  }
}

#Copy, dl#footer_infoBloc dt {
  font-size: 12px;
}
@media screen and (max-width: 1200px) {
  #Copy, dl#footer_infoBloc dt {
    font-size: 11px;
  }
}
@media screen and (max-width: 768px) {
  #Copy, dl#footer_infoBloc dt {
    font-size: clamp(11px, 1.692vw, 12px);
  }
}
@media screen and (max-width: 480px) {
  #Copy, dl#footer_infoBloc dt {
    font-size: clamp(10px, 2.5vw, 11px);
  }
}

.thumb_cat {
  font-size: 10px;
}
@media screen and (max-width: 768px) {
  .thumb_cat {
    font-size: clamp(9px, 1.302vw, 10px);
  }
}
@media screen and (max-width: 480px) {
  .thumb_cat {
    font-size: clamp(9px, 2.083vw, 10px);
  }
}

#notfoud, #Coming {
  font-size: 32px;
}
@media screen and (min-width: 1200px) and (max-width: 1919px) {
  #notfoud, #Coming {
    font-size: clamp(28px, 1.667vw, 32px);
  }
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
  #notfoud, #Coming {
    font-size: clamp(26px, 2.335vw, 28px);
  }
}
@media screen and (max-width: 768px) {
  #notfoud, #Coming {
    font-size: clamp(24px, 3.385vw, 26px);
  }
}
@media screen and (max-width: 480px) {
  #notfoud, #Coming {
    font-size: clamp(20px, 5vw, 24px);
  }
}

#pageCatch {
  font-size: 28px;
}
@media screen and (max-width: 1200px) {
  #pageCatch {
    font-size: 24px;
  }
}
@media screen and (max-width: 768px) {
  #pageCatch {
    font-size: clamp(22px, 3.125vw, 24px);
  }
}
@media screen and (max-width: 480px) {
  #pageCatch {
    font-size: clamp(20px, 4.583vw, 22px);
  }
}

.section_title, #pageTitle {
  font-size: 24px;
}
@media screen and (max-width: 1200px) {
  .section_title, #pageTitle {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .section_title, #pageTitle {
    font-size: clamp(18px, 2.604vw, 20px);
  }
}
@media screen and (max-width: 480px) {
  .section_title, #pageTitle {
    font-size: clamp(16px, 3.75vw, 18px);
  }
}

.period_headline {
  font-size: 20px;
}
@media screen and (min-width: 1200px) and (max-width: 1919px) {
  .period_headline {
    font-size: clamp(18px, 1.042vw, 20px);
  }
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
  .period_headline {
    font-size: clamp(16px, 1.334vw, 18px);
  }
}
@media screen and (max-width: 768px) {
  .period_headline {
    font-size: clamp(16px, 2.604vw, 18px);
  }
}
@media screen and (max-width: 480px) {
  .period_headline {
    font-size: clamp(15px, 3.125vw, 16px);
  }
}

#notfont_kana, .thumb_list_title {
  font-size: 18px;
}
@media screen and (min-width: 1200px) and (max-width: 1919px) {
  #notfont_kana, .thumb_list_title {
    font-size: clamp(16px, 0.937vw, 18px);
  }
}
@media screen and (min-width: 769px) and (max-width: 1199px) {
  #notfont_kana, .thumb_list_title {
    font-size: clamp(15px, 1.334vw, 16px);
  }
}
@media screen and (max-width: 768px) {
  #notfont_kana, .thumb_list_title {
    font-size: clamp(15px, 2.083vw, 16px);
  }
}
@media screen and (max-width: 480px) {
  #notfont_kana, .thumb_list_title {
    font-size: clamp(14px, 2.916vw, 15px);
  }
}

.pager .current, a.page-numbers {
  font-size: 14px;
}
@media screen and (max-width: 1919px) {
  .pager .current, a.page-numbers {
    font-size: clamp(13px, 0.833vw, 14px);
  }
}
@media screen and (max-width: 1200px) {
  .pager .current, a.page-numbers {
    font-size: clamp(12px, 1.166vw, 13px);
  }
}
@media screen and (max-width: 768px) {
  .pager .current, a.page-numbers {
    font-size: clamp(12px, 1.9531vw, 13px);
  }
}
@media screen and (max-width: 480px) {
  .pager .current, a.page-numbers {
    font-size: clamp(11px, 2.708vw, 12px);
  }
}

/*=========================================================================
BASIC
=========================================================================*/
body {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  body.open {
    overflow: hidden;
    z-index: -99;
  }
}

/* ----------------------------------------------------------------------- */
section {
  width: 100%;
  height: auto;
  display: block;
  padding-bottom: 60px;
}
@media screen and (max-width: 768px) {
  section {
    padding-bottom: 9%;
  }
}
section:last-of-type {
  padding-bottom: 0;
}

/* ----------------------------------------------------------------------- */
#Wrapper {
  min-height: 100vh;
}

/* ----------------------------------------------------------------------- */
#mainContents {
  padding: 60px 0 120px;
}
@media screen and (max-width: 768px) {
  #mainContents {
    padding: 8% 0 12%;
  }
}

.in_page {
  padding-top: 60px;
}
@media screen and (max-width: 768px) {
  .in_page {
    padding-top: clamp(40px, 8%, 50px);
  }
}

/* ----------------------------------------------------------------------- */
.section_basic {
  width: 90%;
  max-width: 1200px;
  height: auto;
  margin: 0 auto;
}

/* ----------------------------------------------------------------------- */
.section_title, #pageTitle {
  line-height: 160%;
  color: #121212;
  text-align: center;
  font-weight: 600;
  margin-bottom: 45px;
}
@media screen and (max-width: 768px) {
  .section_title, #pageTitle {
    margin-bottom: 6%;
  }
}

.section_title {
  border-bottom: 1px solid #e4e4e4;
  padding-bottom: 0.8rem;
}

#pageTitle.u_line {
  border-bottom: 1px solid #e4e4e4;
  padding-bottom: 0.8rem;
}
#pageTitle.width_caption p {
  margin-top: 0.8rem;
  border-top: 1px solid #e4e4e4;
  padding-top: 0.8rem;
  font-weight: 500;
}

/* ----------------------------------------------------------------------- */
.one_period {
  height: auto;
  width: 100%;
  margin: 0 auto 160px;
  line-height: 160%;
}
@media screen and (max-width: 768px) {
  .one_period {
    margin-bottom: 16%;
  }
}
.one_period:last-of-type {
  margin-bottom: 0;
}
.one_period p {
  line-height: 160%;
  margin-bottom: 1rem;
}
.one_period p:last-of-type {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------- */
.period_headline {
  line-height: 160%;
  color: #121212;
  font-weight: 600;
  border-bottom: 1px solid #e4e4e4;
  padding-bottom: 0.8rem;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .period_headline {
    margin-bottom: 4%;
  }
}

/* ---------------------------------------------------------------- */
#Coming {
  text-align: center;
  font-weight: 900;
  line-height: 140%;
  color: #121212;
  padding: 12vw 0;
}

/*=========================================================================
HEADER
=========================================================================*/
#Header {
  width: 100%;
  height: 70px;
  display: block;
  margin: auto;
  position: fixed;
  background: rgba(0, 0, 0, 0.58);
  left: 0;
  top: 0;
  z-index: 9;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}
@media screen and (max-width: 768px) {
  #Header {
    height: 50px;
  }
}

/* ----------------------------------------------------------------------- */
#headContents {
  width: 90%;
  height: 70px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}
@media screen and (max-width: 768px) {
  #headContents {
    width: 100%;
    height: 50px;
  }
}

/* ----------------------------------------------------------------------- */
#siteLogo {
  position: absolute;
  left: 0%;
  top: 50%;
  width: 25%;
  height: auto;
  max-width: 240px;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 999;
}
@media screen and (max-width: 768px) {
  #siteLogo {
    width: 30%;
    left: 3%;
  }
}
#siteLogo a, #siteLogo img {
  width: 100%;
  height: auto;
  display: block;
}
#siteLogo img {
  -o-object-fit: cover;
     object-fit: cover;
}
#siteLogo a:hover {
  -moz-opacity: 0.75;
  opacity: 0.75;
}
@media screen and (max-width: 768px) {
  #siteLogo.active {
    -webkit-filter: invert(100%);
            filter: invert(100%);
  }
}

/*=========================================================================
HEADER：GLOBAL NAVI
=========================================================================*/
#menu-trigger {
  display: none;
}
@media screen and (max-width: 768px) {
  #menu-trigger {
    display: block;
    position: absolute;
    z-index: 999;
    right: 0;
    top: 50%;
    width: 60px;
    height: 60px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition: 0.2s all;
    transition: 0.2s all;
    cursor: pointer;
  }
  #menu-trigger span {
    position: absolute;
    left: 50%;
    width: 50%;
    height: 2px;
    background: #fff;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transition: 0.2s all;
    transition: 0.2s all;
  }
  #menu-trigger span:first-of-type {
    top: 32%;
  }
  #menu-trigger span:nth-of-type(2) {
    top: 50%;
  }
  #menu-trigger span:last-of-type {
    top: 68%;
  }
  #menu-trigger.active span {
    background: #121212;
  }
  #menu-trigger.active span:first-of-type {
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  #menu-trigger.active span:nth-of-type(2) {
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
            transform: translate(-50%, -50%) rotate(90deg);
    opacity: 0;
  }
  #menu-trigger.active span:last-of-type {
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
            transform: translate(-50%, -50%) rotate(135deg);
  }
}

/* ----------------------------------------------------------------------- */
#globalNavi {
  position: absolute;
  top: 50%;
  right: 0%;
  width: 70%;
  height: auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  #globalNavi {
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    overflow-y: auto;
    overflow-x: hidden;
    background: #fff;
    z-index: -99;
    opacity: 0;
    -webkit-transition: 0.2s all;
    transition: 0.2s all;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
  }
  #globalNavi.open {
    opacity: 1;
    right: 0;
    z-index: 99;
  }
}
#globalNavi ul#naviList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  #globalNavi ul#naviList {
    display: block;
    position: absolute;
    left: 50%;
    top: 45%;
    text-align: center;
    z-index: 9;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
#globalNavi ul#naviList li {
  margin-right: 3%;
  height: auto;
}
@media screen and (max-width: 768px) {
  #globalNavi ul#naviList li {
    text-align: center;
    margin: 0 auto 3%;
  }
}
#globalNavi ul#naviList li:last-of-type {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  #globalNavi ul#naviList li:last-of-type {
    margin: 0 auto;
  }
}
#globalNavi ul#naviList li a {
  color: #fff;
  text-decoration: none;
  font-weight: 600;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #globalNavi ul#naviList li a {
    color: #050505;
  }
}
#globalNavi ul#naviList li a:after {
  content: "" !important;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 2px;
  background: #fff;
  opacity: 0;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}
@media screen and (max-width: 768px) {
  #globalNavi ul#naviList li a:after {
    background: #050505;
  }
}
#globalNavi ul#naviList li a:hover:after {
  width: 100%;
  opacity: 1;
}
#globalNavi ul#naviList li#store {
  width: 22%;
  height: auto;
  max-width: 140px;
}
@media screen and (max-width: 768px) {
  #globalNavi ul#naviList li#store {
    margin-top: 4%;
    -webkit-filter: invert(100%);
            filter: invert(100%);
  }
}
#globalNavi ul#naviList li#store a, #globalNavi ul#naviList li#store img {
  width: 100%;
  height: auto;
  display: block;
}
#globalNavi ul#naviList li#store a:hover {
  -moz-opacity: 0.75;
  opacity: 0.75;
}
#globalNavi ul#naviList li#store a:after {
  content: none;
}

/* ----------------------------------------------------------------------- */
#page-news ul#naviList li#news a:after,
#page-divisions ul#naviList li#divisions a:after,
#page-works ul#naviList li#works a:after,
#page-company ul#naviList li#company a:after,
#page-contact ul#naviList li#contact a:after {
  width: 100%;
  opacity: 1;
}

/*=========================================================================
CONTENTS：THUMB LIST
=========================================================================*/
ul.thumb_list {
  list-style-type: none;
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 auto;
}
ul.thumb_list li {
  width: 31.3333333333%;
  height: auto;
  margin: 0 3% 4% 0;
}
ul.thumb_list li:nth-of-type(3n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  ul.thumb_list li:nth-of-type(3n) {
    margin-right: 3%;
  }
}
@media screen and (max-width: 768px) {
  ul.thumb_list li {
    width: 48.5%;
    margin-bottom: 6%;
  }
  ul.thumb_list li:nth-of-type(2n) {
    margin-right: 0;
  }
}

/* ----------------------------------------------------------------------- */
.link_thumb {
  width: 100%;
  height: auto;
  display: block;
  padding: 0;
  margin: 0 auto;
}
.link_thumb a, .link_thumb img {
  width: 100%;
  height: auto;
  display: block;
}
.link_thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.link_thumb a:hover {
  -moz-opacity: 0.75;
  opacity: 0.75;
}

/* ----------------------------------------------------------------------- */
.thumb_listNotes {
  padding-top: 0.8rem;
  width: 100%;
  height: auto;
  margin: 0 auto;
  font-size: 12px;
  font-weight: 400;
}
@media screen and (max-width: 1200px) {
  .thumb_listNotes {
    font-size: 11px;
  }
}
@media screen and (max-width: 768px) {
  .thumb_listNotes {
    padding-top: 0.3rem;
    font-size: clamp(11px, 1.692vw, 12px);
  }
}
@media screen and (max-width: 480px) {
  .thumb_listNotes {
    font-size: clamp(11px, 1.692vw, 12px);
  }
}

.thumb_list_title {
  line-height: 140%;
  font-weight: 600;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 768px) {
  .thumb_list_title {
    margin-bottom: 0.3rem;
  }
}
.thumb_list_title > a {
  color: #121212;
  text-decoration: none;
  position: relative;
  z-index: 1;
}
.thumb_list_title > a:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background-color: #121212;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}
.thumb_list_title > a:hover:after {
  width: 100%;
}

/* ----------------------------------------------------------------------- */
.thumb_cat {
  line-height: 100%;
  display: inline-block;
  background: #BDBDBD;
  color: #fff;
  font-weight: 600;
  margin-bottom: 0.3rem;
  padding: 0.2rem 0.4rem 0.3rem;
}

.works_name {
  line-height: 140%;
  font-weight: 500;
}
.works_name a {
  color: #121212;
  text-decoration: none;
  position: relative;
  z-index: 1;
  text-decoration: underline;
}
.works_name a:hover {
  color: #f20;
  text-decoration: none;
}

/* ----------------------------------------------------------------------- */
.btn_more {
  text-align: center;
  margin: 45px auto 0;
  max-width: 350px;
}
@media screen and (max-width: 768px) {
  .btn_more {
    margin-top: 6%;
  }
}
.btn_more a {
  display: inline-block;
  text-align: center;
  line-height: 100%;
  padding: 0.4rem 1.8rem 0.5rem 1rem;
  color: #121212;
  text-decoration: none;
  background: #f2f2f2;
  border: 1px solid #f2f2f2;
  position: relative;
  z-index: 1;
  border-radius: 100vh;
  font-weight: 500;
}
.btn_more a:hover {
  background: transparent;
  color: #121212;
  border-color: #121212;
}
.btn_more a:hover span:before, .btn_more a:hover span:after {
  background: #121212;
}
.btn_more a span {
  position: relative;
  z-index: 1;
  padding: 0 0.5rem;
}
.btn_more a span:before, .btn_more a span:after {
  content: "";
  position: absolute;
  background: #121212;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 52%;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}
.btn_more a span:before {
  width: 1px;
  height: 11px;
  right: -2px;
}
.btn_more a span:after {
  width: 11px;
  height: 1px;
  right: -7px;
}

/* ----------------------------------------------------------------------- */
dl#tableLayout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 96%;
  height: auto;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  dl#tableLayout {
    width: 100%;
  }
}
dl#tableLayout dt, dl#tableLayout dd {
  height: auto;
  margin-bottom: 1.8rem;
}
dl#tableLayout dt p, dl#tableLayout dd p {
  line-height: 160%;
}
dl#tableLayout dt {
  width: 26%;
  margin-right: 2%;
}
@media screen and (max-width: 768px) {
  dl#tableLayout dt {
    font-weight: 600;
    width: 100%;
    margin: 0 0 0.3rem;
  }
}
dl#tableLayout dd {
  width: 72%;
}
@media screen and (max-width: 768px) {
  dl#tableLayout dd {
    width: 100%;
    margin-bottom: 1.5rem;
  }
  dl#tableLayout dd:last-of-type {
    margin-bottom: 0;
  }
}

/*=========================================================================
FOOTER
=========================================================================*/
#Footer {
  width: 100%;
  height: auto;
  z-index: 2;
  position: relative;
}

/* ----------------------------------------------------------------------- */
#footerContents {
  width: 90%;
  height: auto;
  margin: 0 auto;
  max-width: 1200px;
  border-top: 1px solid #e4e4e4;
  padding: 30px 0;
}
@media screen and (max-width: 768px) {
  #footerContents {
    padding: 4% 0;
  }
}

/* ----------------------------------------------------------------------- */
dl#footer_infoBloc {
  width: 50%;
  height: auto;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  dl#footer_infoBloc {
    width: 100%;
    margin-bottom: 9%;
  }
}
dl#footer_infoBloc dt, dl#footer_infoBloc dd {
  width: 100%;
  height: auto;
}
dl#footer_infoBloc dt {
  margin-bottom: 45px;
}
@media screen and (max-width: 768px) {
  dl#footer_infoBloc dt {
    margin-bottom: 6%;
  }
}

/* ----------------------------------------------------------------------- */
#footer_conmapyName {
  line-height: 140%;
  font-weight: 600;
  color: #121212;
  margin-bottom: 0.4rem;
}

#footer_storeLink {
  max-width: 120px;
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  #footer_storeLink {
    margin-bottom: 0.5rem;
  }
}
#footer_storeLink a, #footer_storeLink img {
  width: 100%;
  height: auto;
  display: block;
}
#footer_storeLink a:hover {
  opacity: 0.75;
}

/* ----------------------------------------------------------------------- */
ul#foot_linkList {
  list-style-type: none;
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
ul#foot_linkList li {
  position: relative;
  z-index: 1;
  margin-right: 4%;
}
ul#foot_linkList li:nth-of-type(2n) {
  margin-right: 0;
}
ul#foot_linkList li a {
  color: #121212;
  text-decoration: none;
  display: inline-block;
  font-weight: 500;
}
ul#foot_linkList li a:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 1px;
  background-color: #121212;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}
ul#foot_linkList li a:hover:after {
  width: 100%;
}
ul#foot_linkList li:after {
  content: "";
  position: absolute;
  right: -10%;
  top: 60%;
  width: 1px;
  height: 60%;
  background: #DADADA;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
ul#foot_linkList li:last-of-type:after {
  content: none;
}

/* ----------------------------------------------------------------------- */
#Copy {
  line-height: 120%;
  text-align: center;
  color: #121212;
  font-weight: 600;
}

/*=========================================================================
NO PAGE
=========================================================================*/
#no_pagebox {
  width: 90%;
  margin: 0 auto;
  max-width: 1000px;
  height: auto;
  margin-bottom: 30px;
  padding: 155px 35px;
}
@media screen and (max-width: 768px) {
  #no_pagebox {
    padding: 9% 0%;
    margin-bottom: 1.5rem;
  }
}

#notfoud {
  display: inline-block;
  font-weight: 900;
  line-height: 180%;
  color: #121212;
}

#notfont_kana {
  line-height: 180%;
  color: #8f8f8f;
  font-weight: 600;
}

#no_pagebox p {
  line-height: 180%;
  color: #8f8f8f;
}

/*=========================================================================
PAGER
=========================================================================*/
a.page-numbers, .pager .current {
  font-weight: 600;
  padding: 3px 5px;
}
@media screen and (max-width: 768px) {
  a.page-numbers, .pager .current {
    padding: 0.5rem 0.5rem;
  }
}

.pager {
  height: auto !important;
  width: 90%;
  margin: 6% auto 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .pager {
    margin-top: 9%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.pager p {
  position: relative;
  z-index: 1;
  margin-right: 0.1rem;
}
@media screen and (max-width: 768px) {
  .pager p {
    margin: 0;
  }
}
.pager p:last-of-type {
  margin-right: 0;
}

.pager p a,
.pager p span {
  display: block;
  line-height: 100%;
}

.pager p:last-of-type {
  margin-right: 0;
}

.pager p a:hover {
  color: rgb(243, 21, 91) !important;
}

a.page-numbers {
  color: #121212;
  background: transparent;
  text-decoration: none;
  display: block;
}

.pager .current {
  color: #121212 !important;
  background: #f5f5f5;
}

/*=========================================================================
CUSTON 25.11.28
========================================================================*/
#page_catchBloc {
  width: 90%;
  height: auto;
  line-height: 160%;
  max-width: 1200px;
  margin: 0 auto 90px;
  text-align: center;
  letter-spacing: 0.08rem;
}
@media screen and (max-width: 768px) {
  #page_catchBloc {
    margin-bottom: 12%;
  }
}
#page_catchBloc p {
  margin-bottom: 1rem;
}
#page_catchBloc p:last-of-type {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------------- */
#pageCatch {
  text-align: center;
  margin-bottom: 20px;
  line-height: 140%;
}
@media screen and (max-width: 768px) {
  #pageCatch {
    margin-bottom: 1rem;
  }
}

/* ----------------------------------------------------------------------- */
.catch_pic {
  width: 100%;
  height: auto;
  margin: 45px auto;
  max-width: 1000px;
}
.catch_pic:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .catch_pic {
    margin: 5% auto;
  }
}
.catch_pic img {
  width: 100%;
  height: auto;
  display: block;
}
.catch_pic.small {
  max-width: 800px;
}