﻿@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap");
header,
div,
span,
applet,
object,
iframe,
input[type="file"],
h1,
h2,
h3,
h4,
h5,
h6,
p,
select,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
sub,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0 auto;
    padding: 0;
    border: 0;
    outline: 0;
    font-weight: inherit;
    font-style: inherit;
    font-size: 100%;
    vertical-align: baseline;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    color: #424c56;
}
@media screen and (max-width: 736px) {
    header,
    div,
    span,
    applet,
    object,
    iframe,
    input[type="file"],
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    select,
    blockquote,
    pre,
    a,
    abbr,
    acronym,
    address,
    big,
    cite,
    code,
    del,
    dfn,
    em,
    img,
    ins,
    kbd,
    q,
    s,
    samp,
    small,
    strike,
    sub,
    tt,
    var,
    b,
    u,
    i,
    center,
    dl,
    dt,
    dd,
    ol,
    ul,
    li,
    fieldset,
    form,
    label,
    legend,
    table,
    caption,
    tbody,
    tfoot,
    thead,
    tr,
    th,
    td {
        letter-spacing: 0.05em;
        line-height: 1.7;
        font-weight: normal;
    }
}
.en header,
.en div,
.en span,
.en applet,
.en object,
.en iframe,
.en input[type="file"],
.en h1,
.en h2,
.en h3,
.en h4,
.en h5,
.en h6,
.en p,
.en select,
.en blockquote,
.en pre,
.en a,
.en abbr,
.en acronym,
.en address,
.en big,
.en cite,
.en code,
.en del,
.en dfn,
.en em,
.en img,
.en ins,
.en kbd,
.en q,
.en s,
.en samp,
.en small,
.en strike,
.en sub,
.en tt,
.en var,
.en b,
.en u,
.en i,
.en center,
.en dl,
.en dt,
.en dd,
.en ol,
.en ul,
.en li,
.en fieldset,
.en form,
.en label,
.en legend,
.en table,
.en caption,
.en tbody,
.en tfoot,
.en thead,
.en tr,
.en th,
.en td {
    font-family: "Lato", sans-serif;
}
.ma20 {
    margin-top: 20px;
}
small {
    font-size: 80%;
    font-weight: bold;
    display: block;
    line-height: 1.7;
}
@media screen and (max-width: 736px) {
    small {
        font-weight: normal;
    }
}
small.space {
    margin: 1vh 0 0 0;
}
a {
    color: #333333;
    text-decoration: none;
    outline: none;
    border: none;
}
a:hover {
    text-decoration: none;
}
a img,
img {
    border: 0;
}
blockquote,
dd,
div,
dl,
dt,
h1,
h2,
h3,
h4,
h5,
h6,
li,
p,
pre,
span,
td,
th,
ul {
    margin: 0;
    padding: 0;
}
abbr,
acronym {
    border: 0;
}
address,
caption,
cite,
code,
dfn,
em,
th,
strong,
var {
    font-style: normal;
    font-weight: normal;
}
caption,
th {
    text-align: left;
}
code,
kbd,
pre,
samp,
tt {
    font-family: monospace;
    line-height: 100%;
}
* + html code,
kbd,
pre,
samp,
tt {
    font-size: 108%;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-weight: normal;
}
ul,
li {
    margin: 0;
    padding: 0;
    list-style: none;
}
q:before,
q:after {
    content: "";
}
button,
fieldset,
form,
input,
label,
legend,
textarea {
    font-family: inherit;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    outline: 0;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 100%;
}
table td {
    vertical-align: top;
}
.pc {
    display: block;
}
@media screen and (max-width: 736px) {
    .pc {
        display: none !important;
    }
}
.sp {
    display: none !important;
}
@media screen and (max-width: 736px) {
    .sp {
        display: block !important;
    }
}
.sp-block {
    display: none;
}
@media screen and (max-width: 736px) {
    .sp-block {
        display: block;
    }
}
body.over {
    overflow: hidden;
    position: fixed;
}
body.over ul.under-nav {
    overflow: hidden;
}
.upper-nav a.on {
    opacity: 0.5;
}
::placeholder {
    color: #ccc;
}
::-ms-input-placeholder {
    color: #ccc;
}
:-ms-input-placeholder {
    color: #ccc;
}
@media screen and (max-width: 736px) {
    input[type="submit"],
    input[type="reset"],
    input[type="button"],
    button {
        cursor: pointer;
        -webkit-appearance: button;
        *overflow: visible;
    }
}
@media screen and (max-width: 736px) {
    input[type="text"],
    textarea,
    input[type="button"],
    input[type="checkbox"],
    input[type="password"] {
        -webkit-appearance: none;
    }
}
input[type="text"].bo {
    border-bottom: 1px dotted #ccc;
    border-radius: none;
    font-size: 14px;
}
input[type="text"].w90 {
    width: 90%;
    margin-right: 5px;
}
body {
    margin: 0;
    color: #414042;
}
img {
    max-width: 100%;
}
.red {
    color: #c00;
}
.blue {
    color: #07f;
}
p {
    font-weight: 500;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 736px) {
    p {
        font-size: 14px;
        font-weight: normal;
    }
}
p.cap {
    letter-spacing: 0.05em;
}
p.error-message {
    color: #c00;
    font-weight: bold;
    margin: 10px 0;
}
@media screen and (max-width: 736px) {
    p.error-message {
        font-size: 13px;
    }
}
p.optional {
    padding: 0 20px 20px 20px;
}
input[type="text"],
input[type="password"],
input[type="number"],
input[type="email"],
select,
textarea {
    width: 100%;
    background: #fff;
    box-sizing: border-box;
    border: none;
    border-radius: 5px;
    padding: 10px;
    box-sizing: border-box;
    border: none;
    color: #58595b;
    font-family: "Noto Sans JP", sans-serif;
}
.no-spin::-webkit-inner-spin-button,
.no-spin::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
    -moz-appearance: textfield !important;
}
.mCS-my-theme.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    background: #8d52ab;
}
.mCS-my-theme.mCSB_scrollTools .mCSB_draggerRail {
    background-color: white;
}
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
.clearfix {
    display: inline-block;
}
* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 35px;
    transition: all 0.3s ease-in-out;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
}
@media screen and (max-width: 736px) {
    header {
        display: block;
        padding: 10px 15px;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        box-sizing: border-box;
        z-index: 999;
    }
}
header.fixed {
    background: #fff;
}
header p.lang {
    position: relative;
    top: -2px;
}
@media screen and (max-width: 736px) {
    header p.lang {
        position: absolute;
        top: 20px;
        right: 65px;
    }
}
header p.lang a {
    font-size: 14px;
    color: #fff;
    font-family: "Roboto", sans-serif !important;
    text-decoration: underline;
    transition: all 0.5s ease-in-out;
}
header p.lang a:hover {
    opacity: 0.7;
}
@media screen and (max-width: 736px) {
    header p.lang a {
        font-size: 12px;
    }
}
header p.lang a:before {
    content: "";
    display: inline-block;
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAZVJREFUSEu1VYFNxDAMtDfhJ4FOAkzCMwnPJJRJ+E1ML7Kti5sWCbWRqnwbv8/2nR2Vk5ee7F/+BDCzJxF5FBHseO7LPvv+rar4vbk2AczsQUQ+3OmeDwBOqop9tYYAZva2WF4H9pNH/lPO4Pymqu/1PyuA4hwgyOTFHbzCAdk0xxTMtYJ0AF6WiA5pz4sz86jauwMAFHYAAGiUs70zLxXgy2sOo5uZIXLwgPRb9LHMDN9x3qIm27uqXsIuAUYG1UkBgKIQ0KyqUxFFZssAQWyL3kvRZVQAskwRMXGTXDBApHwJyZkZ6gxH+a2AdOfEYcsKtgwQxkc0d/JwFoAsxDffDBD1ZjlGVvmtlCgk3EroYwV+UnUjkpMgM1uBkkyD5IyWlDgkOWSX9RupggBWPUKiSCVyBjzcavOkKgaN1spB0Xe2W6MiZswnjwQeATRC0LUIDuXE6vgaDbtIPUDiHkjiqMPRkLCLybs/7GiQPe+Ma5hFtCyqlfNOprW7Tr1wihRRXzxxbeI4rs3/X5lHzIvdEh0F8Au/Ow0ox3l4qgAAAABJRU5ErkJggg==")
        no-repeat;
    background-size: 14px;
    width: 14px;
    height: 14px;
    margin: 0 5px 0 0;
    position: relative;
    top: 3px;
}
header #overlay {
    display: flex;
    align-items: center;
    margin-left: auto;
}
@media screen and (max-width: 736px) {
    header #overlay {
        display: none;
        background: #fff;
        height: 100%;
        overflow-y: scroll;
        position: fixed;
        width: 100%;
        top: 0;
        left: 0;
        z-index: -1;
    }
}
@media screen and (max-width: 736px) {
    header #overlay:before {
        content: "";
        display: block;
        position: fixed;
        width: 100%;
        height: 100vh;
        background: #fff;
        z-index: -1;
    }
}
header #overlay ul {
    display: flex;
}
@media screen and (max-width: 736px) {
    header #overlay ul {
        display: block;
        margin: 90px 20px 0 20px;
    }
}
@media screen and (max-width: 736px) {
    header #overlay ul li {
        position: relative;
        border-bottom: 1px solid #eaeaea;
        padding: 15px 0;
    }
}
@media screen and (max-width: 736px) {
    header #overlay ul li:after {
        content: "";
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        background: url("../img/common/pointer2.svg") no-repeat;
        background-size: 100%;
        width: 27px;
        height: 27px;
    }
}
header #overlay ul li a {
    line-height: 2;
    font-size: 16px;
    transition: all 0.5s ease-in-out;
    display: block;
    color: #424c56;
    padding: 0 35px 0 0;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 736px) {
    header #overlay ul li a {
        font-size: 12px;
    }
}
header #overlay ul li a.active {
    opacity: 0.4;
}
@media screen and (max-width: 736px) {
    header #overlay ul li a {
        line-height: 3;
    }
}
header #overlay ul li a:hover {
    opacity: 0.7;
}
header a#btn {
    margin: 0;
    display: none;
    padding: 0;
    cursor: pointer;
    width: 50px;
    height: 50px;
    padding: 10px;
    box-sizing: border-box;
    border-radius: 0 0 0 20px;
    position: relative;
    z-index: 9999;
}
@media screen and (max-width: 736px) {
    header a#btn {
        display: block;
        width: 36px;
        height: 36px;
        position: absolute;
        right: 15px;
        top: 7px;
        background: none;
        border: none;
        padding: 5px;
        border-radius: 50%;
    }
}
header a#btn span {
    display: block;
    position: relative;
    top: 11px;
    left: 6px;
    background: #424c56;
    width: 20px;
    height: 2px;
}
@media screen and (max-width: 736px) {
    header a#btn span {
        left: 4px;
    }
}
header a#btn span:before {
    content: "";
    display: block;
    position: absolute;
    background: #424c56;
    width: 20px;
    height: 2px;
    transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 736px) {
    header a#btn span:before {
        top: -6px;
        background: #424c56;
    }
}
header a#btn span:after {
    content: "";
    display: block;
    position: absolute;
    background: #424c56;
    width: 20px;
    height: 2px;
    transition: all 0.3s ease-in-out;
}
@media screen and (max-width: 736px) {
    header a#btn span:after {
        top: 6px;
        background: #424c56;
    }
}
header a#btn span.change {
    height: 0;
}
header a#btn span.change:before {
    transform: rotate(-45deg);
    top: 2px;
}
@media screen and (max-width: 736px) {
    header a#btn span.change:before {
        top: 0;
    }
}
header a#btn span.change:after {
    transform: rotate(45deg);
    top: 2px;
}
@media screen and (max-width: 736px) {
    header a#btn span.change:after {
        top: 0;
    }
}
header h1 {
    width: 150px;
    line-height: 0;
}
@media screen and (max-width: 736px) {
    header h1 {
        width: 90px;
    }
}
header h1 a {
    line-height: 0;
}
header p.spnav {
    margin: 0 0 0 15px;
    position: fixed;
    right: 0;
    top: 0;
}
@media screen and (max-width: 736px) {
    header p.spnav {
        margin: 0;
        position: static;
    }
}
.title-box {
    display: flex;
    justify-content: space-between;
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 736px) {
    .title-box {
        display: block;
    }
}
.title-box .ttl {
    width: 36%;
}
@media screen and (max-width: 736px) {
    .title-box .ttl {
        width: auto;
    }
}
.title-box .ttl h2.title {
    text-align: left;
}
.title-box .txt {
    width: 64%;
}
@media screen and (max-width: 736px) {
    .title-box .txt {
        width: auto;
    }
}
.title-box .txt h3 {
    font-size: 38px;
    font-weight: bold;
    white-space: pre-line;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 736px) {
    .title-box .txt h3 {
        font-size: 18px;
    }
}
.title-box .txt p.btn {
    text-align: left !important;
    margin: 40px 0 60px 0 !important;
}
h2.title {
    font-family: "Outfit", sans-serif;
    font-size: 80px;
    text-align: center;
    letter-spacing: 0.075em;
    margin: 0 0 5vh 0;
    font-weight: bold;
}
@media screen and (max-width: 736px) {
    h2.title {
        font-size: 37px;
    }
}
h2.title.w {
    color: #fff;
}
h2.title.w span {
    color: #fff;
}
h2.title span {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    letter-spacing: 0.05em;
    display: block;
}
@media screen and (max-width: 736px) {
    h2.title span {
        font-size: 14px;
    }
}
footer {
    background: #fff;
    padding: 100px 10vw 0 10vw;
    border-radius: 190px 190px 0 0;
    position: relative;
    top: -190px;
}
@media screen and (max-width: 736px) {
    footer {
        border-radius: 40px 40px 0 0;
        position: relative;
        top: -40px;
        padding: 70px 0 0 0;
    }
}
footer .title-box {
    align-items: center;
    border-top: 1px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
    padding: 100px 0;
}
@media screen and (max-width: 736px) {
    footer .title-box {
        padding: 50px 0;
        margin: 0 20px;
        display: flex !important;
        align-items: flex-end;
    }
}
footer .title-box .ttl h2.title {
    margin-bottom: 1.5vh;
    font-size: 120px;
}
@media screen and (max-width: 736px) {
    footer .title-box .ttl h2.title {
        font-size: 37px;
    }
}
footer .title-box .ttl p {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    footer .title-box .ttl p {
        font-size: 14px;
    }
}
footer .title-box .txt p.btn {
    text-align: right !important;
}
@media screen and (max-width: 736px) {
    footer .title-box .txt p.btn {
        margin-bottom: 0 !important;
    }
}
footer p.btn-contact {
    text-align: center;
    margin: 20px 0;
}
@media screen and (max-width: 736px) {
    footer p.btn-contact {
        margin: 0;
    }
}
footer p.btn-contact a {
    background: none;
    font-family: "DM Serif Display", serif;
    color: #fff;
    padding: 20px 250px;
    border-radius: 50px;
    position: relative;
    transition: all 0.5s ease-in-out;
    border: 1px solid #fff;
    font-size: 24px;
}
@media screen and (max-width: 736px) {
    footer p.btn-contact a {
        display: block;
        padding: 15px;
        font-size: 14px;
        margin: 0 20px;
    }
}
footer p.btn-contact a:after {
    content: ">";
    display: block;
    position: absolute;
    top: 50%;
    transform: scale(0.7, 1) translateY(-50%);
    font-size: 18px;
    right: 25px;
    font-weight: bold;
}
footer p.btn-contact a:hover {
    background: #fff;
    color: #3a3a3a;
}
footer h3 {
    max-width: 240px;
    margin: 130px auto 50px;
}
@media screen and (max-width: 736px) {
    footer h3 {
        width: 50%;
        margin: 50px 0 25px 20px;
    }
}
footer nav ul {
    display: flex;
    justify-content: center;
}
@media screen and (max-width: 736px) {
    footer nav ul {
        display: block;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 0 20px;
    }
}
@media screen and (max-width: 736px) {
    footer nav ul li {
        width: 49%;
        line-height: 2.5;
    }
}
footer nav ul li a {
    margin: 0 20px;
    transition: all 0.5s ease-in-out;
    font-size: 14px;
}
footer nav ul li a:hover {
    opacity: 0.7;
}
@media screen and (max-width: 736px) {
    footer nav ul li a {
        font-size: 13px;
        margin: 0;
    }
}
footer nav#banner {
    max-width: 1240px;
    margin: 70px auto;
    padding: 20px 20px;
    box-sizing: border-box;
    background: #f8f8f8;
}
@media screen and (max-width: 736px) {
    footer nav#banner {
        margin: 50px 0 25px 0;
    }
}
footer nav#banner ul {
    display: flex;
}
@media screen and (max-width: 736px) {
    footer nav#banner ul {
        padding: 0 !important;
    }
}
footer nav#banner ul li {
    width: 22%;
}
@media screen and (max-width: 736px) {
    footer nav#banner ul li {
        width: 30%;
    }
}
footer nav#banner ul li a {
    background: #fff;
    display: block;
    text-align: center;
    padding: 20px;
}
@media screen and (max-width: 736px) {
    footer nav#banner ul li a {
        padding: 10px;
    }
}
footer nav#banner ul li a img {
    height: 35px;
    line-height: 0;
}
@media screen and (max-width: 736px) {
    footer nav#banner ul li a img {
        height: 15px;
    }
}
footer nav#other-nav {
    padding: 20px 0 0 0;
}
@media screen and (max-width: 736px) {
    footer nav#other-nav {
        padding: 0;
    }
}
@media screen and (max-width: 736px) {
    footer nav#other-nav ul li {
        width: 49%;
        line-height: 2;
    }
}
@media screen and (max-width: 736px) {
    footer nav#other-nav ul li:last-child {
        line-height: 1;
        margin: 15px 0 0 0;
    }
}
footer nav#other-nav ul li a {
    font-size: 12px;
}
@media screen and (max-width: 736px) {
    footer nav#other-nav ul li a {
        font-size: 11px;
    }
}
footer #copyrights p {
    text-align: center;
    font-family: "Outfit", sans-serif;
    font-size: 12px;
}
@media screen and (max-width: 736px) {
    footer #copyrights p {
        font-size: 11px;
    }
}
.box {
    opacity: 0;
}
.slideUp {
    opacity: 1;
    animation: slideUp 1s ease-in-out forwards;
}
@keyframes slideUp {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
#mv {
    background: url("../img/top/mv.jpg") no-repeat center 50%;
    background-size: cover;
    width: 100%;
    border-radius: 0 0 32vw 0;
    animation: mv 1s ease-in-out forwards;
    opacity: 0;
}
@keyframes mv {
    100% {
        opacity: 1;
    }
}
#mv .mv-title {
    text-align: center;
    animation: mv 1s ease-in-out forwards;
    opacity: 0;
    padding: 25vh 0 5vh;
}
@media screen and (max-width: 736px) {
    #mv .mv-title {
        padding: 20vh 0 5vh;
    }
}
#mv .mv-title h2 {
    font-weight: bold;
    font-size: 78px;
}
@media screen and (max-width: 736px) {
    #mv .mv-title h2 {
        font-size: 30px;
        font-weight: 900;
    }
}
#mv .mv-title h2 span {
    display: block;
    width: 200px;
    margin: 0 auto 5vh auto;
}
@media screen and (max-width: 736px) {
    #mv .mv-title h2 span {
        margin: 0 auto 2.5vh auto;
        width: 100px;
    }
}
#mv .mv-title p {
    font-size: 26px;
    margin: 1.5vh 0 0 0;
}
@media screen and (max-width: 736px) {
    #mv .mv-title p {
        font-size: 15px;
    }
}
#mv .slider {
    overflow: hidden;
    border-radius: 0 0 32vw 0;
    animation: mv 1s ease-in-out forwards;
    opacity: 0;
}
#mv .slider div {
    padding: 0 15px;
}
@media screen and (max-width: 736px) {
    #mv .slider div {
        padding: 0 5px;
    }
}
#mv .slider div:nth-child(even) {
    margin-top: 5vh;
}
#top-page main section {
    padding: 100px 0;
}
@media screen and (max-width: 736px) {
    #top-page main section {
        padding: 50px 0;
    }
}
#top-page main section#statement {
    background: #fff;
    padding: 100px 0 250px 0;
    background: url("../img/top/statement.jpg") no-repeat center 101% #fff;
    background-size: 100% auto;
}
@media screen and (max-width: 736px) {
    #top-page main section#statement {
        padding: 100px 0 100px 0;
    }
}
#top-page main section#statement .content {
    max-width: 1130px;
    margin: 0 auto;
    position: relative;
}
@media screen and (max-width: 736px) {
    #top-page main section#statement .content {
        padding: 0 20px;
    }
}
#top-page main section#statement .content h3 {
    font-size: 48px;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.09em;
}
@media screen and (max-width: 736px) {
    #top-page main section#statement .content h3 {
        font-size: 20px;
        white-space: initial;
    }
}
#top-page main section#statement .content p {
    text-align: center;
    margin: 2.5vh 0 0 0;
    font-size: 20px;
    line-height: 2;
}
@media screen and (max-width: 736px) {
    #top-page main section#statement .content p {
        font-size: 15px;
    }
}
#top-page main section#group {
    padding: 100px 0 50px 0;
    background: url("../img/top/group.jpg") no-repeat;
    background-size: cover;
}
#top-page main section#group ul {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
    height: 1100px;
}
@media screen and (max-width: 1200px) {
    #top-page main section#group ul {
        height: 92vw;
        margin: 0;
        padding: 0;
    }
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul {
        height: 105vw;
    }
}
#top-page main section#group ul li {
    position: relative;
}
#top-page main section#group ul li:nth-child(1) .circle-w {
    box-shadow: 0px 10px 25px 0px rgba(191, 196, 208, 0.4);
    margin: 0 auto;
    width: 50%;
    border-radius: 50%;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(1) .circle-w {
        width: 70%;
    }
}
#top-page main section#group ul li:nth-child(1) .circle-w i {
    width: 30%;
}
#top-page main section#group ul li:nth-child(1) .circle-w h3 {
    font-size: 24px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(1) .circle-w h3 {
        font-size: 11px;
    }
}
#top-page main section#group ul li:nth-child(1) .circle-w p {
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(1) .circle-w p {
        font-size: 10px;
    }
}
#top-page main section#group ul li:nth-child(2) .circle-w {
    box-shadow: 0px 10px 25px 0px rgba(191, 224, 238, 0.4);
    margin: 0 auto;
    width: 34.5%;
    border-radius: 50% 0 50% 50%;
    position: absolute;
    left: 0;
    top: -50px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(2) .circle-w {
        top: -10px;
    }
}
#top-page main section#group ul li:nth-child(2) .circle-w i {
    width: 20%;
}
#top-page main section#group ul li:nth-child(2) .circle-w h3 {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(2) .circle-w h3 {
        font-size: 9px;
    }
}
#top-page main section#group ul li:nth-child(2) .circle-w p {
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(2) .circle-w p {
        font-size: 8px;
    }
}
#top-page main section#group ul li:nth-child(3) .circle-w {
    box-shadow: 0px 10px 25px 0px rgba(216, 205, 228, 0.4);
    margin: 0 auto;
    width: 34.5%;
    border-radius: 50% 0 50% 50% / 50% 50% 50% 50%;
    position: absolute;
    left: 50%;
    top: 95px;
    transform: translateX(-50%) rotate(-45deg);
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(3) .circle-w {
        top: 30px;
    }
}
#top-page main section#group ul li:nth-child(3) .circle-w .circle-h {
    transform: rotate(45deg);
}
#top-page main section#group ul li:nth-child(3) .circle-w .circle-h i {
    width: 30%;
}
#top-page main section#group ul li:nth-child(3) .circle-w .circle-h h3 {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(3) .circle-w .circle-h h3 {
        font-size: 9px;
    }
}
#top-page main section#group ul li:nth-child(3) .circle-w .circle-h p {
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(3) .circle-w .circle-h p {
        font-size: 8px;
    }
}
#top-page main section#group ul li:nth-child(4) .circle-w {
    box-shadow: 0px 10px 25px 0px rgba(233, 219, 202, 0.4);
    margin: 0 auto;
    width: 34.5%;
    border-radius: 0 50% 50% 50%;
    position: absolute;
    right: 0;
    top: -50px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(4) .circle-w {
        top: -10px;
    }
}
#top-page main section#group ul li:nth-child(4) .circle-w i {
    width: 27.5%;
}
#top-page main section#group ul li:nth-child(4) .circle-w h3 {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(4) .circle-w h3 {
        font-size: 9px;
    }
}
#top-page main section#group ul li:nth-child(4) .circle-w p {
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li:nth-child(4) .circle-w p {
        font-size: 8px;
    }
}
#top-page main section#group ul li .circle-w {
    background: #fff;
}
#top-page main section#group ul li .circle-h {
    position: relative;
    padding-top: 100%;
    height: 0;
}
#top-page main section#group ul li .circle-h .com {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 90%;
}
#top-page main section#group ul li .circle-h .com i {
    display: block;
    margin: 0 auto;
    line-height: 0;
}
#top-page main section#group ul li .circle-h .com h3 {
    font-weight: bold;
    margin: 2vh 0 1.5vh 0;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li .circle-h .com h3 {
        margin: 7px 0 3px 0;
    }
}
#top-page main section#group ul li .circle-h .com p {
    white-space: pre-line;
    line-height: 1.7;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li .circle-h .com p {
        white-space: initial;
        line-height: 1.5;
    }
}
#top-page main section#group ul li .circle-h .com p.blank {
    margin: 5vh 0 0 0;
}
@media screen and (max-width: 736px) {
    #top-page main section#group ul li .circle-h .com p.blank {
        margin: 0.5vh 0 0 0;
    }
}
#top-page main section#group ul li .circle-h .com p.blank a {
    font-family: "Outfit", sans-serif;
    transition: 0.3s ease-in-out;
}
#top-page main section#group ul li .circle-h .com p.blank a:hover {
    opacity: 0.7;
}
#top-page main section#group ul li .circle-h .com p.blank a:after {
    content: "";
    display: inline-block;
    background: url("../img/common/blank.svg") no-repeat;
    background-size: 100%;
    width: 12px;
    height: 11px;
    margin: 0 0 0 10px;
}
#top-page main section#group .bbs {
    align-items: center;
    color: #fff;
    height: 300px;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
    position: relative;
    z-index: 9;
    margin-bottom: 100px;
}
@media screen and (max-width: 736px) {
    #top-page main section#group .bbs {
        height: 250px;
        margin-bottom: 0;
    }
}
#top-page main section#group .bbs ul {
    animation: flowing 20s linear infinite;
    font-size: 170px;
    transform: translateX(100%);
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 736px) {
    #top-page main section#group .bbs ul {
        font-size: 100px;
    }
}
@keyframes flowing {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}
#top-page main section#group .bbs ul li {
    font-family: "Outfit", sans-serif;
    display: inline-block;
    margin: 0 2.5vw 0 0;
    color: #fff;
    opacity: 0.6;
    letter-spacing: 0;
}
#top-page main section#news {
    background: #fff;
    border-radius: 190px 0 0 0;
    position: relative;
    margin-top: -190px;
}
@media screen and (max-width: 736px) {
    #top-page main section#news {
        border-radius: 90px 0 0 0;
        margin-top: -90px;
    }
}
#top-page main section#news ul {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul {
        margin: 0 20px;
        padding: 0;
    }
}
#top-page main section#news ul li {
    padding: 40px 0;
    border-bottom: 1px solid #eaeaea;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li {
        padding: 20px 0;
    }
}
#top-page main section#news ul li a {
    transition: all 0.5s ease-in-out;
    display: flex;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li a {
        display: block;
    }
}
#top-page main section#news ul li a.no-link h3:after {
    display: none;
}
#top-page main section#news ul li a:hover {
    opacity: 0.7;
}
#top-page main section#news ul li div {
    width: 25%;
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li div {
        width: 60%;
        justify-content: flex-start;
    }
}
#top-page main section#news ul li div time {
    color: #696969;
    font-size: 14px;
    font-family: "Outfit", sans-serif;
    position: relative;
    top: 5px;
    width: 35%;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li div time {
        font-size: 12px;
        width: 50%;
    }
}
#top-page main section#news ul li div i {
    display: inline-block;
    width: 60%;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li div i {
        width: 50%;
    }
}
#top-page main section#news ul li div i span {
    border: 1px solid #424c56;
    padding: 5px 25px;
    border-radius: 50px;
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li div i span {
        font-size: 11px;
        padding: 5px 15px;
    }
}
#top-page main section#news ul li h3 {
    width: 75%;
    padding-right: 100px;
    position: relative;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li h3 {
        width: auto;
        font-size: 13px;
        margin: 15px 0 0 0;
        padding-right: 40px;
    }
}
#top-page main section#news ul li h3:after {
    content: "";
    width: 35px;
    height: 35px;
    display: block;
    background: url("../img/common/pointer.svg") no-repeat 50% 50% #424c56;
    background-size: 6px;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: -5px;
}
@media screen and (max-width: 736px) {
    #top-page main section#news ul li h3:after {
        width: 27px;
        height: 27px;
    }
}
#top-page main section#news p.btn {
    text-align: right;
    max-width: 1240px;
    margin: 5vh auto 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
