@charset "UTF-8";

/* Javascript CSS .js-
============================================================================= */

/* Pararax
----------------------------------------------------------------------------- */
:is(.page_container > *,.page_top main > *,.g-topicpath):not(.__ios-active) {
  opacity:0;
}
:is(.page_container > *,.page_top main > *,.g-topicpath).__ios-active {
  transition-duration:2s;
  transition-property: opacity;
  opacity:1;
}

/* Loop
----------------------------------------------------------------------------- */
.js-loop-A {
  --loop-duration:20s;
  overflow:hidden;
}
.js-loop-A_inner {
  display:flex;
  justify-content: flex-start;
}
.js-loop-A-item {
  flex-shrink:0;
  width:fit-content;
}
.js-loop-A.__loop-start .js-loop-A-item {
  animation:loop_A var(--loop-duration) linear infinite;
}
.js-loop-A-item img {
  max-width:initial;
  width:auto;
}
.js-loop-A-item.-img_A img {
  height:4.24rem;
}
@media (min-width:768px) {
}
@media (max-width:767px) {
  .js-loop-A {
  }
  .js-loop-A-item.-img_A img {
    height:2.12rem;
  }
}
@keyframes loop_A {
  from {
    transform:translateX(0%);
  }
  to {
    transform:translateX(-100%);
  }
}

/* Accordion
----------------------------------------------------------------------------- */
.js-accordion-button {
	cursor: pointer;
}
@media print, screen and (min-width: 641px) {
	.js-accordion-button:not(.__sp) {
		cursor: pointer;
	}
}
@media screen and (max-width: 640px) {
	.js-accordion-button:not(.__pc) {
		cursor: pointer;
	}
}
.js-accordion-target {
	overflow: hidden;
	position: relative;
}
.js-accordion-target[aria-hidden="true"] {
	height: 0;
}
.js-accordion-target[aria-hidden="false"] {
	z-index: 1;
}

/* Tab
----------------------------------------------------------------------------- */
.js-tab-button[aria-expanded="true"] {
  pointer-events: none;
}
.js-tab-group {
}
.js-tab-target {
  display:flex;
}
.js-tab-target[aria-hidden="true"] {
  display:none;
}
.js-tab-target[aria-hidden="false"] {
  opacity:1;
}
.js-tab-button {
  margin-block-start: 0 !important;
}
.js-tab-target {
  margin-block-start: 0 !important;
}
.js-tab-target_wrap {
  position:relative;
}
.js-tab-target-arrow {
  display:flex;
  justify-content: center;
  align-items: center;
  width:.40rem;
  height:.40rem;
}
.js-tab-target-arrow::after {
  content:"";
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  transform:rotate(45deg);
}
.js-tab-target-arrow.-prev::after {
  margin-inline-start:.04rem;
  border-block-end:1px solid #000;
  border-inline-start:1px solid #000;
}
.js-tab-target-arrow.-next::after {
  margin-inline-end:.04rem;
  border-block-start:1px solid #000;
  border-inline-end:1px solid #000;
}
@media (hover) {
  .js-tab-target-arrow {
    transition-duration: var(--duration-hover-A);
    transition-property: opacity;
    position:absolute;
  }
  .js-tab-target-arrow:hover {
    opacity:.6;
  }
}
@media (min-width:768px) {
  .js-tab-target-arrow {
    margin-block:auto;
    inset-block:0;
  }
  .js-tab-target-arrow.-prev {
    left:-.60rem;
  }
  .js-tab-target-arrow.-next {
    right:-.60rem;
  }
  .js-tab-target-pager {
    display:none;
  }
}
@media (max-width:767px) {
  [data-option*="arrow"] .js-tab-target_wrap {
    /* padding-block-end:.60rem; */
  }
  .js-tab-target_actions {
    display:flex;
    align-items: center;
    justify-content: center;
    gap:.20rem;
    margin-block-start:.30rem;
  }
  .js-tab-target-arrow {
    width:.18rem;
    height:.18rem;
    position:relative;
  }
  .js-tab-target-arrow.-prev {
  }
  .js-tab-target-arrow.-next {
  }
  .js-tab-target-pager {
    display:flex;
    align-items: center;
  }
  .js-tab-target-pager-item {
    display:flex;
    align-items: center;
    justify-content: center;
    width:.16rem;
    height:.16rem;
  }
  .js-tab-target-pager-item::after {
    content:"";
    display:block;
    border-radius: 50%;
    width:.06rem;
    height:.06rem;
    background-color:var(--cc-gray-C);
    transition-duration: var(--duration-hover-A);
    transition-property: background-color;
  }
  .js-tab-target-pager-item.__current::after {
    background-color:#000;
  }
}


/* Layout CSS .l-
============================================================================= */

/* Heading
----------------------------------------------------------------------------- */

/* H1 */
:where(.l-h1-A) {
}
.l-h1-A {
  display:flex;
  flex-direction: column;
  gap:.24rem;
}
.l-h1-A-ja {
  display:flex;
  align-items: center;
  gap:.16rem;
  font-size:.20rem;
  font-weight:700;
  letter-spacing: .05em;
  line-height:1;
}
.l-h1-A-ja::before {
  content:"";
  width:.30rem;
  border-block-end:1px solid;
}
.l-h1-A-en {
  font-family:var(--ff-roboto);
  font-size:.60rem;
  font-weight:500;
  letter-spacing: .05em;
  line-height:1.16;
}
@media (max-width:767px) {
  .l-h1-A {
    gap:.16rem;
  }
  .l-h1-A-ja {
    font-size:.15rem;
  }
  .l-h1-A-en {
    font-size:.43rem;
  }
}

/* H2 */
:where(.l-h2-A) {
  margin-block-end:var(--mb-F);
}
.l-h2-A {
  display:flex;
  flex-direction: column;
  gap:.20rem;
  line-height:1;
}
.l-h2-A-ja {
  display:flex;
  align-items: flex-start;
  margin-block-start:-.35em;
  gap:.16rem;
  font-size:.16rem;
  font-weight:700;
  line-height:1.7;
  letter-spacing: .15em;
}
.l-h2-A-ja::before {
  content:"";
  width:.30rem;
  margin-block-start:.85em;
  border-block-end:1px solid;
}
.l-h2-A-en {
  font-family:var(--ff-roboto);
  font-size:.50rem;
  font-weight:500;
  letter-spacing: 0;
}
@media (max-width:767px) {
  .l-h2-A {
    gap:.16rem;
  }
  .l-h2-A-ja {
    font-size:.14rem;
  }
  .l-h2-A-en {
    font-size:.40rem;
  }
}

:where(.l-h2-B) {
  margin-block-end:var(--mb-D);
  text-align: center;
}
.l-h2-B {
  font-family:var(--ff-roboto);
  font-size:.34rem;
  font-weight: 500;
  letter-spacing: .05em;
  line-height:1;
}
@media (max-width:767px) {
  .l-h2-B {
    font-size:.26rem;
  }
}

:where(.l-h2-C) {
  margin-block-end:var(--mb-G);
  text-align: center;
  align-items: center;
}
.l-h2-C {
  display:flex;
  flex-direction: column;
  gap:.12rem;
}
.l-h2-C-ja {
  order:2;
  display:flex;
  align-items: center;
  gap:.16rem;
  font-size:.16rem;
  font-weight:700;
  line-height:1;
  letter-spacing: .05em;
}
.l-h2-C-en {
  order:1;
  font-family:var(--ff-roboto);
  font-size:.50rem;
  font-weight:500;
  letter-spacing: .05em;
  line-height:1.25;
}
@media (max-width:767px) {
  .l-h2-C {
    gap:.08rem;
  }
  .l-h2-C-ja {
    font-size:.14rem;
  }
  .l-h2-C-en {
    font-size:.35rem;
  }
}

:where(.l-h2-D) {
  margin-block-end:.72rem;
}
.l-h2-D {
  font-family:var(--ff-noto-serif);
  font-weight:500;
  font-size:.34rem;
  letter-spacing: .15em;
  line-height:1.75;
}
@media (min-width:768px) {
  :where(.l-h2-D) {
    text-align: center;
  }
}
@media (max-width:767px) {
  :where(.l-h2-D) {
    margin-block-end:.32rem;
  }
  .l-h2-D {
    font-size:.24rem;
    line-height:1.9;
  }
}

