@charset "UTF-8";
:root {
  --innerBase:780px;
  --wrapBase:940px;
  --boxBase:1080px;
  --containerBase:1280px;
  --maxWidthBase:1440px;
  --inner:var(--innerBase);
  --wrap:var(--wrapBase);
  --box:var(--boxBase);
  --container:var(--containerBase);
  --maxWidth:var(--maxWidthBase);
  --spContainerPadding:5%;
  --pcContainerPadding:95px;
  --spHeaderHeight:60px;
  --pcHeaderHeight:85px;
  --baseColor:#ffffff;
  --mainColor:#003288;
  --subColor:#D1DDEF;
  --icuColor:#3395EA;
  --entColor:#059A78;
  --cssdColor:#375DB4;
  --othersColor:#696F7E;
  --whiteColor:#ffffff;
  --grayColor:#696F7E;
  --lightGrayColor:#BDC1CD;
  --softGrayColor:rgb(from #696F7E r g b / 15%);
  --paleBlueColor:#D4E0F5;
  --tintBlueColor:#E5ECF8;
  --lightBlueColor:#D1DDEF;
  --deepBlueColor:#375DB4;
  --softBlueColor:#BEC9E6;
  --grayBlueColor:#DCDEE6;
  --textHoverColor:#8098C4;
  --animationSpeed:0.4s;
  --ioAnimationSpeed:1s;
  --spMargin:40px;
  --pcMargin:50px;
  --fontSerif:"Shippori Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
  --fontGothic:"Noto Sans JP","游ゴシック体",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
  --fontFamily:var(--fontGothic);
  --fontTitle:var(--fontSerif);
  --fontEn:"Lusitana", serif;
}

/*
Theme Name: Simple
Theme URI:
Description:
Version: 2.0
Author: nw
*/
/* ==========================================================================

	products

========================================================================== */
/*----------------------------------------------------------------
	common
----------------------------------------------------------------*/
/*------------------------------------------------------------
	products common
------------------------------------------------------------*/
body.products {
  --sideBarWidth:min(23.4375vw,300px);
}
@media print, screen and (min-width: 813px) {
  body.products main > div {
    display: grid;
    grid-template-columns: var(--sideBarWidth) 1fr;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  body.products main > div .main_cnt {
    min-width: 0;
  }
  body.products main > div .main_cnt #breadcrumbs .container {
    max-width: initial;
    padding-left: calc(var(--pcContainerPadding) / 2);
    padding-right: calc(var(--pcContainerPadding) / 2);
    margin: 0;
  }
}
body.products #sideContents .accordion .accordion_cnt {
  padding-top: 1em;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li {
  margin-bottom: 1em;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li:last-child {
  margin-bottom: 0;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a {
  display: block;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a span {
  display: block;
  padding: 0.5em 1em 0.5em 2.2em;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a[data-article*=or-icu] span {
  background-color: var(--icuColor);
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a[data-article*=ent] span {
  background-color: var(--entColor);
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a[data-article*=cssd] span {
  background-color: var(--cssdColor);
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a[data-article*=others] span {
  background-color: var(--othersColor);
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a.active:before {
  left: 1em !important;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > ul {
  padding-left: 3em;
  margin-bottom: 0;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > ul li {
  margin-top: 0.5em;
}
body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > ul li a {
  display: block;
  font-size: min(1.4rem, 14px);
  padding-left: 1.2em;
}
body.products #sideContents .accordion .accordion_cnt .postNav ul a.active {
  position: relative;
}
body.products #sideContents .accordion .accordion_cnt .postNav ul a.active:before {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: solid 0.4em transparent;
  border-right: 0;
  border-bottom: solid 0.4em transparent;
  border-left: solid 0.7em var(--whiteColor);
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
body.products #sideContents .accordion .accordion_cnt .searchKeyword form input[type=text] {
  background-color: rgb(from var(--whiteColor) r g b/8%);
}
body.products #sideContents .accordion .accordion_cnt .searchKeyword form button {
  background-color: transparent;
}
body.products #sideContents .accordion .accordion_cnt .searchKeyword form button svg {
  fill: var(--whiteColor);
}
@media print, screen and (max-width: 812px) {
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a {
    font-size: min(1.8rem, 18px);
  }
}
@media print, screen and (min-width: 813px) {
  body.products #sideContents .accordion {
    position: sticky;
    top: var(--pcHeaderHeight);
    left: 0;
    max-height: calc(100vh - var(--pcHeaderHeight));
    overflow-y: auto;
  }
  body.products #sideContents .accordion .accordion_cnt {
    padding-top: 2em;
    padding-bottom: 2em;
  }
  body.products #sideContents .accordion .accordion_cnt > *.container {
    padding-right: calc(var(--pcContainerPadding) / 2.5);
    padding-left: calc(var(--pcContainerPadding) / 2.5);
  }
  body.products #sideContents .accordion .accordion_cnt > p a img {
    display: inline;
    width: 90%;
    max-width: 160px;
    margin: 0;
  }
  body.products #sideContents .accordion .accordion_cnt .postNav.container {
    padding-right: 0;
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li {
    margin-bottom: 0.7em;
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a {
    background-color: var(--whiteColor);
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a span {
    padding-top: 0.3em;
    padding-bottom: 0.3em;
    -webkit-transition: background-color var(--animationSpeed);
    transition: background-color var(--animationSpeed);
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a:hover[data-article*=or-icu] span {
    background-color: color-mix(in srgb, var(--icuColor) 70%, var(--whiteColor));
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a:hover[data-article*=ent] span {
    background-color: color-mix(in srgb, var(--entColor) 70%, var(--whiteColor));
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a:hover[data-article*=cssd] span {
    background-color: color-mix(in srgb, var(--cssdColor) 70%, var(--whiteColor));
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > a:hover[data-article*=others] span {
    background-color: color-mix(in srgb, var(--othersColor) 70%, var(--whiteColor));
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > ul {
    margin-top: 0.3em;
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > ul li {
    margin-top: 0.2em;
  }
  body.products #sideContents .accordion .accordion_cnt .postNav > ul > li > ul li a:hover {
    color: var(--textHoverColor);
  }
  body.products #sideContents .accordion .accordion_cnt .searchKeyword form button svg {
    width: 55%;
    height: 55%;
  }
}
@media print, screen and (max-width: 812px) {
  body.products .title_cnt {
    margin-bottom: 2em;
  }
  body.products .title_cnt .tt_main {
    font-size: 2rem;
  }
  body.products .title_cnt *[data-mark-icon]:after {
    display: none;
  }
}
@media print, screen and (min-width: 813px) {
  body.products .title_cnt {
    margin-bottom: 1em;
  }
  body.products .title_cnt *[data-mark-icon] {
    padding-bottom: var(--spMargin);
    --markIconSize:min(9vw,155px);
  }
}
/*----------------------------------------------------------------
	home
----------------------------------------------------------------*/
/*------------------------------------------------------------
	products home
------------------------------------------------------------*/
@media print, screen and (max-width: 812px) {
  body.products.home .article_lists[data-post-lists*=products] article > div {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  body.products.home .article_lists[data-post-lists*=products] article > div picture {
    width: 60%;
  }
  body.products.home .article_lists[data-post-lists*=products] article > div > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 40%;
    font-size: min(2rem, 20px);
  }
}
/*----------------------------------------------------------------
	archive
----------------------------------------------------------------*/
/*------------------------------------------------------------
	products archive
------------------------------------------------------------*/
body.products.archive .salway_cnt > div {
  background-color: color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
}
@media print, screen and (max-width: 812px) {
  body.products.archive .salway_cnt > div {
    padding: var(--spMargin) 1em;
  }
  body.products.archive .salway_cnt > div picture img {
    max-width: 215px;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.archive .salway_cnt > div {
    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;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 2em 1.6em;
    padding: var(--pcMargin) 1.6em;
  }
  body.products.archive .salway_cnt > div picture {
    width: 35%;
    max-width: 275px;
    margin-bottom: 0;
  }
  body.products.archive .salway_cnt > div picture img {
    max-width: initial;
  }
  body.products.archive .salway_cnt > div > div:not(.link_btn) {
    text-align: left;
  }
  body.products.archive .salway_cnt > div > div:not(.link_btn) .tt_sub {
    margin-bottom: 0.5em;
  }
  body.products.archive .salway_cnt > div .link_btn {
    width: 100%;
    margin-top: 0;
  }
}

/*----------------------------------------------------------------
	single
----------------------------------------------------------------*/
/* ==========================================================================

	modal

========================================================================== */
.modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10005;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.modal.is-open {
  opacity: 1;
  visibility: visible;
}
.modal_overlay {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(12px);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.modal_window {
  width: 90%;
  max-height: 90vh;
  background-color: #fff;
  position: relative;
  z-index: 2;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  overflow-y: auto;
}
@media print, screen and (max-width: 812px) {
  .modal {
    height: 100svh;
  }
  .modal_window.inner {
    width: 80%;
  }
}
body.modal_open {
  overflow: hidden;
}

.modal_movie {
  --iconw:90px;
  --opacity:0;
  position: relative;
  display: block;
}
.modal_movie picture {
  display: block;
}
.modal_movie img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
}
.modal_movie .modal_movie_cover {
  position: absolute;
  inset: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  background-color: rgba(102, 102, 102, var(--opacity));
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); /* safari fixed */
}
.modal_movie .modal_movie_cover div {
  display: grid;
  place-items: center;
  width: var(--iconw);
  height: var(--iconw);
  border-radius: 100px;
  background-color: var(--mainColor);
  -webkit-transition: var(--animationSpeed);
  transition: var(--animationSpeed);
}
.modal_movie .modal_movie_cover div .icon_play {
  position: relative;
  width: var(--iconw);
  fill: #fff;
}
.modal_movie .modal_movie_cover span {
  margin-top: 0.5em;
  font-size: min(1.5rem, 15px);
  font-weight: 700;
  line-height: 1;
  color: var(--mainColor);
}
@media print, screen and (max-width: 812px) {
  .modal_movie .modal_movie_cover span {
    font-size: 1.2rem;
  }
}
@media print, screen and (max-width: 812px) {
  .modal_movie {
    --iconw:56px;
  }
}
@media print, screen and (min-width: 813px) {
  .modal_movie:hover .modal_movie_cover div {
    background-color: #fff;
  }
  .modal_movie:hover .modal_movie_cover svg {
    fill: var(--mainColor);
  }
}

/*------------------------------------------------------------
	products single
------------------------------------------------------------*/
body.products.single {
  --sideDetailsHeight:60px;
  --pcMargin:60px;
}
@media print, screen and (max-width: 812px) {
  body.products.single #sideContents {
    position: sticky;
    top: var(--spHeaderHeight);
    left: 0;
    z-index: 2000;
  }
  body.products.single #sideContents details > summary {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: var(--sideDetailsHeight);
    padding-block: 0;
  }
}
body.products.single #product-header {
  padding-block: 1em;
}
body.products.single #product-header p {
  margin-bottom: 0;
}
body.products.single #product-header .link_btn a {
  min-width: initial;
  padding: 0.2em 0.5em;
  border-radius: 0;
}
body.products.single #product-header .link_btn a svg {
  margin-right: 0.5em;
  margin-left: 0;
}
@media print, screen and (max-width: 812px) {
  body.products.single #product-header p {
    text-align: center;
    font-weight: bold;
  }
  body.products.single #product-header ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 0.5em;
    gap: 0.5em;
  }
  body.products.single #product-header ul li {
    width: calc((100% - 1.5em) / 4);
    text-align: center;
  }
  body.products.single #product-header ul li a {
    font-size: 1.3rem;
  }
  body.products.single #product-header ul li.link_btn {
    width: auto;
  }
  body.products.single #product-header {
    position: relative;
    z-index: 10;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    -webkit-transition: none;
    transition: none;
  }
  body.products.single #product-header.is-fixed {
    width: 100%;
    position: fixed;
    top: calc(var(--spHeaderHeight) + var(--sideDetailsHeight));
    left: 0;
    -webkit-transition: -webkit-transform var(--animationSpeed);
    transition: -webkit-transform var(--animationSpeed);
    transition: transform var(--animationSpeed);
    transition: transform var(--animationSpeed), -webkit-transform var(--animationSpeed);
  }
  body.products.single #product-header.is-fixed.is-hide {
    -webkit-transform: translateY(-150%);
            transform: translateY(-150%);
  }
  body.products.single #product-header.is-fixed.no-transition {
    -webkit-transition: none !important;
    transition: none !important;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single #product-header {
    padding-block: 0;
    position: sticky;
    top: 0;
    left: 0;
    z-index: 9991;
  }
  body.products.single #product-header > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: var(--pcHeaderHeight);
    padding-left: calc(var(--pcContainerPadding) / 2);
  }
  body.products.single #product-header > div p {
    font-size: min(1.8rem, 18px);
    margin-bottom: 0;
    opacity: 0;
    -webkit-transition: opacity var(--animationSpeed);
    transition: opacity var(--animationSpeed);
  }
  body.sticky-page-anchor #product-header > div p {
    opacity: 1 !important;
  }
  body.products.single #product-header > div ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.5em 1.6em;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin-left: 1.6em;
  }
  body.products.single #product-header > div ul li:not(.link_btn) a:hover {
    color: var(--textHoverColor);
  }
}
body.products.single .download_btn > a {
  min-height: 92px;
  padding: 1em;
  padding-right: 4.8em;
}
body.products.single .download_btn > a span {
  right: 1em;
}
@media print, screen and (min-width: 813px) {
  body.products.single .download_btn > a {
    min-height: 114px;
  }
}
body.products.single .tt_sub[data-title=large]:not(.postMovie *):not(#modal-medical *) {
  margin-bottom: 1em;
}
@media print, screen and (min-width: 813px) {
  body.products.single .tt_sub[data-title=large]:not(.postMovie *):not(#modal-medical *) {
    margin-bottom: 1.6em;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single .box_cnt {
    padding-block: 3em;
  }
  body.products.single .box_cnt .tt_sub {
    margin-bottom: 1.2em;
  }
}
body.products.single .information_cnt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 1.6em;
}
body.products.single .information_cnt > * {
  width: 100%;
}
body.products.single .information_cnt .postCategory {
  gap: 0.5em;
}
body.products.single .information_cnt .postCategory li a {
  padding: 0.5em 1em;
  border-radius: 50px;
}
body.products.single .information_cnt hgroup * {
  margin-bottom: 0;
}
body.products.single .information_cnt hgroup .tt_main {
  font-weight: bold;
}
body.products.single .information_cnt .postThumb img {
  width: 100%;
}
body.products.single .information_cnt .postExcerpt dl {
  padding-block: 1em;
  border-top: solid 1px color-mix(in srgb, var(--mainColor) 25%, var(--whiteColor));
  border-bottom: solid 1px color-mix(in srgb, var(--mainColor) 25%, var(--whiteColor));
}
body.products.single .information_cnt .postExcerpt dl > div {
  font-size: min(1.2rem, 12px);
}
@media print, screen and (max-width: 812px) {
  body.products.single .information_cnt > *:not(.postThumb) {
    padding-inline: var(--spContainerPadding);
  }
  body.products.single .information_cnt .postCategory {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-bottom: 1em;
  }
  body.products.single .information_cnt hgroup {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    margin-bottom: 1em;
  }
  body.products.single .information_cnt .postThumb {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 1.6em;
  }
  body.products.single .information_cnt .postExcerpt {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single .information_cnt .postCategory {
    margin-bottom: 2em;
  }
  body.products.single .information_cnt hgroup {
    margin-bottom: 1.6em;
  }
  body.products.single .information_cnt hgroup p {
    font-size: min(2rem, 20px);
  }
  body.products.single .information_cnt .postThumb {
    width: calc(55% - 1.6em);
  }
  body.products.single .information_cnt .postExcerpt {
    width: 45%;
  }
}
body.products.single .postMovie > div > div:not(.youtube) h5 {
  font-weight: bold;
}
@media print, screen and (max-width: 812px) {
  body.products.single .postMovie > div > div:not(.youtube) {
    padding: 0 1.6em 1.6em;
  }
  body.products.single .postMovie > div > div:not(.youtube) h5 {
    font-size: 2.5rem;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single .postMovie .column {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    grid-template-columns: calc(55% - 1.6em) 1fr;
    padding-right: 1.6em;
  }
}
body.products.single #point .case_study {
  border: solid 1px var(--mainColor);
}
body.products.single #point .point_list li:last-child, body.products.single #point .point_list li > *:last-child {
  margin-bottom: 0;
}
body.products.single #point .point_list li .point_badge {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 80px;
  height: 80px;
  color: var(--whiteColor);
  border-radius: 50%;
  background-color: var(--mainColor);
}
body.products.single #point .point_list li .point_badge .badge_text {
  line-height: 1;
  font-size: min(1.5rem, 15px);
  letter-spacing: 0.05em;
}
body.products.single #point .point_list li .point_badge .badge_num {
  line-height: 1;
  font-size: min(3.9rem, 39px);
}
body.products.single #point .point_list li .tt_point {
  font-size: min(2rem, 20px);
}
@media print, screen and (max-width: 812px) {
  body.products.single #point .case_study {
    padding-block: 1.6em;
  }
  body.products.single #point .point_list {
    margin-top: 1.6em;
  }
  body.products.single #point .point_list li {
    margin-bottom: 2.5em;
  }
  body.products.single #point .point_list li .point_badge {
    margin: 0 auto 1.3em;
  }
  body.products.single #point .point_list li .point_badge .badge_text {
    font-size: 1.2rem;
    margin-bottom: 2px;
  }
  body.products.single #point .point_list li .point_badge .badge_num {
    font-size: 2.9rem;
  }
  body.products.single #point .point_list li .tt_point {
    line-height: 1.6;
    text-align: left;
    margin-bottom: 0.8em;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single #point .point_list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 1.6em;
       -moz-column-gap: 1.6em;
            column-gap: 1.6em;
    margin-bottom: 2em;
  }
  body.products.single #point .point_list li .point_badge {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 85px;
    height: 85px;
  }
  body.products.single #point .point_list li .tt_point {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-column-gap: 1em;
       -moz-column-gap: 1em;
            column-gap: 1em;
    margin-bottom: 0.3em;
  }
}
body.products.single #notes > div > div {
  background-color: color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
}
@media print, screen and (min-width: 813px) {
  body.products.single #notes ul li {
    margin-bottom: 0.75em;
  }
  body.products.single #notes ul li:last-child {
    margin-bottom: 0;
  }
}
body.products.single #guide .guide_cnt > .tt_sub {
  margin-bottom: 1em;
}
body.products.single #guide .guide_cnt > div:not(.link_btn) .column > div .tt_sub {
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: solid 1px var(--mainColor);
}
@media print, screen and (min-width: 813px) {
  body.products.single #guide .guide_cnt > .tt_sub {
    margin-bottom: 1.6em;
  }
  body.products.single #guide .guide_cnt > div:not(.link_btn) .column:not(.row):not([data-pc-col="1"]) picture {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  body.products.single #guide .guide_cnt > div:not(.link_btn) .column:not(.row):not([data-pc-col="1"]) > div {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  body.products.single #guide .guide_cnt > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.6em;
  }
  body.products.single #guide .guide_cnt > ul li {
    width: calc((100% - 1.6em) / 2);
  }
}
body.products.single #price .table_wrap {
  margin-top: 2em;
  width: 100%;
}
body.products.single #price .table_wrap table {
  width: 100%;
  min-width: 800px;
  text-align: center;
  border-collapse: collapse;
}
body.products.single #price .table_wrap table th, body.products.single #price .table_wrap table td {
  font-weight: normal;
  vertical-align: middle;
  word-break: auto-phrase;
  overflow-wrap: anywhere;
  font-size: min(1.2rem, 12px);
  line-height: 1.3;
  padding: 0.7em;
}
body.products.single #price .table_wrap table thead th {
  font-weight: 500;
  background-color: color-mix(in srgb, var(--mainColor) 20%, var(--whiteColor));
}
body.products.single #price .table_wrap table tbody tr:nth-child(odd) {
  background-color: color-mix(in srgb, var(--mainColor) 8%, var(--whiteColor));
}
body.products.single #price .table_wrap table tbody tr:nth-child(even) {
  background-color: var(--whiteColor);
}
body.products.single #price .table_wrap table tbody tr th {
  text-align: left;
}
body.products.single #price .table_wrap table .col_fixed {
  position: sticky;
  left: 0;
  z-index: 2;
}
body.products.single #price .table_wrap table thead .col_fixed {
  z-index: 3;
}
body.products.single #price .table_wrap table tbody tr:nth-child(odd) .col_fixed {
  background-color: color-mix(in srgb, var(--mainColor) 8%, var(--whiteColor));
}
body.products.single #price .table_wrap table tbody tr:nth-child(even) .col_fixed {
  background-color: var(--whiteColor);
}
body.products.single #price .table_wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  color-scheme: light;
  scrollbar-width: thin;
  scrollbar-color: var(--mainColor) #e5e5e5;
}
body.products.single #price .table_wrap::-webkit-scrollbar {
  height: 6px;
}
body.products.single #price .table_wrap::-webkit-scrollbar-track {
  border-radius: 10px;
  background-color: #e5e5e5;
}
body.products.single #price .table_wrap::-webkit-scrollbar-thumb {
  background-color: var(--mainColor);
  border-radius: 10px;
}
body.products.single #price .table_wrap .simplebar-track.simplebar-horizontal {
  height: 6px;
  background-color: #e5e5e5;
  border-radius: 10px;
}
body.products.single #price .table_wrap .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  height: 6px;
}
body.products.single #price .table_wrap .simplebar-scrollbar::before {
  background-color: var(--mainColor);
  border-radius: 10px;
  top: 0;
  bottom: 0;
}
body.products.single #price .table_wrap .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}
@media print, screen and (max-width: 812px) {
  body.products.single #price .table_wrap {
    margin-top: 1.5em;
  }
  body.products.single #price .table_wrap table th, body.products.single #price .table_wrap table td {
    padding: 0.5em;
  }
  body.products.single #price .table_wrap table .col_fixed {
    width: 8em;
    font-size: 1.2rem;
    -webkit-box-shadow: inset -1px 0 0 rgb(from var(--mainColor) r g b/15%);
            box-shadow: inset -1px 0 0 rgb(from var(--mainColor) r g b/15%);
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single #price .table_wrap table {
    min-width: auto;
  }
  body.products.single #price .table_wrap table .col_fixed {
    width: auto;
    border-right: none;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  body.products.single #price .table_wrap table:has(thead th:nth-child(8)) {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    min-width: 100%;
  }
  body.products.single #price .table_wrap table:has(thead th:nth-child(8)) .col_fixed {
    width: 15em;
    -webkit-box-shadow: inset -1px 0 0 rgb(from var(--mainColor) r g b/15%);
            box-shadow: inset -1px 0 0 rgb(from var(--mainColor) r g b/15%);
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single #case .slick-initialized {
    padding-bottom: calc(1.6em + min(3.7vw, 55px));
  }
  body.products.single #case .slick-initialized .slick-slide > div {
    margin-bottom: 1.6em;
  }
  body.products.single #case .slick-initialized .slick-slide > div, body.products.single #case .slick-initialized .slick-slide > div article {
    height: auto;
  }
  body.products.single #case .slick-initialized .slick-slide > div:last-child {
    margin-bottom: 0;
  }
  body.products.single #case .slick-initialized .slick-arrow {
    border-radius: 0;
    border: none;
    background-color: transparent;
    top: auto;
    bottom: 0;
  }
  body.products.single #case .slick-initialized .slick-arrow span {
    width: 25px;
  }
  body.products.single #case .slick-initialized .slick-arrow.slidePrev {
    left: calc(50% - min(3.7vw, 55px) - 2em);
  }
  body.products.single #case .slick-initialized .slick-arrow.slideNext {
    right: calc(50% - min(3.7vw, 55px) - 2em);
  }
  body.products.single #case .slick-initialized .slick-arrow:hover span svg {
    fill: var(--textHoverColor);
  }
}
body.products.single .faq_cnt .accordion {
  border-bottom: solid 1px rgb(from var(--mainColor) r g b/25%);
}
body.products.single .faq_cnt .accordion:first-child {
  border-top: solid 1px rgb(from var(--mainColor) r g b/25%);
}
@media print, screen and (max-width: 812px) {
  body.products.single .catalog_cnt .column {
    row-gap: 0.7em;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single .catalog_cnt .column > *:only-child {
    grid-column: 1/-1;
    width: calc(50% - 0.8em);
    margin-inline: auto;
  }
}
body.products.single #extra > ul {
  margin-bottom: 0;
}
body.products.single #extra > ul > li {
  margin-bottom: 1.6em;
}
body.products.single #extra > ul > li:last-child {
  margin-bottom: 0;
}
body.products.single #extra > ul .link_btn a {
  width: 100%;
  line-height: 1.6;
  font-size: min(2.5rem, 25px);
  text-align: left;
  padding-block: 2em;
  border-radius: 0;
}
body.products.single #extra > ul .link_btn a svg {
  width: 1.3em;
  height: 1.3em;
  margin-right: 0.8em;
  margin-left: 0;
}
body.products.single #extra > ul .link_btn a svg.icon_cart {
  width: 1.5em;
  height: 1.5em;
}
@media print, screen and (max-width: 812px) {
  body.products.single #extra > ul .link_btn a {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    font-size: 2rem;
    padding-block: 1em;
    padding-inline: 1em;
    padding-left: 1.2em;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single #extra > ul .link_btn a {
    display: grid !important;
    grid-template-columns: 1fr; /* ボタン全体を1つの部屋に */
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-inline: 0;
  }
  body.products.single #extra > ul .link_btn a svg {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    margin-left: 5.5em; /* ★ご希望の 5.5em に指定 */
    margin-right: 0;
  }
  body.products.single #extra > ul .link_btn a span {
    grid-column: 1;
    grid-row: 1;
    justify-self: center; /* ボタンの完全な中央 */
    text-align: center;
    /* ★アイコンが内側に入った分、防波堤も 8em に拡大 */
    /* アイコンの位置(5.5em) ＋ アイコン自体の幅(約1.5em) ＋ 隙間(1em) ＝ 8em */
    padding-left: 8em;
    padding-right: 8em; /* 左右対称にして中央をズラさない */
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 1.4;
  }
  body.products.single #extra #relationArticle .slick-list {
    padding-top: 0 !important;
  }
}
body.products.single .modal_cnt > div .tt_sub {
  margin-bottom: 1em;
}
body.products.single .modal_cnt > div .column {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
body.products.single .modal_cnt > div .column .link_btn a, body.products.single .modal_cnt > div .column .link_btn > span, body.products.single .modal_cnt > div .column .link_btn > button {
  min-width: 150px;
}
@media print, screen and (max-width: 812px) {
  body.products.single .modal_cnt > div {
    margin-top: 1em;
  }
  body.products.single .modal_cnt > div .column {
    row-gap: 1em;
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single .modal_cnt > div {
    margin-top: 1.6em;
  }
}
body.products.single main > *[data-article=or-icu] #productContents > *:nth-child(even of :not(#breadcrumbs)) {
  background-color: color-mix(in srgb, var(--icuColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=or-icu] #productContents #information .postCategory a {
  border-color: var(--icuColor);
  background-color: var(--icuColor);
}
body.products.single main > *[data-article=or-icu] #productContents .postMovie > div {
  background-color: color-mix(in srgb, var(--icuColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=or-icu] #productContents #point .case_study {
  border-color: var(--icuColor);
}
body.products.single main > *[data-article=or-icu] #productContents #point .point_list li .point_badge {
  background-color: var(--icuColor);
}
body.products.single main > *[data-article=or-icu] #productContents #guide .guide_cnt .column > div .tt_sub {
  border-color: var(--icuColor);
}
body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap {
  scrollbar-color: var(--icuColor) #e5e5e5;
}
body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap::-webkit-scrollbar-thumb {
  background-color: var(--icuColor);
}
body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap table thead th {
  background-color: color-mix(in srgb, var(--icuColor) 20%, var(--whiteColor));
}
body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap table tbody tr:nth-child(odd), body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap table tbody tr:nth-child(odd) .col_fixed {
  background-color: color-mix(in srgb, var(--icuColor) 8%, var(--whiteColor));
}
body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap .simplebar-scrollbar::before {
  background-color: var(--icuColor);
}
body.products.single main > *[data-article=or-icu] #productContents .download_btn a {
  --downloadBtnColor:var(--icuColor);
  --downloadBtnHoverColor:color-mix(in srgb, var(--icuColor) 70%, var(--whiteColor));
  border-color: color-mix(in srgb, var(--icuColor) 70%, var(--whiteColor));
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--icuColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--icuColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single main > *[data-article=or-icu] #productContents #information .postCategory a:hover {
    color: var(--icuColor);
    background-color: var(--whiteColor);
  }
  body.products.single main > *[data-article=or-icu] #productContents #price .table_wrap:has(thead th:nth-child(8)) table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--icuColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--icuColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=or-icu] #product-header {
    background-color: color-mix(in srgb, var(--icuColor) 15%, var(--whiteColor));
  }
}
body.products.single main > *[data-article=ent] #productContents > *:nth-child(even of :not(#breadcrumbs)) {
  background-color: color-mix(in srgb, var(--entColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=ent] #productContents #information .postCategory a {
  border-color: var(--entColor);
  background-color: var(--entColor);
}
body.products.single main > *[data-article=ent] #productContents .postMovie > div {
  background-color: color-mix(in srgb, var(--entColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=ent] #productContents #point .case_study {
  border-color: var(--entColor);
}
body.products.single main > *[data-article=ent] #productContents #point .point_list li .point_badge {
  background-color: var(--entColor);
}
body.products.single main > *[data-article=ent] #productContents #guide .guide_cnt .column > div .tt_sub {
  border-color: var(--entColor);
}
body.products.single main > *[data-article=ent] #productContents #price .table_wrap {
  scrollbar-color: var(--entColor) #e5e5e5;
}
body.products.single main > *[data-article=ent] #productContents #price .table_wrap::-webkit-scrollbar-thumb {
  background-color: var(--entColor);
}
body.products.single main > *[data-article=ent] #productContents #price .table_wrap table thead th {
  background-color: color-mix(in srgb, var(--entColor) 20%, var(--whiteColor));
}
body.products.single main > *[data-article=ent] #productContents #price .table_wrap table tbody tr:nth-child(odd), body.products.single main > *[data-article=ent] #productContents #price .table_wrap table tbody tr:nth-child(odd) .col_fixed {
  background-color: color-mix(in srgb, var(--entColor) 8%, var(--whiteColor));
}
body.products.single main > *[data-article=ent] #productContents #price .table_wrap .simplebar-scrollbar::before {
  background-color: var(--entColor);
}
body.products.single main > *[data-article=ent] #productContents .download_btn a {
  --downloadBtnColor:var(--entColor);
  --downloadBtnHoverColor:color-mix(in srgb, var(--entColor) 70%, var(--whiteColor));
  border-color: color-mix(in srgb, var(--entColor) 70%, var(--whiteColor));
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=ent] #productContents #price .table_wrap table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--entColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--entColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single main > *[data-article=ent] #productContents #information .postCategory a:hover {
    color: var(--entColor);
    background-color: var(--whiteColor);
  }
  body.products.single main > *[data-article=ent] #productContents #price .table_wrap:has(thead th:nth-child(8)) table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--entColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--entColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=ent] #product-header {
    background-color: color-mix(in srgb, var(--entColor) 15%, var(--whiteColor));
  }
}
body.products.single main > *[data-article=cssd] #productContents > *:nth-child(even of :not(#breadcrumbs)) {
  background-color: color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=cssd] #productContents #information .postCategory a {
  border-color: var(--cssdColor);
  background-color: var(--cssdColor);
}
body.products.single main > *[data-article=cssd] #productContents .postMovie > div {
  background-color: color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=cssd] #productContents #point .case_study {
  border-color: var(--cssdColor);
}
body.products.single main > *[data-article=cssd] #productContents #point .point_list li .point_badge {
  background-color: var(--cssdColor);
}
body.products.single main > *[data-article=cssd] #productContents #guide .guide_cnt .column > div .tt_sub {
  border-color: var(--cssdColor);
}
body.products.single main > *[data-article=cssd] #productContents #price .table_wrap {
  scrollbar-color: var(--cssdColor) #e5e5e5;
}
body.products.single main > *[data-article=cssd] #productContents #price .table_wrap::-webkit-scrollbar-thumb {
  background-color: var(--cssdColor);
}
body.products.single main > *[data-article=cssd] #productContents #price .table_wrap table thead th {
  background-color: color-mix(in srgb, var(--cssdColor) 20%, var(--whiteColor));
}
body.products.single main > *[data-article=cssd] #productContents #price .table_wrap table tbody tr:nth-child(odd), body.products.single main > *[data-article=cssd] #productContents #price .table_wrap table tbody tr:nth-child(odd) .col_fixed {
  background-color: color-mix(in srgb, var(--cssdColor) 8%, var(--whiteColor));
}
body.products.single main > *[data-article=cssd] #productContents #price .table_wrap .simplebar-scrollbar::before {
  background-color: var(--cssdColor);
}
body.products.single main > *[data-article=cssd] #productContents .download_btn a {
  --downloadBtnColor:var(--cssdColor);
  --downloadBtnHoverColor:color-mix(in srgb, var(--cssdColor) 70%, var(--whiteColor));
  border-color: color-mix(in srgb, var(--cssdColor) 70%, var(--whiteColor));
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=cssd] #productContents #price .table_wrap table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single main > *[data-article=cssd] #productContents #information .postCategory a:hover {
    color: var(--cssdColor);
    background-color: var(--whiteColor);
  }
  body.products.single main > *[data-article=cssd] #productContents #price .table_wrap:has(thead th:nth-child(8)) table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=cssd] #product-header {
    background-color: color-mix(in srgb, var(--cssdColor) 15%, var(--whiteColor));
  }
}
body.products.single main > *[data-article=others] #productContents > *:nth-child(even of :not(#breadcrumbs)) {
  background-color: color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=others] #productContents #information .postCategory a {
  border-color: var(--othersColor);
  background-color: var(--othersColor);
}
body.products.single main > *[data-article=others] #productContents .postMovie > div {
  background-color: color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
}
body.products.single main > *[data-article=others] #productContents #point .case_study {
  border-color: var(--othersColor);
}
body.products.single main > *[data-article=others] #productContents #point .point_list li .point_badge {
  background-color: var(--othersColor);
}
body.products.single main > *[data-article=others] #productContents #guide .guide_cnt .column > div .tt_sub {
  border-color: var(--othersColor);
}
body.products.single main > *[data-article=others] #productContents #price .table_wrap {
  scrollbar-color: var(--othersColor) #e5e5e5;
}
body.products.single main > *[data-article=others] #productContents #price .table_wrap::-webkit-scrollbar-thumb {
  background-color: var(--othersColor);
}
body.products.single main > *[data-article=others] #productContents #price .table_wrap table thead th {
  background-color: color-mix(in srgb, var(--othersColor) 20%, var(--whiteColor));
}
body.products.single main > *[data-article=others] #productContents #price .table_wrap table tbody tr:nth-child(odd), body.products.single main > *[data-article=others] #productContents #price .table_wrap table tbody tr:nth-child(odd) .col_fixed {
  background-color: color-mix(in srgb, var(--othersColor) 8%, var(--whiteColor));
}
body.products.single main > *[data-article=others] #productContents #price .table_wrap .simplebar-scrollbar::before {
  background-color: var(--othersColor);
}
body.products.single main > *[data-article=others] #productContents .download_btn a {
  --downloadBtnColor:var(--othersColor);
  --downloadBtnHoverColor:color-mix(in srgb, var(--othersColor) 70%, var(--whiteColor));
  border-color: color-mix(in srgb, var(--othersColor) 70%, var(--whiteColor));
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=others] #productContents #price .table_wrap table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (min-width: 813px) {
  body.products.single main > *[data-article=others] #productContents #information .postCategory a:hover {
    color: var(--othersColor);
    background-color: var(--whiteColor);
  }
  body.products.single main > *[data-article=others] #productContents #price .table_wrap:has(thead th:nth-child(8)) table .col_fixed {
    -webkit-box-shadow: inset -1px 0 0 color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
            box-shadow: inset -1px 0 0 color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
  }
}
@media print, screen and (max-width: 812px) {
  body.products.single main > *[data-article=others] #product-header {
    background-color: color-mix(in srgb, var(--othersColor) 15%, var(--whiteColor));
  }
}/*# sourceMappingURL=style.css.map */
