@charset "UTF-8";
/*---------------------------------------------
フォント
---------------------------------------------*/
/* ExtraLight (200) */
@font-face {
  font-family: 'SourceHanSans';
  src: url("../fonts/SourceHanSansJP-ExtraLight.woff") format("woff"), url("../fonts/SourceHanSansJP-ExtraLight.otf") format("opentype");
  font-weight: 200;
  font-style: normal; }
/* Light (300) */
@font-face {
  font-family: 'SourceHanSans';
  src: url("../fonts/SourceHanSansJP-Light.woff") format("woff"), url("../fonts/SourceHanSansJP-Light.otf") format("opentype");
  font-weight: 300;
  font-style: normal; }
/* Normal (350) - 特殊扱い */
@font-face {
  font-family: 'SourceHanSans';
  src: url("../fonts/SourceHanSansJP-Normal.woff") format("woff"), url("../fonts/SourceHanSansJP-Normal.otf") format("opentype");
  font-weight: 350;
  font-style: normal; }
/* Regular (400) */
@font-face {
  font-family: 'SourceHanSans';
  src: url("../fonts/SourceHanSansJP-Regular.woff") format("woff"), url("../fonts/SourceHanSansJP-Regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal; }
/* Medium (500) */
@font-face {
  font-family: 'SourceHanSans';
  src: url("../fonts/SourceHanSansJP-Medium.woff") format("woff"), url("../fonts/SourceHanSansJP-Medium.otf") format("opentype");
  font-weight: 500;
  font-style: normal; }
/* Bold (700) */
@font-face {
  font-family: 'SourceHanSans';
  src: url("../fonts/SourceHanSansJP-Bold.woff") format("woff"), url("../fonts/SourceHanSansJP-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal; }
/* Heavy (900) */
@font-face {
  font-family: 'SourceHanSans';
  src: url("../fonts/SourceHanSansJP-Heavy.woff") format("woff"), url("../fonts/SourceHanSansJP-Heavy.otf") format("opentype");
  font-weight: 900;
  font-style: normal; }
/* Thin */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaThin.woff") format("woff"), url("../fonts/TextaThin.ttf") format("truetype");
  font-weight: 100;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaThintIt.woff") format("woff"), url("../fonts/TextaThintIt.ttf") format("truetype");
  font-weight: 100;
  font-style: italic; }
/* Light */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaLight.woff") format("woff"), url("../fonts/TextaLight.ttf") format("truetype");
  font-weight: 300;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaLightIt.woff") format("woff"), url("../fonts/TextaLightIt.ttf") format("truetype");
  font-weight: 300;
  font-style: italic; }
/* Regular */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaRegular.woff") format("woff"), url("../fonts/TextaRegular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaIt.woff") format("woff"), url("../fonts/TextaIt.ttf") format("truetype");
  font-weight: 400;
  font-style: italic; }
/* Book */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaBook.woff") format("woff"), url("../fonts/TextaBook.ttf") format("truetype");
  font-weight: 500;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaBookIt.woff") format("woff"), url("../fonts/TextaBookIt.ttf") format("truetype");
  font-weight: 500;
  font-style: italic; }
/* Medium */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaMedium.woff") format("woff"), url("../fonts/TextaMedium.ttf") format("truetype");
  font-weight: 600;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaMediumIt.woff") format("woff"), url("../fonts/TextaMediumIt.ttf") format("truetype");
  font-weight: 600;
  font-style: italic; }
/* Bold */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaBold.woff") format("woff"), url("../fonts/TextaBold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaBoldIt.woff") format("woff"), url("../fonts/TextaBoldIt.ttf") format("truetype");
  font-weight: 700;
  font-style: italic; }
/* Heavy */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaHeavy.woff") format("woff"), url("../fonts/TextaHeavy.ttf") format("truetype");
  font-weight: 800;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaHeavyIt.woff") format("woff"), url("../fonts/TextaHeavyIt.ttf") format("truetype");
  font-weight: 800;
  font-style: italic; }
/* Black */
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaBlack.woff") format("woff"), url("../fonts/TextaBlack.ttf") format("truetype");
  font-weight: 900;
  font-style: normal; }