:where(.l-h3-A) {
  margin-block-end:.36rem;
}
.l-h3-A {
  font-family:var(--ff-noto-serif);
  font-weight:600;
  font-size:.26rem;
  letter-spacing: .14em;
  line-height:2;
}
@media (max-width:767px) {
  :where(.l-h3-A) {
    margin-block-end:.28rem;
  }
  .l-h3-A {
    font-size:.19rem;
    line-height:1.9;
  }
}

:where(.l-h3-B) {
  margin-block-end:var(--mb-G);
}
.l-h3-B {
  display:flex;
  flex-direction: column;
  gap:.12rem;
}
.l-h3-B-ja {
  order:2;
  display:flex;
  align-items: center;
  gap:.16rem;
  font-size:.16rem;
  font-weight:700;
  line-height:1;
  letter-spacing: .05em;
}
.l-h3-B-en {
  order:1;
  font-family:var(--ff-roboto);
  font-size:.40rem;
  font-weight:500;
  letter-spacing: .05em;
  line-height:1.25;
}
@media (max-width:767px) {
  .l-h3-B {
    gap:.08rem;
  }
  .l-h3-B-ja {
    font-size:.14rem;
  }
  .l-h3-B-en {
    font-size:.35rem;
  }
}


/* Button
----------------------------------------------------------------------------- */
._t-right :is([class*="l-button"]) {
  margin-inline-start:auto;
}
._t-center :is([class*="l-button"]) {
  margin-inline:auto;
}
:is(.l-button-A,.l-button-B,.l-button-C) {
  position:relative;
}
:is(.l-button-A,.l-button-B,.l-button-C).-reverse {
  color:#fff;
}
:where(.l-button-A,.l-button-B,.l-button-C)::after {
  content:"";
  display:block;
  position:absolute;
  right:.22rem;
}
:where(.l-button-A,.l-button-B,.l-button-C):not(.-external,[target="_blank"])::after {
  border-block-start:1px solid;
  border-inline-end:1px solid;
  width:.07rem;
  height:.07rem;
  transform:rotate(45deg);
}
:where(.l-button-A,.l-button-B,.l-button-C):is(.-external,[target="_blank"])::after {
  width:.10rem;
  height:.10rem;
  background-image:url(/common/img/icon-link-external-A.svg);
  background-size:contain;
}
:is(.l-button-A,.l-button-B,.l-button-C):is(.-external,[target="_blank"]).-reverse::after {
  filter:invert(1);
}
.l-button-A.add_re > span {
	margin-left: -0.15rem;
}
.l-button-A.add_re:hover::after {
	background-image: url(/common/img/icon-link-external-A_h.svg);
}
@media (hover) {
  :is(.l-button-A) {
    transition-property:background-color,color,border-color;
    transition-duration: var(--duration-hover-A);
  }
  :is(.l-button-A):not(.-reverse):hover {
    color:#fff;
    background-color:#000;
    border-color:#000;
  }
  :is(.l-button-A):not(.-reverse):is(.-external,[target="_blank"]):hover::after {
    filter:invert();
  }
  :is(.l-button-A).-reverse:hover {
    background-color:#fff;
    border-color:#000;
    color:#000;
  }
  .l-button-B {
    transition-property:opacity;
    transition-duration: var(--duration-hover-A);
  }
  .l-button-B:hover {
    opacity:.6;
  }
  .l-button-C:hover {
    text-decoration: none;
  }
}
.l-button-A {
  display:flex;
  justify-content: center;
  align-items: center;
  border:1px solid;
  border-radius:100px;
  padding-inline:.20rem;
  width:fit-content;
  min-width:2.40rem;
  min-height:.50rem;
  letter-spacing: .05em;
  line-height:1.5;
  font-weight:700;
  overflow:hidden;
}
@media (max-width:767px) {
  :where(.l-button-A) {
    margin-inline:auto;
  }
  .l-button-A {
    padding-block:.12rem;
  }
}

.l-button-B {
  display:flex;
  align-items: center;
  border-block-end:1px solid;
  padding-inline-end:.20rem;
  min-width:1.00rem;
  min-height:.36rem;
  width:fit-content;
  font-size:var(--fs-text-C);
  font-weight:700;
}
.l-button-B::after {
  right:.04rem;
}
@media (max-width:767px) {
  :where(.l-button-B) {
    margin-inline-start:auto;
  }
  .l-button-B {
    padding-inline-end:.30rem;
    min-width:1.20rem;
  }
}

.l-button-C {
  text-decoration: underline;
}
.l-button-C::after {
  display:inline-block;
  vertical-align: .1em;
  margin-inline-start:.08rem;
  position:static;
}
@media (max-width:767px) {
  :where(.l-button-C) {
  }
}

/* Button Wrap
----------------------------------------------------------------------------- */
:where(.l-button_wrap-A) {
  margin-block-start: var(--mb-E);
}
.l-button_wrap-A {
  display:flex;
  gap:.40rem;
}
@media (min-width:768px) {
  :where(.l-button_wrap-A) {
    justify-content: center;
  }
  .l-button_wrap-A:is(._t-left,._t-pc-left) {
    justify-content: flex-start;
  }
  .l-button_wrap-A:is(._t-right,._t-pc-right) {
    justify-content: flex-end;
  }
}
@media (max-width:767px) {
  .l-button_wrap-A {
    flex-direction: column;
    align-items: center;
    gap:.20rem;
  }
  .l-button_wrap-A:is(._t-left,._t-sp-left) {
    align-items: flex-start;
  }
  .l-button_wrap-A:is(._t-right,._t-sp-right) {
    align-items: flex-end;
  }
}


/* Table
----------------------------------------------------------------------------- */


/* News List
----------------------------------------------------------------------------- */
.l-news_list-A {
}
.l-news_list-A-item {
  border-block-end:1px solid var(--cc-gray-C);
}
.l-news_list-A-item > a {
  display:flex;
  gap:.20rem;
  padding-block:.30rem;
  position:relative;
}
.l-news_list-A-item-date {
  flex-shrink: 0;
  font-size:var(--fs-text-C);
  font-family:var(--ff-roboto);
  font-weight:400;
}
.l-news_list-A-item-new {
  flex-shrink: 0;
  display:flex;
  justify-content: center;
  align-items: center;
  width:.60rem;
  height:.24rem;
  font-family:var(--ff-roboto);
  font-size:var(--fs-text-C);
  letter-spacing: .05em;
  color:#fff;
  line-height:1;
  background-color:#000;
}
.l-news_list-A-item-title {
  padding-inline-end:.30rem;
  position:relative;
}
a[href] .l-news_list-A-item-title::after {
  content:"";
  display:block;
  margin-block:auto;
  border-block-start:1px solid;
  border-inline-end:1px solid;
  width:.07rem;
  height:.07rem;
  position:absolute;
  inset-block:0;
  right:.04rem;
  transform:rotate(45deg);
}
.l-news_list-A-item-title > span {

}
@media (min-width:768px) {
  .l-news_list-A-item-date {
    width:1.00rem;
    line-height:.24rem;
  }
  .l-news_list-A-item-title {
    flex:1;
  }
  .l-news_list-A-item-title {
    font-size:.16rem;
    line-height:1.5;
  }
}
@media (max-width:767px) {
  .l-news_list-A {
  }
  .l-news_list-A-item {
    border-block-end:1px solid var(--cc-gray-C);
  }
  .l-news_list-A-item > a {
    flex-wrap:wrap;
    gap:.08rem 0;
    padding-block:.20rem;
  }
  .l-news_list-A-item-date {
    display:flex;
    align-items: center;
    width:.75rem;
    line-height:.18rem;
  }
  .l-news_list-A-item-new {
    width:.40rem;
    height:.18rem;
    font-size:.10rem;
  }
  .l-news_list-A-item-title {
    width:100%;
  }
}


/* New img icon
----------------------------------------------------------------------------- */
.l-img-icon-A {
	color: #000;
  display:flex;
  justify-content: center;
  align-items: center;
  width:.60rem;
  height:.60rem;
  border-top:1px solid;
  border-right:1px solid;
  font-family:var(--ff-roboto);
  font-size:.12rem;
  letter-spacing: .05em;
  font-weight:700;
  background-image:linear-gradient(
    -135deg,
    #fff calc(50% - 1px),
    #000 calc(50% - 1px),
    #000 calc(50%),
    transparent calc(50%)
  );
  position:absolute;
  right:0;
  top:0;
  z-index: 1;
}
.l-img-icon-A > span {
  display:block;
  margin-block-end:.20rem;
  margin-inline-start:.20rem;
  position:absolute;
  transform:rotate(45deg);
}


