@charset "UTF-8";

/*
Theme Name: child
Theme URI:
Description:
Template: twentytwentyone
Author: makesview
Author URI: https://makes-view.co.jp/
Version: 1.0.0
*/

:root {
    --main-color: #5609FF;
    --black: #1a1a1a;
    --sub-color: #3800B1;
}

@font-face {
    font-family: "GenShinGothic";
    src: url("./font/GenShinGothic-Medium.woff") format("woff");
    font-weight: 500;
}

@font-face {
    font-family: "GenShinGothic";
    src: url("./font/GenShinGothic-Bold.woff") format("woff");
    font-weight: 700;
}

@font-face {
    font-family: "GenShinGothic";
    src: url("./font/GenShinGothic-Heavy.woff") format("woff");
    font-weight: 900;
}

@font-face {
    font-family: "Futura";
    src: url("./font/futura-medium.woff") format("woff");
    font-weight: 500;
}

@font-face {
    font-family: "Futura";
    src: url("./font/futura-bold.woff") format("woff");
    font-weight: 700;
}

.f_en {
    font-family: "Futura", sans-serif;
}

html,
body,
button,
input,
select,
textarea {
    font-family: "GenShinGothic", sans-serif;
    font-weight: 500;
}

body {
    color: var(--black);
    font-size: 16px;
    line-height: 1.7;
    min-width: 1340px;
}

.wrap {
    width: 1140px;
    margin: 0 auto;
}

.wrap.mid {
    width: 1240px;
}

.wrap.lr {
    width: 1340px;
}

.footer_copy_area {
    background-color: var(--sub-color);
    padding: 1.9em 0;
    font-size: 12px;
    line-height: 1.2;
    color: #fff;
    text-align: center;
}

.common_page_wrap {
    padding: 100px 0;
}

.login_form {
    width: 600px;
    margin: 0 auto;
}

.login_form .login_form_block {
    font-size: 15px;
    letter-spacing: .02em;
    line-height: 1.5;
}

.login_form .login_form_block+.login_form_block {
    margin-top: 1.5em;
}

.login_form .login_form_block label {
    font-weight: 700;
    display: block;
    padding-left: .5em;
    border-left: 4px solid var(--main-color);
    margin-bottom: .7em;
}

.login_form .login_form_block input {
    display: block;
    width: 100%;
    line-height: 1;
    padding: 0.7em;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.login_form .login_form_block button[type="submit"] {
    padding: 0.6em;
    text-align: center;
    color: #fff;
    background-color: var(--main-color);
    border-radius: 4px;
    font-weight: 700;
    transition: .3s;
    display: block;
    width: 300px;
    margin: 0 auto;
}

.login_form .login_form_block button[type="submit"]:hover {
    opacity: .7;
}

.login_form .forget_link {
    display: block;
    font-size: 15px;
    letter-spacing: .02em;
    line-height: 1.5;
    color: var(--main-color);
    width: fit-content;
    margin: 1.5em auto 0;
    text-decoration: underline;
}

.common_btn {
    display: block;
    width: 320px;
    line-height: 1.38;
    padding: 1.17em 1.38em;
    font-size: 18px;
    letter-spacing: .06em;
    text-align: center;
    border-radius: 8px;
    font-weight: 700;
    transition: .3s;
    color: var(--main-color) !important;
    background-color: #fff;
    border: 2px solid var(--main-color);
    position: relative;
    text-decoration: none !important;
}

.common_btn.blue {
    background-color: var(--main-color);
    color: #fff !important;
}

.common_btn:hover {
    background-color: var(--main-color);
    color: #fff !important;
}

.common_btn.blue:hover {
    background-color: #fff;
    color: var(--main-color) !important;
}

.common_btn .icon {
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 1.38em;
}

.common_btn .icon>* {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.common_btn .icon svg polygon,
.common_btn .icon svg path {
    fill: currentColor !important;
}

.common_btn .letter {
    text-align: center;
    transform: translateY(0.085em);
    display: block;
}

.common_btn .arrow {
    width: 0.55em;
    height: 0.55em;
    border: 2px solid currentColor;
    border-left: none;
    border-bottom: none;
    transform: translateY(-50%) rotate(45deg);
    position: absolute;
    top: 50%;
    right: 1.38em;
}

#wpadminbar {
    display: none !important;
}

html {
    margin-top: 0 !important;
}

@media (max-width: 1340px) and (min-width: 751px) {
    .wrap.lr {
        width: 1300px;
    }
}

@media (max-width: 750px) {
    .wrap {
        max-width: 90%;
    }

    body {
        font-size: 3.6vw;
        min-width: unset;
    }

    .footer_copy_area {
        font-size: 2.5vw;
        margin-bottom: 16vw;
    }

    .common_page_wrap {
        padding: 18vw 0;
    }

    .login_form {
        width: 100%;
    }

    .login_form .login_form_block {
        font-size: 16px;
    }

    .login_form .login_form_block button {
        width: 100%;
    }

    .login_form .forget_link {
        font-size: 16px;
    }

    .common_btn {
        width: 100%;
        font-size: 4.1vw;
    }

    .common_btn:hover {
        color: var(--main-color);
        background-color: #fff;
    }

    .common_btn.blue:hover {
        color: #fff;
        background-color: var(--main-color);
    }

    .common_btn .icon {
        width: 6.1vw;
        height: 6.1vw;
    }
}