@charset "utf-8";

/* page header --------------- */
.page_header_oshiken {
  margin: 100px 0 0;
  width: 100%;
}
@media screen and (min-width: 1367px) {
.page_header_oshiken { margin-top: 110px; }
}

.breadcrumbs {
  margin: 0 auto 1em;
  width: 95%;
}
@media screen and (min-width: 1367px) {
.breadcrumbs { width: 1330px; }
}

.page_header_common.oshiken-subpage {
  background-color: var(--oshiken-pink);
  height: 100px;
  margin: 0;
  padding: 0;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
.page_header_common.oshiken-subpage { height: 200px; }
}
@media screen and (min-width: 1367px) {
.page_header_common.oshiken-subpage { height: 400px; }
}

.page_header_common.oshiken-subpage img {
  height: auto;
  margin: 0 auto;
  max-width: 100%;
}



/* column top --------------- */
.page-contents_header {
  margin: 50px auto;
  width: 95%;
}
@media screen and (min-width: 1367px) {
.page-contents_header { width: 1200px; }
}

.oshiken-subpage_headline {
  color: var(--oshiken-pink);
  font-size: 32px;
  font-weight: 600;
  line-height: 1;
  margin: 0;
  padding: 0;
}
@media screen and (min-width: 1367px) {
.oshiken-subpage_headline { font-size: 42px; }
}

.oshiken-subpage_introduction-text {
  font-size: 15px;
  line-height: 2;
  margin: 1em 0 0;
  padding: 0;
}

.archive_list_label a {
  background-color: var(--oshiken-pink-light);
  color: var(--oshiken-pink);
}
@media screen and (min-width: 1367px) {
.archive_list_label a:hover { background-color: var(--oshiken-pink); }
}

.tab-list_header {
  background-color: var(--oshiken-pink-light);
  border-left-color: var(--oshiken-pink);
  border-right-color: var(--oshiken-pink);
  border-top-color: var(--oshiken-pink);
  color: var(--oshiken-pink);
}

.tab-list_header.is-active { background-color: var(--oshiken-pink); }

.tab-list_main {
  background-color: var(--oshiken-pink);
  border-color: var(--oshiken-pink);
  margin-top: -.1em;
}

.list-category li a:after { background-image: url(/assets/images/common/icon_arrow_pink.png); }

.list-tag li a {
  background-color: var(--oshiken-pink-light);
  color: var(--oshiken-pink);
}



/* column detail --------------- */
.article {
  margin: 100px auto 0;
  width: 95%;
}
@media screen and (min-width: 1367px) {
.article {
  margin-top: 115px;
  padding-bottom: 50px;
  width: 1000px;
}
}

.table-of-contents {
  background-color: transparent !important;
  border: 1px solid var(--oshiken-pink);
}
.table-of-contents-heading:before { background-color: var(--oshiken-pink); }
.table-of-contents-heading span { color: var(--oshiken-pink); }
.table-of-contents-list:before { color: var(--oshiken-pink); }
.table-of-contents-list a { color: var(--oshiken-pink); }
.article-section-headline {
  border-left-color: var(--oshiken-pink) !important;
  color: var(--oshiken-pink) !important;
}
.section-middle-heading {
  border-left-color: var(--oshiken-pink) !important;
  color: #000 !important;
}
.figure-small-thumbnail { border-color: var(--oshiken-pink); }
.figure-small-thumbnail-body .section-sentence { color: var(--oshiken-pink); }
.figure-small-thumbnail-headline,
.figure-small-thumbnail-sub-heading { color: var(--oshiken-pink); }
.figure-small-thumbnail .reference-url a { color: var(--oshiken-pink) !important; }

.article-contents { padding-bottom: 0; }

.column-cta-button {
  background-color: var(--oshiken-pink);
  box-shadow: 1px 5px 0 #b51f5a;
  border-radius: 40px;
  margin: 0 auto;
  text-align: center;
  width: 90%;
}
@media screen and (min-width: 768px) {
.column-cta-button { width: 360px; }
.column-cta-button:hover {
  box-shadow: unset;
  opacity: 1;
  transform: translate(0,4px);
}
}

.column-cta-button:after {
  background-color: #fff;
  border-radius: 12px;
  color: var(--oshiken-pink);
  content: '\f054';
  display: block;
  font-family: 'Font Awesome 5 Free';
  font-size: 10px;
  font-weight: 900;
  height: 24px;
  line-height: 24px;
  position: absolute;
  right: 2em;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
}

.page_consultation {
  background-image: url(/oshiken/assets/images/column/bg_contact_oshiken_sp.png);
  background-position: center center;
  background-repeat: repeat-x;
  background-size: cover;
  margin-top: 50px;
  padding: 50px 0;
}
@media screen and (min-width: 1367px) {
.page_consultation {
  background-image: url(/oshiken/assets/images/column/bg_contact_oshiken_pc.png);
  margin-top: 100px;
}
}