/* Works list
----------------------------------------------------------------------------- */
.l-works_list-A {
  display:flex;
}
.l-works_list-A-item-date {
  text-align: right;
  font-family:var(--ff-roboto);
  font-size:var(--fs-text-C);
  font-weight:400;
  line-height: 1;
}
.l-works_list-A-item-img {
  margin-block-start: .08rem;
  height:auto;
  aspect-ratio: 48/30;
}
:where(.l-works_list-A-item-img-category) {/* Base Color */
  color:#fff;
  background-color:#000;
}
.l-works_list-A-item-img-category {
  display:flex;
  justify-content: center;
  align-items: center;
  padding:.12rem;
  min-width:.92rem;
  min-height:.40rem;
  font-size:var(--fs-text-C);
  line-height:1;
  position:absolute;
  top:0;
  left:0;
}
.l-works_list-A-item-title {
  margin-block-start: .12rem;
  font-size:.16rem;
  font-weight:500;
  line-height:1.75;
}
@media (min-width:768px) {
  .l-works_list-A {
    flex-wrap:wrap;
    gap:.48rem .30rem;
  }
  .l-works_list-A-item {
    width:calc(100% / 3 - .30rem * 2 / 3);
  }
}
@media (max-width:767px) {
  .l-works_list-A {
    flex-direction: column;
    gap:.24rem;
  }
  .l-works_list-A-item-img {
    aspect-ratio: 61/42;
  }
  .l-works_list-A-item-img-category {
    padding:.04rem;
    min-width:.80rem;
    min-height:.30rem;
    font-size:var(--fs-text-A);
  }
  .l-works_list-A-item-title {
    font-size:.14rem;
    line-height:2;
  }
}


/* Lower Page Keyvisual
----------------------------------------------------------------------------- */
/* A */
:where(.l-lower_page-kv-A,.l-lower_page-kv-B,.l-lower_page-kv-C) {
  overflow:hidden;
}
:where(.l-lower_page-kv-A) {
  color:#fff;
}
.l-lower_page-kv-A {
  display:flex;
  align-items: center;
  z-index:1;
}
.l-lower_page-kv-A-bg {
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
  z-index: -1;
  pointer-events: none;
}
@media (min-width:768px) {
  .l-lower_page-kv-A {
    justify-content:center;
    height:100vh;
    min-height:7.00rem;
    margin-block-start:calc((var(--header-height) + var(--topicpath-height)) * -1);
    position:relative;
  }
}
@media (max-width:767px) {
  .l-lower_page-kv-A {
    height:calc(100svh - var(--header-height) - var(--floating_conversion-height));
    margin-block-start:calc((var(--topicpath-height)) * -1);
    position:relative;
  }
}

/* B */
:where(.l-lower_page-kv-B) {
  color:#fff;
}
.l-lower_page-kv-B {
  display:flex;
  align-items: flex-end;
  padding-block-end: .60rem;
  position:relative;
  z-index:1;
}
.l-lower_page-kv-B-bg {
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
  z-index: -1;
  pointer-events: none;
}
@media (min-width:768px) {
  .l-lower_page-kv-B {
    justify-content:center;
    height:5.00rem;
    position:relative;
  }
}
@media (max-width:767px) {
  .l-lower_page-kv-B {
    padding-block-end: var(--pd-sp-30);
    height:3.90rem;
    margin-block-start:calc((var(--topicpath-height)) * -1);
  }
}

/* C */
:where(.l-lower_page-kv-C) {
  padding-block: var(--mb-E) var(--mb-D);
}
.l-lower_page-kv-C + [class*="l-"] {
  margin-block-start:0;
}
@media (min-width:768px) {
  .l-lower_page-kv-C {
  }
}
@media (max-width:767px) {
  .l-lower_page-kv-C {
    padding-block-end: var(--mb-E);
  }
}


/* Tab Link
----------------------------------------------------------------------------- */
.l-tab_button_wrap-A {
  display:flex;
  gap:.16rem;
}
.l-tab_button_wrap-A:not(._ff-noto-sans) {
  font-family:var(--ff-roboto);
  font-size:.24rem;
  line-height: 1;
  letter-spacing: .05em;
  color:#fff;
}
.l-tab_button_wrap-A-button {
  flex:1;
}
.l-tab_button_wrap-A-button > :is(a,span) {
  display:flex;
  justify-content: center;
  align-items: center;
  min-height:.60rem;
  position:relative;
}
.l-tab_button_wrap-A-button > span {
  background-color:#000;
}
.l-tab_button_wrap-A-button > span::after {
  content:"";
  border-block-start:calc(.10rem + 1px) solid #000;
  border-inline:.08rem solid transparent;
  position:absolute;
  top:calc(100% + -1px);
}
.l-tab_button_wrap-A-button > a {
  background-color:var(--cc-gray-D);
}
@media (hover) {
  .l-tab_button_wrap-A-button > a {
    transition-property: background-color;
    transition-duration: var(--duration-hover-A);
  }
  .l-tab_button_wrap-A-button > a:hover {
    opacity:1;
    background-color:#000;
  }
}
@media (max-width:767px) {
  .l-tab_button_wrap-A {
    gap:1px;
  }
  .l-tab_button_wrap-A:not(._ff-noto-sans) {
    font-size:.14rem;
  }
  .l-tab_button_wrap-A-button {
    flex:1;
  }
  .l-tab_button_wrap-A-button > :is(a,span) {
    min-height:.50rem;
  }
}


/* 2 Column Layout
----------------------------------------------------------------------------- */
.l-2_column_list-A {
  display:flex;
  flex-direction: column;
  gap:.80rem;
}
.l-2_column_list-A-item {
  display:flex;
}
.l-2_column_list-A-item-number {
  font-size:.40rem;
  letter-spacing: .05em;
  line-height: 1;
}
.l-2_column_list-A-item_text > .l-h3-A {
  margin-block:.40rem .20rem;
  line-height:1.6;
}
.l-2_column_list-A-item-img img {
  width:100%;
}
@media (min-width:768px) {
  .l-2_column_list-A {
  }
  .l-2_column_list-A-item {
    display:flex;
    gap:.80rem;
  }
  .l-2_column_list-A-item_text {
    position:relative;
    border-block-start:1px solid var(--cc-gray-C);
    padding-block-start:.36rem;
  }
  .l-2_column_list-A-item_text::before {
    content:"";
    border-block-start:1px solid;
    width:.50rem;
    position:absolute;
    top:-1px;
  }
  .-min .l-2_column_list-A-item_text {
    padding-block-start:.28rem;
  }
  .-min .l-2_column_list-A-item_text::before {
    content:none;
  }
  .-min .l-2_column_list-A-item {
    gap:.70rem;
  }
  .-min .l-2_column_list-A-item-number {
    font-size:.34rem;
  }
  .-min .l-2_column_list-A-item_text > .l-h3-A {
    margin-block-start:.30rem;
  }
  .l-2_column_list-A-item > * {
    flex:1;
  }
}
@media (max-width:767px) {
  .l-2_column_list-A {
    gap:.50rem;
  }
  .l-2_column_list-A-item {
    flex-direction: column;
  }
  .l-2_column_list-A-item {
    position:relative;
    border-block-start:1px solid var(--cc-gray-C);
  }
  .l-2_column_list-A-item::before {
    content:"";
    border-block-start:1px solid;
    width:.50rem;
    position:absolute;
    top:-1px;
  }
  .-min .l-2_column_list-A-item::before {
    content:none;
  }
  .l-2_column_list-A-item_text {
    display:contents;
  }
  .l-2_column_list-A-item-number {
    padding-block:.24rem;
    padding-inline-start:.10rem;
    order:-1;
    font-size:.30rem;
  }
  .l-2_column_list-A-item_text > .l-h3-A {
    margin-block:.28rem .12rem;
    padding-inline:.10rem;
  }
  .l-2_column_list-A-item-description {
    padding-inline:.10rem;
  }
}


