@charset "UTF-8";

#wpadminbar {position: fixed!important;}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
汎用
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/
main {position: relative; z-index: 101;}

.container,
.inner {margin: 0 auto;}

/*flexbox*/
.flex {display: flex;}

.cf:after {content: ""; display: block; clear: both;}

.deco img {pointer-events: none;}

/*画像クリッピング*/
.u-of img, 
.u-of video {width: 100%; height: 100%; object-fit: cover; object-position: 50%; font-family: "object-fit: cover; object-position: 50%;";}

/*背景色*/
.u-bg-pink {background: #fdf4f1;}
.u-bg-beige {background: #fAf7f4;}

.u-align-right {text-align: right;}

.no-image {display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; background: #e9e6e8;}
.no-image .logo img {object-fit: fill; font-family: "object-fit: fill;";}

.entry-new {color: #faa6a6; font-weight: 500; line-height: 1; letter-spacing: 0;}

/*------------------------------------
バウンド
------------------------------------*/
.u-scr-ef_bounce:hover {animation: bounce .8s ease-out;}
@keyframes bounce {
  0%    {transform:translate(0, 0);}
  16.6% {transform:translate(0, -2rem); animation-timing-function: ease-in;}
  33.3% {transform:translate(0, 0);}
  49.8% {transform:translate(0, -1.4rem); animation-timing-function: ease-in;}
  66.4% {transform:translate(0, 0);}
  83%   {transform:translate(0, -.4rem); animation-timing-function: ease-in;}
  100%  {transform:translate(0, 0);}
}

/*--------------------------------------------------------------------------
部品
--------------------------------------------------------------------------*/

/*------------------------------------
見出し
------------------------------------*/
.c-headline {flex-direction: column; text-align: center; line-height: 1.5;}
.c-headline .main-head {font-weight: 500;}
.c-headline .sub-head {color: #685e5e; font-weight: 500;}

/*------------------------------------
ボタン
------------------------------------*/
.c-link-btn {position: relative; margin: 0 auto; overflow: hidden;}
.c-link-btn:before {content: ""; position: absolute; top: 0; left: auto; right: 0; display: block; width: 0%; height: 100%; background: #fdf4f1; transition: .4s ease; z-index: 1;}
.c-link-btn:hover:before {width: 100%; left: 0; right: auto;}
.c-link-btn .txt {position: relative; display: block; color: #221a1a; line-height: 1; text-align: center; z-index: 2;}
.c-link-btn:hover .txt {opacity: 1;}
.c-link-btn .txt:before {content: ""; position: absolute; display: block; background: url(../img/common/link-btn_arrow.svg); z-index: 2;}

/*------------------------------------
ボタン（戻る）
------------------------------------*/
.c-back-btn {position: relative; margin: 0 auto;}
.c-back-btn:hover {opacity: 1;}
.c-back-btn:before {content: ""; position: absolute; top: 0; left: auto; right: 0; display: block; width: 0%; height: 100%; background: #fdf4f1; transition: .4s ease; z-index: 1;}
.c-back-btn:hover:before {width: 100%; left: 0; right: auto;}
.c-back-btn .txt {position: relative; display: block; font-weight: 500; text-align: center; z-index: 2;}
.c-back-btn .leef {position: absolute; z-index: 2;}

/*------------------------------------
電話
------------------------------------*/
.c-tel-btn {align-items: center;}
.c-tel-btn .num span {display: block; font-weight: 500; line-height: 1;}

/*------------------------------------
ページ上の波
------------------------------------*/
.c-deco_head {position: relative;}
.c-deco_head:before {content: ""; position: relative; display: block; width: 100%; background: #fdf4f1; z-index: 2;}
.c-deco_head .wave {position: relative; z-index: 2;}
.c-deco_head .wave img {width: 100%; height: auto;}
.c-deco_head .dot {position: absolute; top: 0; right: 0; z-index: 1;}
.c-deco_head .dot img {width: 100%; height: auto;}

/*------------------------------------
要素をふわっと出す
------------------------------------*/
.fadein {opacity: 0; transform: translate(0, 15rem); transition: all .5s ease;}
.fadein.scrollin {opacity: 1; transform: translate(0, 0);}

.u-scr-ef_fadein {opacity: 0; transform: translate(0, 5rem); transition: .5s ease;}
.u-scr-ef_fadein.is-scrollin {opacity: 1; transform: translate(0, 0);}

/*------------------------------------
ブログスライダー
------------------------------------*/
.c-blogs-list .list-item {height: auto; background: #fff; overflow: hidden;}
.c-blogs-list .list-item a {height: 100%; box-sizing: border-box;}
.c-blogs-list .list-item a:hover {opacity: 1; background: #fdf4f1;}
.c-blogs-list .list-item .item-img {width: 100%; overflow: hidden;}
.c-blogs-list .list-item a:hover .item-img img {transform: scale(1.075);}
.c-blogs-list .list-item .item-img .no-image .logo img {width: 100%; height: auto;}
.c-blogs-list .list-item .item-txt {position: relative;}
.c-blogs-list .list-item .entry-state {justify-content: space-between; align-items: baseline;}
.c-blogs-list .list-item .entry-time {line-height: 1;}
.c-blogs-list .list-item .entry-ttl {font-weight: 500;}
.c-blogs-list .list-item .entry-excerpt {display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.c-blogs-list .list-item .entry-more {position: absolute; justify-content: flex-end; align-items: center;}
.c-blogs-list .list-item .entry-more span {line-height: 1;}
.c-blogs-list .list-item .entry-more svg {position: relative; height: auto;}
.c-blogs-list .list-item .entry-more svg path {fill: none; stroke: #b93b37; stroke-width: 2; stroke-linecap: round;}

.c-blogs-list .swiper-pagination {position: static; justify-content: center;}
.c-blogs-list .swiper-pagination .swiper-pagination-bullet {background: #8f8989; opacity: .7; line-height: 1;}
.c-blogs-list .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {background: #221a1a; opacity: 1;}

/*------------------------------------
別ページへの導線
------------------------------------*/
.c-flow-list {margin: 0 auto;}
.c-flow-list .list-item {position: relative; z-index: 1;}
.c-flow-list .list-item a {position: relative; width: 100%; height: 100%; z-index: 1; overflow: hidden; will-change: transform;}
.c-flow-list .list-item a:hover {opacity: 1;}
.c-flow-list .list-item a:before {content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(112,112,112, .6); mix-blend-mode: multiply; z-index: 3; transition: .4s ease;}
.c-flow-list .list-item a:hover:before {background: rgba(112,112,112, .9);}
.c-flow-list .list-item .item-img {position: relative; width: 100%; height: 100%; overflow: hidden; z-index: 2;}
.c-flow-list .list-item a:hover .item-img img {transform: scale(1.075);}
.c-flow-list .list-item .item-txt {position: absolute; top: 0; left: 0; width: 100%; height: 100%; justify-content: center; align-items: center; z-index: 4;}
.c-flow-list .list-item .item-txt * {color: #fff; text-align: center; line-height: 1;}

_:-ms-input-placeholder,
:root .c-flow-list .list-item a:before {background: rgba(0,0,0, .3);}
_:-ms-input-placeholder,
:root .c-flow-list .list-item a:hover:before {background: rgba(0,0,0, .6);}

:lang(x)+:-webkit-full-screen-document, .c-flow-list .list-item a {background-color: #000;}
:lang(x)+:-webkit-full-screen-document, .c-flow-list .list-item a .item-img {z-index: 3;}
:lang(x)+:-webkit-full-screen-document, .c-flow-list .list-item a .item-img img {opacity: .6;}
:lang(x)+:-webkit-full-screen-document, .c-flow-list .list-item a:hover .item-img img {opacity: .3;}


/*------------------------------------
ページナビ
------------------------------------*/
.wp-pagenavi {display: flex; justify-content: center; flex-wrap: wrap;}
.wp-pagenavi span,
.wp-pagenavi a {display: block; color: #4d3a3a; text-align: center; background: #fff; border: 1px solid #4d3a3a;}
.wp-pagenavi .current {color: #fff; background: #4d3a3a;}
.wp-pagenavi .pages {display: none;}
.wp-pagenavi a:hover {color: #fff; background: #4d3a3a; opacity: 1;}

/*------------------------------------
Contact form7 メッセージ
------------------------------------*/
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {color: #d11515; border-color: #fdc840; background: #fdc840; padding: 3rem;}
.wpcf7 form.sent .wpcf7-response-output {color: #fff; border-color: #46b450; background: #46b450; padding: 3rem;}

/*------------------------------------
TOPに戻る
------------------------------------*/
#top-scroll {position: fixed; display: flex; justify-content: center; align-items: center; background: #fff; border-radius: 50%; box-shadow: 0 .1rem .3rem 0 rgba(0,0,0, .1),0 .3rem 1rem -.5rem rgba(0,0,0, .75),0 .5rem 2rem -1rem rgba(0,0,0, .6); transform: translateY(200%); cursor: pointer; pointer-events: none; visibility: hidden; opacity: 0; transition: .5s ease; z-index: 200;}
#top-scroll:hover {background: #fff7f5; opacity: 1;}
#top-scroll.is-active {pointer-events: auto; visibility: visible; opacity: 1; transform: translateY(0);}
#top-scroll img {width: 75%; height: auto;}

/*--------------------------------------------------------------------------
ヘッダー
--------------------------------------------------------------------------*/
header {width: 100%; position: fixed; top: 0; left: 0; transition: transform .5s ease-in-out, visibility .5s ease-in-out, opacity .5s ease-in-out; pointer-events: none; z-index: 1000;}

/*ロゴ*/
header .page-logo {position: absolute; left: 50%; transform: translateX(-50%); pointer-events: auto; z-index: 1001;}
header .page-logo svg,
header .page-logo img {width: 100%; height: auto;}

/*読み込み後表示(TOPページ)*/
header.front-page.is-loaded {visibility: visible; opacity: 1;}

/*読み込み後表示(TOPページ以外)*/
header.other-page {transform: translateY(2rem);}
header.other-page.is-loaded {transform: translateY(0); visibility: visible; opacity: 1;}

/*スクロール時の表示/非表示*/
html:not(.is-navopen) header.scroll-down {transform: translateY(-100%); visibility: hidden; opacity: 0;}
html:not(.is-navopen) header.scroll-up {transform: translateY(0%); visibility: visible; opacity: 1;}

/*ハンバーガー*/
header .hamburger {position: absolute; cursor: pointer; pointer-events: auto; z-index: 1011;}
header .hamburger div {position: absolute; left: 0; background: #221a1a; border-radius: .15rem; transition: .4s ease-in-out;}
header .hamburger div:nth-child(1) {top: 0;}
header .hamburger.is-open div {background: #221a1a!important;}
header .hamburger.is-open div:nth-child(1) {transform: rotate(-45deg);}
header .hamburger.is-open div:nth-child(2),
header .hamburger.is-open div:nth-child(3) {transform: rotate(45deg);}

/*ハンバーガー中身*/
header .header-nav {position: fixed; top: 0; left: 0; width: 100%; height: 100vh; overflow: scroll; background: #fff; opacity: 0; pointer-events: none; visibility: hidden; transition: .6s ease; z-index: 1010;}
header .header-nav.is-open {opacity: 1; pointer-events: auto; visibility: visible;}

header .header-nav .header-nav_inner {width: 100%; margin: 0 auto; box-sizing: border-box;}

header .header-nav .nav-list li .list-item {position: relative; display: block; color: #221a1a; font-weight: 500; line-height: 1; letter-spacing: .275em; text-indent: 1em;}
header .header-nav .nav-list li .list-item:after {content: ""; position: absolute; top: 50%; display: block; border: 2px solid; border-color: #b93b37 #b93b37 transparent transparent; border-radius: .25rem; transform: translateY(-50%) rotate(45deg); transform-origin: center; transition: .4s ease;}
header .header-nav .nav-list li.in-dropdown {cursor: pointer;}
header .header-nav .nav-list li.in-dropdown .dropdown-list {display: none; width: 100%; height: auto;}
header .header-nav .nav-list li.in-dropdown > .list-item.is-open:after {transform: translateY(-50%) rotate(135deg);}
header .header-nav .nav-list li .nav-list li {box-sizing: border-box;}
header .header-nav .nav-list li .nav-list li:last-child {border-bottom: none;}

header .header-nav .link-list .link-list_icon.mail a svg path {fill: transparent; stroke: #000; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;}

/*--------------------------------------------------------------------------
フッター
--------------------------------------------------------------------------*/
footer {position: relative;}
footer.rapport {background: #faf7f4;}
footer.ale {background: #f1f6fa;}

footer .footer_inner,
footer .copyright {position: relative; z-index: 101;}

footer .about {align-items: center;}

footer .about .info .address {font-weight: 500;}

footer .about .nav-list ul li .list-item {position: relative; display: block; color: #221a1a; font-weight: 500; line-height: 1; letter-spacing: .275em; text-indent: 1em;}
footer .about .nav-list ul li .list-item:after {content: ""; position: absolute; left: 0; display: block; border: 2px solid; border-color: #8f8989 #8F8989 transparent transparent; border-radius: .25rem; transform: translateY(-50%) rotate(45deg); transform-origin: center; transition: .4s ease;}
footer .about .nav-list ul li .list-item:hover {color: #ed7555; opacity: 1;}

footer .copyright {color: #fff; font-weight: 500; text-align: center; line-height: 1; letter-spacing: .16em; text-indent: -.16rem; background: #472525;}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
TOPページ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/
/*----------------------------------------
メインビジュアル
----------------------------------------*/
#front .main-visual {position: relative; background: #fff;}

#front .main-visual .video {position: relative; width: 100%; height: auto; transition: .4s ease; z-index: 3;}
#front .main-visual .video video {width: 100%; height: auto; object-fit: cover;}

#front .main-visual .img {width: 100%; height: auto;}

#front .main-visual .catch {position: absolute; flex-direction: column; align-items: flex-start; transition: .4s ease; z-index: 5;}
#front .main-visual .catch span {color: #4d3a3a; font-weight: 500; background: #fff;}

/*----------------------------------------
理念
----------------------------------------*/
#front .philosophy .txt h2 {font-weight: 500;}

/*----------------------------------------
サービス
----------------------------------------*/
#front .service,
#front .service .inner {position: relative; z-index: 10;}

#front .service .service-list .list-item {position: relative;}
#front .service .service-list .list-item .item-img {overflow: hidden;}
#front .service .service-list .list-item .item-txt .item-ttl {font-weight: 500; text-align: center;}
#front .service .service-list .list-item .item-txt .item-link {position: relative; display: block; color: #221a1a; font-weight: 500; text-align: center;}
#front .service .service-list .list-item .item-txt .item-link:after {content: ""; position: absolute; width: 0; height: 0; border-style: solid; border-color: transparent transparent transparent #221a1a; transition: .4s ease;}
#front .service .service-list .list-item .item-txt .item-link:hover {color: #fff; background: #221a1a; opacity: 1;}
#front .service .service-list .list-item .item-txt .item-link:hover:after {border-color: transparent transparent transparent #fff;}

#front .service .deco {position: absolute; z-index: 11;}

/*----------------------------------------
ブログ
----------------------------------------*/
#front .blogs {position: relative; z-index: 8;}

/*----------------------------------------
別ページへの導線
----------------------------------------*/
#front .contents-link {position: relative; z-index: 7;}

/*----------------------------------------
地図
----------------------------------------*/
#front .g-map {position: relative; overflow: hidden; max-height: none;}
#front .g-map iframe,
#front .g-map object,
#front .g-map embed {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

/*----飾り----*/
#front .deco_wave-top,
#front .deco_wave-bottom {position: relative; width: 100%; z-index: 9;}
#front .deco_wave-top img,
#front .deco_wave-bottom img {width: 100%; height: auto;}
#front .deco_dot-01,
#front .deco_dot-02,
#front .deco_dot-03 {position: absolute; z-index: -1;}
#front .deco_dot-01 {top: -17.39vw; right: 0;}
#front .deco_dot-02 {left: 0;}
#front .deco_dot-03 {bottom: 0; right: 0;}

_:-ms-input-placeholder,
:root #front .deco_wave-top {bottom: -1px;}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
固定ページ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------
会社概要
--------------------------------------------------------------------------*/
#company .about .about-table tr th,
#company .about .about-table tr td {font-weight: 500; box-sizing: border-box;}
#company .about .about-table tr th {text-align: left; background: #fdf4f1;}

/*--------------------------------------------------------------------------
お問い合わせ
--------------------------------------------------------------------------*/
/*----テキスト----*/
#contact .contact-sec_txt * {letter-spacing: 0;}
#contact .contact-sec_txt .external-link {color: #d48d8b; font-weight: 500;}
#contact .contact-sec_txt .external-link:before {content: ""; position: relative; top: .125em; display: inline-block; margin-right: .5em; background: url(../img/common/external-link_arrow.svg);}
#contact .contact-sec_txt .about-txt .headline {position: relative; font-weight: 500;}
#contact .contact-sec_txt .about-txt .headline:before {content: ""; position: relative; top: .125em; display: inline-block; height: 1em; background: #9e7d7c;}
#contact .contact-sec_txt .cese dt {font-weight: 500;}
#contact .contact-sec_txt .attention {border: 1px solid #707070;}
#contact .contact-sec_txt .attention p {font-weight: 500;}

/*----フォーム----*/
#contact .contact-sec_form * {letter-spacing: 0;}
#contact .contact-sec_form .contact-item .ttl {display: flex; justify-content: space-between; align-items: center; font-weight: 500; line-height: 1.5; letter-spacing: 0;}
#contact .contact-sec_form .contact-item .ttl .mandatory {display: block; color: #e66f6b; font-weight: 500; line-height: 1; border: 1px solid #e66f6b;}

#contact .contact-sec_form .confirmation-check-item {display: flex; justify-content: center; align-items: center;}

#contact .contact-sec_form input[type="text"],
#contact .contact-sec_form input[type="email"],
#contact .contact-sec_form input[type="tel"],
#contact .contact-sec_form input[type="url"],
#contact .contact-sec_form input[type="date"],
#contact .contact-sec_form input[type="time"],
#contact .contact-sec_form textarea {display: block; width: 100%; border: 1px solid #707070; box-sizing: border-box; resize: vertical;}

#contact .contact-sec_form input[type="checkbox"],
#contact .contact-sec_form input[type="radio"] {display: none;}
#contact .contact-sec_form .wpcf7-list-item {margin: 0;}
#contact .contact-sec_form .wpcf7-list-item-label {position: relative; cursor: pointer;}
#contact .contact-sec_form .wpcf7-list-item-label:before,
#contact .contact-sec_form .wpcf7-list-item-label:after {content: ""; position: absolute; box-sizing: border-box;}
#contact .contact-sec_form .wpcf7-list-item-label:before {top: .425em; left: 0; border: 1px solid #707070;}
#contact .contact-sec_form .wpcf7-radio .wpcf7-list-item-label:before {border-radius: 50%;}
#contact .contact-sec_form .wpcf7-checkbox .wpcf7-list-item-label:after {border-right: 3px solid #fff; border-bottom: 3px solid #fff; transform: rotate(45deg);}
#contact .contact-sec_form input[type="radio"]:checked + .wpcf7-list-item-label:before,
#contact .contact-sec_form input[type="checkbox"]:checked + .wpcf7-list-item-label:before {background: #221a1a; border-color: #221a1a;}

#contact .contact-sec_form .confirmation-check-item .wpcf7-checkbox .wpcf7-list-item-label {display: flex; justify-content: center; align-items: center;}

#contact .contact-sec_form .submit-btn {background: #fdf4f1;}
#contact .contact-sec_form .submit-btn.c-link-btn:before {background: #fff;}
#contact .contact-sec_form .submit-btn .txt {padding: 0;}
#contact .contact-sec_form .submit-btn input[type="submit"] {position: relative; width: 100%; font-weight: inherit; text-align: inherit; line-height: inherit;}

.wpcf7-spinner {position: absolute!important; top: calc(50% - 12px); left: calc(50% - 12px); margin: 0;}

/*--------------------------------------------------------------------------
プライバシーポリシー
--------------------------------------------------------------------------*/
#privacy .sec h2 {font-weight: 500; background: #fdf4f1;}
#privacy .sec h3 {font-weight: 500;}
#privacy .sec ol {margin-left: 2em;}
#privacy .sec ol li {text-indent: -1em; list-style-type: disc; padding-left: 1em;}

/*--------------------------------------------------------------------------
らぽぉる
--------------------------------------------------------------------------*/
#rapport .main-visual .img {margin: 0 auto;}
#rapport .main-visual .img img {width: 100%; height: auto;}

#rapport .about {position: relative; background: #fff; z-index: 20;}
#rapport .about .txt {margin: 0 auto;}
#rapport .about .txt h2 {color: #472525; font-weight: 500; line-height: 1; text-align: center;}
#rapport .about .txt p {color: #897272; font-weight: 500; text-align: center;}
#rapport .about .deco {position: absolute; z-index: 2;}

#rapport .service {position: relative; z-index: 10; overflow: hidden;}
#rapport .service .deco-dot {position: absolute; z-index: 10;}
#rapport .service .sec-ttl {position: relative; z-index: 11;}
#rapport .service .sec-ttl .c-headline .main-head {color: #472525;}
#rapport .service .sec-ttl .c-headline .sub-head {color: #707070;}
#rapport .service .sec-ttl .deco {position: absolute;}
#rapport .service .service-list .list-item {position: relative;}
#rapport .service .service-list .list-item .item-img,
#rapport .service .service-list .list-item .item-txt {position: relative; z-index: 11;}
#rapport .service .service-list .list-item .item-img {overflow: hidden;}
#rapport .service .service-list .list-item .item-txt * {color: #441812;}
#rapport .service .service-list .list-item .item-txt .txt-ttl,
#rapport .service .service-list .list-item .item-txt .txt-sub-ttl {font-weight: 500;}
#rapport .service .service-list .list-item .item-txt .txt-ttl {line-height: 1;}
#rapport .service .service-list .list-item .deco {position: absolute;}
#rapport .service .service-list .list-item .deco.dot {z-index: 10;}
#rapport .service .service-list .list-item .deco.grain {z-index: 12;}
#rapport .service .service-list .list-item .deco.illust {z-index: 13;}

#rapport .blogs {position: relative; background: url(../img/rapport/rapport__blogs__bg.webp) top center/auto 100% #fff; z-index: 20;}
#rapport .blogs .deco {position: absolute;}

.no-webp #rapport .blogs {background-image: url(../img/rapport/rapport__blogs__bg.png);}

#rapport .new-items {position: relative; background: #fff; z-index: 20;}
#rapport .new-items .new-items-list {flex-wrap: wrap;}
#rapport .new-items .new-items-list .list-item a {position: relative; width: 100%; height: 100%; overflow: hidden;}
#rapport .new-items .new-items-list .list-item a:hover {opacity: 1;}
#rapport .new-items .new-items-list .list-item a:before {content: ""; position: absolute; top: 0; left: auto; right: 0; display: block; width: 0%; height: 100%; background: rgba(255,255,255, .5); opacity: 0; transition: .4s ease;}
#rapport .new-items .new-items-list .list-item a:hover:before {width: 100%; left: 0; right: auto; opacity: 1;}

#rapport .recruit {position: relative; z-index: 10;}
#rapport .recruit .deco {position: absolute; z-index: 11;}
#rapport .recruit .deco.dot-01 {top: 0; left: 0;}
#rapport .recruit .deco.dot-02 {top: 0; right: 0;}
#rapport .recruit .deco.dot-03 {right: 0;}
#rapport .recruit .inner {position: relative; z-index: 12;}
#rapport .recruit .invite * {text-align: center;}
#rapport .recruit .invite img {position: relative; margin: 0 auto;}
#rapport .recruit .sec-txt .ttl,
#rapport .recruit .sec-txt .sub-ttl {font-weight: 500; text-align: center;}
#rapport .recruit .sec-txt .ttl {line-height: 1;}
#rapport .recruit .expect {position: relative;}
#rapport .recruit .expect .img {position: relative; border-radius: 50%; overflow: hidden;}
#rapport .recruit .expect .voice {position: absolute;}
#rapport .recruit .expect .voice:before,
#rapport .recruit .expect .voice:after {content: ""; display: block; position: absolute; background: #472525;}

/*--------------------------------------------------------------------------
Beeスタイル
--------------------------------------------------------------------------*/
#beestyle .c-headline .main-head {color: #472525;}

#beestyle .main-visual .container {position: relative;}
#beestyle .main-visual .txt {position: absolute; -ms-writing-mode: tb-rl; writing-mode: vertical-rl;}

#beestyle .about .container {position: relative;}
#beestyle .about .sec-txt {flex-direction: column; align-items: center; margin: 0 auto;}
#beestyle .about .sec-txt .ttl {color: #472525; font-weight: 500; text-align: center;}
#beestyle .about .sec-txt .txt {color: #472525; max-width: 100%;}
#beestyle .about .deco {position: absolute;}

#beestyle .room-condition {position: relative; background: #f8f0ed;}
#beestyle .room-condition:before {content: ""; position: absolute; left: 0; width: 0; height: 0; border-style: solid; border-color: transparent transparent #f8f0ed transparent;}
#beestyle .room-condition .condition-list {justify-content: center;}
#beestyle .room-condition .condition-list .list-item {display: flex; flex-direction: column; justify-content: center; align-items: center; background: #fff; border-radius: 50%;}
#beestyle .room-condition .condition-list .list-item * {text-align: center;}
#beestyle .room-condition .condition-list .list-item .ttl {color: #472525; font-weight: 500;}
#beestyle .room-condition .condition-list .list-item .txt {color: #726060;}

#beestyle .floor-plan .floor-list .list-item {display: flex; flex-direction: column; justify-content: center; align-items: center;}
#beestyle .floor-plan .floor-list .list-item .img {position: relative;}
#beestyle .floor-plan .floor-list .list-item .img .living {position: absolute; color: #472525; font-weight: 500; line-height: 1; text-align: center;}
#beestyle .floor-plan .floor-list .list-item .ttl {color: #472525; font-weight: 500; line-height: 1;}
#beestyle .floor-plan .floor-list .list-item .ttl:before {content: ""; position: relative; display: inline-block; line-height: 1; background: #ecc8c8; border-radius: 50%;}

#beestyle .room-facility .facility-list .item-list .icon {margin: 0 auto;}
#beestyle .room-facility .facility-list .item-list .ttl {color: #472525; font-weight: 500; text-align: center;}

#beestyle .recruit {background: #f8f0ed;}
#beestyle .recruit * {color: #472525; font-weight: 500;}
#beestyle .recruit .inner {background: center/cover url(../img/beestyle/beestyle__recruit__bg.webp);}
#beestyle .recruit .recruit-wrap {flex-direction: column; align-items: center;}
#beestyle .recruit .ttl {justify-content: center; align-items: center;}
#beestyle .recruit .ttl span {display: block; line-height: 1; text-align: center;}
#beestyle .recruit .ttl .border {position: relative;}
#beestyle .recruit .ttl .border.border-right {transform: scale(-1,1);}
#beestyle .recruit .contact {max-width: 100%;}
#beestyle .recruit .c-tel-btn svg.tel path {fill: transparent; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; stroke: #472525;}
#beestyle .recruit .c-tel-btn .num .border {fill: #472525; width: 100%; transform: scale(1.03,1.075);}

.no-webp #beestyle .recruit .inner {background-image: url(../img/beestyle/beestyle__recruit__bg.png);}

.fixed-recruit-anchor {position: fixed; z-index: 102;}

/*--------------------------------------------------------------------------
エール
--------------------------------------------------------------------------*/
#ale .main-visual {position: relative;}
#ale .main-visual .border {position: absolute; z-index: 2;}
#ale .main-visual .img {position: relative; z-index: 1;}
#ale .main-visual .txt {font-weight: 500; z-index: 1;}

#ale .about .sec-txt .ttl {font-weight: 500;}

#ale .service {background: #fdf2f2;}
#ale .service .ttl {font-weight: 500;}
#ale .service .sec-list .list-item .ttl {align-items: center;}
#ale .service .sec-list .list-item .ttl span {font-weight: inherit;}

#ale .business .headline {position: relative;}
#ale .business .headline:after {content: ""; display: block; position: absolute; bottom: 0; background: #ffb6b1;}
#ale .business .headline * {text-align: center;}
#ale .business .headline .sub-head {line-height: 1;}
#ale .business .headline .main-head,
#ale .business .business-list .list-item .ttl {font-weight: 500;}
#ale .business .business-list .list-item .ttl {line-height: 1; text-align: center;}
#ale .business .business-list .list-item .img {justify-content: center; align-items: center; border-radius: 50%;}
#ale .business .business-list .list-item.sp-support .img {background: #ffecea;}
#ale .business .business-list .list-item.nomal-support .img {background: #fff5dc;}
#ale .business .business-list .list-item.plan-support .img {background: #e8f5ff;}

#ale .flow {position: relative; z-index: 10;}
#ale .flow .headline {position: relative; z-index: 11;}
#ale .flow .headline .ttl {font-weight: 500;}
#ale .flow .flow-list {position: relative; z-index: 12;}
#ale .flow .flow-list .list-item {position: relative; display: flex; z-index: 2;}
#ale .flow .flow-list .list-item .num {display: flex; justify-content: center; align-items: center; position: relative; background: #faaaaa; border-radius: 50%;}
#ale .flow .flow-list .list-item .num:before {content: ""; position: absolute; background: #7c5757; transform: rotate(-45deg); transform-origin: right bottom; z-index: 2;}
#ale .flow .flow-list .list-item .num:after {content: ""; position: absolute; bottom: 0; right: 0; width: 0; height: 0; border-style: solid; border-color: transparent transparent #fff transparent; z-index: 1;}
#ale .flow .flow-list .list-item .num span:before {content: attr(date-text); color: #fff; line-height: 1;}
#ale .flow .flow-list .list-item .sec-txt .ttl {font-weight: 500; line-height: 1;}
#ale .flow .flow-list .list-item .sec-txt .txt {letter-spacing: 0;}
#ale .flow .flow-list .line {position: relative; z-index: 1;}
#ale .flow .img {position: absolute; z-index: 1;}

#ale .contact {position: relative; z-index: 20;}
#ale .contact .wave img {width: 100%; height: auto;}
#ale .contact .contact-inner {flex-direction: column; align-items: center; background: #f1f6fa;}
#ale .contact .hiring {position: relative; color: #000; font-weight: 500; line-height: 1;}
#ale .contact .hiring:before,
#ale .contact .hiring:after {content: ""; display: block; position: absolute; background: #000;}
#ale .contact .hiring:before {transform: rotate(-30deg);}
#ale .contact .hiring:after {transform: rotate(30deg);}
#ale .contact .c-tel-btn svg.tel path {fill: transparent; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; stroke: #000;}
#ale .contact .c-tel-btn .num span {color: #000;}
#ale .contact .c-tel-btn .num .border {fill: #000; width: 100%; transform: scale(1.02,1.02);}

/*--------------------------------------------------------------------------
うららか
--------------------------------------------------------------------------*/
#uraraka .main-visual .container {position: relative;}
#uraraka .main-visual .img {position: relative;}
#uraraka .main-visual .txt span {display: inline-block; color: #000; font-weight: 500;}

#uraraka .sales .sec-imgs .img {overflow: hidden;}
#uraraka .sales .sec-txt {position: relative;}
#uraraka .sales .sec-txt .ttl {color: #472525; font-weight: 500; text-align: center;}
#uraraka .sales .sec-txt .ttl span {display: block; color: inherit; font-weight: inherit; line-height: 1; letter-spacing: initial; text-indent: initial;}
#uraraka .sales .sec-txt .txt {color: #472525;}
#uraraka .sales .deco {position: absolute;}

#uraraka .biz {position: relative;}

#uraraka .biz .tab-switch {position: absolute; width: 100%;}
#uraraka .biz .tab-switch a {display: block; color: #472525; font-weight: 500; line-height: 1; text-align: center; background: #c9c9c9;}
#uraraka .biz .tab-switch a:hover {opacity: 1;}

#uraraka .biz .bento-biz .tab-switch a:hover,
#uraraka .biz .bento-biz .tab-switch.is-active a,
#uraraka .biz .bento-biz .tab-contents {background: #ffeeea;}
#uraraka .biz .books-biz .tab-switch a:hover,
#uraraka .biz .books-biz .tab-switch.is-active  a,
#uraraka .biz .books-biz .tab-contents {background: #dff8f9;}

#uraraka .biz .tab-contents {display: none; width: 100%; height: 100%;}
#uraraka .biz .tab-contents.is-active {display: block;}

/*弁当*/
#uraraka .biz .bento-biz .abouts .sec-txt .ttl {color: #472525; font-weight: 500;}
#uraraka .biz .bento-biz .abouts .sec-txt .txt {color: #472525;}
#uraraka .biz .bento-biz .abouts .sec-img {position: relative;}
#uraraka .biz .bento-biz .abouts .sec-img .fig {position: absolute;}
#uraraka .biz .bento-biz .abouts .sec-img .fig span {display: block; color: #472525; font-weight: 500; line-height: 1;}
#uraraka .biz .bento-biz .abouts .sec-img .fig .deco,
#uraraka .biz .bento-biz .abouts .sec-img .fig .line {position: absolute;}
#uraraka .biz .bento-biz .abouts .sec-img .photo {position: relative;}
#uraraka .biz .bento-biz .abouts .sec-img .photo .shadow-base {position: absolute; z-index: 1;}
#uraraka .biz .bento-biz .abouts .sec-img .photo img {position: relative; width: 100%; height: auto; z-index: 2;}

#uraraka .biz .bento-biz .commit .ttl {color: #472525; font-weight: 500; line-height: 1; text-align: center;}
#uraraka .biz .bento-biz .commit .commit-list .list-item .img {background: #fff; border-radius: 50%; overflow: hidden; margin: 0 auto;}
#uraraka .biz .bento-biz .commit .commit-list .list-item .txt {color: #472525; font-weight: 500;}

/*古本*/
#uraraka .biz .books-biz .abouts .sec-txt {flex-direction: column;}
#uraraka .biz .books-biz .abouts .sec-txt .ttl {color: #472525; font-weight: 500;}
#uraraka .biz .books-biz .abouts .sec-txt .txt {color: #472525;}
#uraraka .biz .books-biz .abouts .sec-img .img-list {justify-content: center; align-items: center;}
#uraraka .biz .books-biz .abouts .sec-img .img-list .list-item {position: relative; background: #fff; border-radius: 50%;}
#uraraka .biz .books-biz .abouts .sec-img .img-list .list-item .item-warp {position: relative; display: flex; justify-content: center; align-items: center; flex-direction: column;}
#uraraka .biz .books-biz .abouts .sec-img .img-list .list-item .img {position: relative;}
#uraraka .biz .books-biz .abouts .sec-img .img-list .list-item .txt {color: #472525; font-weight: 500; text-align: center;}
#uraraka .biz .books-biz .natubomb {position: relative;}
#uraraka .biz .books-biz .natubomb .sec-img {border: 1px solid #707070; overflow: hidden;}
#uraraka .biz .books-biz .natubomb .sec-txt .ttl {color: #472525; font-weight: 500;}
#uraraka .biz .books-biz .natubomb .sec-txt .txt {color: #472525;}
#uraraka .biz .books-biz .natubomb .deco {position: absolute;}

/*CTA*/
#uraraka .biz .contact-cta {align-items: center; justify-content: center; flex-direction: column; position: relative; background: center/cover no-repeat; z-index: 2;}
#uraraka .biz .contact-cta:before {content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: #a7a7a7; mix-blend-mode: multiply; z-index: 3;}
#uraraka .biz .contact-cta * {position: relative; color: #fff; z-index: 4;}
#uraraka .biz .contact-cta .btn {font-weight: 500; text-align: center; line-height: 1; margin: 0 auto;}
#uraraka .biz .contact-cta .btn:hover {color: #472525; background: #fff; opacity: 1;}
#uraraka .biz .contact-cta .c-tel-btn svg.tel path {fill: transparent; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; stroke: #fff;}
#uraraka .biz .contact-cta .c-tel-btn svg.fax path {fill: #fff; background: #999;}
#uraraka .biz .contact-cta .c-tel-btn .num .border {fill: #fff; width:100%; transform:scale(1.075,1.075); transform-origin: center;}

_:-ms-input-placeholder,
:root #uraraka .biz .contact-cta:before {background: rgba(0,0,0, .3);}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
投稿ページ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/

/*タグ*/
#post-blog .cate-tag-list {flex-wrap: wrap;}
#post-blog .cate-tag-item {display: block; color: #fff; line-height: 1; text-align: center; background: #707070;}
#post-blog .cate-tag-item.beeing {background: #faa6a6;}
#post-blog .cate-tag-item.le-plaisante {background: #8ad8d4;}
#post-blog .cate-tag-item.uraraka {background: #f9b26e;}
#post-blog .cate-tag-item.rapport {background: #b8da66;}
#post-blog .cate-tag-item.iiyama {background: #e2c94b;}

/*投稿リスト*/
#post-blog .post-list .post-item a {height: 100%;}
#post-blog .post-list .post-item a:hover {opacity: 1; background: #fdf4f1;}
#post-blog .post-list .post-item .item-img {position: relative; width: 100%; overflow: hidden;}
#post-blog .post-list .post-item a:hover .item-img img {transform: scale(1.05);}
#post-blog .post-list .post-item .item-txt .state {justify-content: flex-start; align-items: center;}
#post-blog .post-list .post-item .item-txt .time,
#post-blog .post-list .post-item .item-txt .ttl {font-weight: 500;}
#post-blog .post-list .post-item .item-txt .time {align-items: baseline; line-height: 1;}
#post-blog .post-list .post-item .item-txt .excerpt {display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}

/*--------------------------------------------------------------------------
ブログ一覧
--------------------------------------------------------------------------*/
#post-blog.archive .c-headline {position: relative;}
#post-blog.archive .c-headline .leef {position: absolute;}

#post-blog.archive .cate-list-selecter {position: relative; border: 1px solid #472525;}
#post-blog.archive .cate-list-selecter i {content: ""; display: block; position: absolute; border-bottom: 2px solid #b93b37; border-right: 2px solid #b93b37; transform: rotate(45deg); transform-origin: center; transition: .4s ease; pointer-events: none;}
#post-blog.archive .cate-list-selecter.is-open i {transform: rotate(225deg);}
#post-blog.archive .cate-list-selecter select,
#post-blog.archive .cate-list-selecter select option {width: 100%; color: #4d3a3a; cursor: pointer;}

#post-blog.archive .post-list .post-item .item-txt .time,
#post-blog.archive .post-list .post-item .item-txt .ttl,
#post-blog.archive .post-list .post-item .item-txt .excerpt {color: #4d3a3a;}

/*--------------------------------------------------------------------------
ブログ個別
--------------------------------------------------------------------------*/
#post-blog.single .post-head .post-ttl {text-align: center;}
#post-blog.single .post-head .post-ttl .ttl-wrap {position: relative; display: inline-flex; vertical-align: middle;}
#post-blog.single .post-head .post-ttl .txt {position: relative; font-weight: 500;}
#post-blog.single .post-head .post-ttl .leef {position: absolute; display: block;}
#post-blog.single .post-head .post-state .time {justify-content: flex-end; align-items: baseline; color: #4d3a3a; font-weight: 500;}
#post-blog.single .post-head .post-state .cate-tag-list {justify-content: flex-end;}

#post-blog.single .post-link {position: relative; box-sizing: border-box; overflow: hidden;}
#post-blog.single .post-link .post-item {box-sizing: border-box; opacity: 1;}
#post-blog.single .post-link a.post-item:hover {background: #fdf4f1;}
#post-blog.single .post-link .post-item .arrow {position: relative; background: #e0e0e0; transition: .4s ease;}
#post-blog.single .post-link .post-item .arrow:before {content: ""; position: absolute; width: 0; height: 0; border-style: solid;}
#post-blog.single .post-link .post-item.next .arrow:before {border-color: transparent #fff transparent transparent;}
#post-blog.single .post-link .post-item.prev .arrow:before {border-color: transparent transparent transparent #fff;}
#post-blog.single .post-link .post-item .post-inner {align-items: center; box-sizing: border-box;}
#post-blog.single .post-link .post-item .post-img {overflow: hidden;}
#post-blog.single .post-link .post-item:hover .post-img img {transform: scale(1.025);}
#post-blog.single .post-link .post-item.next .post-ttl {text-align: left;}
#post-blog.single .post-link .post-item.prev .post-ttl {text-align: right;}

#post-blog.single .more-posts .sec-ttl {font-weight: 500; line-height: 1; text-align: center;}
#post-blog.single .more-posts .post-list {flex-wrap: wrap;}
#post-blog.single .more-posts .post-list .post-item {overflow: hidden;}
#post-blog.single .more-posts .post-list .post-item a {background: #fcfcfc;}
#post-blog.single .more-posts .post-list .post-item a:hover {background: #fdf4f1;}

#post-blog.single .tax-list .cate-tag-list li .cate-tag-item {letter-spacing: .025em;}

/*--------------------------------------------------------------------------
404
--------------------------------------------------------------------------*/
#notfound .sec-txt {text-align: center;}
