@charset "UTF-8";

*,
*::before,
*::after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
}

article,
header,
footer,
main,
aside,
figure,
figcaption,
nav,
section {
    display: block;
}

body,
input,
select,
textarea {
    font-family: Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Hiragino Sans", "メイリオ", "Meiryo", sans-serif;
}

body {
    color: #333;
    margin: 0;
    padding: 0;
    line-height: 1;
    scroll-behavior: smooth;
    text-rendering: optimizeSpeed;
    line-break: strict;
    word-break: break-word;
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-font-smoothing: antialiased;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    clear: both;
}

p {
    margin: 0;
}

strong {
    font-weight: bold;
}

hr {
    border: solid 1px #E6E6E6;
    margin: 0 0 20px;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
    border: 0;
    outline: 0;
    display: block;
}

figure {
    padding: 0;
    margin: 0;
}

ol,
ul {
    margin: 0;
    padding: 0;
}

ul {
    list-style: none;
}

input,
textarea,
button {
    margin: 0;
    padding: 0;
    border-radius: 0;
    outline: 0;
    background: none;
}

button {
    border: 0;
}

table {
    border-collapse: collapse;
}

main {
    overflow: hidden;
}

a {
    text-decoration: none;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

a img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
}

a:hover {
    opacity: 0.8;
}

.l-header {
    max-width: 750px;
    margin: 0 auto;
}

.l-footer {
    background-color: #c8161d;
    padding: 6.9vw 0;
    margin-top: 2vw;
}

@media screen and (min-width: 751px) {
    .l-footer {
        padding: 52px 0;
        margin-top: 15px;
    }
}

.l-footer__inner {
    font-size: 10px;
    font-size: 0.625rem;
    line-height: 1.5;
    text-align: center;
    color: #fff;
}

@media screen and (min-width: 751px) {
    .l-footer__inner {
        font-size: 20px;
        font-size: 1.25rem;
    }
}

.l-footer__copyright {
    border-top: solid 1px #fff;
    padding-top: 12px;
    margin-top: 18px;
    display: inline-block;
}

.l-container {
    max-width: 750px;
    margin: 0 auto;
}

.l-inner {
    width: 90%;
    margin: 0 auto;
}

.p-form {
    margin-bottom: 4vw;
    margin-top: 5vw;
}

@media screen and (min-width: 751px) {
    .p-form {
        margin-bottom: 30px;
        margin-top: 40px;
    }
}

.p-form img {
    width: 100%;
}

.sp {
    display: none;
}

@media screen and (max-width: 750px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }
}

.cta01 {
    position: relative;
}

.cta01 .cta01__btn {
    width: 90%;
    max-width: 676px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 26.5%;
    margin: 0 auto;
    animation: btn_animation 2s infinite;
}

.cta01 .cta01__btn {
    display: block;
}

@keyframes btn_animation {
    0% {
        transform: translate(1%, 0px);
    }

    5% {
        transform: translate(-1%, 0px);
    }

    10% {
        transform: translate(1%, 0px);
    }

    15% {
        transform: translate(-1%, 0px);
    }

    20% {
        transform: translate(1%, 0px);
    }

    25% {
        transform: translate(-1%, 0px);
    }

    30% {
        transform: translate(0px, 0px);
    }
}

.cta01__tel {
    display: block;
    width: 86.6%;
    max-width: 650px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 6.1%;
    z-index: 1;
    margin: 0 auto;
}

.img02 {
    margin-top: max(calc(-15 * 100vw / 750),-15px);
    display: block;
}

.img14 {
    position: relative;
}

.img14__text {
    position: absolute;
    top: 17.1%;
    right: 2.7%;
    width: min(calc(179 * 100vw / 750),179px);
    z-index: 1;
}

.img14__video01 {
    position: absolute;
    top: 22.3%;
    left: 9.2%;
    width: min(calc(288 * 100vw / 750),288px);
}

.img14__video02 {
    position: absolute;
    top: 22.3%;
    right: 9.4%;
    width: min(calc(288 * 100vw / 750),288px);
}

.cta02 {
    position: relative;
}

.cta02 .cta02__btn {
    width: 90%;
    max-width: 676px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 19.8%;
    margin: 0 auto;
    animation: btn_animation 2s infinite;
}

.cta02 .cta02__btn {
    display: block;
}

.cta02__tel {
    display: block;
    width: 86.6%;
    max-width: 650px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 2.6%;
    z-index: 1;
    margin: 0 auto;
}

.img19 {
    margin-top: min(calc(123 * 100vw / 750),123px);
    display: block;
}

.img20 {
    margin-top: min(calc(40 * 100vw / 750),40px);
    display: block;
}