/* Page Intro
----------------------------------------------------------------------------- */
.l-intro-A {
  overflow: hidden;
}
.l-intro-A-contents {
}
:where(.l-intro-A-contents-img > img) {
  width:100%;
}
.l-intro-A-contents-description + .l-intro-A-contents-description {
  margin-block-start:1em;
}
.l-intro-A-contents-link {
  margin-block-start:.36rem;
}
@media (min-width:768px) {
  :where(.l-intro-A-contents) {
    margin-inline:auto;
    width:14.00rem;
    max-width:100%;
  }
  .l-intro-A-contents {
    display:flex;
    justify-content: space-between;
  }
  .l-intro-A-contents:not(:first-of-type) {
    margin-block-start:1.00rem;;
  }
  .l-intro-A-contents:nth-of-type(odd) {
    flex-direction: row-reverse;
    padding-inline-start:clamp((var(--pc-min-width) - 12.00rem) *.5 , (100vw - 12.00rem - var(--scrollbar-w)) * .5 , 1.00rem);
  }
  .l-intro-A-contents:nth-of-type(even) {
    padding-inline-end:clamp((var(--pc-min-width) - 12.00rem) *.5 , (100vw - 12.00rem - var(--scrollbar-w)) * .5 , 1.00rem);
  }
  :where(.l-intro-A-contents-img) {
    max-width:calc(100% - 6.00rem);
    width:7.00rem;
  }
  .l-intro-A-contents-img {
    flex-shrink: 0;
  }
  :where(.l-intro-A-contents_text) {
    width:5.20rem;
  }
  .l-intro-A-contents_text {
    margin-block-start:-.8em;
  }
  .-typeB .l-intro-A-contents-img {
    max-width:calc(100% - 6.00rem);
    width:6.60rem;
  }
  .-typeB .l-intro-A-contents_text {
    width:5.60rem;
  }
}
@media (max-width:767px) {
  .l-intro-A-contents_text {
    padding-block-start:.40rem;
  }
  .l-intro-A-contents:not(:first-of-type) {
    margin-block-start:.40rem;
  }
}


/* caution
----------------------------------------------------------------------------- */
.l-caution-A {
}
:where(.l-caution-A-item) {
}
.l-caution-A-item {
  display:flex;
}
.l-caution-A-item > .asterisk {
  flex-shrink: 0;
}


/* l-category_link_list-A
----------------------------------------------------------------------------- */
.l-category_link_list-A {
	display: flex;
	flex-wrap: wrap;
	column-gap:.50rem;
	margin-inline:auto;
	width:fit-content;
	margin-bottom: .7rem;
}
.l-category_link_list-A a {
	position: relative;
	display: block;
	padding-block: 10px;
	font-size: 0.18rem;
	text-decoration: none;
	color: var(--cc-gray-D);
}
.l-category_link_list-A a.current {
	font-weight: 700;
	color: #14141e;
}
.l-category_link_list-A a.current::after {
	content: "";
	position: absolute;
	bottom: 8px;
	left: 25px;
	right: 25px;
	border-bottom: 1px solid;
}
@media(hover) {
	.l-category_link_list-A a[href] {
		transition: color var(--duration-hover-A);
	}
	.l-category_link_list-A a[href]:hover {
		color: #14141e;
		opacity: 1;
	}
}
@media screen and (max-width: 767px) {
	.l-category_link_select-A {
		position: relative;
		margin-bottom: var(--mb-E);
	}
	.l-category_link_select-A::after {
		content: "";
		position: absolute;
		bottom: 50%;
		right: .2rem;
		width: .08rem;
		height: .08rem;
		margin-bottom: -.04rem;
		border-bottom: 1px solid #000;
		border-right: 1px solid #000;
		transform-origin: 100% 100%;
		transform: rotate(45deg);
		pointer-events: none;
	}
	.l-category_link_select-A select {
		width: 100%;
		height: .5rem;
		background-color: #fff;
		border: 1px solid #000;
		font-size: .16rem;
		font-weight: 700;
		padding: 0 15px;
	}
}

/* l-archives_pager-A
----------------------------------------------------------------------------- */
.l-archives_pager-A {
	position: relative;
	margin-top: var(--mb-D);
	text-align: center;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	font-size: .2rem;
	font-weight: 500;
	font-family: var(--ff-roboto);
}
.l-archives_pager-A > * {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: .4rem;
	height: .4rem;
	margin: .05rem .1rem;
}
.l-archives_pager-A a {
	background-color: #fff;
	border: 1px solid #000;
	color: #000;
	text-decoration: none;
}
.l-archives_pager-A .extend {
	width: auto;
	color: #000;
	margin: .05rem;
}
.l-archives_pager-A .current {
	background-color: #000;
	border: 1px solid #000;
	color: #fff;
}
.l-archives_pager-A .previouspostslink,
.l-archives_pager-A .nextpostslink {
	display: block;
	overflow: hidden;
	border: 0;
	text-align: left;
	text-indent: -9999em;
}
.l-archives_pager-A .previouspostslink::before,
.l-archives_pager-A .nextpostslink::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 50%;
	width: .14rem;
	height: .14rem;
	margin-right: -.06rem;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	transform-origin: 100% 0;
	transform: rotate(45deg);
}
.l-archives_pager-A .previouspostslink {
	transform: scaleX(-1);
}
@media (hover) {
	.l-archives_pager-A a {
		transition: background var(--duration-hover-A), color var(--duration-hover-A), opacity var(--duration-hover-A);
	}
	.l-archives_pager-A a:not(.previouspostslink):not(.nextpostslink):hover {
		background-color: #000;
		color: #fff;
	}
	.l-archives_pager-A .previouspostslink:hover,
	.l-archives_pager-A .nextpostslink:hover {
		opacity: 0.5;
	}
}
@media screen and (min-width: 768px), print {
}
@media screen and (max-width: 767px) {
	.l-archives_pager-A {
		font-size: .16rem;
	}
	.l-archives_pager-A > * {
		width: .35rem;
		height: .35rem;
		margin: .05rem .075rem;
	}
	.l-archives_pager-A .extend {
		display: none;
	}
	.l-archives_pager-A .previouspostslink::before,
	.l-archives_pager-A .nextpostslink::before {
		width: .07rem;
		height: .07rem;
		margin-right: -.03rem;
	}
}

