@charset "utf-8";
/*
Theme Name: Lightning Child
Template: lightning
Author:アートフレア株式会社
Version: 1.2
*/
/* 標準データ最終更新日：2026/01/29  */


/*
 * WEBフォントの読み込み（@import url('https://fonts～'); ）はHeader.phpで行う
*/


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  General　全体的な設定
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* :root設定、bodyへの上書き、カラー変数設定など */
:root{
	--en:var(--wp--preset--font-family--mobo-bold);
	--af-photo-ratio: 3 / 2 !important;
}
h1, h2, h3, h4, h5, h6, .page-header-title{
	font-family: var(--en);
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Common 汎用パーツ系
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 繰り返しボタン・見出し、余白設計など 汎用パーツへの上書き */

/* リンクエリア拡張 */
.stretched-linkitem {
    position: relative !important;
}
.stretched-linkitem a::after{
	position:absolute;
	top:0;	right:0;	bottom:0;	left:0;
	z-index:1;
	pointer-events:auto;
	content:"";
	background-color:rgba(0,0,0,0);
}
.vk_button .has-text-color.vk_button_link-type-text .vk_button_link_txt,
.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt {
    text-decoration: underline;
    text-decoration-style: solid;
    text-underline-offset: .5em;
    transition:.3s;
}
.vk_button .vk_button_link.btn {
    border-radius: 500px;
    padding-inline: 2rem;
    transition:.3s;
}
.vk_button .vk_button_link.btn:hover {
    opacity: 1;
    box-shadow: none;
    filter: saturate(1.5);
}
.vk_button .has-text-color.vk_button_link-type-text .vk_button_link_txt {
    text-decoration-color: transparent;
}
.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt {
    text-decoration-color:unset:
}
.vk_button_link i {
    transition:.3s;
}
.vk_button_link:hover i:where(.fa-angle-right,.fa-arrow-right).vk_button_link_after {
    transform:translateX(3px);
}
.vk_button_link:hover i:where(.fa-angle-left,.fa-arrow-left).vk_button_link_before {
    transform:translateX(-3px);
}

/* 立体ボタン */
.vk_button.btn-3d .vk_button_link.btn {
    border-radius: 5px;
    padding: 1rem;
    box-shadow: inset 0px -5px rgb(0 0 0 / 10%);
    border: none;
}
.vk_button.btn-3d .vk_button_link.btn:hover{
    transform:translateY(3px);
}

/* 画像 */
figure.wp-block-image img {
    border-radius: 20px;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Header ヘッダーまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ヘッダー固定 */
body  {
	overflow-x: unset !important;
    display: flex;
    flex-direction: column;
}
.device-pc #site-header {
    position: sticky;
    top: 0;
}
.logged-in.device-pc #site-header {
    top: 32px;
}

/* グローバルナビ */
.global-nav-list>li>a {
	transition: .3s;
	border-bottom: 3px solid transparent;
}
.global-nav-list>li>a:hover,
.global-nav-list>li.current-menu-item>a {
    color: var(--vk-color-custom-1);
    border-bottom: 3px solid var(--vk-color-custom-1);
}

div#site-header-container {
    max-width: unset;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Footer フッターまわり
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* フッターウィジェット、フッターロゴ、コピーライト */

.site-footer {
    font-size: 1rem;
}

#footer-nav {
    list-style: none;
    padding: 0;
    columns: 2;
    column-gap: 2rem;
}
#footer-nav li {
    margin-top: 0;
    margin-bottom: 1rem;
}
#footer-nav a {
    display: block;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Toppage トップページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */

/* fv */
div#fv {
    position: relative;
}

div#fv .fv-slider {
}
div#fv .vk_slider_item .wp-block-image img:not([style*=object-fit]) {
    height: 85vh !important;
    object-fit: cover !important;
    object-position: center center;
}


div#fv rp {
    display: ruby-text;
    font-size: 0.4em;
    text-align: center;
}
div#fv-box {
/*     width: 50%; */
    margin-left: 0 !important;
    margin-right: auto !important;
    min-width: 550px;
    position: absolute;
	z-index:10;
    top: 50%;
    left: 10%;
    transform: translateY(-50%);
}


figure.wp-block-image.size-full.top-search-img {
    position: absolute;
    top: -140px;
    right: 0;
    z-index: 10;
    width: 160px;
}

.vk_postList.top-latestnews .postListText {
    border: none;
    padding-block: 0 !important;
}