#top-page main section#join {
    position: relative;
    background: url("../img/top/group.jpg") no-repeat center 50%;
    background-size: cover;
    padding-bottom: 390px;
}
@media screen and (max-width: 736px) {
    #top-page main section#join {
        padding-bottom: 100px;
    }
}
#top-page main section#join p {
    text-align: center;
}
@media screen and (max-width: 736px) {
    #top-page main section#join p {
        text-align: right !important;
    }
}
#top-page p.btn {
    text-align: center;
    margin: 0;
    position: relative;
}
@media screen and (max-width: 736px) {
    #top-page p.btn {
        margin: 50px 0 20px 0;
    }
}
#top-page p.btn.circle {
    position: absolute;
    right: 150px;
    top: 415px;
}
@media screen and (max-width: 736px) {
    #top-page p.btn.circle {
        right: 55px;
        top: 210px;
    }
}
#top-page p.btn.circle a {
    background: #424c56;
    font-family: "DM Serif Display", serif;
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: block;
    position: relative;
}
@media screen and (max-width: 736px) {
    #top-page p.btn.circle a {
        width: 32px;
        height: 32px;
    }
}
#top-page p.btn.circle a img {
    width: 12px;
    position: relative;
    top: 11px;
}
@media screen and (max-width: 736px) {
    #top-page p.btn.circle a img {
        width: 6px;
        top: 3px;
    }
}
#top-page p.btn.circle a:after {
    display: none;
}
#top-page p.btn.circle a:before {
    position: absolute;
    top: -160%;
    left: -170%;
    animation: 20s linear infinite rotation;
    width: 270px;
    height: 270px;
    border-radius: 0;
    display: block;
    background: url("../img/top/rotate.svg") no-repeat;
}
@media screen and (max-width: 736px) {
    #top-page p.btn.circle a:before {
        width: 100px;
        height: 100px;
        top: -100%;
        left: -107%;
        background: url("../img/top/rotate-sp.svg") no-repeat;
    }
}
@keyframes rotation {
    0% {
        transform: rotateZ(0);
    }
    100% {
        transform: rotateZ(360deg);
    }
}
#top-page p.btn a {
    position: relative;
    transition: all 0.5s ease-in-out;
}
#top-page p.btn a:hover {
    opacity: 0.7;
}
#top-page p.btn a span {
    padding: 0 0 0 75px;
    font-family: "Outfit", sans-serif;
    font-weight: bold;
}
@media screen and (max-width: 736px) {
    #top-page p.btn a span {
        padding: 0 0 0 45px;
    }
}
#top-page p.btn a:before {
    content: "";
    display: inline-block;
    background: #424c56;
    font-family: "DM Serif Display", serif;
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: -16px;
}
@media screen and (max-width: 736px) {
    #top-page p.btn a:before {
        width: 30px;
        height: 30px;
        top: -5px;
    }
}
#top-page p.btn a:after {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    left: 27px;
    width: 10px;
    height: 15px;
    background: url("../img/common/pointer.svg") no-repeat;
    background-size: 100%;
}
@media screen and (max-width: 736px) {
    #top-page p.btn a:after {
        width: 6px;
        height: 9px;
        top: 6px;
        left: 12px;
    }
}
#under-page .news_contents {
    max-width: 980px;
    margin: 0 auto;
    padding: 10vh 20px;
    box-sizing: border-box;
}
#under-page .news_contents .pagelink {
    margin: 5vh 0 0 0;
    padding: 5vh 0 0 0;
    border-top: 1px solid #d8d8d8;
}
#under-page .news_contents .pagelink ul.flex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
#under-page .news_contents .pagelink ul.flex li.prev,
#under-page .news_contents .pagelink ul.flex li.next {
    width: 20%;
}
#under-page .news_contents .pagelink ul.flex li.prev:before {
    content: "<";
    display: inline-block;
    transform: scale(0.7, 1);
    margin: 0 10px 0 0;
}
#under-page .news_contents .pagelink ul.flex li.next:before {
    content: ">";
    display: inline-block;
    transform: scale(0.7, 1);
    margin: 0 0 0 10px;
}
#under-page .news_contents .pagelink ul.flex li.list {
    width: 60%;
    text-align: center;
    margin: 0 auto;
}
#under-page .news_contents .pagelink ul.flex li.list p a {
    border: 1px solid #424c56;
    padding: 15px 60px;
    border-radius: 50px;
}
#under-page .news_contents .w_day {
    font-family: "Outfit", sans-serif;
}
#under-page .news_contents h2 {
    margin: 2.5vh 0 3.5vh 0;
    font-size: 30px;
    font-weight: 700;
}
@media screen and (max-width: 736px) {
    #under-page .news_contents h2 {
        font-size: 20px;
    }
}
#under-page .news_contents .w_pic img {
    border-radius: 25px;
}
#under-page .news_contents .w_text {
    margin: 1.5vh 0;
}
#under-page .news_contents .w_text p {
    line-height: 2;
}
#under-page .news_contents .w_text p a {
    text-decoration: underline;
}
#under-page .news_contents .w_text p strong {
    font-weight: 900;
}
#under-page #news {
    position: relative;
}
#under-page #news ul {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
@media screen and (max-width: 736px) {
    #under-page #news ul {
        margin: 0 20px;
        padding: 0;
    }
}
#under-page #news ul li {
    padding: 40px 0;
    border-bottom: 1px solid #eaeaea;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li {
        padding: 20px 0;
    }
}
#under-page #news ul li a {
    transition: all 0.5s ease-in-out;
    display: flex;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li a {
        display: block;
    }
}
#under-page #news ul li a.no-link h3:after {
    display: none;
}
#under-page #news ul li a:hover {
    opacity: 0.7;
}
#under-page #news ul li div {
    width: 25%;
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li div {
        width: 60%;
        justify-content: flex-start;
    }
}
#under-page #news ul li div time {
    color: #696969;
    font-size: 14px;
    font-family: "Outfit", sans-serif;
    position: relative;
    top: 5px;
    width: 35%;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li div time {
        font-size: 12px;
        width: 50%;
    }
}
#under-page #news ul li div i {
    display: inline-block;
    width: 60%;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li div i {
        width: 50%;
    }
}
#under-page #news ul li div i span {
    border: 1px solid #424c56;
    padding: 5px 25px;
    border-radius: 50px;
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li div i span {
        font-size: 11px;
        padding: 5px 15px;
    }
}
#under-page #news ul li h3 {
    width: 75%;
    padding-right: 100px;
    position: relative;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li h3 {
        width: auto;
        font-size: 13px;
        margin: 15px 0 0 0;
        padding-right: 40px;
    }
}
#under-page #news ul li h3:after {
    content: "";
    width: 35px;
    height: 35px;
    display: block;
    background: url("../img/common/pointer.svg") no-repeat 50% 50% #424c56;
    background-size: 6px;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: -5px;
}
@media screen and (max-width: 736px) {
    #under-page #news ul li h3:after {
        width: 27px;
        height: 27px;
    }
}
#under-page #news p.btn {
    text-align: right;
    max-width: 1240px;
    margin: 5vh auto 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
