@charset "UTF-8";

/*  top 
--------------------------------------------- */
.home .header-logo{ display: none;}
.is-fixed.home .header-logo{ display: block;}

/*  top mv
--------------------------------------------- */
.mv {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100svh;
  isolation: isolate;
  background: var(--white-color);
}
.mv-img-container {
  width: 100%;
  height: 100%;
  height: 100svh;
  /* position: absolute; */
  inset: 0;
  z-index: 0;
}
.mv-img-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.mv-bg-container{
  position: absolute;
  bottom: -1px;
  left: -2%;
  z-index: 1;
  width: 104vw;
  max-width: 104%;
}
.mv-bg-container img{
  width: 100%;
  vertical-align: bottom;
}
.mv-logo-container{
  position: absolute;
  bottom: 4.0rem;
  right: 10%;
  z-index: 2;
  width: 40.0rem;
  text-align: center;
  color: var(--main-color);
  font-size: var(--fs-22);
}
.mv-logo-container img{
  width: 100%;
}
.mv-txt-container{
  position: absolute;
  z-index: 1;
}
@media  only screen and (min-width: 1200px){
  .mv-txt-container{
    top: 12%;
    left: 10%;
  }
}
.mv-ttl{
  color: var(--white-color);
  font-weight: 400;
}
.mv-ttl h1{
  writing-mode: vertical-rl;
}
.mv-ttl h1 span{
  display: table;
  font-size: var(--fs-26);
  padding: 1.0rem 0.2rem;
  position: relative;
  letter-spacing: 0.05em;
  line-height: 1.5em;
}
.mv-ttl h1 span::before {
  content: '';
  background-image: url('/assets/img/top/mv-grd.svg');
  background-size: cover;
  opacity: 0.5;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.mv-ttl h1 span:nth-child(2){
  margin-right: 1.0rem;
}
@media  only screen and (max-width: 1199px){
  .mv {
    height: 100%;
    min-height: 80svh;
  }
  .mv-img-container {
    width: 100%;
    height: 100%;
    min-height: 80svh;
  }
  .mv-img-inner{
    height: 100%;
    min-height: 80svh;
  }
  .mv-img-item img {
    height: 100%;
    min-height: 80svh;
  }
  .mv-logo-container{
    bottom: 2.0rem;
    right: 6%;
    width: 30.0rem;
    font-size: var(--fs-18);
  }
  .mv-ttl h1 span{
    font-size: var(--fs-22);
  }
}
@media  only screen and (min-width: 768px){
  .mv-txt-container{
    top: 10%;
    left: 6%;
  }
}
@media  only screen and (max-width: 767px){
  .mv {
    height: 100%;
    min-height: 100%;
    position: relative;
  }
  .mv-img-container {
    width: 100%;
    height: 100%;
    min-height: 100%;
  }
  .mv-img-inner{
    height: 100%;
    min-height: 100%;
  }
  .mv-img-item img {
    height: 100%;
    min-height: 100%;
  }
  .mv-logo-container{
    bottom: 0;
    right: 6%;
    width: 48vw;
    font-size: 2.4vw;
  }
  .mv-logo-container .mincho{
    margin-top: 0.5rem;
  }
  .mv-txt-container{
    top: 14%;
    right: 10%;
    width: 10vw;
  }
  @supports (-webkit-touch-callout: none){
    .mv-txt-container{
      right: 15%;
    }
  }
  .mv-ttl h1 span{
    font-size: 3.733vw;
    letter-spacing: 0.05em;
  }
  .mv-ttl h1 span{
    padding: 1.6vw 0;
  }
  .mv-ttl h1 span:nth-child(2){
    margin-right: 1.6vw;
  }
}

/*  top-crosstalk
--------------------------------------------- */
.flex-block {
  display: flex;
  justify-content: space-between;
  gap: 4%;
}
.top-crosstalk .line-ttl:after{
  border-bottom: 1px solid #000;
  content: "";
  display: block;
  padding-top: var(--mg-30);
  width: 6.0rem; 
  margin: 0 auto;
}
.top-crosstalk .ttl-wrapper{
  margin-top: var(--mg-40);
}
.top-crosstalk .ttl-wrapper .main-ttl img{
  max-width: 25.0rem;
}
.top-crosstalk .flex-block .ttl-btn{
  width: 36%;
}
.top-crosstalk .flex-block .article-wrapper{
  width: 60%;
}
.top-crosstalk .article-block{
  padding-top: var(--mg-20);
}
.top-crosstalk .article-ttl{
  font-size: var(--fs-24);
}
.top-crosstalk .article-catfav{
  justify-content: flex-start;
  gap: 1.5rem;
}
.top-crosstalk .article-txt{
  padding-top: var(--mg-5);
}
@media  only screen and (max-width: 1199px){
  .top-crosstalk .line-ttl:after{
    width: 5vw; 
  }
  .top-crosstalk .ttl-wrapper .main-ttl img{
    max-width: 20.833vw;
  }
  .top-crosstalk .article-ttl{
    font-size: var(--fs-20);
  }
  .top-crosstalk .button-round a{
    padding: 1.5rem 0;
    min-width: 21.0rem;
    max-width: 21.0rem;
  }
}
@media  only screen and (max-width: 767px){
  .flex-block {
    flex-wrap: wrap;
    gap: 0;
  }
  .top-crosstalk .line-ttl:after{
    display: none;
  }
  .top-crosstalk .ttl-wrapper{
    margin-top: 0;
  }
  .top-crosstalk .ttl-wrapper .main-ttl img{
    max-width: 33.333vw;
  }
  .top-crosstalk .ttl-wrapper .main-ttl.m-t30{
    margin-top: 2.0rem;
  }
  .top-crosstalk .flex-block .ttl-btn,
  .top-crosstalk .flex-block .article-wrapper{
    width: 100%;
  }
  .top-crosstalk .article-ttl{
    font-size: var(--fs-16);
  }
  .top-crosstalk .article-catfav{
    justify-content: space-between;
    gap: 0;
  }
  .top-crosstalk .button-round a{
    padding: 1.6rem 0;
    min-width: max-content;
    max-width: 26.0rem;
  }
}

/*  top-vineline
--------------------------------------------- */
@media  only screen and (max-width: 767px){
  .top-vineline .article-list03{
    grid-template-columns: repeat(1, 1fr);
  }
  .top-vineline .article-list {
    gap: 5.0rem 4%;
  }
  .top-vineline .article-item a{
    display: flex;
    align-items: flex-start;
    gap: 4%;
  }
  .top-vineline .article-item .article-img{
    width: 46%;
    height: fit-content;
  }
  .top-vineline .article-item .article-block{
    width: 50%;
    padding-top: 0;
  }
  .top-vineline .article-item .article-ttl{
    padding-top: 0.6rem;
  }
}

/*  top-knowledge
--------------------------------------------- */
.top-knowledge{
  background: url(/assets/img/common/bg-grid.svg) center / cover repeat;
}
.top-knowledge .flex-block .ttl-btn{
  width: 32%;
}
.top-knowledge .flex-block .main-ttl .en{
  display: block;
}
.top-knowledge .flex-block .main-ttl .en:nth-child(2){
  margin-top: -2.0rem;
}
.top-knowledge .flex-block .article-wrapper{
  width: 64%;
}
.top-knowledge .button-wrapper .button-round a{
  margin-left: unset;
  margin-right: auto;
}
.top-knowledge .article-item a{
  display: flex;
  align-items: center;
  gap: 4%;
}
.top-knowledge .article-block{
  padding-top: 0;
}
.top-knowledge .article-img{
  width: 48%;
}
.top-knowledge .article-block{
  width: 48%;
}
.top-knowledge .article-sidelist .article-item:not(:first-child){
  margin-top: 4.0rem;
}
@media  only screen and (max-width: 1199px){
  .top-knowledge .main-ttl .en{ 
    font-size: 5.2rem;
  }
  .top-knowledge .main-ttl .jp{
    font-size: 1.5rem;
  }
  .top-knowledge .button-round a{
    padding: 1.5rem 0;
    min-width: 21.0rem;
    max-width: 21.0rem;
  }
  .top-knowledge .article-item a{
    align-items: flex-start;
  }
  .top-knowledge .article-img{
    width: 46%;
  }
  .top-knowledge .article-block{
    width: 50%;
  }
}
@media  only screen and (max-width: 767px){
  .top-knowledge .main-ttl .en{
    font-size: min(10.667vw, 6.4rem);;
  }
  .top-knowledge .main-ttl .jp{
    font-size: 1.4rem;
  }
  .top-knowledge .ttl-wrapper{
    text-align: center;
  }
  .top-knowledge .main-ttl{
    display: flex;
    gap: 1.0rem;
    align-items: flex-end;
    justify-content: center;
  }
  .top-knowledge .flex-block .ttl-btn,
  .top-knowledge .flex-block .article-wrapper{
    width: 100%;
  }
  .top-knowledge .button-wrapper .button-round a{
    margin-left: auto;
  }
}

/*  top-report
--------------------------------------------- */
.top-report .section-inner{
  background: var(--bg-maindark-color);
}
.top-report-slide .main-ttl{
  position: absolute;
  bottom: 11.8rem;
  left: -8.0rem;
  z-index: 3;
  display: flex;
  gap: 1.0rem;
  flex-wrap: wrap;
  justify-content: center;
}
.top-report-slide .main-ttl img{
  height: 26.0rem;
}
.top-report-slide .main-ttl h2{
  writing-mode: vertical-rl;
  letter-spacing: 0.2em;
}
.top-report-slide .left-mask {
  position: absolute;
  top: 0;
  left: 0;
  width: calc((100vw - 120.0rem) / 2); /* 画面幅から中央幅を引いて半分 */
  height: 100%;
  background: var(--bg-maindark-color);
  z-index: 2;
  pointer-events: none; /* クリックを通す */
}
.top-report-slide {
  position: relative;
  overflow: hidden;
}
.top-report-slide .l-inner{
  position: relative;
  box-sizing: content-box;
  max-width: 120.0rem;
  max-width: 108.0rem;
  margin: 0 auto;
  padding-inline: max(4.0rem);
  padding-right: 12.0rem;
}
.top-report-slide .top-report-container {
  overflow: visible;
  padding-top: 5.0rem;
}
.top-report-slide .top-report-inner{
  align-items: stretch;
}
.top-report-slide .top-report-item {
  width: 32rem;
  height: auto;
  background: var(--white-color);
  border: 1px solid var(--main-color);
  border-radius: 32rem 32rem 0 0;
}
.top-report-slide .top-report-item a{
  padding: 1.5rem;
  display: block;
}
.top-report-slide .top-report-item:last-child{
  margin-right: 0 !important;
}
.top-report-slide .top-report-item-inner {
  /* overflow: hidden; */
}
.top-report-slide .swiper-wrapper{
  justify-content: flex-start !important;
  margin-right: 50px;
}
.top-report-slide .swiper-slide-active{
  color: #333;
  background: var(--white-color);
  transform: scale(1.09);
  transform-origin: bottom left;
  margin-right: 7rem !important;
  transition: 0.3s ease-in-out;
}
.top-report-slide .swiper-slide-active .article-ttl{
  padding-top: 1.2rem !important;
}
.top-report-slide .swiper-slide-active .article-subtxt{
  padding-top: 0.5rem;
}
.top-report-img{
  position: relative;
  overflow: hidden;
  aspect-ratio: 8 / 10;
  border-radius: 32rem 32rem 0 0;
}
.top-report-img img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s ease-in-out;
}
.top-report-img .article-key{
  position: absolute;
  bottom: 1.5rem;
  right: 1.5rem;
  width: 3.0rem;
  height: 3.0rem;
}
.top-report-slide .swiper-slide-active .top-report-img{
  aspect-ratio: 8 / 10.3;
}
@media (hover: hover) and (pointer: fine) {
  .top-report-item a:hover{ transition: 0.3s ease-in-out;}
  .top-report-item a:hover .top-report-img img { transform: scale(1.1);}
  .top-report-item a:hover .top-report-img .article-key img{ transform: unset;}
}
.top-report-item .top-report-block .article-ttl{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
.top-report-slide .swiper-controller {
  display: flex;
  gap: 2.0rem;
  align-items: center;
  justify-content: flex-start;
  margin-top: 6.0rem;
}
.top-report-slide .swiper-button-disabled {
  pointer-events: none;
  opacity: 0.5;
}
.top-report-slide .swiper-button-prev,
.top-report-slide .swiper-button-next {
  position: relative;
  width: 5.6rem;
  height: 5.6rem;
  border: 1px solid var(--white-color);
  border-radius: 5.6rem;
  transition: 0.3s ease-in-out;
  flex-shrink: 0;
  margin: 0;
}
.top-report-slide .swiper-button-prev svg,
.top-report-slide .swiper-button-next svg{
  display: none;
}
.top-report-slide .swiper-button-prev:before,
.top-report-slide .swiper-button-next:before{
  content: "";
  background: url(/assets/img/common/slide-btn-prev.svg) center / cover no-repeat;
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(5319%) hue-rotate(185deg) brightness(107%) contrast(98%);
  display: inline-block;
  width: 1.5rem;
  height: 0.9rem;
  transition: 0.3s ease-in-out;
}
.top-report-slide .swiper-button-next:before{
  background: url(/assets/img/common/slide-btn-next.svg) center / cover no-repeat;
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(5319%) hue-rotate(185deg) brightness(107%) contrast(98%);
}
.top-report-slide .button-round{
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.top-report-slide .button-round.btn-white a{
  background: unset;
  border: 1px solid var(--white-color);
}
@media (hover: hover) and (pointer: fine) {
  .top-report-slide .button-round.btn-white a:hover{
    background: var(--main-color-hover);
    border: 1px solid var(--main-color-hover);
  }
}
@media (hover: hover) and (pointer: fine) {
  .top-report-slide .swiper-button-prev:hover,
  .top-report-slide .swiper-button-next:hover{
    background: var(--main-color-hover);
    border: 1px solid var(--main-color-hover);
    transition: 0.3s ease-in-out;
  }
  .top-report-slide .swiper-button-prev:hover:before,
  .top-report-slide .swiper-button-next:hover:before{
    filter: brightness(0) saturate(100%) invert(99%) sepia(1%) saturate(4%) hue-rotate(329deg) brightness(102%) contrast(103%);
    transition: 0.3s ease-in-out;
  }
}
@media  only screen and (max-width: 1379px){
  .top-report-slide .main-ttl{
    left: -6.0rem;
  }
  .top-report-slide .l-inner{
    max-width: 80%;
    padding-right: unset;
  }
  .top-report-slide .left-mask{
    width: calc((100vw - 80%) / 2);
  }
}
@media  only screen and (max-width: 1199px){
  .top-report-img .article-key{
    bottom: 1.0rem;
    right: 1.0rem;
    width: 2.5rem;
    height: 2.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .top-report-slide .l-inner{
    max-width: 92%;
    padding-inline: 0;
  }
  .top-report-slide .left-mask{
    width: calc((100vw - 92%) / 2);
  }
  .top-report-slide .main-ttl{
    position: unset;
    width: 100%;
    text-align: center;
    gap: 0;
  }
  .top-report-slide .main-ttl h2{
    writing-mode: unset;
    margin-top: 0;
    letter-spacing: unset;
  }
  .top-report-slide .top-report-container{
    margin-top: 4.0rem;
    padding-top: 5vw;
  }
  .top-report-slide .top-report-item {
    width: 50vw;
  }
  .top-report-slide .top-report-item a{
    padding: 2.6vw;
  }
  .top-report-slide .swiper-wrapper{
    margin-right: 10vw;
  }
  .top-report-slide .swiper-slide-active{
    margin-right: 10vw !important;
  }
  .top-report-slide .swiper-slide-active .article-ttl{
    font-size: var(--fs-15);
    padding-top: 0.5rem !important;
  }
  .top-report-slide .swiper-slide-active .article-subtxt{
    padding-top: 0.3rem;
  }
  .top-report-img .article-key{
    bottom: 0.5rem;
    right: 0.5rem;
    width: 2.0rem;
    height: 2.0rem;
  }
  .top-report-slide .swiper-controller {
    justify-content: center;
    margin-top: 3.0rem;
  }
  .top-report-slide .button-round{
    position: unset;
    transform: unset;
    margin-top: 3.0rem;
  }
  .top-report-slide .swiper-button-prev,
  .top-report-slide .swiper-button-next {
    width: min(10.667vw, 4.8rem);
    height: min(10.667vw, 4.8rem);
    border-radius: min(10.667vw, 4.8rem);
  }
  .top-report-slide .swiper-button-prev:before,
  .top-report-slide .swiper-button-next:before{    
    width: min(3.2vw, 1.4rem);;
    height: min(1.6vw, 0.8rem);;
  }
}

/*  top-about
--------------------------------------------- */
.top-about{
  overflow-x: hidden;
}
.top-about .section-inner-max{
  padding-bottom: 12.0rem;
}
.top-about .section-inner-max{
  position: relative;
}
.top-about-container .top-about-inner {
  display: flex;
  align-items: center;
  gap: 8.0rem;
  margin-left: calc(50% - 50vw);
}
.top-about-container .img-wrapper img {
  width: 100%;
  max-width: 72.5rem;
  text-align: right;
  object-fit: cover;
}
.top-about-container .img-wrapper {
  flex-grow: 2;
  flex-shrink: 1;
  flex-basis: 50.0rem;
  position: relative;
  text-align: right;
}
.top-about-container .ttltxt-wrapper {
  flex-grow: 1;
  flex-shrink: 1;
  max-width: 45%;
  padding-right: 8.0rem;
  position: relative;
}
.top-about-container .ttltxt-wrapper .main-ttl span{
  display: block;
}
.top-about-container .ttltxt-wrapper .mid-txt{
  font-size: var(--fs-17);
  line-height: 2.5em;
  padding-top: 4.0rem;
}
.top-about-container .ttltxt-wrapper .about-ttl01{
  width: 15.0rem;
  margin-left: -4.0rem;
}
.top-about-container .ttltxt-wrapper .about-ttl02{
  width: 40.0rem;
  margin-top: 2.0rem;
}
.top-about-container .img-wrapper .flower-img01 {
  position: absolute;
  right: -6.0rem;
  bottom: -8.0rem;
  width: 18.0rem;
}
.top-about .about-img02{
  position: absolute;
  right: 10vw;
  top: 6vw;
  width: 13vw;
  max-width: 20.0rem;
}
.top-about .about-img03{
  position: absolute;
  right: 0.0rem;
  bottom: 14vw;
  width: 18vw;
  max-width: 34.0rem;
}
@media  only screen and (max-width: 1279px){
  .top-about-container .ttltxt-wrapper{
    max-width: 54%;
  }
  .top-about-container .ttltxt-wrapper {
    padding-right: min(15vw, 15rem);
  }
  .top-about-container .top-about-inner{
    gap: 4vw;
  }
  .top-about-container .ttltxt-wrapper .mid-txt{
    font-size: max(1.3vw, 1.4rem);
    padding-top: 0;
  }
  .top-about-container .ttltxt-wrapper .about-ttl01{
    width: 12vw;
    margin-left: -1vw;
  }
  .top-about-container .ttltxt-wrapper .about-ttl02{
    width: 31vw;
  }
  .top-about-container .img-wrapper .flower-img01{
    right: -4vw;
    bottom: -6vw;
    width: 12vw;
  }
}
@media only screen and (max-width: 767px) {  
  .top-about .section-inner-max{
    padding-top: 2.0rem;
    padding-bottom: 4.0rem;
  }
  .top-about-container .top-about-inner {
    flex-wrap: wrap;
    flex-direction: column-reverse;
    gap: 4.0rem;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
  .top-about-container .ttltxt-wrapper{
    width: 100%;
    max-width: 84%;
    padding-right: 0;
  }
  .top-about-container .ttltxt-wrapper .mid-txt{
    font-size: var(--fs-14);
    line-height: 2.2em;
  }
  .top-about-container .ttltxt-wrapper .about-ttl01{
    width: 22vw;
    margin-left: -4%;
  }
  .top-about-container .ttltxt-wrapper .about-ttl02{
    width: 54vw;
  }
  .top-about-container .ttl-wrapper{
    margin-bottom: 2.5rem;
  }
  .top-about-container .img-about-sp{
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
  .top-about-container .img-wrapper {
    flex-basis: auto;
  }
  .top-about-container .img-wrapper img{
    width: 100%;
    max-width: 100%;
  }
}

/*  top-bible
--------------------------------------------- */
.top-bible-container{
  padding: 5.0rem 0;
}
.double-line {
  position: relative;
}
.double-line::before,
.double-line::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #BEBEBE;
}
.double-line::before {
  top: 0;
  box-shadow: 0 5px 0 #BEBEBE;
}
.double-line::after {
  bottom: 0;
  box-shadow: 0 -5px 0 #BEBEBE;
}
.top-bible-flex{
  display: flex;
  justify-content: flex-start;
  gap: 5%;
}
.top-bible-container .img-wrapper{
  width: 30%;
}
.top-bible-container .ttltxt-wrapper{
  width: 65%;
}
.top-bible-container .img-wrapper .min-txt{
  padding-top: 1.0rem;
  font-size: var(--fs-13);
  font-weight: var(--fw-400);
  line-height: 1.4em;
}
.band-ttl{
  display: inline-block;
  background: var(--main-color);
  color: var(--white-color);
  font-size: var(--fs-18);
  padding: 0.3rem 3.0rem;
}
.top-bible-container .ttltxt-wrapper .main-ttl{
  padding-top: 0.5rem;
}
.top-bible-container .ttltxt-wrapper .main-ttl .jp{
  font-size: var(--fs-22);
  font-weight: var(--fw-500);
  color: var(--main-color);
}
.top-bible-container .ttltxt-wrapper .min-txt{
  padding-top: 1.5rem;
  font-size: var(--fs-14);
  font-weight: var(--fw-400);
  line-height: 1.6em;
}
.top-bible-container .ttltxt-wrapper .normal-txt{
  padding-top: 1.5rem;
  font-size: var(--fs-15);
  font-weight: var(--fw-400);
  line-height: 1.8em;
}
@media  only screen and (max-width: 767px){
  .top-bible .section-inner-min{
    padding-bottom: 6.0rem;
  }
  .top-bible-flex{
    flex-wrap: wrap;
    gap: 2.0rem;
  }
  .top-bible-container .img-wrapper{
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  .top-bible-container .img-wrapper img{
    min-width: 22.0rem;
    width: 45%;
    margin: 0 auto;
  }
  .top-bible-container .img-wrapper .min-txt{
    font-size: var(--fs-12);
  }
  .top-bible-container .ttltxt-wrapper{
    width: 100%;
    text-align: center;
  }
  .top-bible-container .ttltxt-wrapper .main-ttl,
  .top-bible-container .ttltxt-wrapper .min-txt,
  .top-bible-container .ttltxt-wrapper .normal-txt{
    text-align: left;
  }
  .top-bible-container .ttltxt-wrapper .band-ttl{
    padding: 0.3rem 2.0rem;
    font-size: var(--fs-16);
  }
  .top-bible-container .ttltxt-wrapper .main-ttl .jp{ font-size: var(--fs-18);}
  .top-bible-container .ttltxt-wrapper .min-txt{ font-size: var(--fs-12);}
  .top-bible-container .ttltxt-wrapper .normal-txt{ font-size: var(--fs-14);}

  .top-bible-container .ttltxt-wrapper .t-r.min-txt{ text-align: right;}
}

/*  top-digital pamphlet
--------------------------------------------- */
.digipamph-wrapper{
  max-width: 70.0rem;
  margin: 0 auto;
}
.digipamph-wrapper-link{
  background: var(--bg-maindark-color);
  border: 1px solid var(--bg-maindark-color);
  border-radius: 1.0rem;
  padding: 3.0rem 5.0rem;
  display: block;
}
.digipamph-wrapper .flex-block{
  align-items: center;
}
.digipamph-wrapper .sub-ttl .en{
  color: var(--white-color);
}
.digipamph-wrapper .sub-ttl .jp{
  color: var(--white-color);
  font-size: var(--fs-14);
  font-weight: var(--fw-400);
}
.digipamph-wrapper h2{
  padding-top: 2.0rem;
}
.digipamph-wrapper .img-wrapper{
  width: 14.0rem;
}
.digipamph-wrapper .sub-ttl{
  position: relative;
}
.digipamph-wrapper .sub-ttl .en{
  position: relative;
  z-index: 1;
}
.digipamph-wrapper .sub-ttl .ont-txt{
  position: absolute;
  top: -1.5rem;
  right: 0;
  width: 18.0rem;
  mix-blend-mode: multiply;
}
.digipamph-wrapper  .button-txt{
  position: relative;
  display: inline-block; 
  font-size: var(--fs-14);
  font-weight: var(--fw-600);
  transition: 0.3s ease-in-out;
  padding-right: var(--mg-40);
}
.digipamph-wrapper  .button-txt .link-arrow:before {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 2.4rem;
  height: 2.4rem;
  background: var(--main-color);
  border-radius: 999px;
  color: var(--white-color);
}
.digipamph-wrapper  .button-txt .link-arrow:after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  right: 0.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10px;
  height: 8px;
  background: url(/assets/img/common/icon_arrowlink-wht.svg) no-repeat center / contain;
  transition: none; 
  animation: none; 
  pointer-events: none;
}
.digipamph-wrapper .button-txt{
  color: var(--white-color);
}
.digipamph-wrapper .button-txt .link-arrow:before{
  background: var(--white-color);
  color: var(--main-color);
}
.digipamph-wrapper .button-txt .link-arrow:after{
  filter: brightness(0) saturate(100%) invert(15%) sepia(57%) saturate(3246%) hue-rotate(274deg) brightness(91%) contrast(99%);
}
@media (hover: hover) and (pointer: fine) {
  .digipamph-wrapper a:hover{ background: #864C9F;}
  .digipamph-wrapper a:hover .button-txt .link-arrow::after{ animation: arrowSlide 0.3s ease-in-out forwards; }
}
@media  only screen and (max-width: 767px){
  .digipamph-wrapper{
    max-width: 100%;
    position: relative;
  }
  .digipamph-wrapper-link{
    border: unset;
    background: unset;
    padding: 3.0rem 0;
  }
  .digipamph-wrapper .bg-cl-sp{
    position: absolute;
    background: var(--bg-maindark-color);
    border-radius: 0.7rem;
    width: 100%;
    height: 40%;
    z-index: -1;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .digipamph-wrapper .flex-block .ttl-btn{
    width: 100%;
  }
  .digipamph-wrapper .img-wrapper{
    width: 32vw;
    min-width: 18.0rem;
    margin: 2.0rem auto 0;
  }
  .digipamph-wrapper .sub-ttl{
    text-align: center;
    width: 100%;
  }
  .digipamph-wrapper .sub-ttl .jp{
    color: var(--black-color);
  }
  .digipamph-wrapper .sub-ttl .ont-txt{
    top: 0;
    width: 32vw;
    max-width: 20.0rem;
  }
  .digipamph-wrapper .button-wrapper-min{
    text-align: right;
    margin-top: 0;
    margin-right: -4%;
  }
  .digipamph-wrapper .button-txt{
    color: var(--main-color);
    padding-right: 0;
  }
  .digipamph-wrapper .button-txt .link-arrow:before{
    background: var(--main-color);
    color: var(--white-color);
  }
  .digipamph-wrapper .button-txt .link-arrow:after{
    filter: unset;
  }
  @media (hover: hover) and (pointer: fine) {
    .digipamph-wrapper a:hover{ background: unset;}
    .digipamph-wrapper .button-txt .link-arrow:hover::before{ background: var(--main-color-hover);}
    .digipamph-wrapper .button-txt .link-arrow:hover::after{ animation: arrowSlide 0.3s ease-in-out forwards; }
  }
}

/*  top info & book
--------------------------------------------- */
.top-info-book{ display: flex;}
.top-info,
.top-book{ width: 50%;}
.top-info .ttl-wrapper,
.top-book .ttl-wrapper{ text-align: center;}
@media  only screen and (max-width: 1199px){
  .top-info-book{ flex-wrap: wrap;}
  .top-info,.top-book{ width: 100%;}
}

/*  top info
--------------------------------------------- */
.top-info-list{
  width: 70%;
  max-width: 48.0rem;
  margin: 0 auto;
}
.top-info-item a{
  display: block; 
  border-bottom: 1px solid #CBCBCB;
  padding: 2.0rem 0 1.5rem;
}
.top-info-time{
  color: #888;
}
.top-info-time .subkey{
  margin-left: 1.0rem;
}
.top-info-ttl{
  color: #333;
  font-weight: var(--fw-500);
  margin-top: 0.8rem;
}
@media (hover: hover) and (pointer: fine) {
  .top-info-item a:hover .top-info-ttl{ color: var(--main-color);}
}
.top-info .button-wrapper .button-txt.t-r{
  margin-right: 4.0rem;
}
.top-info .section-inner-min{
  padding-bottom: 5.0rem;
}
@media screen and (max-width: 1199px) {
  .top-info .section-inner-min{
    padding-bottom: 0;
  }
  .top-info-list{
    width: 92%;
    max-width: 100%;
  }
  .top-info-item:first-child a{
    padding-top: 0;
  }
  .top-info-time{
    font-size: var(--fs-15);
  }
  .top-info-ttl{
    margin-top: 0.5rem;
    font-size: var(--fs-15);
  }
  .top-info .button-wrapper{
    margin-top: 4.0rem;
  }
  .top-info .button-wrapper .button-txt.t-r{
    margin-right: 4%;
  }
}
@media screen and (max-width: 767px) {
  .top-info-time{ font-size: var(--fs-13);}
  .top-info-ttl{ font-size: var(--fs-14);}
}

/*  top book
--------------------------------------------- */
@media screen and (min-width: 768px) {
  .top-book{ border-left: 1px solid #E3E3E3;}
}
.top-book .button-wrapper-min .button-txt.t-r{
  margin-right: 4.0rem;
}
.top-book .section-inner-min{
  padding-bottom: 5.0rem;
}
.top-book-slide {
  position: relative;
  width: 100%;
}
.top-book-container {
  overflow: hidden;
  position: relative;
}
.top-book-inner {
  width: 100%;
  height: auto;
}
.top-book-item {
  width: 100%;
  height: 100%;
  text-align: center;
  border-top: 1px solid #E3E3E3;
  border-bottom: 1px solid #E3E3E3;
  display: flex; 
  flex-direction: column; 
  justify-content: center;
}
.top-book-item.swiper-slide-active{
  border-left: 1px solid #E3E3E3;
  border-right: 1px solid #E3E3E3;
}
.top-book-img {
  max-width: 18.0rem;
  height: 18.0rem;
  display: flex; 
  align-items: center; 
  justify-content: center; 
  margin: 4rem auto; 
}
.top-book-img img {
  width: unset;
  max-width: 100%; 
  max-height: 100%; 
  object-fit: contain; 
  box-shadow: 5px 5px 0px 0px rgba(107, 27, 126, 1);
  transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
  .top-book-item a:hover .top-book-img img{ box-shadow: 5px 5px 0px 0px rgba(158, 119, 175, 1); transition: 0.3s ease-in-out;}
}
.top-book-block {
  display: none;
}
.top-book-ttl{
  font-weight: var(--fw-600);
}
.top-book-txt{
  padding-top: var(--mg-5);
  font-size: var(--fs-14);
}
.top-book-bottom {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-top: 2.0rem;
}
.top-book-description {
  width: 64%;
  min-height: 11.0rem;
  text-align: center;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  display: flex; 
  flex-direction: column; 
  justify-content: flex-start;
  align-items: center;
  box-sizing: border-box;
}
.top-book-bottom .swiper-button-prev,
.top-book-bottom .swiper-button-next {
  position: absolute !important;
  top: 2.5rem !important;
  transform: none !important;
  z-index: 2 !important;
  width: 4.0rem;
  height: 4.0rem;
  border: 1px solid var(--main-color);
  border-radius: 4.0rem;
  transition: 0.3s ease-in-out;
}
.top-book-bottom .swiper-button-prev svg,
.top-book-bottom .swiper-button-next svg{
  display: none;
}
.top-book-bottom .swiper-button-prev { 
  left: calc( 15% - 4.0rem) !important;
}
.top-book-bottom .swiper-button-next { 
  right: calc( 15% - 4.0rem) !important;
}
.top-book-bottom .swiper-button-prev:before,
.top-book-bottom .swiper-button-next:before{
  content: "";
  background: url(/assets/img/common/slide-btn-prev.svg) center / cover no-repeat;
  display: inline-block;
  width: 1.2rem;
  height: 0.7rem;
  transition: 0.3s ease-in-out;
}
.top-book-bottom .swiper-button-next:before{
  background: url(/assets/img/common/slide-btn-next.svg) center / cover no-repeat;
}
@media (hover: hover) and (pointer: fine) {
  .top-book-bottom .swiper-button-prev:hover,
  .top-book-bottom .swiper-button-next:hover{
    background: var(--main-color-hover); transition: 0.3s ease-in-out;
  }
  .top-book-bottom .swiper-button-prev:hover:before,
  .top-book-bottom .swiper-button-next:hover:before{
    filter: brightness(0) saturate(100%) invert(99%) sepia(1%) saturate(4%) hue-rotate(329deg) brightness(102%) contrast(103%); transition: 0.3s ease-in-out;
  }
}
@media  only screen and (max-width: 1199px){
  .top-book .section-inner-min{
    padding: 8.0rem 0;
  }
  .top-book .button-wrapper-min .button-txt.t-r{
    margin-right: 4%;
  }
  .top-book-img {
    max-width: 18.0rem;
    height: 18.0rem;
  }
  .top-book-ttl{
    font-size: var(--fs-15);
  }
  .top-book-txt{
    font-size: var(--fs-13);
  }
  .top-book-description{
    min-height: auto;
  }
  .top-book .button-wrapper-min{
    margin-top: 4.0rem;
  }
}
@media  only screen and (max-width: 767px){
  .top-book .section-inner-min{
    padding: 6.0rem 0;
  }
  .top-book-img {
    max-width: 44vw;
    height: 44vw;
    margin: 2rem auto; 
  }
  .top-book-img img {
    box-shadow: 3px 3px 0px 0px rgba(107, 27, 126, 1);
  }
  .top-book-ttl{
    font-size: var(--fs-14);
  }
  .top-book-txt{
    font-size: var(--fs-13);
  }
  .top-book-description {
    width: 70%;
  }
  .top-book-bottom .swiper-button-prev,
  .top-book-bottom .swiper-button-next {
    width: min(10.667vw, 3.2rem);
    height: min(10.667vw, 3.2rem);
    border-radius: min(10.667vw, 3.2rem);
  }
  .top-book-bottom .swiper-button-prev { 
    left: calc(10% - min(10.667vw, 3.2rem)) !important;
  }
  .top-book-bottom .swiper-button-next { 
    right: calc(10% - min(10.667vw, 3.2rem)) !important;
  }
  .top-book-bottom .swiper-button-prev:before,
  .top-book-bottom .swiper-button-next:before{
    width: 2.133vw;
    height: 1.067vw;
  }
}

/*  top instagram
--------------------------------------------- */
.ttl-instagram{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.btn-instagram-item{
  width: 6.0rem;
  height: 6.0rem;
}
.btn-instagram-item a{
  background: var(--main-color);
  border-radius: 50%;
  display: block;
  height: 100%;
  position: relative;
}
.btn-instagram-item a img{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);  
  width: 1.5rem;
  filter: brightness(0) saturate(100%) invert(91%) sepia(100%) saturate(0%) hue-rotate(177deg) brightness(102%) contrast(102%);
}
@media (hover: hover) and (pointer: fine) {
  .btn-instagram-item a:hover{ background: var(--main-color-hover);}
}
.btn-instagram{
  position: relative;
}
.btn-instagram-txt{
  position: absolute;
  top: -4.0rem;
  right: -2.0rem;
}
.btn-instagram-txt img{
  width: 13.0rem;
}
@media  only screen and (max-width: 1199px){
  .btn-instagram-item{
    width: 5.0rem;
    height: 5.0rem;
  }
}
@media  only screen and (max-width: 767px){
  .top-instagram .section-inner{
    padding: 6.0rem 0;
  }
  .ttl-instagram{
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 3.0rem;
  }
  .ttl-instagram .ttl-container{
    gap: 1.0rem;
  }
  .ttl-instagram .ttl-container p{
    font-size: var(--fs-14);
  }
  .btn-instagram{
    margin-top: 7.533vw;
  }
  .btn-instagram-item{
    margin-left: auto;
    width: min(11.733vw, 5.5rem);
    height: min(11.733vw, 5.5rem);
  }
  .btn-instagram-txt{
    top: -5.933vw;
    right: 0;
  }
  .btn-instagram-txt img{
    width: 20.667vw;
  }
  .btn-instagram-item a img{
    width: 3.2vw;
  }
}