@charset "utf-8";
/*
Theme Name: arkhe_child
Template: arkhe
Author:Lino
Author URI:https://lino-design-studio.com
Description: このテーマは複製・他サイトでの利用はご遠慮ください。
*/

body {
font-family: 游ゴシック体, "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Helvetica, Arial, Meiryo, メイリオ, sans-serif;
letter-spacing: 0.08em;
color: #333333;
font-weight: 500;
}
h1, h2, h3, h4, h5, h6 {font-weight: 500;}
.width1200 {
  max-width: 1200px !important;
  margin-left: auto;
  margin-right: auto;
}
.width960 {
  max-width: 960px !important;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1000px) {
.pc-max-width-600px{
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}
.pc-max-width-800px{
    max-width: 800px!important;
    margin-left: auto!important;
    margin-right: auto!important;
}
} 
.gap0{gap:0!important;}
.gap0.wp-block-columns{gap:0!important;}
.gap1{gap:1rem!important;}
.textL {text-align: left;}
.textR {text-align: right;}
.textC {text-align: center;}
.m-auto {margin-left: auto!important;margin-right: auto!important;}
.firstl:first-letter{color: #AA8743;}
.fontW400{ font-weight: 400;}
.fontW500{ font-weight: 500;}
@media screen and (min-width: 1000px) {.mb-pc-v4{margin-bottom: 4vh;}}
.font-f-m{font-family: "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "HGS明朝E", "MS P明朝", "MS Mincho", serif;}
@media screen and (max-width: 767px) {.reverse {flex-direction:column-reverse!important;}}
/*--title-*/
.titleEN{
    font-family: "Bellefair", serif;
    letter-spacing: 0.2rem;
}
.titleJP{
   margin-top: 0px !important;
   font-weight: 500;
   color: #333333;
}
/*--fadein-*/
.fade-in {
  opacity: 0;
  visibility: hidden;
  transition: opacity 1s, transform 1s;
}
.fade-in.show {
  opacity: 1;
  visibility: visible;
}

.fade-in.BtoT {
	  transform: translateY(20px);
}
.fade-in.BtoT.show {
  transform: translateY(0px);
}

.fade-in.TtoB {
	  transform: translateY(-20px);
}
.fade-in.TtoB.show {
  transform: translateY(0px);
}

.fade-in.RtoL {
	  transform: translateX(20px);
}
.fade-in.RtoL.show {
  transform: translateY(0px);
}
.fade-in.LtoR {
	  transform: translateX(-20px);
}
.fade-in.LtoR.show {
  transform: translateY(0px);
}

.marker {
  background: linear-gradient(transparent 50%, rgb(233 235 243) 50%);
  display: inline;
  background-repeat: no-repeat;
  background-size: 0% 100%;
  transition: background-size 1.5s;
}
.marker.show {
  background-size: 100% 100%;
}

/*--header--*/
.l-header[data-spfix="1"], .l-header[data-pcfix="1"] {background: none!important;}
.l-header{padding: 0.5rem;}
.l-header__drawerBtn{
    width: 60px;
    height: 60px;
    right: 1rem;
}
@media screen and (min-width: 1000px) {
.l-header__drawerBtn{
    right: 2rem;
}
}
.home .l-header{display: none;}
.post-template .c-iconBtn{display: none;}
/*.c-iconBtn{
    background: #e19bb7;
    color: #FFF;
    border-radius: 50%;
    width: 60px;
    height: 60px;
}*/
.c-iconBtn__icon{ color:#e19bb7;}
.l-header__logo{font-family: "Bellefair", serif;}
@media screen and (min-width: 1000px) {
.l-header__logo { margin-left: 2vw; }
}

.c-gnav{
    text-align: left;
}
.c-gnav .en{font-size: 1.1em;}
.c-gnav .__mainText{
    font-family: "Sulphur Point", sans-serif;
    letter-spacing: 0.2rem;
    padding-bottom: 2px;
}
/*sp|d-menu*/
.p-drawer {
    color: #d18ba7;
    background: #faf7f8;
    text-align: center;
    left: 20%;
    width: 80%;
}
@media (min-width: 1000px) {
.p-drawer { left: 50%; width: 50%;}
}
.d-logo{
    font-family: "Bellefair", serif;
    letter-spacing: 0.2rem;
    font-size: 2rem;
    /* text-align: left; */
    margin-bottom: 1.5rem;
}
.c-drawerNav{ border: 0;}
.c-drawerNav .menu-item{border-bottom: 1px solid #e1c7d2;line-height: 2}
.c-drawerNav__a:hover{background-color: rgb(205 146 146 / 5%);}
/*--toppage--*/
/*--header|fv---*/
.top-fv h1{
    font-family: "Bellefair", serif;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #e19bb7;
    font-size: 7rem;
    margin: 0;
    letter-spacing: 0.3rem;
    white-space: nowrap;
}
.top-fv{
    position: relative;
    min-height: 80vh;
    overflow: hidden;
    background: #ED74A5;
    background: linear-gradient(90deg, rgb(237 209 220 / 20%) 15%, rgba(252, 252, 252, 0) 15%);
}
@media (orientation: landscape) and (max-width: 767px){
.top-fv{height: 600px;}}
.tv-inner{
    margin: auto;
    max-width: 98vw !important;
}
.tv-text{padding-right: 1rem;}
@media screen and (min-width: 1000px) {
.tv-inner{
    max-width: 94vw !important;
}
.top-fv h1 {
    font-size: 9rem;
    font-size: clamp(6rem, 9vw, 10rem);
    /* overflow: visible; */
    max-height: 100%;
    white-space: nowrap;
}
.tv-text{font-size: 1.3rem;}
}

@media screen and (min-width: 1920px) {
.tv-inner{
    max-width: 86vw !important;
}
.top-fv h1 {
    font-size: 10rem;
}

}
@media screen and (min-width: 2470px) {
.top-fv h1 {
font-size: 15rem;
}
.tv-text{font-size: 1.5rem;}
}

/* --scrolldown-- */
.tv-left{position: relative;}
.scroll {
  position: absolute;
  left: 25%;
  bottom: -2.5rem;
  writing-mode: vertical-rl;
}
.scroll::before {
  animation: scroll 2s infinite;
  background-color: #e19bb7;
  bottom: -115px;
  content: "";
  height: 100px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
  z-index: 2;
}
.scroll::after {
  background-color: #f3e0e6;
  bottom: -115px;
  content: "";
  height: 100px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
}
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
/*--circls--*/
  .rotating-circles {
    position: absolute;
    top: -30%;
    left: 0%;
    width: 150vw;
    height: 150vh;
    z-index: -1;
    pointer-events: none;
  }
@media screen and (min-width: 1000px) {
    .rotating-circles {
    width: 100vw;
  }
}

  .rotating-circles svg {
    position: absolute;
    width: 150%;
    height: 100%;
    transform-origin: center;
  }

  .circle-left {
    animation: rotate-left 40s linear infinite;
  }

  @keyframes rotate-left {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }

  .circle-right {
    animation: rotate-right 30s linear infinite;
  }

  @keyframes rotate-right {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(-360deg); }
  }
.rotating-circles svg {
  transform-origin: center center;
}
.top-contents{background-color: #f8eeee;}


/*--topA-List--*/
.grid-wrapper {
    display: grid;
    gap: 15px;
    grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 768px) {
    .grid-wrapper {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }
}

.top-news-card {
    padding: 1rem;
    background: #fff;
    border: 1px solid #edcdda;
    letter-spacing: 0.2rem;
}
.top-news-card:hover {
    border: 2px solid #edcdda;
}
.top-news-card .thumb {
    overflow: hidden;
}

.top-news-card .thumb img {
    transition: transform 0.4s ease;
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: top;
}

.top-news-card:hover .thumb img {
    transform: scale(1.05);
}
.top-news-card a{color: #333333; text-decoration: none;}
.top-news-card .title {
    font-size: 1.2rem;
    margin: 5px 0 0;
}
.top-news-card .name-en p {
    font-size: 0.8em;
    margin: 0;
    color: #c08ca5;
}
.top-news-card .more-link {
    color: #FFF;
    font-weight: bold;
    text-align: right;
    width: 40px;
    height: 20px;
    background: #dd73a6;
    border-radius: 20px;
    line-height: 20px;
    margin-left: auto;
}
.top-news-card .more-link:hover{
    background: #333333;
}
@media (min-width: 1000px) {
    .top-news-card .title {
    font-size: 2em;
    margin: 10px;
}
.top-news-card .name-en p {
    font-size: 0.9em;
    margin: 0 10px 10px;
}
}
/*.title-h2::before{content: "―";margin-left: 5px;}*/
.title-h2{display: inline;color:#c08ca5!important;font-size: 4rem;padding-right: 1rem;}
.title-h2 span{margin-right: 10px;}

.title-lr {
  position: relative;
  color: transparent;
}

.title-lr::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0%;
  right: 100%;
  bottom: 0%;
  left: 0%;
  background: #d2adbc;
}

.title-lr.show {
  animation-name: kf_a;
  animation-duration: 0s;
  animation-delay: 0.5s;
  animation-fill-mode: forwards;
}

.title-lr.show::before {
  animation-name: kf_b;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}

@keyframes kf_a {
  100% {
    color: inherit;
  }
}

@keyframes kf_b {
  50% {
    left: 0%;
    right: 0%;
  }
  100% {
    left: 100%;
    right: 0%;
  }
}

.top-company{background: linear-gradient(90deg, rgb(237 209 220 / 20%) 15%, rgba(252, 252, 252, 0) 15%);padding-left: 20%!important;}
@media (max-width: 767px) {
.top-company{ text-align: right;}
}
@media (min-width: 768px) {
.top-company{ padding-top: 8rem!important;padding-bottom: 6rem!important;}
 .top-company p::before{ content: "― ";}
}
/*.top-contact{
    background: linear-gradient(230deg, rgb(245 237 240) 1%, rgb(253 247 248) 100%)!important;
}*/
.top-contact .title-h2{ 
    display: block;
    margin: auto;
    line-height: 1;
    max-width: 300px;
    font-size: 3rem;
}
.contact-btn a{border-radius: 0 10px 10px!important;}

/*--footer--*/
.l-footer{background: #f7f0f3;}
footer .contact-btn a{font-size: 0.9rem!important;}
.l-footer__widgets { padding: 1.5rem 0 4rem;}
@media screen and (min-width: 1000px) {.l-footer__widgets { padding: 1.5rem 0 1rem;}}
.-widget2{text-align: right;}
.l-footer a { text-decoration: none; font-size: 1rem; color: #d18ba7; letter-spacing: 0.2rem;}
@media screen and (min-width: 1920px) {.l-footer a {font-size: 1.2rem;}}
.footer-nav-link li{list-style: none; line-height: 1.8rem;}
.c-copyright { text-align: left;}

@media screen and (min-width: 1000px) {
  .footer-nav-link {
    display: flex;
    justify-content: flex-end;
    gap: 20px;
  }
  .footer-nav-link li {
    display: inline-block;
  }
}

/*pagetop*/
.c-widget+.c-widget {
    margin-top: 2rem;
}


.c-fixBtn {
    background: #f7f0f3;
    border-radius: 5px 20px 20px;
    color: #000;
}

/*--スマホpagetop位置の調整--*/
/*@media only screen and (max-width:599px) {
  .p-fixBtnWrap {
    bottom: 11%;
}  
}
  .p-fixBtnWrap {
    bottom: 10%;
} */



/*-----------------page---------------------------*/
.p-breadcrumb{ color:#cdc0c6;}
.p-breadcrumb__item:after {
    height: 4px;
    content: "_";
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(-50%);
    border: 0;
}


/*アーカイブ共通*/
.category, .archive{background: #fbf7f8;}
.c-postThumb__img{object-fit: contain;}
.p-postList .p-postList__title{font-weight: 500;}
.categoryslug span{text-transform: uppercase;letter-spacing: 0.5em;}
.archive .l-main, .category .l-main, .post-template-default .l-main {background: #FFFF;padding: 5vw;border-radius: 0 15px 15px;}
.category .c-pageTitle__main{color: #c389a0;font-weight: 400;}
.p-postList__thumb{border: 1px solid #e7d0d9;border-radius: 0px 10px 10px;}
.p-postList__thumb:before{background: #e19bb7;}

.category-1 .p-postList__title{font-size: 1.2rem;}
.category-1 .p-postList__body{text-align: center;}
.category-1 .p-postList__excerpt{ margin: 0; color: #c08ca5;}

/*記事ページ共通*/
.wp-singular .l-content__body{margin-top: -20px;}
@media screen and (min-width: 1000px) {
    .wp-singular .l-content__body{margin-top: -20px;}
}
.title-h1{position: relative;}
.title-h1 h1{
    font-family: "Bellefair", serif;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: 0.2em;
    white-space: nowrap;
    font-size: 1.2rem;
    color: #cf87a4;
    text-align: center;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (min-width: 1000px) {
    .title-h1 h1{font-size: 1.8rem}
}
.swiper-pagination-bullet-active {
    background: #da96b6!important;
}
.profile h2, .topics h2{color: #e19bb7;}
@media screen and (max-width: 999px) {.profile h2{font-size: 1.2rem;}}

.profile table{border: 0; font-size: 0.75rem;}
.profile table td{border-left: 0;}
@media screen and (min-width: 1000px){
.profile table td:first-child { width: 20%;font-size: 0.9rem;}
}
.wp-block-social-link-label{font-size: 0.75rem!important;}
.topics-item{position: relative;margin-bottom: 1rem;}
.topics-img{
    max-width: 90%;
    margin-left: auto;
}
.topics-img img{border-radius: 0 10px 10px;}
.topics-date{
  writing-mode: vertical-rl;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 0.7rem;
  display: block;
  margin: 0!important;
  color: #d379a9;
    line-height: 1;
}
.topics-text{font-size: 0.8rem !important; margin-top: 0.3rem !important;margin-bottom: 0.5rem !important;}
.topics-text a{ color: #333;text-decoration: none;}
@media screen and (min-width: 1000px) {
.topics-item-container{gap:1rem!important;}
.topics-img{
    max-width: 90%;
}
.topics-date{
  font-size: 0.9rem;
  line-height: 1.8;
}
}
.postcate span{text-transform: uppercase;}
.p-entry__title .c-pageTitle__main{ font-weight: 500;}
.c-bottomSection__title,.c-secTitle,.c-widget>.wp-block-group>.wp-block-group__inner-container>h2,.c-widget__title,h2.widgettitle { font-weight:500; }
.p-authorBox{ background-color: #FFFFFF;}

/*--共通---------------------------*/
@media (max-width:599px) {
  .pc {
    display: none !important;
  }
  .pcbr br {
    display: none !important;
  }
  .sp-mb-0 {
    margin-bottom: 0px !important;
  }
}
@media (min-width: 600px) {
  .sp {
    display: none !important;
  }
  .spbr br {
    display: none !important;
  }
  .pc-mb-0 {
    margin-bottom: 0px !important
  }
}
/*カラムブロックをスマホで２カラムにする*/
@media (max-width: 781px){
    .sp2{gap:0.5rem!important;}
   .wp-block-columns.sp2:not(.is-not-stacked-on-mobile)>.wp-block-column {
    flex-basis: 45% !important;
    }
  .wp-block-columns.sp2::after{
		 content: "";
		 width: 45%;
		 height: 0;
	 }
}

.fxscroll {
    position: fixed;
    display: none; /* 最初は非表示にする */
}

.titleBoderBoth {
    position: relative;
    outline: unset;
    outline-offset: unset;
    -webkit-box-shadow: unset;
    box-shadow: unset;
    border-radius: unset;
    overflow: unset;
    color: inherit;
    background-color: transparent;
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    margin-bottom: 1.2em;
    padding: 0
}

.titleBoderBoth::before {
    content: "";
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    border-bottom: 1px solid currentColor;
    position: unset;
    width: unset;
    border-left: unset;
    border-right: unset;
    border-top: none;
    background: unset;
    margin-right: 1em
}

.titleBoderBoth::after {
    content: "";
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    border-bottom: 1px solid currentColor;
    position: unset;
    width: unset;
    border-left: unset;
    border-right: unset;
    border-top: none;
    background: unset;
    margin-left: 1em
}