@font-face {
  font-family: 'Texta';
  src: url("../fonts/TextaBlackIt.woff") format("woff"), url("../fonts/TextaBlackIt.ttf") format("truetype");
  font-weight: 900;
  font-style: italic; }
.tpl-headline__title-en {
  font-weight: 500;
  font-family: Texta, sans-serif;
  letter-spacing: .25em; }

body {
  font-family: SourceHanSans, sans-serif; }

.tpl-button {
  font-family: Texta, sans-serif; }

.tpl-footer__num {
  font-family: Texta, sans-serif;
  transform: translateY(-0.05em);
  font-style: normal;
  font-weight: 400;
  font-size: 4.8rem; }

/*---------------------------------------------
共通
---------------------------------------------*/
span.tpl-modal {
  cursor: pointer; }

body {
  overflow-x: hidden; }

.tpl-button--inverted {
  background-color: #e4dfdd; }

.mt10 {
  margin-top: 10px; }

.cap_r {
  text-align: right;
  font-size: 1.2rem; }

@media screen and (max-width: 767px) {
  .cap_r {
    font-size: 1rem; } }
.cap_l {
  text-align: left;
  font-size: 1.2rem; }

@media screen and (min-width: 768px) {
  .cap_l {
    font-size: 1rem; } }
.tpl-headline__copy {
  padding-top: 65px;
  line-height: 1.4; }

@media screen and (max-width: 767px) {
  .tpl-headline__copy > br.br_sp, .tpl-headline__copy > br.br-sp {
    display: block; } }
.tpl-headline__subcopy {
  padding-top: 3em; }

@media screen and (max-width: 767px) {
  .tpl-col .tpl-headline {
    padding-left: 0;
    padding-right: 0; } }
.mb35 {
  margin-bottom: 35px; }

@media screen and (max-width: 767px) {
  .sp_center {
    text-align: center; } }
@media screen and (max-width: 767px) {
  .tpl-col.sp_wide {
    width: 100%; } }
.bold_300 {
  font-weight: 300; }

.bold_400 {
  font-weight: 400; }

.bold_500 {
  font-weight: 500; }

.bold {
  font-weight: bold; }

.img_cap_wrap {
  position: relative; }

.img_cap {
  font-size: 0.8rem;
  position: absolute;
  bottom: 3px;
  right: 3px;
  padding: 5px;
  z-index: 1; }

.img_cap.left {
  right: auto;
  left: 3px; }

.img_cap.w {
  color: #fff; }

.img_cap.w.shadow {
  text-shadow: #333 1px 1px 2px, #333 -1px 1px 2px, #333 1px -1px 2px, #333 -1px -1px 2px; }

@media screen and (max-width: 600px) {
  .img_cap.sp_left {
    right: auto;
    left: 3px; } }
/*---------------------------------------------
共通 MV
---------------------------------------------*/
.tpl-main > .tpl-cover:first-child {
  overflow: hidden;
  /* padding: 0 60px calc(526% / 12.8);*/
  min-height: 454px; }

@media screen and (max-width: 1280px) {
  .tpl-main > .tpl-cover:first-child {
    padding: 0 60px;
    /*  height: 526px;*/ } }
@media screen and (max-width: 767px) {
  .tpl-main > .tpl-cover:first-child {
    /*  height: 452px;*/
    padding: 13vw 0; } }
@media screen and (min-width: 768px) {
  .tpl-main > .tpl-cover:first-child .tpl-headline {
    position: absolute;
    inset: 0;
    margin: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column; } }
.tpl-main > .tpl-cover:first-child .tpl-headline__subtitle-jp {
  padding-top: 0; }

.tpl-main > .tpl-cover:first-child .tpl-headline__copy {
  padding-top: 3.9vw; }

.inner-main > .tpl-cover {
  min-height: 100px; }

.inner-main > .tpl-cover .tpl-cover__bg {
  width: 100%;
  overflow: inherit; }

@media screen and (max-width: 1280px) {
  .inner-main > .tpl-cover .tpl-cover__bg {
    overflow: hidden;
    height: 526px; } }
@media screen and (max-width: 767px) {
  .inner-main > .tpl-cover .tpl-cover__bg {
    height: 452px; } }
.inner-main > .tpl-cover .tpl-cover__bg .tpl-figure {
  height: auto; }

@media screen and (max-width: 1280px) {
  .inner-main > .tpl-cover .tpl-cover__bg .tpl-figure {
    height: 526px; } }
@media screen and (max-width: 767px) {
  .inner-main > .tpl-cover .tpl-cover__bg .tpl-figure {
    height: 452px; } }
.inner-main > .tpl-cover .tpl-cover__bg .tpl-image {
  height: auto; }

@media screen and (max-width: 1280px) {
  .inner-main > .tpl-cover .tpl-cover__bg .tpl-image {
    height: 100%; } }
@media screen and (max-width: 767px) {
  .inner-main > .tpl-cover .tpl-cover__bg .tpl-image {
    height: 452px; } }
.inner-main > .tpl-cover .tpl-headline__copy {
  line-height: 2; }

/*---------------------------------------------
FOOTER
---------------------------------------------*/
.tpl-footer__num span {
  pointer-events: none;
  color: #d7d2cb;
  text-decoration: none; }

.tpl-footer__num a {
  color: #d7d2cb;
  text-decoration: none; }

footer .tpl-footer__button {
  color: #d7d2cb;
  justify-content: center;
  position: relative;
  padding-left: 0;
  height: 60px; }

footer .tpl-footer__button::after {
  position: absolute;
  left: auto;
  right: 15px;
  margin: 0; }

footer .tpl-footer__logo_wrap {
  padding: 60px 0 70px;
  display: flex;
  justify-content: center;
  grid-gap: 0 20px; }

@media screen and (max-width: 768px) {
  footer .tpl-footer__logo_wrap {
    flex-direction: column;
    grid-gap: 25px 0;
    padding: 40px 0; } }
footer .tpl-footer__logo_wrap a {
  display: inline-block; }

@media screen and (max-width: 768px) {
  footer .tpl-footer__logo_wrap a {
    margin: 0 auto; } }
footer .tpl-footer__logo_wrap a:nth-child(1) {
  width: 196px; }

@media screen and (max-width: 768px) {
  footer .tpl-footer__logo_wrap a:nth-child(1) {
    width: 186px; } }
footer .tpl-footer__logo_wrap a:nth-child(1) img {
  width: 196px; }

@media screen and (max-width: 768px) {
  footer .tpl-footer__logo_wrap a:nth-child(1) img {
    width: 186px; } }
footer .tpl-footer__logo_wrap a:nth-child(2) {
  width: 232px; }

@media screen and (max-width: 768px) {
  footer .tpl-footer__logo_wrap a:nth-child(2) {
    width: 186px;
    height: 42px; } }
footer .tpl-footer__logo_wrap a:nth-child(2) img {
  width: 232px; }

@media screen and (max-width: 768px) {
  footer .tpl-footer__logo_wrap a:nth-child(2) img {
    width: 186px;
    height: 34px; } }
footer .tpl-footer__logo_wrap a span {
  color: #fff;
  font-size: 6px;
  font-weight: bold;
  display: inline-block;
  margin-bottom: 5px;
  line-height: 1; }

footer .tpl-footer__cta .tpl-footer__button {
  max-width: 442px;
  margin: 0 auto;
  width: 100%; }

footer .tpl-footer__tel {
  gap: 50px; }

@media screen and (max-width: 768px) {
  footer .tpl-footer__cta .tpl-footer__button {
    grid-column-end: span 2; }

  footer .tpl-footer__tel {
    gap: 20px;
    padding-top: 15px; } }
footer .tpl-footer__tel .tpl-footer__info {
  max-width: 258px;
  width: 100%; }

footer .tpl-footer__button__wrap {
  /*     max-width: 442px;*/
  margin: 33px auto 0;
  max-width: 300px; }

@media screen and (max-width: 768px) {
  .txt_sp_left {
    text-align: left !important; } }
@media screen and (max-width: 768px) {
  .txt_sp_right {
    text-align: right !important; } }
@media screen and (max-width: 768px) {
  .entry_item.tpl-cover {
    min-height: 208px !important; } }
@media screen and (max-width: 768px) {
  .entry_item.tpl-cover .tpl-headline {
    text-align: center;
    margin: 0 auto; } }
@media screen and (max-width: 768px) {
  .entry_item.tpl-cover .tpl-headline__subcopy {
    text-align: center;
    font-size: 1rem; } }
.entry_item.tpl-cover .tpl-headline__subcopy .br_sp {
  display: none; }

@media screen and (max-width: 768px) {
  .entry_item.tpl-cover .tpl-headline__subcopy .br_sp {
    display: block; } }
@media screen and (max-width: 768px) {
  .entry_item.tpl-cover .tpl-button.tpl-button--small {
    margin: 0 auto; } }
.entry_item.tpl-cover .tpl-image {
  height: 100% !important; }

.entry_item.tpl-cover .tpl-figure {
  height: 100% !important; }

.entry_item {
  overflow: hidden; }

@media screen and (max-width: 768px) {
  .entry_item {
    overflow: hidden; } }
.entry_item .tpl-cover__bg {
  height: 100% !important; }

@media screen and (max-width: 768px) {
  .entry_item .tpl-cover__bg {
    height: 100% !important; } }
@media screen and (min-width: 768px) {
  .entry_item {
    min-height: 100px !important;
    height: 315px !important; } }
.entry_item .tpl-headline__subcopy {
  line-height: 2;
  padding-top: 0em !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important; }

@media screen and (min-width: 768px) {
  .entry_item .tpl-headline__subcopy {
    padding-top: 25px; } }
@media screen and (max-width: 768px) {
  .entry_item .tpl-headline__subcopy {
    font-size: 1.2rem !important; } }
@media screen and (min-width: 768px) {
  .entry_item .tpl-headline {
    padding-bottom: 0; } }
.entry_item .tpl-headline__title-jp {
  font-size: 2.2rem !important;
  margin-bottom: 1em !important; }

.entry_item .common_entry_btn:hover {
  opacity: 1; }

.entry_item:hover .common_entry_btn {
  opacity: .8; }

.sup_wrap {
  position: relative; }

.sup_wrap sup {
  position: absolute;
  top: -0.3em;
  right: -0.8em;
  font-size: 60%;
  letter-spacing: 0.1em; }

.hover_img:hover img {
  opacity: 0.8; }

.bold_500 {
  font-weight: 500; }

#siteWrap {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%; }

#siteWrap header {
  order: 1; }

#siteWrap main {
  order: 2; }

#siteWrap footer {
  order: 3; }