.page_consultation p { color: #000; }

.related_archive_contents { background-color: var(--oshiken-pink-light); }

.related_archive_contents .common-sub-heading { color: var(--oshiken-pink); }

.related_archive_contents .common-button {
  background-color: var(--oshiken-pink);
  border: 1px solid var(--oshiken-pink);
}

@media screen and (min-width: 1367px) {
.related_archive_contents .common-button:hover {
  border: 1px solid var(--oshiken-pink);
  color: var(--oshiken-pink);
}
.related_archive_contents .common-button:hover:after { background-image: url(/assets/images/common/icon_arrow_pink.png); }
}



/* oshiken link button --------------- */
.oshiken-button {
  background-color: #fff;
  border: 1px solid var(--oshiken-pink);
  border-radius: 1.2em;
  color: var(--oshiken-pink);
  display: block;
  font-size: 15px;
  font-weight: 600;
  line-height: 2.4;
  margin: 1.5em auto 0;
  padding: 0 1em;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 100%;
}
@media screen and (min-width: 1367px) {
.oshiken-button { transition: .3s; }
.oshiken-button:hover {
  background-color: var(--oshiken-pink);
  color: #fff !important;
  text-decoration: none;
}
.oshiken-button:active,
.oshiken-button:visited {
  color: var(--oshiken-pink);
  text-decoration: none;
}
}

div.oshiken-button,
p.oshiken-button,
span.oshiken-button { cursor: pointer; }

.oshiken-button:after {
  background-color: var(--oshiken-pink);
  border-radius: 12px;
  color: #fff;
  content: '\f054';
  display: block;
  font-family: 'Font Awesome 5 Free';
  font-size: .7em;
  font-weight: 900;
  line-height: 24px;
  position: absolute;
  right: .4em;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
}
@media screen and (min-width: 1367px) {
.oshiken-button:hover:after {
  background-color: #fff;
  color: var(--oshiken-pink) !important;
}
}



/* oshiken link button ver light pink --------------- */
.oshiken-button.ver_light-pink {
  background-color: var(--oshiken-pink-light);
  border: 1px solid var(--oshiken-pink);
  color: var(--oshiken-pink);
}
@media screen and (min-width: 1367px) {
.oshiken-button.ver_light-pink:hover {
  background-color: var(--oshiken-pink);
  color: #fff !important;
  text-decoration: none;
}
.oshiken-button.ver_light-pink:active,
.oshiken-button.ver_light-pink:visited {
  color: var(--oshiken-pink);
  text-decoration: none;
}
}

.oshiken-button.ver_light-pink:after {
  background-color: #fff;
  color: var(--oshiken-pink);
}



/* pagination --------------- */
nav.pagination-container ul li a {
  border-color: var(--oshiken-pink);
  color: var(--oshiken-pink);
}
li.page.navi-active a { background-color: var(--oshiken-pink); }



/* product list --------------- */
.oshiken-products {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  margin: 0 auto;
  width: 90%;
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
.oshiken-products { gap: 1.5em; }
}
@media screen and (min-width: 1367px) {
.oshiken-products {
  gap: 3.16em;
  width: 1200px;
}
}

.oshiken-products-list {
  display: block;
  text-decoration: none;
  width: 47%;
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
.oshiken-products-list { width: 22% !important; }
}
@media screen and (min-width: 1024px) and (max-width: 1366px) {
.oshiken-products-list { width: 23% !important; }
}
@media screen and (min-width: 1367px) {
.oshiken-products-list {
  transition: .3s;
  width: 262px;
}
}

.oshiken-products-figure {
  border-radius: 20px;
  display: block;
  margin: 0;
  overflow: hidden;
  width: 100%;
}

.oshiken-products-photo {
  display: block;
  height: auto;
  width: 100%;
}
@media screen and (min-width: 1367px) {
.oshiken-products-photo { transition: .3s; }
.oshiken-products-list:hover .oshiken-products-photo { transform: scale(1.1); }
}

.oshiken-products-name {
  color: #000;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  margin: .5em 0 0;
  padding: 0 0 .5em;
}



/* text target blank ------------- */
.target-blank { position: relative; }
.target-blank:after {
  content: ' \f35d';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  text-decoration: none;
}



/* no margin ------------- */
.no-margin_top { margin-top: 0!important; }



/* device ------------- */
.sp-only,
.sp-tab-only { display: block; }
br.sp-only,
br.sp-tab-only,
span.sp-only,
span.sp-tab-only { display: inline; }
.sh-nav-link-inner.sp-tab-only { display: flex; }
.pc-only,
.tab-only,
.pc-tab-only { display: none; }
@media screen and (min-width: 1367px) {
.pc-only,
.pc-tab-only { display: block; }
br.pc-only,
br.pc-tab-only,
span.pc-only,
span.pc-tab-only { display: inline; }
br.sp-only,
br.sp-tab-only { display: none; }
.sp-only,
.tab-only,
.sp-tab-only { display: none; }
}
@media only screen and (min-width: 768px) and (max-width: 1366px) {
.tab-only,
.pc-tab-only,
.sp-tab-only { display: block; }
br.tab-only,
br.pc-tab-only,
br.sp-tab-only,
span.tab-only,
span.pc-tab-only,
span.sp-tab-only { display: inline; }
br.pc-only,
br.sp-only { display: none; }
.pc-only,
.sp-only { display: none; }
}