@charset "UTF-8";
/*--------------------------------
RESET-----------------------------
----------------------------------*/
html {
    box-sizing: border-box;
    transition: all .2s;
}

*,
::before,
::after {
    box-sizing: inherit;
    transition: inherit;
}
body {
    margin: 0;
}
a {
    color: inherit;
    transition: all .3s;
}
figure,
video,
img {
    max-width: 100%;
    height: auto;
    margin: 0;
    vertical-align: middle;
}
label,
input[type="reset"] {
    cursor: pointer;
    user-select: none;
}
input,
button,
select,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: none;
    border-radius: 0;
    font: inherit;
    outline: none;
    max-width: 100%;
}

/* 入力欄 */
textarea {
    width: 100%;
    min-height: 5em;
    padding: 0.5em 1em;
    box-sizing: border-box;
    background-color: #fff;
    border: solid 1px #E2E2E2;
}
input {
    border: solid 1px #E2E2E2;
}
input[type='submit'],
input[type='button'] {
    padding: 0.5em 1em;
    background-color: #E2E2E2;
    color: #fff;
}
input[type="text"],
input[type="number"],
input[type="email"] {
    background: #fff;
    padding: 0.75em 1em;
}
input[type='checkbox'] {
    border: solid 1px #EAEAEA;
    width: 1em;
    aspect-ratio: 1/1;
    vertical-align: text-top;
    position: relative;
    background: #fff;
    border-radius: 2px;
}
input[type='checkbox']:after {
    content: "";
    position: absolute;
    left: 0.2em;
    top: -0.1em;
    width: 0.5em;
    height: 0.8em;
    border: solid #845D30;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    opacity: 0;
}
input[type='checkbox']:checked {
    background-color: #e3d0bb;
}
input[type='checkbox']:checked:after {
    opacity: 1;
}
.select-wrap {
    position: relative;
}
select {
    border: solid 1px #E2E2E2;
    padding: 0.75em 2em 0.75em 1em;
    cursor: pointer;
    position: relative;
    color: inherit;
}
.select-wrap::after {
    content: "▼";
    font-size: 10px;
    display: inline-block;
    transform: translateY(-50%);
    position: absolute;
    right: 1em;
    top: 50%;
    pointer-events: none;
}

input[type='radio']{
    appearance: auto;
}

/* スクリーンリーダーを隠す */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* 電話リンク */
a.tellink{
    pointer-events: none;
    text-decoration: none;
}
@media (max-width:768px) {
    a.tellink{
        pointer-events: all;
    }
}



/*--------------------------------
 DEFAULT -------------------------
----------------------------------*/
.btn a {
    text-decoration: none;
}

/* layout */
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
main {
    flex-grow: 1;
}

/* text */
:root{
    --f10px:0.625rem;
    --f12px:0.75rem;
    --f14px:0.875rem;
    --f16px:1rem;
    --f18px:1.125rem;
    --f20px:1.25rem;
    --f22px:1.375rem;
    --f24px:1.5rem;
    --f26px:1.625rem;
    --f28px:1.75rem;
    --f30px:1.875rem;
    --f32px:2rem;
    --f34px:2.125rem;
    --f36px:2.25rem;
    --f38px:2.375rem;
    --f40px:2.5rem;
    --f42px:2.625rem;
    --f44px:2.75rem;
    --f46px:2.875rem;
    --f48px:3rem;
    --f50px:3.125rem;
    --f56px:3.5rem;
    --f60px:3.75rem;
    --f70px:4.375rem;
}

.font_60px{font-size: var(--f60px);}
.font_50px{font-size: var(--f50px);}
.font_44px{font-size: var(--f44px);}
.font_42px{font-size: var(--f42px);}
.font_40px{font-size: var(--f40px);}
.font_38px{font-size: var(--f38px);}
.font_36px{font-size: var(--f36px);}
.font_34px{font-size: var(--f34px);}
.font_32px{font-size: var(--f32px);}
.font_30px{font-size: var(--f30px);}
.font_28px{font-size: var(--f28px);}
.font_26px{font-size: var(--f26px);}
.font_24px{font-size: var(--f24px);}
.font_22px{font-size: var(--f22px);}
.font_20px{font-size: var(--f20px);}
.font_18px{font-size: var(--f18px);}
.font_16px{font-size: var(--f16px);}
.font_14px{font-size: var(--f14px);}
.font_12px{font-size: var(--f12px);}
.font_10px{font-size: var(--f10px);}

.font_center{text-align: center !important;}
.font_right{text-align: right !important;}
.font_left{text-align: left !important;}
.font_bold{font-weight: bold;}
.font_md{font-weight: 500;}
.font_normal{font-weight: normal;}
.brwrap{display: inline-block;}

/* margintop */
.mt0px{margin-top: 0 !important;}
/* marginbottom */
.mb0px{margin-bottom: 0 !important;}
.mb10px{margin-bottom: 10px !important;}
.mb20px{margin-bottom: 20px !important;}
.mb30px{margin-bottom: 30px !important;}
.mb40px{margin-bottom: 40px !important;}
.mb50px{margin-bottom: 50px !important;}
.mb60px{margin-bottom: 60px !important;}
.mb70px{margin-bottom: 70px !important;}
.mb80px{margin-bottom: 80px !important;}
.mb90px{margin-bottom: 90px !important;}
.mb100px{margin-bottom: 100px !important;}
.mb110px{margin-bottom: 110px !important;}
.mb120px{margin-bottom: 120px !important;}
.mb130px{margin-bottom: 130px !important;}
.mb140px{margin-bottom: 140px !important;}
.mb150px{margin-bottom: 150px !important;}
.mb160px{margin-bottom: 160px !important;}
.mb170px{margin-bottom: 170px !important;}
.mb180px{margin-bottom: 180px !important;}
.mb190px{margin-bottom: 190px !important;}
.mb200px{margin-bottom: 200px !important;}
.mb220px{margin-bottom: 220px !important;}
.mb300px{margin-bottom: 300px !important;}




/* slick */
.slick-slider div { transition: none; }

/*----------------------------------------------
Break Point
@media (max-width:1280px){}
@media (max-width:1024px){}
@media (max-width:768px){}
@media (max-width:540px){}
----------------------------------------------*/
@media (max-width:540px){
    .mb0px{margin-bottom: 0 !important;}
    .mb10px{margin-bottom: 10px !important;}
    .mb20px{margin-bottom: 20px !important;}
    .mb30px{margin-bottom: 30px !important;}
    .mb40px{margin-bottom: 30px !important;}
    .mb50px{margin-bottom: 30px !important;}
    .mb60px{margin-bottom: 30px !important;}
    .mb70px{margin-bottom: 30px !important;}
    .mb80px{margin-bottom: 40px !important;}
    .mb90px{margin-bottom: 40px !important;}
    .mb100px{margin-bottom: 50px !important;}
    .mb110px{margin-bottom: 50px !important;}
    .mb120px{margin-bottom: 80px !important;}
    .mb130px{margin-bottom: 80px !important;}
    .mb140px{margin-bottom: 80px !important;}
    .mb150px{margin-bottom: 80px !important;}
    .mb160px{margin-bottom: 100px !important;}
    .mb170px{margin-bottom: 100px !important;}
    .mb180px{margin-bottom: 100px !important;}
    .mb190px{margin-bottom: 100px !important;}
    .mb200px{margin-bottom: 100px !important;}
    .mb220px{margin-bottom: 100px !important;}
    .mb300px{margin-bottom: 100px !important;}
}