/* l-single_pager-A
----------------------------------------------------------------------------- */
.l-single_pager-A {
	position: relative;
	margin-top: var(--mb-D);
	display: flex;
	justify-content: center;
}
.l-single_pager-A a {
	position: relative;
	display: block;
	text-decoration: none;
}
.l-single_pager-A .back a {
	position: relative;
	font-weight: 700;
	padding-left: 22px;
	background: url(../img/icon-back-archive.svg) no-repeat 0;
}
.l-single_pager-A .next {
	position: absolute;
	left: 0;
	top: 0;
}
.l-single_pager-A .next a {
	padding-left: .35rem;
}
.l-single_pager-A .next a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 0.14rem;
	height: 0.14rem;
	border-top: 1px solid #000;
	border-left: 1px solid #000;
	transform-origin: 0 0;
	transform: rotate(-45deg);
}
.l-single_pager-A .prev {
	position: absolute;
	right: 0;
	top: 0;
}
.l-single_pager-A .prev a {
	padding-right: .35rem;
}
.l-single_pager-A .prev a::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 0.14rem;
	height: 0.14rem;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	transform-origin: 100% 0;
	transform: rotate(45deg);
}
@media (hover) {
	.l-single_pager-A a:hover {
		text-decoration: underline;
	}
}
@media screen and (min-width: 768px), print {
	.l-single_pager-A .next,
	.l-single_pager-A .prev {
		max-width: 40%;
	}
	.l-single_pager-A .next a,
	.l-single_pager-A .prev a {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
}
@media screen and (max-width: 767px) {
	.l-single_pager-A .next a {
		padding-left: .2rem;
	}
	.l-single_pager-A .next a::before,
	.l-single_pager-A .prev a::before {
		width: .07rem;
		height: .07rem;
	}
	.l-single_pager-A .prev a {
		padding-right: .2rem;
	}
	.l-single_pager-A .next a span,
	.l-single_pager-A .prev a span {
		display: none;
	}
	.l-single_pager-A .next a::after,
	.l-single_pager-A .prev a::after {
		content: "　";
	}
}

/* l-entry_bottom_table
----------------------------------------------------------------------------- */
.l-entry_bottom_table {
	margin-top: var(--mb-E);
}

/* l-category-ico
----------------------------------------------------------------------------- */
.l-category-ico {
	display: inline-block;
	min-width: 1rem;
	padding: .03rem .2rem;
	margin: 0 .1rem .1rem 0;
	background-color: #000;
	border-radius: 100px;
	color: #fff;
	text-align: center;
	font-weight: 700;
	font-size: .12rem;
}
@media (hover) {
	a.l-category-ico {
		transition: opacity var(--duration-hover-A);
	}
	a.l-category-ico:hover {
		opacity: 0.6;
	}
}
@media screen and (max-width: 767px) {
	.l-category-ico {
		padding: .02rem .15rem;
		margin: 0 .05rem .05rem 0;
		font-size: .11rem;
	}
}


/* l-articl_list-A
----------------------------------------------------------------------------- */
.l-articl_list-A:not(:first-child) {
	margin-top: .7rem;
}
.l-articl_list-A-item:not(:last-child) {
	margin-bottom: .4rem;
}
.l-articl_list-A-item-ph {
	position: relative;
	overflow: hidden;
}
.l-articl_list-A-item-ph .ph img {
	object-fit: cover;
	aspect-ratio: 300 / 200;
}
.l-articl_list-A-item-ph .l-no-img {
	display: flex;
	justify-content: center;
	align-items: center;
	aspect-ratio: 300 / 200;
	background-color: #cccccc;
}
.l-articl_list-A-item-ph .l-no-img img {
	width: 70%;
}
.l-articl_list-A-item-new {
	position: absolute;
	top: 0;
	right: 0;
	height: .6rem;
	width: calc(.6rem * 1.41421356237);
	display: flex;
	justify-content: center;
	align-items: flex-end;
	padding-bottom: 0.04rem;
	background-color: #000;
	text-align: center;
	font-size: 0.12rem;
	font-weight: 700;
	line-height: 1.5;
	color: #fff;
	transform-origin: 100% 100%;
	transform: rotate(45deg);
}
.l-articl_list-A-item-content {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding-top: 0.2rem;
}
.l-articl_list-A-item-date {
	margin-bottom: .1rem;
	margin-left: auto;
	font-family: var(--ff-roboto);
	font-size: 0.14rem;
	line-height: 1.2;
}
.l-articl_list-A-item-title {
	position: relative;
	width: 100%;
	margin-top: 0.15rem;
	font-weight: 500;
}
.l-articl_list-A-item-excerpt {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
@media screen and (min-width: 768px), print {
	.l-articl_list-A-item a {
		display: flex;
		align-items: flex-start;
	}
	.l-articl_list-A-item-ph {
		width: 3rem;
		margin-right: 0.6rem;
		flex-shrink: 0;
	}
	.l-articl_list-A-item-content {
		flex-grow: 1;
	}
	.l-articl_list-A-item-title {
		margin-bottom: 0.15rem;
		padding-bottom: 0.15rem;
		padding-right: 0.1rem;
		border-bottom: 1px solid;
		font-size: 0.18rem;
		line-height: 1.5;
	}
	a[href] .l-articl_list-A-item-title::after {
		content: "";
		position: absolute;
		right: 0;
		top: calc(50% - 0.15rem / 2);
		width: 0.07rem;
		height: 0.07rem;
		border-top: 1px solid;
		border-right: 1px solid;
		transform-origin: 100% 0;
		transform: rotate(45deg);
	}
}
@media screen and (max-width: 767px) {
	.l-articl_list-A:not(:first-child) {
		margin-top: .4rem;
	}
	.l-articl_list-A-item a {
		position: relative;
		display: block;
	}
	.l-articl_list-A-item-new {
		height: .5rem;
		width: calc(.5rem * 1.41421356237);
		font-size: 0.1rem;
	}
	.l-articl_list-A-item-date {
		margin-bottom: .05rem;
		font-size: 0.12rem;
	}
	.l-articl_list-A-item-title {
		width: 100%;
		margin-top: 0.1rem;
	}
	.l-articl_list-A-item-excerpt {
		display: none;
	}
}


.l-event_list-A-item-info {
	line-height: 1.7;
}
.l-event_list-A-item-info li {
	margin-top: 0.2em;
}
.l-event_list-A-item-info :is(.-date,.-place) {
	position: relative;
	padding-inline-start: 0.2rem;
}

.l-event_list-A-item-info :is(.-date,.-place)::before {
	content: "";
	position: absolute;
	width: .16rem;
	height: .16rem;
	top: .2em;
	left: 0;
}
.l-event_list-A-item-info .-date::before {
	background-image:url(/common/img/icon-calendar-A.svg);
}
.l-event_list-A-item-info .-place::before {
	background-image:url(/common/img/icon-place-A.svg);
}
@media screen and (min-width: 768px), print {
	.l-event_list-A .l-articl_list-A-item a {
		display: block;
		position: relative;
		padding-left: 3.6rem;
		min-height: 2rem;
	}
	.l-event_list-A .l-articl_list-A-item-ph {
		position: absolute;
		top: 0;
		left: 0;
		width: 3rem;
	}
	.l-event_list-A .l-articl_list-A-item-content {
		padding-top: 0.05rem;
	}
}
@media screen and (max-width: 767px) {
	.l-event_list-A {
		margin-top: 0.5rem;
	}
	.l-event_list-A a {
		display: flex;
		flex-wrap: wrap;
	}
	.l-event_list-A .l-articl_list-A-item {
		padding-bottom: .4rem;
		border-bottom: 1px solid #cccccc;
	}
	.l-event_list-A .l-articl_list-A-item-ph {
		width: 1.3rem;
	}
	.l-event_list-A .l-articl_list-A-item-ph .ph img,
	.l-event_list-A .l-articl_list-A-item-ph .l-no-img {
		aspect-ratio: 260 / 230;
	}
	.l-event_list-A .l-articl_list-A-item-content {
		display: flex;
		flex-direction: column;
		align-items: start;
		width: calc(100% - 1.6rem);
		margin-left: auto;
		padding-top: 0;
	}
	.l-event_list-A .l-articl_list-A-item-title {
		overflow: hidden;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		margin-top: 0.05rem;
		font-size: 0.13rem;
		line-height: calc(50 / 26);
	}
	.l-event_list-A .l-articl_list-A-item-date {
		order: 3;
		margin: .1rem 0 0 auto;
	}
	.l-event_list-A-item-info {
		width: 100%;
		margin-top: 0.15rem;
	}
	.l-event_list-A-item-info li {
		margin-top: 0.4em;
	}
}

/* l-article-detail
----------------------------------------------------------------------------- */
.l-article-detail-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: var(--mb-G);
}
.l-article-detail-header time {
	margin-bottom: .1rem;
	margin-left: auto;
	font-family: var(--ff-roboto);
	font-size: 0.14rem;
	line-height: 1.2;
}
.l-article-detail-header h1 {
	margin-top: .2rem;
	width: 100%;
	font-size: 0.33rem;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.l-article-detail-header time {
		margin-bottom: .05rem;
		font-size: 0.12rem;
	}
	.l-article-detail-header h1 {
		margin-top: .1rem;
		font-size: 0.18rem;
	}
}
.l-article-detail-image {
	margin-bottom: var(--mb-G);
}

.l-event-detail-main {
	margin-bottom: var(--mb-E);
}
@media screen and (min-width: 768px), print {
	.l-event-detail-main {
		font-size: 0.16rem;
	}
	.l-event-detail-main .l-event_list-A-item-info :is(.-date,.-place) {
		padding-inline-start: 0.25rem;
	}
	.l-event-detail-main .l-event_list-A-item-info :is(.-date,.-place)::before {
		top: .35em;
	}
}


.l-works-detail-header {
	margin-bottom: .3rem;
}
.l-works-detail-image {
	margin-bottom: 0.2rem;
}
.l-works-detail-header .works_cats {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.l-works-detail-header .works_cats .type {
	min-width: .92rem;
	margin: 0 0.08rem 0 0;
	padding: 0.2em 1em;
	text-align: center;
	border: 1px solid;
	font-size: 0.14rem;
	line-height: 1.6;
	background-color: #000;
	color: #fff;
}
.l-works-detail-header time {
	font-family: var(--ff-roboto);
	font-weight: 400;
}
.l-works-detail-header h1 {
	padding: 0.1rem 0;
	border-bottom: 1px solid #000;
	font-size: 0.28rem;
	line-height: 1.7;
}

.l-works-detail-info {
	margin-bottom: var(--mb-E);
	font-size: 0.16rem;
}
.l-works-detail-info table {
	width: 100%;
	line-height: 1.7;
}
.l-works-detail-info table tr > * {
	padding: 0.7em 0;
	border-bottom: 1px solid var(--cc-gray-D);
	vertical-align: top;
}
.l-works-detail-info table tr th {
	text-align: left;
	width: 12em;
}
.l-works-detail-info .features dl + dl {
	margin-top: .3rem;
}
.l-works-detail-info .features dt {
	font-weight: 700;
}
.l-works-detail-info .features ul {
	display: flex;
	flex-wrap: wrap;
	font-size: .14rem;
}
.l-works-detail-info .features ul li {
	width: 50%;
	position: relative;
	margin-top: 0.5em;
	padding-left: 1em;
}
.l-works-detail-info .features ul li:only-child {
	width: 100%;
}
.l-works-detail-info .features ul li::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}
.l-works-detail-info .features ul li a {
	text-decoration: underline;
}
@media(hover) {
	.l-works-detail-info .features ul li a:hover {
		text-decoration: none;
	}
}
@media screen and (min-width: 768px), print {
	.l-works-detail-info {
		display: flex;
	}
	.l-works-detail-info.-jcsb {
		justify-content: space-between;
	}
	.l-works-detail-info .table {
		width: calc(570 / 1200 * 100%);
	}
	.l-works-detail-info .table:only-child {
		width: 100%;
	}
	.l-works-detail-info .features {
		width: calc(540 / 1200 * 100%);
		margin-left: auto;
	}
}
@media screen and (max-width: 767px) {
	.l-works-detail-header {
		margin-bottom: .2rem;
	}
	.l-works-detail-image {
		margin-inline: calc(var(--pd-sp-30) * -.5);
	}
	.l-works-detail-header .works_cats li {
		min-width: .68rem;
		margin: 0 0.05rem 0.05rem 0;
		font-size: 0.11rem;
	}
	.l-works-detail-header time {
		font-size: 0.13rem;
	}
	.l-works-detail-header h1 {
		padding: 0.1rem 0 .2rem;
		font-size: 0.2rem;
		line-height: 1.8;
	}

	.l-works-detail-info {
		font-size: 0.14rem;
	}
	.l-works-detail-info table tr th {
		width: 50%;
	}
	.l-works-detail-info .features {
		margin-top: .7em;
	}
	.l-works-detail-info .features dl + dl {
		margin-top: .2rem;
	}
	.l-works-detail-info .features ul {
		font-size: .13rem;
	}
	.l-works-detail-info .features ul li {
		padding-right: 1em;
	}
}



/* Works list
----------------------------------------------------------------------------- */
.l-works_list-B {
  display:flex;
}
.l-works_list-B a {
  display:block;
}
.l-works_list-B-item-date {
  text-align: right;
  font-family:var(--ff-roboto);
  font-size:var(--fs-text-C);
  font-weight:400;
  line-height: 1;
}
.l-works_list-B-item-img {
  margin-block-start: .08rem;
  margin-block-end: .12rem;
  height:auto;
  aspect-ratio: 48/30;
}
:where(.l-works_list-B-item-img-category) {/* Base Color */
  color:#fff;
  background-color:#000;
}
.l-works_list-B-item-img-category {
  display:flex;
  justify-content: center;
  align-items: center;
  padding:.12rem;
  min-width:.92rem;
  min-height:.40rem;
  font-size:var(--fs-text-C);
  line-height:1;
  position:absolute;
  top:0;
  left:0;
}
.l-works_list-B-item-plan {
  font-size:.16rem;
  line-height:1.75;
}
.l-works_list-B-item-title {
	border-bottom: 1px solid;
	padding-bottom: 1em;
	font-size:.16rem;
	font-weight:500;
	line-height:1.75;
}
.l-works_list-B-item-title:last-child {
	padding-bottom: 0;
}
.l-works_list-B-item-title.-no_border {
	border-bottom:0;
}
.l-works_list-B-item-title-wrap {
	display: flex;
	flex-direction: row-reverse;
}
.l-works_list-B-item-title-wrap .l-works_list-B-item-planned-type {
	position: relative;
	flex-shrink: 0;
	padding-left: 1.5em;
	margin-left: 1.5em;
}
.l-works_list-B-item-title-wrap .l-works_list-B-item-planned-type::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.4em;
	bottom: 0.4em;
	border-left: 1px solid;
}
.l-works_list-B-item-title-wrap .l-works_list-B-item-title {
	flex-grow: 1;
}
.l-works_list-B-item-features {
	display: flex;
	flex-wrap: wrap;
	padding-top: 0.2rem;
	font-size: 0.14rem;
	line-height: 1.6;
}
.l-works_list-B-item-features li:not(:last-child)::after {
	content: "／";
	margin: 0 .4em;
}
@media screen and (min-width: 768px), print {
	.l-works_list-B {
		flex-wrap:wrap;
		gap:.48rem .30rem;
	}
	.l-works_list-B-item {
		width:calc(100% / 3 - .30rem * 2 / 3);
	}
}
@media screen and (max-width: 767px) {
	.l-works_list-B {
		flex-direction: column;
		gap:.3rem;
	}
	.l-works_list-B-item-img {
		aspect-ratio: 61/42;
	}
	.l-works_list-B-item-img-category {
		padding:.04rem;
		min-width:.80rem;
		min-height:.30rem;
		font-size:var(--fs-text-A);
	}
	.l-works_list-B-item-plan {
		margin-inline: .1rem;
		font-size:.14rem;
		line-height:2;
	}
	.l-works_list-B-item-title {
		margin-inline: .1rem;
		padding-bottom: 0.8em;
		font-size:.14rem;
		line-height:2;
	}
	.l-works_list-B-item-title-wrap .l-works_list-B-item-planned-type {
		padding-left: 1em;
		margin-left: 1em;
	}
	.l-works_list-B-item-features {
		margin-inline: .1rem;
		padding-top: 0.1rem;
		font-size: 0.12rem;
		line-height: 1.6;
	}
	.l-works_list-B-item-features li:not(:last-child)::after {
		margin-top: 0.05rem;
	}
}
.l-works_other-work {
	margin-top: var(--mb-A);
}


