@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/



/* Contact forms: single-column, calm color system — 2026-08-25 */
.rma-form-page{
  --navy:#174a43!important;
  --blue:#174a43!important;
  --orange:#174a43!important;
  --ink:#1f2f2c!important;
  max-width:920px!important;
  color:#1f2f2c!important;
}
.rma-form-hero{
  padding:34px clamp(20px,5vw,44px)!important;
  border:1px solid #d7e1de!important;
  border-radius:16px!important;
  background:#f4f7f6!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#1f2f2c!important;
}
.rma-form-hero .eyebrow{margin-bottom:8px!important;color:#526964!important;}
.rma-form-hero h2{
  color:#174a43!important;
  font-size:clamp(28px,4vw,38px)!important;
}
.rma-form-hero p{margin-top:12px!important;color:#40534f!important;}
.rma-form-hero:after{display:none!important;}

.rma-fee-banner{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:18px!important;
  margin:14px 0 22px!important;
  padding:16px 20px!important;
  border:1px solid #d7e1de!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.rma-fee-banner strong{
  color:#174a43!important;
  font-size:30px!important;
}
.rma-fee-banner small{color:#5c6d69!important;}
.rma-process{display:none!important;}

.rma-form-shell{
  padding:34px clamp(18px,5vw,48px)!important;
  border:1px solid #d7e1de!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(23,74,67,.06)!important;
}
.rma-form-lead,
.rma-easy-intro{
  margin-bottom:22px!important;
  padding:18px!important;
  border:1px solid #dfe7e4!important;
  border-radius:10px!important;
  background:#f6f8f7!important;
  background-image:none!important;
}
.rma-easy-intro>strong{color:#174a43!important;}
.rma-easy-badges{display:none!important;}

.rma-form-section{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:20px!important;
}
.rma-form-step{
  border-bottom:1px solid #b8c9c5!important;
  color:#174a43!important;
}
.rma-form-step span{background:#174a43!important;}

.rma-form-shell .wpcf7-form .rma-field{
  display:block!important;
  width:100%!important;
  margin:0 0 22px!important;
}
.rma-form-shell .wpcf7-form .rma-label{color:#263a36!important;}
.rma-form-shell .wpcf7-form .rma-label em,
.rma-form-shell .wpcf7-form .rma-field em{background:#914537!important;}
.rma-form-shell .wpcf7-form .rma-optional,
.rma-form-shell .wpcf7-form .rma-label .rma-optional{
  background:#687773!important;
}
.rma-form-shell .wpcf7-form .rma-field small,
.rma-form-note{color:#5c6d69!important;}

.rma-form-shell .wpcf7-form input[type="text"],
.rma-form-shell .wpcf7-form input[type="email"],
.rma-form-shell .wpcf7-form input[type="tel"],
.rma-form-shell .wpcf7-form input[type="url"],
.rma-form-shell .wpcf7-form select,
.rma-form-shell .wpcf7-form textarea{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:54px!important;
  padding:14px 16px!important;
  border:1px solid #aebdb9!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#1f2f2c!important;
  font-size:16px!important;
  line-height:1.5!important;
}
.rma-form-shell .wpcf7-form textarea{
  min-height:150px!important;
  resize:vertical!important;
}
.rma-form-shell .wpcf7-form input::placeholder,
.rma-form-shell .wpcf7-form textarea::placeholder{
  color:#6b7874!important;
  opacity:1!important;
}
.rma-form-shell .wpcf7-form input:focus,
.rma-form-shell .wpcf7-form select:focus,
.rma-form-shell .wpcf7-form textarea:focus{
  border-color:#174a43!important;
  outline:3px solid #c9ddd8!important;
  outline-offset:1px!important;
}
.rma-form-shell .wpcf7-form input[type="checkbox"],
.rma-form-shell .wpcf7-form input[type="radio"]{
  accent-color:#174a43!important;
}

.rma-choice-field,
.rma-consent{
  border:1px solid #dfe7e4!important;
  background:#f6f8f7!important;
}
.rma-choice-field .wpcf7-checkbox,
.rma-choice-field .wpcf7-radio{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:8px!important;
}
.rma-form-shell .wpcf7-form .wpcf7-list-item{
  display:block!important;
  width:100%!important;
  margin:8px 0!important;
}
.rma-form-shell .wpcf7-form .wpcf7-list-item label{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:48px!important;
  border:1px solid #d7e1de!important;
  background:#fff!important;
}
.rma-form-shell .wpcf7-form .wpcf7-list-item label:hover{
  border-color:#174a43!important;
  background:#f7faf9!important;
}

.rma-more{
  border:1px solid #d7e1de!important;
  background:#f6f8f7!important;
}
.rma-more summary{color:#174a43!important;}
.rma-more__body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
  background:#fff!important;
}
.rma-more__body>*,
.rma-more__body .rma-field--wide{
  grid-column:1!important;
}

.rma-alert{
  border-left:4px solid #914537!important;
  background:#faf7f5!important;
}
.rma-alert strong{color:#77392f!important;}
.rma-submit-assurance,
.rma-needs-consent-notice{
  border:1px solid #d7e1de!important;
  background:#f6f8f7!important;
}
.rma-submit-assurance strong,
.rma-needs-consent-notice>strong{color:#174a43!important;}
.rma-needs-consent-notice .wpcf7-list-item label{
  border-color:#d7e1de!important;
  background:#fff!important;
}

.rma-form-page .rma-form-shell .wpcf7-form .rma-submit input.wpcf7-submit[type="submit"]{
  min-height:58px!important;
  border:0!important;
  border-radius:8px!important;
  background:#174a43!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#fff!important;
}
.rma-form-page .rma-form-shell .wpcf7-form .rma-submit input.wpcf7-submit[type="submit"]:not(:disabled):hover{
  transform:none!important;
  background:#103f3a!important;
  box-shadow:none!important;
}
.rma-form-page .rma-form-shell .wpcf7-form .rma-submit input.wpcf7-submit[type="submit"]:focus-visible{
  outline:3px solid #b7d2cc!important;
  outline-offset:3px!important;
}
.rma-form-page .rma-form-shell .wpcf7-form .rma-submit input.wpcf7-submit[type="submit"]:disabled{
  border:1px solid #b9c2bf!important;
  background:#e4e8e6!important;
  color:#52605d!important;
  opacity:1!important;
}
.rma-back a{color:#174a43!important;}

@media(max-width:767px){
  .rma-form-page{padding:8px 10px 56px!important;}
  .rma-form-hero{padding:26px 18px!important;border-radius:12px!important;}
  .rma-form-hero h2{font-size:27px!important;}
  .rma-form-hero p{font-size:14px!important;}
  .rma-fee-banner{
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:12px!important;
    padding:14px!important;
  }
  .rma-fee-banner strong{margin:0!important;font-size:27px!important;}
  .rma-form-shell{padding:24px 14px!important;border-radius:12px!important;}
  .rma-form-lead,
  .rma-easy-intro{padding:16px!important;}
  .rma-more__body{padding:16px!important;}
  .rma-form-shell .wpcf7-form .wpcf7-list-item label{min-height:50px!important;}
  .rma-form-page .rma-form-shell .wpcf7-form .rma-submit input.wpcf7-submit[type="submit"]{
    width:100%!important;
    min-width:0!important;
  }
}


/* Contact form conflict fixes — 2026-08-25 */
body .rma-form-page .rma-form-hero .eyebrow{
  margin:0 0 8px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .rma-form-page .rma-form-hero h2{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#174a43!important;
  line-height:1.35!important;
}
body .rma-form-page .rma-form-shell .rma-easy-badges{
  display:none!important;
}
body .rma-form-page .rma-more summary:focus,
body .rma-form-page .rma-more summary:focus-visible{
  outline:3px solid #174a43!important;
  outline-offset:2px!important;
  box-shadow:0 0 0 3px #fff!important;
}


/* Contact form mobile fee banner fix — 2026-08-25 */
@media(max-width:767px){
  body .rma-form-page .rma-fee-banner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    gap:6px!important;
    padding:16px!important;
  }
  body .rma-form-page .rma-fee-banner strong{
    display:block!important;
    margin:0!important;
    font-size:26px!important;
    line-height:1.25!important;
  }
  body .rma-form-page .rma-fee-banner p{
    margin:0!important;
    line-height:1.7!important;
  }
}


/* Responsive typography and compact-form controls — 2026-08-26 */
@media(max-width:600px){
  :root{
    --swl-fz--root:16px!important;
    --swl-fz--content:16px!important;
  }
}

.error404 .c-searchForm__s,
.c-ttl404 + .post_content .c-searchForm__s{
  min-height:44px!important;
  font-size:16px!important;
}
.error404 .c-searchForm__submit,
.c-ttl404 + .post_content .c-searchForm__submit{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
}

@media(max-width:374px){
  body .rma-form-page .rma-form-shell .wpcf7-form .rma-submit input.wpcf7-submit[type="submit"]{
    padding-right:10px!important;
    padding-left:10px!important;
    font-size:14px!important;
    letter-spacing:0!important;
  }
}
