@charset "utf-8";

/*!
 * ress.css • v4.0.0
 * MIT License
 * github.com/filipelinhares/ress
 */html{box-sizing:border-box;-webkit-text-size-adjust:100%;word-break:normal;-moz-tab-size:4;tab-size:4}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}hr{overflow:visible;height:0;color:inherit}details,main{display:block}summary{display:list-item}small{font-size:80%}[hidden]{display:none}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}a{background-color:transparent}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}pre{font-size:1em}b,strong{font-weight:bolder}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}input{border-radius:0}[disabled]{cursor:default}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}button,select{text-transform:none}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer;color:inherit}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,input,select,textarea{background-color:transparent;border-style:none}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline-width:0}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;white-space:normal;max-width:100%}::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}img{border-style:none}progress{vertical-align:baseline}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}

:root {
    --c-bg_brack: #000;
    --c-black: #221815;
    --c-gray: #cbcaca;
    --c-bg_gray--primary: #ededed;
    --c-bg_gray--secondary: #fafafa;
    --c-green: #356d3c;
    --c-red: #fe0101;
    --c-orange: #eb6100;
    --c-sand: #f5e8dd;
    --c-brown: #c2ae5e;
    --c-bg_form: #f7f7f7;
    --c-bg_yellow--primary: #fbefbe;
    --c-bg_yellow--secondary: #fffae6;
    --c-white: #fff;
    --fsize08: 0.5rem;
    --fsize10: 0.625rem;
    --fsize11: 0.6875rem;
    --fsize12: 0.75rem;
    --fsize13: 0.8125rem;
    --fsize14: 0.875rem;
    --fsize15: 0.9375rem;
    --fsize16: 1rem;
    --fsize18: 1.125rem;
    --fsize20: 1.25rem;
    --fsize22: 1.375rem;
    --fsize24: 1.5rem;
    --fsize26: 1.625rem;
    --fsize32: 2rem;
    --fsize40: 2.5rem;
    --fsize48: 3rem;
    --fsize1216: clamp(0.75rem, 0.571rem + 0.89vw, 1rem);
    --fsize3240: clamp(2rem, 1.643rem + 1.79vw, 2.5rem);
    --font_meiryo: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    --width_inner: 95%;
    --width_static: 1100px;
    --width_static--middle: 1000px;
    --width_static--small: 520px;
    --width_static--form: 732px;
    --width_static--btn: 600px;
}

html,body{
    font-family: "noto-sans-cjk-jp", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	color: var(--c-black);
	font-weight: 400;
}
a {
	color: var(--c-brown);
}
a:hover {
	text-decoration: underline;
}
a:hover img{
    filter:alpha(opacity=70);
    opacity:0.70
}
a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
}
i { font-style: normal; }

/*----------------------------
共通部品
-----------------------------*/
input:hover {
    cursor: pointer;
    opacity: 0.7;
    transition: 0.5s;
}
/*----------------------------
ヘッダー
-----------------------------*/
header img {
    height: auto;
    width: 100%;
    vertical-align: bottom;
}
#logo_head {
    display: flex;
    justify-content: space-between;
    margin: 32px auto 90px;
    max-width: var(--width_static);
    width: var(--width_inner);
}
#logo_head h1 {
    margin-top: 9px;
}

/*----------------------------
フッター
-----------------------------*/
footer {
    color: var(--c-white);
    background: var(--c-bg_brack);
    padding: 45px 0;
}
footer h2 {
    font-size: var(--fsize22);
    text-align: center;
}
footer h2 i {
    display: inline-block;
}
#c-footer {
    display: flex;
    column-gap: 75px;
    margin: 35px auto 0;
    max-width: var(--width_static);
    width: 95%;
}
#c-footer h3 {
    font-size: var(--fsize15);
    line-height: 1.73;
    margin-bottom: 20px;
}
#c-footer h3::before {
    content: "■";
}
#c-footer p {
    font-size: var(--fsize15);
    line-height: 1.73;
}
#c-footer p span {
    font-weight: 700;
}
#c-footer_inq01 {
    border-right: 1px solid #fff;
    padding-left: 50px;
    padding-right: 50px;
    width: 550px;
}
#c-footer_inq01 ol {
    display: flex;
    justify-content: space-between;
    width: 520px;
}
#c-footer_inq02 {
    width: 390px;
}
footer a {
    color: #fff;
    text-decoration: none;
}
#ft_logo {
    margin: 64px auto 0;
    width: 180px;
}
#ft_logo img {
    height: auto;
    width: 100%;
}
/*----------------------------
エラー
-----------------------------*/
#c-error {
    border: 2px solid #d33;
    padding: 0 16px 16px;
    margin-bottom: 32px;
}
#c-error p {
    color: #d33;
    font-size: var(--fsize16);
    line-height: 1.5;
    margin-left: 1em;
    text-indent: -1em;
    margin-top: 16px;
}

