:root{
          --bg:#F6F5F1;
          --card:#FFFFFF;
          --ink:#24312B;
          --ink-soft:#5B6960;
          --accent:#1F6F5C;
          --accent-dark:#154E41;
          --required:#B3452F;
          --border:#DDE3DD;
        }

        body.semi-form-page{
          background:var(--bg);
          font-family:"Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", sans-serif;
          color:var(--ink);
        }

        body.semi-form-page .contact{
          max-width:640px;
          margin:0 auto;
          padding:2.5rem 1.25rem 5rem;
        }

        body.semi-form-page .contact figure{
          margin:0 0 2.5rem;
        }

        body.semi-form-page .contact figure img{
          width:100%;
          height:auto;
          display:block;
          border-radius:10px;
          box-shadow:0 8px 28px rgba(36,49,43,0.12);
        }

        body.semi-form-page .form-card{
          background:var(--card);
          border:1px solid var(--border);
          border-radius:14px;
          padding:2.5rem 2rem;
          box-shadow:0 2px 10px rgba(36,49,43,0.05);
        }

        body.semi-form-page .form-card__lead{
          margin:0 0 2rem;
          font-size:0.95rem;
          line-height:1.8;
          color:var(--ink-soft);
          padding-bottom:1.75rem;
          border-bottom:1px solid var(--border);
        }

        body.semi-form-page .mw_wp_form table{
          border-collapse:collapse;
          width:100%;
        }

        body.semi-form-page .mw_wp_form table,
        body.semi-form-page .mw_wp_form tbody,
        body.semi-form-page .mw_wp_form tr,
        body.semi-form-page .mw_wp_form th,
        body.semi-form-page .mw_wp_form td{
          display:block;
          width:100%;
        }

        body.semi-form-page .mw_wp_form tr{
          margin-bottom:1.5rem;
        }

        body.semi-form-page .mw_wp_form tr:last-child{
          margin-bottom:0;
        }

        body.semi-form-page .mw_wp_form th{
          padding:0 0 0.6rem;
          border:none;
          font-weight:600;
          font-size:0.95rem;
          color:var(--ink);
          text-align:left;
        }

        body.semi-form-page .mw_wp_form th label{
          font-weight:600;
        }

        body.semi-form-page .mw_wp_form th .required{
          display:inline-block;
          margin-left:0.6rem;
          padding:0.15rem 0.6rem;
          font-size:0.72rem;
          font-weight:600;
          color:#fff;
          background:var(--required);
          border-radius:999px;
          vertical-align:middle;
          white-space:nowrap;
        }

        body.semi-form-page .mw_wp_form td{
          padding:0;
        }

        body.semi-form-page .mw_wp_form .inputType01{
          width:100%;
          box-sizing:border-box;
          padding:0.8rem 1rem;
          font-size:1rem;
          font-family:inherit;
          color:var(--ink);
          background:#fff;
          border:1px solid var(--border);
          border-radius:8px;
          transition:border-color .15s ease, box-shadow .15s ease;
        }

        body.semi-form-page .mw_wp_form .inputType01:focus{
          outline:none;
          border-color:var(--accent);
          box-shadow:0 0 0 3px rgba(31,111,92,0.15);
        }

        body.semi-form-page .mw_wp_form td br{
          display:none;
        }

        body.semi-form-page .mw_wp_form td{
          font-size:0.8rem;
          color:var(--ink-soft);
        }

        body.semi-form-page .contact__inner__form__btnArea{
          margin-top:2.25rem;
          text-align:center;
        }

        body.semi-form-page .contact__inner__form__btnArea br{
          display:none;
        }

        body.semi-form-page .btnType01{
          display:inline-block;
          min-width:240px;
          padding:1rem 2.5rem;
          font-size:1rem;
          font-weight:700;
          font-family:inherit;
          color:#fff;
          background:var(--accent);
          border:none;
          border-radius:999px;
          cursor:pointer;
          transition:background .15s ease, transform .1s ease;
        }

        body.semi-form-page .btnType01:hover{
          background:var(--accent-dark);
        }

        body.semi-form-page .btnType01:active{
          transform:translateY(1px);
        }

        body.semi-form-page .fo-bikoend{
          margin-top:2.5rem;
          padding:1.25rem 1.5rem;
          background:#F0F4F1;
          border-left:4px solid var(--accent);
          border-radius:4px;
          font-size:0.82rem;
          line-height:1.9;
          color:var(--ink-soft);
        }

        body.semi-form-page .fo-bikoend p{
          margin:0 0 0.75rem;
          font-weight:600;
          color:var(--ink);
        }

        body.semi-form-page .fo-bikoend ul{
          margin:0;
          padding:0;
          list-style:none;
        }

        body.semi-form-page .fo-bikoend li{
          position:relative;
          padding-left:1.1em;
          margin-bottom:0.5rem;
        }

        body.semi-form-page .fo-bikoend li:last-child{
          margin-bottom:0;
        }

        body.semi-form-page .fo-bikoend li::before{
          content:"–";
          position:absolute;
          left:0;
          color:var(--accent);
        }

        @media (max-width:480px){
          body.semi-form-page .contact{
            padding:1.5rem 1rem 3.5rem;
          }
          body.semi-form-page .form-card{
            padding:1.75rem 1.25rem;
          }
          body.semi-form-page .btnType01{
            width:100%;
          }
        }