#siteWrap h1.h1Contents {
  position: relative;
  order: 4;
  width: 100%;
  background: #fff;
  box-sizing: border-box;
  padding: 30px 0px;
  font-size: 13px;
  text-align: center; }

@media screen and (max-width: 800px) {
  #siteWrap h1.h1Contents {
    padding: 15px 0px 25px;
    font-size: 12px;
    margin-bottom: 50px; } }
@media screen and (max-width: 600px) {
  .tpl-footer__list {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 5px 20px; } }
.read_btn.concept_detail a.color01 {
  background: #888 !important;
  color: #fff; }

/*-------------------------------------------
エントリー者様限定サイト　モーダル
-------------------------------------------*/
.entry_modal_box {
  will-change: auto;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  margin: auto;
  pointer-events: none;
  opacity: 0;
  z-index: -100; }
  .entry_modal_box::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    margin: auto;
    display: block;
    z-index: 2;
    background-color: rgba(0, 0, 0, 0.8); }
  .entry_modal_box img {
    max-width: 100%;
    width: auto;
    height: auto; }
  .entry_modal_box .entry_modal_box_close {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    grid-gap: 0 10px;
    color: #fff;
    text-align: right;
    font-family: Texta, sans-serif;
    font-size: 15px;
    line-height: 1;
    cursor: pointer;
    position: relative;
    z-index: 3; }
    .entry_modal_box .entry_modal_box_close.top {
      margin-bottom: 15px; }
    .entry_modal_box .entry_modal_box_close.bottom {
      margin-top: 15px; }
    .entry_modal_box .entry_modal_box_close img {
      width: 23px;
      line-height: 0; }
  .entry_modal_box .entry_modal_box_bg {
    margin: 0 auto;
    max-width: 1310px;
    width: calc(100% - 40px);
    padding: 100px 0 80px;
    height: 100vh;
    overflow-y: scroll;
    position: relative;
    z-index: 3; }
  .entry_modal_box .entry_modal_box_inner {
    padding: 70px 100px 90px;
    background: #fff; }
    @media screen and (max-width: 1000px) {
      .entry_modal_box .entry_modal_box_inner {
        padding: 40px; } }
    @media screen and (max-width: 860px) {
      .entry_modal_box .entry_modal_box_inner {
        padding: 40px 0 0; } }
  .entry_modal_box .entry_modal_item01 {
    display: flex;
    justify-content: center;
    align-items: center;
    grid-gap: 0 70px;
    max-width: 563px;
    margin: 0 auto 61px; }
    @media screen and (max-width: 860px) {
      .entry_modal_box .entry_modal_item01 {
        width: calc(100% - 40px);
        margin: 0 auto 40px;
        flex-direction: column;
        grid-gap: 30px; } }
    .entry_modal_box .entry_modal_item01 .txt_cnt {
      width: calc(302%/5.51); }
      @media screen and (max-width: 860px) {
        .entry_modal_box .entry_modal_item01 .txt_cnt {
          flex-direction: column;
          width: 100%; } }
    .entry_modal_box .entry_modal_item01 .img_cnt {
      width: calc(189%/5.51); }
      @media screen and (max-width: 860px) {
        .entry_modal_box .entry_modal_item01 .img_cnt {
          max-width: 189px;
          width: 50%;
          margin: 0 auto; } }
    .entry_modal_box .entry_modal_item01 .txt_box01 {
      text-align: center; }
      .entry_modal_box .entry_modal_item01 .txt_box01 .entry_ttl01 {
        position: relative;
        padding-bottom: 19px;
        margin-bottom: 23px; }
        .entry_modal_box .entry_modal_item01 .txt_box01 .entry_ttl01::after {
          content: "";
          position: absolute;
          left: 0;
          right: 0;
          bottom: 0;
          width: 22.8857px;
          height: 1px;
          margin: auto;
          background: #000; }
      .entry_modal_box .entry_modal_item01 .txt_box01 .entry_txt01 {
        font-size: 1.6rem;
        letter-spacing: 0.05em;
        margin-bottom: 2.5em; }
        @media screen and (max-width: 860px) {
          .entry_modal_box .entry_modal_item01 .txt_box01 .entry_txt01 {
            margin-bottom: 1em; } }
      .entry_modal_box .entry_modal_item01 .txt_box01 .entry_txt02 {
        color: #311a1b;
        font-size: 14px;
        line-height: 1;
        margin-bottom: 0.5em; }
      .entry_modal_box .entry_modal_item01 .txt_box01 .entry_txt03 {
        font-size: 12px;
        line-height: 2.25;
        letter-spacing: 0.04em;
        margin-bottom: 0.5em; }
      .entry_modal_box .entry_modal_item01 .txt_box01 .entry_txt04 {
        font-size: 0.8rem; }
  .entry_modal_box .vsp860 {
    display: none; }
    @media screen and (max-width: 860px) {
      .entry_modal_box .vsp860 {
        display: block; } }
  .entry_modal_box .entry_modal_item02 .entry_ttls01 {
    background: #3f2122;
    color: #fff;
    text-align: center;
    font-size: 2.5rem;
    padding: 0.7em 10px;
    height: 87.5975px; }
    @media screen and (max-width: 860px) {
      .entry_modal_box .entry_modal_item02 .entry_ttls01 {
        height: auto; } }
    .entry_modal_box .entry_modal_item02 .entry_ttls01 .entry_ttl02 {
      line-height: 0;
      max-width: 95px;
      width: calc(95%/10.75);
      margin: 0 auto calc(11%/10.75); }
      @media screen and (max-width: 860px) {
        .entry_modal_box .entry_modal_item02 .entry_ttls01 .entry_ttl02 {
          width: 100%; } }
    .entry_modal_box .entry_modal_item02 .entry_ttls01 .entry_txt05 {
      font-size: 11px;
      letter-spacing: 0.04em;
      line-height: 1; }
      @media screen and (max-width: 860px) {
        .entry_modal_box .entry_modal_item02 .entry_ttls01 .entry_txt05 {
          line-height: 1.4; } }
  .entry_modal_box .entry_modal_item02 .entry_modal_list {
    display: flex;
    flex-direction: column; }
    .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item {
      display: flex;
      align-items: center;
      padding: 35px 0; }
      @media screen and (max-width: 860px) {
        .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item {
          flex-direction: column;
          padding: 35px 10px; } }
      .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item:nth-child(2n) {
        background: #f3f1f0; }
      .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_item_ttl {
        text-align: left;
        width: 200px;
        display: flex;
        justify-content: center;
        align-items: center; }
        @media screen and (max-width: 860px) {
          .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_item_ttl {
            width: 100%;
            margin-bottom: 20px; } }
        .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_item_ttl img {
          max-width: 95px;
          width: calc(95%/2);
          margin: 0 auto; }
      .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_txts {
        width: 340px;
        display: flex;
        flex-direction: column; }
        @media screen and (max-width: 860px) {
          .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_txts {
            width: 100%; } }
        .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_txts .entry_modal_list_item_copy {
          font-size: 15.0753px;
          font-weight: 600;
          margin-bottom: 13px;
          line-height: 1; }
        .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_txts .entry_modal_list_item_txt {
          font-size: 11.3365px;
          line-height: 2.002558108763728;
          letter-spacing: 0.04em; }
        .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_list_txts .entry_modal_list_txts_cap {
          font-size: 8px; }
      .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_img_box {
        width: calc(100% - 540px);
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column; }
        @media screen and (max-width: 860px) {
          .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_img_box {
            width: 100%;
            margin-top: 2rem; } }
        .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_img_box figure {
          max-width: 149px;
          width: 100%;
          margin: auto;
          border: 1px solid #666; }
        .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_img_box a {
          max-width: 166.7178px;
          width: 100%;
          padding: 10px 15px;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #fff;
          font-size: 11.3365px;
          background-color: #3f2021;
          position: relative; }
          .entry_modal_box .entry_modal_item02 .entry_modal_list .entry_modal_list_item .entry_modal_img_box a::after {
            content: '';
            border-top: solid 1px #fff;
            border-right: solid 1px #fff;
            width: 6px;
            height: 6px;
            position: absolute;
            right: 9px;
            top: 0;
            bottom: 0;
            margin: auto;
            transform: rotate(45deg);
            z-index: 1; }
  .entry_modal_box.is-active {
    opacity: 1;
    pointer-events: all;
    z-index: 999999999999; }

body.entry_modal_box_open {
  overflow: hidden;
  z-index: 10; }

.tpl-header2 #entry_modal_btn {
  z-index: 2000000;
  cursor: pointer;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 100px;
  margin: auto;
  padding: 10px 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  color: #fff;
  font-size: 1.2rem;
  background-color: #3f2021;
  transition: all 0.75s cubic-bezier(0.19, 1, 0.22, 1);
  transform: translateY(10px); }
  @media screen and (max-width: 600px) {
    .tpl-header2 #entry_modal_btn {
      width: fit-content;
      padding: 10px;
      right: 52px;
      top: 10px;
      margin: 0;
      transform: translateY(0); } }
  .tpl-header2 #entry_modal_btn:hover {
    opacity: 0.7; }
.tpl-header2.is-fixed #entry_modal_btn {
  transform: translateY(0); }
.tpl-header2.is-active #entry_modal_btn {
  background-color: #fff;
  color: #3f2021; }

/*# sourceMappingURL=common.css.map */