/* l-35story-popular_posts
----------------------------------------------------------------------------- */
.l-35story-popular_posts {
	margin-top: var(--mb-A);
}
.l-35story-popular_posts-title {
	font-size: .18rem;
	line-height: 1.16;
	letter-spacing: .05em;
}
.l-35story-popular_posts-title .en {
	display: block;
	margin-bottom: .2rem;
	font-family: var(--ff-roboto);
	font-weight: 500;
	font-size: .3rem;
}
.l-35story-popular_posts-list a {
	display: flex;
	align-items: start;
	position: relative;
}
.l-35story-popular_posts-list .ph {
	flex-shrink: 0;
	width: 1.5rem;
	margin-right: 0.2rem;
}
.l-35story-popular_posts-list .ph:not(.l-no-img) img {
	width: 100%;
	object-fit: cover;
	aspect-ratio: 150 / 100;
}
.l-35story-popular_posts-list .l-no-img {
	display: flex;
	justify-content: center;
	align-items: center;
	aspect-ratio: 150 / 100;
	background-color: #cccccc;
}
.l-35story-popular_posts-list .l-no-img img {
	width: 70%;
}
.l-35story-popular_posts-list h3 {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-weight: 400;
	margin-top: -0.5em;
	font-size: 0.14rem;
	line-height: 1.9;
}
.l-35story-popular_posts-list time {
	position: absolute;
	right: 0;
	bottom: 0;
	font-family: var(--ff-roboto);
	font-weight: 400;
	text-align: right;
	line-height: 1;
}
@media screen and (min-width: 768px), print {
	.l-35story-popular_posts {
		display: flex;
	}
	.l-35story-popular_posts-list {
		width: calc(990 / 1200 * 100%);
		margin-left: auto;
		display: flex;
		flex-wrap: wrap;
		gap: .4rem .6rem;
	}
	.l-35story-popular_posts-list > * {
		width: calc(100% / 3 - .6rem * 2 / 3);
	}
}
@media screen and (max-width: 767px) {
	.l-35story-popular_posts-title {
		font-size: .16rem;
	}
	.l-35story-popular_posts-title .en {
		display: inline;
		margin-bottom: 0;
		margin-right: 0.5em;
		font-size: .25rem;
	}
	.l-35story-popular_posts-list > * {
		margin-top: 0.3rem;
	}
	.l-35story-popular_posts-list .ph {
		width: 1.3rem;
		margin-right: 0.3rem;
	}
	.l-35story-popular_posts-list h3 {
		-webkit-line-clamp: 2;
		margin-top: 0;
		font-size: 0.13rem;
	}
	.l-35story-popular_posts-list time {
		font-size: 0.11rem;
		line-height: 1.8;
	}
}