/*----------------------------
挨拶
-----------------------------*/
#greeting {
    background: var(--c-bg_brack);
    padding: 45px 0;
}
#greeting-inner {
    margin: 0 auto;
    max-width: var(--width_static--middle);
	width: var(--width_inner);
}
#greeting h2 {
    color: var(--c-white);
    font-size: var(--fsize40);
    text-align: center;
    margin-bottom: 40px;
}
#greeting p {
    color: var(--c-white);
    font-size: var(--fsize16);
    line-height: 1.875;
}
#greeting p + p {
    margin-top: 30px;
}
.c-text--right {
    margin-top: 16px;
    text-align: right;
}

/*----------------------------
コンテンツ
-----------------------------*/
#contents {
}
#contents-inner {
	margin: 50px auto 0;
    max-width: var(--width_static);
	width: var(--width_inner);
}
.c-title {
    border-bottom: 1px solid var(--c-black);
    padding-bottom: 34px;
}
.c-title h2 {
    font-size: var(--fsize48);
    font-weight: 900;
    text-align: center;
}
.c-title h2 i {
    font-size: var(--fsize24);
    text-align: center;
}
.c-title span {
    display: block;
    font-size: var(--fsize16);
    text-align: center;
    margin-top: 10px;
}
.c-schedule_day {
    margin: 50px auto 0;
    max-width: var(--width_static--middle);
    width: var(--width_inner);
}
.c-schedule_day--title {
    display: flex;
    align-items: flex-start;
}
ol + .c-schedule_day--title {
    margin-top: 50px;
}
.c-schedule_day--title p {
    border-left: 10px solid var(--c-brown);
    font-size: var(--fsize26);
    font-weight: 900;
    padding-left: 10px;
    white-space: nowrap;
}
.c-schedule_day--title p span {
    font-size: var(--fsize18);
    margin-left: -8px;
}
.c-schedule_day h3 {
    font-size: var(--fsize26);
    font-weight: 900;
}
.c-schedule_day figure {
    display: block;
    text-align: center;
    margin: 22px 0 24px;
}
.c-schedule_day ol li {
    background: var(--c-bg_gray--secondary);
    display: flex;
    align-items: center;
    font-size: 1.6rem;
    height: 60px;
    padding: 0 20px;
}
.c-schedule_day ol li:nth-child(2n+1) {
    background: var(--c-bg_gray--primary);
}
.c-schedule_day ol li i {
    font-family: var(--font_meiryo);
    font-size: var(--fsize16);
    width: 135px;
}
.c-schedule_day ol li p {
    font-family: var(--font_meiryo);
    font-size: var(--fsize16);
    line-height: 1.4;
    font-weight: 700;
    flex: 1;
}
.c-schedule_day ol li p span {
    font-size: 1.3rem;
}
.c-schedule_day--sub {
    font-family: var(--font_meiryo);
    font-size: var(--fsize18);
    font-weight: 700;
    margin-top: 12px;
}
.c-schedule_day--sub::before {
    content: "●";
    color: var(--c-brown);
    font-size: var(--fsize18);
}
.c-schedule_day ol.c-schedule_seminar li {
    background: var(--c-bg_yellow--secondary);
}
.c-schedule_day ol.c-schedule_seminar li:nth-child(2n+1) {
    background: var(--c-bg_yellow--primary);
}
.c-schedule_day ol + ol {
    margin-top: 20px;
}
.c-schedule_day--courseTitle {
    font-size: var(--fsize18);
    font-weight: 700;
    margin-bottom: 20px;
}
.c-schedule_day--courseTitle::before {
    content: "●";
    color: var(--c-brown);
    font-size: var(--fsize18);
}
.c-schedule_day--courseFooter {
    font-size: var(--fsize16);
    margin-top: 16px;
}
.c-schedule_course {
    background: var(--c-brown);
    border: 1px solid var(--c-brown);
    display: flex;
    align-items: center;
    margin-bottom: 16px;
}
.c-schedule_course--title {
    color: var(--c-white);
    font-size: var(--fsize18);
    font-weight: 700;
    text-align: center;
    width: 90px;
}
.c-schedule_course--cont {
    background: var(--c-white);
    padding: 4px 8px;
    width: calc(100% - 90px);
}
.c-schedule_course--text {
    display: flex;
    align-items: center;
    column-gap: 12px;
    font-size: var(--fsize18);
    font-weight: 700;
}
.c-schedule_course--text div:first-of-type {
    white-space: nowrap;
}
.c-schedule_course--text span {
    display: block;
    font-size: var(--fsize16);
    font-weight: 400;
}
.c-schedule_course--text span i {
    display: inline-block;
}