#under-page#join {
    position: relative;
    background: url("../img/top/group.jpg") no-repeat center 50%;
    background-size: cover;
    padding-bottom: 390px;
}
@media screen and (max-width: 736px) {
    #under-page#join {
        padding-bottom: 100px;
    }
}
#under-page#join p {
    text-align: center;
}
@media screen and (max-width: 736px) {
    #under-page#join p {
        text-align: right !important;
    }
}
#under-page p.btn a {
    position: relative;
    transition: all 0.5s ease-in-out;
}
#under-page p.btn a:hover {
    opacity: 0.7;
}
#under-page p.btn a span {
    padding: 0 0 0 75px;
    font-family: "Outfit", sans-serif;
    font-weight: bold;
}
@media screen and (max-width: 736px) {
    #under-page p.btn a span {
        padding: 0 0 0 45px;
    }
}
#under-page p.btn a:before {
    content: "";
    display: inline-block;
    background: #424c56;
    font-family: "DM Serif Display", serif;
    color: #fff;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: -16px;
}
@media screen and (max-width: 736px) {
    #under-page p.btn a:before {
        width: 30px;
        height: 30px;
        top: -5px;
    }
}
#under-page p.btn a:after {
    content: "";
    display: block;
    position: absolute;
    top: 7px;
    left: 27px;
    width: 10px;
    height: 15px;
    background: url("../img/common/pointer.svg") no-repeat;
    background-size: 100%;
}
@media screen and (max-width: 736px) {
    #under-page p.btn a:after {
        width: 6px;
        height: 9px;
        top: 6px;
        left: 12px;
    }
}
#under-page main {
    padding: 15vh 0 35vh;
    background-image: url("../img/under/bk1.jpg"), url("../img/top/group.jpg");
    background-size: 100% auto, 100% auto;
    background-position: 0 0, center 100%;
    background-repeat: repeat, no-repeat;
}
@media screen and (max-width: 736px) {
    #under-page main {
        background-image: url("../img/under/bk1.jpg"),
            url("../img/top/group.jpg");
        background-size: auto, 100% auto;
        padding: 10vh 0 20vh;
    }
}
#under-page main #bread-crumbs {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
#under-page main #bread-crumbs ul {
    display: flex;
}
#under-page main #bread-crumbs ul li {
    font-size: 13px;
}
@media screen and (max-width: 736px) {
    #under-page main #bread-crumbs ul {
        flex-wrap: wrap;
    }
}
@media screen and (max-width: 736px) {
    #under-page main #bread-crumbs ul li {
        font-size: 11px;
    }
}
#under-page main #bread-crumbs ul li:not(:last-child)::after {
    content: "/";
    display: inline-block;
    margin: 0 10px;
}
#under-page main article .title-box-under {
    max-width: 1240px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 10vh 20px;
    border-bottom: 1px solid #d8d8d8;
}
#under-page main article .title-box-under.con {
    border-bottom: none;
    padding-bottom: 0;
}
#under-page main article .title-box-under .ttl {
    width: auto;
}
#under-page main article .title-box-under .ttl h2.title {
    font-size: 60px;
    margin: 0;
    text-align: left;
}
@media screen and (max-width: 736px) {
    #under-page main article .title-box-under .ttl h2.title {
        font-size: 40px;
        line-height: 1.2;
    }
}
#under-page main article .title-box-under .ttl h2.title span {
    font-size: 16px;
}
@media screen and (max-width: 736px) {
    #under-page main article .title-box-under .ttl h2.title span {
        font-size: 14px;
        line-height: 3;
    }
}
#under-page main article section {
    padding: 10vh 0;
}
#under-page main article section.w {
    background: #fff;
}
#under-page main article section nav {
    margin-bottom: 5vh;
}
#under-page main article section nav ul.type {
    display: flex;
    justify-content: center;
}
@media screen and (max-width: 736px) {
    #under-page main article section nav ul.type {
        justify-content: space-between;
        flex-wrap: wrap;
    }
}
#under-page main article section nav ul.type li {
    margin: 0 10px;
}
@media screen and (max-width: 736px) {
    #under-page main article section nav ul.type li {
        width: 49%;
        margin: 0;
    }
}
#under-page main article section nav ul.type li a {
    border: 1px solid #999;
    padding: 15px 30px;
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #under-page main article section nav ul.type li a {
        font-size: 12px;
        padding: 15px;
        display: block;
    }
}
#under-page main article section article {
    max-width: 1240px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0 20px;
}
#under-page main article section article#group {
    padding: 100px 0 50px 0;
    background-size: cover;
    max-width: initial;
}
@media screen and (max-width: 736px) {
    #under-page main article section article#group {
        padding: 50px 0 0 0;
    }
}
#under-page main article section article#group ul {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
    height: 530px;
}
@media screen and (max-width: 1200px) {
    #under-page main article section article#group ul {
        height: 50vh;
        margin: 0;
        padding: 0;
    }
}
@media screen and (max-width: 736px) {
    #under-page main article section article#group ul {
        height: 20vw;
    }
}
#under-page main article section article#group ul li {
    position: relative;
}
#under-page main article section article#group ul li:nth-child(1) .circle-w {
    box-shadow: 0px 10px 25px 0px rgba(191, 224, 238, 0.4);
    margin: 0 auto;
    width: 34.5%;
    border-radius: 50% 0 50% 50%;
    position: absolute;
    left: 0;
    top: -50px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(1)
        .circle-w {
        top: -10px;
    }
}
#under-page main article section article#group ul li:nth-child(1) .circle-w i {
    width: 20%;
}
#under-page main article section article#group ul li:nth-child(1) .circle-w h3 {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(1)
        .circle-w
        h3 {
        font-size: 9px;
    }
}
#under-page main article section article#group ul li:nth-child(1) .circle-w p {
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(1)
        .circle-w
        p {
        font-size: 8px;
    }
}
#under-page main article section article#group ul li:nth-child(2) .circle-w {
    box-shadow: 0px 10px 25px 0px rgba(216, 205, 228, 0.4);
    margin: 0 auto;
    width: 34.5%;
    border-radius: 50% 0 50% 50% / 50% 50% 50% 50%;
    position: absolute;
    left: 50%;
    top: 95px;
    transform: translateX(-50%) rotate(-45deg);
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(2)
        .circle-w {
        top: 30px;
    }
}
#under-page
    main
    article
    section
    article#group
    ul
    li:nth-child(2)
    .circle-w
    .circle-h {
    transform: rotate(45deg);
}
#under-page
    main
    article
    section
    article#group
    ul
    li:nth-child(2)
    .circle-w
    .circle-h
    i {
    width: 30%;
}
#under-page
    main
    article
    section
    article#group
    ul
    li:nth-child(2)
    .circle-w
    .circle-h
    h3 {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(2)
        .circle-w
        .circle-h
        h3 {
        font-size: 9px;
    }
}
#under-page
    main
    article
    section
    article#group
    ul
    li:nth-child(2)
    .circle-w
    .circle-h
    p {
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(2)
        .circle-w
        .circle-h
        p {
        font-size: 8px;
    }
}
#under-page main article section article#group ul li:nth-child(3) .circle-w {
    box-shadow: 0px 10px 25px 0px rgba(233, 219, 202, 0.4);
    margin: 0 auto;
    width: 34.5%;
    border-radius: 0 50% 50% 50%;
    position: absolute;
    right: 0;
    top: -50px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(3)
        .circle-w {
        top: -10px;
    }
}
#under-page main article section article#group ul li:nth-child(3) .circle-w i {
    width: 27.5%;
}
#under-page main article section article#group ul li:nth-child(3) .circle-w h3 {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(3)
        .circle-w
        h3 {
        font-size: 9px;
    }
}
#under-page main article section article#group ul li:nth-child(3) .circle-w p {
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li:nth-child(3)
        .circle-w
        p {
        font-size: 8px;
    }
}
#under-page main article section article#group ul li .circle-w {
    background: #fff;
}
#under-page main article section article#group ul li .circle-h {
    position: relative;
    padding-top: 100%;
    height: 0;
}
#under-page main article section article#group ul li .circle-h .com {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 90%;
}
#under-page main article section article#group ul li .circle-h .com i {
    display: block;
    margin: 0 auto;
    line-height: 0;
}
#under-page main article section article#group ul li .circle-h .com h3 {
    font-weight: bold;
    margin: 2vh 0 1.5vh 0;
}
@media screen and (max-width: 736px) {
    #under-page main article section article#group ul li .circle-h .com h3 {
        margin: 7px 0 3px 0;
    }
}
#under-page main article section article#group ul li .circle-h .com p {
    white-space: pre-line;
    line-height: 1.7;
}
@media screen and (max-width: 736px) {
    #under-page main article section article#group ul li .circle-h .com p {
        white-space: initial;
        line-height: 1.5;
    }
}
#under-page main article section article#group ul li .circle-h .com p.blank {
    margin: 5vh 0 0 0;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article#group
        ul
        li
        .circle-h
        .com
        p.blank {
        margin: 0.5vh 0 0 0;
    }
}
#under-page main article section article#group ul li .circle-h .com p.blank a {
    font-family: "Outfit", sans-serif;
    transition: 0.3s ease-in-out;
}
#under-page
    main
    article
    section
    article#group
    ul
    li
    .circle-h
    .com
    p.blank
    a:hover {
    opacity: 0.7;
}
#under-page
    main
    article
    section
    article#group
    ul
    li
    .circle-h
    .com
    p.blank
    a:after {
    content: "";
    display: inline-block;
    background: url("../img/common/blank.svg") no-repeat;
    background-size: 100%;
    width: 12px;
    height: 11px;
    margin: 0 0 0 10px;
}
#under-page main article section article#group .bbs {
    align-items: center;
    color: #fff;
    height: 300px;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
    position: relative;
    z-index: 9;
    margin-bottom: -33vh;
}
@media screen and (max-width: 736px) {
    #under-page main article section article#group .bbs {
        height: 250px;
        margin-bottom: -25vh;
        margin-top: 40px;
    }
}
#under-page main article section article#group .bbs ul {
    animation: flowing 20s linear infinite;
    font-size: 170px;
    transform: translateX(100%);
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 736px) {
    #under-page main article section article#group .bbs ul {
        font-size: 100px;
    }
}
@keyframes flowing {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}
#under-page main article section article#group .bbs ul li {
    font-family: "Outfit", sans-serif;
    display: inline-block;
    margin: 0 2.5vw 0 0;
    color: #fff;
    opacity: 0.6;
    letter-spacing: 0;
}
#under-page main article section article.detail:not(:last-child) {
    border-bottom: 1px solid #d8d8d8;
    margin-bottom: 10vh;
    padding-bottom: 10vh;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.detail:not(:last-child) {
        margin-bottom: 10vh;
        padding-bottom: 5vh;
    }
}
#under-page main article section article.detail h3 {
    margin-bottom: 5vh;
}
#under-page main article section article.detail h3 span {
    border-bottom: 1px solid #424c56;
    font-weight: 700;
    font-size: 20px;
    padding-bottom: 2.5vh;
}
#under-page main article section article.detail h4 {
    font-size: 25px;
    line-height: 1.7;
    margin-bottom: 15px;
    font-weight: bold;
    letter-spacing: 0.05em;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.detail h4 {
        font-size: 20px;
    }
}
#under-page main article section article.detail .txt {
    margin-top: 5vh;
}
#under-page main article section article.detail .txt p:not(:last-child) {
    margin-bottom: 2.5vh;
}
#under-page main article section article.detail .txt h5 {
    font-weight: 700;
    margin-bottom: 2.5vh;
    font-size: 20px;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.detail .txt h5 {
        font-size: 16px;
        margin-bottom: 1.5vh;
    }
}
#under-page main article section article.detail .txt .jobinfo_contents dl {
    display: flex;
    margin-bottom: 25px;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.detail .txt .jobinfo_contents dl {
        display: block;
    }
}
#under-page main article section article.detail .txt .jobinfo_contents dl dt {
    box-sizing: border-box;
    font-weight: bold;
    letter-spacing: 0.01em;
    width: 120px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article.detail
        .txt
        .jobinfo_contents
        dl
        dt {
        width: auto;
        margin-bottom: 1.5vh;
    }
}
#under-page main article section article.detail .txt .jobinfo_contents dl dd {
    box-sizing: border-box;
    font-size: 16px;
    font-feature-settings: "palt";
    line-height: 1.7;
    letter-spacing: 0.05em;
    width: calc(100% - 120px);
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article.detail
        .txt
        .jobinfo_contents
        dl
        dd {
        width: auto;
        font-size: 14px;
    }
}
#under-page
    main
    article
    section
    article.detail
    .txt
    .jobinfo_contents
    dl
    dd
    .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article.detail
        .txt
        .jobinfo_contents
        dl
        dd
        .flex {
        justify-content: space-between;
    }
}
#under-page
    main
    article
    section
    article.detail
    .txt
    .jobinfo_contents
    dl
    dd
    .flex
    li.step {
    font-family: "Outfit", sans-serif;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article.detail
        .txt
        .jobinfo_contents
        dl
        dd
        .flex
        li.step {
        width: 20%;
    }
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article.detail
        .txt
        .jobinfo_contents
        dl
        dd
        .flex
        li.step_text {
        width: 75%;
    }
}
#under-page main article section article.short {
    max-width: 920px;
}
#under-page main article section article.short h4 {
    font-size: 40px;
    font-weight: bold;
    letter-spacing: 0.05em;
    text-align: center;
    margin-bottom: 5vh;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.short h4 {
        font-size: 25px;
        line-height: 1.7;
        margin-bottom: 15px;
    }
}
#under-page main article section article.short p {
    line-height: 2;
}
#under-page main article section article.short p:not(:last-child) {
    margin: 0 0 2.5vh 0;
}
#under-page main article section article.short p.name {
    text-align: right;
    width: 202px;
    margin-left: auto;
}
#under-page main article section article.short p.name span {
    display: block;
    text-align: left;
    font-size: 13px;
}
#under-page main article section article.contact-wrap {
    background: #fff;
    border-radius: 50px;
    padding: 10vh 10vh;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.contact-wrap {
        padding: 10vh 20px;
    }
}
#under-page main article section article.contact-wrap .submit {
    text-align: center;
    margin: 5vh 0 0 0;
}
#under-page
    main
    article
    section
    article.contact-wrap
    .submit
    input[type="submit"] {
    background: #424c56;
    color: #fff;
    border: none;
    padding: 2.5vh 10vh;
    border-radius: 50px;
    font-weight: bold;
    letter-spacing: 0.1em;
    font-size: 110%;
}
#under-page main article section article table {
    width: 100%;
}
#under-page main article section article table.contact-table {
    margin: 0 auto;
}
#under-page main article section article table.contact-table tr.ver1,
#under-page main article section article table.contact-table tr.ver2 {
    display: none;
}
#under-page main article section article table.contact-table th {
    display: block;
    width: auto;
    border-bottom: none !important;
    border-top: none !important;
}
@media screen and (max-width: 736px) {
    #under-page main article section article table.contact-table th {
        padding-top: 20px;
    }
}
#under-page main article section article table.contact-table th .required {
    background: #c00;
    color: #fff;
    font-size: 13px;
    padding: 3px;
    line-height: 1;
    margin-right: 10px;
}
@media screen and (max-width: 736px) {
    #under-page main article section article table.contact-table th .required {
        margin-right: 0;
        margin-left: 10px;
        font-size: 11px;
    }
}
#under-page main article section article table.contact-table th .flex {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-start;
    float: left;
    font-weight: bold;
}
@media screen and (max-width: 736px) {
    #under-page main article section article table.contact-table th .flex {
        flex-direction: row;
        float: none;
    }
}
#under-page main article section article table.contact-table td {
    display: block;
    padding-top: 0;
    border-top: none !important;
    border-bottom: none !important;
    padding-bottom: 0;
    font-size: 14px;
}
@media screen and (max-width: 736px) {
    #under-page main article section article table.contact-table td {
        padding-top: 20px;
    }
}
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    .mwform-radio-field {
    font-size: 18px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article
        table.contact-table
        td
        .mwform-radio-field {
        font-size: 15px;
        line-height: 2;
    }
}
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    .mwform-radio-field:not(:first-child) {
    margin-left: 20px;
}
@media screen and (max-width: 736px) {
    #under-page
        main
        article
        section
        article
        table.contact-table
        td
        .mwform-radio-field:not(:first-child) {
        margin-left: 0;
    }
}
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    input[type="text"],
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    input[type="email"],
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    input[type="tel"],
#under-page main article section article table.contact-table td textarea,
#under-page main article section article table.contact-table td select {
    background: #f7f7f7;
}
#under-page main article section article table.contact-table td p small {
    color: #7d7d7d;
    display: block;
    margin: 1.5vh 0 0 0;
}
#under-page main article section article table.contact-table td .flex {
    display: flex;
    justify-content: space-between;
}
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    .flex.two
    input[type="text"] {
    width: 49%;
}
#under-page main article section article table.contact-table td .flex.three {
    align-items: center;
}
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    .flex.three.bottom {
    align-items: flex-end;
}
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    .flex.three
    input[type="text"],