/* staff-list
----------------------------------------------------------------------------- */
.l-staff_list-A {
	margin-bottom: var(--mb-A);
}
.l-staff_list-A > section {
	margin-bottom: var(--mb-C);
}
.l-staff_list-A-title {
	margin-bottom: .4rem;
	font-size: .18rem;
	line-height: 1.16;
	letter-spacing: .05em;
}
.l-staff_list-A-title .en {
	display: block;
	margin-bottom: .2rem;
	font-family: var(--ff-roboto);
	font-weight: 500;
	font-size: .3rem;
}
.l-staff_list-A-executive-title {
	margin-bottom: .5rem;
	text-align: center;
}
.l-staff_list-A-executive-title h2 {
	margin-bottom: .2rem;
	font-size: .26rem;
	line-height: 1.8;
	letter-spacing: .1em;
}
.l-staff_list-A-list {
	display: flex;
	flex-wrap: wrap;
}
.l-staff_list-A-list a {
	position: relative;
	display: block;
}
.l-staff_list-A-list a img {
	width: 100%;
	aspect-ratio: 370 / 238;
	object-fit: cover;
}
/* .l-staff_list-A-list a .box {
	position: absolute;
	left: -.1rem;
	bottom: .2rem;
	padding: .18rem .2rem .2rem;
	min-width: 2.8rem;
	background-color: #000;
	color: #fff;
	font-size: 0.22rem;
	line-height: 1.16;
} */
.l-staff_list-A-list a .box {
	position: relative;
	min-width: 2.8rem;
	font-size: 0.22rem;
	line-height: 1.16;
}
.l-staff_list-A-list a .box .post {
	display: block;
	margin-top: 0.8em;
	font-size: 0.12rem;
	font-weight: 400;
}
@media screen and (min-width: 768px), print {
	.l-staff_list-A-executive-title {
		margin-top: var(--mb-A);
	}
	.l-staff_list-A-list {
		gap: .45rem;
	}
	.l-staff_list-A-list-item {
		width: calc(100% / 3 - .45rem * 2 / 3);
	}
	.l-staff_list-A-list a img {
		margin-bottom: .2rem;
	}
}
@media screen and (max-width: 767px) {
	.l-staff_list-A > section {
		margin-bottom: .6rem;
	}
	.l-staff_list-A-title {
		margin-bottom: .2rem;
		font-size: .16rem;
	}
	.l-staff_list-A-title .en {
		margin-bottom: .1rem;
		font-size: .25rem;
		line-height: calc(64 / 50);
	}
	.l-staff_list-A-executive-title {
		margin-bottom: .35rem;
		text-align: left;
	}
	.l-staff_list-A-executive-title h2 {
		margin-bottom: .15rem;
		font-size: .2rem;
		text-align: center;
	}
	.l-staff_list-A-list {
		gap: .15rem;
	}
	.l-staff_list-A-list-item {
		width: calc(100% / 2 - .15rem / 2);
	}
	/* .l-staff_list-A-list a .box {
		left: 0;
		right: .1rem;
		bottom: .1rem;
		padding: .07rem .1rem .1rem;
		min-width: 0;
		font-size: 0.12rem;
	} */
	.l-staff_list-A-list a .box {
		min-width: 0;
		font-size: 0.12rem;
	}
	.l-staff_list-A-list a .box .post {
		margin-top: 0.6em;
		font-size: 0.1rem;
		line-height: 1.5;
	}
	.l-staff_list-A-list a img {
		margin-bottom: .1rem;
	}
}

/* staff-detail
----------------------------------------------------------------------------- */
.l-lower_page-kv-C.-staff-detail {
	position: relative;
	margin-bottom: var(--mb-D);
}
.l-staff-detail-message > section {
	margin-bottom: var(--mb-G);
}
@media screen and (min-width: 768px), print {
	.l-lower_page-kv-C.-staff-detail.-has-ph {
		position: relative;
		display: flex;
		align-items: center;
		height: 5.4rem;
	}
	.l-lower_page-kv-C.-staff-detail.-has-ph .ph {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		z-index: -1;
	}
	.l-lower_page-kv-C.-staff-detail.-has-ph .ph img {
		position: absolute;
		top: 0;
		right: 0;
		width: 8.4rem;
		height: 5.4rem;
		object-fit: cover;
	}
}
@media screen and (max-width: 767px) {
	.l-lower_page-kv-C.-staff-detail .l-h1-A-ja {
		font-size: .14rem;
	}
	.l-lower_page-kv-C.-staff-detail .l-h1-A-en {
		font-size: .4rem;
	}
	.l-lower_page-kv-C.-staff-detail.-has-ph {
		padding-block-end: calc(540 / 870 * 100vw - .2rem * 1.16);
	}
	.l-lower_page-kv-C.-staff-detail.-has-ph .ph {
		position: absolute;
		bottom:0;
		left: 0;
		right: 0;
		z-index: -1;
	}
	.l-lower_page-kv-C.-staff-detail.-has-ph .ph img {
		width: 100vw;
		aspect-ratio: 870 / 540;
		object-fit: cover;
	}
	.l-staff-detail-message > section {
		margin-bottom: var(--mb-E);
	}
}

/* l-works_narrow_nav
----------------------------------------------------------------------------- */
.l-works_narrow_nav {
	position: relative;
	padding: 0.24rem;
	border: 1px solid #000;
}
.l-works_narrow_nav .works_type {
	display: flex;
	justify-content: center;
}
.l-works_narrow_nav .works_type label {
	display: block;
	position: relative;
}
.l-works_narrow_nav .works_type label > input {
	position: absolute;
	visibility: hidden;
}
.l-works_narrow_nav .works_type label > input + span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 2.53rem;
	/*width: 2.2rem;*/
	height: 0.5rem;
	background-color: #b2b2b2;
	color: #fff;
	font-size: 0.16rem;
	transition: background var(--duration-hover-A);
}
.l-works_narrow_nav .works_type label > input:checked + span,
.l-works_narrow_nav .works_type label > input.active + span {
	background-color: #000;
}
.l-works_narrow_nav .works_type .link_target_blank > a {
	display: block;
    position: relative;
}
.l-works_narrow_nav .works_type .link_target_blank > a span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 2.53rem;
	height: 0.5rem;
	font-size: 0.16rem;
	transition: background var(--duration-hover-A);
	font-weight: 500;
	color: #000;
	border: 2px solid #000;
}

.l-works_narrow_nav.btn_add .works_type .link_target_blank > a span {
	border: 2px solid #b2b2b2;
	color: #b2b2b2;
}

.l-works_narrow_nav.btn_add .works_type .link_target_blank > a::after {
	filter: invert(0.6);
}

.l-works_narrow_nav .works_type .link_target_blank > a::after {
	width:.10rem;
	height:.10rem;
	background-image:url(/common/img/icon-link-external-A.svg);
	background-size:contain;
	content: "";
    display: block;
    position: absolute;
    right: .22rem;
	top: 0;
	bottom: 0;
	margin: auto;
}