#accommodation {
    margin-top: 110px;
}
#accommodation_inner {
    margin: 55px auto 0;
    width: var(--width_static--small);
}
#accommodation_inner a {
    font-size: var(--fsize24);
    font-weight: 700;
    letter-spacing: -0.08rem;
}
#accommodation_inner p {
    font-size: var(--fsize16);
    line-height: 1.875;
    margin-top: 8px;
}
#accommodation_inner span {
    display: inline-block;
}

#introduction {
    margin-top: 96px;
}
#introduction_inner {
    margin: 40px auto 0;
    width: var(--width_static--small);
}
#introduction_inner p {
    font-size: var(--fsize16);
    line-height: 1.875;
    margin-top: 8px;
}

#form {
    margin-top: 110px;
    padding-bottom: 114px;
}
#c-form {
    margin: 30px auto 45px;
    max-width: var(--width_static--form);
    width: var(--width_inner);
}
#c-form_att {
    color: var(--c-orange);
    font-size: var(--fsize15);
}
#c-form_att::before {
    content: "■";
}
#c-form_head {
    font-size: var(--fsize14);
    line-height: 1.714;
    margin: 20px 0;
}
#c-form_head p i {
	color: var(--c-red);
}
#c-form_head ul li {
    list-style: none;
    margin-left: 1em;
    text-indent: -1em;
}
#c-form_head ul li::before {
    content: "・";
}
#c-form_input ul {
    background: var(--c-bg_form);
    border-top: 2px solid var(--c-bg_brack);
    border-bottom: 1px solid var(--c-bg_brack);
}
#c-form_input ul li {
    list-style: none;
    border-bottom: 1px solid var(--c-bg_brack);
}
#c-form_input ul li.last_li {
    padding: 12px 0;
}
#c-form_input .c-form_wrap {
    display: flex;
    align-items: center;
    min-height: 50px;
    padding: 0 0 0 28px;
    gap: 10px;
}
#c-form_input .c-form_wrap_height {
    align-items: start;
    height: auto;
    padding: 12px 0 12px 30px;
}
#c-form_input .c-form_wrap_height_in {
    align-items: center;
    height: auto;
    min-height: auto;
    padding: 6px 0 0 30px;
}
#c-form_input .c-form_wrap i {
    color: var(--c-red);
    font-size: var(--fsize11);
    line-height: 1.5;
    width: 12px;
}
#c-form_input .c-form_wrap i+label {
    flex-shrink: 0;
    font-size: var(--fsize14);
    line-height: 1.5;
    width: 220px;
}
#c-form_input .c-form_wrap i+label i {
    color: var(--c-black);
    font-size: var(--fsize13);
}
#c-form_input .c-form_wrap i+label.w_auto {
    width: auto;
}
#c-form_input .c-form_wrap .c-form_parts {
    flex-shrink: 0;
    width: 240px;
}
#c-form_input .c-form_wrap .c-form_conf {
    font-size: var(--fsize14);
    line-height: 1.5;
    flex: 1;
}
#c-form_input .c-form_wrap .c-form_parts input[type="text"],
#c-form_input .c-form_wrap .c-form_parts input[type="tel"],
#c-form_input .c-form_wrap .c-form_parts input[type="email"] {
    background: var(--c-white);
    box-sizing: border-box;
    border: 1px solid var(--c-gray);
    font-size: var(--fsize16);
    padding: 6px;
    width: 100%;
}
#c-form_input .c-form_wrap .c-form_parts input.c-form_input--small {
    width: 50px;
}
#c-form_input .c-form_wrap span {
    font-size: var(--fsize12);
    line-height: 1.5;
}
#c-form_input .c-form_wrap .c-form_parts + span {
    padding-left: 10px;
}
#c-form_input .c-form_radio {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
#c-form_input .c-form_radio span {
    width: 170px;
}
#c-form_input .c-form_radio--wide span {
    width: 100%;
}
#c-form_input .c-form_radio label {
    display: flex;
    align-items: flex-start;
    column-gap: 8px;
    font-size: var(--fsize14);
    line-height: 1.5;
    white-space: nowrap;
}
#c-form_input .c-form_wrap input[type="radio"] {
    margin-top: 4px;
    transform: scale(1.4);
    -ms-transform: scale(1.4);
    -webkit-transform: scale(1.4);
}
#c-form_input .c-form_wrap .c-form_parts textarea {
    background: var(--c-white);
    box-sizing: border-box;
    border: 1px solid var(--c-gray);
    padding: 6px;
    width: 100%;
    min-height: 75px;
}
#c-form_input .c-form_wrap .c-form_parts--divide {
    display: flex;
    align-items: center;
    column-gap: 4px;
}
#c-form_input .c-form_wrap .c-form_parts--divide span {
    font-size: var(--fsize14);
}
#c-form_input .c-form_wrap .c-form_multi--sub {
    font-size: var(--fsize14);
    margin-top: 8px;
}
#c-form_input .c-form_wrap .c-form_parts--ale {
    padding-right: 30px;
}
#c-form_input .c-form_wrap .c-form_radio--wide i {
    color: var(--c-black);
    font-size: var(--fsize14);
    line-height: normal;
    width: auto;
}
#c-form_input .c-form_wrap .c-form_radio--wide input:disabled + i {
    opacity: 0.4;
}
#c-form_input .c-form_wrap .c-form_radio--wide input:disabled + i::after {
    content: "（定員に達しました）";
    display: block;
    font-size: var(--fsize12);
}
#c-form_input .c-form_wrap .c-form_input--golf {
    background: var(--c-white);
    box-sizing: border-box;
    border: 1px solid var(--c-gray);
    font-size: var(--fsize16);
    margin-left: 8px;
    padding: 4px;
    width: 100px;
}

