@charset "UTF-8";
/* Contact review must preserve line breaks and long entered values. */
.page-template-page-contact-confirm .wpcf7 td { overflow-wrap: anywhere; }
.page-template-page-contact-confirm .wpcf7 .message_box td p { white-space: pre-line; }
.contact_thanks { overflow: hidden; }
@media screen and (max-width: 767.9px) {
  /* Keep the LINE link in the hero; do not cover form controls while scrolling. */
  body:has(.wpcf7) .header .main_visual-line,
  .page-template-page-contact-thanks .header .main_visual-line { display: none; }
  body:has(.wpcf7) .page_top .main_visual-line.is-follow,
  .page-template-page-contact-thanks .page_top .main_visual-line.is-follow { position: absolute !important; top: auto; bottom: 20px; }
  .wpcf7 input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]),
  .wpcf7 textarea { font-size: 16px; max-width: 100%; }
}
/*
Theme Name: SOOON Premium Reform V2
Description: SOOON Premium V2 Reform site theme
Author: SOOON株式会社
Version: 2.0.0-rc.1

*/
/* CF7 validates the confirmation address; edits belong on the input step. */
.wpcf7 input.sooon-confirm-email[readonly] {
    border: 0;
    background: transparent;
    padding: 0;
    color: inherit;
    font: inherit;
    width: 100%;
    max-width: 100%;
    box-shadow: none;
}

/*
ーカラーの指定方法ー

◎背景色  
color: var(--background-color);

◎メインカラー  
color: var(--main-color);

◎サブカラー  
color: var(--sub-color);

◎フォントカラー  
color: var(--font-color);

◎深色カラー  
color: var(--main2-color);

◎アクセントカラー  
color: var(--accent_color);

◎お知らせカテゴリーカラー  
color: var(--category-color);

*/

/* Native menu locations follow the theme's hamburger breakpoint. */
.header .sooon-mobile-nav { display: none; }
/* Generated logo placeholders must remain whole in portrait photo slots. */
img[src*="/sooon-logo-share-"] {
    object-fit: contain !important;
    background-color: #f7f5ef;
}
.sooon-action-menu ul { display: flex; flex-wrap: wrap; gap: 12px; list-style: none; margin: 0; padding: 0; }
.sooon-action-menu a { display: inline-flex; align-items: center; min-height: 40px; padding: 6px 16px; border: 1px solid currentColor; font-size: 14px; }
@media screen and (max-width: 1349.9px) {
    .header .sooon-desktop-nav { display: none; }
    .header .sooon-mobile-nav { display: block; }
}
/* Keep logged-in mobile editing controls below the WordPress toolbar. */
@media screen and (max-width: 782px) {
    body.admin-bar #wpadminbar { position: fixed; }
    body.admin-bar .header { top: 46px; }
    body.admin-bar #js-hamburger { top: 66px; }
}