.l-works_narrow_nav .works_narrow_detail {
	position: relative;
	overflow: hidden;
	height: 0;
	transition: height .4s;
	font-size: 0.16rem;
}
.l-works_narrow_nav .works_narrow_detail.opend {
	transition: none;
	height: auto;
}
.l-works_narrow_nav .works_narrow_detail > * {
	padding: .2rem 0 0;
}
.l-works_narrow_nav .works_narrow_detail select {
	padding: 0 40px 0 1em;
	background: #fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAUCAYAAADPym6aAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDYuMC1jMDAyIDc5LjE2NDM1MiwgMjAyMC8wMS8zMC0xNTo1MDozOCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6REY4QjQ4RTRBRjc3MTFFQUFBQUQ5RUZEQ0IxODA3RTkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6REY4QjQ4RTNBRjc3MTFFQUFBQUQ5RUZEQ0IxODA3RTkiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NzcxOUMwMEM0QkFCMTFFQTgwNzZGNzJFNEFBQkRFRDgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzcxOUMwMEQ0QkFCMTFFQTgwNzZGNzJFNEFBQkRFRDgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7I7BWeAAAA6UlEQVR42mL8//8/w3AATAzDBIx6ZLABFnSB5ORkGFMJiJ8D8XcyzdYC4utA/H/u3LkDFiOaQHwUiNcDMScZ5joD8WkgngbEjAOVtJSBeB8QSwCxOxmeAXliExBzAXEGEE8cKI+AktMVJD4pnkH2BAj8AuIDA+WRb0DsD8R7SPQMNk9EAvG6gSy1SPXMgHqCUPEL88xuAp4ZcE8QU4+APBOAxzODwhPEVoi4PLNvsHiClJodm2csBosnSG2iYPMMCPweaE+Q09ZC98yvweAJchuNMM9sBeIoIF47GBqNjKMdq1GP0AYABBgANtdG3naEDO8AAAAASUVORK5CYII=) no-repeat 100%;
	-webkit-background-size: 25px;
	background-size: 25px;
	border: 1px solid #000;
	border-radius: 0;
}
.l-works_narrow_nav .works_narrow_detail ul {
	display: flex;
	flex-wrap: wrap;
	gap: .08rem 0;
}
.l-works_narrow_nav .works_narrow_detail .hide {
	display: none;
}
.l-works_narrow_nav .works_narrow_detail li {
	width: 25%;
}
.l-works_narrow_nav .works_narrow_detail label {
	display: block;
	position: relative;
	padding-left: 0.3rem;
}
.l-works_narrow_nav .works_narrow_detail label input {
	position: absolute;
	visibility: hidden;
}
.l-works_narrow_nav .works_narrow_detail label .check {
	position: absolute;
	top: 0.65em;
	left: 0;
	width: 14px;
	height: 14px;
	border: 1px solid #000;
}
.l-works_narrow_nav .works_narrow_detail label input:checked + .check {
	background-color: #000;
}
.l-works_narrow_nav .works_narrow_detail .btn {
	position: relative;
	margin-top: 0.2rem;
	text-align: center;
}
.l-works_narrow_nav .works_narrow_detail .btn button {
	width: 2.4rem;
	height: 0.5rem;
	border: 1px solid #000;
	border-radius: 100px;
	color: #000;
	font-size: 0.14rem;
	font-weight: 700;
}
.l-works_narrow_nav .works_narrow_detail .btn .reset {
	margin-top: 0.1rem;
	font-size: .14rem;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.l-works_narrow_nav .works_narrow_detail .btn .reset a {
	text-decoration: underline;
}
.l-works_narrow_nav .more_open {
	pointer-events: none;
	opacity: 0;
	font-size: 0.16rem;
}
.l-works_narrow_nav .more_open.show {
	transition: opacity .2s;
	pointer-events: auto;
	opacity: 1;
}
.l-works_narrow_nav .more_open a {
	display: flex;
	justify-content: center;
	align-items: center;
}
.l-works_narrow_nav .more_open.hide > a {
	transition: opacity .2s;
	pointer-events: none;
	opacity: .2;
}
.l-works_narrow_nav .more_open span {
	display: inline-block;
	position: relative;
	padding-right: 0.4rem;
}
.l-works_narrow_nav .more_open span::before,
.l-works_narrow_nav .more_open span::after {
	content: "";
	position: absolute;
	top: 50%;
	margin-top: -1px;
	right: 0;
	width: 0.22rem;
	border-top: 2px solid #000;
}
.l-works_narrow_nav .more_open span::after {
	transform: rotate(90deg);
	transition: transform .3s;
}
.l-works_narrow_nav .open + .more_open span::after {
	transform: rotate(0);
}
@media screen and (min-width: 768px), print {
	.l-works_narrow_nav {
		margin: 0 .5rem .8rem;
	}
	.l-works_narrow_nav .works_type li + li {
		margin-left: 0.14rem;
	}
	.l-works_narrow_nav .works_narrow_detail dl {
		display: flex;
		align-items: center;
		padding: 0.15rem 0;
		border-top: 1px solid #000;
	}
	.l-works_narrow_nav .works_narrow_detail dl.-first {
		border-top: 0;
	}
	.l-works_narrow_nav .works_narrow_detail dt {
		width: 7em;
	}
	.l-works_narrow_nav .works_narrow_detail dd {
		width: calc(100% - 7em);
	}
	.l-works_narrow_nav .more_open {
		position: absolute;
		right: 0.24rem;
		top: 0.24rem;
	}
	.l-works_narrow_nav .more_open a {
		height: 0.5rem;
	}
}
@media screen and (max-width: 767px) {
	.l-works_narrow_nav {
		margin: 0 calc(var(--pd-sp-30) * -.5) .35rem;
		padding: 0;
	}
	.l-works_narrow_nav .works_type {
		justify-content: space-between;
		padding: 0.15rem;
		flex-wrap: wrap;
	}
	.l-works_narrow_nav .works_type li {
		/*width: calc(33% - .15rem / 2);*/
		width: calc(50% - .1rem / 2);
	}
	.l-works_narrow_nav .works_type li:nth-child(n+3) {
		margin-top: 0.1rem;
	}
	.l-works_narrow_nav .works_type label > input + span {
		width: auto;
		font-size: 0.14rem;
	}
	.l-works_narrow_nav .works_type .link_target_blank {
	}
	.l-works_narrow_nav .works_type .link_target_blank > a span {
		width: auto;
		font-size: 0.14rem;
		padding-right: 0.1rem;
		border: 1px solid #000;
	}
	.l-works_narrow_nav.btn_add .works_type .link_target_blank > a span {
		border: 1px solid #b2b2b2;
	}
	.l-works_narrow_nav .works_type .link_target_blank > a::after {
		right: 0.17rem;
	}
	.l-works_narrow_nav .works_type .lh_type02 label > input + span {
		line-height: 1.6;
		text-align: center;
	}
	.l-works_narrow_nav .works_narrow_detail {
		font-size: 0.16rem;
		line-height: 1.3;
	}
	.l-works_narrow_nav .works_narrow_detail > * {
		padding: 0 0.14rem 0.14rem;
	}
	.l-works_narrow_nav .works_narrow_detail dl {
		margin-top: .2rem;
	}
	.l-works_narrow_nav .works_narrow_detail dl.-first {
		margin-top: 0;
	}
	.l-works_narrow_nav .works_narrow_detail dt {
		margin-bottom: .1rem;
		padding-bottom: 0.03rem;
		font-size: 0.14rem;
		font-weight: 700;
		border-bottom: 1px solid #000;
	}
	.l-works_narrow_nav .works_narrow_detail select {
		padding: .5em 30px .5em 1em;
		font-size: .16rem;
	}
	.l-works_narrow_nav .works_narrow_detail ul {
		gap: .1rem 0;
	}
	.l-works_narrow_nav .works_narrow_detail li {
		width: 50%;
	}
	.l-works_narrow_nav .works_narrow_detail label {
		padding-left: 0.25rem;
		padding-right: 1em;
	}
	.l-works_narrow_nav .works_narrow_detail label .check {
		top: 0.25em;
	}
	.l-works_narrow_nav .works_narrow_detail .btn {
		margin-top: 0.4rem;
	}
	.l-works_narrow_nav .works_narrow_detail .btn .reset {
		margin-top: 0.1rem;
		position: static;
		transform: none;
		font-size: 0.12rem;
	}


	.l-works_narrow_nav .more_open {
		border-top: 1px solid #000;
		font-size: 0.13rem;
		display: none;
	}
	.l-works_narrow_nav .more_open.show {
		display: block;
	}
	.l-works_narrow_nav .more_open.hide {
		display: none;
	}
	.l-works_narrow_nav .more_open a {
		display: block;
		padding: 5px;
		text-align: center;
	}
	.l-works_narrow_nav .more_open span {
		padding-right: 0.2rem;
	}
	.l-works_narrow_nav .more_open span::before,
	.l-works_narrow_nav .more_open span::after {
		width: 0.125rem;
	}
}


#worksItems {
	position: relative;
}
#worksItems.loading,
.l-works_narrow_nav.loading {
	pointer-events: none;
}
#worksItems.loading::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	background-color: rgba(255,255,255,.8);
	z-index: 2;
}
#worksItems.loading::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 100px;
	width: 40px;
	height: 40px;
	margin: -20px 0 0 -20px;
	border-top: 6px solid rgba(0, 0, 0, 0.2);
	border-right: 6px solid rgba(0, 0, 0, 0.2);
	border-bottom: 6px solid rgba(0, 0, 0, 0.2);
	border-left: 6px solid #000;
	border-radius: 100%;
	transform: translateZ(0);
	-webkit-animation: loading 1.1s infinite linear;
	animation: loading 1.1s infinite linear;
	z-index: 3;
}
#worksItems > * {
	transition: opacity .5s;
}
#worksItems.hidden > * {
	transition: none;
	opacity: 0;
}
@-webkit-keyframes loading {
	0% {-webkit-transform: rotate(0deg);}
	100% {-webkit-transform: rotate(360deg);}
}
@keyframes loading {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}

.no-result {
	width: 100%;
	text-align: center;
	font-size: 0.16rem;
}