@charset "UTF-8";
/* -----------------------------------------
reset（編集しない）
----------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, menu, nav, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
max-height: 99999px;
line-height: 0;
}
body {
line-height: 1;
}
article, aside, details, figcaption, figure,
footer, header, menu, nav, section {
display: block;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
:focus {
outline: 0;
}
ins {
text-decoration: none;
}
del {
text-decoration: line-through;
}

table {
border-collapse: collapse;
border-spacing: 0;
}
*, *:before, *:after {
box-sizing: border-box;
}
html {
font-size: 62.5%;
}
body {
font-family: "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" ,"游ゴシック Medium" , "Yu Gothic Medium" , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "メイリオ" , Meiryo , "Meiryo UI" , Avenir , "Open Sans" ,  Helvetica,"Helvetica Neue", Arial , Verdana , Roboto ,"ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
font-size: 1.6rem;
color: #160f0a;
}

/* -----------------------------------------
content_wrapper / header
----------------------------------------- */
#content_wrapper {
    max-width: 750px;
    margin: 0 auto;
    padding-bottom: min(calc((140 / 750) * 100vw), 140px);
}
#content_wrapper img {
    max-width: 100%;
    height: auto;
}
#content_wrapper header {
    padding: 1.1% 0 2.2% 4%;
}
#content_wrapper header .header_logo {
    width: 36%;
    margin: 1.4vw 0 .5vw;
    transition: all 0.3s ease 0s;
}
#content_wrapper header .header_logo:hover {
    opacity: 0.7;
}


/* -----------------------------------------
lp_main reset
----------------------------------------- */
body > img {
    display: none;
}
.lp_main div, .lp_main span, .lp_main iframe, .lp_main h1, .lp_main h2, .lp_main h3, .lp_main h4, .lp_main h5, .lp_main h6, .lp_main p, .lp_main address, .lp_main img, .lp_main small, .lp_main strong, .lp_main sub, .lp_main sup, .lp_main dl,
.lp_main dt, .lp_main dd, .lp_main ol, .lp_main ul, .lp_main form, .lp_main label, .lp_main table, .lp_main caption, .lp_main tbody, .lp_main tfoot, .lp_main thead, .lp_main tr, .lp_main th, .lp_main td, .lp_main article,
.lp_main aside, .lp_main footer, .lp_main header, .lp_main menu, .lp_main nav, .lp_main section, .lp_main video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 0;
    line-height: 0;
    vertical-align: baseline;
}
.lp_main ol, .lp_main ul {
    list-style: none;
}
.lp_main *,
.lp_main *::before,
.lp_main *::after {
    box-sizing: border-box;
}
.lp_main img,
.lp_main video,
.lp_main svg {
    display: block;
    height: auto;
    vertical-align: bottom;
    width: 100%;
    max-width: 100%;
}

/* -----------------------------------------
lp_main common
----------------------------------------- */
html {
    scroll-behavior: smooth;
}
.lp_main {
    width: min(100%, 750px);
    margin: 0 auto;
}
.lp_main .p_box {
    position: relative;
}

/* -----------------------------------------
sticky_btn
----------------------------------------- */
.sticky_btn {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 50;
    display: flex;
    justify-content: center;
    padding: min(calc((10 / 750) * 100vw), 10px) 0;
}
.sticky_btn a {
    display: block;
    width: 90%;
    max-width: 669px;
}
.sticky_btn a img {
    display: block;
    width: 100%;
    height: auto;
}

/* -----------------------------------------
sec_fv
----------------------------------------- */
.lp_main .fv_btns {
    position: absolute;
    bottom:calc(65/1136*100%);
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    gap: min(calc((10 / 750) * 100vw), 10px);
}
.lp_main .fv_btns a {
    display: block;
    width: calc(43%);
}
.lp_main .lp_btns {
    display: flex;
    justify-content: center;
    gap: min(calc((10 / 750) * 100vw), 10px);
}
.lp_main .lp_btns a {
    display: block;
    width: calc(43%);
}
.lp_main .sec_campaign .lp_btns {
    padding: calc(60/750*100%) 0 calc(52/750*100%);
}
.lp_main .sec_about .lp_btns {
    padding: 0 0 calc(100/750*100%) 0;
}

/* -----------------------------------------
sec_cm
----------------------------------------- */
.lp_main .cm_movie {
    width: 90%;
    margin: 0 auto;
    aspect-ratio: 15.9 / 9;
    border-radius: min(calc((16 / 750) * 100vw), 16px);
    overflow: hidden;
}
.lp_main .cm_movie iframe {
    display: block;
    width: 100%;
    height: 100%;
}

/* -----------------------------------------
sec_campaign
----------------------------------------- */
.lp_main .sec_campaign {
    background-color: #ddeaee;
}

/* -----------------------------------------
sec_about
----------------------------------------- */
.lp_main .sec_about {
    background-color: #EBF7FF;
}