#under-page
    main
    article
    section
    article
    table.contact-table
    td
    .flex.three
    select {
    width: 30%;
}
#under-page main article section article table tr th,
#under-page main article section article table tr td {
    border-top: 1px solid #ebebeb;
    border-bottom: 1px solid #ebebeb;
    padding: 5vh 20px;
}
@media screen and (max-width: 736px) {
    #under-page main article section article table tr th,
    #under-page main article section article table tr td {
        display: block;
        padding: 5vh 0;
    }
}
#under-page main article section article table tr th {
    font-weight: bold;
    letter-spacing: 0.05em;
    width: 200px;
}
@media screen and (max-width: 736px) {
    #under-page main article section article table tr th {
        width: auto;
        border-bottom: none !important;
        border-top: none !important;
        padding: 1vh 0 0 0;
        font-size: 13px;
    }
}
@media screen and (max-width: 736px) {
    #under-page main article section article table tr td {
        border-top: none !important;
        padding: 1vh 0 2vh 0;
        font-size: 14px;
    }
}
#under-page main article section article table tr td iframe {
    width: 100%;
    height: 350px;
    margin: 2.5vh 0 0 0;
}
#under-page main article section article ul.history {
    position: relative;
}
#under-page main article section article ul.history:before {
    content: "";
    width: 1px;
    height: calc(100% - 14px);
    background: #bababa;
    position: absolute;
    left: 7px;
    top: 7px;
}
#under-page main article section article ul.history li:not(:last-child) {
    margin-bottom: 2.5vh;
}
#under-page main article section article ul.history li dl {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
@media screen and (max-width: 736px) {
    #under-page main article section article ul.history li dl {
        display: block;
    }
}
#under-page main article section article ul.history li dl dt {
    width: 15%;
    font-size: 13px;
    font-weight: bold;
    text-align: right;
}
@media screen and (max-width: 736px) {
    #under-page main article section article ul.history li dl dt {
        width: 40%;
    }
}
#under-page main article section article ul.history li dl dt em {
    display: inline-block;
    width: 30%;
    font-weight: bold;
    text-align: right;
}
#under-page main article section article ul.history li dl dt span {
    font-size: 16px;
    font-family: "Outfit", sans-serif;
}
#under-page main article section article ul.history li dl dt:before {
    content: "●";
    display: inline-block;
    margin: 0 20px 0 0;
    font-size: 120%;
    position: absolute;
    left: 0;
}
#under-page main article section article ul.history li dl dd {
    width: 80%;
}
@media screen and (max-width: 736px) {
    #under-page main article section article ul.history li dl dd {
        width: auto;
        margin-left: 10%;
    }
}
#under-page main article section article.flex {
    display: flex;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.flex {
        display: block;
    }
}
#under-page main article section article.flex .ttl {
    width: 48%;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.flex .ttl {
        width: auto;
    }
}
#under-page main article section article.flex .txt {
    width: 48%;
}
@media screen and (max-width: 736px) {
    #under-page main article section article.flex .txt {
        width: auto;
    }
}
#under-page main article section h3.title {
    font-size: 40px;
    font-family: "Outfit", sans-serif;
    font-weight: bold;
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 0 5vh 0;
}
@media screen and (max-width: 736px) {
    #under-page main article section h3.title {
        text-align: left;
        font-size: 30px;
        margin: 0 0 5vh 0;
    }
}
#under-page main article section h3.title.sp-m {
    margin: 0 20px 5vh 20px;
}
#under-page main article section h3.title.left {
    text-align: left;
}
#under-page main article section h3.title span {
    display: block;
    font-size: 16px;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0.025em;
    margin: 0 0 1vh 0;
}
@media screen and (max-width: 736px) {
    #under-page main article section h3.title span {
        font-size: 14px;
    }
}
p.btn2 {
    text-align: center;
    margin: 0 0 5vh 0;
}
p.btn2 a {
    background: #424c56;
    color: #fff;
    padding: 25px 100px;
    border-radius: 50px;
    font-size: 18px;
    box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 736px) {
    p.btn2 a {
        font-size: 16px;
    }
}
.privacy-wrap h2 {
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 30px;
    font-size: 110%;
}
@media screen and (max-width: 736px) {
    .privacy-wrap h2 {
        font-size: 15px;
    }
}
.privacy-wrap h3 {
    font-weight: bold;
}
@media screen and (max-width: 736px) {
    .privacy-wrap h3 {
        font-size: 14px;
    }
}
.privacy-wrap dl {
    margin-bottom: 20px;
}
.privacy-wrap dl dt {
    font-weight: bold;
}
@media screen and (max-width: 736px) {
    .privacy-wrap dl dt {
        font-size: 14px;
    }
}
@media screen and (max-width: 736px) {
    .privacy-wrap dl dd {
        font-size: 14px;
    }
}
.privacy-wrap p {
    margin-bottom: 20px;
    line-height: 1.7;
}
.privacy-wrap p.r-t {
    text-align: right;
}
.privacy-wrap p.r-t:first-child {
    margin-bottom: 0;
}
#under-page main article #news .pagination {
    align-items: center;
    display: flex;
    gap: 25px;
    justify-content: center;
    margin-top: 40px;
}
#under-page main article #news .pagination .page-numbers.current {
    background: #424c56;
    border-radius: 50%;
    color: #fff;
    height: 25px;
    line-height: 25px;
    text-align: center;
    width: 25px;
}
#under-page main article #news .pagination .page-numbers {
    margin: 0;
}
#under-page main article #news .pagination .next.page-numbers,
#under-page main article #news .pagination .prev.page-numbers {
    color: #424c56;
    transform: scale(0.7, 1);
}
#under-page main article #news .pagination .page-numbers.current,
#under-page main article #news .pagination .page-numbers,
#under-page main article #news .pagination .next.page-numbers,
#under-page main article #news .pagination .prev.page-numbers {
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
}