#c-btn {
    margin: 0 auto;
    max-width: var(--width_static--btn);
    width: var(--width_inner);
}
#c-btn ul {
    display: flex;
    align-items: center;
    flex-direction: column;
    row-gap: 16px;
    justify-content: center;
}
#c-btn li {
    list-style: none;
    width: 100%;
}
#c-btn input[type="submit"] {
    background: var(--c-bg_brack);
    border: none;
    color: var(--c-white);
    font-family: var(--font_meiryo);
    font-size: var(--fsize24);
    font-weight: bold;
    line-height: 60px;
    width: 100%;
}
#c-form_thanks {
    margin: 76px 0;
}
#c-form_thanks p {
    font-size: var(--fsize18);
    line-height: 2.78;
    text-align: center;
}

@media screen and (max-width: 900px) {
    #c-footer_inq01 {
        padding-left: 0;
    }
}
@media screen and (max-width: 800px) {
    #c-form_input .c-form_wrap {
        display: block;
        height: auto;
        padding: 0 12px;
    }
    #c-form_input ul li {
        padding: 12px 0;
    }
    #c-form_input .c-form_wrap .c-form_parts,
    #c-form_input .c-form_wrap .c-form_multi {
        padding-top: 4px;
        display: block;
        width: 100%;
    }
    #c-form_input .c-form_wrap .c-form_parts + span {
        display: block;
        text-align: right;
        padding: 4px 0 0;
    }
    #c-form_input .c-form_wrap .c-form_parts input.c-form_input--small {
        width: 20%;
    }
    #c-form_input .c-form_radio {
        margin-top: 8px;
        flex-direction: column;
        gap: 12px;
    }
}
@media screen and (max-width: 768px) {
    #logo_head {
        margin-bottom: 0;
        width: 95%;
    }
    #logo_head h1 {
        margin-top: 0;
        width: 45%;
    }
    #logo_head p {
        width: 30%;
    }
    #logo_head img {
        height: auto;
        width: 100%;
    }
    #greeting h2,
    .c-title h2 {
        font-size: var(--fsize3240);
    }
    .c-title span {
        font-size: var(--fsize1216);
    }
    .c-schedule_day--title {
        flex-direction: column;
    }
    .c-schedule_day h3 {
        padding-left: 20px;
    }
    .c-schedule_day figure.c-schedule_day--wpic img {
        height: auto;
        width: 100%;
        max-width: 475px;
    }
    #c-footer {
        flex-direction: column;
    }
    #c-footer_inq01 {
        border-right: 0;
        border-bottom: 1px solid var(--c-white);
        padding-bottom: 32px;
        margin-bottom: 32px;
        width: 100%;
    }
    #c-footer_inq02 {
        width: 100%;
    }
}
@media screen and (max-width: 640px) {
    #accommodation_inner,
    #introduction_inner,
    #c-form_input .c-form_radio span {
        width: 100%;
    }
    #c-form_input .c-form_radio--wide label {
        align-items: flex-start;
        white-space: normal;
    }
    #c-form_input .c-form_radio--wide label input {
        margin-top: 6px;
    }
}
@media screen and (max-width: 480px) {
    .c-schedule_day ol li {
        display: block;
        height: auto;
        padding: 8px;
    }
    .c-schedule_day ol li i {
        display: block;
        padding-bottom: 8px;
    }
    .c-schedule_course {
        flex-direction: column;
    }
    .c-schedule_course--title,
    .c-schedule_course--cont {
        width: 100%;
    }
    .c-schedule_course--text {
        flex-direction: column;
    }
}