/* サービス */
.top-service-btn a.vk_button_link {
    width: 100%;
    display: block;
    padding-right:10px;
	margin-bottom: 1rem;
}
.top-service-btn i {
	color: var(--vk-color-primary);
}
.top-service-btn .vk_button_link_caption {
    display: flex;
    justify-content: space-between;
}
.top-service-btn span.vk_button_link_txt {
    font-weight: bold;
    font-family: var(--en);
    color: #333;
}


/* 採用 */
.top-recruit-title p.vk_heading_subtext {
    font-size: 8rem;
    line-height: 1;
    opacity: 0.3;
    position: absolute;
    top: 0;
}
.top-recruit-title h2.vk_heading_title {
    font-size: 3.5rem;
    margin-top: 5rem !important;
}
figure.wp-block-image.top-recruit-img {
    position: absolute;
    bottom: 60px;
    left: -120px;
    width: 300px;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Pageheader, Breadcrumb 下層ページヘッダー・パンくずリスト
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* 下層ページのページヘッダー、パンクズ設定 */



/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Page 下層ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* ページごと、パーツごとにコメントアウトで注釈を入れてください。 */

/* Service */
.wp-block-group.service-div {
    border: solid 2px #ddd;
    border-radius: 10px;
    padding: 20px 40px;
    margin-block-end: 1.5rem !important;
}



/* 採用・店舗カード */
.recruit-storecard .af-store-card-embed__card {
    display: flex;
    flex-direction: row;
}
.recruit-storecard .af-store-card__actions {
    display: none;
}
.recruit-storecard .af-store-card__tags {
    display: none;
}
.recruit-storecard .af-store-card__image {
    width: 50%;
}


/* 採用・データ */
.recruit-data>.wp-block-column {
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding:1.5rem;
}
.recruit-data strong {
	font-size: 1.6em;
	font-weight: 900;
    font-family: 'MOBO-Bold';
	white-space:nowrap;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Archive　ブログ一覧ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */

.vk_post:hover {
    background: unset;
}
.postListText {
    border-bottom: solid 2px #ddd;
    padding-right: 50px !important;
}
.postListText_date {
    font-size: 1rem;
    font-family: var(--en);
}
.postListText_title {
    font-size: 1rem;
}
.postListText::after {
	transition:.3s;
    content: "\f061";
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translate(-50%,-50%);
    color: #ccc;
}
.postListText:hover::after {
	color:#aaa;
}

/* ページネーション */
ul.page-numbers {
    display: flex;
    gap: 10px;
}
ul.page-numbers li {
    float: none;
}
ul.page-numbers li>.page-numbers {
    font-size: 20px;
    font-weight: bold;
}
ul.page-numbers li>.page-numbers{
    border: solid 2px transparent !important;
		border-radius: 0 !important;
		margin-left: 0 !important;
}
ul.page-numbers li>.page-numbers:not(.current) {
    border: solid 2px #eee !important;
    border-radius: 0 !important;
    margin-left: 0 !important;
    font-size: 20px;
    font-weight: bold;
}
ul.page-numbers li>.page-numbers:not(.current){
	transition:.3s;
}
ul.page-numbers li>.page-numbers:not(.current):hover{
	filter: brightness(0.9);
}
ul.page-numbers li>.page-numbers,
ul.page-numbers li>.page-numbers:not(.current) {
    width: 45px;
    border-radius: 50% !important;
    padding: 0 !important;
    display: grid !important;
    align-items: center;
    background: #eee;
    aspect-ratio: 1 / 1;
    max-width: 10vw;
}
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  Single　ブログ詳細ページ
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */

.archive.post-type-post #main,
.blog.post-type-post #main,
.single-post #main,
.single-recruit #main{
    max-width: 900px;
    margin-inline: auto;
}

.entry-meta {
    font-size: 1rem;
    font-weight: bold;
}

header.entry-header {
    border-bottom: solid 2px #ddd;
    padding-bottom: 1rem;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  採用
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.vk_post-postType-recruit.card {
    border-radius: 20px;
    padding: 0 !important;
}

.vk_post-postType-recruit.vk_post_body.card-body {
    padding: 2rem;
}

.vk_post-postType-recruit.vk_post .vk_post_title {
    font-size: 1.25rem;
}

.vk_post-postType-recruit.vk_post .vk_post_excerpt {
    font-size: 0.875rem;
    opacity: 0.9;
}

.vk_post-postType-recruit dl.vk_post_taxonomy {
    font-size: 0.875rem;
}
.vk_post-postType-recruit .vk_post_taxonomy dt.vk_post_taxonomy_title::before {
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    border: 0;
    color: var(--vk-color-primary);
    width:1rem;
    display:inline-block;
    text-align: center;
}
.vk_post-postType-recruit .vk_post_taxonomy-recruit-area dt.vk_post_taxonomy_title::before {
    content: '\f276';
}
.vk_post-postType-recruit .vk_post_taxonomy-recruit-position dt.vk_post_taxonomy_title::before {
    content: '\f02b';
}
.vk_post-postType-recruit .vk_post_taxonomy-recruit-company dt.vk_post_taxonomy_title::before {
    content: '\f1ad';
}
.vk_post-postType-recruit .vk_post_taxonomy_title_inner {
    font-size: 0;
    border: 0;
}

/* 採用詳細 */
/* フッタータグ・カテゴリ */
.entry-footer {
    margin-top: var(--vk-margin-section-bottom);
    display: flex;
    gap: 1em 3em;
    justify-content: center;
    flex-wrap: wrap;
}
.entry-meta-data-list{
    padding: 0;
}
.entry-meta-data-list dl {
    margin: 0;
    display: flex;
    align-items: baseline;
}
.entry-meta-data-list dt {
    background: none;
    color: unset;
    font-size: 1rem;
    padding: 0;
    min-width: unset;
    text-align: left;
    float: unset;
    margin-right: 1em;
}
.entry-meta-data-list dd.tagcloud {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 5px;
}
.entry-meta-data-list dd a {
    font-size: 14px !important;
    background: #eee;
    padding: 0.3em 1em;
    text-decoration: none;
    color: #777;
    border-radius: var(--vk-size-radius);
    margin: 0;
    transition: .3s;
    min-width: 140px;
    text-align: center;
}
.entry-meta-data-list dd a:hover {
    text-decoration: none;
    color: #333;
    background: #ddd;
}
.entry-meta-data-list dt::before {
    font-family: "Font Awesome 7 Free";
    font-weight: 900;
    border: 0;
    color: var(--vk-color-primary);
    width:2rem;
    display:inline-block;
    text-align: center;
}
.entry-meta-data-list.entry-meta-data-list--recruit-area dt::before {
    content: '\f276';
}
.entry-meta-data-list.entry-meta-data-list--recruit-position dt::before {
    content: '\f02b';
}
.entry-meta-data-list.entry-meta-data-list--recruit-company dt::before {
    content: '\f1ad';
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
 *  その他・追加機能
 * ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
/* パーツごとにコメントアウトで注釈を入れてください。 */


:root{
	--af-icon-arrow-right: "\f061";
    --af-icon-arrow-left: "\f060";
    --af-icon-angle-down: "\f063";
}

/* TOP */
.af-store-search-feature__select-wrap::after {
    display: none;
}
.af-store-base.af-store-search-area {
    display: flex;
    flex-wrap: nowrap;
}
form.af-store-base.af-store-search-feature {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

a.af-store-search-area__item.af-store-area-btn--t41 {
    background: #c987bc;
    border: none;
}
a.af-store-search-area__item.af-store-area-btn--t38 {
    background: #eea667;
    border: none;
}
a.af-store-search-area__item.af-store-area-btn--t18 {
    background: #ec8888;
    border: none;
}
a.af-store-search-area__item.af-store-area-btn--t40 {
    background: #8facd6;
    border: none;
}

.top-storelist .row {
    display: flex;
    align-items: stretch;
}
.top-storelist .af-store-base.af-store-card-embed {
    height: 100%;
}
.top-storelist .af-store-card__tags {
    display: none;
}
.top-storelist .af-store-card__actions {
    display: none;
}
.top-storelist .af-store-card-embed__card {
    height: 100%;
}


/* 薬局一覧ページ */
.af-store-card__actions-stack {
    display: none;
}
.af-store-search-form {
    border: 2px solid var(--af-border-color);
    box-shadow: none;
}

span.af-store-tag.af-store-tag--pref {
    top: var(--af-gap-sm);
    bottom: auto;
    border-radius: 100px;
    color: #fff;
    font-weight: bold;
    background: #333;
}
span.af-store-tag--pref.af-store-tag--t41 {
    background: #c987bc;
}
span.af-store-tag--pref.af-store-tag--t38 {
    background: #ec8888;
}
span.af-store-tag--pref.af-store-tag--t18 {
    background: #eea667;
}
span.af-store-tag--pref.af-store-tag--t40 {
    background: #8facd6;
}

.af-store-card__img {
    height: unset;
    aspect-ratio: 3 / 2;
}
.af-store-badge--distance {
    position: static;
    box-shadow: none;
    padding: 0;
}

/* 薬局一覧ページのページネーションをLightningと揃える */
.af-store-page-btn {
    font-size: 20px;
    font-weight: bold;
    width: 45px;
    height: 45px;
    border-radius: 50% !important;
    padding: 0 !important;
    align-items: center;
    background: #eee;
    aspect-ratio: 1 / 1;
    max-width: 10vw;
    color: var(--vk-color-text-body);
    text-decoration: none;
    border: none;
    transition: .3s;
}
.af-store-page-btn--active {
    color: #fff;
    background-color: var(--vk-color-primary);
}
.af-store-page-btn:hover {
    filter: brightness(0.9);
}
.af-store-page-btn--prev,
.af-store-page-btn--next {
    font-size: 0;
}
.af-store-page-btn--prev::before,
.af-store-page-btn--next::after {
    font-size:20px;
    font-family: initial;
}
.af-store-page-btn--prev::before {
    content: "«";
    margin-right: 0;
}
.af-store-page-btn--next::after {
    content: "»";
    margin-left:0;
}
/* 薬局詳細ページ */
.af-store-single__gallery-main {
    margin-bottom: var(--af-gap-xl);;
}
.af-store-single__gallery-thumb {
    width: unset;
    height: unset;
    aspect-ratio: 1;
    border-radius: 10px;
}
.af-store-single__gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(4,1fr);
}
a.af-store-single__tel {
    font-size: 1.5rem;
    font-weight: bold;
    display: block;
}
table.af-store-single__table {
    margin-bottom: 2rem;
}
table.af-store-single__table,
td.af-store-single__table-td,
th.af-store-single__table-th {
	border-left: 0;
    border-right: 0;
}
td.af-store-single__table-td,
th.af-store-single__table-th {
    padding:1rem;
	font-size:1rem;
}


/* 時刻表 */
.af-store-hours-grid {
    font-size: unset;
    border-radius: 0;
}
.af-store-hours-grid__item {
    padding: 0;
    gap: 0;
    background: none;
}
span.af-store-hours-grid__day {
    padding: 0.5em;
    border-bottom: 1px solid var(--af-border-color);
    display: block;
    width: 100%;
    background: #f9f9f9;
}

span.af-store-hours-grid__value {
    display: block;
    padding: .5em;
}
.af-store-hours-table td, .af-store-hours-table th {
    font-size: 1rem;
}

/* 地図内の「詳細を見る」リンク文字色 */
.leaflet-container a {
    color: #fff !important;
}


/* VK search UI改良版CSS　*/
@media (min-width: 992px) {
.vkfs__outer-wrap {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 1rem;
    margin-bottom: 1rem;
    border-bottom: solid 1px #ddd;
    padding-bottom: 1rem;
	align-items:center;
}
.vkfs__outer-wrap .vkfs__label-name {
    min-width: 150px;
    display: flex;
    margin-bottom: 0;
    align-items: center;
    justify-content: center;
    align-content: center;
}
.vkfs__label-name-inner {
/*     writing-mode: vertical-rl;
    line-height: 1; */
}
.vkfs__input-form.vkfs__input-wrap {
    width: 100%;
}
}
button.vkfs_submit {
    position: sticky;
    bottom: 15px;
    z-index: 100;
}
button.vkfs_submit {
    max-width: 300px;
}
button.vkfs_submit.btn.btn-primary {
    font-size: 1rem;
    border: none;
    border-radius: 500px;
    min-height: 50px;
}


.vkfs__input-wrap {
    justify-content: flex-start;
}
.vkfs__input-wrap label{
    border-radius:5px;
    transition:.3s;
    position: relative;
    display: flex;
    padding: .5em .5em;
}
.vkfs__input-wrap label:has(input[type=checkbox]:checked),
.vkfs__input-wrap label:has(input[type=radio]:checked),
.vkfs__input-wrap label:hover {
    background:#f0f0f0;
}
.vkfs input[type=checkbox],
.vkfs input[type=radio] {
    position: relative;
    top: unset;
    z-index: 2;
}
.vkfs__has-children .vkfs__children {
    margin-left: 1em;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    gap: 0 0.5em;
}
.vkfs__input-wrap li {
    padding: 0;
    margin-bottom: .5em;
}
.vkfs__input-wrap li:last-child {
    flex-grow:0 !important;
}
 
/* 場合によっては　これも */ 
.vkfs__children li {
    flex-basis: unset;
}


/* スクロール固定Column */
.position-sticky-wrap {
    overflow: visible !important;　/* 包含するouterに */
}
.device-pc .wp-block-column.position-sticky-column {
    position: sticky; /* PCにのみ反映。 */
    top: 130px;
    align-self: flex-start;
}