﻿@font-face {
    font-family: "Hiragino Kaku Gothic ProN";
    src: url(../font/Hiragino-ProN-W6.woff2) format("woff2");
    font-weight: 600
}

@font-face {
    font-family: "Hiragino Kaku Gothic ProN";
    src: url(../font/Hiragino-ProN-W5.woff2) format("woff2");
    font-weight: 500
}

@font-face {
    font-family: "Hiragino Kaku Gothic ProN";
    src: url(../font/Hiragino-ProN-W4.woff2) format("woff2")
}

@font-face {
    font-family: "Hiragino Kaku Gothic ProN";
    src: url(../font/Hiragino-ProN-W3.woff2) format("woff2");
    font-weight: 300
}

@font-face {
    font-family: "Hiragino Kaku Gothic ProN";
    src: url(../font/Hiragino-ProN-W2.otf);
    font-weight: 200
}

@font-face {
    font-family: "Hiragino Kaku Gothic ProN";
    src: url(../font/Hiragino-ProN-W1.woff2) format("woff2");
    font-weight: 100
}

a {
    color: #121212
}

.btn-base {
    padding: .6rem 7.5rem;
    background-color: #3E7472;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.4;
    font-size: 2.4rem;
    color: #fff;
    border-radius: 2rem;
    transition: all .2s;
    display: inline-flex;
    justify-content: center;
    border: 1px solid rgba(0, 0, 0, 0)
}

.btn-base.btn-green{
    background-color: #00893f;
}

.btn-base.btn-white {
    background-color: #fff;
    color: #3E7472;
    border: 1px solid #3E7472
}

.btn-base.btn-white:hover {
    color: #3E7472
}

.btn-base.btn-alt {
    min-width: 36.9rem;
    padding: 1.5rem 3rem;
    border-radius: 2.2rem;
    text-align: center;
    display: inline-block
}

.btn-base.btn-outline {
    display: inline-block;
    padding: 1.1rem 2rem;
    text-align: center;
    background-color: transparent;
    border: #121212 1px solid;
    color: #121212;
    min-width: 21.6rem;
    min-height: 5.3rem;
    border-radius: 3rem;
    line-height: 1.2;
}

.btn-base.btn-outline:hover {
    background-color: #3E7472;
    border-color: #3E7472;
    color: #fff
}

.btn-base:hover {
    color: #fff
}

.btn-base.btn-large {
    margin: 0 auto 0 auto;
    width: max-content;
    min-height: 6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 37rem;
    border-radius: 2rem
}

.menu-opened {
    overflow: hidden
}

.page-width {
    margin: 0 auto;
    width: 100%;
    max-width: 144rem
}

.section-title-line {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    position: relative;
    display: flex;
    align-items: flex-end;
    line-height: 1.4;
    margin-bottom: 5rem;
}

.section-title-line span {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    padding: 0 2rem;
    color: #606060;
    position: relative
}

.section-title-line .line,
.section-title-line .underline {
    flex: 1;
    background-color: #707070
}

.ratio {
    width: 100%;
    position: relative;
    height: 0;
    padding-bottom: 56%;
    display: block;
}

.ratio.ratio-52 {
    padding-bottom: 52%
}

.ratio.ratio-53 {
    padding-bottom: 53.3%
}

.ratio img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0
}

.error-label {
    color: red
}

.form-message {
    text-align: center
}

.form-message .alert-success {
    color: #3E7472;
    font-size: 2.4rem;
    border: 1px solid #3E7472;
    margin: 0 auto;
    display: inline-flex;
    padding: 0 3rem
}

input,
select {
    outline: none
}

input {
    border: 1px solid #707070;
    color: #222;
    border-radius: 0
}

@media screen and (max-width: 1023px) {
    .section-title-line {
        flex-wrap: wrap
    }
    .section-title-line .line,
    .section-title-line .underline {
        flex: unset;
        margin-top: 1.5rem
    }
}

@media screen and (max-width: 750px) {
    .section-title-line {
        font-size: 4rem
    }
    .section-title-line span {
        font-size: 2.4rem
    }
    .btn-base.df {
        font-size: 1.6rem
    }
}

@media screen and (max-width: 1023px) {
    .pc-only {
        display: none !important
    }
}

@media screen and (min-width: 1024px) {
    .sp-only {
        display: none !important
    }
    .pc\:d-none {
        display: none
    }
}

html {
    scroll-behavior: smooth;
    letter-spacing: .05rem;
    color: #121212;
    font-size: 8px;
}

* {
    margin: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    box-sizing: border-box
}

*::before,
*::after {
    box-sizing: border-box
}

body {
    font-family: "Roboto", "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
    font-size: 2rem;
    line-height: 1.8;
    letter-spacing: .05em;
    font-weight: 400;
    color: #121212;
}

button,
input,
select,
textarea {
    font-family: "Roboto", "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif
}

h1 {
    font-size: 4.8rem;
    line-height: 1.8em;
    letter-spacing: .05em;
    font-weight: 600
}

h2 {
    font-size: 4rem;
    line-height: 1.8em;
    letter-spacing: .05em;
    font-weight: 600
}

h3 {
    font-size: 2.4rem;
    line-height: 1.8em;
    letter-spacing: .05em;
    font-weight: 600
}

a {
    text-decoration: none;
    transition: all 0.2s;
}

a:hover {
    color: #00a2bf;
    text-decoration: none
}

img {
    width: auto;
    height: auto;
    max-width: 100%;
    object-fit: cover
}

.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    max-width: 1170px;
    padding-left: 2rem;
    padding-right: 2rem
}

.row {
    size: inherit;
    display: flex;
    flex-wrap: wrap
}

.row::after {
    content: "";
    clear: both;
    display: table
}

.centre {
    margin: auto;
    text-align: center
}

.col-33 {
    width: 33.33%
}

.col-50 {
    width: 50%
}

.col-75 {
    width: 75%
}

.col-25 {
    width: 25%
}

.line,
.underline {
    display: block;
    width: 100%;
    height: 1px;
    background-color: #CCC;
    vertical-align: baseline
}

.underline {
    display: block
}

.underline.underline-left {
    position: relative;
    height: 2px;
    background-color: #3E7472;
    width: 100%;
    margin-top: -0.6rem;
    margin-left: 0
}

@media(max-width: 1023px){
    .underline.underline-left{
        height: 1px;
    }
}

.underline.underline-right-pad {
    height: 2px;
    background-color: #3E7472
}

.title-line>h1,
.title-line>h2,
.title-line>h3,
.title-line>h4 {
    display: inline
}

.grey-bg {
    background-color: #e8e8e8
}

.text-white {
    color: #fff
}

.text-green {
    color: #3E7472
}

.flex-container-row {
    display: flex;
    flex-direction: row
}

.flex-container-row-reverse {
    display: flex;
    flex-direction: row-reverse
}

.text-w6 {
    font-weight: 600
}

.text-w5 {
    font-weight: 500
}

.text-w4 {
    font-weight: 400
}

.text-w3 {
    font-weight: 300
}

.text-w2 {
    font-weight: 200
}

.text-w1 {
    font-weight: 100
}

.font-16 {
    font-size: 1.6rem
}

.font-24 {
    font-size: 2.4rem
}

.font-40 {
    font-size: 4rem
}

.font-48 {
    font-size: 4.8rem
}

.br-sp {
    display: none
}

ul.breadcrumb {
    list-style: none;
    display: flex;
    align-items: flex-start;
    padding: 0.8rem 0;
    font-weight: 400;
    flex-wrap: wrap
}

ul.breadcrumb .bc_home {
    width: 2.5rem;
    height: 2.5rem;
    display: inline;
    position: relative;
    top: -0.2rem;
}

ul.breadcrumb li {
    display: inline-flex
}

ul.breadcrumb li a,
ul.breadcrumb li span {
    display: inline-flex;
    align-items: center;
    column-gap: 0.5rem;
    transition: all 0.2s;
}

ul.breadcrumb li+li:before {
    padding: 0 .7rem;
    color: #000;
    content: ">";
    position: relative
}

.select-menu {
    min-width: 19.7rem;
    min-height: 3.7rem;
    border-radius: .8rem
}

.select-menu option {
    font-size: 1.6rem;
    font-weight: 300
}

.timestamp {
    font-size: 1.6rem;
    margin-right: 1rem
}

.category {
    border: 1px solid #707070;
    border-radius: .8rem;
    padding: .05em 5.6rem;
    font-weight: 600
}

.category:hover {
    border: 1px solid #222
}

.img-wrapper {
    width: auto;
    height: auto;
    position: relative;
    overflow: hidden
}

.new-tag {
    position: absolute;
    background-color: #3E7472;
    width: 10.3rem;
    height: 3.1rem;
    text-align: center
}

.new-tag::after {
    content: "new";
    text-transform: uppercase;
    font-weight: 400;
    font-size: 1.6rem;
    color: #fff
}

.pagination {
    margin-top: 1.4rem;
    display: flex;
    justify-content: center;
    gap: 2.3rem;
    flex-wrap: wrap;
}

.btn-pagination {
    width: 5.4rem;
    height: 5.4rem;
    background-color: #3E7472;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 2.5rem;
    line-height: 1;
    border-radius: 50%;
    color: #fff;
    opacity: 35%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s;
}

.btn-pagination.prev{
    transform: rotateY(180deg);
}

.btn-pagination.active {
    opacity: 100%
}

a.btn-pagination:hover{
    opacity: 0.7;
    color: #FFF;
}

.float-right {
    float: right
}

.float-left {
    float: left
}

.hide-sp {
    display: block
}

.hide-pc {
    display: none
}

@media screen and (min-width: 2000px) {
    html {
        /* font-size: 10px */
    }
}

@media screen and (max-width: 1023px) {
    html {
        font-size: 1.333333vw
    }
    .container {
        padding-right: 2.4rem;
        padding-left: 2.4rem;
    }
    [class*=col-] {
        width: 100%
    }
    .title-line .line,
    .title-line .underline,
    .br-sp {
        display: block
    }
    .col-50-sp {
        width: 50%
    }
    .hide-sp {
        display: none
    }
    .hide-pc {
        display: block
    }
    ul.breadcrumb {
        padding: 1rem 0;
    }
    .container.sp-full {
        padding: 0 !important
    }
}

@media print {
    .no-print {
        display: none !important
    }
}

.banner-img {
    position: relative;
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/news/1a97c89990b700556e06701efbbe0f17c5836127.png);
    width: 100%;
    height: 42.3rem;
    background-size: contain;
    margin-top: -0.3rem
}

.banner-img .banner-text {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: auto;
    transform: translate(-50%, -50%)
}

.banner-img .banner-text>h1 {
    line-height: 1em;
    padding-top: .5rem
}

.banner-img .banner-text>h3 {
    text-align: center;
    padding-top: .5rem
}

@media screen and (max-width: 1023px) {
    .banner-img {
        background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/news/sp_1a97c89990b700556e06701efbbe0f17c5836127.png);
        height: 30rem;
        margin-top: -0.4rem
    }
}

.headline-img {
    width: 100%;
    height: 26.2rem;
    position: relative;
    overflow: hidden;
    border-radius: 2rem;
    margin-top: 6.5rem;
    margin-bottom: 5rem;
    overflow: hidden
}

.headline-img::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(0, 0, 0, .42);
    z-index: 1
}

.headline-img .headline-text {
    color: #fff;
    position: relative;
    padding: 5rem 6rem;
    z-index: 1
}

.headline-img .headline-text h2 {
    margin-bottom: 1rem
}

.headline-img img {
    width: 100%;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .headline-img {
        margin-top: 4.8rem;
        margin-bottom: 1.6rem
    }
    .headline-img .headline-text h2 {
        margin-left: 9.5rem;
        margin-top: 2.5rem
    }
}

.activity {
    margin-bottom: 10rem;
    padding-top: 6rem;
}

.activity .title-line {
    margin-bottom: 6rem
}

/*.activity .activity-content {*/
/*    margin-bottom: 3.3rem*/
/*}*/

.activity .activity-content .news-grid {
    margin-top: 0
}

@media screen and (max-width: 1023px) {
    .activity {
        margin-bottom: 8rem
    }
    .activity .title-line {
        margin-top: 1rem;
        margin-bottom: 2rem
    }
    .activity .title-line>h2 {
        padding-left: .5rem
    }
    /*.activity .activity-content {*/
    /*    margin-bottom: 2rem*/
    /*}*/
    .activity .activity-content .news-grid {
        grid-template-columns: 1fr;
    }
    .activity .activity-content .news-grid>.news-item:first-child {
        width: 100%;
        grid-column: 1/-1
    }
    .activity .activity-content .news-grid>.news-item:first-child .img-wrapper {
        padding-bottom: 40%
    }
}

.publications {
    padding-bottom: 7rem;
    padding-top: 7rem;
}

.publications .container {
    display: flex;
    flex-direction: row
}

.publications .container .line,
.publications .container .underline {
    display: none
}

.publications .pub-header {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding-top: 2.6rem;
    padding-left: .1rem;
    margin-right: 4rem
}

.publications .pub-header>h2 {
    white-space: nowrap
}

.publications .pub-header h2 + span{
    font-size: 2.4rem;
    font-weight: 600;
    color: #606060;
}

.publications .pub-header .btn-outline {
    margin-top: 6.5rem;
    max-width: 21.6rem;
}

.publications .pub-item-wrap {
    flex: 2
}

.publications .pub-show-sp {
    display: none
}

@media screen and (max-width: 1023px) {
    .publications .container {
        display: flex;
        flex-direction: column
    }
    .publications .container .line,
    .publications .container .underline {
        display: block
    }
    .publications .pub-header {
        padding-top: 0;
        padding-left: 0rem;
        flex-direction: row;
        margin-right: 0;
        align-items: flex-end;
        column-gap: 1rem;
    }
    .publications .pub-header>h3 {
        margin-top: 2.2rem;
        padding-left: 1.4rem
    }
    .publications .pub-header .btn-outline {
        margin-top: .6rem;
        margin-bottom: .6rem;
        margin-left: 2rem;
        position: absolute;
        right: 2.4rem;
    }
    .publications .pub-show-sp {
        display: block
    }
}

.schedule-forum .schedule-banner {
    width: 89.68%;
    height: 20.8rem;
    background: linear-gradient(rgba(0, 0, 0, 0.32), rgba(0, 0, 0, 0.32)), url(../images/top/DSC03207_banner.png);
    background-position: 10% 82.5%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 1.5rem;
    margin: .9rem 5.15% 5.6rem 5.15%
}

.schedule-forum .schedule-banner .banner-title {
    font-weight: 600;
    padding: 6.8rem 14rem
}

.schedule-forum .schedule-banner .banner-title .title-line {
    color: #fff
}
.schedule-forum .schedule-banner .banner-title .title-line .line,
.schedule-forum .schedule-banner .banner-title .title-line .underline {
    background-color: #fff
}

@media screen and (max-width: 1023px) {
    .schedule-forum {
        margin-bottom: .1rem
    }
    .schedule-forum .schedule-banner {
        width: 100%;
        height: 24.1rem;
        margin: 0;
        margin-bottom: 4.2rem;
        border-radius: 0;
    }
    .schedule-forum .schedule-banner .banner-title {
        padding: 4.6rem 2.5rem
    }
    .schedule-forum .schedule-banner .banner-title .title-line .line,
    .schedule-forum .schedule-banner .banner-title .title-line .underline {
        margin-top: 1rem
    }
    .schedule-forum .schedule-event {
        margin-bottom: 1.8rem
    }
}

.news-grid {
    display: inline-grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 3.8rem;
    row-gap: 3.95rem;
    margin-top: 5.3rem;
    width: 100%
}

@media screen and (max-width: 1023px) {
    .news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 2.4rem;
        row-gap: 2.4rem;
        margin-top: 3.87rem
    }
}

.history .history-content {
    position: relative;
    display: flex;
    margin-top: 5rem;
    padding-bottom: 7.8rem
}

.history .history-content::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    margin-left: 12%;
    background-color: #707070
}

.history .event {
    display: flex;
    flex-direction: column;
    padding-top: 6.3rem;
    margin-left: 4rem;
    width: 100%
}

.history .event .event-year {
    display: flex;
    flex-direction: row;
    justify-items: normal;
    margin-bottom: 3.5rem
}

.history .event .event-year:last-child{
    margin-bottom: 0;
}

.history .event .event-year .date-year {
    color: #3E7472;
    line-height: 1;
}

.history .event .event-year .event-list {
    display: flex;
    flex-direction: column;
    position: relative;
}

.history .event .event-year .event-month {
    display: flex;
    flex-direction: row;
    padding-left: 5.9rem
}

.history .event .event-year .event-month:not(:first-child) {
    margin-top: 1.2rem
}

.history .event .event-year .event-month .bullet {
    position: absolute;
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 50%;
    background-color: #3E7472;
    top: 2.8rem;
    left: 2.4rem;
    transform: translate(25%, -100%);
    z-index: 1
}

.history .event .event-year .event-month .date-month {
    direction: rtl;
    color: #3E7472;
    float: right;
    width: 7rem;
    flex: none
}

.history .event .event-item {
    position: relative;
    display: flex;
    flex-direction: column;
}

.history .event .event-item .event-title {
    display: flex;
    position: relative;
    color: #003a3e;
    margin-left: 1.9rem
}

.history .event .event-item .event-title:not(:last-child) {
    margin-bottom: 2.7rem
}

.history .event .event-item .event-title span.text {
    position: relative;
    text-decoration: underline;
    text-decoration-color: #003a3e;
    text-decoration-thickness: 1px;
    text-decoration-style: solid;
    text-underline-offset: .5rem;
}

.history .event .event-item .event-title a {
    color: #003a3e;
    display: flex;
}

@media screen and (max-width: 1023px) {
    .history .history-content {
        margin-top: .5rem
    }
    .history .history-content::after {
        margin-left: 10.5%
    }
    .history .history-content .event .event-year .date-year {
        font-size: 2.4rem;
        line-height: 1.8em;
        letter-spacing: .05em;
        padding-left: .5rem;
    }
    .history .history-content .event .event-year .event-month {
        padding-left: 1rem
    }
    .history .history-content .event .event-year .event-month .date-month {
        width: 7rem
    }
    .history .history-content .event .event-year .event-month .bullet {
        top: 2.5rem;
        left: 0;
    }
}

.about-us-quicklink {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1.5rem;
    margin-top: 8rem;
    margin-bottom: 8rem
}

@media screen and (max-width: 1023px) {
    .about-us-quicklink {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-top: 8rem;
        margin-bottom: 6rem
    }
}

.quicklink-btn {
    height: 10.3rem
}

.quicklink-btn .img-wrapper {
    width: 100%;
    height: 100%;
    border-radius: 2.9rem;
    overflow: hidden
}

.quicklink-btn .img-wrapper img {
    height: 100%;
    width: 100%
}

.quicklink-btn .img-wrapper .dark-teal-overlay {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    flex-basis: fit-content
}

.quicklink-btn .img-wrapper .dark-teal-overlay h3 {
    color: #fff;
    text-align: center;
    vertical-align: middle
}

.quicklink-btn .img-wrapper .dark-teal-overlay span {
    display: none
}

@media screen and (max-width: 1023px) {
    .quicklink-btn {
        height: 13rem
    }
    .quicklink-btn .img-wrapper {
        width: 100%;
        height: 100%;
        border-radius: 2rem
    }
    .quicklink-btn .img-wrapper .dark-teal-overlay {
        padding: 1.5rem 1.5rem
    }
    .quicklink-btn .img-wrapper .dark-teal-overlay h3 {
        font-size: 3rem;
        display: flex;
        align-items: center;
        justify-items: center;
        height: 70%;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        padding: 0 1.5rem;
        letter-spacing: 0
    }
    .quicklink-btn .img-wrapper .dark-teal-overlay span {
        font-weight: 600;
        font-size: 2rem;
        color: #fff;
        letter-spacing: 0;
        display: block;
        line-height: 2.7rem;
        position: absolute;
        bottom: 1rem;
        display: none;
    }
}

.dark-teal-overlay {
    position: absolute;
    width: 100%;
    min-height: 100%;
    top: 0;
    height: 0;
    background-color: rgba(0, 58, 62, .8)
}

.about-us-filter-btn,
.section-label {
    display: inline-block;
    min-width: 24rem;
    color: #fff;
    background-color: #3E7472;
    text-align: center;
    align-content: center;
    font-weight: 600;
    font-size: 2rem;
    line-height: 3.6rem;
    letter-spacing: .05em;
    padding: .5rem 2.5rem;
    cursor: pointer
}

.about-us-filter-btn.dropdown-btn,
.dropdown-btn.section-label {
    text-align: center;
    padding-left: 1.8rem;
    padding-right: 3.8rem;
    color: #3E7472;
    background-color: #fff;
    border: 1px solid #707070;
    background: url(../images/arrow-down.svg) no-repeat right;
    appearance: none;
    background-position-x: calc(100% - 1rem);
    background-size: 2rem;
}

.about-us-filter-btn+.about-us-filter-btn,
.section-label+.about-us-filter-btn,
.about-us-filter-btn+.section-label,
.section-label+.section-label {
    margin-left: 3.4rem
}

.section-label {
    min-width: 33rem;
    width: auto;
    font-size: 4rem;
    letter-spacing: .05em;
    padding: 1rem 4rem;
    display: inline-block;
    border: 0;
    cursor: unset
}

@media screen and (max-width: 1023px) {
    .section-label {
        font-size: 3.2rem;
        letter-spacing: .05em;
        min-width: 23.5rem;
        height: 4.9rem
    }
}

@media screen and (max-width: 1023px) {
    .about-us-self-evaluation-page .about-us-filter-btn.dropdown-btn,
    .about-us-self-evaluation-page .dropdown-btn.section-label {
        font-size: 2.4rem
    }
    .about-us-self-evaluation-page .about-us-filter-btn.dropdown-btn option,
    .about-us-self-evaluation-page .dropdown-btn.section-label option {
        font-size: 2.4rem
    }
}

.main-header {
    position: relative;
    z-index: 99
}

.main-header .logo {
    line-height: 0;
    display: flex;
    align-items: center
}

.main-header .site-logo {
    width: auto;
    height: 7.2rem
}

.main-header .header-wrap {
    display: flex;
    justify-content: space-between;
    padding: 2rem 6rem;
}

.main-header .header-wrap .header-left{
    display: flex;
    align-items: center;
    column-gap: 3rem;
}

.header-wrap .lp-page{
    text-align: center;
}

.header-wrap .lp-page .label{
    font-size: 1.6rem;
    margin-bottom: .8rem;
    letter-spacing: 0;
}

.header-wrap .lp-page .btn-lp{
    padding: 0.35rem 2rem;
    min-width: 25.8rem;
    border-radius: 5rem;
    font-size: 2.4rem;
    color: #3E7472;
    font-weight: bold;
    line-height: 1;
    border: 1px solid #3E7472;
}

.main-header .header-wrap .logo {
    padding: .3rem 0 1rem
}

.main-header .header-right {
    display: flex;
    flex-direction: column;
    gap: 2rem
}

.main-header .header-right .header-right-login {
    display: flex;
    justify-content: flex-end
}

.main-header .header-right .header-right-login a {
    width: 26.5rem;
    height: 4.2rem;
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .07em;
    line-height: 3rem;
    border-radius: 2.1rem
}

.main-header .header-right .header-right-login a:first-child {
    margin-right: 1.6rem;
    padding: .52rem 0;
    background-color: #04a710;
    color: #fff
}

.main-header .header-right .header-right-login a:last-child {
    padding: .52rem 0;
    color: #04a710;
    border: 1px solid #04a710
}

.main-header .header-right ul {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    row-gap: 1rem;
    padding-left: 0;
    justify-content: flex-end;
}

.main-header .header-right ul li {
    position: relative
}

.main-header .header-right ul li::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 2rem;
    background-color: #ccc;
    right: 0;
    top: 50%;
    transform: translateY(-50%)
}

.main-header .header-right ul a {
    padding: 0 3.4rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    letter-spacing: normal;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.45
}

.main-header .header-right ul a span {
    display: flex;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1.3125;
}

.main-header .header-right .btn-account {
    align-self: flex-end;
    min-width: 32rem;
    min-height: 4.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #3E7472;
    color: #fff;
    border-radius: 2.1rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .07em;
    line-height: 1.5
}

.main-header .icon-wrap {
    border-radius: 50%;
    background-color: #fff;
    width: 6.4rem;
    height: 6.4rem
}

.main-header .box-content {
    width: 52.3rem;
    height: 21.4rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 4.4rem;
    background-size: cover;
    background-position: center;
    padding: 3.2rem 4.6rem;
    position: relative;
    overflow: hidden;
}
.main-header .box-content:before{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0, .4);
    left: 0;
    top: 0;
    z-index: 1
}

.main-header .box-content > *{
    position: relative;
    z-index: 1;
}

.main-header .box-content .text-wrap {
    color: #fff;
    width: max-content;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.8333333333;
    max-width: 40rem;
    flex: 1
}

.main-header .box-content .text-wrap .title {
    overflow: hidden;
    max-height: 8rem;
    -webkit-line-clamp: 2;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal
}

.main-header .box-content .text-wrap .label {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1.75;
    border-bottom: 1px solid #fff;
    margin-bottom: .6rem
}

.main-header .dropdown-content-right .icon-wrap {
    border: 1px solid #3E7472
}

.main-header .header-bottom-wrap {
    width: 100%;
    background-color: #3E7472;
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 10rem;
    position: relative;
    padding-top: 0.2rem;
}

.main-header .header-bottom-wrap .header-child-menu {
    display: flex;
    list-style: none;
    column-gap: 2rem;
    flex-wrap: wrap;
    padding: 0;
    line-height: 1
}

.main-header .header-bottom-wrap .header-child-menu .dropdown-item {
    transition: all .3s ease-in-out;
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: .05em;
    line-height: 1.5;
    position: relative;
    max-width: 30rem;
    overflow: hidden;
    display: inline-flex;
    text-align: center;
    padding: 0.8rem 2.5rem 1rem;
}

.main-header .header-bottom-wrap .header-child-menu .dropdown-item::before {
    content: "";
    position: absolute;
    width: 98%;
    height: .5rem;
    background-color: #3E7472;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.main-header .header-bottom-wrap .header-child-menu li {
    transition: all .3s ease-in-out;
    display: flex;
    align-items: center;
}

.main-header .header-bottom-wrap .header-child-menu li:hover .dropdown-item {
    color: #3E7472;
    background-color: #fff;
}

.main-header .header-bottom-wrap .header-child-menu li:hover .dropdown-content {
    max-height: max-content;
    transition: max-height .3s ease-in
}

.main-header .header-bottom-wrap .dropdown-content-wrap {
    max-width: 1240px;
    margin: 0 auto;
    display: flex;
    gap: 11.7rem;
    padding: 2.8rem 0 4.5rem 0
}

.main-header .header-bottom-wrap .dropdown-content {
    overflow: hidden;
    transition: max-height .15s ease-out;
    overflow: hidden;
    max-height: 0;
    position: absolute;
    background-color: #e8e8e8;
    width: 100%;
    left: 0;
    right: 0;
    z-index: 99;
    top: 100%
}

.main-header .header-bottom-wrap .btn-list-post {
    min-height: 8.8rem;
    background-color: #fff;
    color: #3E7472;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 1rem;
    padding: 0 2.5rem 0 5.2rem;
    gap: 5rem;
    margin-bottom: 1rem
}

.main-header .header-bottom-wrap .btn-list-post .text {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    max-width: 42rem;
    max-height: 8rem;
    -webkit-line-clamp: 2;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal
}

.main-header .header-bottom-wrap .btn-list-post svg {
    max-width: 6.4rem
}

.main-header .header-bottom-wrap .list-link-title {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1.75;
    margin-bottom: .6rem
}

.main-header .header-bottom-wrap .list-link-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 4px
}

.main-header .header-bottom-wrap .list-link-wrap a {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #707070;
    background-color: #fff;
    width: calc((100% - 8px)/3);
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1.375;
    padding: .7rem .4rem;
    text-align: center;
    border-radius: 5px
}

.main-header .header-bottom-wrap #btn-language {
    width: 2.7rem;
    height: 2.7rem;
    border: 1px solid #fff;
    border-radius: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #3E7472;
    text-align: center;
    color: #fff;
    cursor: pointer;
    font-size: 1.1rem;
    position: relative
}

.main-header .header-bottom-wrap #btn-language .languages {
    position: absolute;
    top: 3.2rem;
    box-shadow: 0 4px 16px rgba(0, 0, 0, .08);
    display: flex;
    justify-content: center;
    flex-direction: column;
    left: -67px;
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease-in-out
}

.main-header .header-bottom-wrap #btn-language .languages a {
    color: #fff;
    line-height: normal;
    padding: 11px 40px;
    white-space: nowrap;
    background: #3E7472
}

.main-header .header-bottom-wrap #btn-language .languages a:hover {
    background-color: rgba(0, 138, 63, .8)
}

.main-header .header-bottom-wrap #btn-language:hover .languages {
    max-height: 200px
}

.main-header .header-bottom-wrap .header-bottom-right {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 40px;
    position: absolute;
    right: 6rem;
}

.main-header .header-bottom-wrap .header-search {
    display: flex;
    align-items: center;
    padding: 0
}

.main-header .header-bottom-wrap .header-search .search-btn {
    background-color: #3E7472;
    border: none;
    padding: 0;
    cursor: pointer;
    width: 2.7rem;
    display: flex;
    align-items: center
}

.main-header #search-form-active {
    display: none
}

.main-header #search-form-active:checked+.search-form {
    height: 100vh
}

.main-header .search-form {
    transition: all .3s ease;
    position: absolute;
    width: 100%;
    height: 0;
    background-color: #707070;
    max-width: 100%;
    overflow: hidden
}

.main-header .search-form form {
    margin-top: 12rem
}

.main-header .search-form .form-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .7rem
}

.main-header .search-form .form-wrap input {
    min-width: 52.8rem;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    border-radius: 1rem;
    border: none;
    padding: 0.5rem 2rem;
}

.main-header .search-form .form-wrap input:focus {
    outline: none
}

.main-header .search-form .form-wrap button[type=submit] {
    background-color: #3E7472;
    color: #fff;
    border: none;
    border-radius: 1rem;
    padding: 0.7rem 2rem;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2;
    cursor: pointer;
    min-width: 10.4rem
}

.main-header .search-form .form-title {
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    color: #fff;
    margin-bottom: 3.4rem
}

.menu-icon,
.menu-hamburger {
    display: none
}

@media screen and (max-width: 1023px) {
    .main-header .menu-dropdow-top .box-content {
        width: 100%;
        border-radius: 1rem;
        min-height: 12rem;
        height: auto
    }
    .main-header .menu-dropdow-top .box-content .title {
        font-size: 2.4rem
    }
    .main-header .header-right {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 3rem
    }
    .main-header .header-right ul {
        display: none
    }
    .main-header .header-right .btn-account {
        padding: 1rem 3rem;
        height: 5.5rem;
        font-size: 2.4rem;
        letter-spacing: .07em;
        line-height: 1.5;
        min-width: unset
    }
    .main-header .header-right .btn-account.logout{
        background: transparent;
        border: 1px solid #3E7472;
        color: #3E7472;
    }
    .main-header .header-right .header-right-login a {
        width: 19rem;
        height: 5.4rem;
        line-height: 4rem
    }
    .main-header .site-logo {
        max-height: 9.6rem;
        max-width: 25rem;
        min-width: unset
    }
    .main-header .header-bottom-wrap {
        display: none
    }
    .main-header .header-wrap {
        padding: 1rem 2.4rem;
        align-items: center;
        min-height: 11rem
    }
    .main-header .menu-icon {
        width: 6.2rem;
        height: 5rem;
        transition: .5s ease-in-out;
        cursor: pointer;
        position: relative;
        display: block
    }
    .main-header .menu-icon span {
        display: block;
        position: absolute;
        height: .4rem;
        width: 100%;
        background: #000;
        opacity: 1;
        transform: rotate(0deg);
        transition: .25s ease-in-out
    }
    .main-header .menu-icon span:nth-child(1) {
        top: 0
    }
    .main-header .menu-icon span:nth-child(2),
    .main-header .menu-icon span:nth-child(3) {
        top: 2.4rem
    }
    .main-header .menu-icon span:nth-child(4) {
        top: 4.8rem
    }
    .main-header .menu-icon.open span:nth-child(1) {
        top: 1.8rem;
        width: 0%;
        left: 50%;
        display: none
    }
    .main-header .menu-icon.open span:nth-child(2) {
        transform: rotate(45deg)
    }
    .main-header .menu-icon.open span:nth-child(3) {
        transform: rotate(-45deg)
    }
    .main-header .menu-icon.open span:nth-child(4) {
        top: 18px;
        width: 0%;
        left: 50%;
        display: none
    }
    .main-header .menu-hamburger {
        height: calc(100svh - 11rem);
        position: fixed;
        top: 11rem;
        padding-top: 0;
        width: 100vw;
        left: 0;
        right: 0;
        z-index: 999;
        background-color: #fff;
        display: block;
        overflow-x: hidden;
        transform: translateX(100%);
        transition: all .3s
    }
    .main-header .menu-hamburger.menu-open {
        transform: translateX(0)
    }
    .main-header .menu-hamburger .menu-dropdow-title {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 2rem 4rem 2rem 4rem;
        font-weight: 400;
        font-size: 2.4rem;
        letter-spacing: .05em;
        color: #fff;
        line-height: normal;
        cursor: pointer
    }
    .main-header .menu-hamburger .menu-dropdow-title .text {
        flex: 1;
        padding-right: 2rem
    }
    .main-header .menu-hamburger .menu-dropdow-title .icon {
        font-weight: 600;
        letter-spacing: .05em;
        font-size: 2.4rem;
        color: #ecf0f1;
        width: 3rem;
        height: 3rem;
        border: 0;
        position: relative
    }
    .main-header .menu-hamburger .menu-dropdow-title .icon span {
        position: absolute;
        transition: 300ms;
        background: #fff
    }
    .main-header .menu-hamburger .menu-dropdow-title .icon span:first-child {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 1px;
        height: 2rem;
        padding: 0;
        margin: 0
    }
    .main-header .menu-hamburger .menu-dropdow-title .icon span:last-child {
        left: 50%;
        top: 50%;
        height: 1px;
        transform: translate(-50%, -50%);
        width: 2rem;
    }
    .main-header .menu-hamburger .menu-dropdow-title .icon.active span:first-child {
        transform: translate(-50%, -50%) rotate(90deg)
    }
    .main-header .menu-hamburger .menu-dropdow-item {
        padding: 0;
        border-bottom: 1px solid #fff;
        background-color: #3E7472
    }
    .main-header .menu-hamburger .menu-dropdow-top {
        margin-bottom: 2.5rem;
        display: block;
        margin-top: 2rem
    }
    .main-header .menu-hamburger .btn-list-post {
        min-height: 8.8rem;
        margin: 0 auto 1.5rem auto;
        background-color: #fff;
        color: #3E7472;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-radius: 10px;
        padding: 0 2.6rem;
        gap: 11rem
    }
    .main-header .menu-hamburger .btn-list-post svg {
        width: 6rem;
        height: 5rem
    }
    .main-header .menu-hamburger .menu-dropdow-bottom {
        margin: 0 auto 6.5rem auto
    }
    .main-header .menu-hamburger .menu-dropdow-bottom p {
        font-weight: 600;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 2.25;
        color: #fff;
        margin-bottom: .5rem
    }
    .main-header .menu-hamburger .list-link-wrap {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    .main-header .menu-hamburger .list-link-wrap a {
        display: flex;
        align-items: center;
        justify-content: center;
        border: 0;
        background-color: #fff;
        width: auto;
        border-radius: 1rem;
        padding: 1rem;
        text-align: center;
        font-weight: 400;
        font-size: 2rem;
        letter-spacing: .05em;
        line-height: 1.625
    }
    .main-header .menu-hamburger .menu-dropdow-content {
        width: 100%;
        display: none;
        padding-left: 4rem;
        padding-right: 4rem;
    }
    .main-menu-wrap {
        height: calc(100% - 9.7rem);
        overflow-y: auto
    }
    .menu-dropdown-wrap.menu-dropdown-white .menu-dropdow-item {
        background-color: #fff;
        border-bottom: 1px solid #000
    }
    .menu-dropdown-wrap.menu-dropdown-white .menu-dropdow-title {
        color: #121212
    }
    .menu-dropdown-wrap.menu-dropdown-white .menu-dropdow-title .icon span {
        background: #000
    }
    .menu-hamburger-bottom {
        display: flex;
        min-height: 9.7rem;
        width: 100%;
        position: absolute;
        bottom: 0;
        left: 0
    }
    .menu-hamburger-bottom a {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-weight: 600;
        font-size: 3.2rem;
        letter-spacing: .07em;
        line-height: 1.34375;
        background-color: #3E7472;
        padding: 2.4rem 0
    }
    .menu-hamburger-bottom a:first-child {
        flex: 1;
        border-right: 1px solid #fff
    }
    .menu-hamburger-bottom a:last-child {
        width: 36.539vw
    }
    .menu-hamburger-bottom a:last-child svg {
        width: 4.4rem;
        height: auto;
        margin-right: 2rem
    }
    .menu-hamburger-search {
        opacity: 0;
        visibility: hidden;
        position: absolute;
        bottom: unset;
        background-color: #707070;
        top: 0;
        width: 100%;
        height: calc(100% - 9.7rem);
        transition: all .2s
    }
    .menu-hamburger-search.active {
        opacity: 1;
        visibility: visible
    }
    .menu-hamburger-search form {
        margin-top: 120px
    }
    .menu-hamburger-search .menu-hamburger-bottom {
        display: flex;
        bottom: 0;
        position: absolute;
        width: 100%
    }
    .menu-hamburger-search .form-wrap {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        gap: 7px
    }
    .menu-hamburger-search .form-wrap input {
        text-align: center;
        min-width: 52.8rem;
        height: 6.7rem;
        font-weight: 400;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 2.25;
        color: #a8a8a8;
        border-radius: 1rem;
        border: none;
        padding: 0 2.5rem;
        margin-bottom: 5rem;
        font-size: 2.4rem
    }
    .menu-hamburger-search .form-wrap input:focus {
        outline: none
    }
    .menu-hamburger-search .form-wrap button[type=submit] {
        background-color: #3E7472;
        color: #fff;
        border: none;
        border-radius: 1rem;
        padding: 0.6rem 2rem;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 2.25;
        cursor: pointer;
        min-width: 35rem;
    }
    .menu-hamburger-search .form-title {
        text-align: center;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667;
        color: #fff;
        margin-bottom: 34px
    }
    .menu-hamburger-search .forum-item-label {
        min-width: unset
    }
}

.main-footer {
    margin-top: auto;
    position: relative;
    background-color: #3E7472;
    padding: 3.3rem 6rem;
    display: flex;
    justify-content: space-between;
    line-height: 1
}

.main-footer img {
    width: unset;
    height: unset
}

.main-footer .footer-logo {
    max-width: 26rem
}

.main-footer .copyright {
    font-size: 1rem;
    color: #fff;
    line-height: 1.4;
    letter-spacing: .05em;
    margin-top: 5.3rem
}

.main-footer .btn-footer {
    display: flex;
    gap: 1.5rem;
    margin-top: 3rem
}

.main-footer .footer-right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    padding-top: 1.3rem
}

.footer-link-wrap .footer-links.text-big{
    margin-top: 1.4rem;
}

.follow-us {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 1.3rem
}

.follow-us>span {
    color: #777;
    align-self: center;
    line-height: 1;
    padding-top: 1.5rem
}

.follow-us .follow-us-wrap {
    display: flex;
    align-items: flex-end;
    gap: 2rem
}

.follow-us .follow-us-wrap a {
    width: 4.2rem;
    height: 4.2rem;
    background-size: cover
}

.main-footer .scroll-top {
    position: absolute;
    right: 12rem;
    top: -11rem;
    width: 9.3rem;
    height: 9.3rem
}

.follow-us .icon-fb {
    background-image: url("../images/footer/icon_fb_gr.png")
}

.follow-us .icon-x {
    background-image: url("../images/footer/icon_tw_gr.png")
}

.follow-us .icon-yt {
    background-image: url("../images/footer/icon_yt_gr.png")
}

.follow-us .icon-ig {
    background-image: url("../images/footer/icon_ig_gr.png")
}

.follow-us .icon-nt {
    background-image: url("../images/footer/icon_nt_gr.png")
}

@media screen and (max-width: 1023px) {
    .main-footer {
        padding: 3rem 2.5rem 1rem 3.4rem
    }
    .main-footer .footer-logo {
        max-width: 26rem
    }
    .main-footer .btn-footer {
        display: none
    }
    .main-footer .footer-right {
        justify-content: flex-end
    }
    .follow-us {
        gap: .5rem
    }
    .main-footer .copyright {
        font-weight: 300;
        font-size: 2rem;
        letter-spacing: .05em;
        line-height: 1.4
    }
    .follow-us span {
        font-weight: 400;
        font-size: 1.8rem;
        letter-spacing: .05em;
        line-height: 1.5333333333
    }
    .follow-us span {
        align-self: flex-end
    }
}

.hero-slider{
    margin-bottom: 9rem;
}

.hero-slider .swiper-pagination {
    text-align: center;
    flex-direction: row
}

.hero-slider .swiper-pagination .swiper-pagination-bullet {
    height: 0.9rem;
    width: 0.9rem;
    background-color: #fff;
    margin: .15rem;
    opacity: 100%;
    transition: all .3s
}

.hero-slider .swiper-pagination .swiper-pagination-bullet+.swiper-pagination-bullet {
    margin-left: .75rem
}

.hero-slider .swiper-pagination .swiper-pagination-bullet:hover {
    background-color: #31D5CB
}

.hero-slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #31D5CB
}

.hero-slider .slide-item {
    position: relative;
    width: 100%;
    line-height: 0;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.hero-slider .slide-item .slide-item-content{
    overflow: hidden;
}

.hero-slider .slide-item img {
    object-fit: cover;
    width: 100%;
    object-position: center;
    height: 35.333vw;
    min-height: 35.333vw;
    transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero-slider .slide-item:hover img{
    transform: scale(1.2);
}

.hero-slider-wrap{
    margin-top: 2.5rem;
}

@media screen and (max-width: 1023px) {
    hero-slider{
        margin-bottom: 4rem;
    }
    .hero-slider .swiper-pagination .swiper-pagination-bullet+.swiper-pagination-bullet {
        margin-left: 0;
        margin-top: 2.6rem
    }
    .hero-slider .slide-item img{
        min-height: 0;
        height: 84.1rem;
    }
}

.page-banner {
    position: relative;
    width: 100%;
    min-height: 42.3rem;
    background-size: cover;
    position: relative;
    background-position: center;
    padding: 2rem 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.page-banner .banner-text {
    min-height: 14.07rem;
}

.page-banner.banner-large {
    min-height: 65rem
}

.page-banner.banner-large .desc {
    font-size: 2rem;
    font-weight: 600;
    color: #fff;
    text-align: left;
    max-width: 75rem;
    margin: 3rem auto 0
}

.page-banner .banner-text {
    margin: auto;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    background-color: rgba(62, 116, 114, .7);
    justify-content: center;
    align-items: center;
    padding: 1.5rem 2rem;
}

.page-banner .banner-text .title {
    width: 100%;
    height: auto;
    text-align: center !important;
    line-height: 1.5;
    font-size: 4.8rem;
    color: #fff;
    overflow: hidden;
}

.page-banner .banner-text .subtitle {
    color: #fff;
    line-height: 1.2;
    width: 100%;
    text-align: center !important;
    overflow: hidden;
    margin-bottom: 1rem;
}

.page-banner .banner-text .subtitle:empty {
    display: none
}

@media screen and (max-width: 1023px) {
    .page-banner {
        background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/news/sp_1a97c89990b700556e06701efbbe0f17c5836127.png);
        min-height: 30rem;
    }
}

.become-banner {
    min-height: 65rem;
    padding: 14rem 0;
    background-size: cover;
    background-position: center
}

.become-banner .context {
    max-width: 57rem
}

.become-banner .context .sub-text {
    font-size: 2.4rem;
    margin-bottom: 3rem;
    font-weight: 300
}

.become-banner .context .sub-text span {
    text-decoration: underline
}

.become-banner .context .title {
    font-size: 4rem;
    margin-bottom: 2rem;
    font-weight: 600
}

.become-banner .context .desc {
    font-weight: 300
}

main.npo-overview .become-banner .context .sub-text {
    overflow: hidden;
    max-height: 5rem
}

main.npo-overview .become-banner .context .sub-text span {
    -webkit-line-clamp: unset
}

main.npo-overview .become-banner .context h1.title {
    -webkit-line-clamp: unset;
    overflow: hidden;
    max-height: 21rem
}

main.npo-overview .become-banner .context .desc {
    -webkit-line-clamp: unset;
    overflow: hidden;
    max-height: 25rem
}

@media(max-width: 1023px) {
    .become-banner {
        min-height: 69rem
    }
    .become-banner .context .desc {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .become-banner .context .desc br {
        display: none
    }
    main.npo-overview .become-banner .context h1.title {
        max-height: 24rem
    }
    main.npo-overview .become-banner .context .desc {
        -webkit-line-clamp: unset;
        overflow: hidden;
        max-height: 21rem
    }
}

.meeting-intro {
    padding: 15rem 0 11.5rem
}

.meeting-intro .container {
    display: flex
}

.meeting-intro .context {
    width: calc(100% - 36.8rem);
    padding-right: 3rem
}

.meeting-intro .context .title {
    font-size: 4rem;
    line-height: 1.8;
    color: #3E7472;
    letter-spacing: .05rem;
    margin-bottom: 4.6rem;
    position: relative
}

.meeting-intro .context .title::after {
    content: "";
    width: calc(100% + 50vw);
    height: 0;
    border-bottom: 2px solid #3E7472;
    position: absolute;
    bottom: .8rem;
    display: block;
    position: absolute;
    right: 0
}

.meeting-intro .context .desc {
    padding-right: 2rem
}

.meeting-intro .right-img {
    width: 36.8rem
}

.meeting-intro .right-img img {
    width: calc(100% + 19.2rem);
    max-width: unset
}

.meeting-intro.no-image .context {
    width: 100%
}

.page-banner.banner-join-volunteer .banner-text {
    margin: 0;
    padding: 2.9rem 1rem
}

@media(max-width: 1023px) {
    .meeting-intro {
        padding: 5rem 0;
        overflow: hidden;
    }
    .meeting-intro .container {
        flex-wrap: wrap
    }
    .meeting-intro .context {
        width: 100%;
        padding-right: 0
    }
    .meeting-intro .right-img {
        width: 100%
    }
    .meeting-intro .right-img img {
        width: calc(100% + 4.8rem);
        position: relative;
        left: -2.4rem
    }
    .meeting-intro .context .title {
        font-size: 3.2rem;
        margin-bottom: 1.3rem
    }
    .meeting-intro .context .title::after {
        bottom: 0;
        width: 100%;
        left: 0;
    }
    .meeting-intro .context .desc {
        margin-bottom: 4.4rem;
        font-size: 2.4rem;
        letter-spacing: .15rem;
        padding-right: 0;
    }
    .page-banner.banner-join-volunteer .banner-text {
        padding: 2.4rem 1rem
    }
}

.sns {
    padding-top: 6rem;
    padding-bottom: 8rem
}

.sns .title-line {
    margin-bottom: 2rem;
    display: block;
}

.sns .follow-us{
    margin-bottom: 2rem;
}

.sns .sns-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 2rem
}

.sns .sns-content .sns-post {
    background-color: #fff;
    border-radius: 1.5rem;
    border: 1px solid #cccccc;
    overflow: hidden
}

.sns .sns-content .sns-post .sns-logo {
    position: absolute;
    max-width: 8.8rem;
    height: auto;
    right: 1.45rem;
    bottom: 1.05rem
}

.sns .sns-content .sns-post-header {
    display: flex;
    flex-direction: row;
    font-weight: 600
}

.sns .sns-content .sns-post-header .sns-avatar {
    background-color: #606060;
    width: 5.4rem;
    height: 5.4rem;
    border-radius: 50%;
    border: 1px solid #707070
}

.sns .sns-content .sns-post-header .sns-info {
    display: flex;
    flex-direction: column;
    padding-left: 1.6rem
}

.sns .sns-content .sns-post-header .sns-info-social {
    display: flex;
    flex-direction: row;
    margin-top: -1rem
}

.sns .sns-content .sns-post-header .sns-info-social .sns-follow-btn {
    margin-left: 1.3rem
}

.sns .sns-content .sns-post-header .sns-name {
    font-size: 1.8rem;
    display: block;
    margin-top: .4rem
}

.sns .sns-content .sns-post-header .sns-username {
    font-size: 1.4rem;
    color: #606060
}

.sns .sns-content .sns-post-header .sns-follow-btn {
    font-size: 1.4rem;
    color: #0b85c6
}

.sns .sns-content .sns-post-body {
    font-size: 2rem;
    padding: 2.4rem 2rem 2rem 3.6rem;
    line-height: 3rem;
    letter-spacing: 0px;
    width: 100%;
    height: auto;
    overflow: hidden
}

.sns .sns-content .sns-post-body .sns-image {
    margin-top: 3.3rem;
    width: 38.1rem;
    height: 19rem
}

.sns .sns-content .sns-post-body .sns-caption .tag {
    color: #0b85c6
}

.sns .sns-content .sns-post-body-1 {
    position: relative;
    font-size: 2rem;
    text-align: justify;
    line-height: 3.1rem;
    letter-spacing: 0px;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: block
}

.sns .sns-content .sns-post-body-1.has-padding {
    padding: 2.5rem
}

.sns .sns-content .sns-post-body-1.has-padding .sns-caption {
    padding: 0
}

.sns .sns-content .sns-post-body-1.padding-child .sns-image {
    width: 100%;
    padding: 2.5rem 2.5rem 0
}

.sns .sns-content .sns-post-body-1.padding-child .sns-title,
.sns .sns-content .sns-post-body-1.padding-child .sns-caption {
    padding-left: 2rem
}

.sns .sns-content .sns-post-body-1 .sns-image {
    width: 41.8rem;
    height: 23.8rem
}

.sns .sns-content .sns-post-body-1 .sns-title {
    margin-top: 2.5rem;
    font-weight: 600;
    color: #121212
}

.sns .sns-content .sns-post-body-1 .sns-caption {
    margin-top: 2rem;
    margin-bottom: 2rem;
    color: #121212
}

.sns .sns-content .sns-post-body-1 .sns-caption .tag {
    color: #0b85c6
}

.sns .sns-content .sns-post-body-1 .sns-caption {
    padding: 0 2.5rem
}

.sns .sns-content .sns-post-body-2 {
    position: relative;
    font-size: 2rem;
    line-height: 3.1rem;
    letter-spacing: 0px;
    border-radius: 1.5rem;
    overflow: hidden;
    width: 100%;
    height: 100%
}

.sns .sns-content .sns-post-body-2 img {
    height: 29.4rem;
    width: 100%;
    object-fit: cover
}

.sns .sns-content .sns-post-body-2 .sns-caption {
    padding: 2rem 1rem 0rem 2rem
}

.sns .sns-content .sns-img-wrapper {
    position: relative;
    padding-bottom: 62%;
    width: 100%
}

.sns .sns-content .sns-img-wrapper iframe,
.sns .sns-content .sns-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0
}

.sns .sns-content .sns-img-wrapper .btn-play {
    position: absolute;
    max-width: 10.7rem;
    max-height: 6.9rem;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%)
}

@media screen and (max-width: 1023px) {
    .sns .sns-content {
        display: flex;
        flex-wrap: wrap;
        gap: .7rem
    }
    .sns .sns-content .sns-post-header .sns-info {
        padding-left: 1.65rem
    }
    .sns .sns-content .sns-post-body {
        font-size: 2rem;
        padding: 2rem .8rem 1.5rem .8rem;
        line-height: 3.1rem;
        letter-spacing: 0px
    }
    .sns .sns-content .sns-post-body .sns-image {
        margin-top: 1rem;
        width: 33.2rem;
        height: 22.5rem
    }
    .sns .sns-content .sns-post-body .sns-caption {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }
    .sns .sns-content .sns-post-body-1 {
        padding: 2rem 1.5rem
    }
    .sns .sns-content .sns-post-body-1 .sns-image {
        width: 100%;
        height: 18.5rem;
        object-fit: cover
    }
    .sns .sns-content .sns-post-body-1 .sns-title {
        margin-top: 1.5rem
    }
    .sns .sns-content .sns-post-body-1 .sns-caption {
        margin-top: 1.5rem;
        padding: 0
    }
    .sns .sns-content .sns-post .sns-logo {
        right: .75rem;
        bottom: 1.2rem
    }
    .sns .sns-content .sns-post-body-2 .sns-image {
        width: 70rem;
        height: 33.4rem
    }
    .sns .sns-content .sns-post-body-2 .sns-caption {
        margin-bottom: .65rem
    }
    .sns .sns-post {
        flex: 1 1 calc(50% - .35rem);
        box-sizing: border-box
    }
    .sns .sns-post:nth-child(3) {
        flex: 1 1 100%;
        margin-top: 1.05rem;
        height: auto
    }
    .sns .sns-post .sns-caption {
        font-size: 2.4rem
    }
}

@media(max-width: 1023px) {
    .sns {
        padding-bottom: 4rem;
        padding-top: 4rem;
    }
}

.about-genron-npo {
    padding: 0 0 8rem
}

.about-genron-npo h2 {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.75;
    text-align: center;
    margin-bottom: 4rem
}

.about-genron-npo-content {
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: left;
    margin: 6rem auto;
}

.about-genron-npo-content p{
    margin-bottom: 1.25rem;
    line-height: 1.8;
}

.about-genron-npo-card {
    background-color: #003a3e;
    display: flex;
    color: #fff;
    border-radius: 2.8rem;
    overflow: hidden;
}

.about-genron-npo-card .thumb{
    overflow: hidden;
    width: 50%;
    min-height: 30rem;
    position: relative;
}

.about-genron-npo-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0
}

.about-genron-npo-card .card-detail {
    flex: 1;
    padding: 3rem 5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative
}

.about-genron-npo-card .card-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    position: relative;
    margin-bottom: 2rem;
    border-bottom: 1px solid #fff;
}

.about-genron-npo-card .card-content {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-bottom: 1rem;
}

.about-genron-npo-card .card-link {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.5;
    color: #fff;
}

.text-right{
    text-align: right;
}

.about-mission {
    padding: 8rem 0
}

.about-mission .about-mission-sub {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-bottom: 3rem
}

.about-mission .about-mission-title {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: 1.1458333333;
    color: #3E7472;
    position: relative;
    margin-bottom: 5rem;
    text-align: center
}

.about-mission .about-mission-title::after {
    content: "";
    width: 100%;
    position: absolute;
    bottom: 0;
    background-color: #707070;
    height: 1px;
    display: block
}

.about-mission .about-mission-content {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    text-align: center
}

.message img {
    width: unset;
    height: unset
}

.message .message-top {
    display: flex
}

.message .message-top .message-image {
    margin-top: 8.19rem;
    position: relative;
    width: 72rem;
    height: 43.6rem
}

.message .message-top .message-image img {
    width: 72rem;
    height: 43.6rem
}

.message .message-top .message-image span {
    position: absolute;
    bottom: 2rem;
    right: 3.4rem;
    font-weight: 600;
    font-size: 3.5rem;
    letter-spacing: .05em;
    line-height: 1.1142857143;
    color: #fff
}

.message .message-img-wrap {
    position: relative;
    max-width: 72rem;
    position: absolute;
    top: 0;
    z-index: 99
}

.message .message-img-wrap p {
    position: absolute;
    bottom: 3rem;
    right: 3rem;
    color: #fff;
    font-weight: 600;
    font-size: 3.5rem;
    letter-spacing: .05em;
    line-height: 1.1142857143
}

.message .message-top-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    display: flex;
    align-items: center;
    margin-bottom: 7.2rem;
    margin-left: 3.3rem
}

.message .message-top-title .line,
.message .message-top-title .underline {
    width: 40.8rem;
    height: 1px;
    color: #000;
    flex: 1;
    margin-left: 7.5rem
}

.message .message-top-wrap {
    margin-top: 11.69rem
}

.message .message-top-content {
    font-weight: 600;
    letter-spacing: .05em;
    margin-bottom: 4.7rem
}

.message .message-top-by {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 1.71875;
    text-align: right
}

.message-bottom {
    background-color: #e8e8e8;
    padding: 10rem 8rem 6rem 8rem;
    max-width: 161.5rem;
    margin: 0 auto;
    opacity: 1
}

.message-bottom-title {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: 1.1458333333;
    position: relative;
    margin-bottom: 5rem
}

.message-bottom-title::after {
    content: "";
    width: 100%;
    position: absolute;
    bottom: 0;
    background-color: #707070;
    height: 1px;
    display: block;
    bottom: -1rem;
}

.message-bottom-content {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    text-align: justify
}

.genron-npo-links {
    padding-top: 8rem;
    padding-bottom: 8rem
}

.genron-npo-links .sp-only {
    display: none
}

.genron-npo-links .genron-npo-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    margin-top: 6rem;
}

.genron-npo-links .genron-npo-wrap .genron-npo-item {
    height: 22rem;
    border-radius: 3rem;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.genron-npo-links .genron-npo-wrap .genron-npo-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.genron-npo-links .genron-npo-wrap .genron-npo-body {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.375;
    color: #fff;
    white-space: nowrap
}

.genron-npo-links .genron-npo-wrap .genron-npo-btn {
    position: absolute;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: 0em;
    line-height: 1.5;
    color: #fff;
    right: 2.8rem;
    bottom: 1.7rem
}

@media screen and (max-width: 1023px) {
    .about-genron-npo{
        padding: 0 0 5rem;
    }
    .about-genron-npo h2 {
        padding: 0 0 3rem;
        margin-bottom: 0
    }
    .about-genron-npo-content {
        font-size: 2.4rem;
        line-height: 1.7;
        margin-top: 4rem;
        margin-bottom: 4rem;
    }
    .about-genron-npo-card {
        flex-direction: column;
        border-radius: 2rem;
        overflow: hidden
    }
    .about-genron-npo-card .thumb{
        width: 100%;
    }
    .about-genron-npo-card img {
        width: 100%;
        height: 32rem;
        object-fit: cover;
        position: relative;
    }
    .about-genron-npo-card .card-content {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .about-genron-npo-card .card-link {
        right: 5rem;
        bottom: 2rem
    }
    .about-mission {
        padding: 4rem 2rem;
    }
    .about-mission .about-mission-sub {
        font-size: 4rem;
        line-height: 1.8;
        margin-bottom: 1rem
    }
    .about-mission .about-mission-title {
        font-size: 4rem;
        margin-bottom: 3.6rem
    }
    .about-mission .about-mission-content {
        font-size: 2.4rem;
        padding-bottom: 3rem
    }
    .message .message-top {
        /* display: flex;
        flex-direction: column */
    }
    .message .message-top .message-image {
        margin-top: 3.67rem;
        width: 100%
    }
    .message .message-top-img {
        position: relative
    }
    .message .message-img-wrap {
        position: relative;
        width: 100%;
        max-width: unset;
    }
    .message .message-img-wrap img{
        width: 100%;
    }
    .message .message-top-wrap {
        margin-top: 2.6rem;
        width: 100%
    }
    .message .message-top-title {
        font-size: 4rem;
        margin-bottom: 2.8rem;
        flex-direction: column;
        align-items: flex-start
    }
    .message .message-top-title .line,
    .message .message-top-title .underline {
        flex: none;
        margin-left: 0;
        width: 100%
    }
    .message .message-top-content {
        font-size: 2rem;
        margin-bottom: 2.8rem
    }
    .message .message-top-by {
        font-size: 3.2rem;
        margin-bottom: 6rem
    }
    .message-bottom {
        margin-top: 0rem;
        padding: 6rem 3rem;
    }
    .message-bottom-title {
        font-size: 3.6rem;
        line-height: 1.8;
        padding: 0 10rem;
        margin: 0 auto 4rem auto;
        text-align: center
    }
    .message-bottom-title::after {
        left: 0
    }
    .message-bottom-content {
        font-size: 2.4rem
    }
    .genron-npo-links {
        padding: 6rem 0;
    }
    .genron-npo-links .genron-npo-wrap {
        margin-top: 2rem;
        gap: 1rem;
    }
    .genron-npo-links .genron-npo-wrap .genron-npo-item {
        width: 100%;
        height: 14.8rem;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        padding: 1rem;
        border-radius: 2rem;
    }
    .genron-npo-links .genron-npo-wrap .genron-npo-item img {
        position: absolute
    }
    .genron-npo-links .genron-npo-wrap .genron-npo-body {
        font-size: 2.6rem;
        width: 100%;
        white-space: unset;
        position: relative;
        top: unset;
        left: unset;
        transform: unset;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        flex: 1;
        padding-top: 1rem;
    }
    .genron-npo-links .genron-npo-wrap .genron-npo-btn {
        position: relative;
        right: unset;
        bottom: 0.5rem;
    }
    .genron-npo-links .sp-only {
        display: block
    }
}

@media screen and (min-width: 1024px) {
    .message .message-top-content {
        margin-left: 3.3rem
    }
    .genron-npo-links .page-width {
        max-width: 147.5rem
    }
}

.support-us-item .support-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3.3rem 4rem
}

.support-us-item .support-wrap .support-item {
    min-height: 45rem;
    position: relative;
    border-radius: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4rem;
    position: relative;
    width: calc((100% - 2rem)/3)
}

.support-us-item .support-wrap .support-item.pd-custom {
    padding: 0 2.5rem
}

.support-us-item .support-wrap .support-item-body {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.support-us-item .support-wrap .support-item-body p {
    color: #fff
}

.support-us-item .support-wrap .support-item-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    border-radius: 3rem;
    z-index: -1
}

.support-us-item .support-wrap .support-item-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: center;
    position: relative;
    border-bottom: 3px solid #fff;
    padding-bottom: 2rem;
    margin-bottom: 3rem
}

.support-us-item .support-wrap .support-item-desc {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    text-align: center;
    padding-bottom: 14rem
}

.support-us-item .support-wrap .support-item-btn {
    background-color: #fff;
    color: #121212;
    min-height: 6.7rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    position: relative;
    border-radius: 3.4rem;
    font-weight: 600;
    font-size: 3rem;
    letter-spacing: .05em;
    line-height: 1.8333333333;
    position: absolute;
    bottom: 7rem;
    width: 33.7rem;
    margin: auto;
    left: 0;
    right: 0;
    cursor: pointer;
    transition: all .3s ease
}

.support-us-item .support-wrap .support-item-btn svg {
    position: absolute;
    right: 1rem;
    max-width: 4.9rem
}

.support-us-item .support-wrap .support-item-btn.active {
    background-color: #3E7472;
    color: #fff
}

.support-us-item .support-wrap .support-item-btn.active svg {
    transition: all .3s ease
}

.support-us-item .support-wrap .support-item-btn.active>svg #Ellipse_13 {
    fill: #fff
}

.support-us-item .support-wrap .support-item-btn.active>svg #_ {
    fill: #3E7472
}

.support-us-item .support-wrap .list-choice {
    position: absolute;
    border: .6rem solid #3E7472;
    border-radius: 3rem;
    background-color: #fff;
    padding: 5rem 1rem;
    top: 11rem;
    width: 125%;
    z-index: 999;
    display: none
}

.support-us-item .support-wrap .list-choice a {
    font-weight: 600;
    font-size: 2.7rem;
    letter-spacing: .05em;
    line-height: 1.8518518519;
    display: flex;
    justify-content: center;
    text-align: center;
    position: relative;
    padding-right: 6.7rem
}

.support-us-item .support-wrap .list-choice a:not(:last-child) {
    padding-bottom: 3rem;
    margin-bottom: 3rem
}

.support-us-item .support-wrap .list-choice a:not(:last-child)::after {
    content: "";
    height: 2px;
    background-color: #bfbfbf;
    width: 85%;
    bottom: 0;
    left: 50%;
    position: absolute;
    transform: translate(-50%, 0)
}

.support-us-item .support-wrap .list-choice a svg {
    position: absolute
}

.support-us-page.donate .support-us-item .support-wrap .support-item-title {
    width: 100%;
    border: none;
    position: relative
}

.support-us-page.donate .support-us-item .support-wrap .support-item-title:after {
    content: "";
    display: block;
    width: 34.8rem;
    height: 3px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.support-us-page.donate .support-us-item .support-wrap .support-item-body {
    align-items: center
}

.support-us-page.donate .support-us-item .support-wrap .support-item:nth-child(2) .support-item-title:after {
    width: 100%
}

.support-us-slide {
    height: 92rem
}

.support-us-slide .support-us-item {
    position: relative
}

.support-us-slide .support-slide-bg {
    height: 100%;
    width: 45%;
    position: absolute;
    top: 0;
    right: 0
}

.support-us-slide .support-slide-img {
    width: 72rem;
    height: 42rem
}

.support-us-slide .support-slide-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.support-us-slide .support-slide-content.bg-opacity {
    background: linear-gradient(to right, rgba(0, 138, 63, 0.6) 55%, rgba(0, 138, 63, 0) 45%)
}

.support-us-slide .support-slide-content.bg-full {
    background-color: #3E7472;
    background: linear-gradient(to right, #3E7472 55%, rgba(0, 138, 63, 0) 45%)
}

.support-us-slide .support-slide-content.bg-full .support-slide-content-wrap {
    max-width: 65rem;
    height: 92rem
}

.support-us-slide .support-slide-content.bg-full .support-slide-title {
    margin-bottom: 4rem;
    text-align: left
}

.support-us-slide .support-slide-content.bg-full .support-slide-desc {
    color: #fff;
    text-align: left;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667
}

.support-us-slide .support-slide-content .page-width {
    height: 100%
}

.support-us-slide .support-slide-content .support-slide-content-wrap {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 77rem;
    text-align: center
}

.support-us-slide .support-slide-content .support-slide-title {
    margin-bottom: 11rem;
    font-weight: 600;
    font-size: 4.2rem;
    letter-spacing: .05em;
    line-height: 1.7142857143;
    color: #fff
}

.support-us-slide .support-slide-item {
    position: relative;
    cursor: pointer
}

.support-us-slide .swiper-pagination-bullet-active {
    background-color: #fff
}

.support-us-slide .swiper-pagination-bullet {
    width: 16px;
    height: 16px
}

.section-title-decoration {
    position: relative;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.section-title-decoration::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #707070;
    bottom: 0;
    left: 0
}

@media screen and (max-width: 1023px) {
    .section-title-decoration {
        padding: 0 4rem 3rem
    }
}

.section-title-center {
    text-align: center;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.discussion-description-content {
    margin-top: 7rem;
    position: relative
}

.discussion-description-content .img-bg {
    width: 100%;
    height: 82rem;
    object-fit: cover
}

.discussion-description-content .discussion-content-wrap {
    position: absolute;
    max-width: 67rem;
    bottom: 8rem;
    right: 6rem
}

.discussion-description-content .discussion-content-wrap p {
    color: #fff
}

.discussion-description-content .discussion-content-wrap .support-us-intro-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.discussion-description-content .discussion-content-wrap .support-us-intro-desc {
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 1.75
}

.discussion-description.support-us-intro {
    padding-bottom: 14rem;
    padding-top: 11rem
}

.discussion-description.support-us-intro .support-us-bottom {
    margin-top: 8rem;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: center
}

.discussion-description.support-us-intro .support-us-bottom span {
    color: #3E7472
}

.support-us-message {
    padding-top: 15rem
}

.support-us-message .message-bottom {
    max-width: 100%
}

.support-us-message .message-bottom-title,
.support-us-message .message-bottom-content {
    width: 144rem;
    margin: 0 auto
}

.voices-supporters {
    background-color: #e8e8e8;
    padding-top: 10rem;
    padding-bottom: 10rem
}

.voices-supporters .voices-supporters-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7rem
}

.voices-supporters .voices-supporters-wrap:not(:last-child) {
    padding-bottom: 13rem
}

.voices-supporters .voices-supporters-wrap.benefits-donate .voices-supporters-item-top {
    align-items: center
}

.voices-supporters .voices-supporters-item-top {
    background-color: #3E7472;
    border-radius: 1.3rem;
    gap: 2rem;
    display: flex;
    padding: 1.4rem 2rem 1rem 2rem;
    color: #fff;
    min-height: 15.25rem;
}

.voices-supporters .voices-supporters-item {
    background-color: #fff;
    border-radius: 1.3rem
}

.voices-supporters .voices-supporters-item-title {
    flex: 1;
    display: flex;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
}

.voices-supporters .voices-supporters-number {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column
}

.voices-supporters .avatar-img {
    width: 7rem;
    height: 7rem;
    background-color: #fff;
    border-radius: 50%;
    color: #3E7472;
    display: flex;
    align-items: center;
    flex-direction: column;
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: .75
}

.voices-supporters .avatar-img span {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25
}

.voices-supporters .voices-supporters-avatar {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 30%
}

.voices-supporters .voices-supporters-item-body {
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2.25;
    padding: 2rem 2.8rem 4rem 3.7rem;
    background-color: #fff;
    border-radius: 0 0 1.3rem 1.3rem;
    text-align: justify
}

.voices-supporters .number-bg {
    width: 9.5rem;
    height: 9.65rem;
    background-color: #fff;
    border-radius: 50%;
    color: #3E7472;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem
}

.voices-supporters .number-bg span {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: .75
}

.section-bg-title {
    min-height: 6rem;
    background-color: #3E7472;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    display: flex;
    align-items: center;
    color: #fff;
    padding-left: 4rem;
    margin-bottom: 5rem
}

.support-us-faq {
    padding-top: 9rem;
    padding-bottom: 9rem;
}

.support-us-faq .faq-wrap {
    margin-top: 5rem;
    display: flex;
    flex-direction: column;
    gap: 3rem
}

.support-us-faq .faq-item-icon {
    width: 7rem;
    height: 7rem;
    border-radius: 50%;
    background-color: #3E7472;
    font-weight: 600;
    font-size: 3.4rem;
    letter-spacing: .05em;
    line-height: 3.0588235294;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center
}

.support-us-faq .faq-item-icon.bg-white {
    background-color: #fff;
    color: #3E7472;
    border: 1px #3E7472 solid
}

.support-us-faq .faq-item-question {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 1.34375;
    gap: 4rem;
    background-color: #e8e8e8;
    border-radius: 1.8rem;
    padding: 2rem 3.4rem 2rem 4rem;
    cursor: pointer
}

.support-us-faq .faq-item-question .q-content {
    overflow: hidden;
    max-height: 9rem
}

.support-us-faq .faq-item-question p {
    flex: 1
}

.support-us-faq .faq-item-question.active {
    border-bottom: 1px solid #707070
}

.support-us-faq .faq-item {
    border: 1px solid #3E7472;
    border-radius: 1.8rem
}

.support-us-faq .faq-item-answer {
    padding: 2.5rem 1.1rem 4rem 4rem;
    display: flex;
    gap: 3.7rem;
    position: relative;
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667
}

.support-us-faq .faq-item-answer .a-content {
    text-align: justify;
    overflow: hidden;
    max-height: 35rem
}

.support-us-faq .faq-item-answer p {
    flex: 1;
    min-height: 23rem;
    padding-right: 11rem
}

.support-us-faq .faq-item-toggle {
    display: none
}

.support-us-faq .icon-close {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    position: absolute;
    padding: 2rem 3rem;
    line-height: 1.2;
    right: 0;
    bottom: 0;
    cursor: pointer
}

.support-us-faq .faq-more {
    display: block;
    width: fit-content;
    margin: 4rem auto 0 auto;
    padding: 1rem 3rem;
    display: flex;
    align-items: center
}

.support-us-page .voices-supporters .voices-supporters-item-title {
    max-height: 10rem;
    display: block;
    overflow: hidden;
    padding-top: .8rem
}

.support-us-page .voices-supporters-item-body>p {
    min-height: 10rem;
}

.support-us-page .message .test-name {
    width: 100%;
    right: 0;
    padding: 0 3rem;
    text-align: end
}

.support-us-page .message .test-name>span {
    overflow: hidden;
    display: block;
    max-width: 100%;
    text-wrap: nowrap
}

.support-us-page .message .message-top-wrap {
    width: calc(100% - 72rem) !important;
    flex: 1
}

@media screen and (max-width: 1023px) {
    .support-us-page .message .message-top-wrap {
        width: unset !important
    }
    .support-us-page .message .message-top-wrap .message-top-by {
        margin-left: 0
    }
}

.support-us-page .message .message-top-wrap .message-top-by {
    margin-left: 3.3rem
}

@media screen and (max-width: 1023px) {
    .support-us-page .message .message-top-wrap .message-top-by {
        margin-left: 0
    }
}

.support-us-page .message .message-top-wrap .message-top-by,
.support-us-page .message .message-top-wrap .message-top-title {
    display: block;
    overflow: hidden;
    max-width: 100%;
    text-wrap: nowrap
}

.support-us-page .message .message-top-wrap .message-top-title {
    margin-bottom: 2rem
}

.support-us-page .message .message-top-wrap .message-top-content {
    margin-bottom: 5rem
}

.support-us-page .support-slide-title {
    display: block;
    overflow: hidden;
    max-width: 100%;
    text-wrap: nowrap
}

.support-us-page .support-slide-desc {
    overflow: hidden;
}

.support-us-page .support-item-box.donation-item-box {
    width: 100%
}

.support-us-page .support-item-title,
.support-us-page .support-item-title span {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-wrap: nowrap
}

.support-us-page .support-item-desc {
    overflow: hidden;
    margin-bottom: 1rem
}

.support-us-page .support-us-intro-title {
    overflow: hidden;
    max-height: 14rem;
    margin-bottom: 3rem
}

.support-us-page .support-us-intro-desc {
    overflow: hidden;
    max-height: 18rem
}

.support-us-page .support-us-item .support-wrap {
    justify-content: between
}

.support-us-page .support-us-item .support-item {
    position: relative;
    width: calc(50% - 2rem);
    box-sizing: border-box;
    height: auto;
    padding-top: 9rem;
    padding-bottom: 7rem
}

.support-us-page .support-us-item .support-item .support-item-body {
    justify-content: space-between
}

.support-us-page .support-us-item .support-item .support-item-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 5.1rem
}

.support-us-page .support-us-item .support-item .support-item-desc {
    padding-bottom: unset
}

.support-us-page .support-us-item .support-item .support-item-btn {
    position: relative;
    bottom: 0;
    margin-top: 0;
    margin-bottom: 0
}

.support-us-page .support-us-item .support-item-full {
    width: 100%;
    padding-bottom: 1.8rem;
    padding-top: 2rem;
    margin-bottom: 3.3rem;
    background-color: rgba(62, 116, 114, .6)
}

.support-us-page .support-us-item .support-item-full .support-item-title {
    background-color: #fff;
    padding: 1.5rem 1rem;
    letter-spacing: normal;
    font-weight: normal;
    border-radius: .6rem;
    color: #3E7472;
    text-shadow: 0px 3px 6px rgba(0, 0, 0, .16)
}

.support-us-page .support-us-item .support-item-full .support-item-desc {
    color: #fff;
    margin-bottom: 4rem;
    font-weight: 300
}

.support-us-page .support-us-item .support-item-box:not(.donation-item-box) {
    text-align: center;
    position: absolute;
    padding: 2rem;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.support-us-page .message .message-top-title {
    margin-bottom: 2.5rem;
    font-weight: normal
}

.support-us-page .message .message-top-content {
    margin-bottom: 6rem;
    font-weight: normal
}

.support-us-page .message .message-top-by {
    font-weight: normal
}

.support-us-page .message{
    margin: 12rem 0 6rem;
}

.support-us-page .message .message-top {
    display: flex;
    margin-top: 6rem;
}

.support-us-page .message .message-top .message-img-wrap {
    position: relative
}

.support-us-page .message .message-top .message-top-wrap {
    width: unset;
    margin: auto 0
}

.support-us-page .message .message-bottom {
    max-width: unset;
    margin: unset;
    padding-left: 0;
    padding-right: 0
}

.support-us-page .message .message-bottom .message-bottom-container {
    margin: 0 auto;
    width: 100%;
    max-width: 148rem
}

.support-us-page .support-us-chart .support-us-chart-box {
    padding-top: 9rem;
    padding-bottom: 7rem;
    text-align: center;
}

.support-us-page .support-us-chart .support-us-chart-box .support-us-chart-text {
    margin-bottom: 1.8rem;
    text-align: center;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 5.1rem;
    color: #3E7472
}

.support-us-page .support-us-chart .support-us-chart-box img {
    height: auto;
    max-height: 60rem;
}

.support-us-page .support-us-slide .swiper-pagination {
    display: flex;
    gap: 18px;
    right: unset;
    left: 25%;
    top: unset;
    bottom: 3.4rem;
    transform: unset
}

.support-us-page .support-us-slide .swiper-pagination span {
    margin: 0
}

.support-us-page .sns-follow-btn {
    color: #0b85c6
}

@media screen and (max-width: 1023px) {
    .support-us-page .support-us-message .message-top {
        flex-direction: column
    }
    .support-us-page .support-us-message .message-bottom-title,
    .support-us-page .support-us-message .message-bottom-content {
        width: auto
    }
    .support-us-page .sns-post-header {
        padding: 1.6rem 1.6rem 0
    }
    .discussion-description.support-us-intro {
        padding-top: 4rem
    }
    .discussion-description-content {
        margin-top: 4rem
    }
    .discussion-description-content .img-bg {
        height: 95rem;
        display: block
    }
    .discussion-description-content .discussion-content-wrap {
        width: 100%;
        left: 50%;
        transform: translate(-50%, 0);
        bottom: 4rem
    }
    .discussion-description-content .discussion-content-wrap .support-us-intro-desc {
        margin-top: 3rem
    }
    .discussion-description.support-us-intro .support-us-bottom {
        font-weight: 600;
        font-size: 3.2rem;
        line-height: 1.78125;
        margin-top: 3rem;
        letter-spacing: .04em
    }
    .discussion-description.support-us-intro {
        padding-bottom: 3rem
    }
    .support-us-item .support-wrap .support-item {
        width: 100%;
        min-height: 28rem;
        padding: 2rem
    }
    .support-us-item .support-wrap .support-item-full {
        min-height: 33.5rem
    }
    .support-us-page .support-item-full .support-item-box {
        width: 100%
    }
    .support-us-page .support-item-full .support-item-title {
        display: inline-block;
        padding: 1rem 6rem !important
    }
    .support-us-page .support-item-full .support-item-desc {
        margin-bottom: 2rem !important
    }
    .support-us-slide .support-slide-content.bg-full .support-slide-content-wrap {
        height: 65rem;
        max-width: 100%
    }
    .support-us-item .support-wrap .support-item-btn {
        position: relative;
        bottom: 0;
        margin: 0 auto;
        width: 100%
    }
    .support-us-item .support-wrap .support-item-body p {
        padding-bottom: 0;
        margin-bottom: 2rem
    }
    .support-us-item .support-wrap .support-item.pd-custom {
        padding: 2rem
    }
    .support-us-item {
        padding-bottom: 2rem
    }
    .support-us-message.support-us-donate .message-top-wrap {
        margin-top: 0
    }
    .support-us-message.support-us-donate .message-top p {
        text-align: left;
        align-items: flex-start
    }
    .support-us-message.support-us-donate .message-top-title {
        border-bottom: 1px solid #707070;
        margin-top: 2rem
    }
    .support-us-message.support-us-donate .message-top-content {
        margin-bottom: 2rem
    }
    .support-us-message.support-us-donate .message-top p.message-top-by {
        font-weight: 600;
        font-size: 3.2rem;
        letter-spacing: .05em;
        line-height: 1.71875;
        text-align: right
    }
    .support-us-message.support-us-donate .message-top-by {
        margin-bottom: 6rem
    }
    .support-us-message.support-us-donate .message-bottom {
        padding: 4.8rem 3rem 9rem 3rem
    }
    .support-us-message.support-us-donate .message-bottom-title {
        margin-bottom: 2.5rem
    }
    .support-us-slide {
        margin-top: 8rem;
        height: auto;
    }
    .support-us-slide .support-slide-content .support-slide-title {
        text-align: left
    }
    .support-us-slide .support-slide-content .support-slide-title {
        margin-bottom: 4.5rem
    }
    .support-us-slide .support-slide-img {
        width: 100%
    }
    .support-us-slide .support-slide-content.bg-opacity .support-slide-content-wrap {
        justify-content: flex-start;
        margin-top: 7rem
    }
    .voices-supporters .voices-supporters-wrap {
        grid-template-columns: 1fr
    }
    .voices-supporters {
        padding-bottom: 9rem
    }
    .voices-supporters .page-width {
        padding: 0
    }
    .voices-supporters .voices-supporters-wrap {
        padding: 0 2rem;
        gap: 2rem
    }
    .voices-supporters .voices-supporters-wrap.top {
        margin-top: 4rem
    }
    .voices-supporters .voices-supporters-avatar {
        flex-direction: row
    }
    .voices-supporters .voices-supporters-avatar p {
        align-self: flex-end;
        line-height: 1
    }
    .voices-supporters .voices-supporters-item-top {
        align-items: center;
        min-height: unset;
    }
    .voices-supporters .voices-supporters-wrap:not(:last-child) {
        padding-bottom: 5rem
    }
    .section-bg-title {
        font-weight: 600;
        font-size: 3.2rem;
        letter-spacing: .05em;
        line-height: 2.25;
        margin-bottom: 2rem
    }
    .voices-supporters .voices-supporters-wrap.benefits-donate .voices-supporters-item-title {
        margin-bottom: 0
    }
    .support-us-faq {
        padding-top: 8rem
    }
    .support-us-faq .page-width {
        padding: 0
    }
    .support-us-faq .faq-wrap {
        padding: 0 1.3rem
    }
    .support-us-faq .faq-item-question {
        padding: 2rem 1rem 2rem 1rem;
        gap: 1rem
    }
    .support-us-faq .faq-item-answer {
        padding: 2.5rem 1rem 4rem 1rem;
        gap: 1rem
    }
    .support-us-faq .faq-item-answer p {
        padding-right: 6rem;
        min-height: unset
    }
    .support-us-faq .faq-wrap {
        gap: 2rem
    }
    .support-us-faq .faq-more {
        margin: 4.5rem auto 0 auto
    }
    .support-us-page .support-us-faq .icon-close {
        padding: 2rem
    }
    .support-us-page .support-us-faq .faq-item-answer {
        min-height: 32rem
    }
    .support-us-page .sns {
        padding-bottom: 9rem
    }
    .support-us-page .voices-supporters .voices-supporters-wrap.benefits-donate .voices-supporters-item .voices-supporters-item-top {
        gap: 4.3rem
    }
    .support-us-page .voices-supporters .voices-supporters-item-top {
        padding: 1.4rem 1.8rem 1.4rem 2.8rem
    }
    .support-us-page .voices-supporters .avatar-img {
        width: 9.1rem;
        height: 9.1rem
    }
    .support-us-page .message-top-title {
        margin: 0;
        padding-left: 1rem;
        border-bottom: 1px solid #707070;
        text-align: left;
        align-items: flex-start
    }
    .support-us-page .message-top-wrap .message-top-content {
        margin-bottom: 3rem
    }
    .support-us-page .support-us-chart .support-us-chart-box .support-us-chart-text {
        margin-bottom: 3rem
    }
    .support-us-page .support-us-slide .support-slide-content.bg-full .support-slide-title {
        text-align: center
    }
    .support-us-slide .support-slide-content.bg-full .support-slide-content-wrap{
        min-height: 0;
    }
    .support-us-page .support-us-slide .support-slide-content.bg-full .support-slide-desc {
        text-align: justify;
        padding: 0 0 10rem;
    }
    .support-us-item .support-wrap .list-choice {
        width: 100%;
        top: 8rem
    }
    .support-us-item .support-wrap .list-choice a {
        font-size: 2.4rem
    }
    .support-us-page .support-us-item .support-top.support-wrap .support-item-title {
        width: 100%;
    }
    .support-us-page .support-us-item .support-top.support-wrap .support-item-title:after {
        content: none
    }
    .support-us-page .support-us-item .support-item {
        height: unset
    }
    .support-us-page .support-us-item .support-item .support-item-title {
        padding-bottom: 1.3rem
    }
    .support-us-page .support-us-item .support-item .support-item-title:after {
        width: 100% !important
    }
    .support-us-page .message .message-top {
        margin-top: 4rem;
    }
    .support-us-page .message .message-bottom {
        padding-left: 2.5rem;
        padding-right: 2.5rem
    }
    .support-us-page .support-us-chart .support-us-chart-box {
        padding-bottom: 0
    }
    .support-us-page .support-us-slide .support-slide-content.bg-full {
        background: rgba(0, 138, 63, .7);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
    .support-us-page .support-us-slide .support-slide-content-wrap {
        padding: 0 2rem
    }
    .support-us-page .support-us-slide .swiper-pagination {
        width: auto;
        display: flex;
        gap: 13px;
        right: unset;
        left: 50%;
        top: 60rem;
        bottom: 3.4rem;
        transform: translateX(-50%)
    }
    .support-us-page .support-us-slide .swiper-pagination span {
        margin: 0
    }
    .support-us-page .support-us-slide .swiper-pagination-bullet {
        width: 12px;
        height: 12px
    }
    .support-us-page .voices-supporters .container {
        padding-left: 0;
        padding-right: 0
    }
    .support-us-page .support-us-faq .container {
        padding-left: 0;
        padding-right: 0
    }
    .support-us-slide .support-slide-bg {
        height: auto;
        position: relative;
        width: 100%;
        height: 80rem;
        object-fit: cover;
        object-position: center
    }
    .support-us-page .support-us-slide .swiper-pagination {
        bottom: 65rem;
        top: auto;
    }
    .support-us-page .support-us-chart .support-us-chart-box img {
        height: auto
    }
}

.activity-item>img {
    width: 45.6rem;
    height: 27.8rem;
    object-fit: cover
}

.activity-item .activity-title {
    padding: .9rem 1.4rem .9rem 1.7rem
}

@media screen and (max-width: 1023px) {
    .activity-item>img {
        width: 100%
    }
    .activity-item .activity-title {
        padding: .9rem 1rem .9rem 1.5rem
    }
}

.pub-item {
    height: 100%;
    padding: 3rem;
    border-left: 1px solid #707070;
    display: flex;
    flex-direction: row
}

.pub-item>img {
    width: 13rem;
    height: 20rem;
    object-fit: cover
}

.pub-item .pub-info {
    padding-left: 1.8rem;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

.pub-item .pub-info .pub-desc {
    line-height: 1.8;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 1rem
}

.pub-item .pub-info .btn-base {
    min-width: 21.6rem;
    padding: 1.1rem;
    border-radius: 10rem;
    text-align: center;
    line-height: 1.2;
}
.pub-item .pub-info .pub-title{
    font-size: 1.8rem;
}
.pub-item .pub-info .btn-base{
    min-width: 15rem;
    font-size: 1.6rem;
}

@media screen and (max-width: 1023px) {
    .pub-item {
        padding-left: 2.9rem;
        padding-top: 2rem;
        padding-bottom: 1.3rem;
        border-left: 0
    }
    .pub-item>img {
        width: 20.4rem;
        height: 32.2rem
    }
    .pub-item .pub-info {
        padding-left: 2.95rem;
        padding-top: 4.25rem;
        justify-content: center
    }
    .pub-item .pub-info .pub-desc {
        padding-left: .6rem;
        padding-top: .6rem;
        line-height: 1.8em;
        font-size: 2.4rem;
        letter-spacing: .05em
    }
    .pub-item .pub-info .btn-base {
        max-width: 32.8rem;
        margin-top: .75rem;
        margin-left: -0.3rem
    }
}

.agenda-category {
    margin-top: 1rem
}

.agenda-category .agenda-category-item {
    padding: 0 1rem;
    display: inline-block;
    border: 1px solid #707070;
    border-radius: .7rem;
    font-weight: 600;
    line-height: 1.7;
    margin-bottom: 0.7rem;
    font-size: 1.4rem;
}

.agenda-category .agenda-category-item+.agenda-category-item {
    margin-left: -0.2rem
}

.agenda-item {
    width: 100%;
    position: relative
}

.agenda-item .post-item {
    display: flex;
    flex-direction: column
}

.agenda-item .img-wrapper {
    position: relative;
    height: 0;
    width: 100%;
    padding-bottom: 55.2%
}

.agenda-item .img-wrapper img {
    position: absolute;
    width: 46rem;
    height: 24.5rem;
    object-fit: cover;
    top: 0;
    left: 0
}

.agenda-item .img-wrapper .new {
    text-transform: uppercase;
    position: absolute;
    color: #fff;
    top: 1.5rem;
    left: 2.2rem;
    background-color: #3E7472;
    padding: 0 3.2rem;
    z-index: 100
}

.agenda-item .agenda-item-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #fff;
    background-color: #3E7472;
    display: inline-block;
    padding-left: 1rem;
    padding-right: 1rem;
    overflow: hidden;
    white-space: nowrap
}

.agenda-item .agenda-item-caption .agenda-item-category {
    display: inline
}

.agenda-item .agenda-item-caption .agenda-item-time {
    display: inline
}

.agenda-item .agenda-bottom-box {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

.agenda-item .agenda-item-date {
    color: #606060
}

.agenda-item .agenda-item-title {
    display: block;
    line-height: 1.8;
    max-height: 8rem;
    overflow: hidden;
    -webkit-line-clamp: 2;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    margin-bottom: .8rem;
    color: #222;
    word-wrap: break-word
}

.schedule-event-item {
    width: 100%;
    height: auto;
    background-color: #fff;
    display: flex;
    margin-bottom: 2.8rem;
    position: relative
}

.schedule-event-item.not-allow::before {
    content: "";
    position: absolute;
    z-index: 1;
    background: rgba(150, 150, 150, .4);
    display: block;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0
}

.schedule-event-item .event-thumb {
    width: 48.1rem;
    min-height: 27rem;
    flex-shrink: 0;
    max-height: 35rem;
    position: relative;
}

.schedule-event-item .event-thumb .forum-tag{
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    padding: 0.8rem 1.5rem;
    line-height: 1.4;
    background-color: #3E7471;
    font-size: 1.4rem;
    font-weight: bold;
    color: #FFF;
}

.schedule-event-item .event-info {
    width: 100%;
    position: relative;
    padding: 3rem 2.5rem 3.5rem;
}

.schedule-event-item .event-info .event-category-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.schedule-event-item .event-info .event-tag-new {
    display: inline-flex;
    background-color: #eb3c1d;
    color: #fff;
    padding: .3rem 1.2rem;
    font-weight: 500;
    text-align: center;
}

.schedule-event-item .event-info .event-category>h3 {
    display: inline-flex;
    background-color: #3E7472;
    color: #fff;
    padding: .85rem 2.5rem .85rem 2.5rem;
    min-width: 35rem;
    line-height: 1.33
}

.schedule-event-item .event-info .event-title {
    padding: 3.5rem 2.5rem 1rem;
    font-size: 2.8rem;
    line-height: 1.5;
    max-height: 16.7rem;
    -webkit-line-clamp: 2;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    overflow: hidden;
    font-weight: 500;
}

.schedule-event-item .event-info .event-title a {
    color: #121212
}

.schedule-event-item .event-info .event-time {
    margin-left: 2.5rem;
    margin-bottom: 1rem;
}

.schedule-event-item .event-info .event-time>h3 {
    letter-spacing: .2rem;
    font-size: 2rem;
    font-weight: 400;
}

.schedule-event-item .event-image {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.schedule-event-item .more{
    display: flex;
    justify-content: flex-end;
}
.schedule-event-item .more .text-center{
    position: relative;
}

.schedule-event-item .more .note{
    font-size: 1.4rem;
    position: absolute;
    bottom: -2.5rem;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
}

.schedule-event-item .btn-base {
    padding: 1.4rem 1.5rem;
    width: 27.6rem;
    height: 5.3rem;
    text-align: center;
    align-items: center;
    border-radius: 2.7rem;
}

@media screen and (max-width: 1023px) {
    .schedule-event-item .btn-base.expired .note{
        font-size: 1.6rem;
    }
    .schedule-event-item {
        margin-bottom: 3.5rem;
        flex-wrap: wrap;
        padding: 3rem;
    }
    .schedule-event-item .event-info {
        height: auto;
        padding-top: 2rem;
        flex: 1;
        padding-bottom: 0;
    }
    .schedule-event-item .event-info .event-title {
        font-size: 4rem;
        max-height: 18rem;
        padding: 1rem 0 2rem;
        margin-bottom: 0;
    }
    .schedule-event-item .event-info .event-time {
        margin-top: 0;
        margin-left: 0;
    }
    .schedule-event-item .event-thumb {
        width: 100%;
        min-height: 34.8rem;
    }
    .schedule-event-item .btn-base {
        margin-left: 0;
        float: initial;
        position: relative;
        margin-top: 2rem;
        left: 0;
        top: 0;
        width: 100%;
        height: auto;
        border-radius: 3.5rem;
    }
    .schedule-event-item .event-info .event-category>h3 {
        min-width: 0;
        background: transparent;
        padding: 0;
        color: #3E7472;
    }
    .schedule-event-item .event-info .event-tag-new {
        padding: .2rem 1.2rem;
        font-size: 1.8rem;
    }
}

.news-item {
    position: relative
}

.news-item .news-item-thumbnail {
    width: 45.6rem;
    height: 27.8rem
}

.news-item .news-item-time {
    margin-right: 1.5rem;
    margin-bottom: .6rem;
    margin-top: .4rem;
    letter-spacing: .04em
}

.news-item .img-wrapper {
    width: 100%;
    padding-bottom: 60.96%
}

.news-item .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0
}

.news-item .img-wrapper .new-tag {
    top: 0;
    right: 0
}

.news-item .news-item-title {
    margin-top: 1rem;
    padding-left: .9rem;
    padding-right: .9rem;
    max-height: 14rem;
    -webkit-line-clamp: 2;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    overflow: hidden
}

@media screen and (max-width: 1023px) {
    .news-item .img-wrapper {
        width: 100%;
        padding-bottom: 84%
    }
    .news-item .img-wrapper .new-tag {
        top: 0;
        left: 0
    }
    .news-item .news-item-time {
        margin-right: 0;
        margin-bottom: 0;
    }
}

.qna-item {
    border: 1px solid #3E7472;
    height: auto;
    max-height: fit-content;
    border-radius: 1.9rem;
    overflow: hidden;
    word-break: break-all
}

.qna-item+.qna-item {
    margin-top: 3rem
}

.qna-item .qna-question {
    min-height: 11.2rem;
    /* border-radius: 1.9rem; */
    border-top-left-radius: 1.9rem;
    border-top-right-radius: 1.9rem;
    border-bottom: 1px solid #707070;
    overflow: hidden;
    cursor: pointer;
    display: flex;
    flex-direction: column
}

.qna-item .qna-question:not(.active) {
    border: 0
}

.qna-item .qna-question .question-bg {
    background-color: #e8e8e8;
    display: flex;
    align-items: center;
    flex: 1
}

.qna-item .qna-question .question-bg .question-icon {
    width: 7.1rem;
    min-width: 7.1rem;
    height: 7.1rem;
    border-radius: 50%;
    background-color: #3E7472;
    position: relative;
    margin-left: 3.6rem
}

.qna-item .qna-question .question-bg .question-icon::after {
    content: "Q";
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 3.4rem;
    line-height: 10.4rem;
    letter-spacing: .05em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.qna-item .qna-question .question-bg .question-text {
    font-size: 2.8rem;
    letter-spacing: .05em;
    line-height: 4.32rem;
    padding: 1.2rem 0 1.2rem 4.1rem;
    flex: 1
}

.qna-item .qna-question .question-bg .btn-expand {
    width: 4rem;
    height: 5.3rem;
    /* background: url(../images/about-us–よくある質問/＋.png) no-repeat center; */
    margin-left: auto;
    margin-right: 3.6rem;
    flex-shrink: 0;
    background-size: cover;
}

.qna-item .qna-question .question-bg .btn-expand.active {
    background: url(../images/about-us–よくある質問/ー.png) no-repeat center
}

.qna-item .qna-answer {
    height: auto;
    position: relative;
    display: none
}

.qna-item .qna-answer .answer-icon {
    position: absolute;
    top: 2.5rem;
    left: 3.6rem
}

.qna-item .qna-answer .answer-icon .answer-icon-border {
    width: 7.1rem;
    height: 7.1rem;
    border-radius: 50%;
    border: 1px solid #3E7472;
    position: relative
}

.qna-item .qna-answer .answer-icon .answer-icon-border::after {
    content: "A";
    color: #3E7472;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 3.4rem;
    line-height: 10.4rem;
    letter-spacing: .05em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.qna-item .qna-answer .answer-text {
    font-size: 2rem;
    line-height: 1.8;
    letter-spacing: .05em;
    padding: 3rem 9rem 3rem 14.7rem;
    min-height: 12rem;
}

.qna-item .qna-answer .btn-collapse {
    width: 2.6rem;
    height: 5.3rem;
    /* background: url(../images/about-us–よくある質問/ー.png) no-repeat center; */
    position: absolute;
    bottom: .1rem;
    right: 3.9rem;
    cursor: pointer;
    background-size: cover;
}

@media screen and (max-width: 1023px) {
    .qna-item .qna-question .question-bg .question-icon {
        margin-left: .5rem
    }
    .qna-item .qna-question .question-bg .question-text {
        padding-left: 1.5rem;
        padding-right: 1rem
    }
    .qna-item .qna-question .question-bg .btn-expand {
        margin-right: 1.1rem
    }
    .qna-item .qna-answer .answer-icon {
        top: 1.6rem;
        left: .8rem
    }
    .qna-item .qna-answer .answer-text {
        padding: 2rem 3.5rem 1.4rem 9.4rem;
        font-size: 2.4rem;
    }
}

@media screen and (max-width: 1023px) {
    .qna-item .qna-question .question-bg .btn-expand {
        width: 3rem;
        height: 3rem
    }
    .qna-item .qna-answer .btn-collapse {
        right: 1.1rem
    }
    .qna-item .qna-answer .btn-collapse {
        width: 3rem
    }
}

.member-intro-item {
    width: 40.2rem;
    height: 26.2rem;
    display: flex;
    flex-direction: row;
    box-sizing: border-box;
    flex: 0 1 calc(33.3333333333% - 2.6666666667rem)
}

.member-intro-item .img-wrapper {
    width: 19.3rem
}

.member-intro-item .img-wrapper img {
    object-position: center
}

.member-intro-item .member-intro-info {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding-left: 1rem;
    padding-top: 4.1rem
}

.member-intro-item .member-intro-info .member-intro-name {
    font-weight: 600;
    font-size: 3.1rem;
    line-height: 9.5rem;
    letter-spacing: .05em
}

.member-intro-item .member-intro-info .member-intro-desc {
    font-weight: 600;
    font-size: 1.9rem;
    line-height: 3.4rem;
    letter-spacing: .05em;
    margin-top: -0.9rem;
    position: relative
}

.member-intro-item .member-intro-info .member-intro-desc .no-wrap {
    position: absolute;
    white-space: nowrap
}

.member-intro-item.member-intro-item-alt {
    width: 70.25rem;
    min-height: 33.1rem;
    flex: none
}

.member-intro-item.member-intro-item-alt .img-wrapper {
    width: 24.4rem;
    height: 33.1rem
}

.member-intro-item.member-intro-item-alt .member-intro-info {
    padding-left: unset;
    padding-top: 3.1rem
}

.member-intro-item.member-intro-item-alt .member-intro-info .underline {
    margin-top: -0.5rem
}

.member-intro-item.member-intro-item-alt .member-intro-info .member-intro-title,
.member-intro-item.member-intro-item-alt .member-intro-info .member-intro-name,
.member-intro-item.member-intro-item-alt .member-intro-info .member-intro-desc {
    padding-left: 8.8rem
}

.member-intro-item.member-intro-item-alt .member-intro-info .member-intro-name {
    margin-top: 2.4rem;
    font-size: 4rem;
    line-height: 1.8em;
    letter-spacing: .05em
}

.member-intro-item.member-intro-item-alt .member-intro-info .member-intro-desc {
    margin-top: .1rem;
    font-size: 2.4rem;
    line-height: 1.8em;
    letter-spacing: .05em;
    white-space: normal
}

.member-intro-item.advisory-intro-item {
    width: 45.4rem;
    height: 24.4rem;
    flex: 0 1 calc(33.3333333333% - 2.6666666667rem)
}

.member-intro-item.advisory-intro-item .img-wrapper {
    width: 18rem;
    /*height: 24.4rem*/
}

.member-intro-item.advisory-intro-item .member-intro-info {
    padding-left: 2.6rem;
    padding-top: 2.7rem
}

.member-intro-item.advisory-intro-item .member-intro-info .member-intro-name {
    margin-bottom: 1.2rem
}

.member-intro-item.advisory-intro-item .member-intro-info .member-intro-desc {
    font-size: 1.6rem;
    line-height: 3.6rem
}

@media screen and (max-width: 1023px) {
    .member-intro-item {
        flex: 0 1 calc(50% - .6rem)
    }
    .member-intro-item .member-intro-info {
        padding-left: 1rem;
        padding-top: 6.2rem
    }
    .member-intro-item .member-intro-info .member-intro-name {
        font-size: 2.4rem;
        line-height: 1.4em;
        letter-spacing: .05em
    }
    .member-intro-item .member-intro-info .member-intro-desc {
        font-size: 1.6rem;
        line-height: 3.4rem;
        letter-spacing: .05em;
        margin-top: .1rem
    }
    .member-intro-item.member-intro-item-alt .member-intro-info .member-intro-title,
    .member-intro-item.member-intro-item-alt .member-intro-info .member-intro-name,
    .member-intro-item.member-intro-item-alt .member-intro-info .member-intro-desc {
        padding-left: 5rem
    }
    .member-intro-item.advisory-intro-item {
        flex: 0 1 calc(50% - .7rem)
    }
    .member-intro-item.advisory-intro-item .member-intro-info {
        padding-left: .9rem;
        padding-top: 7.2rem
    }
    .member-intro-item.advisory-intro-item .member-intro-info .member-intro-name {
        margin-bottom: .2rem
    }
}

.about-us-board-member-page .member-intro-desc {
    white-space: nowrap
}

@media(max-width: 1023px) {
    .member-intro-item .member-intro-info .member-intro-desc .no-wrap {
        position: unset;
        white-space: wrap
    }
    .member-intro-item .img-wrapper {
        width: 18rem
    }
}

@media(min-width: 1024px) {
    body .about-us-board-member-page .member-intro .member-supervisor .member-intro-item.member-intro-item-alt .member-intro-info .member-intro-desc {
        line-height: 3.4rem
    }
}

.login-page {
    background-color: #e8e8e8;
}

.member-genron-logo{
    display: flex;
    justify-content: center;
    padding: 3rem 2rem;
    background-color: #ffff;
}
.member-genron-logo img{
    max-height: 10.5rem;
    width: auto;
}

.input-form h2 {
    text-align: center;
    font-size: 4rem;
    color: #121212
}

.input-form a {
    display: inline-block;
    font-size: 1.6rem;
    border-bottom: 1px solid #707070;
}

.login-menber {
    text-align: center;
    max-width: 103.2rem;
    margin: 0 auto
}

.login-menber h2 {
    font-size: 4rem;
    line-height: 14.2rem;
    color: #121212
}

.login-menber p {
    font-size: 1.6rem;
    margin-bottom: 3rem
}

.login-menber .click-send {
    display: inline-block;
    text-align: center;
    background-color: #3E7472;
    width: 60.7rem;
    height: 6rem;
    line-height: 6rem;
    border-radius: 2rem;
    border: none;
    margin-bottom: 4.3rem;
    font-size: 2.4rem;
    color: #fff
}

.item-input {
    margin-bottom: 5.5rem
}

.item-input p {
    color: #121212;
    font-size: 2.4rem;
    margin-bottom: 1.5rem
}

.item-input input {
    font-size: 2.4rem;
    width: 100%;
    padding: 2rem;
    border: 1px solid #707070
}

.item-input input:focus {
    box-shadow: none
}

.input-password {
    position: relative
}

.input-password .show-password {
    position: absolute;
    right: 2rem;
    bottom: 50%;
    transform: translateY(50%);
    line-height: 1;
    cursor: pointer
}

.input-password .show-password svg {
    height: 3rem;
    width: 3rem
}

.input-password .show-password .eye-on {
    display: none
}

.input-password .show-password.off .eye-on {
    display: inline-flex
}

.input-password .show-password.off .eye-off {
    display: none
}

@media(max-width: 1023px) {
    .page-login .content-login .form-table {
        display: block;
        padding-top: 8rem
    }
    .page-login .content-login .form-table .left-include .input-form .item-input input {
        width: 100%;
        font-size: 2rem
    }
    .page-login .content-login .form-table .left-include .input-form a {
        top: auto
    }
    .page-login .content-login .form-table .left-include .input-form .click-send {
        width: 100%;
        margin-bottom: 4rem
    }
    .page-login .content-login .form-table .line-lg {
        display: inline-block;
        width: 100%;
        min-height: 1px;
        margin: 5rem 0
    }
    .page-login .content-login .form-table .right-include {
        margin-bottom: 5.7rem;
        padding-right: 0
    }
    .page-login .content-login .form-table .right-include h2 {
        text-align: center
    }
    .page-login .content-login .form-table .right-include .click-send {
        width: 100%
    }
    .page-login .content-login .login-menber::before {
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        background-color: #707070
    }
    .page-login .content-login .login-menber {
        padding: 0 2rem
    }
    .page-login .content-login .login-menber h2 {
        margin: 2rem 0;
        line-height: 7.2rem
    }
}

@media screen and (max-width: 767px) {
    .page-login .content-login .form-table .left-include .input-form .item-input input {
        font-size: 2.5rem
    }
    .page-login .content-login .form-table .left-include .input-form .click-send {
        margin-top: .5rem;
        height: 6rem;
        margin-bottom: 5rem
    }
    .page-login .content-login .form-table .left-include .input-form a {
        text-decoration: underline;
        left: 29%;
        border-bottom: none
    }
    .page-login .content-login .form-table .line-lg {
        margin-bottom: 3rem
    }
    .page-login .content-login .form-table .right-include {
        padding-left: 6rem;
        padding-right: 6rem;
        margin-bottom: 0
    }
    .page-login .content-login .form-table .right-include .info-option {
        padding-left: 7rem;
        padding-right: 2rem;
        margin-bottom: 4rem;
        padding-bottom: 2rem
    }
    .page-login .content-login .form-table .right-include .info-option p {
        line-height: 3.1rem
    }
    .page-login .content-login .form-table .right-include .click-send {
        height: 6rem;
        font-size: 2rem;
        margin-bottom: 5.3rem
    }
    .page-login .content-login .login-menber {
        padding: 0 3rem
    }
    .page-login .content-login .login-menber h2 {
        margin-top: 0rem;
        padding-top: 5.6rem
    }
    .page-login .content-login .login-menber p {
        font-size: 2.4rem;
        line-height: 4.32rem;
        text-align: center;
        margin-bottom: 3.5rem;
        font-weight: 500
    }
}

.page-forget-pw .content-forget-pw {
    background-color: #e8e8e8;
    margin: 0 auto;
    padding-bottom: 10rem
}

.page-forget-pw .content-forget-pw .container .forget-login {
    padding-top: 9.5rem;

    margin: 0 auto
}

.page-forget-pw .content-forget-pw .container .forget-login h2 {
    font-weight: 600;
    font-size: 4rem;
    line-height: 7.2rem;
    color: #121212
}

.content-forget-pw .login-menber p {
    margin-bottom: 4rem
}

.content-forget-pw .login-menber button {
    margin-bottom: 14rem
}

@media(max-width: 1023px) {
    .page-forget-pw .content-forget-pw {
        padding-bottom: 3rem
    }
    .page-forget-pw .content-forget-pw .container .forget-login {
        padding-top: 4rem
    }
    .page-forget-pw .content-forget-pw .container .forget-login h2 {
        margin-bottom: 4rem
    }
    .page-forget-pw .content-forget-pw .container .forget-login p {
        /* font-size: 2.4rem;
        line-height: normal;
        max-width: 52rem;
        text-align: center;
        margin: 0 auto 2rem auto */
    }
    .page-forget-pw .content-forget-pw .container .forget-login input {
        width: 100%;
        font-size: 2.5rem
    }
    .page-forget-pw .content-forget-pw .container .forget-login button {
        letter-spacing: .5rem;
        margin-bottom: 3.5rem
    }
    .page-forget-pw .content-forget-pw .container .login-menber {
        padding: 0
    }
    .page-forget-pw .content-forget-pw .container .login-menber button {
        width: 100%
    }
    .page-forget-pw .content-forget-pw .container .input-form {
        margin-left: 0;
        margin-right: 0;
        padding: 0
    }
    .page-forget-pw .content-forget-pw .container .input-form .click-send {
        margin-top: 4rem;
        margin-bottom: 9rem
    }
    .page-forget-pw .content-forget-pw .login-menber {
        padding: 0 2.5rem
    }

    .page-forget-pw.enter-new-password .body-content {
        margin-top: 9rem;
        padding: 0 2.5rem
    }
    .page-forget-pw.enter-new-password .content-forget-pw .container .forget-login input {
        margin-top: 1rem;
        margin-bottom: 0
    }
    .page-forget-pw.enter-new-password .body-content {
        gap: 3rem
    }
    .page-forget-pw.enter-new-password .content-forget-pw .container .forget-login p {
        padding: 0 2.5rem
    }
    .page-forget-pw.enter-new-password .content-forget-pw .container .input-form .click-send {
        margin-top: 6rem;
        margin-bottom: 12rem
    }
}

.sidebar {
    position: relative;
    top: 0;
    left: 0;
    bottom: 0;
    display: block;
    border-right: 1px solid #999;
}

.sidebar .nav-menu {
    width: 44.4rem;
    background-color: #fff;
    text-align: center;
    min-height: 13.2rem;
    position: sticky;
    top: 0;
}

.sidebar .nav-menu ul {
    padding-left: 0
}

.sidebar .nav-menu ul li {
    cursor: pointer
}

.sidebar .nav-menu ul li a {
    display: block;
    width: 100%;
    height: 100%
}

.sidebar .nav-menu ul li:first-child {
    min-height: 22.9rem;
    display: flex;
    flex-direction: column;
    background-image: none;
    text-align: center;
    padding: 5.4rem 4.5rem;
}

.sidebar .nav-menu ul li:first-child span {
    margin-left: 2rem
}

.sidebar .nav-menu ul li:first-child a {
    margin-bottom: 0.5rem;
    display: inline-block
}

.sidebar .nav-menu ul img {
    width: 6.6rem;
    height: 6.6rem;
    background-size: cover;
    margin: 0 auto
}

.sidebar .nav-menu li {
    list-style: none;
    text-align: left;
    border-bottom: 1px solid #999;
    padding: 3.5rem 5rem 3rem 11.5rem;
    justify-content: space-between;
    background-image: url(../images/mypage/arrowright.png);
    background-size: inherit;
    background-repeat: no-repeat;
    background-position: right 5rem center
}

.sidebar .nav-menu li a {
    font-size: 2.4rem;
    font-family: "Hiragino Kaku Gothic ProN";
    color: #121212
}

.sidebar .nav-menu li.active {
    background-color: #3E7472;
    background-image: url("../images/mypage/whitearrowright.png")
}

.sidebar .nav-menu li.active a {
    color: #fff
}

.sidebar-mb {
    display: none
}

@media(max-width: 1023px) {
    .sidebar {
        display: none
    }
    .sidebar-mb {
        display: block;
        background-color: #fff
    }
    .sidebar-mb ul {
        padding-left: 0;
        display: flex;
        align-items: center;
        padding: 0 1.5rem;
        align-items: center
    }
    .sidebar-mb ul li {
        list-style: none;
        height: 8rem
    }
    .sidebar-mb ul li a {
        display: inline-block;
        height: 100%;
        line-height: 8rem;
        font-size: 2.4rem;
    }
    .sidebar-mb ul li a span {
        border-right: 1px solid #707070;
        padding-top: 1rem;
        padding-bottom: 1rem;
        padding-right: .9rem;
        padding-left: .9rem
    }
    .sidebar-mb ul li:last-child a span {
        border-right: none
    }
}

.green-title {
    padding: 0 3.8rem;
    color: #fff;
    background-color: #3E7472;
    font-size: 4rem;
    line-height: 1.53;
    margin-bottom: 4.3rem
}

.green-title .small-text {
    font-size: 1.6rem;
    font-weight: 400
}

@media(max-width: 1023px) {
    .green-title {
        margin-bottom: 2.5rem
    }
}

.about-activity-item {
    background-color: #fff;
    border-radius: 3.9rem;
    padding: 3.7rem 2.9rem 1.8rem;
    height: 100%;
}

.about-activity-item .title {
    line-height: 1.5;
    font-size: 3.6rem;
    color: #3E7472;
    padding-bottom: 2.3rem;
    border-bottom: 1px solid #707070;
    margin-bottom: 2.8rem
}

.about-activity-item .desc {
    line-height: 1.8;
    overflow: hidden;
    transition: all .3s;
    position: relative
}


.about-activity-item.active .btn-plus-content::before {
    content: "-"
}

@media(max-width: 1023px) {
    .about-activity-item {
        padding: 3.7rem 2.9rem 3.7rem
    }
    .about-activity-item .desc {
        height: auto;
        font-size: 2.4rem
    }
    .about-activity-item .btn-plus-content {
        display: none
    }
}

.about-activity-item div.btn-plus-content {
    cursor: auto
}

.job-item {
    padding: 4.2rem 0 3.3rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 2rem;
    border-bottom: 1px solid #707070
}

.job-item .title {
    flex: 1;
    font-weight: bold
}

.job-item .arrow {
    padding-right: 4rem
}

@media(max-width: 1023px) {
    .job-item .title {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .job-item .arrow {
        padding-right: 0
    }
    .job-item .arrow svg {
        width: 10.8rem
    }
}

.image-text-box {
    background-color: #fff;
    padding: 4rem 5.8rem 3.2rem;
    border: 1px solid #3E7472
}

.image-text-box .title {
    font-size: 4rem;
    text-align: center;
    color: #3E7472;
    padding-bottom: 2.1rem;
    border-bottom: 1px solid #707070
}

.image-text-box .box-content {
    display: flex;
    column-gap: 2.4rem;
    padding-top: 4.1rem
}

.image-text-box .box-content .desc-left {
    flex: 1;
    font-size: 2.4rem
}

.image-text-box .box-content .desc-left ul {
    list-style: none;
    padding-left: 0
}

.image-text-box .box-content .desc-left ul li {
    /* font-size: 2.4rem; */
    padding-left: 5rem;
    /* line-height: 2; */
    position: relative
}

.image-text-box .box-content .desc-left ul li::before {
    content: "";
    width: 3rem;
    height: 3rem;
    position: absolute;
    background-image: url("../images/become-a-member/icon-check.png");
    background-size: contain;
    background-repeat: no-repeat;
    top: 1rem;
    left: .5rem
}

.image-text-box .thumb-right {
    width: 36.8rem
}

.image-text-box .thumb-right img {
    width: 100%;
    height: auto
}

@media(max-width: 1023px) {
    .image-text-box {
        padding: 0
    }
    .image-text-box .title {
        padding: 2.4rem 3rem 1.68rem
    }
    .image-text-box .box-content {
        flex-wrap: wrap;
        padding: 2.5rem 2.8rem 5rem
    }
    .image-text-box .box-content .desc-left {
        width: 100%;
        margin-bottom: 2rem
    }
    .image-text-box .box-content .thumb-right {
        width: 100%
    }
}

.work-example-item {
    background-color: #fff;
    border-radius: 2.2rem;
    min-height: 21.3rem
}

.work-example-item .title {
    background-color: #3E7472;
    display: inline-flex;
    border-radius: 1.3rem;
    min-width: 42.4rem;
    color: #fff;
    column-gap: 2rem;
    align-items: center;
    font-size: 2.4rem;
    font-weight: bold;
    padding: .9rem 3.8rem;
    line-height: 1
}

.work-example-item .title .icon {
    width: 4.3rem;
    height: 4.3rem
}

.work-example-item .context {
    padding: 1rem 2rem;
    /* font-size: 1.6rem; */
    letter-spacing: .05rem
}

@media(max-width: 1023px) {
    .work-example-item:not(:last-child) {
        margin-bottom: 3.2rem
    }
    .work-example-item .context {
        /* font-size: 2.4rem */
    }
    .work-example-item .context {
        padding-left: 2.4rem;
        padding-right: 2.4rem
    }
}

.back-to-top {
    height: 9.3rem;
    width: 9.3rem;
    display: flex;
    flex-direction: column;
    padding: 1rem;
    align-items: center;
    justify-content: center;
    gap: .9rem;
    position: fixed;
    right: 7.6rem;
    bottom: 20rem;
    background-color: #3E7472;
    border: none;
    outline: none !important;
    cursor: pointer;
    z-index: 99;
    transition: all .3s;
    opacity: 0;
    visibility: hidden;
    line-height: 1
}

.back-to-top.show {
    opacity: 1;
    visibility: visible
}

.back-to-top .icon svg {
    width: 4rem;
    height: auto
}

.back-to-top .text {
    font-size: 1.4rem;
    font-weight: bold;
    color: #fff;
    text-decoration: none
}

@media(max-width: 1023px) {
    .back-to-top {
        right: 4.3rem;
        padding: 0;
        bottom: 35rem;
    }
}

.publication-item {
    display: inline-flex;
    flex-direction: row;
    align-items: stretch
}

.publication-item .publ-item-thumbnail {
    object-fit: cover;
    width: 19rem;
    height: 29.6rem
}

.publication-item .publ-item-info {
    display: block;
    margin-left: 1rem
}

.publication-item .publ-item-info .publ-item-title {
    margin-top: 2.5rem;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: .5rem
}

.publication-item .publ-item-info p.publ-item-desc {
    font-size: 1.6rem;
    font-weight: 400;
    padding-top: .5rem;
    height: 11.5rem;
    letter-spacing: 0rem;
    margin-bottom: 1.5rem;
    line-height: 2.25;
    overflow: hidden;
    -webkit-line-clamp: 3;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal
}

.publication-item .group-btn {
    display: block
}

.publication-item .btn-base.btn-publ {
    font-size: 1.4rem;
    padding: 1rem 0;
    text-align: center;
    width: 15.564rem;
    height: 4rem;
    margin-bottom: 1rem;
    display: block
}

.publication-item .btn-base:hover {
    color: #f3e5f3;
    background: #126e3c
}

.publication-item .btn-base.btn-white:hover {
    color: #fff;
    background: #126e3c
}

@media(max-width: 1023px) {
    .publication-item .publ-item-thumbnail {
        width: 20.4rem;
        height: 32.2rem
    }
    .publication-item .publ-item-info {
        padding-left: 2.7rem
    }
    .publication-item .publ-item-info .publ-item-title {
        font-size: 2.4rem;
        margin-top: 2.5rem
    }
    .publication-item .publ-item-info p.publ-item-desc {
        font-size: 2.4rem;
        line-height: 1.6;
        -webkit-line-clamp: 3
    }
    .publication-item .btn-base.btn-publ {
        width: 32.8rem;
        height: 5.3rem;
        font-size: 2.4rem;
        border-radius: 3rem
    }
}

.sort {
    padding-top: 2.4rem;
    display: block;
    float: right
}

.sort .sort-title {
    display: inline;
    margin-right: 1.2rem
}

.sort .select-menu {
    display: inline;
    font-size: 1.6rem;
    padding-left: 2rem;
    background: url(../images/arrow-down-black.svg) no-repeat right;
    appearance: none;
    background-position-x: calc(100% - 1.1rem);
    cursor: pointer;
    outline: none !important;
    background-size: 1.7rem;
}

.sort .select-menu:focus-visible {
    outline-color: #3E7472
}

.publi-item {
    position: relative;
    height: 17.6rem;
    padding-left: 5rem;
    margin-bottom: 2rem;
    display: block
}

.publi-item .item-header {
    display: flex;
    margin-top: 3rem
}

.publi-item .item-header .item-time {
    font-size: 1.4rem;
    float: left;
    padding-top: .2rem
}

.publi-item .arrow-icon {
    position: absolute;
    width: 6.7rem;
    right: 2.5rem;
    bottom: 2.5rem;
    display: block;
    opacity: 50%
}

.publi-item .arrow-icon .line1 {
    display: block;
    width: 3rem;
    height: .1rem;
    float: inline-end;
    background-color: #707070;
    transform: rotate(20deg)
}

.publi-item .arrow-icon .line2 {
    display: block;
    width: 6.7rem;
    height: .1rem;
    background-color: #707070;
    margin-top: .5rem
}

.publi-item .item-label {
    max-width: 89%;
    text-align: center;
    height: 3.7rem;
    padding: .8rem 1rem;
    background-color: #003a3e;
    margin-left: 1.5rem;
    border-radius: 1rem
}

@media screen and (max-width: 1023px) {
    .publi-item .item-label {
        max-width: 74%
    }
}

.publi-item .item-label span {
    display: block;
    overflow: hidden;
    text-wrap: nowrap;
    font-weight: 400;
    font-size: 1.6rem;
    color: #fff;
    line-height: 1.4;
    letter-spacing: .05rem
}

.publi-item .item-content {
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: .05rem;
    line-height: 4rem;
    padding-right: 23rem;
    display: block;
    padding-bottom: 1.5rem
}

@media(max-width: 1023px) {
    .publi-item {
        height: auto;
        min-height: 20rem;
        max-height: 26.4rem
    }
    .publi-item .item-content {
        padding-right: 4.8rem;
        font-size: 2.4rem;
        padding-bottom: 3rem
    }
    .publi-item .item-header .item-time {
        font-size: 1.6rem
    }
    .publi-item .item-label {
        margin-left: 1rem
    }
}

.agenda-intro-box {
    display: flex;
    column-gap: 8rem
}

.agenda-intro-box .content-left {
    width: 100%;
    flex: 1
}

.agenda-intro-box .content-right {
    width: 52.6rem
}

.agenda-intro-box .sub-title {
    color: #3E7472;
    border-bottom: 1px solid #3E7472;
    line-height: 1.4;
    font-size: 2.4rem;
    margin-bottom: 2.5rem
}

.agenda-intro-box .title {
    font-size: 4rem;
    line-height: 1.8;
    color: #3E7472;
    margin-bottom: 3.5rem;
    max-width: 75rem
}

.agenda-intro-box .title span {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 75%, #e6c123 76%, #e6c123 100%)
}

.agenda-intro-box .thumb-ratio {
    padding-bottom: 56%;
    width: 100%;
    height: 0;
    position: relative
}

.agenda-intro-box .thumb-ratio img,
.agenda-intro-box .thumb-ratio iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    left: 0;
    top: 0
}

@media(max-width: 1023px) {
    .agenda-intro-box {
        flex-wrap: wrap
    }
    .agenda-intro-box .content-left {
        width: 100%;
        margin-bottom: 4rem
    }
    .agenda-intro-box .content-right {
        width: 100%
    }
    .agenda-intro-box .title {
        letter-spacing: 0;
        margin-bottom: 2.4rem
    }
    .agenda-intro-box .desc {
        font-size: 2.4rem;
        line-height: 1.8
    }
}

html.voice-popup-open {
    overflow: hidden
}

.voice-popup {
    width: 100%;
    height: 100%;
    object-fit: cover;
    overflow-y: auto;
    position: fixed;
    z-index: 102;
    top: 0;
    left: 0;
    display: none;
    justify-content: center;
    padding: 4rem 0
}

.voice-popup .voice-body-content {
    background-color: #fff;
    max-width: 144rem;
    width: 100%;
    height: fit-content;
    position: relative;
    z-index: 999;
    border: 1px solid #707070;
    padding: 7rem 5.4rem 5.3rem
}

.voice-popup .voice-body-content .close-voice-popup {
    position: absolute;
    padding: 0;
    background-color: rgba(0, 0, 0, 0);
    border: 0;
    right: 3.2rem;
    top: 3.2rem;
    cursor: pointer;
    z-index: 9
}

.voice-popup.show {
    display: flex
}

.voice-overlay {
    position: fixed;
    z-index: 101;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    display: none
}

.voice-popup-open .voice-overlay {
    display: block
}

.voice-popup-slider .swiper-voice-arrows {
    display: flex;
    justify-content: space-between;
    margin-top: 6rem
}

.voice-popup-slider .swiper-voice-arrows .swiper-voice-next,
.voice-popup-slider .swiper-voice-arrows .swiper-voice-prev {
    cursor: pointer
}

.voice-popup-slider .swiper-voice-arrows .swiper-voice-next.swiper-button-disabled,
.voice-popup-slider .swiper-voice-arrows .swiper-voice-prev.swiper-button-disabled {
    opacity: .5
}

.voice-popup-slider .swiper-voice-arrows .swiper-voice-next svg,
.voice-popup-slider .swiper-voice-arrows .swiper-voice-prev svg {
    height: 2.4rem;
    width: auto
}

.voice-slide-slide .voice-pp-header {
    display: flex;
    column-gap: 6.9rem
}

.voice-slide-slide .voice-pp-header .avatar img {
    width: 40rem;
    height: 40rem;
    object-fit: cover
}

.voice-slide-slide .voice-pp-header .user-info {
    flex: 1;
    width: 100%
}

.voice-slide-slide .user-info {
    padding-top: 1rem
}

.voice-slide-slide .user-info .name {
    font-size: 4rem;
    font-weight: bold;
    margin-bottom: 2.4rem
}

.voice-slide-slide .user-info .name .name-en {
    font-size: 2.4rem;
    margin-left: 2rem
}

.voice-slide-slide .user-info .time {
    font-size: 4rem;
    font-weight: bold;
    margin-bottom: 2rem
}

.voice-slide-slide .user-info .desc {
    margin-top: 7rem;
    font-size: 2.4rem;
    line-height: 1.8
}

.voice-slide-slide .voice-pp-content h3 {
    color: #3E7472;
    margin-top: 6.2rem;
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.2;
    position: relative;
    margin-bottom: 2.4rem
}

.voice-slide-slide .voice-pp-content h3 small {
    font-size: 2.4rem;
    display: inline-flex;
    line-height: 1.8
}

.voice-slide-slide .voice-pp-content h3::after {
    content: "";
    width: 100%;
    height: .2rem;
    background-color: #3E7472;
    position: absolute;
    bottom: .4rem;
    left: 0
}

@media(max-width: 1023px) {
    .voice-popup {
        padding: 0
    }
    .voice-popup .voice-body-content {
        padding: 2.5rem
    }
    .voice-slide-slide .voice-pp-header {
        column-gap: 2.5rem
    }
    .voice-slide-slide .voice-pp-header .avatar img {
        width: 37rem;
        height: 37rem
    }
    .voice-slide-slide .user-info .name .name-en {
        display: block;
        margin-left: 0
    }
    .voice-slide-slide .user-info .name {
        line-height: 1.8
    }
    .voice-popup .voice-body-content .close-voice-popup {
        top: 2.2rem;
        right: 2.2rem
    }
    .voice-popup .voice-body-content .close-voice-popup svg {
        width: 4rem;
        height: 4rem
    }
    .voice-slide-slide .info-desc {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .voice-slide-slide .voice-pp-content h3 {
        font-size: 2.4rem
    }
    .voice-popup-slider .swiper-voice-arrows {
        margin-top: 4rem
    }
}

.donate-page,
.donate-details-page {
    background-color: #fff
}

.donate-page section,
.donate-details-page section {
    margin-bottom: 9.4rem
}

.donate-page section.padding,
.donate-details-page section.padding {
    padding-bottom: 6rem
}

.donate-page section .section-bg-title,
.donate-details-page section .section-bg-title {
    margin-bottom: 4rem
}

.donate-page .section-body,
.donate-details-page .section-body {
    display: flex;
    flex-wrap: wrap;
    gap: 3rem
}

.donate-page .section-body .section-image-wrap,
.donate-details-page .section-body .section-image-wrap {
    height: 26rem;
    width: calc(30% - 1.5rem)
}

.support-us-page .support-us-intro-desc {
    overflow: hidden;
    /* max-height: 18rem; */
}
.support-us-page .support-us-intro-desc {
    max-height: unset;
}

.donate-page .section-body .section-image-wrap .section-image,
.donate-details-page .section-body .section-image-wrap .section-image {
    width: 100%;
    height: 100%;
    border-radius: 2rem;
    object-fit: cover;
    object-position: center
}

.donate-page .section-body .section-content,
.donate-details-page .section-body .section-content {
    background-color: #f4f4f4;
    padding: 2rem 3rem;
    border-radius: 2rem;
    width: calc(70% - 1.5rem)
}

.donate-page .button-wrap,
.donate-details-page .button-wrap {
    display: flex;
    gap: 3rem;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-top: 4rem
}

.donate-page .btn,
.donate-details-page .btn {
    display: inline-block;
    text-align: center;
    user-select: none;
    text-wrap: nowrap;
    padding: 0.6rem 6rem;
    border-radius: 2rem;
    font-size: 2.4rem;
    transition: all .3s linear;
    font-weight: bold;
}

.donate-page .btn.btn-outline,
.donate-details-page .btn.btn-outline {
    color: #3E7472;
    border: 1px solid #3E7472
}

.donate-page .btn.btn-outline:hover,
.donate-page .btn.btn-outline:active,
.donate-details-page .btn.btn-outline:hover,
.donate-details-page .btn.btn-outline:active {
    color: #fff;
    border: 1px solid #3E7472;
    background-color: #3E7472
}

.donate-page .donate-section,
.donate-details-page .donate-section {
    margin-top: 11rem
}

.donate-page.individual-donation .page-banner .banner-text {
    padding: 4rem
}

.donate-page.individual-donation .donate-section .section-bg-title {
    padding-right: 4rem;
    font-size: 3.2rem;
    align-items: start;
    overflow: hidden;
    max-height: 6.1rem
}

@media screen and (max-width: 1023px) {
    .donate-page.individual-donation .donate-section .section-bg-title {
        line-height: 1.8
    }
}

.donate-page.individual-donation .donate-section .section-content p {
    overflow: hidden;
    text-align: justify;
    max-height: 22rem
}

@media screen and (max-width: 1023px) {
    .donate-page.individual-donation .donate-section .section-content p {
        max-height: 65rem
    }
}

.donate-page.individual-donation .button-wrap a {
    min-width: 37.2rem;
}

.section-bottom {
    margin-top: 3.6rem
}

.section-bottom-title {
    text-align: center;
    color: #3E7472;
    font-size: 2.4rem;
    position: relative;
    font-weight: bold
}

.section-bottom-title::after {
    content: "";
    position: absolute;
    width: 8rem;
    height: 3px;
    background-color: #3E7472;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.section-bottom .bottom-item-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 2.6rem;
    margin-top: 2.25rem
}

.section-bottom .bottom-item {
    width: calc((100% - 7.8rem)/4)
}

.section-bottom .bottom-item .item-img {
    height: 20rem;
    object-fit: cover;
    object-position: center
}

.section-bottom .bottom-item .item-title {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 600
}

.donate-details-page .banner-text {
    background-color: rgba(18, 58, 62, .81)
}

.donate-details-page .title {
    text-align: center
}

.donate-details-page .section-body {
    display: block
}

.donate-details-page .section-body .section-image-wrap {
    width: auto;
    margin-bottom: 5rem;
    max-width: 90rem;
    max-height: 50rem
}

.donate-details-page .section-body .section-image {
    border-radius: 0 !important
}

.donate-details-page .section-bg-title {
    background-color: #123a3e
}

.list-support-archives {
    margin-top: 8rem
}

.list-support-archives .section-bg-title {
    background-color: #3E7472;
    font-size: 3.2rem
}

.list-support-archives .bottom-item-wrap {
    row-gap: 6rem;
    margin-bottom: 12rem
}

@media screen and (max-width: 1023px) {
    .support-us-hometown-tax-donation .text-content-sp{
        font-size: 2.4rem
    }
    .support-us-hometown-tax-donation .donation-agency-title {
        font-size: 4rem
    }
    .support-us-hometown-tax-donation .notarized-will-donation.support-local {
        margin-top: 7rem
    }
    .donate-details-page .section-image-wrap {
        margin-bottom: 3.6rem
    }
    .donate-details-page .button-wrap {
        margin-top: 10rem
    }
    .donate-details-page .section-body {
        font-size: 2.4rem
    }
    .general-credit {
        padding-top: 6.7rem !important
    }
    .general-credit .general-credit-title {
        margin-bottom: 6.2rem
    }
    .general-credit .general-credit-title .general-credit-membership {
        font-size: 4rem
    }
    .general-credit .message-completed {
        padding: 5rem 5rem 6.3rem
    }
    .general-credit .message-completed .message {
        font-size: 3.2rem;
        padding: 0;
        line-height: 1.4
    }
    .general-credit .message-completed .corporate-form-button {
        margin: 0
    }
    .individual-donation .bottom-item-wrap {
        margin-bottom: 6rem
    }
    .donate-page .section-body .section-image-wrap,
    .donate-page .section-body .section-content {
        width: 100%;
        font-size: 2.4rem
    }
    .donate-page .section-body .section-image-wrap {
        max-height: 46rem
    }
    .donate-page .donate-section.padding {
        padding-bottom: 1rem
    }
    .donate-page .donate-section.padding .button-wrap {
        gap: 4rem
    }
    .donate-page .button-wrap {
        padding: 2rem 4rem 0
    }
    .donate-page .button-wrap .btn {
        width: 100%
    }
    .section-bottom .bottom-item-wrap .bottom-item {
        width: 100%
    }
    .section-bottom .bottom-item-wrap .bottom-item .item-img {
        height: 40rem
    }
    .section-bottom .bottom-item-wrap .item-title {
        font-size: 2.4rem
    }
    .list-support-archives {
        margin-top: 3.5rem
    }
}

.genron-npo {
    background-color: #e8e8e8;
    padding: 5.7rem 0 8.5rem 0
}

.genron-npo .genron-npo-wrap {
    display: flex;
    gap: 5rem
}

.genron-npo .genron-npo-left {
    width: 100%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    margin-top: 7.5rem;
    flex: 1
}

.genron-npo .genron-npo-left h2 {
    max-width: 41rem;
    margin-bottom: 2.5rem;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.genron-npo .genron-npo-left .desc {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25
}

.genron-npo .genron-npo-right {
    width: 77.7rem
}

.challenges h2 {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: center;
    margin-bottom: 5rem;
    margin-top: 4.58rem
}

.challenges h2 span {
    color: #3E7472;
    font-weight: 600;
    font-size: 8rem;
    letter-spacing: .05em;
    line-height: 1
}

.challenges .challenges-item {
    min-height: 45.7rem;
    border-radius: 2rem;
    color: #fff;
    padding: 0 6.1rem 6.1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    background-position: center;
    background-size: cover
}

.challenges .challenges-item .detail {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.5;
    color: #fff;
    position: absolute;
    bottom: 2.1rem;
    right: 1.5rem
}

@media screen and (max-width: 1023px) {
    .challenges .challenges-item .detail {
        bottom: 1.5rem;
        right: 2rem
    }
}

.challenges .item-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.375;
    margin-bottom: 3.5rem;
    margin-top: 15rem
}

.challenges .item-desc {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    max-width: 59.3rem
}

.challenges .challenges-1 {
    background-image: url("../images/our-work/challenges.png")
}

.challenges .challenges-2 {
    background-image: url("../images/our-work/challenges-2.png")
}

.challenges .challenges-3 {
    background-image: url("../images/our-work/challenges-3.png")
}

.challenges .challenges-4 {
    background-image: url("../images/our-work/challenges-4.png")
}

.challenges .challenges-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    margin-bottom: 8.5rem
}

.our-work-page .item-title,
.our-work-page .item-desc,
.our-work-page .genron-npo-left h2,
.our-work-page .genron-npo-left .desc {
    overflow: hidden
}

.our-work-page .item-title {
    max-height: 5rem
}

.our-work-page .item-desc,
.our-work-page .genron-npo-left .desc {
    max-height: 18rem
}

@media screen and (max-width: 1023px) {
    .our-work-page .item-desc,
    .our-work-page .genron-npo-left .desc {
        max-height: 26rem
    }
}

.our-work-page .genron-npo-left h2 {
    max-height: 14rem
}

.our-work-page .forum .section-title-line,
.our-work-page .agenda-item .agenda-item-date {
    color: #222
}

.our-work-page .forum .section-title-line span,
.our-work-page .agenda-item .agenda-item-date span {
    color: #222
}

.our-work-page .agenda-item .agenda-item-date {
    font-weight: 400
}

.our-work-page .genron-npo-right>img {
    height: 100%
}

.forum {
    padding-top: 6rem;
    background-color: #e8e8e8;
    margin-bottom: 0
}

.forum .section-title-line {
    margin-bottom: 6rem
}

@media screen and (max-width: 1023px) {
    .our-work-page .challenges .challenges-item {
        min-height: 42rem
    }
    .our-work-page .challenges .challenges-item .item-desc {
        max-height: 22rem
    }
    .genron-npo {
        padding-top: 4.1rem;
        padding-bottom: 6.3rem
    }
    .genron-npo .genron-npo-wrap {
        display: block;
    }
    .genron-npo .genron-npo-left {
        width: 100%;
        max-width: 100%;
        text-align: left;
        align-items: flex-start;
        margin-top: 0;
        margin-bottom: 4rem !important;
    }
    .our-work-page .genron-npo-right>img{
        height: auto;
    }
    .genron-npo .genron-npo-left h2 {
        font-size: 4rem;
        max-width: 100%
    }
    .genron-npo .genron-npo-left .desc {
        max-width: unset;
        font-size: 2.4rem;
        max-width: 100%
    }
    .genron-npo .genron-npo-right {
        width: 100%
    }
    .challenges .item-title {
        margin-top: 0
    }
    .challenges .challenges-wrap {
        grid-template-columns: repeat(1, 1fr);
        gap: 1.5rem
    }
    .challenges .challenges-item {
        width: 100%;
        background-repeat: no-repeat;
        background-size: cover;
        padding: 4.9rem 4.3rem
    }
    .challenges .agenda-wrap {
        gap: 20px;
        flex-direction: column;
        margin-bottom: 40px;
        margin-top: 30px
    }
    .challenges .agenda-wrap .agenda-item {
        width: 100%
    }
    .challenges .agenda .agenda-content .row {
        grid-template-columns: repeat(1, 1fr)
    }
    .challenges .agenda-wrap .agenda-item .agenda-info .image-title {
        font-size: 24px
    }
    .challenges .agenda-item .agenda-info .date {
        font-size: 16px
    }
    .challenges .item-desc {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .btn-base.btn-alt {
        min-width: 62rem
    }
}

.article-detail-page h2.article-title {
    margin-top: 4rem
}

.article-detail-page .article p {
    padding-bottom: 3.5rem
}

.article-detail-page .article .article-top .banner-img {
    margin-top: 5rem;
    margin-bottom: 1rem;
    width: 100%
}

.article-detail-page .article-top {
    margin-bottom: 5.2rem
}

.article-detail-page .article-section {
    margin-bottom: 4rem
}

.article-detail-page .article-section .section-title {
    margin-bottom: 2.5rem
}

.article-detail-page .article-section .content-text {
    padding-right: 4rem
}

.article-detail-page .column {
    background-color: #e8e8e8;
    padding: 2.8% 5.3% 1% 5.3%;
    margin-bottom: 5.6rem
}

.article-detail-page .column>.column-heading {
    padding-bottom: 1.2rem;
    border-bottom: 1px solid #707070;
    margin-bottom: 2.5rem
}

.article-detail-page .column-green {
    border: 1px solid #3E7472;
    padding: 2.8% 5.3% 1% 5.3%;
    margin-bottom: 6rem
}

.article-detail-page .column-green>.column-heading-green {
    padding-bottom: 1.2rem;
    border-bottom: 1px solid #3E7472;
    color: #3E7472;
    margin-bottom: 2.5rem
}

.news-details-page .news-title {
    margin-top: 4.3rem;
}

.news-details-page .news-title .article-header-title {
    width: 80%;
    font-size: 4rem;
    text-align: justify
}

.news-details-page .news-title .article-time {
    margin-top: -0.4rem;
    letter-spacing: .04em
}

.news-details-page .article-banner {
    width: 100%;
    height: 53.8rem;
    margin-top: 3.8rem;
    height: auto
}

.news-details-page .article-content {
    margin-top: 3.44rem
}

.news-details-page .article-content p:not(:first-child) {
    margin-top: 3.6rem
}

.news-details-page .latest-news {
    margin-top: 5.9rem;
    margin-bottom: 8rem
}

.news-details-page .latest-news .news-grid {
    margin-top: 3rem
}

.news-details-page .latest-news .btn-alt {
    margin-top: 5.5rem
}

.news-details-page .latest-news .news-grid {
    row-gap: 3.8rem
}

.news-details-page .latest-news .news-item .img-wrapper {
    width: 45.6rem;
    height: 27.8rem
}

.news-details-page .latest-news .news-item .news-item-title {
    margin-top: 1.1rem;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    word-wrap: break-word;
    text-align: justify;
    -webkit-line-clamp: 3
}

.news-details-page .activity .btn-alt {
    min-width: 62.06rem
}

@media screen and (max-width: 1023px) {
    .news-details-page .news-title {
        margin-top: 3.3rem;
        margin-left: .5rem
    }
    .news-details-page .news-title .article-header-title {
        width: auto
    }
    .news-details-page .news-title .article-header-title {
        font-size: 3.2rem
    }
    .news-details-page .news-title .article-time {
        margin-top: .8rem;
        margin-left: .5rem
    }
    .news-details-page .article-banner {
        margin-top: 1.6rem
    }
    .news-details-page .article-content {
        margin-top: 2.3rem;
        padding: 0 .55rem 0 .55rem;
        letter-spacing: .12rem;
        line-height: 4.32rem
    }
    .news-details-page .article-content p {
        font-size: 2.4rem
    }
    .news-details-page .article-content p:not(:first-child) {
        margin-top: 4.3rem
    }
    .news-details-page .latest-news {
        margin-top: 8.6rem;
        margin-bottom: 8rem
    }
    .news-details-page .activity {
        margin-top: 8.25rem;
        margin-bottom: 6.6rem
    }
    .news-details-page .activity .activity-item .activity-title {
        padding: .9rem 1.2rem .9rem 1.2rem
    }
    .news-details-page .activity .activity-item .activity-title>h3 {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        text-overflow: ellipsis;
        white-space: normal;
        word-wrap: break-word;
        text-align: justify;
        -webkit-line-clamp: 3
    }
    .news-details-page .activity .col-50-sp {
        width: calc(50% - .8rem)
    }
    .news-details-page .activity .activity-content {
        margin-bottom: 2.9rem
    }
}

.news-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/news/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.news-page .pagination {
    margin-top: 1.4rem;
    display: flex;
    justify-content: center;
    column-gap: 2.3rem
}

.news-page .news-content {
    margin-bottom: 12.35rem
}

.news-page .news-item .img-wrapper {
    width: 45.6rem;
    height: 27.8rem;
    padding-bottom: 0
}

.news-page .news-item .news-item-title {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    word-wrap: break-word;
    text-align: justify;
    -webkit-line-clamp: 2;
    color: #121212;
    max-height: 8.7rem;
}

@media screen and (max-width: 1023px) {
    .news-page .banner-img {
        background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/news/sp_1a97c89990b700556e06701efbbe0f17c5836127.png);
        height: 30rem;
        margin-top: -0.4rem
    }
    .news-page .sort {
        padding-top: 1.5rem
    }
    .news-page .sort .sort-title {
        margin-right: .7rem
    }
    .news-page .sort .select-menu {
        padding-left: 3rem
    }
    .news-page .pagination {
        margin-top: 4rem;
        column-gap: 1.3rem
    }
    .news-page .news-content {
        margin-bottom: 5.25rem
    }
    .news-page .news-item .img-wrapper {
        width: auto
    }
}

@media screen and (max-width: 1023px) {
    .top-page .interview .row {
        flex-direction: column;
        gap: 0;
    }
    .top-page .schedule-event-item .btn-base {
        margin-top: 1.6rem;
        width: 100%;
    }
    .top-page .schedule-event-item .event-image {
        height: 100%
    }
    .top-page .top-event-item .event-info .event-title {
        margin-top: 1rem
    }
    .top-page .top-event-item .event-info .event-title h2 {
        line-height: 2
    }
    .top-page .activity .activity-content {
        margin-bottom: 3.3rem
    }
    .top-page .row .btn-base.btn-alt {
        min-width: 62.05rem
    }
    .top-page .responsive-sp-section {
        display: flex;
        flex-direction: column-reverse
    }
}

.agenda {
    margin-bottom: 8rem
}

.agenda .agenda-content .row {
    gap: 0 3rem;
    justify-content: center;
    align-items: flex-start;
    display: grid;
    grid-template-columns: repeat(3, calc((100% - 6rem) / 3))
}

.agenda .agenda-content .agenda-item .img-wrapper {
    width: 100%;
    height: 0;
    padding-bottom: 55.2%
}

.agenda .agenda-content .agenda-item .img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0
}

.agenda .agenda-content .row.columns-2 {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 4.5rem
}

.agenda .agenda-content .row.columns-2 .agenda-item .img-wrapper {
    padding-bottom: 40%
}

.title-line>h2 {
    margin-right: 1rem
}

@media screen and (max-width: 1023px) {
    .agenda {
        margin-top: 7.6rem;
        margin-bottom: 5.3rem
    }
    .agenda .title-line {
        padding-top: .2rem;
        margin-bottom: 3.55rem
    }
    .agenda .agenda-content .row {
        grid-template-columns: repeat(1, 1fr)
    }
    .agenda .agenda-content .row.columns-2 {
        grid-template-columns: repeat(1, 100%)
    }
}

.quick-access {
    display: flex;
    justify-content: center;
    margin-bottom: 4.4rem;
    column-gap: 2.2rem
}

@media(max-width: 1023px) {
    .quick-access {
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        row-gap: 2rem;
    }
    .quick-access a.btn-base {
        margin-bottom: 0;
        font-size: 3rem;
    }
}

.intro-banner {
    position: relative;
    height: auto;
    width: 100%;
    overflow: hidden;
    background-image: url(../images/top/DSC03207_banner.png);
    background-size: cover;
    background-position: center
}

.intro-banner img {
    width: unset;
    max-width: unset;
    height: auto
}

.intro-banner .intro-overlay {
    color: #fff;
    padding: 8.1rem 15rem 0 23.9rem;
    width: 50%;
    height: auto;
    background: rgba(0, 0, 0, .8);
    min-height: 60.5rem
}

.intro-banner.dotank-banner-homepage .intro-content {
    letter-spacing: .24rem;
    font-size: 2rem;
    display: block;
    font-weight: 600;
    margin-bottom: 4.65rem;
}

.intro-banner.dotank-banner-homepage .intro-content h4 {
    font-size: 2.4rem;
    margin-bottom: 1rem;
}

.intro-banner.dotank-banner-homepage .intro-content h2 {
    font-size: 4.8rem;
}

.intro-banner .intro-overlay .intro-title {
    letter-spacing: .24rem;
    margin-bottom: 2.5rem;
    font-size: 4.8rem;
    display: block;
}

.intro-banner .intro-overlay .intro-title span{
    font-size: 2.4rem;
}

.intro-banner .intro-overlay .intro-text {
    font-weight: 600;
    margin-bottom: 4.65rem;
    font-size: 2rem;
}

.intro-banner .intro-overlay .btn-base {
    margin-left: .4rem;
    padding: 1.2rem 0;
    text-align: center;
    width: 27.6rem;
    border-radius: 2.5rem;
    margin-bottom: 4.6rem;
    line-height: 1.1;
}

@media screen and (max-width: 1023px) {
    .intro-banner {
        background: linear-gradient(to right, rgba(0, 58, 62, 0.74) 100%, rgba(0, 58, 62, 0) 100%), url(../images/top/DSC03207_banner.png);
        background-size: cover;
        background-position: center
    }
    .intro-banner .intro-overlay {
        width: 100%;
        padding: 4.4rem 5.45rem 2rem 5.45rem
    }

    .intro-banner.dotank-banner-homepage .intro-content {
        line-height: 1.8em;
        padding-left: .6rem;
        margin-bottom: 1.1rem;
        font-weight: 400 ;
        margin-bottom: 5rem;
    }

    .intro-banner.dotank-banner-homepage .intro-content h2 {
        font-weight: 400;
    }

    .intro-banner.dotank-banner-homepage .intro-content h4 {
        font-size: 2.6rem;
        font-weight: 400;
    }


    .intro-banner .intro-overlay .intro-title {
        line-height: 1.8em;
        padding-left: .6rem;
        margin-bottom: 1.1rem;
        font-weight: normal
    }
    .intro-banner .intro-overlay .intro-text {
        margin-left: -0.1rem;
        line-height: 3.6rem;
        margin-bottom: 5rem;
        font-weight: normal
    }
    .intro-banner .intro-overlay .btn-base {
        margin-left: 1.5rem;
        margin-bottom: 3rem
    }
}

.interview {
    position: relative;
    padding: 7.25rem 5.83%
}

.interview .interview-bg {
    width: auto;
    height: auto;
    background-color: #fff;
    border-radius: 4.5rem;
    padding-top: 6.2rem;
    padding-right: 12.8rem;
    padding-left: 12.8rem;
    padding-bottom: 15.7rem
}

.interview .title-line {
    margin-bottom: 9.5rem;
    line-height: normal;
}

.interview .title-line>h1 {
    font-size: 4.2rem;
    letter-spacing: .21rem;
    line-height: 5.3rem;
    margin-right: 2rem
}

.interview .title-line>span {
    font-weight: 600
}

.interview .row {
    display: flex;
    align-items: center
}

.interview .video-frame {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 5rem;
    flex: 1;
}

.interview .video-frame .video-fullwidth {
    width: 100%;
    height: 0;
    display: flex;
    padding-bottom: 56.3%;
    position: relative
}

.interview .video-frame .video-fullwidth img,
.interview .video-frame .video-fullwidth iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover
}

.interview .interview-info {
    flex: 0 0 48%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start
}

.interview .interview-info .interview-title {
    font-size: 4rem;
    font-weight: 600;
    line-height: 5.1rem;
    margin-bottom: 3rem;
    overflow: hidden;
    display: block;
    max-height: 15rem;
    -webkit-line-clamp: 3;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal
}

.interview .interview-info .interview-text {
    text-align: justify;
    overflow: hidden;
    display: block;
    max-height: 26rem;
    -webkit-line-clamp: 7;
    display: box;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    font-size: 2rem;
}

@media screen and (max-width: 1023px) {
    .interview {
        position: relative;
        padding: 3.8rem 2.5rem
    }
    .interview .video-frame,
    .interview .interview-info {
        flex: 1
    }
    .interview .interview-bg {
        padding: 0;
        border-radius: 2rem;
    }
    .interview .interview-bg .interview-title-wrap {
        padding-right: 0
    }
    .interview .title-line {
        padding-top: 3rem;
        margin-bottom: 5rem
    }
    .interview .title-line>h1 {
        line-height: 1.8em;
        padding-left: 3.3rem;
        letter-spacing: initial;
        margin-right: .5rem
    }
    .interview .title-line>span {
        font-size: 2.4rem
    }
    .interview .video-frame {
        width: 100%;
        height: 39rem;
        margin: auto
    }
    .interview .interview-info {
        max-width: 100%;
        padding: 4rem 2.4rem 5rem;
        width: 100%
    }
    .interview .interview-info .interview-title {
        max-height: 5.5rem
    }
    .interview .interview-info .interview-text {
        padding-top: 0;
    }
    .interview .interview-info .interview-text.only-sp {
        margin-top: 2.2rem;
        padding: 5.8rem 3rem 7.2rem;
        background-color: rgba(96, 96, 96, .35);
        border: 1px solid rgba(112, 112, 112, .35)
    }
    .interview .interview-info p {
        font-size: 2.4rem;
        font-weight: 400;
        line-height: 1.8em;
        letter-spacing: .05em;
        width: auto
    }
}

.caption>.caption-topic {
    display: inline;
    background-color: #3E7472;
    color: #fff;
    padding: 0.5rem 1.1rem;
    font-size: 1.8rem;
    display: inline-block;
    text-align: justify;
    margin-bottom: 2.4rem;
}

.caption>.caption-detail {
    display: inline-block;
    color: #fff;
    font-size: 3.2rem;
    line-height: 1.6;
}

.top-publication .pub-header a {
    width: 100%;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: normal;
    padding: 1.3rem 0
}

.top-sns-post {
    padding-top: 2.1rem;
    padding-left: 2.6rem
}

.top-sns-post .top-sns-post-body {
    margin-top: 3.3rem;
    padding: 0 !important
}

.top-sns-post .top-sns-post-body .top-sns-post-span {
    color: #0b85c6
}

.become-a-member-page .member-discussison .member-discussison-item-title,
.become-a-member-page .member-discussison .member-discussison-item-desc,
.become-a-member-page .member-discussison .become-member-item-content,
.become-a-member-page .member-discussison .title,
.become-a-member-page .member-discussison .subtitle,
.become-a-member-page .member-discussison .desc,
.become-a-member-page .member-discussison .count,
.become-a-member-page .member-discussison .sub-text>span,
.become-a-member-page .become-member-intro .member-discussison-item-title,
.become-a-member-page .become-member-intro .member-discussison-item-desc,
.become-a-member-page .become-member-intro .become-member-item-content,
.become-a-member-page .become-member-intro .title,
.become-a-member-page .become-member-intro .subtitle,
.become-a-member-page .become-member-intro .desc,
.become-a-member-page .become-member-intro .count,
.become-a-member-page .become-member-intro .sub-text>span,
.become-a-member-page .page-banner.banner-large .member-discussison-item-title,
.become-a-member-page .page-banner.banner-large .member-discussison-item-desc,
.become-a-member-page .page-banner.banner-large .become-member-item-content,
.become-a-member-page .page-banner.banner-large .title,
.become-a-member-page .page-banner.banner-large .subtitle,
.become-a-member-page .page-banner.banner-large .desc,
.become-a-member-page .page-banner.banner-large .count,
.become-a-member-page .page-banner.banner-large .sub-text>span,
.become-a-member-page .become-recruit .member-discussison-item-title,
.become-a-member-page .become-recruit .member-discussison-item-desc,
.become-a-member-page .become-recruit .become-member-item-content,
.become-a-member-page .become-recruit .title,
.become-a-member-page .become-recruit .subtitle,
.become-a-member-page .become-recruit .desc,
.become-a-member-page .become-recruit .count,
.become-a-member-page .become-recruit .sub-text>span,
.become-a-member-page .k5-keywords-detail .member-discussison-item-title,
.become-a-member-page .k5-keywords-detail .member-discussison-item-desc,
.become-a-member-page .k5-keywords-detail .become-member-item-content,
.become-a-member-page .k5-keywords-detail .title,
.become-a-member-page .k5-keywords-detail .subtitle,
.become-a-member-page .k5-keywords-detail .desc,
.become-a-member-page .k5-keywords-detail .count,
.become-a-member-page .k5-keywords-detail .sub-text>span,
.become-a-member-page .become-banner .member-discussison-item-title,
.become-a-member-page .become-banner .member-discussison-item-desc,
.become-a-member-page .become-banner .become-member-item-content,
.become-a-member-page .become-banner .title,
.become-a-member-page .become-banner .subtitle,
.become-a-member-page .become-banner .desc,
.become-a-member-page .become-banner .count,
.become-a-member-page .become-banner .sub-text>span,
.npo-overview .member-discussison .member-discussison-item-title,
.npo-overview .member-discussison .member-discussison-item-desc,
.npo-overview .member-discussison .become-member-item-content,
.npo-overview .member-discussison .title,
.npo-overview .member-discussison .subtitle,
.npo-overview .member-discussison .desc,
.npo-overview .member-discussison .count,
.npo-overview .member-discussison .sub-text>span,
.npo-overview .become-member-intro .member-discussison-item-title,
.npo-overview .become-member-intro .member-discussison-item-desc,
.npo-overview .become-member-intro .become-member-item-content,
.npo-overview .become-member-intro .title,
.npo-overview .become-member-intro .subtitle,
.npo-overview .become-member-intro .desc,
.npo-overview .become-member-intro .count,
.npo-overview .become-member-intro .sub-text>span,
.npo-overview .page-banner.banner-large .member-discussison-item-title,
.npo-overview .page-banner.banner-large .member-discussison-item-desc,
.npo-overview .page-banner.banner-large .become-member-item-content,
.npo-overview .page-banner.banner-large .title,
.npo-overview .page-banner.banner-large .subtitle,
.npo-overview .page-banner.banner-large .desc,
.npo-overview .page-banner.banner-large .count,
.npo-overview .page-banner.banner-large .sub-text>span,
.npo-overview .become-recruit .member-discussison-item-title,
.npo-overview .become-recruit .member-discussison-item-desc,
.npo-overview .become-recruit .become-member-item-content,
.npo-overview .become-recruit .title,
.npo-overview .become-recruit .subtitle,
.npo-overview .become-recruit .desc,
.npo-overview .become-recruit .count,
.npo-overview .become-recruit .sub-text>span,
.npo-overview .k5-keywords-detail .member-discussison-item-title,
.npo-overview .k5-keywords-detail .member-discussison-item-desc,
.npo-overview .k5-keywords-detail .become-member-item-content,
.npo-overview .k5-keywords-detail .title,
.npo-overview .k5-keywords-detail .subtitle,
.npo-overview .k5-keywords-detail .desc,
.npo-overview .k5-keywords-detail .count,
.npo-overview .k5-keywords-detail .sub-text>span,
.npo-overview .become-banner .member-discussison-item-title,
.npo-overview .become-banner .member-discussison-item-desc,
.npo-overview .become-banner .become-member-item-content,
.npo-overview .become-banner .title,
.npo-overview .become-banner .subtitle,
.npo-overview .become-banner .desc,
.npo-overview .become-banner .count,
.npo-overview .become-banner .sub-text>span {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    word-wrap: break-word;
    text-align: justify;
    height: auto
}

.become-a-member-page .member-discussison .sub-text>span,
.become-a-member-page .become-member-intro .sub-text>span,
.become-a-member-page .page-banner.banner-large .sub-text>span,
.become-a-member-page .become-recruit .sub-text>span,
.become-a-member-page .k5-keywords-detail .sub-text>span,
.become-a-member-page .become-banner .sub-text>span,
.npo-overview .member-discussison .sub-text>span,
.npo-overview .become-member-intro .sub-text>span,
.npo-overview .page-banner.banner-large .sub-text>span,
.npo-overview .become-recruit .sub-text>span,
.npo-overview .k5-keywords-detail .sub-text>span,
.npo-overview .become-banner .sub-text>span {
    -webkit-line-clamp: 1
}

.become-a-member-page .member-discussison .become-member-item-title,
.become-a-member-page .become-member-intro .become-member-item-title,
.become-a-member-page .page-banner.banner-large .become-member-item-title,
.become-a-member-page .become-recruit .become-member-item-title,
.become-a-member-page .k5-keywords-detail .become-member-item-title,
.become-a-member-page .become-banner .become-member-item-title,
.npo-overview .member-discussison .become-member-item-title,
.npo-overview .become-member-intro .become-member-item-title,
.npo-overview .page-banner.banner-large .become-member-item-title,
.npo-overview .become-recruit .become-member-item-title,
.npo-overview .k5-keywords-detail .become-member-item-title,
.npo-overview .become-banner .become-member-item-title {
    display: block;
    line-height: 2;
    max-width: 100%;
    padding-right: 23rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

.become-a-member-page .member-discussison .become-member-item-content,
.become-a-member-page .become-member-intro .become-member-item-content,
.become-a-member-page .page-banner.banner-large .become-member-item-content,
.become-a-member-page .become-recruit .become-member-item-content,
.become-a-member-page .k5-keywords-detail .become-member-item-content,
.become-a-member-page .become-banner .become-member-item-content,
.npo-overview .member-discussison .become-member-item-content,
.npo-overview .become-member-intro .become-member-item-content,
.npo-overview .page-banner.banner-large .become-member-item-content,
.npo-overview .become-recruit .become-member-item-content,
.npo-overview .k5-keywords-detail .become-member-item-content,
.npo-overview .become-banner .become-member-item-content {
    -webkit-line-clamp: 5
}

.become-a-member-page .member-discussison .context .desc,
.become-a-member-page .become-member-intro .context .desc,
.become-a-member-page .page-banner.banner-large .context .desc,
.become-a-member-page .become-recruit .context .desc,
.become-a-member-page .k5-keywords-detail .context .desc,
.become-a-member-page .become-banner .context .desc,
.npo-overview .member-discussison .context .desc,
.npo-overview .become-member-intro .context .desc,
.npo-overview .page-banner.banner-large .context .desc,
.npo-overview .become-recruit .context .desc,
.npo-overview .k5-keywords-detail .context .desc,
.npo-overview .become-banner .context .desc {
    -webkit-line-clamp: 7
}

@media screen and (max-width: 1023px) {
    .become-a-member-page .member-discussison .context .desc,
    .become-a-member-page .become-member-intro .context .desc,
    .become-a-member-page .page-banner.banner-large .context .desc,
    .become-a-member-page .become-recruit .context .desc,
    .become-a-member-page .k5-keywords-detail .context .desc,
    .become-a-member-page .become-banner .context .desc,
    .npo-overview .member-discussison .context .desc,
    .npo-overview .become-member-intro .context .desc,
    .npo-overview .page-banner.banner-large .context .desc,
    .npo-overview .become-recruit .context .desc,
    .npo-overview .k5-keywords-detail .context .desc,
    .npo-overview .become-banner .context .desc {
        -webkit-line-clamp: 5
    }
}

.become-a-member-page .member-discussison .context .title,
.become-a-member-page .become-member-intro .context .title,
.become-a-member-page .page-banner.banner-large .context .title,
.become-a-member-page .become-recruit .context .title,
.become-a-member-page .k5-keywords-detail .context .title,
.become-a-member-page .become-banner .context .title,
.npo-overview .member-discussison .context .title,
.npo-overview .become-member-intro .context .title,
.npo-overview .page-banner.banner-large .context .title,
.npo-overview .become-recruit .context .title,
.npo-overview .k5-keywords-detail .context .title,
.npo-overview .become-banner .context .title {
    -webkit-line-clamp: 2
}

.become-a-member-page .member-discussison .context h1.title,
.become-a-member-page .become-member-intro .context h1.title,
.become-a-member-page .page-banner.banner-large .context h1.title,
.become-a-member-page .become-recruit .context h1.title,
.become-a-member-page .k5-keywords-detail .context h1.title,
.become-a-member-page .become-banner .context h1.title,
.npo-overview .member-discussison .context h1.title,
.npo-overview .become-member-intro .context h1.title,
.npo-overview .page-banner.banner-large .context h1.title,
.npo-overview .become-recruit .context h1.title,
.npo-overview .k5-keywords-detail .context h1.title,
.npo-overview .become-banner .context h1.title {
    -webkit-line-clamp: 3
}

.become-a-member-page .member-discussison .member-discussison-item-desc,
.become-a-member-page .member-discussison .job2-item .desc,
.become-a-member-page .become-member-intro .member-discussison-item-desc,
.become-a-member-page .become-member-intro .job2-item .desc,
.become-a-member-page .page-banner.banner-large .member-discussison-item-desc,
.become-a-member-page .page-banner.banner-large .job2-item .desc,
.become-a-member-page .become-recruit .member-discussison-item-desc,
.become-a-member-page .become-recruit .job2-item .desc,
.become-a-member-page .k5-keywords-detail .member-discussison-item-desc,
.become-a-member-page .k5-keywords-detail .job2-item .desc,
.become-a-member-page .become-banner .member-discussison-item-desc,
.become-a-member-page .become-banner .job2-item .desc,
.npo-overview .member-discussison .member-discussison-item-desc,
.npo-overview .member-discussison .job2-item .desc,
.npo-overview .become-member-intro .member-discussison-item-desc,
.npo-overview .become-member-intro .job2-item .desc,
.npo-overview .page-banner.banner-large .member-discussison-item-desc,
.npo-overview .page-banner.banner-large .job2-item .desc,
.npo-overview .become-recruit .member-discussison-item-desc,
.npo-overview .become-recruit .job2-item .desc,
.npo-overview .k5-keywords-detail .member-discussison-item-desc,
.npo-overview .k5-keywords-detail .job2-item .desc,
.npo-overview .become-banner .member-discussison-item-desc,
.npo-overview .become-banner .job2-item .desc {
    max-height: 25rem
}

.become-a-member-page .member-discussison .banner-text .title,
.become-a-member-page .become-member-intro .banner-text .title,
.become-a-member-page .page-banner.banner-large .banner-text .title,
.become-a-member-page .become-recruit .banner-text .title,
.become-a-member-page .k5-keywords-detail .banner-text .title,
.become-a-member-page .become-banner .banner-text .title,
.npo-overview .member-discussison .banner-text .title,
.npo-overview .become-member-intro .banner-text .title,
.npo-overview .page-banner.banner-large .banner-text .title,
.npo-overview .become-recruit .banner-text .title,
.npo-overview .k5-keywords-detail .banner-text .title,
.npo-overview .become-banner .banner-text .title {
    max-height: 7rem
}

.become-a-member-page .member-discussison .banner-text .desc,
.become-a-member-page .become-member-intro .banner-text .desc,
.become-a-member-page .page-banner.banner-large .banner-text .desc,
.become-a-member-page .become-recruit .banner-text .desc,
.become-a-member-page .k5-keywords-detail .banner-text .desc,
.become-a-member-page .become-banner .banner-text .desc,
.npo-overview .member-discussison .banner-text .desc,
.npo-overview .become-member-intro .banner-text .desc,
.npo-overview .page-banner.banner-large .banner-text .desc,
.npo-overview .become-recruit .banner-text .desc,
.npo-overview .k5-keywords-detail .banner-text .desc,
.npo-overview .become-banner .banner-text .desc {
    max-height: 10rem
}

.become-a-member-page .member-discussison .text-white.text-3.subtitle,
.become-a-member-page .become-member-intro .text-white.text-3.subtitle,
.become-a-member-page .page-banner.banner-large .text-white.text-3.subtitle,
.become-a-member-page .become-recruit .text-white.text-3.subtitle,
.become-a-member-page .k5-keywords-detail .text-white.text-3.subtitle,
.become-a-member-page .become-banner .text-white.text-3.subtitle,
.npo-overview .member-discussison .text-white.text-3.subtitle,
.npo-overview .become-member-intro .text-white.text-3.subtitle,
.npo-overview .page-banner.banner-large .text-white.text-3.subtitle,
.npo-overview .become-recruit .text-white.text-3.subtitle,
.npo-overview .k5-keywords-detail .text-white.text-3.subtitle,
.npo-overview .become-banner .text-white.text-3.subtitle {
    max-height: 3rem
}

.become-a-member-page .member-discussison .member-discussison-item-title,
.become-a-member-page .member-discussison .job2-item .title,
.become-a-member-page .become-member-intro .member-discussison-item-title,
.become-a-member-page .become-member-intro .job2-item .title,
.become-a-member-page .page-banner.banner-large .member-discussison-item-title,
.become-a-member-page .page-banner.banner-large .job2-item .title,
.become-a-member-page .become-recruit .member-discussison-item-title,
.become-a-member-page .become-recruit .job2-item .title,
.become-a-member-page .k5-keywords-detail .member-discussison-item-title,
.become-a-member-page .k5-keywords-detail .job2-item .title,
.become-a-member-page .become-banner .member-discussison-item-title,
.become-a-member-page .become-banner .job2-item .title,
.npo-overview .member-discussison .member-discussison-item-title,
.npo-overview .member-discussison .job2-item .title,
.npo-overview .become-member-intro .member-discussison-item-title,
.npo-overview .become-member-intro .job2-item .title,
.npo-overview .page-banner.banner-large .member-discussison-item-title,
.npo-overview .page-banner.banner-large .job2-item .title,
.npo-overview .become-recruit .member-discussison-item-title,
.npo-overview .become-recruit .job2-item .title,
.npo-overview .k5-keywords-detail .member-discussison-item-title,
.npo-overview .k5-keywords-detail .job2-item .title,
.npo-overview .become-banner .member-discussison-item-title,
.npo-overview .become-banner .job2-item .title {
    max-height: 12rem
}

.become-a-member-page .btn-wrap,
.npo-overview .btn-wrap {
    padding: 0 1.913rem
}

.become-a-member-page .btn-base.btn-white,
.npo-overview .btn-base.btn-white {
    cursor: default
}

.title-decoration {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-bottom: 5rem;
    text-align: center;
    position: relative
}

.title-decoration::after {
    content: "";
    position: absolute;
    width: 100%;
    bottom: 1rem;
    left: 0;
    height: 1px;
    background-color: #707070
}

.become-member-intro {
    padding-top: 10rem
}

.become-member-intro .become-member-item-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    background: #3E7472;
    width: fit-content;
    padding-left: 23rem;
    color: #fff;
    margin-bottom: 3.5rem;
    display: flex;
    align-items: center;
    padding-right: 11rem
}

.become-member-intro .become-member-item-content {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    margin-bottom: 4rem
}

.become-member-intro .become-member-item-image {
    max-height: 30.3rem;
    margin-bottom: 6rem
}

.membership-types {
    background-color: #e8e8e8;
    padding-top: 5rem;
    padding-bottom: 7rem
}

.membership-types .membership-types-wrap {
    display: grid;
    gap: .9rem;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 5rem
}

.membership-types .membership-types-item {
    overflow: hidden;
    display: flex;
    flex-direction: column
}

.membership-types .membership-types-item-title {
    font-weight: 600;
    font-size: 2.5rem;
    letter-spacing: .05em;
    line-height: 2.2;
    text-align: center;
    color: #fff;
    border-bottom: 1px solid #fff;
    margin-bottom: 2rem
}

.membership-types .membership-types-item-title span {
    font-weight: 600;
    font-size: 3.6rem;
    letter-spacing: .05em;
    line-height: 1.375;
    display: block;
    padding-bottom: 2rem
}

.membership-types .membership-types-top {
    background-color: #003a3e;
    padding: 0 1.8rem;
    border-radius: 1.9rem 1.9rem 0px 0px
}

@media screen and (max-width: 1023px) {
    .membership-types .membership-types-top {
        padding: 1rem 2rem 0
    }
}

.membership-types .membership-types-item-desc {
    color: #fff;
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 1.5;
    padding-bottom: 2rem;
    text-align: center;
    width: 100%
}

.membership-types .membership-types-body {
    background-color: #fff;
    padding: 0 1.8rem;
    border: 1px solid #707070;
    border-top: unset;
    border-radius: 0px 0px 1.9rem 1.9rem;
    padding-bottom: 3rem;
    background-color: #fff;
    flex: 1
}

.membership-types .membership-types-body .list-checkbox {
    margin-right: -0.8rem
}

.membership-types .membership-types-body ul {
    list-style-type: none;
    padding: 0
}

.membership-types .membership-types-body ul li {
    display: flex;
    flex-direction: row;
    position: relative;
    padding-left: 4rem;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.5
}

.membership-types .membership-types-body ul li::after {
    content: "";
    width: 3.9rem;
    height: 2.9rem;
    position: absolute;
    background-image: url("/grn/assets/images/become-a-member/icon-check.png");
    background-size: contain;
    background-repeat: no-repeat;
    top: 5px;
    left: 0
}

.membership-types .membership-types-body-title {
    font-weight: 600;
    font-size: 3rem;
    letter-spacing: .05em;
    line-height: 1.8333333333;
    padding-top: 2rem;
    text-align: center;
    margin-bottom: 1rem
}

.membership-types .membership-types-body-btn {
    display: block;
    max-width: 40.9rem;
    padding: .6rem 0;
    margin: 0 auto;
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 1rem;
    border-radius: 14px;
    transition: all .2s
}

.membership-types .membership-types-body-btn a {
    width: 100%;
    border-radius: 1.4rem
}

.membership-types .membership-types-benefits {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2.75
}

.membership-types .membership-types-note {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2.75;
    margin-top: 4rem;
}

.member-discussison {
    background-color: #fff;
    padding-top: 8rem
}

.member-discussison .member-discussison-item {
    display: flex;
    flex-direction: row
}

.member-discussison .member-discussison-item img {
    width: 50%;
    height: 47rem
}

.member-discussison .member-discussison-item.img-right {
    flex-direction: row-reverse
}

.member-discussison .member-discussison-item.img-right .member-discussison-item-body {
    padding-left: 0;
    padding-right: 7rem
}

.member-discussison .member-discussison-item-body {
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding-left: 7rem;
    gap: 3rem;
    max-width: 72rem
}

.member-discussison .member-discussison-item-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: .7;
    color: #3E7472;
    width: 100%;
    height: 6rem;
    line-height: normal;
    overflow: hidden
}

.member-discussison .member-discussison-item-desc {
    font-weight: 300;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    width: 100%;
    height: 18rem;
    line-height: normal;
    overflow: hidden
}

.five-keywords {
    padding: 7rem 0 8.8rem
}

.five-keywords .k5-title {
    font-size: 4rem;
    font-weight: 600;
    border-bottom: 1px solid #707070;
    text-align: center;
    line-height: 1.8;
    margin-bottom: 2.5rem
}

.k5-list-items {
    display: flex;
    justify-content: center;
    gap: 2.5rem 7rem;
    flex-wrap: wrap
}

.k5-list-items .k5-item {
    width: calc(33.33% - 4.67rem)
}

.k5-item {
    padding: 1.7rem 3.3rem 2.4rem;
    border: 1px solid #3E7472;
    border-radius: 1rem;
    text-align: center
}

.k5-item .count {
    margin-bottom: 1rem;
    font-size: 3.2rem;
    font-weight: 600;
    color: #3E7472
}

.k5-item .title {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.4
}

.k5-item .desc {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 2.3rem;
    min-height: 8.65rem
}

.k5-item .k5-btn-view-detail {
    width: 100%
}

.k5-item-detail {
    display: flex;
    align-items: center;
    margin-bottom: 8.8rem
}

.k5-item-detail .context {
    width: 50%;
    padding-left: 8rem
}

.k5-item-detail .context .count {
    font-size: 3.2rem;
    font-weight: 600;
    color: #3E7472;
    line-height: 1;
    margin-bottom: 3rem
}

.k5-item-detail .context .title {
    font-size: 4rem;
    margin-bottom: 3rem;
    line-height: 1.8
}

.k5-item-detail .context .desc {
    max-width: 60rem
}

.k5-item-detail .thumb {
    width: 50%;
    padding-left: 5rem
}

.k5-item-detail.img-right {
    flex-direction: row-reverse
}

.k5-item-detail.style-1 {
    min-height: 64rem;
    color: #fff;
    background-size: cover;
    background-position: center center;
    border-radius: 1.8rem
}

.k5-item-detail.style-1 .context .count {
    color: #fff
}

.k5-results {
    background-color: #e8e8e8;
    padding: 8rem 0 6rem;
    text-align: center;
    margin-bottom: 7rem
}

.k5-results h2 {
    margin-bottom: 3rem;
    font-size: 4rem;
    font-weight: 600
}

.k5-keywords-detail.section-2 {
    padding-top: 7rem
}

.become-recruit {
    padding: 10rem 0;
    background-color: #e8e8e8
}

.become-recruit .recruit-title {
    margin-bottom: 3rem
}

.become-recruit .list-jobs {
    display: flex;
    flex-wrap: wrap;
    padding: 0 6rem;
    gap: 3.8rem
}

.become-recruit .list-jobs .job2-item {
    width: calc(33.33% - 2.54rem)
}

.become-recruit .job2-item {
    position: relative;
    display: flex;
    flex-direction: column
}

.become-recruit .job2-item .context {
    border: 1px solid #707070;
    padding: 2.3rem 1.4rem 10rem;
    flex: 1;
    background-color: #fff
}

.become-recruit .job2-item .context .title {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 1.5rem
}

.become-recruit .job2-item .context .desc {
    font-size: 1.6rem
}

.become-recruit .job2-item .btn-view-more {
    border-radius: 2rem;
    position: absolute;
    bottom: 3rem;
    left: 50%;
    transform: translateX(-50%)
}

.npo-overview .k5-item-detail .context .count {
    overflow: hidden;
    max-height: 3rem;
    -webkit-line-clamp: unset
}

.npo-overview .k5-item-detail .context .title {
    overflow: hidden;
    max-height: 14rem;
    -webkit-line-clamp: unset
}

.npo-overview .k5-item-detail .context .desc {
    -webkit-line-clamp: unset;
    overflow: hidden;
    max-height: 25rem
}

.become-recruit .list-jobs .job2-item {
    border: 1px solid #707070
}

.become-recruit .job2-item .context {
    border: none
}

@media screen and (min-width: 1024px) {
    .pc-pt-3 {
        padding-top: 8rem
    }
}

@media screen and (max-width: 1023px) {
    .membership-types .membership-types-body ul li {
        padding-left: 3.6rem
    }
    .membership-types .membership-types-body ul li::after {
        width: 3.2rem;
        height: 3.2rem;
        top: 2px
    }

    .become-member-intro {
        padding-top: 5rem
    }
    .become-member-intro .become-member-item-title {
        font-size: 3.2rem;
        margin-bottom: 2rem;
        padding: 1rem 2.4rem !important;
    }
    .become-member-intro .become-member-item-image {
        max-height: 15.7rem;
        margin-bottom: 5rem
    }
    .become-member-intro .become-member-item-content {
        padding: 0 3rem
    }
    .become-member-intro .sp-pd-0 {
        padding: 0
    }
    .membership-types {
        padding-top: 4rem
    }
    .membership-types .membership-types-wrap {
        gap: 1rem;
        grid-template-columns: repeat(2, 1fr)
    }
    .membership-types .membership-types-item-desc {
        width: 100%
    }
    .member-discussison {
        padding-top: 3rem
    }
    .member-discussison .member-discussison-item {
        flex-direction: column
    }
    .member-discussison .member-discussison-item img {
        width: 100%;
        max-height: 47rem
    }
    .member-discussison .member-discussison-item.img-right {
        flex-direction: column
    }
    .member-discussison .member-discussison-item.img-right .member-discussison-item-body {
        padding-left: 3rem;
        padding-right: 3rem
    }
    .member-discussison .member-discussison-item .member-discussison-item-body {
        padding-left: 3rem;
        padding-right: 3rem
    }
    .member-discussison .member-discussison-item-title {
        margin-top: 5rem
    }
    .member-discussison .member-discussison-item-desc {
        margin-bottom: 6rem
    }
    .become-member-sns .sns {
        padding-top: 0
    }
    .title-decoration {
        margin-bottom: 4rem
    }
    .five-keywords {
        padding: 4.8rem 0
    }
    .become-recruit .list-jobs {
        flex-wrap: wrap
    }
    .become-recruit .list-jobs .job2-item {
        width: 100%
    }
    .five-keywords .k5-title {
        letter-spacing: 0;
        font-size: 3.8rem
    }
    .k5-list-items-sp {
        display: flex;
        flex-wrap: wrap
    }
    .k5-list-items-sp .k5-item-sp {
        width: 100%;
        display: flex;
        align-items: center;
        padding: 1rem 3rem;
        min-height: 6rem;
        border: 1px solid #3E7472;
        border-radius: 7px;
        margin-bottom: .4rem;
        font-size: 2.4rem;
        color: #3E7472;
        position: relative;
        overflow: hidden
    }
    .k5-list-items-sp .k5-item-sp .arrow {
        position: absolute;
        display: flex;
        right: 2rem;
        top: calc(50% - 2.4rem);
        width: 4.8rem;
        height: 4.8rem;
        border-radius: 50%;
        background-color: #3E7472;
        align-items: center;
        justify-content: center;
        line-height: 1
    }
    .k5-list-items-sp .k5-item-sp .arrow svg {
        position: relative;
        top: 2.6rem
    }
    .k5-item-detail.style-1 {
        padding: 5.8rem 3.8rem
    }
    .k5-item-detail.style-1 .context {
        padding-left: 0;
        width: 100%
    }
    .k5-item-detail .context .count {
        font-size: 2.4rem;
        margin-bottom: 1.6rem
    }
    .k5-item-detail .context .desc {
        font-size: 2.4rem;
        max-width: 100%;
        line-height: 1.8
    }
    .k5-item-detail {
        flex-wrap: wrap
    }
    .k5-item-detail .context {
        width: 100%;
        padding-left: 0;
        margin-bottom: 3.3rem;
        padding: 0
    }
    .k5-item-detail .thumb {
        width: 100%;
        padding: 0
    }
    .k5-results .desc {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .k5-results {
        padding: 8rem 0
    }
    .k5-results p {
        font-size: 2rem
    }
    .become-recruit .list-jobs {
        padding: 0
    }
    .become-recruit .job2-item .context .title {
        font-size: 3.2rem;
        margin-bottom: 2.6rem
    }
    .become-recruit .job2-item .context .desc {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .become-recruit .job2-item .context {
        padding-bottom: 11rem
    }
    .become-recruit .job2-item .btn-view-more {
        width: 85%
    }
    .become-recruit {
        padding: 10rem 0 5rem
    }
    .recruit-title {
        margin-bottom: 3rem
    }
    .npo-overview .k5-item-detail .context .count {
        max-height: 2.4rem
    }
    .npo-overview .k5-item-detail .context .desc {
        max-height: 21rem
    }
}

.about-us-history-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/about-us–中立性のための自己評価/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.about-us-history-page .headline-img {
    margin-top: 6.5rem;
    margin-bottom: 6.65rem
}

.about-us-history-page .headline-img .headline-text h2 {
    margin-bottom: 2.7rem
}

@media screen and (max-width: 1023px) {
    .about-us-history-page .headline-img {
        margin-top: 4.8rem;
        margin-bottom: 1.6rem
    }
    .about-us-history-page .headline-img .headline-text h2 {
        margin-bottom: 1rem;
        margin-left: 2.1rem
    }
}

.about-us-history-page .body-content .img-wrapper {
    min-width: 51.9rem;
    margin: .6rem 0rem;
    height: auto
}

.about-us-history-page .body-content .img-wrapper.wrap-right {
    float: right
}

.about-us-history-page .body-content .img-wrapper.wrap-left {
    float: left;
    margin-right: 1.7rem
}

.about-us-history-page .body-content .note-float-left {
    margin-right: 1.8rem
}

.about-us-history-page .body-content .note-float-right {
    margin-left: 1.8rem
}

.about-us-history-page .body-content p {
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.8em;
    font-size: 2.4rem;
    margin-bottom: 1rem;
    text-align: justify
}

.about-us-history-page .body-content p+.img-wrapper {
    margin-top: .85rem
}

@media screen and (max-width: 1023px) {
    .about-us-history-page .body-content p+.img-wrapper {
        margin-top: 2rem
    }
}

.about-us-history-page .body-content .opening {
    position: relative;
    display: flex;
    flex-direction: row
}

.about-us-history-page .body-content .conclusion {
    margin-top: 5.7rem
}

.about-us-history-page .body-content .conclusion>p {
    margin-bottom: 4.3rem
}

@media screen and (max-width: 1023px) {
    .about-us-history-page .body-content .opening {
        position: relative;
        display: flex;
        flex-direction: column
    }
    .about-us-history-page .body-content .img-wrapper {
        width: auto;
        max-height: 36rem;
        display: block;
        margin-bottom: 1.8rem
    }
    .about-us-history-page .body-content .img-wrapper.wrap-right {
        float: none
    }
    .about-us-history-page .body-content .img-wrapper.wrap-left {
        float: none;
        margin-right: 0
    }
}

.about-us-history-page .history .title-line {
    margin-top: 9.6rem
}

.about-us-history-page .history .title-line .underline {
    margin-top: .7rem
}

@media screen and (max-width: 1023px) {
    .about-us-history-page .body-content .note-float-left,
    .about-us-history-page .body-content .note-float-right {
        margin: 10px 0;
        width: 100% !important;
        height: auto !important
    }
}

.about-us-faq-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/about-us–中立性のための自己評価/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.about-us-faq-page .headline-img {
    margin-top: 6.5rem;
    margin-bottom: 11.4rem
}

.about-us-faq-page .headline-img .headline-text {
    padding: 5rem;
}

.about-us-faq-page .headline-img .headline-text h2 {
    margin-bottom: 2.7rem
}

@media screen and (max-width: 1023px) {
    .about-us-faq-page .headline-img {
        margin-top: 4.8rem;
        margin-bottom: 1.6rem
    }
    .about-us-faq-page .headline-img .headline-text h2 {
        margin-left: 9.5rem;
        margin-top: 2.5rem
    }
}

.about-us-faq-page .qna {
    margin-bottom: 6.8rem
}

@media screen and (max-width: 1023px) {
    .about-us-faq-page .qna {
        margin-bottom: 5.6rem
    }
}

.about-us-faq-page .about-us-quicklink {
    margin-bottom: 4.8rem
}

@media screen and (max-width: 1023px) {
    .about-us-faq-page .about-us-quicklink {
        margin-bottom: 9.1rem
    }
}

.about-us-board-member-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/about-us–中立性のための自己評価/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.about-us-board-member-page .member-chairman .member-intro-item.member-intro-item-alt {
    width: 74rem
}

.about-us-board-member-page .member-chairman .member-intro-item.member-intro-item-alt .member-intro-info {
    min-height: 33.1rem
}

.about-us-board-member-page .member-intro {
    margin-bottom: 18.2rem;
    margin-top: 8rem
}

.about-us-board-member-page .member-intro .member-director {
    margin-top: 4.7rem
}

.about-us-board-member-page .member-intro .member-director .underline {
    margin-top: -0.4rem
}

.about-us-board-member-page .member-intro .member-supervisor {
    margin-top: 17.05rem;
    margin-bottom: 7.3rem
}

.about-us-board-member-page .member-intro .member-supervisor .member-intro-item.member-intro-item-alt {
    width: 74rem
}

.about-us-board-member-page .member-intro .member-supervisor .member-intro-item.member-intro-item-alt .member-intro-info {
    min-height: 33.1rem
}

.about-us-board-member-page .member-intro .member-supervisor .member-intro-item.member-intro-item-alt .member-intro-info .under {
    margin-top: .6rem
}

.about-us-board-member-page .member-intro .member-supervisor .member-intro-item.member-intro-item-alt .member-intro-info .member-intro-name {
    line-height: 5.1rem;
    margin-bottom: 1.7rem
}

.about-us-board-member-page .member-intro .member-supervisor .member-intro-item.member-intro-item-alt .member-intro-info .member-intro-desc {
    line-height: 3rem
}

@media screen and (max-width: 1023px) {
    .about-us-board-member-page .headline-img {
        margin-top: 5.5rem
    }
    .about-us-board-member-page .headline-img .headline-text h2 {
        margin: .1rem 0rem .5rem .3rem
    }
    .about-us-board-member-page .member-intro {
        margin-top: 6.2rem;
        margin-bottom: 19.4rem
    }
    .about-us-board-member-page .member-intro .member-director {
        margin-top: 2rem
    }
    .about-us-board-member-page .member-intro .member-supervisor {
        margin-top: 10.5rem;
        margin-bottom: 6.5rem
    }
    .about-us-board-member-page .about-us-quicklink {
        margin-bottom: 7rem
    }
}

.member-director-wrapper {
    margin-top: 8rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8rem 2rem
}

.member-director-wrapper .member-intro-item {
    width: unset;
    height: unset
}

.member-director-wrapper .member-intro-item .member-intro-info .member-intro-name {
    line-height: 3.9rem;
    margin-bottom: 2.3rem
}

@media screen and (max-width: 1023px) {
    .member-director-wrapper .member-intro-item .member-intro-info .member-intro-name {
        margin-bottom: .5rem
    }
}

.member-director-wrapper .member-intro-item .member-intro-info .member-intro-desc {
    white-space: unset
}

@media screen and (max-width: 1023px) {
    .member-director-wrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 3.5rem 1.2rem;
        margin-top: 2.4rem
    }
}

.member-chairman,
.member-supervisor {
    display: flex;
    justify-content: center
}

.member-chairman .member-intro-item.member-intro-item-alt,
.member-supervisor .member-intro-item.member-intro-item-alt {
    min-height: 33.1rem
}

.member-chairman .member-intro-item.member-intro-item-alt .img-wrapper,
.member-supervisor .member-intro-item.member-intro-item-alt .img-wrapper {
    width: 24.4rem;
    height: 33.1rem
}

.member-chairman .member-intro-item.member-intro-item-alt .member-intro-desc,
.member-supervisor .member-intro-item.member-intro-item-alt .member-intro-desc {
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis
}

.member-intro-date {
    float: right
}

@media(max-width: 1023px) {
    .member-intro-item.advisory-intro-item .img-wrapper {
        width: 15rem
    }
}

.about-us-advisory-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/about-us–中立性のための自己評価/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.about-us-advisory-page .headline-img {
    margin-bottom: 4.2rem
}

@media screen and (max-width: 1023px) {
    .about-us-advisory-page .headline-img .headline-text h2 {
        margin: unset;
        margin-bottom: .4rem
    }
    .about-us-advisory-page .headline-img .headline-text h3 {
        letter-spacing: 0
    }
}

.about-us-advisory-page .advisory-intro-text {
    margin-bottom: 7.4rem
}

.about-us-advisory-page .about-us-quicklink {
    margin-top: 8.8rem
}

@media screen and (max-width: 1023px) {
    .about-us-advisory-page .headline-img {
        margin-top: 5.5rem;
        margin-bottom: 4rem
    }
    .about-us-advisory-page .advisory-intro-text {
        margin-bottom: 6.5rem;
        padding: 0 .5rem
    }
    .about-us-advisory-page .about-us-quicklink {
        margin-top: 7.3rem
    }
}

.about-us-advisory-page .advisory-intro .advisory-intro-wrapper .member-intro-item {
    width: unset;
    height: unset
}

.about-us-advisory-page .advisory-intro .advisory-intro-wrapper .member-intro-item .member-intro-info .member-intro-name {
    line-height: 4rem;
    margin-bottom: 3.7rem
}

@media screen and (max-width: 1023px) {
    .about-us-advisory-page .advisory-intro .advisory-intro-wrapper .member-intro-item .member-intro-info .member-intro-name {
        margin-bottom: .5rem !important
    }
}

.about-us-advisory-page .advisory-intro .advisory-intro-wrapper .member-intro-item .member-intro-info .member-intro-desc {
    line-height: 3.6rem;
    word-break: break-all
}

.about-us-advisory-page .advisory-intro .advisory-intro-wrapper .member-intro-item .member-intro-info .member-intro-desc span {
    white-space: unset
}

.about-us-advisory-page .headline-img {
    position: relative;
    height: auto
}

.about-us-advisory-page .headline-img .headline-text {
    position: relative
}

.about-us-advisory-page .headline-img img {
    position: absolute
}

.advisory-intro-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 3.3rem;
    column-gap: 2rem
}

.advisory-intro-wrapper .img-wrapper {
    min-width: unset
}

.advisory-intro-wrapper .advisory-intro-item .member-intro-info {
    padding-left: 2rem
}

@media screen and (max-width: 1023px) {
    .advisory-intro-wrapper {
        row-gap: 3.5rem;
        column-gap: 1.4rem;
        grid-template-columns: repeat(2, 1fr)
    }
    .advisory-intro-wrapper .advisory-intro-item .member-intro-info {
        padding-top: 3rem
    }
}

@media screen and (max-width: 1023px) {
    .about-us-advisory-page .advisory-intro .advisory-intro-wrapper .member-intro-item .member-intro-info .member-intro-name {
        margin-bottom: 1.7rem
    }
}

@media screen and (min-width: 1024px) {
    .fs-15 {
        letter-spacing: normal;
        font-size: 1.5rem
    }
}

.about-us-self-evaluation-page .headline-img {
    margin-bottom: 6.5rem
}

@media screen and (max-width: 1023px) {
    .about-us-self-evaluation-page .headline-img .headline-text h2 {
        margin: unset
    }
}

.about-us-self-evaluation-page .self-evaluation {
    margin-bottom: 4.4rem
}

.about-us-self-evaluation-page .title-line h2 {
    color: #3E7472
}

.about-us-self-evaluation-page .title-line span {
    font-size: 2.4rem;
    line-height: 1.8em;
    margin-left: 3.7rem
}

.about-us-self-evaluation-page .evaluation-content .evaluation-content-section:first-of-type .underline,
.about-us-self-evaluation-page .auditor-opinion .evaluation-content-section:first-of-type .underline {
    display: block
}

.about-us-self-evaluation-page .evaluation-content .section-label {
    margin-bottom: 9.7rem
}

.about-us-self-evaluation-page .evaluation-content .title-line+.evaluation-content-text {
    margin-top: .5rem
}

.about-us-self-evaluation-page .evaluation-content .evaluation-content-section+.evaluation-content-section {
    margin-top: 10.6rem
}

.about-us-self-evaluation-page .evaluation-content .evaluation-content-section+.evaluation-content-section .underline.underline-left {
    width: 100%;
}

@media screen and (max-width: 1023px) {
    .about-us-self-evaluation-page .evaluation-content .evaluation-content-section+.evaluation-content-section .underline.underline-left {
        display: block;
        width: 100%;
        right: 0;
        margin: 0 auto;
        left: 50%;
        transform: translate(-50%, 0)
    }
}

.about-us-self-evaluation-page .evaluation-content p+p {
    margin-top: 3.6rem
}

@media(max-width: 1023px) {
    .about-us-self-evaluation-page .evaluation-content .evaluation-content-text {
        font-size: 2.4rem
    }
    .about-us-self-evaluation-page .evaluation-content .evaluation-content-text>div {
        margin-bottom: 2rem
    }
}

.about-us-self-evaluation-page .evaluation-content-section .underline {
    display: block
}

.about-us-self-evaluation-page .evaluation-content-section .member-intro-item {
    width: 100%;
    height: auto
}

.about-us-self-evaluation-page .evaluation-content-section .member-intro-item .img-wrapper {
    width: 26.2rem;
    height: 35.5rem
}

.about-us-self-evaluation-page .evaluation-content-section .member-intro-item .member-intro-info {
    padding-left: 11.5rem;
    padding-top: 6.9rem
}

.about-us-self-evaluation-page .evaluation-content-section .member-intro-item .member-intro-info .member-intro-name {
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 7.2rem
}

.about-us-self-evaluation-page .evaluation-content-section .member-intro-item .member-intro-info .member-intro-desc {
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 4.32rem;
    padding-top: 3.9rem;
    padding-left: .6rem
}

.about-us-self-evaluation-page .evaluation-content-section.image-section p {
    max-width: 87.2rem
}

.about-us-self-evaluation-page .evaluation-content-section.image-section .img-wrapper {
    margin-right: 4.3rem;
    width: 37.6rem
}

.about-us-self-evaluation-page .evaluation-content-section .evaluation-content-section-group {
    display: flex;
    flex-direction: row;
    justify-content: space-between
}

@media screen and (max-width: 1023px) {
    .about-us-self-evaluation-page .evaluation-content-section .evaluation-content-section-group {
        flex-direction: column
    }
}

.about-us-self-evaluation-page .evaluation-content-section .evaluation-content-section-present {
    margin-top: 4.8rem
}

.about-us-self-evaluation-page .evaluation-content-section .evaluation-content-section-present .row {
    margin-top: 3rem
}

.about-us-self-evaluation-page .auditor-opinion {
    padding-top: 8rem;
    padding-bottom: 7rem
}

.about-us-self-evaluation-page .auditor-opinion .title-line {
    margin-bottom: 10rem
}

.about-us-self-evaluation-page .auditor-opinion .evaluation-button {
    margin-bottom: 4.9rem
}

.about-us-self-evaluation-page .auditor-opinion .auditor-opinion-title {
    margin-bottom: 2.6rem
}

.about-us-self-evaluation-page .auditor-opinion .auditor-opinion-document {
    margin-top: 4.5rem
}

.about-us-self-evaluation-page .auditor-opinion .auditor-opinion-document .auditor-opinion-document-text p {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

@media(max-width: 1023px) {
    .about-us-self-evaluation-page .auditor-opinion .auditor-opinion-document .auditor-opinion-document-text p {
        font-size: 2.4rem;
        margin-bottom: 1rem
    }
}

.about-us-self-evaluation-page .about-us-self-opinion {
    margin-top: 7.6rem
}

.about-us-self-evaluation-page .about-us-self-opinion .about-us-self-opinion-button {
    margin-top: 3rem;
    margin-bottom: 4.7rem
}

.about-us-self-evaluation-page .about-us-self-opinion .about-us-self-opinion-results .about-us-self-opinion-results-time {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.about-us-self-evaluation-page .about-us-self-opinion .about-us-self-opinion-results .about-us-self-opinion-results-content {
    padding-left: 2rem;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.about-us-self-evaluation-page .about-us-quicklink {
    margin-top: 4.7rem
}

@media screen and (max-width: 1023px) {
    /*.about-us-self-evaluation-page .evaluation-content .evaluation-content-section:first-of-type .underline,*/
    /*.about-us-self-evaluation-page .auditor-opinion .evaluation-content-section:first-of-type .underline {*/
    /*    display: none*/
    /*}*/
    .about-us-self-evaluation-page p {
        font-size: 2.4rem;
        line-height: 4.32rem;
        letter-spacing: .05em;
        max-width: unset;
    }
    .about-us-self-evaluation-page .evaluation-content-section.image-section p {
        max-width: unset;
    }
    .about-us-self-evaluation-page .title-line {
        white-space: normal
    }
    .about-us-self-evaluation-page .title-line h2 {
        font-size: 3.2rem;
        letter-spacing: .05rem
    }
    .about-us-self-evaluation-page .headline-img {
        margin-bottom: 3.2rem
    }
    .about-us-self-evaluation-page .self-evaluation {
        margin-bottom: 8rem
    }
    .about-us-self-evaluation-page .self-evaluation .evaluation-button {
        margin-bottom: 3.2rem
    }
    .about-us-self-evaluation-page .evaluation-button .row {
        justify-content: center
    }
    .about-us-self-evaluation-page .evaluation-content-section.image-section .img-wrapper {
        padding-top: 5.2rem;
        margin-right: unset;
        width: 100%;
        display:flex;
    }
    .about-us-self-evaluation-page .evaluation-content-section.image-section .img-wrapper img {
        margin: 0 auto;
    }
    .about-us-self-evaluation-page .evaluation-content-section .member-intro-item .member-intro-info {
        padding-left: unset;
        padding-top: unset
    }
    .about-us-self-evaluation-page .evaluation-content-section .member-intro-item .member-intro-info .member-intro-desc {
        padding-top: unset
    }
    .about-us-self-evaluation-page .evaluation-content-section .member-intro-item .member-intro-info .member-intro-desc span {
        display: block;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 4.32rem
    }
    .about-us-self-evaluation-page .about-us-quicklink {
        margin-top: 7.1rem
    }
    .about-us-self-evaluation-page .auditor-opinion {
        padding-top: 5rem;
        padding-bottom: 6rem
    }
    .about-us-self-evaluation-page .auditor-opinion .evaluation-button {
        margin-bottom: 1.7rem
    }
    .about-us-self-evaluation-page .auditor-opinion .auditor-opinion-title {
        margin-bottom: unset
    }
    .about-us-self-evaluation-page .auditor-opinion .title-line {
        margin-top: -0.7rem
    }
    .about-us-self-evaluation-page .auditor-opinion .title-line h2 {
        font-size: 4rem;
        letter-spacing: .05em;
        line-height: 7.2rem
    }
    .about-us-self-evaluation-page .auditor-opinion .title-line span {
        white-space: wrap;
        display: block;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 4.32rem;
        margin-left: unset;
        margin-top: .1rem
    }
    .about-us-self-evaluation-page .evaluation-content .section-label {
        margin-bottom: .95rem
    }
    .about-us-self-evaluation-page .evaluation-content .title-line+.evaluation-content-text {
        margin-top: .8rem
    }
    .about-us-self-evaluation-page .evaluation-content .evaluation-content-section+.evaluation-content-section {
        margin-top: 5.1rem
    }
    .about-us-self-evaluation-page .evaluation-content p+p {
        margin-top: 4.4rem
    }
    .about-us-self-evaluation-page .about-us-self-opinion .about-us-self-opinion-results .about-us-self-opinion-results-content .about-us-self-opinion-results-text {
        font-weight: 400;
        font-size: 1.6rem;
        letter-spacing: .05em
    }
}

@media screen and (min-width: 1024px) {
    .about-us-self-evaluation-page .headline-img .headline-text {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center
    }
}

.about-us-privacy-policy-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/about-us–中立性のための自己評価/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.about-us-privacy-policy-page .headline-img {
    margin-bottom: 4.2rem
}

.about-us-privacy-policy-page .privacy-policy-opening {
    margin-bottom: 4.4rem
}

.about-us-privacy-policy-page .title-line+.privacy-policy-text {
    margin-top: .65rem
}

.about-us-privacy-policy-page .privacy-policy-content {
    margin-bottom: 14.4rem
}

@media screen and (max-width: 1023px) {
    .about-us-privacy-policy-page .headline-img {
        margin-top: 3.4rem;
        margin-bottom: 2rem
    }
    .about-us-privacy-policy-page .headline-img .headline-text h2 {
        margin: unset
    }
    .about-us-privacy-policy-page .privacy-policy-section .title-line h2 {
        font-size: 3.2rem;
        letter-spacing: .05em;
        line-height: 7.2rem
    }
    .about-us-privacy-policy-page p {
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 4.32rem
    }
    .about-us-privacy-policy-page .privacy-policy-opening {
        margin-bottom: 4.6rem
    }
    .about-us-privacy-policy-page .title-line+.privacy-policy-text {
        margin-top: .85em
    }
    .about-us-privacy-policy-page .privacy-policy-section+.privacy-policy-section {
        margin-top: 5.3rem
    }
}

.privacy-policy-section .title-line {
    color: #3E7472;
    overflow: unset;
    white-space: unset
}

.privacy-policy-section+.privacy-policy-section {
    margin-top: 4.1rem
}

@media screen and (max-width: 1023px) {
    .privacy-policy-section .underline.underline-left {
        width: 100vw;
        left: 0;
        margin: 0
    }
}

.about-us-annual-report-page .title-line {
    white-space: wrap;
    margin-bottom: 3.35rem
}

.about-us-annual-report-page .title-line h2 {
    color: #3E7472
}

@media screen and (max-width: 1023px) {
    .about-us-annual-report-page .title-line .underline-left {
        width: 100%;
        right: 0;
        margin: 0 auto;
        left: 50%;
        transform: translate(-50%, 0)
    }
}

.about-us-annual-report-page .annual-report-content .report-content-section:first-of-type .title-line {
    margin-bottom: 3.35rem
}

.about-us-annual-report-page .annual-report-content .report-content-section:first-of-type .title-line .report-content-group-title {
    display: flex
}

.about-us-annual-report-page .annual-report-content .report-content-section:first-of-type .title-line .report-content-group-title .report-content-group-text {
    width: 50%
}

.activity-report-button {
    display: flex
}

.report-content-group-text{
    border-bottom: 2px solid #3E7472;
    color: #3E7472;
    margin-bottom: 3rem;
}

.about-report-item{
    width: 50%;
}

.activity-report-button .report-content-group-button {
    width: 100%
}

.about-us-annual-report-page .report-content-text p:not(:first-of-type) {
    text-indent: 1.5ch
}

.about-us-annual-report-page .report-content-text p+p {
    margin-top: 3.6rem
}

.about-us-annual-report-page .annual-report {
    margin-bottom: 13.1rem
}

@media screen and (max-width: 1023px) {
    .about-us-annual-report-page .activity-report-button {
        margin-right: unset;
        margin-bottom: 1.3rem
    }
    .about-us-annual-report-page .title-line {
        margin-bottom: 1.75rem
    }
    .about-us-annual-report-page .headline-img {
        margin-bottom: 2.5rem
    }
    .about-us-annual-report-page .report-filter-button {
        margin-bottom: 2.6rem
    }
    .about-us-annual-report-page p {
        font-size: 2.4rem
    }
    .about-us-annual-report-page .annual-report-content .report-content-section:first-of-type .title-line {
        margin-bottom: 2.4rem
    }
}

.report-content {
    display: flex;
    flex-direction: column
}

.report-content.image-float-right {
    flex-direction: row
}

.report-content.image-float-right .img-wrapper {
    width: 100%;
    height: 100%;
    flex: 0 0 40rem
}

.report-content .report-content-text+.img-wrapper {
    margin-top: 4.4rem
}

@media screen and (max-width: 1023px) {
    .report-content.image-float-right {
        flex-direction: column
    }
    .report-content.image-float-right .img-wrapper {
        width: 100%;
        height: 100%;
        flex: 0 0 100%
    }
}

.report-content-section+.report-content-section {
    margin-top: 12rem
}

@media screen and (max-width: 1023px) {
    .report-content-section .title-line h2 {
        font-size: 3.2rem;
        letter-spacing: .05em;
        line-height: 5.76rem
    }
}

.issue-item .issue-title {
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3.6rem;
    color: #3E7472
}

.issue-item .issue-title+p {
    margin-top: 1.1rem
}

.issue-item+.issue-item {
    margin-top: 3.1rem
}

@media screen and (max-width: 1023px) {
    .issue-item .issue-title+p {
        margin-top: 1.3rem
    }
    .issue-item+.issue-item {
        margin-top: 2.6rem
    }
}

@media screen and (max-width: 1023px) {
    .about-us-annual-report-page .report-content-section{
        margin-top: 5rem
    }
    .about-us-annual-report-page .report-content-section .report-content-group-button .about-us-filter-btn.dropdown-btn,
    .about-us-annual-report-page .report-content-section .report-content-group-button .dropdown-btn.section-label {
        margin-left: 0;
        width: 100%
    }
    .about-us-annual-report-page .report-content-section .report-content-group-button .about-us-filter-btn.about-us-report-latest,
    .about-us-annual-report-page .report-content-section .report-content-group-button .about-us-report-latest.section-label {
        width: 100%
    }
    .about-us-annual-report-page .report-content-section .report-content-group-button .about-us-filter-btn,
    .about-us-annual-report-page .report-content-section .report-content-group-button .section-label {
        margin-bottom: 1.3rem
    }
}

.about-us-general-meeting-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/about-us–中立性のための自己評価/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.about-us-general-meeting-page .headline-img {
    margin-bottom: 6.5rem
}

.about-us-general-meeting-page .about-us-quicklink {
    margin-top: 8rem;
    margin-bottom: 10rem
}

@media screen and (max-width: 1023px) {
    .about-us-general-meeting-page .about-us-quicklink {
        margin-top: 7rem;
        margin-bottom: 9rem
    }
}

@media screen and (max-width: 1023px) {
    .about-us-general-meeting-page .headline-img {
        margin-bottom: 3.5rem
    }
}

@media screen and (max-width: 1023px) {
    .filter-button .row {
        justify-content: center;
        align-content: center
    }
}

.section-opening {
    margin-bottom: 5.2rem
}

.section-opening .section-label {
    margin-bottom: 3.2rem
}

@media screen and (max-width: 1023px) {
    .section-opening {
        margin-bottom: 2.8rem
    }
    .section-opening .section-label {
        margin-bottom: 2rem
    }
}

.content-section .title-line h2 {
    color: #3E7472
}

.content-section .title-line+.content-section-text {
    margin-top: 3.1rem
}

.content-section p+p {
    margin-top: 3.6rem
}

.content-section p:not(:first-of-type) {
    text-indent: 2ch
}

@media screen and (max-width: 1023px) {
    .content-section .title-line h2 {
        font-size: 3.2rem;
        letter-spacing: .05em;
        line-height: 7.2rem
    }
    .content-section .title-line+.content-section-text {
        margin-top: 1rem
    }
    .content-section p+p {
        margin-top: 4.35rem
    }
}

@media screen and (max-width: 1023px) {
    .main-content-wrapper p {
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.8em
    }
}

@media screen and (min-width: 1024px) {
    .about-us-self-evaluation-page .evaluation-content-section.image-section p+p {
        margin-top: 0
    }
}

.about-us-office-page h3 {
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.8em
}

.about-us-office-page .banner-img {
    background-image: linear-gradient(rgba(0, 58, 62, 0.74), rgba(0, 58, 62, 0.74)), url(../images/about-us–中立性のための自己評価/1a97c89990b700556e06701efbbe0f17c5836127.png)
}

.about-us-office-page .section-opening {
    margin-bottom: 7rem
}

.about-us-office-page .section-opening .section-label {
    display: block;
    line-height: 6.1rem;
    text-align: unset
}

.about-us-office-page .section-opening .section-label span {
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 3.6rem
}

@media screen and (max-width: 1023px) {
    .about-us-office-page .section-opening {
        margin-bottom: 1.5rem
    }
}

.about-us-office-page .headline-img {
    margin-bottom: 6.5rem
}

.about-us-office-page .title-line {
    text-align: center
}

.about-us-office-page .title-line h2 {
    color: #3E7472;

    min-width: fit-content;
}

.about-us-office-page .btn-outline {
    padding: 1.4rem 5.7rem;
    border-radius: 2rem
}

@media screen and (max-width: 1023px) {
    .about-us-office-page .btn-outline {
        padding: 1.4rem 8rem
    }
    .about-us-office-page .section-opening {
        margin-bottom: 1.5rem
    }
    .about-us-office-page .section-opening .section-label {
        height: auto;
        margin: 6rem 0 4rem;
        padding-bottom: 2rem;
    }
    .about-us-office-page .section-opening .section-label span {
        display: block;
        line-height: normal;
        font-size: 2rem;
    }
}

.google-map {
    width: 50%;
    min-height: 43.8rem;
    flex: 0 0 50%
}

.google-map iframe {
    width: 100%;
    height: 100%
}

.google-map .google-map-outline {
    width: 100%;
    height: 100%;
    outline: 1px solid #707070;
    display: flex;
    justify-content: center;
    align-items: center
}

@media screen and (max-width: 1023px) {
    .google-map {
        width: 100%;
        height: 43.8rem;
        flex: 0 0 100%
    }
}

.office-address-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .office-address-wrapper {
        display: block
    }
}

.train-access {
    display: flex;
    flex-wrap: wrap
}

.train-access .train-access-item {
    width: auto;
    flex: 1 1 calc(50% - 2rem)
}

.train-access .train-access-item h2 {
    flex: 1 1 calc(50% - 2rem)
}

.office-info {
    padding-left: 4.5rem;
    padding-top: 3.8rem
}

.office-info .office-info-access {
    padding-top: 5.7rem
}

.office-info .office-info-access .train-access {
    padding: 1.8rem 3rem 2rem 3.1rem
}

@media screen and (max-width: 1023px) {
    .office-info {
        padding-left: unset;
        padding-top: unset
    }
    .office-info .office-info-content {
        padding-top: 3.2rem
    }
    .office-info .office-info-access .train-access {
        padding: 1.8rem 5.8rem 2.8rem 5.8rem
    }
}

.office-contact-wrapper {
    width: 100%;
    height: 61.8rem;
    margin-top: 8.2rem
}

.office-contact {
    width: 100%;
    height: 100%;
    border: 1px solid #3E7472;
    padding: 5.6rem 12.9rem
}

.office-contact .underline {
    margin-top: .8rem
}

@media screen and (max-width: 1023px) {
    .office-contact {
        padding: 4.9rem 0
    }
    .office-contact .section-title h3 {
        font-size: 4rem;
        letter-spacing: .05em;
        line-height: 4.32rem
    }
    .office-contact .underline {
        margin-top: 1.4rem
    }
}

.office-contact-content {
    padding-top: 3.3rem;
    padding-left: 18.8rem;
    margin-bottom: 4.6rem
}

.office-contact-content span {
    font-size: 2.4rem;
    font-weight: 600;
    letter-spacing: .05em;
    line-height: 1.8em
}

.office-contact-content div+div {
    margin-top: .2rem
}

.office-contact-content .signature {
    margin-top: 2.45rem
}

@media screen and (max-width: 1023px) {
    .office-contact-content {
        padding-left: 2.7rem
    }
    .office-contact-content .contact-email .third-span {
        font-size: 2.4rem;
        font-weight: 600;
        letter-spacing: .05em;
        line-height: 1.8em
    }
}

.contact-phone-number,
.contact-fax,
.contact-email {
    display: flex
}

.contact-phone-number .first-span,
.contact-fax .first-span,
.contact-email .first-span {
    flex: 0 0 14.5rem
}

.contact-phone-number .second-span,
.contact-fax .second-span,
.contact-email .second-span {
    flex: 1 1 25rem;
    max-width: 25rem
}

.contact-phone-number .third-span,
.contact-fax .third-span,
.contact-email .third-span {
    flex: 0 0 auto
}

@media screen and (max-width: 1023px) {
    .contact-phone-number .second-span,
    .contact-fax .second-span,
    .contact-email .second-span {
        flex: 1
    }
    .contact-phone-number .third-span,
    .contact-fax .third-span,
    .contact-email .third-span {
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 4.32rem
    }
}

.about-us-npo-speech-page .banner-img {
    height: 65rem;
    background-size: cover;
    background-position: center
}

.about-us-npo-speech-page .banner-img .banner-text {
    transform: translate(-49.6%, 52%)
}

.about-us-npo-speech-page .banner-img .banner-text .title {
    font-size: 4.8rem;
    line-height: 1em;
    padding-top: .5rem;
    color: #fff
}

.about-us-npo-speech-page .banner-img .banner-text .sub-title {
    padding-top: 2.6rem;
    font-size: 1.6rem;
    color: #fff;
    text-align: center
}

.about-us-npo-speech-page .speech-content {
    padding-top: 8rem
}

.about-us-npo-speech-page .content-wrapper .btn-base {
    display: inline-block;
    margin: auto
}

.about-us-npo-speech-page .npo-speech-slider {
    padding: 0 15.1rem;
    margin-bottom: 5.3rem
}

.about-us-npo-speech-page .npo-speech-slider .swiper-slide {
    padding: 0 13.6rem
}

.about-us-npo-speech-page .npo-speech-slider .swiper-slide .slide-content-wrapper {
    display: flex;
    flex-direction: row;
    background-color: #003a3e;
    border-radius: 2.8rem
}

.about-us-npo-speech-page .npo-speech-slider .swiper-slide .slide-content-wrapper .img-wrapper {
    width: 67.3rem;
    height: 41.1rem;
    border-radius: 1.2rem
}

.about-us-npo-speech-page .npo-speech-slider .swiper-slide .slide-content-wrapper .img-wrapper img {
    height: 100%
}

.about-us-npo-speech-page .npo-speech-slider .swiper-slide .slide-content-wrapper .slide-content-text {
    flex: 1
}

.about-us-npo-speech-page .npo-speech-slider .swiper-button-prev::after,
.about-us-npo-speech-page .npo-speech-slider .swiper-button-next::after {
    content: ""
}

.about-us-npo-speech-page .npo-speech-slider .swiper-button-prev,
.about-us-npo-speech-page .npo-speech-slider .swiper-button-next {
    width: 11rem;
    height: 11rem;
    top: 50%;
    margin-top: 0;
    transform: translateY(-50%);
    background-size: cover
}

.about-us-npo-speech-page .npo-speech-slider .swiper-button-prev {
    background-image: url(../images/about-us-npo-speech/Group\ 393.png);
    left: 13.6rem
}

.about-us-npo-speech-page .npo-speech-slider .swiper-button-next {
    background-image: url(../images/about-us-npo-speech/Group\ 392.png);
    right: 13.6rem
}

.about-us-npo-speech-page .slide-content-text {
    padding: 6.5rem 9.8rem 6rem 4.5rem;
    color: #fff
}

.about-us-npo-speech-page .slide-content-text .underline {
    background-color: #fff
}

.about-us-npo-speech-page .slide-content-text .spokesperson-voice {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 1.5625
}

.about-us-npo-speech-page .slide-content-text .spokesperson-speech {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 1.8;
    max-width: 16em;
    padding-top: 4.7rem;
    padding-left: .5rem
}

.about-us-npo-speech-page .slide-content-text .spokesperson-info {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    padding-top: 1.3rem;
    padding-left: .5rem
}

@media screen and (max-width: 1023px) {
    .about-us-npo-speech-page .banner-img .banner-text {
        transform: translate(-46.4%, 32%)
    }
    .about-us-npo-speech-page .speech-content {
        padding-top: 5rem
    }
    .about-us-npo-speech-page .row .btn-alt {
        width: 60.7rem
    }
    .about-us-npo-speech-page .row a {
        margin: auto
    }
    .about-us-npo-speech-page .spokesperson-banner {
        margin-top: 1rem
    }
    .about-us-npo-speech-page .spokesperson-banner .banner-bg {
        height: 18.4rem;
        align-items: center;
        justify-content: center
    }
    .about-us-npo-speech-page .spokesperson-banner .banner-bg h1 {
        font-weight: 600;
        font-size: 4rem;
        letter-spacing: .05em;
        line-height: 2.16;
        color: #fff
    }
    .about-us-npo-speech-page .spokesperson-caption {
        margin-top: 2.4rem;
        margin-bottom: 4.7rem
    }
    .about-us-npo-speech-page .slide-content-text {
        padding: 5.8rem 0rem 3rem 0rem;
        color: #fff
    }
    .about-us-npo-speech-page .slide-content-text .underline {
        background-color: #fff
    }
    .about-us-npo-speech-page .slide-content-text .spokesperson-voice {
        padding-left: 3.3rem
    }
    .about-us-npo-speech-page .slide-content-text .spokesperson-speech {
        padding: 1.9rem 3.3rem;
        max-width: 100%
    }
    .about-us-npo-speech-page .slide-content-text .spokesperson-info {
        float: right;
        padding-top: 1.6rem;
        padding-right: 1.2rem;
        padding-left: 0
    }
    .about-us-npo-speech-page .spokesperson-content {
        margin-bottom: 0
    }
    .about-us-npo-speech-page .swiper-container {
        padding: 0;
        margin-bottom: 4.4rem
    }
    .about-us-npo-speech-page .swiper-container .swiper-slide {
        padding: 0
    }
    .about-us-npo-speech-page .swiper-container .swiper-slide .slide-content-wrapper {
        display: flex;
        flex-direction: column;
        background-color: #003a3e;
        border-radius: 2.8rem
    }
    .about-us-npo-speech-page .swiper-container .swiper-slide .slide-content-wrapper .img-wrapper {
        width: auto;
        height: 41.1rem;
        border-radius: 1.2rem
    }
    .about-us-npo-speech-page .swiper-container .swiper-slide .slide-content-wrapper .img-wrapper img {
        height: 100%
    }
    .about-us-npo-speech-page .swiper-container .swiper-slide .slide-content-wrapper .slide-content-text {
        flex: 1
    }
    .about-us-npo-speech-page .swiper-container .swiper-button-prev,
    .about-us-npo-speech-page .swiper-container .swiper-button-next {
        top: 50%;
    }
    .about-us-npo-speech-page .swiper-container .swiper-button-prev {
        background-image: url(../images/about-us-npo-speech/Group\ 393.png);
        left: var(--swiper-navigation-sides-offset, 0px)
    }
    .about-us-npo-speech-page .swiper-container .swiper-button-next {
        background-image: url(../images/about-us-npo-speech/Group\ 392.png);
        right: var(--swiper-navigation-sides-offset, 0px)
    }
    .about-us-npo-speech-page .opportunity {
        margin-bottom: 2.8rem
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper {
        display: flex;
        flex-direction: column
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide:not(:last-of-type) {
        border-right: 0
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide:first-of-type.active .img-wrapper .overlay-text,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide:first-of-type.inactive .img-wrapper .overlay-text {
        padding: 7.3rem 3.4rem 3rem 2.9rem
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide:first-of-type.active .img-wrapper .overlay-text .opportunity-slide-title,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide:first-of-type.inactive .img-wrapper .overlay-text .opportunity-slide-title {
        margin-bottom: 1.7rem
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide {
        border-bottom: 1px solid #fff;
        cursor: unset
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.active,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.inactive {
        width: 75rem;
        height: 65rem
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.active .slide-title,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .slide-title {
        display: none
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.active .img-wrapper::before,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .img-wrapper::before {
        background-color: rgba(0, 58, 62, .5)
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.active .img-wrapper .overlay-text,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .img-wrapper .overlay-text {
        padding: 9rem 1.4rem 3rem 2.9rem;
        display: block
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.active .img-wrapper .overlay-text .opportunity-slide-title,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .img-wrapper .overlay-text .opportunity-slide-title {
        letter-spacing: unset;
        margin-bottom: 2rem;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        overflow: hidden;
        -webkit-line-clamp: 2
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.active .img-wrapper .overlay-text .opportunity-slide-title span,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .img-wrapper .overlay-text .opportunity-slide-title span {
        font-weight: 600;
        font-size: 4rem;
        letter-spacing: .05em;
        line-height: 2.16
    }
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.active .img-wrapper .overlay-text .opportunity-slide-caption,
    .about-us-npo-speech-page .opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .img-wrapper .overlay-text .opportunity-slide-caption {
        margin-bottom: 4.6rem;
        min-width: 0;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 5;
        overflow: hidden;
        text-overflow: ellipsis
    }
}

.img-float-right-sp {
    padding-left: 19.9rem;
    object-fit: cover
}

.spokesperson-banner {
    margin-top: .5rem
}

.spokesperson-banner .banner-bg {
    display: flex;
    background-color: #3E7472;
    width: 100%;
    padding: 5rem;
    align-items: center;
    justify-content: center;
    color: #FFF;
    font-size: 4rem;
}

.spokesperson-banner .banner-bg h1 {
    color: #fff
}

.spokesperson-caption {
    margin-top: 6.2rem;
    margin-bottom: 7.4rem
}

.spokesperson-content {
    margin-bottom: 0
}

.opportunity {
    margin-bottom: 2.8rem
}

.opportunity .opportunity-slide-wrapper {
    display: flex;
    flex-direction: row
}

.opportunity .opportunity-slide-wrapper .opportunity-slide:not(:last-of-type) {
    border-right: 1px solid #fff
}

.opportunity .opportunity-slide-wrapper .opportunity-slide {
    width: 8.85%;
    height: 108rem;
    transition: 1s all ease-in-out
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.active {
    width: 100%;
    flex: 1;
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.active .slide-title {
    display: none
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.active .img-wrapper::before {
    background-color: rgba(0, 58, 62, .5)
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.active .img-wrapper .overlay-text {
    display: block
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.inactive {
    width: 16.9rem;
    position: relative;
    cursor: pointer
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .slide-title {
    display: inline
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .img-wrapper::before {
    background-color: rgba(0, 58, 62, .8)
}

.opportunity .opportunity-slide-wrapper .opportunity-slide.inactive .img-wrapper .overlay-text {
    display: none
}

.opportunity .opportunity-slide-wrapper .opportunity-slide .slide-title {
    color: #fff;
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: 1.8;
    position: absolute;
    text-align: center;
    max-width: 1em;
    margin: auto;
    left: 50%;
    top: 7.5%;
    transform: translate(-50%, 0);
    z-index: 30;
    transition: 1s all ease-in-out;
    word-break: break-word;
    max-height: 90%;
    overflow: hidden
}

.opportunity .opportunity-slide-wrapper .opportunity-slide .img-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
    transition: .8s all ease-in-out
}

.opportunity .opportunity-slide-wrapper .opportunity-slide .img-wrapper img {
    width: 100%;
    height: 100%
}

.opportunity .opportunity-slide-wrapper .opportunity-slide .img-wrapper::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 58, 62, .5);
    z-index: 20
}

.opportunity .opportunity-slide-wrapper .opportunity-slide .img-wrapper .overlay-text {
    color: #fff;
    position: absolute;
    top: 0;
    z-index: 30;
    padding: 22.3rem 30rem 3rem 24rem;
    transition: .8s all ease-in-out
}

.opportunity .opportunity-slide-wrapper .opportunity-slide .img-wrapper .overlay-text .opportunity-slide-title {
    margin-bottom: 3.7rem
}

.opportunity .opportunity-slide-wrapper .opportunity-slide .img-wrapper .overlay-text .opportunity-slide-caption {
    margin-bottom: 16.8rem;
}

.list-speech-content .speech-item {
    display: flex;
    align-items: center;
    margin-bottom: 10.5rem
}

.list-speech-content .speech-item.img-left {
    flex-direction: row-reverse
}

.list-speech-content .speech-item.img-left .content-right {
    padding-right: 7rem;
    padding-left: 0
}

.list-speech-content .speech-item.img-left .content-left {
    padding-left: 0;
    padding-right: 0;
}

.list-speech-content .speech-item .content-left {
    width: 50%;
}

.list-speech-content .speech-item .content-left .title {
    font-size: 3rem;
    font-weight: bold
}

.list-speech-content .speech-item .content-left .title span {
    color: #3E7472
}

.list-speech-content .speech-item .content-right {
    width: 50%;
    padding-left: 7rem;
    display: flex
}

.list-speech-content .speech-item .content-right img {
    width: 100%
}

.center-title {
    text-align: center;
    margin-bottom: 10rem
}

.center-title .title {
    font-size: 4.8rem;
    line-height: 1.8
}

.center-title .title span {
    color: #3E7472
}

.bottom-center {
    text-align: center;
    margin-bottom: 1.6rem;
    padding-top: 8rem
}

.bottom-center .title {
    font-size: 4.8rem;
    line-height: 1.8
}

.bottom-center .title span {
    color: #3E7472
}

.spokesperson-content.top-line {
    position: relative
}

.spokesperson-content.top-line::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 4.6rem;
    top: -4.6rem;
    background-color: #e8e8e8;
    z-index: -1
}

.speech-content .bottom-center {
    margin-bottom: 0
}

@media(max-width: 1023px) {
    .list-speech-content .speech-item {
        display: flex;
        flex-wrap: wrap;
        gap: 4.7rem;
        margin-bottom: 4.4rem;
        flex-direction: column-reverse !important
    }
    .list-speech-content .speech-item .content-left {
        width: 100%;
        padding-left: 3rem;
        padding-right: 3rem
    }
    .list-speech-content .speech-item .content-left .title {
        font-size: 3.8rem
    }
    .list-speech-content .speech-item .content-right {
        width: 100%;
        padding-left: 0
    }
    .center-title {
        padding-left: 1rem;
        padding-right: 1rem;
        font-size: 4.6rem;
        margin-bottom: 4.4rem
    }
    .list-speech-content .speech-item.img-left {
        flex-direction: column-reverse
    }
    .list-speech-content .speech-item.img-left .content-right {
        padding-right: 0
    }
    .list-speech-content .speech-item.img-left .content-left {
        padding-right: 0;
        padding-left: 0;
    }
    .about-us-npo-speech-page .npo-speech-slider {
        padding-left: 3rem;
        padding-right: 3rem
    }
    .about-us-npo-speech-page .list-speech-content.list-speech-1 .speech-item {
        flex-direction: column !important
    }
    .list-speech-content .speech-item:nth-child(2) .content-left .title {
        text-align: right
    }
}

.main-activities {
    padding: 7rem 0 8.6rem;
    background-color: #e8e8e8
}

.list-activities {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem 3.9rem
}

.about-jobs {
    padding: 5rem 0 8rem
}

.about-jobs .list-jobs {
    margin-bottom: 10rem
}

.about-us-quicklink.meetting {
    margin: 2.8rem 0 4rem
}

.general-meeting-btn {
    display: inline-block;
    height: 5.9rem;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    padding-top: 1.45rem !important;
    padding-bottom: 1.45rem !important
}

@media(max-width: 1023px) {
    .list-activities {
        display: flex;
        flex-direction: column;
        gap: 2.6rem
    }
    .about-jobs {
        padding: 5rem 0 5rem
    }
    .about-jobs .btn-default {
        min-width: 60rem;
        font-size: 2.4rem;
        min-height: 6rem
    }
    .about-jobs .list-jobs {
        padding-left: 1.6rem;
        padding-right: 1.6rem;
        margin-bottom: 5rem
    }
}

.about-gray-content {
    padding: 13.4rem 0 8.8rem;
    background-color: #e8e8e8
}

.about-gray-content .image-text-box {
    margin-bottom: 10rem
}

.business-content {
    font-size: 2.4rem;
    padding-left: 2rem;
    margin-bottom: 8.4rem
}

.business-content ul {
    list-style: none;
}

.business-content ul li {
    position: relative;
    margin-bottom: 2rem
}

.business-content.remove-before ul {
    padding-left: 0;
    list-style: disc
}

.business-content.remove-before li {
    list-style-position: inside
}

.business-content.remove-before li::before {
    content: unset
}

.list-student-voices {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 7rem
}

.list-student-voices .student-voice-item {
    background-color: #fff;
    border-radius: 1.9rem
}

.list-student-voices .student-voice-item .title {
    padding: 2.4rem 5rem;
    text-align: center;
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    background-color: #3E7472;
    border-radius: 1.3rem;
    line-height: 1.6
}

.list-student-voices .student-voice-item .content {
    padding: 2.8rem;
    /* font-size: 1.6rem */
}

.contact-bottom {
    padding: 12rem 0 2rem
}

.contact-bottom .contact-bottom-content {
    /* font-size: 2.4rem;
    line-height: 1.6; */
    margin-bottom: 10rem;
}

.contact-bottom .contact-bottom-content p {
    margin-bottom: 2.5rem
}

.office-info-content{
    font-size: 2.4rem;
}

.about-us-office-page .contact-bottom-box{
    margin-top: 8rem;
}

.contact-bottom-box {
    border: 1px solid #3E7472;
    padding: 6.3rem 14rem 7.3rem;
    text-align: center;
}

.contact-bottom-box .title {
    text-align: center;
    line-height: 1;
    font-size: 2.4rem;
    color: #121212;
    font-weight: bold;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #707070
}

.contact-bottom-box .box-content {
    padding-top: 4rem;
    font-size: 2.4rem;
    line-height: 2;
    font-weight: bold;
    display: inline-block;
    text-align: left;
}

.contact-bottom-box .box-content .contact-button{
    margin-top: 4rem;
}

.contact-bottom-box .box-content ul {
    padding-left: 0;
    list-style: none
}

.contact-bottom-box .box-content .company {
    display: block;
    margin-top: 2rem
}

.contact-bottom-box .box-content label {
    display: inline-flex;
    min-width: 15rem
}

.list-work-examples {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.1rem 3.76rem
}

@media(max-width: 1023px) {
    .about-gray-content .business-content.remove-before ul {
        padding-left: 0
    }
    .about-gray-content {
        padding: 5rem 0 6rem
    }
    .about-gray-content .green-title {
        width: calc(100% + 4.8rem);
        position: relative;
        left: -2.4rem
    }
    .about-gray-content .business-content {
        padding: 2rem .4rem;
        margin-bottom: 2rem
    }
    .about-gray-content .business-content ul {
        padding-left: 3rem
    }
    .about-gray-content .image-text-box {
        margin-bottom: 2.9rem
    }
    .list-student-voices {
        display: block
    }
    .list-student-voices .student-voice-item:not(:last-child) {
        margin-bottom: 3.8rem
    }
    .list-student-voices .student-voice-item .title {
        font-size: 3.2rem
    }
    .list-student-voices .student-voice-item .content {
        /* font-size: 2.4rem */
    }
    .contact-bottom {
        padding: 8rem 0 4rem
    }
    .contact-bottom .green-title {
        width: calc(100% + 6rem);
        position: relative;
        left: -3rem
    }
    .contact-bottom .container {
        padding: 0 3rem
    }
    .contact-bottom .contact-bottom-content {
        padding: 3rem 0 3rem;
        margin-bottom: 0;
        line-height: 1.8
    }
    .contact-bottom-box {
        padding: 0
    }
    .contact-bottom-box .title {
        padding: 4.6rem 2rem 1rem;
        font-size: 4rem;
        border-bottom-color: #707070
    }
    .contact-bottom-box .box-content {
        padding: 4rem 2.3rem 5rem
    }
    .contact-bottom-box .box-content ul li span:last-child {
        font-size: 1.6rem
    }
    .contact-bottom-box .box-content label {
        min-width: 12rem
    }
    .contact-bottom-box .contact-button {
        margin-top: 5rem
    }
    .contact-bottom-box .contact-button a {
        width: 100%
    }
    .list-work-examples {
        display: block;
        margin-top: 6rem
    }
    .about-gray-content .has-small-text {
        padding: 1rem 0 1rem 2rem;
        font-size: 3.2rem;
        min-height: 6.1rem
    }
}

.btn-default {
    background-color: #3E7472;
    border-radius: 2rem;
    text-align: center;
    padding: 1.7rem 5rem;
    color: #fff
}

.btn-default:hover {
    color: #fff
}

.support-us-contribute {
    padding-top: 5.7rem;
    padding-bottom: 4rem
}

.support-us-contribute .contribute-bg.png {
    height: 53.3rem
}

.support-us-contribute .contribute-wrap {
    padding: 4rem;
    position: relative;
    height: 100%;
    width: 100%;
    background: url("../images/support-us-bequest/contribute-bg.png") no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: 3rem;
    min-height: 53rem;
    display: flex;
    align-items: center
}

@media screen and (max-width: 1023px) {
    .support-us-contribute .contribute-wrap {
        padding: 0
    }
}

.support-us-contribute .contribute-content {
    color: #fff;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    max-width: 127rem;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center
}

.support-us-contribute .contribute-content .text-underline-full-width {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-bottom: 9rem;
    padding-bottom: 6rem;
    position: relative;
    width: 100%;
    text-align: center
}

.support-us-contribute .contribute-content .text-underline-full-width::before {
    content: "";
    position: absolute;
    width: 100%;
    bottom: 1rem;
    left: 0;
    height: 3px;
    background-color: #fff
}

.support-us-contribute .contribute-content h2 {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-bottom: 9rem;
    padding-bottom: 6rem;
    position: relative;
    width: 100%
}

.support-us-contribute .contribute-content h2 span {
    display: block;
    text-align: center;
    overflow: hidden;
    max-height: 7rem
}

.support-us-contribute .contribute-content h2::before {
    content: "";
    position: absolute;
    width: 100%;
    bottom: 1rem;
    left: 0;
    height: 3px;
    background-color: #fff
}

.support-us-contribute .contribute-content p {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    max-width: 124rem;
    width: 100%;
    text-align: justify;
    overflow: hidden;
    max-height: 22rem
}

.notarized-will {
    /*background-color: #e8e8e8;*/
    padding-top: 8rem;
    padding-bottom: 13rem
}

.notarized-will .notarized-will-card {
    margin-bottom: 4rem;
    border: 1px solid #3E7472;
    padding: 3rem 14rem 2rem 14rem;
    background-color: #fff;
    margin-top: 4rem
}

.notarized-will .notarized-will-card ul {
    list-style-type: none;
    padding-left: 0
}

.notarized-will .notarized-will-card ul li {
    display: flex;
    gap: 1.4rem
}

.notarized-will .notarized-will-card ul li::before {
    content: "";
    display: block;
    width: 4rem;
    height: 4rem;
    background-position: center center;
    background-image: url("/grn/assets/images/support-us-bequest/icon-check.png");
    background-size: contain
}

.notarized-will .notarized-will-card ul li img {
    width: 4rem;
    height: 4rem
}

.notarized-will .notarized-will-card ul li p {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    flex: 1
}

.notarized-will .notarized-will-card .card-content {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    display: flex;
    align-items: center;
    max-width: 90rem;
    margin: 0 auto
}

.notarized-will .notarized-will-card .card-content span:not(.card-content-title),
.notarized-will .notarized-will-card .card-content a {
    font-weight: 400;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-decoration: underline;
    color: #222
}

.notarized-will .notarized-will-card .card-content-title {
    min-width: 10rem;
    margin-right: 3rem
}

.notarized-will .notarized-will-card .card-content-flex {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667
}

.notarized-will .notarized-will-card .card-content-flex a {
    margin-right: 5rem
}

.notarized-will .card-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    text-align: center
}

.notarized-will .card-sub-title {
    font-weight: 400;
    font-size: 2.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    text-align: center;
    margin-top: 1rem;
    margin-bottom: 6rem;
    border-bottom: 2px solid #CCCCCC;
    padding-bottom: 2rem;

}

.notarized-will .card-note {
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-top: 2rem
}

.notarized-will .card-wrap {
    margin-top: 4rem
}

.text-underline-full-width {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    border-bottom: .2rem solid #3E7472;
    padding-left: 23rem;
    margin-bottom: 2rem;
    color: #3E7472
}

.text-underline-full-width span {
    font-size: 2.4rem;
    display: inline-flex
}

@media screen and (max-width: 1023px) {
    .support-us-contribute {
        padding: 3rem 0
    }
    .support-us-contribute .contribute-content h2 {
        padding-bottom: 2rem;
        margin-bottom: 4rem
    }
    .support-us-contribute .contribute-content p {
        font-size: 2.4rem
    }
    .support-us-contribute .contribute-content {
        padding: 4rem 3.5rem
    }
    .support-us-contribute .contribute-wrap {
        min-height: 33rem;
        border-radius: 3rem
    }
    .text-underline-full-width {
        padding-left: 0;
        font-size: 4rem;
        padding-left: 2.5rem
    }
    .text-underline-full-width span {
        font-size: 2.4rem
    }
    .notarized-will {
        padding-top: 4rem;
        padding-bottom: 7rem
    }
    .notarized-will .notarized-will-desc {
        font-weight: 400;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667;
        padding: 0 1rem
    }
    .notarized-will .notarized-will-card {
        padding: 2rem 1rem;
        margin-bottom: 9rem
    }
    .notarized-will .notarized-will-card ul {
        padding: 0
    }
    .notarized-will .card-title {
        font-size: 3.2rem
    }
    .notarized-will .notarized-will-card .card-content-title {
        font-size: 2.4rem
    }
    .card-content-flex {
        display: flex;
        flex-direction: column
    }
    .notarized-will .card-note {
        max-width: 60rem;
        margin: 0 auto;
        text-align: center;
        margin-top: 3rem
    }
    .notarized-will .notarized-will-card .card-content {
        padding: 0 2rem 0 4rem
    }
}

.text-content-sp {
    font-weight: 400;
    letter-spacing: .05em
}

.my-page {
    display: flex;
    width: 100%;
    background-color: #e8e8e8
}

.my-page .content-mypage {
    flex: 1
}

.my-page .content-mypage .article-infor {
    max-width: 117.4rem;
    margin-left: 4rem
}

.my-page .content-mypage .article-infor .container .title-posts::after {
    content: "";
    display: block;
    width: 2px;
    height: 5rem;
    background-color: #707070;
    margin-left: 41.6rem
}

.my-page .content-mypage .article-infor .container .post-information {
    background-color: #fff;
    width: 117.3rem
}

.my-page .content-mypage .article-infor .container .post-information .item-frist-post {
    height: 8.9rem;
    padding: 2.5rem 3.5rem 1.5rem 3.5rem;
    border: 1px solid #707070;
    border-left: 5px solid #3E7472
}

.my-page .content-mypage .article-infor .container .post-information .item-frist-post p {
    font-size: 4rem;
    letter-spacing: .2rem
}

.my-page .content-mypage .article-infor .container .post-information .list-item {
    padding: 4rem 8rem 3rem 9rem;
    margin-bottom: 8.5rem
}

.my-page .content-mypage .article-infor .container .post-information .list-item .item-info {
    border-bottom: 1px solid #707070;
    padding-bottom: .5rem;
    margin-bottom: 5rem;
    padding-bottom: 1rem;
    margin-bottom: 6rem
}

.my-page .content-mypage .article-infor .container .post-information .list-item .item-info .span-boder {
    border: 1px solid #3E7472;
    border-radius: 1.2rem;
    color: #3E7472;
    padding: .7rem 1.7rem;
    font-size: 2.4rem
}

.my-page .content-mypage .article-infor .container .post-information .list-item .item-info p {
    font-size: 2.4rem;
    color: #121212;
    display: inline-block;
    margin: 0 1rem 0 1.2rem
}

.my-page .content-mypage .article-infor .container .post-information .list-item .item-info span {
    font-size: 1.6rem;
    color: #121212
}

.my-page .content-mypage .article-infor .container .post-information .list-item .item-info .sp-red {
    border: 1px solid #e30a0a;
    color: #e30a0a
}

.my-page .content-mypage .article-infor .container .post-information .list-item .item-info:last-child {
    margin-bottom: 7rem
}

.my-page .content-mypage .article-infor .container .post-information .pagination {
    padding-top: 2rem;
    margin-top: 1.4rem;
    display: flex;
    justify-content: center;
    column-gap: 2.3rem;
    margin-bottom: 0
}

.my-page .content-mypage .article-infor::before {
    display: block;
    content: "";
    width: 2px;
    height: 7rem;
    background-color: #707070;
    margin-left: 47.6rem
}

.infor-mypage {
    background-color: #fff;
    padding: 5.5rem 4rem;
}

.infor-mypage .container h2 {
    font-size: 4rem;
    line-height: 7.2rem;
    color: #121212;
    margin-bottom: 1rem
}

.infor-mypage .container p {
    font-size: 2.4rem;
    letter-spacing: .15rem
}

.infor-mypage .container .info-corporation {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.title-posts {
    background-color: #fff;
    width: 117.3rem;
    height: 8.9rem;
    margin-bottom: 5rem;
    padding: 2.5rem 3.4rem 1.5rem 3.4rem;
    border: 1px solid #707070;
    border-left: 5px solid #3E7472
}

.title-posts p {
    font-size: 4rem;
    line-height: 5.6rem;
    letter-spacing: .2rem;
    color: #121212
}

.title-posts p span {
    font-size: 2.4rem
}

@media(max-width: 1023px) {
    .nav-menu.show {
        display: block
    }
    .my-page {
        flex-direction: column
    }
    .my-page .sidebar {
        order: 2;
        position: relative;
        top: 0;
        bottom: 0
    }
    .my-page .content-mypage .article-infor {
        margin-left: 3rem
    }
    .my-page .content-mypage .article-infor .container .title-posts {
        width: auto;
        margin-top: 7rem
    }
    .my-page .content-mypage .article-infor .container .title-posts:after {
        display: none
    }
    .my-page .content-mypage .article-infor .container .post-information {
        width: auto
    }
    .my-page .content-mypage .article-infor .container .post-information .list-item {
        padding-left: 5rem;
        padding-right: 5rem;
        margin-bottom: 3.5rem
    }
    .my-page .content-mypage .article-infor .container .post-information .list-item .item-info:last-child {
        margin-bottom: 4.5rem
    }
    .my-page .content-mypage .article-infor .container .post-information .pagination {
        padding-top: 0;
        margin-top: -1.4rem
    }
    .my-page .content-mypage .article-infor::before {
        display: none
    }
    .sidebar .nav-menu {
        width: 100%;
        position: absolute;
        bottom: 100%;
        z-index: 1
    }
    .sidebar .nav-menu ul li:first-child {
        width: 44rem
    }
}

.mypage-forum .packet-mypage-forum .forum-posts .schedule-event-item .event-info {
    padding-bottom: 3rem 0 0;
}

.mypage-forum .packet-mypage-forum .forum-posts .schedule-event-item .event-info .event-title {
    margin-top: 0
}

.mypage-forum .forum-posts .post-type-wrap {
    background-color: #fff
}

@media screen and (max-width: 776px) {
    .my-page .content-mypage .article-infor {
        margin-left: 1rem
    }
    .my-page .content-mypage .article-infor .container .post-information .list-item {
        padding-top: 7rem;
        padding-left: 5.5rem
    }
    .my-page .content-mypage .article-infor .container .post-information .list-item .item-info {
        padding-bottom: .5rem;
        margin-bottom: 6rem
    }
    .my-page .content-mypage .article-infor .container .post-information .list-item .item-info:nth-child(3) {
        margin-bottom: 7rem
    }
    .my-page .content-mypage .article-infor .container .post-information .list-item .item-info:nth-child(4) {
        margin-bottom: 8rem
    }
    .infor-mypage {
        padding-left: 1rem
    }
}

.mypage-payhistory {
    display: flex;
    background-color: #e8e8e8
}

.mypage-payhistory .mypage-pay {
    flex: 1
}

.list-mypage-pay {
    margin: 0 6.3rem 10.7rem 3.5rem;
    background-color: #fff;
    font-size: 2rem;
    font-weight: 400;
    padding: 2rem 0 8.3rem 0
}

.list-mypage-pay .row_list {
    min-height: 7.2rem;
    border-bottom: 1px solid #707070;
    display: flex;
    align-items: center;
    padding-left: 3.5rem;
    padding-right: 3rem
}

.list-mypage-pay .row_list .date {
    width: 13%;
    color: #222
}

.list-mypage-pay .row_list .label_mp {
    text-align: center;
    width: 12%;
    height: 4rem;
    color: #fff
}

.list-mypage-pay .row_list .label_forum {
    background-color: #04a710
}

.list-mypage-pay .row_list .label_donation {
    background-color: #d18f11
}

.list-mypage-pay .row_list .label_report {
    background-color: #0b85c6
}

.list-mypage-pay .row_list .label_regester {
    background-color: #d52222;
    margin-left: 13%
}

.list-mypage-pay .row_list p {
    width: 42%;
    display: inline-block;
    margin-left: 3rem;
    color: #222
}

.list-mypage-pay .row_list .span {
    width: 16%;
    display: inline-block
}

.list-mypage-pay .row_list a,
.list-mypage-pay .row_list button {
    width: 17%;
    display: block;
    margin-left: 8rem;
    border: 1px solid #464646;
    border-radius: 2.3rem;
    padding: 6px 3.5rem;
    text-align: center;
    color: #464646;
    font-weight: 600
}

.modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .2);
    z-index: 99;
    transition: all .3s ease-in-out
}

.modal-overlay.active {
    display: block
}

.modal-wrapper {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) scale(0);
    background-color: #fff;
    border-radius: 1rem;
    padding: 3rem;
    min-width: 60rem;
    z-index: 100;
    font-size: 2rem;
    transition: all .3s ease-in-out
}

.modal-wrapper.active {
    transform: translate(-50%, -50%) scale(1)
}

.modal-wrapper .modal button {
    margin-left: 0
}

.modal-wrapper .modal .modal-header button.btn-close {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 3.8rem;
    height: 3.8rem;
    font-size: 3rem;
    padding: 0;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0);
    border: none;
    min-width: auto;
}

.modal-wrapper .modal .modal-body {
    padding: 3rem 0
}

.modal-wrapper .modal .modal-body .type-wrap {
    margin-top: 2rem
}

.modal-wrapper .modal .modal-body .form-group {
    display: flex;
    flex-direction: column;
    gap: .2rem
}

.modal-wrapper .modal .modal-body .form-group+.form-group {
    margin-top: 2rem
}

.modal-wrapper .modal .modal-body .form-group label {
    line-height: 2
}

.modal-wrapper .modal .modal-body .form-group select,
.modal-wrapper .modal .modal-body .form-group input {
    min-width: 60.6rem;
    height: 4.8rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 3rem;
    border: 1px solid #707070;
}

.modal-wrapper .modal .modal-footer {
    margin-top: 3rem;
    gap: 2rem;
    display: flex;
    align-items: center;
    justify-content: center
}

.title-payhistory {
    background-color: #fff;
    margin: 6rem 0 6rem 3.5rem;
    padding: 3rem;
    border: 1px solid #707070;
    border-left: 5px solid #3E7472
}
.title-payhistory .note{
    margin-top: 1rem;
}

.title-payhistory p {
    font-size: 2.4rem;
    line-height: 2.8rem;
    color: #222
}
@media(max-width: 1023px){
    .title-payhistory p{
        font-size: 3rem;
    }
    .title-payhistory .note{
        font-size: 2rem;
    }
}

.list-mypage-pay .row_list .label_forum {
    display: flex;
    align-items: center;
    justify-content: center
}

.list-mypage-pay .row_list button,
.list-mypage-pay .row_list a {
    min-width: 22.6rem;
    line-height: 2.25;
    background-color: #fff;
    font-size: 2rem
}

.list-mypage-pay .row_list a {
    margin-left: auto
}

@media(max-width: 1023px) {
    .mypage-payhistory {
        flex-direction: column-reverse;
        padding-bottom: 3rem
    }
    .mypage-payhistory .mypage-pay .infor-mypage {
        padding-left: 1rem
    }
    .mypage-payhistory .mypage-pay .sidebar-mb ul {
        justify-content: space-between
    }
    .mypage-payhistory .list-mypage-pay .row_list a {
        margin-left: auto
    }
    .list-mypage-pay {
        margin-right: 2rem;
        margin-left: 2rem;
        margin-bottom: 6rem;
        padding-top: 0;
        padding-bottom: 11rem
    }
    .list-mypage-pay .row_list {
        flex-wrap: wrap;
        padding-top: 2rem;
        padding-bottom: 1rem;
        min-height: 11rem
    }
    .list-mypage-pay .row_list .date {
        width: 21%
    }
    .list-mypage-pay .row_list .label_mp {
        width: 16.2rem;
        margin-left: 1.4rem
    }
    .list-mypage-pay .row_list .label_regester {
        margin-left: 22%
    }
    .list-mypage-pay .row_list p {
        width: 26%;
        margin-left: 1.6rem
    }
    .list-mypage-pay .row_list a {
        width: auto;
        border-radius: 2.3rem;
        padding: 2px 3.5rem;
        color: #3E7472;
        margin-top: 6px;
        margin-left: 72%;
        border: 1px solid #464646;
        text-shadow: 1px 1px #464646
    }
    .list-mypage-pay .row_list span {
        flex: 1;
        text-align: end
    }
    .list-mypage-pay .row_list .label_forum {
        font-size: 2rem !important
    }
    .list-mypage-pay .row_list:nth-child(n+6) {
        /* display: none */
    }
    .list-mypage-pay .row_list:nth-child(4) {
        align-items: flex-start
    }
}

.container-update-info-menber {
    display: flex
}

.container-update-info-menber .notifications-mypage {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 999
}

.container-update-info-menber .update-info-menber {
    flex: 1;
    background-color: #e8e8e8
}

.packet-update-info {
    max-width: 136rem;
    margin-left: 4rem;
    margin-top: 4.5rem;
    background-color: #fff;
    padding: 5rem 5rem 7.5rem;
    margin-bottom: 1.5rem
}

.packet-update-info .option-menber {
    margin-bottom: 7.5rem;
    padding: 0 1.4rem 0 2rem
}

.packet-update-info .option-menber h2 {
    border-bottom: 1px solid #707070;
    font-size: 2.4rem;
    font-weight: 600;
    margin-bottom: 3.5rem
}

.packet-update-info .option-menber h2 span {
    color: #3E7472;
    border-bottom: 5px solid #3E7472;
    padding-bottom: 6px
}

.packet-update-info .option-menber .list-option {
    display: flex;
    justify-content: space-between
}

.packet-update-info .option-menber .list-option input[type=radio] {
    display: none
}

.packet-update-info .option-menber .list-option label {
    display: block;
    cursor: pointer;
    color: #3E7472;
    border: 1px solid #3E7472;
    border-radius: 3rem;
    padding: 1rem;
    width: 21rem;
    font-size: 2.4rem;
    text-align: center
}

.packet-update-info .option-menber .list-option #option-menber-1:checked~.option-mb-1,
.packet-update-info .option-menber .list-option #option-menber-2:checked~.option-mb-2,
.packet-update-info .option-menber .list-option #option-menber-3:checked~.option-mb-3,
.packet-update-info .option-menber .list-option #option-menber-4:checked~.option-mb-4,
.packet-update-info .option-menber .list-option #option-menber-5:checked~.option-mb-5 {
    background-color: #3E7472;
    color: #fff
}

.packet-update-info .option-menber input {
    font-size: 2.4rem
}

.packet-update-info .btn-form {
    display: block;
    cursor: pointer;
    margin: 0 auto;
    width: 60.7rem;
    height: 5.9rem;
    background-color: #3E7472;
    margin-top: 7.5rem;
    border-radius: 2.1rem;
    color: #fff;
    font-size: 2.4rem;
    font-weight: 400;
    letter-spacing: .5px;
    border: none
}

.item-update-info {
    margin-top: 4rem
}

.item-update-info h2 {
    border-bottom: 1px solid #707070;
    font-size: 2.4rem;
    font-weight: 600;
    margin-bottom: 3rem
}

.item-update-info h2 span {
    display: inline-block;
    color: #222;
    position: relative
}

.item-update-info h2 span::after {
    content: "";
    width: 100%;
    height: .5rem;
    background-color: #3E7472;
    position: absolute;
    left: 0;
    bottom: -0.25rem
}

.item-update-info .item-info-name {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.item-update-info .item-info {
    margin-bottom: 1rem
}

.item-update-info .item-info label {
    display: block;
    font-size: 2.4rem;
    color: #121212
}

.item-update-info .item-info label > span:not(.desc) {
    background-color: red;
    color: #fff;
    font-size: 1.7rem;
    border-radius: 8px;
    padding: 2px 5px;
    margin-left: 6px
}

.item-update-info .item-info label > span.note{
    color: #000;
    background-color: transparent;
    padding: 0;
    font-style: italic;
}

.item-update-info .item-info input {
    font-size: 2.4rem;
    padding: 1rem 1.5rem;
    width: 60.7rem;
    height: 4.9rem;
    border: 1px solid #707070;
    transition: all .3s
}

.item-update-info .item-info input:focus {
    border-color: #000
}

.item-update-info .item-info .list-radio {
    margin-left: 5.5rem;
    display: flex;
    align-items: center
}

.item-update-info .item-info .list-radio input {
    width: auto
}

.item-update-info .item-info .list-radio label {
    display: inline-block;
    cursor: pointer;
    margin-right: 7rem;
    font-weight: 500
}

.item-update-info .item-info .list-radio .radio {
    width: 2.4rem;
    height: 2.4rem;
    margin-right: 1rem
}

.item-update-info .item-info .item-info-title {
    margin-bottom: 1.8rem;
}

.item-update-info .item-info .item-info-title span.desc-input {
    font-style: italic;
}

.item-update-info .item-info:last-child p {
    font-size: 2.2rem;
    color: #121212;
}

.item-update-info .item-info:last-child p span {
    background-color: red;
    color: #fff;
    font-size: 1.7rem;
    border-radius: 8px;
    padding: 2px 5px;
    margin-left: 6px
}

.item-update-info .name-form {
    display: inline-block;
    width: calc(50% - 1rem);
}

.item-update-info .name-form input {
    width: 34.6rem
}

.item-update-info .name-form:nth-child(3) {
    margin-right: 20rem
}

.item-update-info .item-job {
    margin-bottom: 2rem
}

.item-update-info .item-job .select-item {
    width: 60.7rem;
    padding: 1rem 1.5rem;
    font-size: 2.4rem;
    background: url(../images/component/＞.png) no-repeat right;
    appearance: none;
    background-position-x: 56rem;
    -webkit-appearance: none;
    color: #222;
    border: 1px solid #707070;
    border-radius: 0;
    line-height: 1
}

.item-update-info .item-job .select-item option {
    font-size: 2.4rem;
    padding: 1rem 1.5rem;
    color: #222
}

.item-update-info .item-job .select-item:focus {
    border-color: #707070
}

.contact-details h2 {
    margin-bottom: 3rem
}

.contact-details .item-info {
    margin-bottom: 3rem
}

.contact-details .item-info .title-info-contact {
    display: flex;
    align-items: flex-end
}

.contact-details .item-info .title-info-contact h3 {
    font-size: 2.4rem;
    background-color: #fff;
    margin-right: 1.3rem
}

.contact-details .item-info .title-info-contact p {
    font-size: 1.6rem
}

.contact-details .item-info .list-radio label {
    margin-right: 8.5rem
}

.contact-details .item-info:nth-child(3) {
    margin-bottom: 1rem
}

.contact-details .item-info:nth-child(4) input {
    width: 100%
}

.privacy-policy {
    background-color: rgba(96, 96, 96, .17);
    border: 1px solid #707070;
    padding: 2rem 2.4rem;
    margin-top: 6rem
}

.privacy-policy p {
    font-size: 2.4rem;
    font-weight: 600
}

.privacy-policy p span,
.privacy-policy label span{
    background-color: red;
    color: #fff;
    font-size: 1.7rem;
    border-radius: 8px;
    padding: 2px 5px;
    margin-left: 0.4rem;
}

.privacy-policy .radio {
    width: 2.4rem;
    height: 2.4rem
}

.privacy-policy label {
    font-size: 2rem;
    font-weight: 600;
}
.privacy-policy label a{
    text-decoration: underline;
    text-underline-offset: 3px;
}

.container-update-info-menber.change-membership .membership-types .membership-types-body ul li::after {
    content: unset
}

.container-update-info-menber.change-membership .membership-types .membership-types-body ul li {
    padding-left: 0;
    gap: .5rem
}

.container-update-info-menber.change-membership .membership-types .membership-types-body ul li::before {
    min-width: 2.8rem;
    height: 2.5rem;
    position: relative;
    content: "";
    background-image: url(/grn/assets/images/become-a-member/icon-check.png);
    background-size: contain;
    background-repeat: no-repeat;
    top: .6rem
}

.container-update-info-menber.change-membership .change-membership .membership-types .membership-types-wrap {
    max-width: 106.8rem
}

@media(max-width: 1023px) {
    .container-update-info-menber {
        flex-direction: column-reverse;
        background-color: #e8e8e8
    }
    .packet-update-info {
        margin-top: 3.5rem;
        margin-left: 0;
        padding: 4rem 2.4rem;
    }
    .packet-update-info .option-menber {
        padding: 0;
        margin-bottom: 3.3rem
    }
    .packet-update-info .option-menber h2 {
        line-height: normal
    }
    .packet-update-info .option-menber h2 span {
        line-height: normal;
        border-bottom-width: .5rem
    }
    .packet-update-info .option-menber .list-option {
        justify-content: center;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: stretch;
        gap: 3px
    }
    .item-update-info {
        padding: 0
    }
    .item-update-info .name-form:nth-child(3) {
        margin-right: 0
    }
    .contact-details {
        padding: 0
    }
    .contact-details .item-info .title-info-contact {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap
    }
    .contact-details .item-info .title-info-contact h3 {
        width: 100%
    }
    .contact-details .item-info .title-info-contact p {
        width: 100%
    }
    .contact-details .name-form:nth-child(3) {
        margin-right: 0
    }
    .packet-update-info {
        padding-bottom: 6rem;
        margin-bottom: 4rem
    }
    .packet-update-info .option-menber {
        margin-bottom: 1rem;
        padding-left: 1rem
    }
    .packet-update-info .option-menber h2 span {
        padding-bottom: 0
    }
    .item-update-info {
        margin-top: 0
    }
    .item-update-info .item-info .list-radio {
        margin-bottom: 3rem
    }
    .item-update-info .item-job {
        margin-top: 2rem
    }
    .item-update-info:nth-child(2) {
        padding-left: 1rem
    }
    .contact-details .item-info {
        margin-bottom: 0
    }
    .contact-details h2 {
        margin-bottom: 2rem
    }
    .container-update-info-menber .contact-details .item-info .title-info-contact {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap
    }
    .container-update-info-menber .contact-details .item-info .title-info-contact h3 {
        width: auto
    }
    .container-update-info-menber .contact-details .item-info .title-info-contact p {
        width: unset;
        flex: 1
    }
}

.packet-register {
    background-color: #e8e8e8;
    padding-top: 8.5rem;
    padding-bottom: 1rem
}

.packet-register .list-step-register .packet-step-ar:first-child .item-step {
    background-color: #003a3e
}

.packet-register .container .title-pc {
    font-size: 4rem;
    font-weight: 600;
    line-height: 72px;
    margin-bottom: 5.2rem;
    text-align: center
}

.packet-register .container .packet-update-info {
    background-color: #fff;
    margin: 0 auto;
    margin-top: 4.5rem;
    max-width: 144rem;
    margin-bottom: 6rem;
    padding-left: 12rem;
    padding-right: 11.5rem
}

.list-step-register {
    display: flex;
    gap: 1rem;
    justify-content: center;
    align-items: center
}

.list-step-register .packet-step-ar {
    display: flex;
    align-items: center;
    gap: 1rem
}

.list-step-register .packet-step-ar .item-step {
    display: flex;
    align-items: center;
    width: 29.3rem;
    height: 8.6rem;
    align-items: center;
    background-color: #606060;
    border: 1px solid #707070;
    border-radius: 4.3rem;
    padding: 1rem;
    gap: 1rem
}

.list-step-register .packet-step-ar .item-step .item-cicrle {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border: none;
    border-radius: 50%;
    text-align: center;
    width: 6.4rem;
    height: 6.4rem
}

.list-step-register .packet-step-ar .item-step .item-cicrle .cicrle-icon {
    width: 3rem;
    height: 3rem;
    align-items: center;
    justify-content: center;
    display: flex;
}

.list-step-register .packet-step-ar .item-step .item-cicrle .cicrle-icon img {
    width: 100%;
    height: auto;
    object-fit: cover
}

.list-step-register .packet-step-ar .item-step p {
    display: flex;
    flex-direction: column;
    color: #fff
}

.list-step-register .packet-step-ar .item-step p span:first-child {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2rem;
    margin-bottom: .4rem
}

.list-step-register .packet-step-ar .item-step p span:last-child {
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.list-step-register .packet-step-ar .icon-arrow {
    width: 1.2rem;
    height: 3.2rem;
    display: block;
    background-image: url("../images/register/arrow-right.png");
    background-size: cover
}

.title-mb {
    display: none
}

@media(max-width: 1023px) {
    .list-step-register {
        flex-wrap: wrap;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    .list-step-register .packet-step-ar:first-child {
        padding-left: 2.2rem
    }
    .packet-register {
        padding-top: 3rem
    }
    .packet-register .container .packet-update-info {
        margin-top: 3rem;
        padding: 2.6rem 3rem 0
    }
    .packet-register .container .packet-update-info .option-menber {
        margin-bottom: 3rem
    }
    .packet-register .container .packet-update-info .item-update-info {
        margin-top: 0
    }
    .packet-register .container .packet-update-info .item-update-info .name-form input {
        width: 30rem
    }
    .packet-register .container .packet-update-info .item-update-info .item-info .list-radio {
        margin-left: 4rem
    }
    .packet-register .container .packet-update-info .item-update-info .item-info .list-radio label {
        margin-right: 6.5rem
    }
    .title-pc {
        display: none
    }
    .title-mb {
        display: block
    }
    .list-step-register {
        justify-content: center
    }
    .list-step-register .packet-step-ar .item-step {
        height: 6rem;
        align-items: center
    }
    .list-step-register .packet-step-ar .item-step .item-cicrle {
        height: 4.7rem;
        padding: 1rem 1.5rem
    }
    .list-step-register .packet-step-ar .item-step p {
        line-height: 13px
    }
    .list-step-register .packet-step-ar .item-step p span:first-child {
        margin-bottom: 0
    }
    .packet-register {
        padding-top: 2rem
    }
    .packet-register .container {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }
    .packet-register .container .title-mb {
        margin-bottom: 1rem;
        text-align: center
    }
    .packet-register .container .packet-update-info {
        padding-bottom: 6rem;
        margin-bottom: 2rem
    }
    .packet-register .container .packet-update-info .item-update-info .item-info {
        margin-bottom: 2rem
    }
    .packet-register .container .option-menber {
        padding-left: 0
    }
    .packet-register .container .option-menber .list-option {
        gap: 1.4rem 1rem
    }
    .packet-register .container .option-menber .list-option label {
        padding: 1rem;
        line-height: 1.5;
        margin: 0
    }
    .packet-register .item-update-info .item-info input.postal-code {
        width: 100%
    }
}

.confirm-registration-content {
    background-color: #e8e8e8;
    padding-top: 7rem;
    padding-bottom: 9rem
}

.confirm-registration-content .container h1 {
    text-align: center;
    margin-bottom: 5rem
}

.confirm-registration-content .container .list-step-register {
    margin-bottom: 4.5rem
}

.confirm-registration-content .container .list-step-register .packet-step-ar:nth-child(2) .item-step {
    background-color: #003a3e
}

.confirm-registration-content .container .confirm-registration {
    background-color: #fff;
    padding: 5rem 14.4rem
}

.confirm-registration-content .container .confirm-registration .item-form {
    margin-bottom: 3.5rem
}

.confirm-registration-content .container .confirm-registration .item-form h2 {
    border-bottom: 1px solid #707070;
    font-size: 2.4rem;
    font-weight: 600;
    margin-bottom: 2rem;
    line-height: 37px
}

.confirm-registration-content .container .confirm-registration .item-form h2 span {
    display: inline-block;
    color: #222;
    line-height: normal;
}

.confirm-registration-content .container .confirm-registration .item-form:first-child h2 span {
    color: #3E7472
}

.confirm-registration-content .container .confirm-registration .item-form:first-child p {
    color: #3E7472;
    margin-bottom: 0
}

.confirm-registration-content .container .confirm-registration .item-form p {
    font-size: 2.4rem;
    margin-bottom: 2rem
}

.confirm-registration-content .container .confirm-registration .item-form p span {
    display: block
}

.confirm-registration-content .container .confirm-registration .item-form p .password {
    max-width: 23rem;
    height: 3.2rem;
    background-image: url(../images/register/icon-star.png);
    background-repeat: repeat-x;
    background-size: contain
}

.confirm-registration-content .container .confirm-registration .item-form .name {
    display: flex
}

.confirm-registration-content .container .confirm-registration .item-form .name p {
    min-width: 34.6rem
}

.confirm-registration-content .container .confirm-registration .item-form:nth-child(4) {
    margin-bottom: 7rem
}

.confirm-registration-content .container .confirm-registration .btn-confirm {
    text-align: center
}

.confirm-registration-content .container .confirm-registration .btn-confirm button {
    font-size: 2.4rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    background-color: #fff;
    color: #3E7472
}

.confirm-registration-content .container .confirm-registration .btn-confirm .edit {
    width: 26.6rem;
    border: 1px solid #3E7472;
    border-radius: 2.1rem;
    margin-right: 1rem
}

.confirm-registration-content .container .confirm-registration .btn-confirm .send {
    cursor: pointer;
    min-width: 37.7rem;
    color: #fff;
    background-color: #3E7472;
    border: none;
    border-radius: 2.1rem
}

.confirm-registration-content .container .confirm-registration .btn-confirm-mb {
    display: none
}

@media(max-width: 1023px) {
    .confirm-registration-content {
        padding-top: 3.5rem;
        padding-bottom: 4rem
    }
    .confirm-registration-content .container h1 {
        margin-bottom: 2.5rem
    }
    .confirm-registration-content .container .confirm-registration {
        padding-left: 2.8rem;
        padding-right: 3.4rem;
        padding-top: 2.5rem
    }
    .confirm-registration-content .container .confirm-registration .btn-confirm {
        display: none
    }
    .confirm-registration-content .container .confirm-registration .btn-confirm-mb {
        font-size: 2.4rem;
        color: #fff;
        background-color: #3E7472;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
        border: none;
        border-radius: 2.1rem;
        width: 93%;
        display: block;
        margin: 0 auto
    }
}

@media screen and (max-width: 767px) {
    .title-mb {
        font-size: 4rem;
        font-weight: 600;
        margin-bottom: 1rem
    }
    .confirm-registration-content {
        padding-top: 1.5rem;
        padding-bottom: 2rem
    }
    .confirm-registration-content .container {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }
    .confirm-registration-content .container h1 {
        margin-bottom: 1rem
    }
    .confirm-registration-content .container .confirm-registration {
        padding-top: 2rem;
        padding-left: 3.5rem;
        padding-bottom: 8rem
    }
    .confirm-registration-content .container .confirm-registration .item-form {
        margin-bottom: 5rem
    }
    .confirm-registration-content .container .confirm-registration .item-form h2 {
        line-height: normal
    }
    .confirm-registration-content .container .confirm-registration .item-form:nth-child(4) {
        margin-bottom: 5rem
    }
    .confirm-registration-content .container .confirm-registration .item-form:nth-child(4) h2 {
        margin-bottom: 3rem
    }
    .confirm-registration-content .container .confirm-registration .item-form:nth-child(4) p:nth-child(4) {
        margin-right: 15rem;
        margin-bottom: 3rem
    }
    .confirm-registration-content .container .confirm-registration .btn-confirm-mb {
        font-size: 2.4rem;
        color: #fff;
        background-color: #3E7472;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
        border: none;
        border-radius: 2.1rem;
        width: 93%;
        display: block;
        margin: 0 auto
    }
    .confirm-registration-content .container .list-step-register {
        margin-bottom: 3rem
    }
}

.tax-contribute .hometown-tax-donation-bg .title {
    color: #3E7472;
    padding: 0;
    text-align: center;
    margin-bottom: 7.2rem
}

.tax-contribute .hometown-tax-donation-bg .content {
    text-align: center
}

.support-us-hometown-tax-donation {
    overflow-x: hidden
}

.support-us-hometown-tax-donation .support-us-contribute {
    padding-bottom: 0
}

.support-us-hometown-tax-donation .btn {
    display: inline-block;
    text-align: center;
    user-select: none;
    text-wrap: nowrap;
    padding: .2rem 6rem;
    border-radius: 2rem;
    font-size: 2.4rem;
    transition: all .3s linear
}

.support-us-hometown-tax-donation .btn.btn-outline {
    color: #3E7472;
    border: 1px solid #3E7472
}

.support-us-hometown-tax-donation .btn.btn-outline:hover,
.support-us-hometown-tax-donation .btn.btn-outline:active,
.support-us-hometown-tax-donation .btn.btn-outline:focus {
    color: #fff;
    background-color: #3E7472
}

.support-us-hometown-tax-donation .btn.btn-filled {
    color: #fff;
    border: 1px solid #3E7472;
    background-color: #3E7472
}

#notarized-will .text-underline-full-width {
    margin-top: 11rem
}

/*.support-us-hometown-tax-donation #notarized-will.notarized-will {*/
/*    padding-top: 6rem*/
/*}*/

.support-local .text-underline-full-width,
.donation-agency .text-underline-full-width {
    padding-right: 43rem !important;
    margin-bottom: 4rem !important
}

.support-local .donation-agency .text-underline-full-width,
.donation-agency .donation-agency .text-underline-full-width {
    padding-right: 90rem !important
}

.support-us-hometown-tax-donation .support-local .btn.btn-outline,
.support-us-hometown-tax-donation .donation-agency .btn.btn-outline {
    margin: 0;
    font-size: 3.2rem;
    padding: 1.5rem 5rem;
    min-width: 58rem;
}

.support-us-hometown-tax-donation .notarized-will-card.no-bgr {
    background: none;
    border: none
}

/* .notarized-will .card-title {
    padding-bottom: 1.8rem
} */

.support-us-hometown-tax-donation .button-wrap {
    text-align: center;
    margin-top: 3rem
}

.support-us-hometown-tax-donation .title {
    font-weight: 600;
    font-size: 3rem;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-bottom: 2rem;
    color: #3E7472
}

.support-us-hometown-tax-donation .notarized-will {
    padding-bottom: 4rem;
    padding-top: 6rem;
}

.support-us-hometown-tax-donation .tax-contribute>.notarized-will-donation-wrap>.text-underline-full-width {
    padding-right: 96rem !important
}

.support-us-hometown-tax-donation .notarized-will.no-bgr {
    background-color: rgba(0, 0, 0, 0)
}

.support-us-contribute .contribute-content {
    margin: 0;
    max-width: 100%;
    padding: 8rem 8rem 5rem
}

.support-us-message {
    padding-top: 6rem;
    margin-bottom: 12rem;
}

.support-us-message .ms-avatar {
    width: 40rem;
    height: 48rem;
    object-fit: cover;
    object-position: center
}

.support-us-message .message-top {
    display: flex;
    flex-direction: row;
    gap: 6rem
}

.support-us-message .message-top p {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.support-us-message .message-top .message-top-sub {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667
}

.support-us-message .message-top-wrap {
    margin-top: 5rem;
    position: relative;
    width: calc(100% - 46rem)
}

.support-us-message .message-top-wrap .message-name,
.support-us-message .message-top-wrap .message-top-sub {
    text-align: justify;
    overflow: hidden;
    height: 8rem
}

.support-us-message .message-top-wrap .message-top-sub {
    height: 4.6rem
}

.support-us-message .message-body {
    padding: 6rem 5rem 5rem 20rem;
    background-color: #e4e4e4;
    max-width: calc(100% - 26rem);
    margin-top: -25rem;
    z-index: -1;
    margin-left: auto;
    position: relative;
}

.support-us-message .message-body .message-body-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    color: #3E7472;
    margin-bottom: 2rem;
    max-height: 15rem;
    overflow: hidden
}

.support-us-message .message-body .message-body-content {
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: justify;
    max-height: 42rem;
    overflow: hidden
}

.notarized-will-donation {
    margin-top: 7.8rem
}

.notarized-will-donation .notarized-will-donation-wrap {
    display: flex;
    align-items: center
}

.notarized-will-donation .notarized-will-donation-wrap img {
    width: 56.8rem;
    height: 31.3rem
}

.notarized-will-donation .notarized-will-donation-wrap .text-underline-full-width {
    padding-right: 41rem
}

.notarized-will-donation .notarized-will-donation-wrap .text-content-bottom {
    padding-left: 15rem;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    width: 94rem;
    margin: 5rem auto 0 auto
}

/* .notarized-will-donation .card-sub-title {
    margin-top: 3rem
} */

.notarized-will-donation .notarized-will-card-btn {
    display: flex;
    gap: 3rem;
    justify-content: center;
}

.notarized-will-card-btn .button-item .note{
    text-align: center;
    margin-top: 1rem;
}

.notarized-will-donation .notarized-will-card-btn a {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 2rem;
    min-width: 37rem;
    min-height: 6rem;
    margin-top: 5rem
}

.notarized-will-donation .notarized-will-card.fd-box-content {
    padding: 5.9rem 14rem 6.4rem
}

/* .notarized-will-donation .notarized-will-card.fd-box-content .card-sub-title {
    margin: 3.9rem 0 5.5rem
} */

.notarized-will-donation .notarized-will-card.fd-box-content .notarized-will-card-btn {
    gap: 8.8rem
}

.notarized-will-donation .notarized-will-card.fd-box-content .notarized-will-card-btn a {
    margin: 0;
    padding: .7rem 2.8rem;
    min-height: auto;
    min-width: 36.9rem
}

.notarized-will-donation .notarized-will-card-step {
    margin: 4rem 0 3rem;
    display: grid;
    gap: 3rem;
    grid-template-columns: repeat(4, 1fr);
}

.notarized-will-donation .notarized-will-card-step .step-item {
    display: flex;
    gap: 1.2rem;
    position: relative;
}

.notarized-will-donation .notarized-will-card-step .step-item:not(.step-item:last-child)::after {
    content: '';
    position: absolute;
    width: 1.2rem;
    height: 3.2rem;
    display: block;
    background-image: url(../images/register/arrow-right.png);
    background-size: cover;
    top: 2rem;
    right: -2rem;
}

.notarized-will-donation .notarized-will-card-step .step-item:nth-child(1) .step-item-wrap {
    background-color: #4d7678
}

.notarized-will-donation .notarized-will-card-step .step-item:nth-child(1) .step-item-top p span {
    white-space: nowrap
}

.notarized-will-donation .notarized-will-card-step .step-item:nth-child(3) .step-item-wrap {
    background-color: #336265
}

.notarized-will-donation .notarized-will-card-step .step-item:nth-child(5) .step-item-wrap {
    background-color: #184d50
}

.notarized-will-donation .notarized-will-card-step .step-item:nth-child(7) .step-item-wrap {
    background-color: #003a3e
}

.notarized-will-donation .notarized-will-card-step svg {
    margin-top: 2rem;
    width: 3.7rem;
    height: 3.2rem
}

.notarized-will-donation .notarized-will-card-step .step-item-top {
    display: flex;
    align-items: center;
    margin-bottom: 3rem;
    gap: 1rem
}

.notarized-will-donation .notarized-will-card-step .step-item-top img {
    border-radius: 50%;
    width: 6.4rem;
    height: 6.4rem
}

.notarized-will-donation .notarized-will-card-step .step-item-top .step-item-title {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 3.2rem;
    color: #fff;
    max-height: 6.5rem;
    overflow: hidden
}

.notarized-will-donation .notarized-will-card-step .step-item-wrap {

    border: 1px solid #707070;
    background-color: #4f7678;
    border-radius: 4.3rem;
    padding: 1.5rem 1.5rem 1.84rem 1.5rem;
    flex: 1
}

.notarized-will-donation .notarized-will-card .card-title{
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    text-align: center;
    /* margin-bottom: 2rem; */
}

.notarized-will-donation .step-item-desc {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    color: #fff;
    max-width: 28rem;
    margin: 0 auto;
    overflow: hidden;
}

.notarized-will-donation .pt-3 {
    padding-top: 3rem
}

.title-bg-white {
    position: relative
}

.title-bg-white p {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    z-index: 10;
    position: relative;
    text-align: center;
    color: #3E7472
}

.title-bg-white::after {
    content: "";
    display: block;
    width: 100%;
    height: 55%;
    background-color: #fff;
    position: absolute;
    bottom: 0
}

.page-width .text-underline-full-width {
    position: relative;
    padding-left: 0;
    border-bottom: unset
}

.page-width .text-underline-full-width::after {
    content: "";
    width: 100%;
    height: .2rem;
    background-color: #3E7472;
    position: absolute;
    bottom: -1px;
    left: -50%
}

.page-width .text-underline-full-width::before {
    content: "";
    width: 100%;
    height: .2rem;
    background-color: #3E7472;
    position: absolute;
    bottom: -1px
}

.support-us-form {
    margin-top: 2rem;
    padding: 5rem 14rem 7rem 14rem;
    background-color: #fff
}

.support-us-form form {
    margin-top: 3.5rem
}

.support-us-form form input {
    max-width: 60rem;
    max-height: 5rem;
    border: 1px solid #707070;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    padding: 0 1.5rem;
    width: 100%
}

.support-us-form form input::-webkit-outer-spin-button,
.support-us-form form input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.support-us-form form input[type=number] {
    -moz-appearance: textfield
}

.support-us-form form .mt-2 {
    margin-top: 2rem
}

.support-us-form .form-input-group {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 1.5rem;
    margin-top: 3rem;
    max-width: 70rem
}

.support-us-form .form-input-group input {
    max-width: 35rem
}

.support-us-form .form-input {
    display: block
}

.support-us-form .label-title {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    display: flex;
    align-items: center;
    gap: .7rem
}

.support-us-form .label-title span {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 1.4705882353;
    background-color: red;
    border-radius: .8rem;
    color: #fff;
    width: max-content;
    padding: .2rem .5rem
}

.support-us-form .btn-submit {
    min-width: 60rem;
    height: 6rem;
    display: block;
    border: none;
    margin: 9rem auto 0 auto;
    cursor: pointer
}

.support-us-form-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    position: relative;
    z-index: 1
}

.support-us-form-title>span {
    line-height: inherit;
    border-bottom: 5px solid #3E7472
}

.support-us-form-title>span::after {
    content: "";
    position: absolute;
    bottom: -2.5px;
    left: 0;
    width: 100%;
    height: 1px;
    z-index: -1;
    background-color: #707070
}

@media screen and (max-width: 1023px) {
    .support-us-hometown-tax-donation #notarized-will .text-underline-full-width.mt-1 {
        margin-top: 1rem
    }
    .support-us-hometown-tax-donation .title.limit {
        padding: 0 15% 2rem 3.3333%;
        margin-right: -3.3333%;
        margin-left: -3.3333%;
        border-bottom: .2rem solid #3E7472
    }
    .support-us-hometown-tax-donation .tax-contribute .hometown-tax-donation-bg .title,
    .support-us-hometown-tax-donation .tax-contribute .hometown-tax-donation-bg .content {
        color: #fff
    }
    .support-us-hometown-tax-donation .tax-contribute .hometown-tax-donation-bg .title {
        margin-bottom: 2.4rem;
        padding-bottom: 2.4rem
    }
    .support-us-hometown-tax-donation .tax-contribute .hometown-tax-donation-bg .content {
        text-align: start
    }
    .support-us-hometown-tax-donation .support-us-contribute .contribute-content {
        padding: 4rem
    }
    .support-us-hometown-tax-donation .support-local .text-underline-full-width {
        margin-bottom: 1rem !important
    }
    .support-us-hometown-tax-donation .support-local .btn.btn-outline {
        margin: 0;
        font-size: 2.4rem;
        padding: 1rem 4rem
    }
    .support-us-hometown-tax-donation .donation-agency .notarized-will-card {
        padding: 5rem 3.6rem 7rem !important
    }
    .support-us-hometown-tax-donation .donation-agency .notarized-will-card .card-sub-title {
        padding: 0 2rem;
        text-align: center;
        max-width: 85%;
        margin-right: auto;
        margin-left: auto;
        font-size: 2.4rem
    }
    .support-us-hometown-tax-donation .donation-agency .notarized-will-card .card-title {
        border: none;
        position: relative
    }
    .support-us-hometown-tax-donation .donation-agency .notarized-will-card .card-title::after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 50%;
        transform: translateX(50%);
        display: block;
        height: 1px;
        width: 70%;
        background-color: #707070
    }
    .support-us-hometown-tax-donation .donation-agency.notarized-will-donation {
        margin-top: 6rem;
        padding-top: 0
    }
    .support-us-hometown-tax-donation .tax-contribute>.notarized-will-donation-wrap>.text-underline-full-width {
        padding-right: 0 !important
    }
    .support-us-hometown-tax-donation .notarized-will .card-sub-title {
        /* padding: 0 1.5rem;
        text-align: start */
    }
    .support-us-hometown-tax-donation .notarized-will .card-title {
        padding: 0 1.5rem 2rem
    }
    .support-us-hometown-tax-donation .support-us-message>.container {
        padding: 0
    }
    .text-underline-img {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 2rem
    }
    .notarized-will-donation .notarized-will-donation-wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        max-height: 42rem
    }
    .notarized-will-donation .notarized-will-donation-wrap .text-content-bottom {
        width: auto;
        padding-left: 0;
        margin: 0 2rem;
        font-weight: 400;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667
    }
    .notarized-will-donation .card-title {
        margin: 0 2rem
    }
    .notarized-will-donation .notarized-will-donation-wrap {
        flex-direction: column;
        flex-wrap: wrap
    }
    .notarized-will-donation .notarized-will-donation-wrap .text-underline-full-width {
        padding-right: 2rem !important;
        padding-left: 2rem;
        width: 100%
    }
    .notarized-will-donation .notarized-will-card-btn a {
        min-width: unset;
        margin-top: 4rem
    }

    .notarized-will-donation .notarized-will-card-step svg {
        width: 2rem;
        height: 4rem
    }
    .support-us-form .btn-submit {
        min-width: 60rem;
        margin-top: 5rem
    }
    .tax-contribute {
        padding-bottom: 1.7rem
    }
    .support-us-message .message-body {
        transform: translateY(-8rem);
        max-width: 100%;
        padding-top: 10rem;
        padding: 10rem 3rem 6rem 3rem;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667;
        margin-top: 0;
        margin-bottom: -8rem;
    }
    .support-us-message .ms-avatar {
        max-width: 36rem;
        max-height: 42rem;
        margin-left: 3.3333%
    }
    .support-us-message .message-top {
        gap: 1rem
    }
    .support-us-message .message-top-wrap {
        margin-top: 11rem
    }
    .notarized-will-donation {
        margin-top: 10rem
    }
    .notarized-will-donation .notarized-will-card {
        margin-bottom: 4rem
    }
    .notarized-will-donation .notarized-will-card.fd-box-content .card-sub-title {
        font-size: 2.4rem
    }
    .notarized-will-donation .notarized-will-card.fd-box-content .notarized-will-card-btn {
        gap: 2rem
    }
    .notarized-will-donation .notarized-will-card-btn {
        flex-wrap: wrap;
        gap: 2rem;
        margin-top: 4rem
    }
    .notarized-will-donation .notarized-will-card-btn a {
        width: 100%;
        max-width: 61rem;
        margin-top: 0
    }
    .support-us-message {
        margin-top: 2rem
    }
    .title-bg-white::after {
        height: 2.8rem
    }
    .title-bg-white::before {
        content: "";
        display: block;
        width: 100%;
        height: 2.8rem;
        background-color: #fff;
        position: absolute;
        top: 4rem
    }
    .notarized-will-donation .notarized-will-card-step .step-item-wrap {


    }
    .notarized-will-donation .pt-3 {
        padding-top: 0
    }
    .support-us-form {
        padding: 4rem 2rem 5rem 2rem
    }
    .support-us-form-title {
        display: flex;
        flex-direction: column
    }
    .support-us-form-title span {
        width: fit-content
    }
    .support-us-form form {
        margin-top: 2rem
    }
    .support-us-form .form-input-group input {
        max-width: 30rem
    }
}

@media screen and (max-width: 1023px) {
    .support-us-form-title {
        font-weight: 600;
        font-size: 2.8rem;
        letter-spacing: .05em;
        line-height: 3rem;
        position: relative;
        z-index: 1
    }
    .support-us-form-title>span {
        line-height: inherit;
        border-bottom: 5px solid #3E7472
    }
    .support-us-form-title>span::after {
        content: "";
        position: absolute;
        bottom: 2.5px;
        left: 0;
        width: 100%;
        height: 1px;
        z-index: -1;
        background-color: #000
    }
    .support-us-form-title .support-us-form-title-span {
        line-height: inherit;
        border-bottom: 5px solid #3E7472
    }
    .support-us-form-title .support-us-form-title-span::after {
        content: "";
        position: absolute;
        bottom: 50%;
        left: 0;
        width: 100%;
        height: 1px;
        z-index: -1;
        background-color: #000
    }
}

.packet-register.monthly-supporter-form .packet-update-info {
    padding-right: 12rem
}

@media screen and (max-width: 1023px) {
    .packet-register.monthly-supporter-form .packet-update-info {
        padding-right: 2rem
    }
}

.packet-register.monthly-supporter-form .item-cicrle {
    display: flex;
    align-items: center;
    justify-content: center
}

.packet-register.monthly-supporter-form .credit img {
    max-width: 35rem
}

.packet-register.monthly-supporter-form .credit p {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.packet-register.monthly-supporter-form .support-us-form-title {
    margin-bottom: 3rem
}

.packet-register.monthly-supporter-form p.label-note {
    display: inline;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    margin-left: 1rem
}

.packet-register.monthly-supporter-form .list-radio {
    display: flex;
    gap: 3rem;
    align-items: center;
    margin-top: 1rem
}

.packet-register.monthly-supporter-form .list-radio label {
    margin-right: 0
}

.packet-register.monthly-supporter-form .name-form-group {
    display: grid;
    grid-template-columns: 1fr 1fr;
    max-width: 70rem;
    gap: 2rem 1rem;
    margin-bottom: 3rem
}

.packet-register.monthly-supporter-form .name-form-group .name-form {
    display: block;
    margin: 0
}

.packet-register.monthly-supporter-form .item-update-info {
    padding-left: 0;
    padding-right: 0
}

.packet-register.monthly-supporter-form .item-update-info .item-info {
    margin-bottom: 3rem
}

.packet-register.monthly-supporter-form .item-update-info .item-info label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.packet-register.monthly-supporter-form .item-update-info .item-info label span {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem;
    padding: .2rem .5rem .3rem .4rem
}

.packet-register.monthly-supporter-form .item-update-info .item-info .list-radio {
    margin-top: 0;
    gap: 0
}

.packet-register.monthly-supporter-form .item-update-info .item-info .list-radio input {
    margin-right: 1.7rem
}

.packet-register.monthly-supporter-form .item-update-info .item-info .list-radio label {
    margin-bottom: 0
}

.packet-register.monthly-supporter-form .item-update-info .item-info .list-radio label:nth-child(2) {
    margin-right: 3rem
}

.packet-register.monthly-supporter-form .name-form-group .item-info {
    margin-bottom: 0
}

.packet-register.monthly-supporter-form .name-form-group .name-form .monthly-label-form {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.packet-register.monthly-supporter-form .name-form-group .name-form .monthly-label-input {
    height: 4.9rem;
    line-height: 3rem;
    padding: .9rem 1.5rem .84rem 1.5rem
}

.packet-register.monthly-supporter-form .item-info .monthly-label-font {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.packet-register.monthly-supporter-form .item-info .item-info-input {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    padding: .9rem 1.5rem .84rem 1.5rem
}

.packet-register.monthly-supporter-form .item-info .item-info-input-full {
    width: 100%
}

.packet-register.monthly-supporter-form .monthly-form-btn {
    font-weight: 600
}

.monthly-supporter-form {
    padding-top: 8rem
}

@media screen and (max-width: 1023px) {
    .packet-register.monthly-supporter-form p.label-note {
        font-weight: 400;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 2.25
    }
    .monthly-supporter-form {
        padding-top: 2rem
    }
    .monthly-supporter-form .general-credit-title h2 {
        margin-bottom: 2rem
    }
    .monthly-supporter-form .packet-update-info .btn-form {
        margin-top: 4rem
    }
    .monthly-supporter-form .container .packet-update-info {
        margin-bottom: 7rem
    }
    .packet-register.monthly-supporter-form p.label-note {
        padding-left: 0
    }
    .packet-register.monthly-supporter-form .container .packet-update-info .item-update-info .item-info {
        padding-left: 0
    }
}

.body-content p {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    text-align: center
}

.body-content p:first-child {
    margin-bottom: 4rem
}

.page-forget-pw .forget-submitted.content-forget-pw .container .input-form {
    padding: 0 0 16rem 0
}

.page-forget-pw .forget-submitted.content-forget-pw .container .forget-login {
    max-width: unset
}

.page-forget-pw .forget-submitted.content-forget-pw .container .forget-login h2 {
    margin-bottom: 15rem
}

.page-forget-pw .forget-submitted.content-forget-pw .container .forget-login p {
    margin-bottom: 4rem;
    max-width: 100%
}

.page-forget-pw .forget-submitted.content-forget-pw .container .input-form {
    padding: 0 0 6rem 0
}

.page-forget-pw .forget-submitted.content-forget-pw .login-menber h2 {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.page-forget-pw.enter-new-password .content-forget-pw .container .forget-login p.error-text {
    margin: 0;
    text-align: left
}

.enter-new-password .body-content input {
    height: 7rem;
    width: 100%;
    border: 1px solid #707070;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    padding: 0 2rem
}

.enter-new-password .body-content label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    display: block
}

.enter-new-password .body-content label.error input {
    color: #e81313
}

.enter-new-password .error-text {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2.15;
    color: #d61313;
    text-align: left
}

.enter-new-password p.text-note {
    font-size: 1.8rem;
}

.forget-password-done .body-content p:first-child {
    margin-bottom: 7rem
}

.forget-password-done .content-forget-pw .container .forget-login h2 {
    margin-bottom: 9rem
}

@media screen and (max-width: 1023px) {
    .forget-password-done .content-forget-pw .container .forget-login h2 {
        margin-bottom: 6rem
    }
    .forget-password-done .content-forget-pw .container .forget-login p {
        max-width: 100%
    }
    .forget-password-done .content-forget-pw .container .forget-login p {
        margin-bottom: 4rem
    }
    .forget-password-done .content-forget-pw .container .input-form {
        padding-bottom: 4rem
    }
}

.discussion-description .section-title,
.discussion-search .section-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.discussion-description .content-text,
.discussion-search .content-text {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    margin-bottom: .8rem
}

.discussion-description .content-text .selected-text,
.discussion-search .content-text .selected-text {
    color: #3E7472
}

.discussion-description {
    padding-top: 6rem;
    padding-bottom: 8rem
}

.discussion-description .discussion-description-title {
    text-align: center;
    margin-bottom: 2.5rem
}

.discussion-description .discussion-description-body {
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 2.25;
    margin: 0 auto;
    text-align: left
}

.discussion-search-bottom .sort .select-menu {
    border: 1px solid #707070;
    background: url(../images/arrow-down.svg) no-repeat right;
    background-position-x: calc(100% - 1.1rem);
    background-size: 1.6rem 2rem;
}

.discussion-search .discussion-search-title {
    margin-bottom: 2rem
}

.discussion-search form {
    margin-bottom: 9.5rem
}

.discussion-search .post-type-wrap {
    border-right: 1px solid #707070;
    border-bottom: unset;
    display: flex;
    flex-wrap: wrap
}

.discussion-search .post-type-wrap input[type=radio] {
    display: none
}

.discussion-search .post-type-wrap input[type=radio]:checked+label::before {
    content: "";
    background-color: #3E7472;
    width: 100%;
    top: 0;
    left: 0;
    height: .6rem;
    position: absolute
}

.discussion-search .post-type-wrap label {
    cursor: pointer;
    position: relative;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    color: #3E7472;
    width: 25%;
    display: block;
    border-right: 1px solid #707070;
    min-height: 4rem;
    padding: .5rem 0 0 3rem
}

.discussion-search .post-type-wrap label:last-child {
    border-right: none
}

.discussion-search .post-type-wrap a {
    cursor: pointer;
    position: relative;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    color: #3E7472;
    width: 25%;
    display: block;
    border-right: 1px solid #707070;
    min-height: 4rem;
    padding: .5rem 0 0 3rem;
    border: 1px solid #707070
}

.discussion-search .post-type-wrap a:not(:nth-child(4n+1)) {
    border-left: unset
}

.discussion-search .post-type-wrap a:nth-child(4n) {
    border-right: none
}

.discussion-search .post-type-wrap a:nth-child(n+5) {
    border-top: unset
}

.discussion-search .post-type-wrap a.active::before {
    content: "";
    background-color: #3E7472;
    width: 100%;
    top: 0;
    left: 0;
    height: .6rem;
    position: absolute
}

.discussion-search .discussion-search-wrap {
    padding: 2rem 1.7rem 3.8rem 1.7rem;
    border: 1px solid #707070;
    border-top: unset
}

.discussion-search .discussion-search-wrap .search-cat-item:not(:first-child) {
    border-top: 1px dashed #707070;
    padding-top: 1rem
}

.discussion-search .discussion-search-wrap .search-cat-item:not(:first-child) input[type=checkbox]:checked+label {
    background-color: #04a1a7;
    border-color: #04a1a7
}

.discussion-search .discussion-search-wrap .discussion-search-bottom {
    padding-top: 1rem;
    border-top: 1px solid #707070
}

.discussion-search .discussion-search-wrap .category-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem .4rem;
    margin-bottom: 3rem
}

.discussion-search .discussion-search-wrap .category-wrap input[type=checkbox] {
    display: none
}

.discussion-search .discussion-search-wrap .category-wrap input[type=checkbox]:checked+label {
    background-color: #04a710;
    border-color: #04a710;
    color: #fff
}

.discussion-search .discussion-search-wrap .category-wrap label {
    transition: all .3s;
    cursor: pointer;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1.5;
    border: 1px solid #707070;
    border-radius: .8rem;
    min-width: 19.7rem;
    text-align: center;
    padding: .5rem
}

.discussion-search .discussion-search-bottom .sort {
    padding-top: 0
}

.discussion-search .discussion-search-bottom .search-input {
    width: 52.8rem;
    height: 3.2rem;
    background-color: #e8e8e8;
    border: none;
    padding-left: 1.5rem;
    border-radius: 1rem
}

.discussion-search .discussion-search-bottom .search-input:focus-visible {
    outline-color: #3E7472
}

.discussion-search .btn-submit {
    width: 10.4rem;
    height: 3.2rem;
    background-color: #3E7472;
    border: none;
    color: #fff;
    margin-left: .7rem;
    border-radius: 1rem;
    cursor: pointer
}

.discussion-search .search-input-wrap {
    display: inline-flex;
    align-items: center
}

.sns-search-btn {
    color: #0b85c6
}

.post-item .post-img {
    position: relative;
    margin-bottom: 1rem
}

.post-item .post-img .post-date {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #3E7472;
    color: #fff;
    min-width: 32.3rem;
    padding: .6rem 2rem;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 1.45
}

.post-item .post-img .post-date span {
    font-weight: 600;
    font-size: 1.5rem;
    letter-spacing: 0em;
    line-height: 1.5333333333
}

.post-item .post-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    margin-left: 2rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis
}

.posts-wrap {
    display: grid;
    grid-template-columns: repeat(3, calc((100% - 6rem) / 3));
    gap: 2.2rem 3rem;
    margin-bottom: 6rem
}

.posts-wrap .agenda-item .agenda-item-title {
    color: #222
}

@media screen and (max-width: 1023px) {
    .discussions-page .agenda-item-title {
        max-height: 12rem;
        -webkit-line-clamp: 3
    }
    .discussions-page .discussion-search .post-type-wrap a {
        width: 50%;
        font-size: 2.4rem;
        font-weight: 500;
    }
    .pagination {
        margin-top: 1.4rem;
        display: flex;
        justify-content: center;
        column-gap: 2.3rem
    }
    .discussison-pagination {
        margin-bottom: 3rem
    }
    .discussison-sns .sns {
        padding-bottom: 7.4rem
    }
}

@media screen and (max-width: 1023px) {
    .posts-wrap {
        gap: 1.7rem 2rem;
        grid-template-columns: repeat(2, calc(50% - 1rem))
    }
    .discussion-description {
        padding-top: 5rem;
        padding-bottom: 6rem;
    }
    .discussion-description .discussion-description-body {
        font-size: 2.4rem;
        padding: 0 1rem;
        line-height: 1.7
    }
    .discussion-description .discussion-description-title {
        text-align: center;
        margin-bottom: 4.5rem
    }
    .discussion-search .discussion-search-title {
        margin-bottom: 3.5rem
    }
    .discussion-search .post-type-wrap {
        flex-wrap: wrap
    }
    .discussion-search .post-type-wrap label {
        width: 50%;
        border-top: 1px solid #707070;
        min-height: 4.8rem
    }
    .discussion-search .post-type-wrap label:nth-of-type(1),
    .discussion-search .post-type-wrap label:nth-of-type(2) {
        border-top: none
    }
    .discussion-search .post-type-wrap label:nth-of-type(2) {
        border-right: none
    }
    .discussion-search .discussion-search-wrap .content-text {
        text-align: center;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.5;
        margin-bottom: 1.5rem
    }
    .discussion-search .discussion-search-wrap {
        padding: 2.4rem 2.4rem 7rem;
    }
    .discussion-search .discussion-search-wrap .category-wrap {
        justify-content: start;
        margin-bottom: 1rem
    }
    .discussion-search .discussion-search-wrap .category-wrap label {
        height: auto;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2rem;
        min-width: 0;
        padding: 0.8rem 1rem;
    }
    .discussion-search .discussion-search-bottom .search-input {
        width: 100%;
        height: 5rem;
        text-align: center;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 2.25;
        margin-bottom: 1rem
    }
    .discussion-search .search-input-wrap {
        width: 100%;
        flex-direction: column
    }
    .discussion-search .btn-submit {
        width: 100%;
        font-size: 2.4rem;
        height: 4.5rem;
        margin-bottom: 2.5rem;
        margin-left: 0;
    }
    .discussion-search form {
        margin-bottom: 4.5rem
    }
    .post-item .post-img {
        height: 24.2rem
    }
    .post-item .post-img .post-date {
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667;
        padding: 0 1rem;
        width: 100%;
        min-height: 4rem
    }
    .post-item .post-img .post-date span {
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 2.25;
        word-break: keep-all
    }
    .post-item .post-title {
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667;
        -webkit-line-clamp: 3
    }
    .discussison-pagination {
        margin-bottom: 12rem
    }
    .discussion-search .post-type-wrap a {
        width: 50%
    }
    .discussion-search .post-type-wrap a:nth-child(2n) {
        border-right: none
    }
    .discussion-search .post-type-wrap a:nth-child(n+3) {
        border-top: unset
    }
    .discussion-search .post-type-wrap a:not(:nth-of-type(2n)) {
        border-left: 1px solid #707070
    }
    .discussion-search .post-type-wrap:not(.no-border-sp) a:nth-of-type(1),
    .discussion-search .post-type-wrap:not(.no-border-sp) a:nth-of-type(2) {
        border-bottom: 1px solid #707070
    }
    .discussion-search .discussion-search-wrap .search-cat-item {
        margin-bottom: 2rem
    }
    .enter-new-password p.text-note {
        font-size: 2rem;
    }
}

.discussions-article {
    padding-top: 4rem
}

.discussions-article .discussions-article-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.discussions-article .discussions-article-date {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25;
    margin-bottom: 1rem
}

.discussions-article .discussions-article-tags a {
    min-width: 12rem;
}

.discussions-article .discussions-article-top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 7rem
}

.discussions-article .article-top-dowload {
    display: none
}

.discussions-article .article-top-dowload,
.discussions-article .article-top-right {
    column-gap: 2rem;
    margin-left: 3rem
}

.discussions-article .article-top-dowload a,
.discussions-article .article-top-right a {
    display: flex;
    flex-direction: column
}

.discussions-article .article-top-dowload a span,
.discussions-article .article-top-right a span {
    text-wrap: nowrap
}

.discussions-article .article-top-dowload img,
.discussions-article .article-top-right img {
    width: 3.5rem;
    margin-bottom: 1.2rem
}

.discussions-article .article-top-right {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25
}

.discussions-article .article-top-right a {
    line-height: 1
}

.discussions-article .article-top-right .text {
    width: 100%;
    display: block
}

.discussions-article .discussions-article-body {
    margin-bottom: 5rem;
    font-size: 2rem
}

.discussions-article .discussions-article-body img {
    display: inline-block;
    width: auto;
    height: auto
}

.discussions-article .discussions-article-body img.hide-pc {
    display: none
}

.discussions-article .discussions-article-body .thumbnail {
    margin-bottom: 1rem
}

.discussions-article .discussions-article-body p {
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.discussions-article .discussions-article-body strong {
    font-weight: bold
}

.discussions-article .discussions-article-body h3 {
    margin-bottom: 3rem;
    font-weight: 500;
    font-size: 2.8rem;
    letter-spacing: .05em;
}

.discussions-article .discussions-article-body .image-right {
    float: right;
    max-width: 36.8rem;
    min-height: 37rem;
    padding-left: 3rem
}

.discussions-article .categories-wrap {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap
}

.discussions-article .categories-wrap a {
    border: 1px solid #707070;
    border-radius: .8rem;
    min-height: 3.3rem;
    min-width: 19.7rem;
    text-align: center;
    display: inline-block
}

.discussions-article .discussions-article-categories {
    margin-bottom: 6rem
}

.discussions-article .discussions-article-categories p {
    margin-bottom: 1rem;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25
}

.agenda-item .item-img-discussion {
    padding-bottom: 53.3%
}

.agenda-category-title {
    position: absolute;
    bottom: 0;
    background-color: #3E7472;
    color: #fff;
    width: 32.3rem;
    display: flex;
    justify-content: space-between;
    padding: .5rem 2.5rem .5rem 2rem;
    align-items: center
}

.agenda-category-title .title-item {
    font-size: 2rem
}

.agenda-category-title .date-item {
    font-size: 1.5rem
}

.related-article {
    padding-bottom: 6rem
}

.related-article .title-line {
    margin-bottom: 3rem
}

.related-article .posts-wrap {
    margin-bottom: 3rem
}

.related-article .btn-more {
    margin: 0 auto 0 auto;
    display: block;
    width: max-content;
    min-height: 6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 37rem
}

.related-article .article-top-dowload {
    display: none
}

@media screen and (max-width: 1023px) {
    .discussions-article {
        padding-top: 2rem
    }
    .discussions-article .page-width {
        padding: 0 3rem
    }
    .discussions-article .discussions-article-title {
        font-weight: 600;
        font-size: 3.2rem;
        letter-spacing: .05em;
        line-height: 1.78125;
        margin-bottom: 1rem
    }
    .discussions-article .discussions-article-top {
        flex-direction: column;
        margin-bottom: 4rem
    }
    .discussions-article .article-top-dowload {
        display: inline-flex;
        align-items: flex-end;
        float: right;
        gap: 2rem;
        line-height: 1
    }
    .discussions-article .article-top-dowload .text {
        width: 100%;
        display: block;
        margin-top: 1.2rem
    }
    .discussions-article .article-top-dowload img {
        width: 3.6rem
    }
    .discussions-article .article-top-right {
        display: none
    }
    .discussions-article .discussions-article-tags {
        display: inline-block;
        padding-top: 1rem
    }
    .discussions-article .discussions-article-date {
        margin-bottom: 0
    }
    .discussions-article .discussions-article-body p {
        font-weight: 400;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667
    }
    .discussions-article .discussions-article-body img.img-sp-height {
        height: 66rem
    }
    .discussions-article .discussions-article-body img.hide-sp {
        display: none
    }
    .discussions-article .discussions-article-body img.sp-55 {
        height: 55rem
    }
    .discussions-article .discussions-article-body h3 {
        font-weight: 600;
        font-size: 3.2rem;
        letter-spacing: .05em;
        line-height: 1.78125
    }
    .discussions-article-categories {
        display: none
    }
    .related-article {
        padding-bottom: 14rem
    }
    .related-article .title-line {
        margin-bottom: 5rem
    }
    .related-article .post-item .post-title {
        margin-left: 0
    }
    .related-article .btn-more {
        min-width: 70rem
    }
}

.publications-poll {
    padding-top: 4rem;
    padding-bottom: 11rem;
    background-color: #e8e8e8
}

.publications-poll .page-width {
    max-width: 145rem
}

.publications-poll .section-title-line {
    margin-bottom: 3rem
}

.publications-poll .publications-poll-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem;
    margin-top: 2rem
}

.publications-poll .publications-poll-wrap a {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 1.5625;
    border: .1rem solid #707070;
    background-color: #fff
}

.publications-poll .publications-poll-wrap a span {
    width: 100%;
    padding-left: 3.5rem;
    padding-right: 9rem
}

.publications-poll .publications-poll-wrap a img {
    width: 30.54rem;
    height: 17rem;
    border-right: 1px solid #707070
}

.publications-report {
    margin-top: 7rem;
    padding-bottom: 8rem
}

.publications-report .publication-content {
    margin-top: 8.3rem;
    column-gap: 1rem;
    grid-template-columns: 1fr 1fr 1fr
}

.publications-report .publication-content .publication-item {
    display: inline-flex
}

.publications-report .publication-content .publication-item img.publ-item-thumbnail {
    width: 18.95rem;
    height: 29.614rem
}

.publications-report .publ-item-desc {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25
}

.publications-report .report-more {
    margin-top: 4rem
}

@media screen and (max-width: 1023px) {
    .publications-poll {
        padding-bottom: 5rem
    }
    .publications-poll p {
        font-weight: 400;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667
    }
    .publications-poll .section-title-line {
        margin-bottom: 2rem
    }
    .publications-poll .publications-poll-wrap {
        grid-template-columns: 1fr
    }
    .publications-poll .publications-poll-wrap a img {
        height: 18rem
    }
    .publications-poll .publications-poll-wrap a span {
        padding-right: 4rem;
        flex: 1;
    }
    .publications-report {
        margin-top: 6rem
    }
    .publications-report .publication-content {
        margin-top: 2.3rem
    }
    .publications-report .publication-content .publication-item img.publ-item-thumbnail {
        width: 20.4rem;
        height: 32.2rem
    }
    .publications-report .publication-content .publ-item-desc {
        font-weight: 400;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.7916666667
    }
    .publications-report .publication-content .group-btn {
        margin-top: 1rem
    }
    .publications-report .publication-content .group-btn .btn-base.btn-publ {
        width: 32rem;
        height: 5.3rem;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .07em;
        line-height: 1.5;
        border-radius: 2.7rem
    }
    .publications-report .report-more {
        width: 62rem;
        margin-top: 5rem
    }
}

.clear-fixer {
    clear: both
}

.publication {
    margin-top: 2rem;
    margin-bottom: 5rem
}

.publication .publication-content {
    margin-top: 3rem
}

.publication-content {
    display: inline-grid;
    grid-template-columns: 46.5rem 46rem 44rem;
    column-gap: 2rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 2rem;
    margin-top: 8rem
}

.publications-list {
    padding-bottom: 6.6rem
}

.publications-list .pagination {
    padding-top: 5.3rem
}

@media screen and (max-width: 1023px) {
    .publication {
        margin-top: 1.9rem
    }
    .publication .title-line>h2 {
        padding-left: 1.5rem
    }
    .publication-content {
        display: flex;
        flex-direction: column;
        row-gap: 3.4rem;
        margin-top: 3.1rem;
        margin-left: 0;
        margin-right: 0;
    }
}

.publ-details-wrap {
    max-width: 164.5rem;
    margin: 0 auto;
    padding: 8rem 0;
}

.publ-details-wrap .btn-base.btn-back {
    width: 36.9rem;
    height: 5.9rem;
    text-align: center;
    line-height: 1.9
}

.publ-details-bg {
    background-color: #fff;
    border-radius: 2.8rem;
    padding: 9.5rem 21.5rem;
    margin-bottom: 8rem;
    width: 100%
}

.publications-download-page .header-title,
.publications-download-page .sub-title {
    text-align: center
}

.publications-download-page .header-title {
    color: #3E7472;
    font-size: 4.8rem;
    margin-bottom: 3.2rem
}

.publications-download-page .sub-title {
    color: #222;
    font-size: 2.4rem;
    margin-bottom: 11.2rem
}

@media screen and (max-width: 1023px) {
    .publications-download-page .sub-title {
        margin-bottom: 6rem
    }
}

.detail-top {
    display: flex
}

.detail-top .detail-thumbnail {
    width: 30rem
}

.detail-top .detail-thumbnail img {
    width: 100%;
    height: auto
}

.detail-top .detail-info {
    width: calc(100% - 30rem);
    flex: 1;
    padding-left: 5rem
}

.detail-top .detail-info .detail-title {
    font-weight: 600;
    font-size: 2.4rem
}

.detail-top .detail-desc {
    font-weight: 400;
    font-size: 1.6rem;
    margin-top: 1rem;
    margin-bottom: 1rem
}

.detail-top .line,
.detail-top .underline {
    width: 100%;
    display: block;
    margin-bottom: 2rem
}

.detail-top .price-label {
    font-weight: 600;
    font-size: 1.6rem;
    margin-bottom: 1rem
}

.detail-top .publ-prices {
    font-weight: 600;
    font-size: 2.4rem
}

.pub-button-groups {
    border: 1px solid #3E7472;
    padding: 3.5rem 2rem 4rem;
    margin-top: 1.7rem
}

.pub-button-groups .title {
    text-align: center;
    font-size: 2.4rem;
    margin-bottom: 3rem
}

.pub-button-groups .btn-inline {
    display: flex;
    justify-content: center;
    column-gap: 1.4rem
}

.pub-button-groups .btn-base.btn-large {
    padding: .6rem 2rem;
    margin: 0
}

.pub-button-groups .btn-gray {
    background-color: #3e3e3e
}

.pub-button-groups .btn-1 {
    min-width: 36.9rem;
    height: 5.9rem
}

.pub-button-groups .btn-2 {
    min-width: 44.2rem;
    height: 5.9rem
}

.pub-list-content {
    margin-top: 7.8rem
}

.pub-list-content .descript-content {
    margin-bottom: 6rem
}

.pub-list-content .descript-content:last-child {
    margin-bottom: 0
}

.pub-list-content .descript-content .title {
    margin-bottom: 1.9rem
}

.pub-list-content .descript-content .title span {
    min-width: 15.6rem;
    height: 4.7rem;
    background-color: #3E7472;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 4.32rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 1.6rem;
    color: #fff
}

.pub-success-container {
    max-width: 74.3rem;
    margin: 0 auto
}

.pub-success-container .success-title {
    text-align: center;
    font-size: 4.8rem;
    color: #3E7472;
    font-weight: 600;
    margin-bottom: 4rem
}

.pub-success-container .success-desc {
    text-align: center;
    font-size: 2.4rem;
    font-weight: 600;
    margin-bottom: 11.2rem
}

.pub-detail-success .publ-details-bg {
    padding-top: 10rem;
    padding-bottom: 14rem
}

.pub-detail-item {
    display: flex
}

.pub-detail-item .thumb {
    width: 15.7rem
}

.pub-detail-item .thumb img {
    width: 100%;
    height: auto
}

.pub-detail-item .context {
    width: calc(100% - 15.7rem);
    padding-left: 8.3rem
}

.pub-detail-item .context .title {
    font-size: 2.4rem;
    margin-bottom: 2rem
}

.pub-detail-item .context .desc {
    max-width: 30.2rem;
    font-size: 1.6rem;
    width: 100%;
    letter-spacing: .05rem
}

.pub-detail-item .context .line,
.pub-detail-item .context .underline {
    display: block;
    margin: 2.5rem 0
}

.pub-detail-item .context .price-groups {
    display: inline-flex;
    align-items: center
}

.pub-detail-item .context .price-groups .price {
    width: 14.5rem
}

.pub-detail-item .context .price-groups .publ-prices {
    font-size: 2.4rem
}

.pub-detail-item .context .price-groups .download .btn-download {
    min-width: 24.9rem;
    height: 4.2rem;
    padding: 0;
    text-align: center;
    line-height: 4.32rem
}

@media screen and (max-width: 1023px) {
    .payment-method-page .choose-payment .payment-warp a,
    .payment-method-page .choose-payment .payment-warp button{
        padding: 0 .8rem
    }
    .publ-details-wrap {
        max-width: 100%;
        padding: 6rem 2.4rem;
    }
    .publ-details-wrap .btn-base.btn-back {
        min-width: 62rem
    }
    .publ-details-bg {
        border-radius: 0;
        padding: 6rem 2.5rem;
        margin-bottom: 5rem
    }
    .detail-top .detail-thumbnail {
        width: 29rem
    }
    .detail-top .detail-info {
        padding-left: 2.8rem;
        padding-top: 7.7rem
    }
    .detail-top .detail-info .detail-title {
        font-size: 3.2rem
    }
    .detail-top .detail-info .detail-desc {
        font-size: 2.4rem;
        margin-top: 2rem;
        margin-bottom: 2.5rem
    }
    .detail-top .detail-info .btn-base.btn-large {
        min-width: 100%
    }
    .pub-button-groups .btn-inline {
        flex-direction: column
    }
    .pub-button-groups .btn-inline .btn-base {
        width: 100%;
        margin-bottom: 2rem;
        font-size: 2.4rem
    }
    .pub-button-groups .btn-inline .btn-base:last-child {
        margin-bottom: 0
    }
    .detail-top .price-label {
        font-size: 2.4rem;
        margin-bottom: 2.4rem
    }
    .detail-top .publ-prices {
        font-size: 4rem
    }
    .pub-list-content {
        margin-top: 5.7rem
    }
    .pub-list-content .descript-content {
        margin-bottom: 4.3rem
    }
    .pub-list-content .descript-content .desc {
        font-size: 2.4rem;
        line-height: 1.85
    }
    .pub-success-container .success-title {
        font-size: 4rem
    }
    .pub-success-container .success-desc {
        font-size: 2rem;
        margin-bottom: 5rem
    }
    .pub-detail-item .thumb {
        width: 29rem
    }
    .pub-detail-item .context {
        width: calc(100% - 29rem);
        padding-left: 2.8rem
    }
    .pub-detail-item .context .title {
        margin-top: 2rem;
        font-size: 3.2rem
    }
    .pub-detail-item .context .desc {
        font-size: 2.4rem;
        max-width: 100%
    }
    .price-groups {
        display: flex;
        flex-wrap: wrap
    }
    .price-groups .price {
        width: 100% !important;
        margin-bottom: 3rem
    }
    .price-groups .download {
        width: 100% !important
    }
    .pub-detail-item .context .price-groups .price .price-label {
        font-size: 2.4rem;
        margin-bottom: 1rem
    }
    .pub-detail-item .context .price-groups .publ-prices {
        font-size: 3.2rem
    }
    .pub-detail-item .context .price-groups .download .btn-download {
        min-height: 5.3rem;
        width: 100%;
        align-items: center;
        border-radius: 3rem;
        line-height: 1.5
    }
}

.bg-white {
    background-color: #fff;
    border: 1px solid #707070
}

.box-search {
    margin-bottom: 3rem
}

h2.publ-title {
    font-size: 3.65rem;
    line-height: 2.2;
    padding-top: 3rem;
    padding-bottom: 1.7rem
}

.poll-list-search {
    padding-bottom: 2rem;
    padding-top: 4.7rem
}

.poll-list-search .poll-list-form {
    background-color: #fff;
    margin-bottom: 0
}

.poll-list-search .discussion-search-bottom {
    border-top: 0 !important
}

.poll-list-wrap {
    padding-bottom: 7.5rem
}

.poll-list-wrap .pagination {
    margin-top: 4rem
}

.ao {
    background-color: #f4f4f4;
    /* border: 1px solid #8fdbdb; */
    /*margin-left: 7.2rem;*/
    /*margin-right: 7.2rem;*/
    padding: 2.8rem 7.2rem;
}

.title_type02 {
    font-size: 2.8rem;
    font-weight: 700;
    line-height: 1.5;
    color: #3E7472;
    letter-spacing: .04rem;
    margin-bottom: 2rem;
}

.ao ul {
    font-size: 1.8rem;
    font-weight: 300;
    line-height: 1.75;
    letter-spacing: .04rem;
    list-style-type: none;
}

.ao ul li+li{
    margin-top: 1.5rem !important;
}

.ao ul li {
    position: relative;
}

.ao ul li::before{
    content: '';
    position: absolute;
    left: -1.5rem;
    top: 1.2rem;
    width: 0.8rem;
    height: 0.8rem;
    border: 2px solid #3E7472;
    border-radius: .5rem;
}

.article-content a{
    color: #003a3e;
    transition: .3s all;
}

.article-content .enq {
    background-color: #fff;
    border: 1px solid #d8d9d9;
    padding: 2.8rem 7.2rem;
    margin-left: 8.5rem;
    margin-right: 8.5rem;
}

.article-content h6 {
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 1.45833;
    color: #000;
    border-left: 3px solid #3E7472;
    padding-left: 2rem;
    letter-spacing: .04rem;
    margin-bottom: 2rem;
}

@media screen and (max-width: 1023px) {
    .poll-item-wrap .poll-item {
        flex: 50%;
        height: 4.8rem;
        line-height: 5rem
    }
    .box-search {
        min-height: 49rem
    }
    .search-category>.title-search {
        font-size: 2.6rem;
        margin: 2.5rem 0
    }
    .box-search .title-search {
        text-align: center;
        font-weight: 400;
        font-size: 2.4rem
    }

    .ao {
    margin-left: 1rem;
    margin-right: 1rem;
    padding: 2rem 2rem;
}

    .ao ul {
    font-size: 3rem;
}
.title_type02 {
    font-size: 4.6rem;
}
.article-content .enq {
    padding: 2rem 2rem;
    margin-left: 1rem;
    margin-right: 1rem;
}
.article-content .enq h6{
    font-size: 4rem;
}
}

.article-headline {
    margin-top: 5rem;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05rem;
    line-height: 1.8;
    margin-bottom: 1.8rem
}

.poll-sub-title {
    font-size: 2.4rem
}

.text-center {
    text-align: center
}

.detail-header {
    display: inline-block;
    margin-top: 2.8rem;
    margin-bottom: 3.5rem
}

.detail-header .time {
    font-weight: 400;
    font-size: 1.6rem;
    float: left;
    margin-right: 2rem;
    line-height: 3.6rem;
    letter-spacing: .05rem
}

.detail-header .label {
    font-weight: 600;
    font-size: 1.6rem;
    float: right;
    min-width: 19.7rem;
    height: 3.7rem;
    padding: .8rem .5rem;
    line-height: 2.1rem;
    letter-spacing: .05rem;
    margin-top: .7rem;
    background-color: #003a3e;
    color: #fff;
    border: 1px solid #707070;
    border-radius: .8rem;
    text-align: center
}

.article-content {
    max-width: 1200px;
    margin: 0 auto;
}

.article-content h3 {
    margin-top: 3rem;
    margin-bottom: 2.5rem;
    font-size: 2.5rem;
    line-height: 1.5;
    font-family: "Roboto", "sans-serif";
    font-weight: 400;
}

.article-content h3::after {
    height: 3px;
    width: 5%;
    background-color: #3E7472;
    content: "";
    display: block;
    margin: 2rem auto 0 0;
}

.article-content p {
    color: #111;
    letter-spacing: 0.04rem;
    line-height: 1.75;
    font-family: "Roboto", "sans-serif";
    font-weight: 400;
    margin-bottom: 1.25rem;
    word-break: normal;
}

.article-content .gray-box {
    padding: 6.1rem 5.65rem 6.2rem 5.65rem;
    margin-top: 6.7rem
}

.article-content .gray-box h3 {
    padding-top: 0;
    margin-top: 0;
    padding-bottom: .65rem;
    border-bottom: 1px solid #707070;
    margin-bottom: 3.55rem;
    color: #222
}

.article-content p:last-child {
    margin-bottom: 0
}

.article-content .buton-group {
    display: block;
    max-width: 55.189rem;
    margin: 3.85rem auto 6.05rem auto
}

.article-content .buton-group .btn-base.btn-view {
    width: 100%;
    min-height: 12.74rem;
    padding: 2.52rem;
    line-height: 4.32rem;
    border-radius: 4.5rem;
    text-align: center;
    line-height: 1.7
}

.article-content .buton-group .btn-base.btn-user {
    width: 100%;
    min-height: 6rem;
    margin-top: 6.05rem;
    padding: 1.25rem;
    border-radius: 4.5rem;
    text-align: center;
    line-height: 1.5
}

.poll-detail {
    padding-bottom: 10rem
}

@media screen and (max-width: 1023px) {
    .article-headline {
        font-weight: 600;
        font-size: 3.2rem
    }
    .title {
        font-weight: 600;
        font-size: 3.2rem;
        letter-spacing: .05rem;
        line-height: 2
    }
    .detail-header {
        display: block;
        margin-top: 3.2rem;
        margin-bottom: 3.3rem
    }
    .detail-header .time {
        float: none;
        margin-right: 0
    }
    .detail-header .label {
        font-weight: 600;
        font-size: 1.6rem;
        float: none;
        margin-top: 1.3rem
    }
    .article-content h3 {
        font-size: 4.2rem
    }
    .article-content h3::after {
        width: 15%;
    }
    .article-content .buton-group {
        max-width: 62.05rem;
        margin: 3.9rem auto 4.66rem auto
    }
    .article-content .buton-group .btn-base.btn-view {
        padding: 2.52rem 13.5rem 2.72rem
    }
    .article-content .buton-group .btn-base.btn-user {
        margin-top: 2.2rem;
        padding: 1.25rem 12.5rem
    }
    .article-content .gray-box {
        padding: 4.55rem 2.2rem 12.35rem 2.8rem;
        margin-top: 8.2rem
    }
    .article-content .gray-box>h3 {
        padding-bottom: .11rem;
        margin-bottom: 2.2rem
    }
}

.payment-method-page {
    background-color: #e8e8e8;
}

.choose-payment {
    padding-top: 8rem;
    padding-bottom: 24rem;
    background-color: #e8e8e8
}

.choose-payment h1 {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: center;
    margin-bottom: 4rem
}

.choose-payment .payment-content {
    background-color: #fff;
    padding: 7rem 14rem 6.7rem
}

.choose-payment .support-us-form-title {
    color: #3E7472
}

.choose-payment .payment-warp {
    margin-top: 4rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem
}

.choose-payment .payment-warp a,
.choose-payment .payment-warp button{
    width: 100%;
    min-height: 6rem;
    border: 1px solid #3E7472;
    border-radius: 2rem;
    text-align: center;
    transition: all .3s;
    color: #3E7472;
    display: flex;
    align-items: center;
    justify-content: center;
    width: max-content;
    padding: 0 4rem;
    font-size: 2.4rem;
    font-weight: 600;
    background: transparent;
}

.choose-payment .messenger-completed {
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 7rem 2rem
}

.choose-payment .messenger-completed h2 {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: 1.5208333333;
    text-align: center;
    margin-bottom: 4rem;
    color: #3E7472
}

.choose-payment .messenger-completed p {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    text-align: center;
    margin-bottom: 4rem
}

.choose-payment .messenger-completed .btn-to-my-page {
    min-width: 60.7rem;
    height: 5.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667
}

@media screen and (max-width: 1023px) {
    .choose-payment {
        padding-top: 7rem;
        padding-bottom: 7rem
    }
    .choose-payment h1 {
        margin-bottom: 3rem
    }
    .choose-payment .payment-content {
        padding: 5rem 2rem 7rem
    }
    .choose-payment .messenger-completed {
        padding: 3rem 2rem
    }
    .choose-payment .messenger-completed h2 {
        font-size: 2.4rem;
        margin-bottom: 2rem
    }
    .choose-payment .messenger-completed p {
        font-size: 1.6rem
    }
    .choose-payment .messenger-completed .btn-to-my-page {
        font-size: 1.6rem
    }
    .choose-payment .payment-warp {
        margin-top: 3rem;
        gap: 2rem
    }
    .choose-payment .payment-warp a,
    .choose-payment .payment-warp button{
        width: calc(50% - 1rem)
    }
}

.mypage-forum {
    display: flex;
    background-color: #e8e8e8
}

.mypage-forum .packet-mypage-forum {
    flex: 1
}

.mypage-forum .packet-mypage-forum .title-payhistory {
    margin: 7rem 0 3.3rem 3rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3rem 2rem;
    padding-right: 4rem
}

.mypage-forum .packet-mypage-forum .title-payhistory .sort {
    display: block;
    padding-top: 0
}

.mypage-forum .packet-mypage-forum .title-payhistory .sort .sort-title {
    display: none
}

.mypage-forum .packet-mypage-forum .forum-posts {
    padding-top: 1rem;
    padding-left: 5rem;
    margin-bottom: 7rem
}

.mypage-forum .packet-mypage-forum .forum-posts .schedule-event-item .event-title {
    margin-top: 3rem
}

.mypage-forum .packet-mypage-forum .forum-posts .schedule-event-item .event-title h2 {
    font-size: 2.8rem
}

.mypage-forum .packet-mypage-forum .forum-posts .schedule-event-item .event-time {
    margin-top: 0
}

.mypage-forum .packet-mypage-forum .forum-posts .schedule-event-item .event-time h3 {
    font-size: 2rem;
    margin-bottom: 1.5rem
}

/*.mypage-forum .packet-mypage-forum .forum-posts .schedule-event-item .btn-base {*/
/*    background-color: #fff;*/
/*    color: #3E7472;*/
/*    text-decoration: underline;*/
/*    margin-right: 20rem*/
/*}*/

.mypage-forum .post-type-wrap {
    margin-bottom: 1rem
}

.mypage-forum .post-type-wrap a {
    flex: 1
}

@media(max-width: 1023px) {
    .mypage-forum {
        flex-direction: column-reverse
    }
    .mypage-forum .packet-mypage-forum {
        padding-bottom: 7.2rem
    }
    .mypage-forum .packet-mypage-forum .sidebar-mb ul {
        justify-content: space-around
    }
    .mypage-forum .packet-mypage-forum .title-payhistory {
        margin-right: 2rem;
        padding-right: 1rem
    }
    .mypage-forum .packet-mypage-forum .title-payhistory .sort {
        display: flex
    }
    .mypage-forum .packet-mypage-forum .title-payhistory .sort .sort-title {
        display: block
    }
    .mypage-forum .packet-mypage-forum .forum-posts {
        padding-left: 0
    }
    .mypage-forum .packet-mypage-forum .forum-posts .schedule-event .row .schedule-event-item .event-info {
        width: 100%;
    }
    .mypage-forum .packet-mypage-forum .forum-posts .schedule-event .row .schedule-event-item .event-info .event-category h3 {
        padding-right: 7rem
    }
}

@media screen and (max-width: 776px) {
    .mypage-forum .packet-mypage-forum {
        padding-bottom: 3.2rem
    }
    .mypage-forum .packet-mypage-forum .title-payhistory {
        margin-bottom: 3rem
    }
    .mypage-forum .packet-mypage-forum .forum-posts {
        padding-left: 1rem;
        margin-bottom: 0
    }
}

.password-style img {
    max-width: 23.8rem
}

@media(min-width: 1024px) {
    .mypage-forum .packet-mypage-forum .forum-posts .container {
        max-width: 137.3rem
    }
}

.remove-acc {
    display: flex;
    background-color: #e8e8e8
}

.remove-acc .packet-remove-acc {
    flex: 1
}

.remove-acc .packet-remove-acc .title-payhistory {
    margin-bottom: 10rem
}

.remove-acc .packet-remove-acc .reason-withdrawal {
    width: 95rem;
    text-align: center;
    margin-bottom: 28.5rem
}

.remove-acc .packet-remove-acc .reason-withdrawal p {
    font-size: 2.4rem;
    margin-bottom: 2rem;
    color: #222
}

.remove-acc .packet-remove-acc .reason-withdrawal .input-text-payment {
    width: 100%;
    min-height: 33.5rem;
    padding: 2rem;
    border: 1px solid #707070;
    margin-bottom: 8rem;
    font-size: 2.4rem;
    resize: none
}

.remove-acc .packet-remove-acc .reason-withdrawal button {
    cursor: pointer;
    display: block;
    margin: 0 auto;
    text-align: center;
    width: 60.7rem;
    height: 5.9rem;
    background-color: #3E7472;
    color: #fff;
    border: none;
    border-radius: 2.1rem;
    font-size: 2.4rem;
}

.remove-acc .packet-remove-acc .reason-withdrawal button.btn-close {
    border: 1px solid #3E7472;
    color: #3E7472;
    background-color: #fff
}

.remove-acc .packet-remove-acc .reason-withdrawal .modal-wrapper .modal-footer {
    margin: 0
}

.remove-acc .packet-remove-acc .reason-withdrawal .modal-wrapper button {
    width: auto;
    min-width: 20rem
}

@media(max-width: 1023px) {
    .remove-acc {
        flex-direction: column-reverse
    }
    .remove-acc .packet-remove-acc .title-payhistory {
        margin-right: 2rem
    }
    .remove-acc .packet-remove-acc .reason-withdrawal {
        width: auto;
        text-align: left;
        margin-left: 0;
        margin-bottom: 5rem
    }
}

.packet-verify-email {
    background-color: #e8e8e8;
    padding-top: 7rem;
    padding-bottom: 13.5rem
}

.packet-verify-email .container h1 {
    text-align: center;
    margin-bottom: 5rem
}

.packet-verify-email .container .list-step-register {
    margin-bottom: 4.5rem
}

.packet-verify-email .container .list-step-register .packet-step-ar:nth-child(3) .item-step {
    background-color: #003a3e
}

.verify-email {
    background-color: #fff;
    padding: 8rem;
    text-align: center;
    padding-top: 13rem;
    padding-bottom: 15rem
}

.verify-email h2 {
    font-size: 4.8rem;
    color: #3E7472;
    line-height: 7.2rem;
    font-weight: 600;
    margin-bottom: 7rem
}

.verify-email h2 br {
    display: none
}

.verify-email p {
    font-size: 2.4rem;
    line-height: 43.2px
}

.verify-email a:not(.link) {
    display: block;
    width: 60.7rem;
    height: 5.9rem;
    border-radius: 2.1rem;
    border: none;
    background-color: #3E7472;
    color: #fff;
    font-size: 2.4rem;
    margin: 0 auto;
    margin-top: 9rem;
    margin-bottom: 5rem;
    line-height: 5.9rem
}

@media(max-width: 1023px) {
    .packet-verify-email {
        padding-top: 2rem;
        padding-bottom: 8.5rem
    }
    .packet-verify-email .container h1 {
        margin-bottom: 1rem
    }
    .packet-verify-email .container .list-step-register {
        margin-bottom: 3rem
    }
    .verify-email {
        padding: 3rem 2rem
    }
    .verify-email h2 {
        margin-top: 3rem;
        margin-bottom: 11rem
    }
    .verify-email h2 br {
        display: block
    }
    .verify-email a {
        margin-top: 5rem;
        margin-bottom: 8rem
    }
}

.packet-completed-screen {
    background-color: #e8e8e8;
    padding-top: 7rem;
    padding-bottom: 13.5rem
}

.packet-completed-screen .list-step-register .packet-step-ar:last-child .item-step {
    background-color: #003a3e
}

.packet-completed-screen .container h1 {
    text-align: center;
    margin-bottom: 5rem;
    font-size: 4rem
}

.packet-completed-screen .container .list-step-register {
    margin-bottom: 4.5rem
}

@media(max-width: 1023px) {
    .packet-completed-screen {
        padding-top: 2rem;
        padding-bottom: 8.5rem
    }
    .packet-completed-screen .container h1 {
        margin-bottom: 1rem
    }
    .packet-completed-screen .container .list-step-register {
        margin-bottom: 3rem
    }
    .packet-completed-screen .container .verify-email h2 {
        margin-top: 5rem;
        margin-bottom: 5rem
    }
    .packet-completed-screen .container .verify-email p br {
        display: block
    }
    .packet-completed-screen .container .verify-email a {
        margin-top: 6rem;
        margin-bottom: 5rem
    }
}

.join-main {
    background-color: #eaeaea
}

.join-main .sort {
    float: none
}

.join-our .join-our-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    margin-bottom: 6rem
}

.join-our .join-our-title::after {
    content: none
}

.join-form .join-forum-text {
    margin-top: 7rem
}

.join-form .join-forum-text h3 {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.join-form form {
    margin-bottom: 0;
}

.join-form form .post-type-wrap {
    margin-top: 4rem;
    border-right: none
}

.join-form form .post-type-wrap a {
    background: #fff;
    border-bottom: unset
}

.join-form form .discussion-search-wrap {
    background-color: #fff;
    padding: 2.4rem 2.1rem 3.8rem;
    border: 1px solid #707070
}

.join-form form .discussion-search-wrap .category-wrap {
    gap: 0;
    margin-bottom: 0
}

.join-form form .discussion-search-wrap .category-wrap input {
    width: 100%;
    max-width: 52.8rem;
    padding: .7rem 1.5rem;
    background-color: #e8e8e8;
    border: none;
    border-radius: 10px;
    font-size: 1.6rem
}

.join-form form .discussion-search-wrap .category-wrap button {
    margin-left: .88rem;
    padding: .4rem 4.38rem .7rem;
    border: none;
    border-radius: 10px;
    color: #fff;
    background: #3E7472
}

.join-form form .discussion-search-wrap .join-form-choose-inside {
    display: none
}

.join-form .join-form-choose {
    display: flex;
    justify-content: end
}

.join-form .join-form-choose p {
    margin-right: 2.4rem;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25
}

.join-form .join-form-choose .sort-wrap {
    border-radius: .8rem;
}

.join-form .join-form-choose select {
    appearance: none;
    min-width: 19.7rem;
    border: 1px solid #707070;
    border-radius: .8rem;
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2.25
}

.join-form .join-form-choose select.active {
    background: url(../images/component/arrow-top.png) no-repeat right;
    background-position-x: calc(100% - 1.1rem)
}

.join-news .join-news-box {
    margin-top: 3rem
}

.join-news .join-news-box .join-news-item {
    display: flex;
    margin-bottom: 2.8rem;
    background-color: #fff
}

.join-news .join-news-box .join-news-item .join-news-image img {
    max-width: 48.1rem;
    height: 100%
}

.join-news .join-news-box .join-news-item .join-news-content {
    flex: 1;
    padding: 3.3rem 2.4rem 1.8rem 0
}

.join-news .join-news-box .join-news-item .join-news-content .join-news-title {
    max-width: 44rem;
    padding: .8rem 0 .9rem 2.5rem;
    color: #fff;
    background-color: #003a3e
}

.join-news .join-news-box .join-news-item .join-news-content .join-news-title p {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.3333333333
}

.join-news .join-news-box .join-news-item .join-news-content .join-news-text {
    display: flex;
    flex-direction: column;
    margin-top: 3rem;
    margin-left: 2.5rem
}

.join-news .join-news-box .join-news-item .join-news-content .join-news-text .join-news-text-first {
    line-height: normal;
    margin-bottom: 1rem;
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: .05em
}

.join-news .join-news-box .join-news-item .join-news-content .join-news-text .join-news-text-last {
    line-height: normal;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .15em
}

.join-news .join-news-box .join-news-item .join-news-content .join-news-button {
    display: flex;
    justify-content: end;
    line-height: normal;
    margin-top: .6rem
}

.join-news .join-news-box .join-news-item .join-news-content .join-news-button button {
    min-width: 27.6rem;
    padding: 1.2rem 0 1.1rem 0;
    border: none;
    border-radius: 2.7rem;
    background: #3E7472;
    color: #fff;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 3rem
}

.join-news .join-news-pagination {
    margin-top: 7.8rem;
    padding-bottom: 7.5rem
}

.join-sns {
    background-color: #fff
}

.join-sns .sns {
    padding-top: 6.65rem;
    padding-bottom: 9.75rem
}

@media(max-width: 1023px) {
    .discussion-search .post-type-wrap a:nth-child(2n) {
        border-right: 1px solid #707070
    }
    .join-form form .discussion-search-wrap {
        flex-direction: column;
        padding: 2.1rem 2rem 1.7rem 2rem
    }
    .join-form form .discussion-search-wrap .category-wrap input {
        max-width: 100%;
        margin-bottom: .9rem;
        padding: 1.5rem 0;
        text-align: center
    }
    .join-form form .discussion-search-wrap .category-wrap button {
        width: 100%;
        margin-left: 0;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.5
    }
    .join-form form .discussion-search-wrap .join-form-choose-inside {
        display: block;
        display: flex;
        align-items: center;
        justify-content: end;
        margin-top: 2rem
    }
    .join-form form .discussion-search-wrap .join-form-choose-inside p {
        margin-right: 1.9rem;
        font-weight: 600;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 2.25
    }
    .join-form form .discussion-search-wrap .join-form-choose-inside select {
        min-width: 19.7rem;
        padding: .9rem 2.2rem .8rem 2.2rem;
        border: 1px solid #707070;
        border-radius: 10px;
        font-weight: 300;
        font-size: 1.6rem;
        letter-spacing: .05em;
        line-height: 2.25
    }
    .join-news .join-news-box .join-news-item .join-news-image img {
        max-width: 21.5rem
    }
    .join-news .join-news-box .join-news-item .join-news-content {
        padding: 2.4rem 3.6rem 1.15rem 0
    }
    .join-news .join-news-box .join-news-item .join-news-content .join-news-title {
        max-width: 100%
    }
    .join-news .join-news-box .join-news-item .join-news-content .join-news-text {
        margin-top: 1.6rem
    }
    .join-news .join-news-box .join-news-item .join-news-content .join-news-text .join-news-text-first {
        line-height: normal;
        margin-bottom: 2.65rem;
        font-weight: 600;
        font-size: 4rem;
        letter-spacing: .05em
    }
    .join-news .join-news-box .join-news-item .join-news-content .join-news-text .join-news-text-last {
        line-height: normal;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .15em
    }
    .join-news .join-news-box .join-news-item .join-news-content .join-news-button {
        margin-top: 1.7rem;
        margin-left: 2.5rem
    }
    .join-news .join-news-box .join-news-item .join-news-content .join-news-button button {
        min-width: 100%;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .05em;
        line-height: 1.5
    }
    .join-sns {
        display: none
    }
    .join-our .join-our-title {
        padding: 0 calc(11.8rem - 6%)
    }
}

.forum-application {
    color: #222;
    margin-top: 3rem
}

.forum-application .forum-application-image img {
    height: 81.1rem
}

.forum-application .forum-application-button {
    margin-top: 2rem
}

.forum-application .forum-application-button button {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    padding: 2rem 0;
    min-width: 27.2rem;
    border: none;
    border-radius: 16px;
    color: #fff;
    background-color: #003a3e
}

.forum-application .forum-application-button span {
    text-align: center !important;
    height: unset !important
}

.forum-application-text {
    margin-top: 4rem;
    margin-bottom: 5rem;
    padding: 4.5rem 3.6rem 4.5rem;
    border: 1px solid #3E7472;
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 1.8
}

.forum-application-text p {
    margin-bottom: 2rem
}

.forum-application-text p:last-child {
    margin-bottom: 0
}

.forum-assistance {
    color: #222;
    background-color: #e8e8e8;
    padding-top: 5.73rem;
    padding-bottom: 8.05rem
}

.forum-assistance .forum-assistance-box .forum-assistance-theme {
    background: #3E7472;
    margin-bottom: 3.6rem;
    padding-left: 3.7rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    color: #fff
}

.forum-assistance .forum-assistance-box .forum-assistance-theme p {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    line-height: 3rem
}

.forum-assistance .forum-assistance-box .forum-assistance-theme br {
    display: none
}

.forum-assistance-program {
    padding: 4.4rem 19.5rem 6.63rem;
    background-color: #fff
}

.forum-assistance-program .forum-assistance-program-item {
    display: flex;
    margin-bottom: 2rem
}

.forum-assistance-program .forum-assistance-program-item .label button,
.forum-assistance-program .forum-assistance-program-item .label span {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    min-width: 13.6rem;
    text-align: center;
    padding: .9rem 2rem .8rem;
    border-radius: 1.6rem;
    color: #fff;
    background-color: #3E7472;
    display: block;
    border: none;
    transition: all .3s ease-in-out;
}

.forum-assistance-program .forum-assistance-program-item .content {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-left: 2rem;
    display: flex;
    align-items: center;
    flex: 1
}

.forum-assistance-program .forum-assistance-program-item .content.note {
    font-size: 2.4rem;
    line-height: 1.7
}

.forum-assistance-program .forum-assistance-program-item span {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.forum-assistance-program .forum-assistance-program-text {
    padding-left: 1rem;
    padding-top: 1.3rem;
    margin-bottom: 2rem
}

.forum-assistance-program .forum-assistance-program-text p {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.forum-assistance-program .forum-assistance-program-item-custom {
    display: flex;
    align-items: center;
    margin-bottom: 1.7rem
}

.forum-assistance-program .forum-assistance-program-item-custom div {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    min-width: 15.6rem;
    text-align: center;
    padding: .9rem 0 .8rem;
    border-radius: 1.6rem;
    color: #fff;
    background-color: #3E7472
}

.forum-assistance-program .forum-assistance-program-item-custom span {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2rem;
    margin-left: 2rem
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-title {
    color: #3E7472
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-title p {
    position: relative;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    padding-left: 1rem
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-title p:after {
    content: "";
    position: absolute;
    height: .1rem;
    width: 100%;
    left: 0;
    bottom: 0;
    background-color: #3E7472
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group {
    padding: 2rem
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule {
    display: flex;
    line-height: 3rem;
    margin-bottom: 1.6rem
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-time {
    margin-bottom: 1.4rem;
    width: 20rem;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #3E7472
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note {
    flex-direction: column;
    flex: 1
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note .role-wrapper {
    margin: 3.2rem 0
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note .role-wrapper table {
    border-color: #3E7472
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note .role-wrapper table * {
    border-color: #3E7472
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note .role-wrapper table th {
    color: #3E7472
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note .role-wrapper table td:last-child {
    text-align: end
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note .title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note span {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: 1.4rem
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-note span:last-child {
    margin-bottom: 0
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule:last-child {
    margin-bottom: 0
}

.forum-assistance-program .forum-assistance-program-part .forum-assistance-program-item {
    margin-bottom: 0
}

.forum-assistance-program .forum-assistance-program-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-top: 8rem;
    padding: 3.1rem 5.6rem 4.6rem;
    border: 1px solid #3E7472
}

.forum-assistance-program .forum-assistance-program-box p {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    margin-bottom: 4.8rem
}

.forum-assistance-program .forum-assistance-program-box div {
    width: 100%;
    display: flex;
    justify-content: center;
    column-gap: 5.2rem
}

.forum-assistance-program .forum-assistance-program-box div a {
    padding: 1.5rem 0 1.4rem;
    border-radius: 2.1rem;
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    color: #fff
}

.forum-assistance-program .forum-assistance-program-box div a:first-child {
    min-width: calc(50% - 2.6rem);
    background-color: #3e3e3e
}

.forum-assistance-program .forum-assistance-program-box div a:last-child {
    min-width: calc(50% - 2.6rem);
    background-color: #3E7472
}

.forum-assistance-discussion {
    background-color: #fff;
    padding: 3.29rem 11.5rem 5.15rem
}

.forum-assistance-discussion .forum-assistance-discussion-item {
    margin-bottom: 10.45rem
}

.forum-assistance-discussion .forum-assistance-discussion-item .forum-assistance-discussion-title {
    margin-bottom: 3.35rem
}

.forum-assistance-discussion .forum-assistance-discussion-item .forum-assistance-discussion-title p {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    text-align: center;
    color: #3E7472;
    position: relative;
    line-height: 6.1rem
}

.forum-assistance-discussion .forum-assistance-discussion-item .forum-assistance-discussion-title p:after {
    content: "";
    height: .1rem;
    width: 100%;
    background-color: #3E7472;
    position: absolute;
    right: 0;
    bottom: 0
}

.forum-assistance-discussion .forum-assistance-discussion-item .forum-assistance-discussion-text p {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 4rem
}

.forum-assistance-discussion .forum-assistance-discussion-item:last-child {
    margin-bottom: 0
}

.forum-assistance-discussion .forum-assistance-biography {
    margin-bottom: 10.45rem
}

.forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-title {
    margin-bottom: 3.35rem
}

.forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-title p {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: 6.1rem;
    text-align: center;
    color: #3E7472;
    position: relative
}

.forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-title p:after {
    content: "";
    height: .1rem;
    width: 100%;
    background-color: #3E7472;
    position: absolute;
    right: 0;
    bottom: 0
}

.forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-box p {
    display: flex;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 4rem
}

.forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-box img {
    align-self: flex-start;
    max-width: 27.4rem
}

.forum-btn-index {
    display: block;
    width: 60.7rem;
    height: 5.9rem;
    background-color: #3E7472;
    border-radius: 2.1rem;
    margin: 0 auto;
    margin-top: 7.5rem;
    line-height: 5.9rem;
    color: #fff;
    text-align: center;
    font-size: 2.4rem;
    font-weight: 600
}

.forum-btn-index:hover {
    color: #fff
}

.forum-program {
    width: 100%
}

.forum-program * {
    font-size: 2rem !important
}

.forum-program .forum-assistance-program-part {
    background-color: #eaf6d8;
    border: 1px solid #3E7472;
    margin-bottom: 2.4rem;
    position: relative
}

.forum-program .forum-assistance-program-part.not-allow {
    opacity: .4;
    background-color: rgba(0, 0, 0, .1)
}

.forum-program .forum-assistance-program-part:last-child {
    margin-bottom: 4rem
}

.forum-program .forum-assistance-program-part .forum-assistance-program-title p {
    padding: 2rem
}

.forum-program .btn-show-desc {
    background: none;
    border: none;
    color: #3E7472;
    padding: 0;
    margin-bottom: 1rem
}

.forum-program .btn-show-desc::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 1rem solid rgba(0, 0, 0, 0);
    border-right: 1rem solid rgba(0, 0, 0, 0);
    border-bottom: 1.3rem solid #3E7472;
    margin-left: 1rem;
    transition: all .3s ease-in-out
}

.forum-program .btn-show-desc.active::after {
    transform: rotate(180deg)
}

.forum-program .description-wrapper {
    height: 0;
    overflow: hidden
}

.forum-program .description-wrapper.active {
    height: auto
}

.seminar-detail .forum-application-button {
    margin-bottom: 3rem
}

@media screen and (max-width: 1023px) {
    .forum-application {
        margin-top: 2.7rem
    }
    .forum-application .forum-assistance-container {
        padding: 0
    }
    .forum-application .forum-assistance-container .forum-application-image img {
        height: auto
    }
    .forum-application .forum-assistance-container .forum-application-button {
        margin-top: 1.5rem;
        margin-left: 2.8rem
    }
    .forum-application .forum-assistance-container .forum-application-button button {
        font-weight: 600;
        font-size: 1.6rem;
        letter-spacing: .05em;
        padding: .9rem 0 .8rem;
        min-width: 19.7rem
    }
    .forum-application .forum-assistance-container .forum-application-text {
        padding: 2.7rem 1.6rem 1.9rem;
        margin-right: 1.6rem;
        margin-left: 1.6rem;
        margin-top: 2.9rem
    }
    .forum-assistance {
        padding-top: 4.1rem
    }
    .forum-assistance .forum-assistance-container {
        padding: 0 2.5rem
    }
    .forum-assistance .forum-assistance-container .forum-assistance-box .forum-assistance-theme {
        padding: 1.6rem 2.4rem 1.5rem 2.3rem
    }
    .forum-assistance .forum-assistance-container .forum-assistance-box .forum-assistance-theme br {
        display: block
    }
    .forum-assistance-program {
        padding: 4.33rem 1.6rem 4.79rem
    }
    .forum-assistance-program .forum-assistance-program-text {
        padding-left: .9rem;
        margin-bottom: 0
    }
    .forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group {
        padding: 1.65rem 0 3rem .9rem
    }
    .forum-assistance-program .forum-assistance-program-part .forum-assistance-program-group .forum-assistance-program-schedule .forum-assistance-program-time {
        display: flex
    }
    .forum-assistance-program .forum-assistance-program-box {
        margin-top: 6.6rem
    }
    .forum-assistance-program .forum-assistance-program-box p {
        margin-bottom: 4.3rem
    }
    .forum-assistance-program .forum-assistance-program-box div {
        display: flex;
        flex-direction: column
    }
    .forum-assistance-program .forum-assistance-program-box div a:first-child {
        margin-right: 0;
        margin-bottom: 2.3rem
    }
    .forum-assistance-discussion {
        padding: 4rem 0 0
    }
    .forum-assistance-discussion .forum-assistance-discussion-item .forum-assistance-discussion-title {
        margin-bottom: 2rem
    }
    .forum-assistance-discussion .forum-assistance-discussion-item:last-child {
        margin-bottom: 0;
        padding-bottom: 10.45rem
    }
    .forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-title {
        margin-bottom: 2rem
    }
    .forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-box p {
        display: inline
    }
    .forum-assistance-discussion .forum-assistance-biography .forum-assistance-biography-box img {
        float: left
    }
}

.general-donation {
    background-color: #e8e8e8;
    padding-bottom: 9rem
}

.general-donation-title {
    padding-top: 8.7rem;
    margin-bottom: 4.6rem;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: center
}

.general-donation-content {
    padding: 7rem 14rem 8rem 14rem;
    background-color: #fff
}

.general-donation-content .general-donation-select .support-us-form {
    margin-top: 0;
    margin-bottom: 4rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0);
    color: #3E7472
}

.general-donation-content .general-donation-select .general-donation-button {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 7.5rem
}

.general-donation-content .general-donation-select .general-donation-button .general-donation-button-item {
    display: inline-block;
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #3E7472;
    min-width: 36.3rem;
    height: 5.9rem;
    padding: 1.42rem 0 1.32rem 0;
    border: 1px solid #3E7472;
    border-radius: 2.1rem;
    cursor: pointer;
    transition: all .2s;
    background-color: rgba(0, 0, 0, 0)
}

.general-donation-content .general-donation-select .general-donation-button .general-donation-button-item:hover {
    color: #fff;
    background-color: #3E7472
}

.general-donation-content .general-donation-donate .support-us-form {
    margin-top: 0;
    margin-bottom: 2rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.general-donation-content .general-donation-donate .general-donation-box .general-donation-text {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    margin-bottom: 3rem
}

.general-donation-content .general-donation-donate .general-donation-box .general-donation-donate-button {
    margin-bottom: 6.4rem;
    display: flex
}

.general-donation-content .general-donation-donate .general-donation-box .general-donation-donate-button a {
    display: inline-block;
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #fff
}

.general-donation-content .general-donation-donate .general-donation-box .general-donation-donate-button .general-donation-donate-item {
    min-width: 36.3rem;
    height: 5.9rem;
    padding: 1.5rem 0 1.4rem 0;
    background-color: #3E7472;
    border: none;
    border-radius: 2.1rem;
    cursor: pointer
}

.general-donation-content .general-donation-donate .general-donation-box .general-donation-donate-button .general-donation-donate-item:first-child {
    margin-right: .9rem
}

.general-donation-content .general-donation-donate .general-donation-box .general-donation-link {
    text-align: end;
    text-decoration: underline
}

@media screen and (max-width: 1023px) {
    .general-donation-title {
        padding-top: 1.2rem;
        margin-bottom: 1.2rem
    }
    .general-donation-content {
        padding: 5rem 2rem 7rem 2rem
    }
    .general-donation-content .general-donation-select .general-donation-button {
        justify-content: center;
        gap: .9rem 1rem
    }
    .general-donation-content .general-donation-select .general-donation-button .general-donation-button-item {
        min-width: 0;
        padding-right: .5rem;
        padding-left: .5rem;
        line-height: 1
    }
    .general-donation-content .general-donation-select .general-donation-button .general-donation-button-item:last-child {
        padding: 1.5rem 1.2rem 1.4rem
    }
    .general-donation-content .general-donation-donate .general-donation-box .general-donation-donate-button {
        display: flex;
        justify-content: space-between;
        margin-bottom: 3.6rem
    }
    .general-donation-content .general-donation-donate .general-donation-box .general-donation-donate-button .general-donation-donate-item {
        min-width: 32.5rem
    }
}

.member-informations .info-group {
    margin-top: 2rem
}

.member-informations .info-group p {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667
}

.member-informations .info-group p.label {
    font-weight: 600
}

.member-informations .support-us-form-title:not(:first-child) {
    margin-top: 4rem
}

.member-informations .packet-update-info {
    padding: 8rem 10.7rem 11.5rem 10.7rem
}

.member-informations .tow-column-group {
    display: grid;
    grid-template-columns: repeat(2, 36.2rem)
}

.member-informations .btn-edit-info {
    display: block;
    margin: 8rem auto 0;
    width: 60rem;
    height: 6rem;
    background-color: #333;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667;
    color: #fff;
    border-radius: 2rem;
    display: flex;
    align-items: center;
    justify-content: center
}

.notifications-mypage {
    margin: auto;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6rem;
    min-width: 78rem;
    min-height: 33rem;
    padding: 2rem;
    font-weight: 600;
    font-size: 3.6rem;
    letter-spacing: .05em;
    line-height: 1.1944444444;
    background-color: #fff;
    border-radius: 2rem;
    border: .6rem solid #3E7472;
    z-index: 2
}

.notifications-mypage .sub-title {
    padding: 0 6rem;
    line-height: 1.6;
    font-size: 2.4rem
}

.notifications-mypage.active {
    display: flex
}

.notifications-mypage .notifications-close {
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    min-width: 35rem;
    min-height: 6rem;
    cursor: pointer
}

@media screen and (max-width: 1023px) {
    .notifications-mypage {
        min-width: auto
    }
    .member-informations .tow-column-group {
        grid-template-columns: repeat(2, 1fr)
    }
    .member-informations .packet-update-info {
        padding: 2rem 3.5rem 8rem 3.5rem
    }
}

.change-membership .member-plan-info {
    display: flex;
    flex-direction: column;
    background-color: #fff;
    margin-top: 6rem;
    margin-left: 3.6rem;
    padding-right: 3.5rem;
    position: relative;
    border-left: .5rem solid #3E7472
}

.change-membership .member-plan-item {
    display: flex;
    min-height: 7.2rem;
    align-items: center;
    margin-left: 3rem;
    gap: 11rem
}

.change-membership .member-plan-item:not(:last-child) {
    border-bottom: 1px solid #707070
}

.change-membership .member-plan-item p {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 1.7916666667
}

.change-membership .member-plan-item p:first-child {
    min-width: 18rem
}

.change-membership .packet-update-info {
    margin: 0 auto;
    background-color: inherit;
    margin-top: 9rem;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0
}

.change-membership .membership-types {
    padding-top: 0;
    margin-top: 0;
    padding-bottom: 12rem
}

.change-membership .membership-types .membership-types-wrap {
    max-width: 106rem;
    margin: 0 auto 0 auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 5rem 6rem
}

.change-membership .membership-types .membership-types-item-desc {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1.875;
    width: auto;
    min-height: 8rem;
}

.change-membership .membership-types .membership-types-item-desc br {
    display: none
}

.change-membership .membership-types-item-title {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 1;
    padding-top: 2rem
}

.change-membership .membership-types-item-title span {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 1.71875
}

.change-membership .membership-types-body-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 2.2916666667;
    padding-top: 0;
    margin-bottom: 0
}

.change-membership .membership-types-body-btn {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 2.2916666667;
    padding: 0;
    max-height: 4.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 40rem
}

.change-membership .membership-types-benefits {
    text-align: center
}

.change-membership .membership-types-body {
    padding: 0 1rem 3rem 2rem
}

.change-membership .membership-types-note {
    max-width: 106rem;
    margin: 0 auto
}

.change-membership .member-plan-detailt {
    margin-left: auto;
    position: relative;
    z-index: 10;
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 3.6
}

.change-membership .member-plan-detailt::before {
    content: "";
    width: 100%;
    height: .8rem;
    position: absolute;
    bottom: 2rem;
    left: 0;
    background-color: #f5ef58;
    z-index: -1
}

@media screen and (max-width: 1023px) {
    .change-membership .membership-types .membership-types-wrap {
        gap: 1.5rem;
    }
    .change-membership .membership-types {
        padding-bottom: 10rem
    }
    .change-membership .packet-update-info {
        margin: 0 auto;
        margin-top: 5rem
    }
    .change-membership .member-plan-info {
        margin-left: 0
    }
    .change-membership .membership-types .membership-types-wrap {
        grid-template-columns: 1fr;
    }
    .change-membership .member-plan-item {
        gap: 5rem
    }
    .change-membership .membership-types-body-btn {
        max-width: 57rem
    }
}

.general-credit {
    background-color: #e8e8e8;
    padding: 8.6rem 0 8.6rem 0
}

.general-credit .company-info {
    margin-bottom: 3rem
}

.general-credit .contact-details label {
    display: block
}

.general-credit .bank-transfer-action {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 1rem
}

.general-credit .bank-transfer-action button,
.general-credit .bank-transfer-action a {
    border-radius: 2.1rem;
    border: 1px solid #3E7472;
    padding: 1.05rem 7.95rem;
    min-width: 26.6rem;
    font-size: 2.4rem;
    font-weight: 600
}

.general-credit .bank-transfer-action button.bank-transfer-fix,
.general-credit .bank-transfer-action a.bank-transfer-fix {
    background-color: #fff;
    color: #3E7472
}

.general-credit .bank-transfer-action button.bank-transfer-send,
.general-credit .bank-transfer-action a.bank-transfer-send {
    color: #fff;
    background-color: #3E7472
}

.general-credit-title {
    margin-bottom: 5rem
}

.general-credit-title h2 {
    margin-bottom: 7rem;
    text-align: center;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 5.1rem
}

.general-credit-title .general-credit-step {
    display: flex;
    align-items: center;
    justify-content: center
}

.general-credit-title .general-credit-step .general-credit-step-item {
    display: flex;
    align-items: center;
    padding: 1.1rem 0 1.1rem 1.2rem;
    border-radius: 4.3rem;
    color: #fff;
    background-color: #707070;
    min-width: 29.3rem
}

.general-credit-title .general-credit-step .general-credit-step-item img {
    max-width: 6.4rem
}

.general-credit-title .general-credit-step .general-credit-step-item .general-credit-step-text {
    display: flex;
    flex-direction: column;
    margin-left: 1.3rem
}

.general-credit-title .general-credit-step .general-credit-step-item .general-credit-step-text .general-credit-step-text-title {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2rem;
    margin-bottom: .4rem
}

.general-credit-title .general-credit-step .general-credit-step-item .general-credit-step-text .general-credit-step-text-content {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-title .general-credit-step .general-credit-step-group {
    display: flex;
    align-items: center
}

.general-credit-title .general-credit-step .general-credit-step-group .general-credit-arrow {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin: 0 1.2rem
}

.general-credit-title .general-credit-step .general-credit-step-group .general-credit-arrow svg {
    width: 1.2rem;
    height: 3.2rem
}

.general-credit-title .general-credit-step .general-credit-step-group .general-credit-step-group-item {
    display: flex;
    align-items: center;
    padding: 1.1rem 0 1.1rem 1.2rem;
    border-radius: 4.3rem;
    color: #fff;
    background-color: #707070;
    min-width: 29.3rem
}

.general-credit-title .general-credit-step .general-credit-step-group .general-credit-step-group-item img {
    max-width: 6.4rem
}

.general-credit-title .general-credit-step .general-credit-step-group .general-credit-step-group-item .general-credit-step-group-text {
    display: flex;
    flex-direction: column;
    margin-left: 1.3rem
}

.general-credit-title .general-credit-step .general-credit-step-group .general-credit-step-group-item .general-credit-step-group-text .general-credit-step-group-title {
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2rem;
    margin-bottom: .4rem
}


.general-credit-title .general-credit-step .general-credit-step-group .general-credit-step-group-item .general-credit-step-group-text .general-credit-step-group-content {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-title .general-credit-step .general-credit-step-group .general-active {
    background-color: #003a3e !important
}

.general-credit-title .general-credit-step .general-active {
    background-color: #003a3e
}

.general-credit-content {
    padding: 6rem 15rem 10rem;
    background-color: #fff
}

.general-credit-content .general-credit-payment {
    margin-bottom: 6rem
}

.general-credit-content .general-credit-payment .support-us-form {
    margin-top: 0;
    margin-bottom: 4rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0);
    color: #3E7472
}

.general-credit-content .general-credit-payment .general-credit-cards {
    display: flex;
    flex-direction: column
}

.general-credit-content .general-credit-payment .general-credit-cards .method-selected {
    width: max-content;
    padding: 1.5rem 4rem 1.4rem;
    color: #fff;
    background-color: #3E7472;
    border: none;
    border-radius: 2.1rem;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-content .general-credit-payment .general-credit-cards .only-stripe {
    margin-top: 9rem
}

.general-credit-content .general-credit-payment .general-credit-cards span,
.general-credit-content .general-credit-payment .general-credit-cards p {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-content .general-credit-payment .general-credit-cards img {
    max-width: 35rem
}

.general-credit-content .general-credit-form form .general-credit-application {
    margin-bottom: 11.4rem
}

.general-credit-content .general-credit-form form .general-credit-application .support-us-form {
    margin-top: 0;
    margin-bottom: 4rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label {
    margin-bottom: 2.2rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label .general-credit-label-title {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label .general-credit-label-title span:first-child {
    padding: .2rem .5rem .3rem .4rem;
    border: none;
    border-radius: .8rem;
    color: #fff;
    background-color: red;
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label .general-credit-label-title span:last-child {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label .general-credit-label-title:first-child {
    display: flow
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label select {
    min-width: 60.7rem;
    padding: 1rem 0 1.2rem 1.5rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label input {
    min-width: 60.6rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label .general-credit-label-group-select {
    position: relative;
    display: inline-block
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label .general-credit-label-group-select select {
    min-width: 60.7rem;
    height: 4.9rem;
    padding: .9rem 1.5rem .84rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    appearance: none
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-label .general-credit-label-group-select svg {
    width: 2.4rem;
    height: 3rem;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 2.2rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox {
    margin-bottom: 2.2rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox .general-credit-checkbox-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox .general-credit-checkbox-title span:first-child {
    padding: .2rem .5rem .3rem .4rem;
    border: none;
    border-radius: .8rem;
    color: #fff;
    background-color: red;
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox .general-credit-checkbox-item {
    display: flex;
    padding-left: 5rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox .general-credit-checkbox-item .general-credit-checkbox-group {
    display: flex;
    align-items: center;
    margin-right: 4rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox .general-credit-checkbox-item .general-credit-checkbox-group label {
    margin-left: 1.7rem;
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox .general-credit-checkbox-item .general-credit-checkbox-group input {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid #707070;
    background-color: #fff;
    vertical-align: middle
}

.general-credit-content .general-credit-form form .general-credit-application .general-credit-checkbox .general-credit-checkbox-item .general-credit-checkbox-group button {
    margin-left: 4rem;
    border: 1px solid #ababab;
    background-color: #c2c2c2
}

.general-credit-content .general-credit-form form .general-credit-information {
    margin-bottom: 6.6rem
}

.general-credit-content .general-credit-form form .general-credit-information .support-us-form {
    margin-top: 0;
    margin-bottom: 4rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-group {
    display: flex;
    margin-bottom: 3rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-group .general-credit-group-input .general-credit-group-title {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-group .general-credit-group-input .general-credit-group-title span:first-child {
    margin-left: 1rem;
    padding: .2rem .5rem .3rem .4rem;
    border: none;
    border-radius: .8rem;
    color: #fff;
    background-color: red;
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-group .general-credit-group-input input {
    min-width: 34.6rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-group .general-credit-group-input:first-child {
    margin-right: 1.6rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-input {
    margin-bottom: 2.2rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-input .general-credit-input-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-input .general-credit-input-title span:first-child {
    padding: .2rem .5rem .3rem .4rem;
    border: none;
    border-radius: .8rem;
    color: #fff;
    background-color: red;
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-input input {
    min-width: 60.7rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-input:last-child {
    margin-bottom: 0
}

.general-credit-content .general-credit-form form .general-credit-information .general-credit-input-full input {
    width: 100%
}

.general-credit-content .general-credit-form form .general-credit-privacy {
    margin-bottom: 8.4rem;
    padding: 2.3rem 0 3.3rem 3.7rem;
    background-color: rgba(96, 96, 96, .17)
}

.general-credit-content .general-credit-form form .general-credit-privacy .general-credit-privacy-text {
    display: flex;
    align-items: center;
    margin-bottom: .9rem
}

.general-credit-content .general-credit-form form .general-credit-privacy .general-credit-privacy-text .general-credit-privacy-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    text-decoration: underline #003a3e
}

.general-credit-content .general-credit-form form .general-credit-privacy .general-credit-privacy-text .general-credit-privacy-note {
    margin-left: 1rem;
    padding: .2rem .5rem .3rem .4rem;
    border: none;
    border-radius: .8rem;
    color: #fff;
    background-color: red;
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem;
    height: 2.7rem;
    display: flex;
    align-items: center;
    margin-left: .7rem
}

.general-credit-content .general-credit-form form .general-credit-privacy .general-credit-privacy-checkbox {
    display: flex;
    align-items: center;
    padding-left: 1.8rem
}

.general-credit-content .general-credit-form form .general-credit-privacy .general-credit-privacy-checkbox label {
    margin-left: 1.7rem;
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-credit-content .general-credit-form form .general-credit-privacy .general-credit-privacy-checkbox input {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid #707070;
    background-color: #fff
}

.general-credit-content .general-credit-form form .general-credit-button {
    display: flex;
    justify-content: center
}

.general-credit-content .general-credit-form form .general-credit-button button {
    min-width: 60.7rem;
    padding: 1.5rem 0 1.4rem 0;
    border: none;
    border-radius: 2.1rem;
    background-color: #3E7472;
    color: #fff;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

@media screen and (max-width: 1023px) {
    .general-credit {
        padding: 3.5rem 0 3.5rem 0
    }
    .general-credit-title {
        margin-bottom: 3.5rem
    }
    .general-credit-title h2 {
        margin-bottom: 2rem
    }
    .general-credit-title .general-credit-membership {
        font-weight: 600;
        font-size: 3.2rem;
        letter-spacing: .05em
    }
    .general-credit-title .general-credit-step {
        flex-wrap: wrap;
        gap: .8rem 0
    }
    .general-credit-content {
        padding: 5.4rem 2rem 8.9rem 2rem
    }
    .general-credit-content .general-credit-payment .general-credit-cards button {
        margin-bottom: 5.8rem
    }
    .general-credit-content .general-credit-form form .general-credit-application {
        margin-bottom: 5rem
    }
    .general-credit-content .general-credit-form form .general-credit-information {
        margin-bottom: 5rem
    }
    .general-credit-content .general-credit-form form .general-credit-information .general-credit-group {
        justify-content: space-between
    }
    .general-credit-content .general-credit-form form .general-credit-information .general-credit-group .general-credit-group-input {
        width: 100%
    }
    .general-credit-content .general-credit-form form .general-credit-information .general-credit-group .general-credit-group-input input {
        min-width: 0;
        width: 100%
    }
    .general-credit-content .general-credit-form form .general-credit-privacy {
        margin-bottom: 2.5rem
    }
}

.general-confirmation {
    padding: 6rem 15rem 9rem;
    background-color: #fff
}

.general-confirmation .general-confirmation-method {
    margin-bottom: 7.3rem
}

.general-confirmation .general-confirmation-method .support-us-form {
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0);
    color: #3E7472
}

.general-confirmation .general-confirmation-method .general-confirmation-method-text {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #3E7472
}

.general-confirmation .general-confirmation-application {
    margin-bottom: 6.7rem
}

.general-confirmation .general-confirmation-application .support-us-form {
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.general-confirmation .general-confirmation-application .general-confirmation-application-item {
    margin-bottom: 2.8rem
}

.general-confirmation .general-confirmation-application .general-confirmation-application-item .general-confirmation-application-text:first-child {
    margin-bottom: .9rem;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-confirmation .general-confirmation-application .general-confirmation-application-item .general-confirmation-application-regular {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-confirmation .general-confirmation-application .general-confirmation-application-item .general-confirmation-application-medium {
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-confirmation .general-confirmation-application .general-confirmation-application-item:last-child {
    margin-bottom: 0
}

.general-confirmation .general-confirmation-supporter {
    margin-bottom: 10.7rem
}

.general-confirmation .general-confirmation-supporter .support-us-form {
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.general-confirmation .general-confirmation-supporter .general-confirmation-supporter-group {
    display: flex;
    margin-bottom: 2.7rem
}

.general-confirmation .general-confirmation-supporter .general-confirmation-supporter-group .general-confirmation-supporter-item:first-child {
    min-width: 36.2rem
}

.general-confirmation .general-confirmation-supporter .general-confirmation-supporter-text {
    margin-bottom: 2.7rem
}

.general-confirmation .general-confirmation-supporter .general-confirmation-supporter-text:last-child {
    margin-bottom: 0
}

.general-confirmation .general-confirmation-supporter .general-confirmation-supporter-regular {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-confirmation .general-confirmation-supporter .general-confirmation-supporter-semibold {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

@media screen and (max-width: 1023px) {
    .general-confirmation {
        padding: 6rem 2rem 9rem
    }
    .general-confirmation .general-confirmation-application {
        margin-bottom: 6rem
    }
    .general-confirmation .general-confirmation-supporter {
        margin-bottom: 6rem
    }
}

.general-thanks {
    padding: 8.3rem 15rem 10.3rem;
    background-color: #fff
}

.general-thanks .general-thanks-text {
    margin-bottom: 6.4rem
}

.general-thanks .general-thanks-text .general-thanks-title {
    margin-bottom: 4rem;
    text-align: center;
    color: #3E7472;
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    line-height: 6.1rem
}

.general-thanks .general-thanks-text .general-thanks-completed {
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em
}

.general-thanks .general-thanks-action {
    gap: 3rem;
    display: flex;
    justify-content: center
}

.general-thanks .general-thanks-action .general-thanks-button {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    text-align: center;
    display: inline-block;
    min-width: 38rem;
    padding: 1.5rem 0 1.4rem;
    border: none;
    border-radius: 2.1rem;
    color: #fff;
    background-color: #3E7472;
    font-size: 2.4rem
}

@media screen and (max-width: 1023px) {
    .general-thanks {
        padding: 6.4rem 2rem 8.2rem
    }
    .general-thanks .general-thanks-text .general-thanks-title {
        font-size: 4rem
    }
}

.agenda-green-title {
    padding: 2rem;
    background-color: #3E7472;
    text-align: center;
    color: #fff;
    font-size: 4.8rem;
    font-weight: bold;
    line-height: 1.25
}

.agenda-banner {
    min-height: 45rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3.7rem 14.6rem 4.1rem;
    position: relative;
}

.agenda-banner:before{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: block;
    background-color: rgba(62, 116, 114, 0.4);
}

.agenda-banner .banner-text {
    max-width: 93rem;
    margin: 0;
    padding: 0;
    background: rgba(0, 0, 0, 0);
    color: #fff;
    text-align: center;
    position: relative;
}

.agenda-banner .banner-text .label {
    background-color: #333;
    padding: .1rem 5rem;
    margin-bottom: 1.2rem
}

.agenda-banner .banner-text .title {
    font-size: 6rem;
    letter-spacing: .6rem;
    margin-bottom: 1.2rem;
    width: 100%
}

.agenda-banner .banner-text .desc {
    line-height: 2.2;
    letter-spacing: .1rem
}

.agenda-page .schedule-event-item .event-title>h2 {
    font-weight: 500;
    font-size: 2.8rem;
    letter-spacing: .05em;
    margin-top: 3.6rem
}

.agenda-page .schedule-event-item .event-time>h3 {
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .15em;
    margin-top: 1rem
}

.agenda-page .list-categories .ratio {
    padding-bottom: 65%;
}

.agenda-intro {
    display: flex;
    min-height: 64rem
}

.agenda-intro .content-left {
    flex: 1;
    padding: 8rem 4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #f5f5f5
}

.agenda-intro .content-left .content {
    max-width: 70rem
}

.agenda-intro .content-left .label {
    background-color: #3E7472;
    font-size: 3.2rem;
    padding: .2rem 3.6rem;
    color: #fff;
    display: inline-block;
    margin-bottom: 3.4rem
}

.agenda-intro .content-left .title {
    color: #000;
    font-size: 3.2rem;
    margin-bottom: 2rem
}

.agenda-intro .content-left .desc {
    color: #222;
    font-size: 2rem;
    line-height: 2;
    letter-spacing: 0
}

.agenda-intro .content-right {
    flex: 1
}

.agenda-intro .content-right img {
    height: 100%;
    object-position: left center
}

.agenda-featured {
    padding: 7.4rem 0 9.6rem;
    margin-bottom: 0
}

.agenda-featured .agenda-item-date {
    color: #222
}

.agenda-forum {
    background-color: #e8e8e8;
    padding: 8rem 0 0;
    margin-top: 8rem;
}

.agenda-forum .intro-title {
    font-size: 4rem;
    text-align: center;
    font-weight: 600;
    margin-bottom: 2.8rem
}

.agenda-forum .intro-desc {
    text-align: center;
    font-size: 2.4rem;
    font-weight: 300;
    margin-bottom: 7rem;
    line-height: 1.8
}

.agenda-forum .schedule-banner {
    margin-bottom: 5rem
}

.agenda-forum .schedule-banner .title-line span:not(.line) {
    margin-left: 1.3rem;
    margin-right: 2.3rem
}

.view-more {
    margin-top: 5rem
}

.agenda-categories {
    padding: 7rem 0
}

.agenda-categories .section-title {
    text-align: center;
    font-size: 4rem;
    margin-bottom: 6rem
}

.list-categories {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 2rem
}

.list-categories .cat-item {
    position: relative
}

.list-categories .cat-item .title {
    text-align: center;
    padding: 2.2rem;
    position: absolute;
    z-index: 999;
    width: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%)
}

.list-categories .cat-item .title span {
    display: inline-block;
    background-color: rgba(0,0,0,0.7);
    color: #fff;
    padding: 1.2rem;
    line-height: 1.4;
    font-size: 1.8rem;
    min-width: 20rem
}

@media(max-width: 1023px) {
    .agenda-page .agenda .agenda-content .row {
        grid-template-columns: repeat(1, 100%)
    }
    .agenda-intro {
        flex-direction: column
    }
    .agenda-green-title {
        font-size: 4rem;
        padding: 1rem
    }
    .agenda-banner {
        padding: 5rem 0
    }
    .agenda-banner .banner-text {
        max-width: 100%;
        padding: 2rem 4rem
    }
    .agenda-banner .banner-text .title {
        font-size: 4rem;
        letter-spacing: .1rem;
        margin-bottom: 2rem
    }
    .agenda-banner .banner-text .desc {
        font-size: 2.4rem;
        line-height: 1.8
    }
    .agenda-featured {
        margin-top: 0;
        padding: 5.8rem 0 4.8rem
    }
    .agenda-forum {
        padding: 6rem 0 0;
    }
    .agenda-forum .intro-title {
        line-height: 1.8;
        max-width: 54rem;
        margin: 0 auto 3rem
    }
    .agenda-forum .intro-desc {
        margin: 0 auto 6rem
    }
    .list-categories {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.6rem
    }
    .agenda-page .list-categories .ratio {
        padding-bottom: 56%
    }
}

.general-transfer {
    padding: 5.8rem 14.6rem;
    background-color: #fff
}

.general-transfer-method {
    margin-bottom: 7.5rem
}

.general-transfer-method .support-us-form {
    padding: 0;
    margin-top: 0;
    margin-bottom: 4rem;
    color: #3E7472
}

.general-transfer-method .general-transfer-method-button {
    cursor: pointer;
    display: inline-block;
    min-width: 36.3rem;
    text-align: center;
    padding: 1.5rem 0 1.4rem;
    border: none;
    border-radius: 2.1rem;
    color: #fff;
    background-color: #3E7472;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-transfer-table {
    min-width: 114rem;
    width: 100%;
    border: 1px solid #707070;
    border-collapse: collapse
}

.general-transfer-table tr {
    height: 4.5rem
}

.general-transfer-table tr td:first-child {
    text-decoration: underline
}

.general-transfer-table th {
    color: #3E7472;
    text-align: start
}

.general-transfer-table td,
.general-transfer-table th {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    padding-top: .71rem;
    padding-bottom: .71rem;
    padding-left: 2rem;
    padding-right: 1.5rem;
    border: 1px solid #707070
}

.general-transfer-who {
    margin-bottom: 8.3rem;
    overflow: auto
}

.general-transfer-who .support-us-form {
    padding: 0;
    margin-top: 0;
    margin-bottom: 3rem
}

.general-transfer-postal {
    margin-bottom: 4rem
}

.general-transfer-postal .support-us-form {
    padding: 0;
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0
}

.general-transfer-postal .general-transfer-postal-list .general-transfer-table {
    min-width: 0
}

.general-transfer-postal .general-transfer-postal-list .general-transfer-table tr {
    height: 4.5rem
}

.general-transfer-postal .general-transfer-postal-list .general-transfer-table tr td:first-child {
    text-decoration: none
}

.general-transfer-postal .general-transfer-postal-note {
    margin-top: 6.4rem;
    padding: 0 15rem
}

.general-transfer-postal .general-transfer-postal-note .general-transfer-postal-text {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-transfer-form form .general-transfer-checkbox {
    margin-bottom: 3rem
}

.general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-title {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .7rem
}

.general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-title .general-transfer-checkbox-br {
    display: none
}

.general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-title .general-transfer-checkbox-span {
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-group {
    display: flex;
    padding-left: 5rem;
    gap: 7rem
}

.general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-group .general-transfer-checkbox-item {
    display: flex;
    align-items: center
}

.general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-group .general-transfer-checkbox-item input {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid #707070;
    background-color: #fff
}

.general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-group .general-transfer-checkbox-item .general-transfer-checkbox-label {
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-left: 1.7rem
}

.general-transfer-form form .general-transfer-form-donation {
    margin-bottom: 4.15rem
}

.general-transfer-form form .general-transfer-form-donation .support-us-form {
    padding: 0;
    margin-top: 0;
    margin-bottom: 3rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-donation-item {
    margin-bottom: 3rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-donation-item .general-transfer-form-donation-label {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .7rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-donation-item .general-transfer-cancel-space .general-transfer-form-donation-span {
    margin-left: 0
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-donation-item .general-transfer-form-donation-span {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem;
    margin-left: 1rem;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-donation-item input {
    min-width: 60.6rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-group {
    display: flex;
    margin-bottom: 3rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-group .general-transfer-form-group-item {
    margin-right: 1.6rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-group .general-transfer-form-group-item .general-transfer-form-group-label {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .7rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-group .general-transfer-form-group-item .general-transfer-form-group-label .general-transfer-form-group-span {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem;
    margin-left: 1rem;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-group .general-transfer-form-group-item input {
    min-width: 34.6rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-transfer-form form .general-transfer-form-donation .general-transfer-form-group:last-child {
    margin-bottom: 0
}

.general-transfer-form form .general-transfer-form-details {
    margin-bottom: 6rem
}

.general-transfer-form form .general-transfer-form-details .support-us-form {
    padding: 0;
    margin-top: 0;
    margin-bottom: 3rem
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item {
    margin-bottom: 3rem
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item .general-transfer-form-details-input {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .7rem
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item .general-transfer-form-details-span {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem;
    margin-left: 1rem;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item .general-transfer-form-details-medium {
    min-width: 69rem
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item .general-transfer-form-details-full {
    width: 100%
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item input {
    min-width: 60.7rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item:last-child {
    margin-bottom: 0
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-textarea .general-transfer-form-textarea-medium {
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 2rem;
    margin-bottom: .9rem
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-textarea .general-transfer-form-textarea-semibold {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .7rem
}

.general-transfer-form form .general-transfer-form-details .general-transfer-form-textarea textarea {
    width: 100%;
    height: 16.2rem;
    display: block;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em
}

.general-transfer-form form .general-transfer-form-action {
    display: flex;
    justify-content: center
}

.general-transfer-form form .general-transfer-form-action .general-transfer-form-submit {
    min-width: 60.7rem;
    padding: 1.5rem 0 1.4rem;
    border: none;
    border-radius: 2.1rem;
    background-color: #3E7472;
    color: #fff;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

@media screen and (max-width: 1023px) {
    .general-transfer {
        padding-left: 2.5rem;
        padding-right: 2.5rem
    }
    .general-transfer-postal .general-transfer-postal-note {
        margin-top: 3rem;
        padding: 0
    }
    .general-transfer-form form .general-transfer-checkbox {
        margin-bottom: 2rem
    }
    .general-transfer-form form .general-transfer-checkbox .general-transfer-checkbox-title .general-transfer-checkbox-br {
        display: block
    }
    .general-transfer-form form .general-transfer-form-donation {
        margin-bottom: 2.8rem
    }
    .general-transfer-form form .general-transfer-form-donation .general-transfer-form-donation-item {
        margin-bottom: 2rem
    }
    .general-transfer-form form .general-transfer-form-donation .general-transfer-form-group {
        margin-bottom: 2rem
    }
    .general-transfer-form form .general-transfer-form-donation .general-transfer-form-group .general-transfer-form-group-item input {
        min-width: unset;
        width: 100%;
        margin-right: 0;
        gap: 4.78rem
    }
    .general-transfer-form form .general-transfer-form-details {
        margin-bottom: 4.8rem
    }
    .general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item {
        margin-bottom: 2rem
    }
    .general-transfer-form form .general-transfer-form-details .general-transfer-form-details-item .general-transfer-form-details-medium {
        width: 100%;
        min-width: unset
    }
}

.general-bank {
    padding: 6rem 15rem 9rem;
    background-color: #fff
}

.general-bank .general-bank-method {
    margin-bottom: 7rem
}

.general-bank .general-bank-method .support-us-form {
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0);
    color: #3E7472
}

.general-bank .general-bank-method .general-bank-method-text {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #3E7472
}

.general-bank .general-bank-application {
    margin-bottom: 7rem
}

.general-bank .general-bank-application .support-us-form {
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.general-bank .general-bank-application .general-bank-application-item {
    margin-bottom: 2.7rem
}

.general-bank .general-bank-application .general-bank-application-item .general-bank-application-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.general-bank .general-bank-application .general-bank-application-item .general-bank-application-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-bank .general-bank-application .general-bank-application-item:last-child {
    margin-bottom: 0
}

.general-bank .general-bank-application .general-bank-application-group {
    display: flex
}

.general-bank .general-bank-application .general-bank-application-group .general-bank-application-group-item {
    margin-bottom: 2.7rem
}

.general-bank .general-bank-application .general-bank-application-group .general-bank-application-group-item .general-bank-application-group-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.general-bank .general-bank-application .general-bank-application-group .general-bank-application-group-item .general-bank-application-group-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-bank .general-bank-application .general-bank-application-group .general-bank-application-group-item:first-child {
    min-width: 36.2rem
}

.general-bank .general-bank-application .general-bank-application-group:last-child .general-bank-application-group-item {
    margin-bottom: 0
}

.general-bank .general-bank-supporter {
    margin-bottom: 7rem
}

.general-bank .general-bank-supporter .support-us-form {
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.general-bank .general-bank-supporter .general-bank-supporter-item {
    margin-bottom: 2.7rem
}

.general-bank .general-bank-supporter .general-bank-supporter-item .general-bank-supporter-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.general-bank .general-bank-supporter .general-bank-supporter-item .general-bank-supporter-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.general-bank .general-bank-supporter .general-bank-supporter-item:last-child {
    margin-bottom: 0
}

@media screen and (max-width: 1023px) {
    .general-bank {
        padding: 7rem 2rem
    }
    .general-bank .general-bank-method {
        margin-bottom: 6rem
    }
}

.monthly-supporter {
    padding: 10rem 15rem 10rem;
    background-color: #fff
}

.monthly-supporter-application {
    margin-bottom: 4.4rem
}

.monthly-supporter-application .support-us-form {
    padding: 0;
    margin-top: 0;
    margin-bottom: 3rem;
    background-color: rgba(0, 0, 0, 0)
}

.monthly-supporter-application .monthly-supporter-application-text {
    margin-bottom: 2.7rem
}

.monthly-supporter-application .monthly-supporter-application-text .monthly-supporter-application-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: .9rem;
    line-height: 3rem
}

.monthly-supporter-application .monthly-supporter-application-text .monthly-supporter-application-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.monthly-supporter-application .monthly-supporter-application-text:last-child {
    margin-bottom: 0
}

.monthly-supporter-application .monthly-supporter-group {
    display: flex
}

.monthly-supporter-application .monthly-supporter-group .monthly-supporter-group-text {
    margin-bottom: 2.7rem
}

.monthly-supporter-application .monthly-supporter-group .monthly-supporter-group-text .monthly-supporter-group-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: .9rem;
    line-height: 3rem
}

.monthly-supporter-application .monthly-supporter-group .monthly-supporter-group-text .monthly-supporter-group-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.monthly-supporter-application .monthly-supporter-group .monthly-supporter-group-text:first-child {
    min-width: 36.2rem
}

.monthly-supporter-application:nth-child(2) {
    margin-bottom: 6.8rem
}

@media screen and (max-width: 1023px) {
    .monthly-supporter {
        padding: 4rem 2rem 9rem
    }
}

.corporate-form-confirmation {
    padding: 7rem 15rem 10rem;
    background-color: #fff
}

.corporate-form-confirmation-document {
    margin-bottom: 4.4rem
}

.corporate-form-confirmation-document .support-us-form {
    padding: 0;
    margin-top: 0;
    margin-bottom: 3rem;
    background-color: rgba(0, 0, 0, 0)
}

.corporate-form-confirmation-document .corporate-form-confirmation-text {
    margin-bottom: 2.7rem
}

.corporate-form-confirmation-document .corporate-form-confirmation-text .corporate-form-confirmation-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.corporate-form-confirmation-document .corporate-form-confirmation-text .corporate-form-confirmation-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.corporate-form-confirmation-document .corporate-form-confirmation-text:last-child {
    margin-bottom: 0
}

.corporate-form-confirmation:nth-child(2) {
    margin-bottom: 6.8rem
}

.corporate-form-confirmation-action {
    display: flex;
    justify-content: center
}

.corporate-form-confirmation-action .corporate-form-confirmation-fix {
    display: block;
    width: 26.6rem;
    margin-right: .9rem;
    padding: 1.42rem 0 1.32rem;
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #3E7472;
    border: 1px solid #3E7472;
    border-radius: 2.1rem
}

.corporate-form-confirmation-action .corporate-form-confirmation-send {
    display: block;
    width: 37.7rem;
    display: inline-block;
    padding: 1.42rem 0 1.32rem;
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #fff;
    background-color: #3E7472;
    border: none;
    border-radius: 2.1rem
}

@media screen and (max-width: 1023px) {
    .corporate-form-confirmation {
        padding: 5rem 2rem 7rem
    }
}

.inquiry-form-header {
    margin-bottom: 6rem;
    text-align: center
}

.inquiry-form-header .inquiry-form-header-title {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    margin-bottom: 3rem;
    line-height: 5.1rem
}

.inquiry-form-header .inquiry-form-header-text {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: 5rem;
    line-height: 4rem
}

.inquiry-form-header .inquiry-form-header-button {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin: 0 auto;
    display: block;
    text-align: center;
    width: 36.9rem;
    line-height: 3rem;
    padding: 1.45rem 0;
    border: none;
    border-radius: 2.1rem;
    color: #fff;
    background-color: #3E7472;
    cursor: pointer
}

.inquiry-form-body {
    padding: 7rem 15rem 7rem;
    background-color: #fff
}

.inquiry-form-body .support-us-form {
    margin-top: 0;
    margin-bottom: 4rem;
    padding: 0;
    background-color: rgba(0, 0, 0, 0)
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item {
    margin-bottom: 3rem
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item .inquiry-form-label {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item .inquiry-form-label .inquiry-form-note {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem;
    margin-left: 1rem;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item .inquiry-form-item-full {
    width: 100%
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item input {
    min-width: 60.6rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item .inquiry-form-select {
    position: relative;
    display: inline-block
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item .inquiry-form-select select {
    min-width: 60.7rem;
    height: 4.9rem;
    padding: .9rem 1.5rem .84rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    appearance: none;
    -webkit-appearance: none;
    color: #222;
    border: 1px solid #707070;
    border-radius: 0;
    line-height: 1;
    background-color: #fff
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item .inquiry-form-select svg {
    width: 2.4rem;
    height: 3rem;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 2.2rem
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item textarea {
    display: block;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    width: 100%;
    height: 16.2rem;
    padding: 1rem 1.5rem 1rem 1.5rem;
    resize: none
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-item-bottom {
    margin-bottom: 4.2rem
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-action {
    text-align: center
}

.inquiry-form-body .inquiry-form-content form .inquiry-form-action .inquiry-form-button {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    min-width: 60.7rem;
    padding: 1.5rem 0 1.4rem 0;
    border: none;
    border-radius: 2.1rem;
    background-color: #3E7472;
    color: #fff;
    cursor: pointer
}

.inquiry-form-body .inquiry-form-personal {
    margin-top: 4rem;
    margin-bottom: 6.8rem;
    text-align: center
}

.inquiry-form-body .inquiry-form-personal .inquiry-form-personal-text {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.inquiry-form-body .inquiry-form-personal .inquiry-form-personal-text .inquiry-form-personal-link {
    text-decoration: underline;
    white-space: nowrap
}

.inquiry-form-body .inquiry-form-contact .inquiry-form-contact-text {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

@media screen and (max-width: 1023px) {
    .inquiry-form-header {
        margin-bottom: 4rem;
        padding: 0 10rem
    }
    .inquiry-form-header .inquiry-form-header-text {
        margin-bottom: 2rem
    }
    .inquiry-form-body {
        padding: 5rem 2rem 6rem
    }
    .inquiry-form-body .inquiry-form-content form .inquiry-form-item-bottom {
        margin-bottom: 3rem
    }
    .inquiry-form-body .inquiry-form-personal {
        text-align: start;
        margin: 3rem 0
    }
    .inquiry-form-body .inquiry-form-personal .inquiry-form-personal-text .inquiry-form-personal-down {
        display: none
    }
}

.contact-form-title {
    text-align: center;
    margin-bottom: 9rem
}

.contact-form-title .contact-form-title-text {
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 5.1rem
}

.contact-form-content {
    padding: 10rem 22rem 12rem;
    text-align: center;
    background-color: #fff
}

.contact-form-content .contact-form-content-title {
    font-weight: 600;
    font-size: 4.4rem;
    letter-spacing: .05em;
    line-height: 6.1rem;
    margin-bottom: 5.4rem;
    color: #3E7472
}

.contact-form-content .contact-form-content-text {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: 3.8rem
}

.contact-form-content .contact-form-content-button {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    display: inline-block;
    min-width: 60.7rem;
    padding: 1.5rem 0 1.4rem;
    border: none;
    border-radius: 2.1rem;
    color: #fff;
    background-color: #3E7472
}

@media screen and (max-width: 1023px) {
    .contact-form-content {
        padding: 5.6rem 4rem
    }
    .contact-form-content .contact-form-content-title {
        margin-bottom: 5.4rem
    }
    .contact-form-content .contact-form-content-button {
        width: 100%;
        max-width: 60rem;
    }
}

.detail-pay-history {
    flex: 1
}

.detail-pay-history .list-mypage-pay {
    padding-top: 3rem;
    padding-top: 3rem;
    padding-bottom: 13rem;
    margin-bottom: 8rem
}

.detail-pay-history .list-mypage-pay .row_list {
    border-bottom: none
}

.detail-pay-history .list-mypage-pay .row_list a {
    margin-left: 5rem
}

.detail-pay-history .roll_back_index {
    display: block;
    color: #fff;
    cursor: pointer;
    background-color: #3E7472;
    width: 35.6rem;
    height: 5.9rem;
    border-radius: 2rem;
    text-align: center;
    margin: 0 auto;
    font-size: 2.4rem;
    line-height: 5.9rem;
    margin-bottom: 25rem
}

@media(max-width: 1023px) {
    .detail-pay-history .title-payhistory {
        margin-right: 2rem;
        margin-left: 2rem;
        margin-top: 3rem;
        margin-bottom: 3.5rem;
        padding: 5rem 3rem 1rem 3rem
    }
    .detail-pay-history .list-mypage-pay {
        padding-top: 0;
        padding-bottom: 40%;
        margin-bottom: 5rem
    }
    .detail-pay-history .list-mypage-pay .row_list {
        gap: 3rem
    }
    .detail-pay-history .list-mypage-pay .row_list .date {
        width: 18%
    }
    .detail-pay-history .list-mypage-pay .row_list .label_mp {
        margin-left: 0
    }
    .detail-pay-history .list-mypage-pay .row_list p {
        width: 72%;
        margin-left: 0rem
    }
    .detail-pay-history .list-mypage-pay .row_list a {
        width: 70%;
        border: 1px solid #3E7472;
        text-shadow: none;
        margin: 0 auto;
        margin-top: 5rem
    }
    .detail-pay-history .sidebar-mb ul {
        justify-content: space-around
    }
    .detail-pay-history .sidebar-mb ul li:nth-child(3) {
        background-color: #3E7472
    }
    .detail-pay-history .sidebar-mb ul li:nth-child(3) a span {
        color: #fff
    }
    .detail-pay-history .roll_back_index {
        margin-bottom: 5rem
    }
    .mypage-payhistory .sidebar .nav-menu {
        display: block
    }
    .list-mypage-pay .row_list .label_forum {
        font-size: 1.4rem
    }
}

@media all and (min-width: 1024px) {
    .detail-pay-history .list-mypage-pay .row_list p {
        flex: 1
    }
}

.apply-bank {
    padding: 10rem 15rem;
    background-color: #fff
}

.apply-bank-transfer .support-us-form {
    margin-bottom: 3rem;
    margin-top: 0;
    padding: 0
}

.apply-bank-transfer .apply-bank-table {
    margin-bottom: 4rem
}

.apply-bank-transfer .apply-bank-table table {
    min-width: 114rem;
    width: 100%;
    border: 1px solid #707070;
    border-collapse: collapse
}

.apply-bank-transfer .apply-bank-table tr {
    height: 4.5rem
}

.apply-bank-transfer .apply-bank-table tr td:first-child {
    text-decoration: underline
}

.apply-bank-transfer .apply-bank-table th {
    color: #3E7472;
    text-align: start
}

.apply-bank-transfer .apply-bank-table td,
.apply-bank-transfer .apply-bank-table th {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    padding-top: .71rem;
    padding-bottom: .71rem;
    padding-left: 2rem;
    padding-right: 1.5rem;
    border: 1px solid #707070
}

.apply-bank-transfer .apply-bank-note {
    text-align: center;
    margin-bottom: 8rem
}

.apply-bank-transfer .apply-bank-note .apply-bank-note-text:first-child {
    line-height: 2rem;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    margin-bottom: 6rem
}

.apply-bank-transfer .apply-bank-note .apply-bank-note-text:last-child {
    line-height: 2rem;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.apply-bank-transfer .apply-bank-button {
    display: flex;
    justify-content: center
}

.apply-bank-transfer .apply-bank-button a {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    text-align: center;
    display: inline-block;
    min-width: 60.7rem;
    padding: 1.5rem 0 1.4rem;
    border: none;
    border-radius: 2.1rem;
    color: #fff;
    background-color: #3E7472
}

.apply-bank-form form .apply-bank-information {
    margin-bottom: 4.2rem
}

.apply-bank-form form .apply-bank-information .support-us-form {
    margin-bottom: 3rem;
    margin-top: 0;
    padding: 0
}

.apply-bank-form form .apply-bank-information .apply-bank-information-input {
    margin-bottom: 3rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-input .apply-bank-information-input-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: .7rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-input .apply-bank-information-input-label .apply-bank-information-note {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.apply-bank-form form .apply-bank-information .apply-bank-information-input select {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    min-width: 60.7rem;
    padding: 1rem 0 1.2rem 1.5rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-input input {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    min-width: 60.7rem;
    padding: 1rem 1.5rem .9rem 1.5rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-checkbox {
    margin-bottom: 3rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-checkbox .apply-bank-information-checkbox-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: .7rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-checkbox .apply-bank-information-checkbox-group {
    display: flex;
    padding-left: 5rem;
    gap: 7rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-checkbox .apply-bank-information-checkbox-group label {
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em
}

.apply-bank-form form .apply-bank-information .apply-bank-information-checkbox .apply-bank-information-checkbox-group label input {
    margin-right: 1.7rem;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid #707070;
    background-color: #fff
}

.apply-bank-form form .apply-bank-information .apply-bank-information-group {
    display: flex;
    margin-bottom: 3rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-group .apply-bank-information-group-item {
    margin-right: 1.6rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-group .apply-bank-information-group-item .apply-bank-information-group-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: .7rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-group .apply-bank-information-group-item .apply-bank-information-group-label .apply-bank-information-group-note {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.apply-bank-form form .apply-bank-information .apply-bank-information-group .apply-bank-information-group-item input {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    min-width: 34.6rem;
    padding: 1rem 1.5rem .9rem 1.5rem
}

.apply-bank-form form .apply-bank-information .apply-bank-information-group:last-child {
    margin-bottom: 0
}

.apply-bank-form form .apply-bank-information .price-label {
    font-size: 2.4rem
}

.apply-bank-form form .apply-bank-contact {
    margin-bottom: 5.9rem
}

.apply-bank-form form .apply-bank-contact .support-us-form {
    margin-bottom: 3rem;
    margin-top: 0;
    padding: 0
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox {
    margin-bottom: 3rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox .apply-bank-contact-checkbox-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: .7rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox .apply-bank-contact-checkbox-label .apply-bank-contact-checkbox-br {
    display: none
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox .apply-bank-contact-checkbox-label .apply-bank-contact-checkbox-note {
    font-weight: 300;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox .apply-bank-contact-checkbox-group {
    display: flex;
    padding-left: 5rem;
    gap: 7rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox .apply-bank-contact-checkbox-group label {
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox .apply-bank-contact-checkbox-group label input {
    margin-right: 1.7rem;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid #707070;
    background-color: #fff
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-item {
    margin-bottom: 3rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-item .apply-bank-contact-item-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: .7rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-item .apply-bank-contact-item-label .apply-bank-contact-item-note {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-item input {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    padding: 1rem 1.5rem .9rem 1.5rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-item:last-child {
    margin-bottom: 0
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-regular {
    min-width: 60.7rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-medium {
    min-width: 69.1rem
}

.apply-bank-form form .apply-bank-contact .apply-bank-contact-full {
    width: 100%
}

.apply-bank-form form .apply-bank-action {
    text-align: center
}

.apply-bank-form form .apply-bank-action .apply-bank-button {
    min-width: 60.7rem;
    padding: 1.5rem 0 1.4rem;
    border: none;
    border-radius: 2.1rem;
    color: #fff;
    background-color: #3E7472;
    font-size: 2.4rem;
    font-weight: 600
}

@media screen and (max-width: 1023px) {
    .apply-bank-header .general-credit-title {
        margin-bottom: 3.5rem
    }
    .apply-bank-header .general-credit-title h2 {
        margin-bottom: 0
    }
    .apply-bank {
        padding: 3.6rem 2rem 8rem
    }
    .apply-bank-transfer {
        margin-bottom: 7.6rem
    }
    .apply-bank-transfer .apply-bank-table {
        overflow: auto
    }
    .apply-bank-transfer .apply-bank-note {
        display: none
    }
    .apply-bank-form form .apply-bank-information .apply-bank-information-group .apply-bank-information-group-item input {
        min-width: 30rem
    }
    .apply-bank-form form .apply-bank-contact {
        margin-bottom: 5rem
    }
    .apply-bank-form form .apply-bank-contact .apply-bank-contact-checkbox .apply-bank-contact-checkbox-label .apply-bank-contact-checkbox-br {
        display: block
    }
    .apply-bank-form form .apply-bank-contact .apply-bank-contact-medium {
        min-width: 0rem;
        width: 100%
    }
}

.mypage-invoice {
    display: flex;
    background-color: #e8e8e8
}

.mypage-invoice .invoice {
    flex: 1
}

.mypage-invoice .packet-invoice {
    background-color: #fff;
    margin-left: 3.5rem;
    margin-right: 6rem;
    margin-bottom: 5.7rem;
    padding-top: 7.5rem;
    padding-bottom: 5.5rem;
    padding-bottom: 5.5rem
}

.mypage-invoice .packet-invoice .img-invoice {
    width: 56.8rem;
    height: 81.2rem;
    margin: 0 auto;
    margin-bottom: 4rem
}

.mypage-invoice .packet-invoice .img-invoice img {
    object-fit: contain;
    width: 100%;
    height: 100%
}

.mypage-invoice .packet-invoice .download-invoice {
    display: block;
    margin: 0 auto;
    width: 24.9rem;
    height: 4.2rem;
    border-radius: 2.1rem;
    background-color: #3E7472;
    color: #fff;
    line-height: 4.2rem;
    text-align: center;
    font-size: 2.4rem;
    font-weight: 600
}

.mypage-invoice .packet-invoice .invoice-page {
    width: 100rem;
    min-height: 81.2rem;
    margin: 0 auto;
    margin-bottom: 4rem;
    padding: 2rem;
    border: 1px solid #707070;
}

.mypage-invoice .packet-invoice .invoice-page p.title-invoice {
    text-align: center;
    font-size: 4rem;
    font-weight: 600;
    letter-spacing: 2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice {
    display: grid;
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.info-1 {
    grid-template-columns: 65% 35%
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.info-1 .thank-user {
    font-size: 2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.info-1 .info-invoice-left .invoice-address {
    width: 80%
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.info-1 .info-invoice-right .item {
    display: flex;
    flex-direction: row;
    justify-content: space-between
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.info-2 {
    grid-template-columns: 54% 46%;
    column-gap: 1.2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.info-2 .info-invoice-left .subject {
    font-size: 2rem;
    margin-bottom: 2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.info-2 .info-invoice-left .subject span {
    font-size: 1.6rem;
    margin-right: 2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info {
    grid-template-columns: 60% 40%
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left .d-grid {
    display: grid;
    grid-template-columns: 25% 75%
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left .d-grid .transfer-destination {
    width: 95%;
    display: flex;
    flex-wrap: wrap
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left .d-grid .transfer-destination span+span {
    margin-left: 2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left .mt-2 {
    margin-top: 2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left table {
    width: calc(100% - 1.5rem);
    border-collapse: collapse;
    border: none
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left table.postal-transfer {
    width: 70%
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left table.postal-transfer td {
    padding-left: 3.5rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left table tr {
    border: none
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left table tr td {
    border-left: 1px dashed;
    border-bottom: none;
    border-right: none;
    text-align: left;
    padding-left: 2rem
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-left table tr td:first-child {
    border-left: none;
    padding-left: 0
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-right {
    border: 2px solid;
    margin-top: -1.5rem;
    height: fit-content
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-right .payment {
    display: flex;
    justify-content: space-between;
    padding-left: 2rem;
    padding-right: 2rem;
    border-bottom: 1px solid
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-right table {
    width: 100%;
    border: none;
    border-top: 1.5px solid
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-right table tr td {
    font-weight: 600;
    border: none
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-right table tr td:first-child {
    padding-left: 2rem;
    text-align: start
}

.mypage-invoice .packet-invoice .invoice-page .info-invoice.payment-info .payment-info-right table tr td:last-child {
    padding-right: 2rem;
    text-align: end
}

.mypage-invoice .packet-invoice .invoice-page .total-amount {
    font-size: 2.4rem;
    font-weight: 600;
    border-bottom: 2px solid;
    line-height: 1.8;
    width: 50%;
    display: inline-flex;
    justify-content: space-between;
    flex-wrap: nowrap
}

.mypage-invoice .packet-invoice .invoice-page .payment-deadline {
    margin-bottom: 1rem
}

.mypage-invoice .packet-invoice .invoice-page .payment-deadline span:first-child {
    margin-right: 5rem
}

.mypage-invoice .packet-invoice .invoice-page .note {
    border: 1px solid;
    margin-top: 2.5rem;
    margin-bottom: 10rem;
    padding: 1rem 2rem;
    line-height: 1.5
}

.mypage-invoice .packet-invoice .invoice-page .note strong {
    letter-spacing: 1.5rem;
    display: block;
    margin-bottom: .8rem
}

.mypage-invoice .packet-invoice .invoice-page .table {
    margin-bottom: 1.5rem
}

.mypage-invoice .packet-invoice .invoice-page .table table {
    width: 100%;
    border-collapse: collapse
}

.mypage-invoice .packet-invoice .invoice-page .table th,
.mypage-invoice .packet-invoice .invoice-page .table td {
    padding: 0 .4rem;
    text-align: left;
    border: 1px solid #222
}

.mypage-invoice .packet-invoice .invoice-page .table td:nth-child(2),
.mypage-invoice .packet-invoice .invoice-page .table th:nth-child(2) {
    text-align: center
}

.mypage-invoice .packet-invoice .invoice-page .table th:nth-child(3),
.mypage-invoice .packet-invoice .invoice-page .table td:nth-child(3),
.mypage-invoice .packet-invoice .invoice-page .table tr>th:nth-child(4),
.mypage-invoice .packet-invoice .invoice-page .table td:nth-child(4) {
    text-align: right
}

.mypage-invoice .packet-invoice .invoice-page .table td.require {
    position: relative
}

.mypage-invoice .packet-invoice .invoice-page .table td.require span {
    right: 1rem;
    position: absolute
}

@media screen and (max-width: 1023px) {
    .mypage-invoice {
        flex-direction: column-reverse;
        flex-direction: column-reverse
    }
    .mypage-invoice .sidebar {
        display: none
    }
    .mypage-invoice .invoice .sidebar-mb {
        display: block
    }
    .mypage-invoice .invoice .sidebar-mb ul {
        justify-content: space-around
    }
    .mypage-invoice .invoice .sidebar-mb ul li:nth-child(3) {
        background-color: #3E7472
    }
    .mypage-invoice .invoice .sidebar-mb ul li:nth-child(3) a span {
        color: #fff
    }
    .mypage-invoice .invoice .title-payhistory {
        margin: 3rem 1.5rem 3rem 3rem;
        margin: 3rem 1.5rem 3rem 3rem
    }
    .mypage-invoice .invoice .packet-invoice {
        margin-left: 2.2rem;
        margin-right: 2rem
    }
    .mypage-invoice .invoice .invoice-page {
        width: 60rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.info-1 {
        grid-template-columns: 55% 45%
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.info-2 .subject span {
        margin-right: 1rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-left .d-grid {
        grid-template-columns: 35% 65%
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-right .payment {
        padding-left: 1rem;
        padding-right: 1rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-right table tr td:first-child {
        padding-left: 1rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-right table tr td:last-child {
        padding-right: 1rem
    }
    .mypage-invoice .invoice .invoice-page .note {
        letter-spacing: 0
    }
    .mypage-invoice .invoice .invoice-page .note strong {
        letter-spacing: 1rem
    }
    .mypage-invoice .invoice .invoice-page {
        width: 60rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.info-1 {
        grid-template-columns: 55% 45%
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.info-1 .info-invoice-left .invoice-address {
        width: 90%
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.info-2 .subject span {
        margin-right: 1rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-left .d-grid {
        grid-template-columns: 35% 65%
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-right .payment {
        padding-left: 1rem;
        padding-right: 1rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-right table tr td:first-child {
        padding-left: 1rem
    }
    .mypage-invoice .invoice .invoice-page .info-invoice.payment-info .payment-info-right table tr td:last-child {
        padding-right: 1rem
    }
    .mypage-invoice .invoice .invoice-page .note {
        letter-spacing: 0
    }
    .mypage-invoice .invoice .invoice-page .note strong {
        letter-spacing: 1rem
    }
}

.page-leave .content-login {
    padding-top: 11rem
}

.display-massage {
    background-color: #fff;
    height: 11.4rem;
    width: 100%;
    text-align: center;
    margin-bottom: 10.4rem
}

.display-massage p {
    font-size: 3.2rem;
    line-height: 11.4rem
}

@media screen and (max-width: 776px) {
    .display-massage {
        border: 1px solid #707070;
        width: auto;
        margin-left: 4rem;
        margin-right: 4rem;
        margin-bottom: 9.6rem
    }
    .display-massage p {
        font-size: 2.4rem
    }
}

.bank-transfer {
    padding: 6rem 15rem 9rem;
    background-color: #fff
}

.bank-transfer-information .support-us-form {
    margin-bottom: 3rem;
    padding: 0;
    margin-top: 0
}

.bank-transfer-information .bank-transfer-information-item {
    margin-bottom: 2.7rem
}

.bank-transfer-information .bank-transfer-information-item .bank-transfer-information-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.bank-transfer-information .bank-transfer-information-item .bank-transfer-information-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.bank-transfer-information .bank-transfer-information-item:last-child {
    margin-bottom: 0
}

.bank-transfer-information .bank-transfer-information-group {
    display: flex;
    margin-bottom: 2.7rem
}

.bank-transfer-information .bank-transfer-information-group .bank-transfer-information-group-item .bank-transfer-information-group-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem
}

.bank-transfer-information .bank-transfer-information-group .bank-transfer-information-group-item .bank-transfer-information-group-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.bank-transfer-information .bank-transfer-information-group .bank-transfer-information-group-item:first-child {
    min-width: 36.2rem
}

.bank-transfer-information .bank-transfer-information-group:last-child {
    margin-bottom: 0
}

.bank-transfer-information:first-child {
    margin-bottom: 7rem
}

.bank-transfer-information:nth-child(2) {
    margin-bottom: 6.5rem
}

@media screen and (max-width: 1023px) {
    .bank-transfer-header .general-credit-title {
        margin-bottom: 3.5rem
    }
    .bank-transfer-header .general-credit-title h2 {
        margin-bottom: 0
    }
    .bank-transfer {
        padding: 7rem 2rem
    }
}

.corporate-form {
    padding: 7rem 15rem 7rem;
    background-color: #fff
}

.corporate-form .support-us-form {
    margin-top: 0;
    margin-bottom: 3rem;
    padding: 0
}

.corporate-form .corporate-form-item {
    margin-bottom: 3rem
}

.corporate-form .corporate-form-item .corporate-form-label {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .9rem;
    display: flex;
    align-items: center
}

.corporate-form .corporate-form-item .corporate-form-label .corporate-form-note {
    font-weight: 600;
    font-size: 1.7rem;
    letter-spacing: .05em;
    line-height: 2.1rem;
    margin-left: 1rem;
    padding: .2rem .5rem .3rem .4rem;
    border-radius: .8rem;
    color: #fff;
    background-color: red
}

.corporate-form .corporate-form-item .corporate-form-label .corporate-form-span {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-left: 1rem
}

.corporate-form .corporate-form-item .corporate-form-select {
    position: relative;
    display: inline-block
}

.corporate-form .corporate-form-item .corporate-form-select select {
    min-width: 60.7rem;
    height: 4.9rem;
    padding: .9rem 1.5rem .84rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    appearance: none
}

.corporate-form .corporate-form-item .corporate-form-select svg {
    width: 2.4rem;
    height: 3rem;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 2.2rem
}

.corporate-form .corporate-form-item textarea {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    width: 100%;
    display: block;
    height: 16.2rem
}

.corporate-form .corporate-form-item input {
    min-width: 60.6rem;
    height: 4.9rem;
    padding: .8rem 1.5rem .78rem 1.5rem;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.corporate-form .corporate-form-item .corporate-form-full {
    min-width: 0;
    width: 100%
}

.corporate-form .corporate-form-action {
    display: flex;
    flex-direction: column
}

.corporate-form .corporate-form-button {
    cursor: pointer;
    min-width: 60.7rem;
    margin-bottom: 2.7rem;
    padding: 1.5rem 0 1.4rem;
    align-self: center;
    border: none;
    border-radius: 2.1rem;
    background-color: #3E7472;
    text-align: center;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    color: #fff
}

.corporate-form .corporate-form-link {
    min-width: 85.9rem;
    padding: 1.1rem 0 1.04rem;
    align-self: center;
    border: 1px solid #707070
}

.corporate-form .corporate-form-link a {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.corporate-form .corporate-form-link .corporate-form-span {
    color: #8d0f0f;
    text-decoration: underline
}

.select-item {
    width: 60.7rem;
    height: 4.9rem;
    padding: 1rem 1.5rem;
    font-size: 2.4rem;
    background: url(../images/component/＞.png) no-repeat right;
    appearance: none;
    background-position-x: 56rem
}

.select-item option {
    font-size: 2.4rem;
    padding: 1rem 1.5rem
}

@media screen and (max-width: 1023px) {
    .corporate-form {
        padding: 3rem 2rem 5rem
    }
    .corporate-form .corporate-form-action .corporate-form-link {
        min-width: 0;
        width: 100%
    }
}

.about-common-header {
    width: 100%;
    max-width: 166rem;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    border-radius: 2.5rem;
    margin-top: 4.5rem;
    margin-bottom: 11.2rem
}

.about-common-header img {
    height: 43.8rem;
    object-fit: cover;
    border-radius: 2.6rem
}

.about-common-header .about-common-header-text {
    max-width: 144rem;
    width: 100%;
    position: absolute;
    color: #fff;
    background-color: rgba(0, 0, 0, .81);
    bottom: -2.8rem;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 3
}

.about-common-header.no-thumbnail .about-common-header-text{
    position: relative;
}

.about-common-header .about-common-header-text p {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: .05em;
    width: 18.5rem;
    background-color: #3E7472;
    padding: 1rem 2rem
}

.about-common-header .about-common-header-text p a {
    color: #fff
}

.about-common-header .about-common-header-text h2 {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    padding: 2rem 2.2rem 4.3rem;
    text-shadow: 0 3px 6px rgba(0, 0, 0, .16)
}

@media(max-width: 1023px) {
    .about-common-header .about-common-header-text h2 {
        font-size: 4rem
    }
    .about-common-header img {
        height: 30rem
    }
}

.about-common-introduce {
    margin-bottom: 8.3rem
}

.about-common-introduce p {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.about-common-document {
    margin-bottom: 13.1rem
}

.about-common-document .about-common-text-content .about-common-document-text {
    margin-bottom: 8.3rem
}

.about-common-document .about-common-text-content .about-common-document-text h2 {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    padding: .2rem 1.8rem;
    color: #fff;
    background-color: #3E7472;
    margin-bottom: 2.6rem
}

.about-common-document .about-common-text-content .about-common-document-text h3 {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    border-bottom: 5px solid #3E7472;
    color: #3E7472;
    margin-bottom: 2.6rem
}

.about-common-document .about-common-text-content .about-common-document-text h4 {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: .05em;
    color: #3E7472;
    margin-bottom: 2.6rem
}

.about-common-document .about-common-text-content .about-common-document-text h5 {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: 2.6rem
}

.about-common-document .about-common-text-content .about-common-document-text p {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.about-common-document .about-common-text-content .about-common-document-text:last-child {
    margin-bottom: 0
}

.about-common-image {
    margin-bottom: 6.4rem
}

.about-common-image .about-common-image-content {
    display: flex;
    justify-content: center
}

.about-common-image .about-common-image-content img {
    max-width: 80rem
}

.about-common-group {
    margin-bottom: 15.9rem
}

.about-common-group .about-common-group-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 3rem 7rem
}

.about-common-group .about-common-group-grid .about-common-group-item {
    display: flex;
    align-items: center
}

.about-common-group .about-common-group-grid .about-common-group-item img {
    max-width: 66rem
}

.about-common-group .about-common-group-grid .about-common-group-item p {
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.about-body-content {
    margin-bottom: 15rem;
    font-size: 2rem;
}

.about-body-content p {
    margin-bottom: 3rem;
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: .05em;
}

.about-body-content h2 {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    padding: .2rem 1.8rem;
    color: #fff;
    background-color: #3E7472;
    margin-bottom: 2.6rem
}

.about-body-content h3 {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    border-bottom: 5px solid #3E7472;
    color: #3E7472;
    margin-bottom: 2.6rem
}

.about-body-content h4 {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: .05em;
    color: #3E7472;
    margin-bottom: 2.6rem
}

.about-body-content h5 {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: 2.6rem
}

.about-body-content .note-float-left {
    margin-right: 8rem
}

.about-body-content .note-float-right {
    margin-left: 8rem
}

@media(max-width: 1023px) {
    .about-body-content {
        margin-bottom: 10rem;
        font-size: 2.4rem;
    }
    .about-body-content p {
        font-size: 2.4rem
    }
}

.page-register {
    padding-top: 4.6rem;
    padding-bottom: 17.55rem;
    background-color: #e8e8e8
}

.forum-title {
    text-align: center;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em
}

.list-step-register-forum {
    display: flex;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    margin-top: 5.7rem
}

.list-step-register-forum .packet-step-ar {
    display: flex;
    align-items: center
}

.list-step-register-forum .packet-step-ar .item-step {
    min-width: 29.3rem;
    height: 8.6rem;
    border-radius: 4rem;
    background-color: #606060;
    border: #707070;
    display: inline-flex;
    padding-left: 1.2rem;
    padding-right: 2rem;
    padding-top: 1.1rem;
    padding-bottom: 1.1rem
}

.list-step-register-forum .packet-step-ar .item-step.active {
    background-color: #003a3e
}

.list-step-register-forum .packet-step-ar .item-step .item-cicrle {
    width: 6.4rem;
    height: 6.4rem;
    border-radius: 50%;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    float: left;
    margin-right: 1.3rem
}

.list-step-register-forum .packet-step-ar .item-step .item-cicrle .cicrle-icon {
    width: 3rem;
    height: 3rem
}

.list-step-register-forum .packet-step-ar .item-step .item-cicrle .cicrle-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.list-step-register-forum .packet-step-ar .item-step .step-content {
    display: block;
    color: #fff;
    font-weight: 600;
    letter-spacing: .05em
}

.list-step-register-forum .packet-step-ar .item-step .step-content span {
    font-size: 1.6rem;
    line-height: 2rem
}

.list-step-register-forum .packet-step-ar .item-step .step-content p {
    font-size: 2.4rem;
    margin-top: -0.5rem;
    line-height: 3rem
}

.list-step-register-forum .packet-step-ar .icon-arrow {
    width: 1.2rem;
    height: 3.2rem;
    display: block;
    background-image: url(../images/register/arrow-right.png);
    background-size: cover;
    margin-right: 1.2rem
}

.form-register-forum {
    max-width: 144rem;
    background-color: #fff;
    margin-top: 4.7rem;
    padding: 5.75rem 14.58rem 8rem 14.58rem
}

.form-register-forum h3 {
    position: relative;
    color: #3E7472;
    border-bottom: 1px solid #707070
}

.form-register-forum h3 span {
    position: absolute;
    bottom: -0.5rem;
    display: block;
    border-bottom: 5px solid #3E7472
}

.form-register-forum select,
.form-register-forum input {
    height: 4.9rem;
    border: 1px solid #707070;
    padding-top: .8rem;
    padding-bottom: .9rem;
    padding-left: 1.7rem;
    font-size: 2.4rem
}

.form-register-forum .select-item {
    background: url(../images/component/＞.png) no-repeat right;
    appearance: none;
    background-position-x: calc(100% - 1.3rem)
}

.form-register-forum .select-item:focus {
    border: none
}

.form-register-forum .select-item option {
    width: 100%;
    height: 100%;
    font-size: 2.4rem;
    padding: 1rem 1.5rem
}

.form-register-forum .registration-form {
    margin-bottom: 10.35rem
}

.form-register-forum .registration-form h3 {
    margin-bottom: 3rem
}

.form-register-forum .registration-form h3 span {
    width: 28.225rem
}

.form-register-forum .registration-form .select-item {
    width: 100%
}

.form-register-forum .input-info h3 {
    margin-bottom: 3.25rem
}

.form-register-forum .input-info h3 span {
    width: 16rem
}

.form-register-forum .input-info .item-info {
    display: block;
    margin-bottom: 2rem
}

.form-register-forum .input-info .item-info.text100 {
    width: 100%
}

.form-register-forum .input-info .item-info.text {
    width: 69.1rem
}

.form-register-forum .input-info .item-info.number {
    width: 60.7rem
}

.form-register-forum .input-info .item-info.select-width {
    width: 44.7rem
}

.form-register-forum .input-info .item-info .checkbox-item {
    display: flex;
    gap: 4rem
}

.form-register-forum .input-info .item-info .checkbox-item .checkbox-group {
    display: flex;
    align-items: center
}

.form-register-forum .input-info .item-info .checkbox-item .checkbox-group input {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    border: 1px solid #707070;
    background-color: #fff;
    vertical-align: middle
}

.form-register-forum .input-info .item-info .checkbox-item .checkbox-group label {
    margin-left: 1.7rem;
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    padding: 0
}

.form-register-forum .input-info .item-info label {
    display: block;
    font-size: 2.4rem;
    padding-bottom: .9rem
}

.form-register-forum .input-info .item-info label span {
    font-size: 1.7rem;
    margin-left: 3rem;
    padding: .3rem .5rem;
    background-color: red;
    color: #fff;
    border-radius: .8rem
}

.form-register-forum .input-info .item-info input:not([type=radio]),
.form-register-forum .input-info .item-info select {
    width: 100%
}

.form-register-forum .btn-center {
    width: 60.7rem;
    margin-top: 7.9rem;
    margin-left: auto;
    margin-right: auto
}

.form-register-forum .btn-center .btn-form {
    cursor: pointer;
    width: 100%;
    height: 5.9rem;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    border-radius: 2.2rem;
    border: none;
    background-color: #3E7472;
    color: #fff
}

.agenda-item-date{
    color: #777777;
    font-style: italic;
}

@media(max-width: 1023px) {
    .page-register {
        padding-top: 2.7rem;
        padding-bottom: 2.4rem
    }
    .list-step-register-forum {
        flex-wrap: wrap;
        margin-top: 2rem
    }
    .form-register-forum {
        max-width: 72rem;
        padding: 2.65rem 1.5rem 5.2rem 1.74rem;
        margin-top: 3.2rem
    }
    .form-register-forum .registration-form {
        margin-bottom: 5.35rem
    }
    .form-register-forum .registration-form select.select-item {
        height: 9.9rem;
        padding: .8rem 6rem 1.6rem 1.7rem;
        background-position-y: calc(100% - 1.1rem);
        text-wrap: wrap
    }
    .form-register-forum .input-info .item-info.text {
        width: 100%
    }
    .form-register-forum .input-info .item-info.text-address {
        width: 100%
    }
    .form-register-forum .input-info .item-info select.select-item {
        width: 100%
    }
    .form-register-forum .btn-center {
        margin-top: 5.2rem
    }
}

.page-confirm-register {
    flex:1;
    padding-top: 4.9rem;
    padding-bottom: 8.75rem;
    background-color: #e8e8e8;
}

.content-confirm-page {
    padding: 5.75rem 13.95rem 4.9rem 14.63rem;
    margin-top: 4.6rem;
    background-color: #fff
}

.content-confirm-page .registration-form h3,
.content-confirm-page .contact-form h3 {
    position: relative;
    color: #3E7472;
    border-bottom: 1px solid #707070
}

.content-confirm-page .registration-form h3 span,
.content-confirm-page .contact-form h3 span {
    position: absolute;
    bottom: -0.5rem;
    display: block;
    border-bottom: 5px solid #3E7472
}

.content-confirm-page .registration-form span {
    width: 50.2rem
}

.content-confirm-page .registration-form .descript-form {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    color: #3E7472;
    margin-top: 1.65rem
}

.content-confirm-page .contact-form {
    margin-top: 5.9rem;
    margin-bottom: 7.8rem
}

.content-confirm-page .contact-form span {
    width: 28.225rem
}

.content-confirm-page .contact-form h3 {
    margin-bottom: 2.6rem
}

.content-confirm-page .contact-form .infor-confirm {
    margin-bottom: 2.55rem;
}

.content-confirm-page .contact-form .infor-confirm .infor-label {
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem;
    margin-bottom: .7rem
}

.content-confirm-page .contact-form .infor-confirm .infor-value {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3rem
}

.content-confirm-page .btn-group-forum {
    display: flex;
    justify-content: center;
    text-align: center
}

.content-confirm-page .btn-group-forum .btn-edit-info,
.content-confirm-page .btn-group-forum .btn-confirm-send {
    height: 5.9rem;
    padding: 1.3rem 0 1.4rem 0;
    border-radius: 2.1rem;
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    line-height: 3.6rem
}

.content-confirm-page .btn-group-forum .btn-edit-info {
    min-width: 26.6rem;
    margin-right: .9rem;
    border: 1px solid #3E7472;
    color: #3E7472;
    background-color: #fff
}

.content-confirm-page .btn-group-forum .btn-confirm-send {
    min-width: 37.7rem;
    border: none;
    color: #fff;
    background-color: #3E7472
}

.theme-list-item{
    margin-top: 4rem;
    border: 1px solid #ccc;
    padding: 3rem;
}

.theme-list-item .title{
    margin-bottom: 2rem;
}

.theme-item-content .img-left{
    width: calc(30% - 3rem);
    float: left;
    margin-right: 3rem;
}
.theme-item-content .content-right{
    width: 100%;
    font-size: 2rem;
}
.theme-item-content .content-right p{
    margin-bottom: 1.5rem;
}

.theme-item-content{
    display: block;
    flex-wrap: wrap;
    gap: 3rem;
}

.theme-bottom-sns{
    margin-top: 3rem;
    margin-bottom: 5rem;
}

@media(max-width: 1023px) {
    .theme-item-content .img-left,
    .theme-item-content .content-right{
        width: 100%;
        font-size: 2.4rem;
        margin-right: 0;
    }

    .page-confirm-register {
        padding-top: 2.7rem;
        padding-bottom: 6.7rem
    }
    .list-step-register-forum {
        margin-bottom: 3.2rem
    }
    .content-confirm-page {
        padding: 3rem 3.55rem 11.9rem 2.18rem
    }
    .content-confirm-page .registration-form .descript-form {
        margin-top: 1.7rem
    }
    .content-confirm-page .contact-form {
        margin-top: 1.6rem;
        margin-bottom: 9.5rem
    }
    .content-confirm-page .contact-form .infor-confirm {
        margin-bottom: 2.6rem
    }
}

.page-thank {
    flex:1;
    padding-top: 4.6rem;
    padding-bottom: 8.05rem;
    background-color: #e8e8e8;
}

.only-sp {
    display: none !important
}

.join-genron-forum-success {
    display:flex;
    flex-direction: column;
}

.content-thanks-page {
    width: 100%;
    margin-top: 6.2rem;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
    padding-top: 6.8rem;
    padding-bottom: 9.81rem;
    padding-left: 29rem;
    padding-right: 29rem
}

.content-thanks-page .only-sp {
    text-align: center
}

.content-thanks-page .thank-title {
    font-weight: 600;
    font-size: 4.8rem;
    letter-spacing: .05em;
    margin-bottom: 3.9rem;
    color: #3E7472
}

.content-thanks-page .thank-content {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    text-align: center
}

.content-thanks-page .benefits {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    text-align: center;
    margin-top: 7.7rem;
    margin-bottom: 1.7rem
}

.content-thanks-page .descript-benefits {
    width: 83.2rem;
    height: 31.9rem;
    border: 1px solid #707070;
    font-size: 1.6rem;
    padding-top: 2rem;
    padding-bottom: 2.2rem
}

.content-thanks-page .descript-benefits p {
    padding-left: 18.6rem
}

.content-thanks-page .descript-benefits span {
    display: flex
}

.content-thanks-page .descript-benefits span::before {
    content: "";
    width: 2.5rem;
    height: 2.5rem;
    background-image: url("../images/thanks-forum/kkrn_icon_check_3.jpg");
    background-size: cover;
    margin-top: .5rem;
    margin-left: -4.3rem;
    margin-right: 1.8rem
}

.content-thanks-page .btn-confirm {
    display: none
}

@media(max-width: 1023px) {
    .only-pc {
        display: none !important
    }
    .only-sp {
        display: block !important
    }
    .content-thanks-page {
        width: 72rem;
        margin-top: 3.2rem;
        padding-top: 6.4rem;
        padding-bottom: 6.1rem;
        padding-left: 1.3rem;
        padding-right: 1.3rem
    }
    .content-thanks-page .thank-title {
        margin-bottom: 6.3rem
    }
    .content-thanks-page .benefits {
        margin-top: 6.2rem;
        margin-bottom: 4.3rem
    }
    .content-thanks-page .descript-benefits {
        width: 69.4rem;
        height: 44.4rem;
        padding-top: 2.5rem;
        padding-bottom: 4.1rem
    }
    .content-thanks-page .descript-benefits p {
        padding-left: 5.4rem;
        font-size: 2.4rem
    }
    .content-thanks-page .btn-thank {
        width: 60.7rem;
        margin-left: auto;
        margin-right: auto;
        margin-top: 3.9rem
    }
    .content-thanks-page .btn-thank .btn-confirm {
        width: 100%;
        height: 5.9rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-weight: 600;
        font-size: 2.4rem;
        letter-spacing: .05em;
        background-color: #3E7472;
        color: #fff;
        border-radius: 2rem
    }
}

.page-thank-guest {
    padding-top: 4.6rem;
    padding-bottom: 8.05rem;
    background-color: #e8e8e8;
}

.page-thank-guest .content-thanks-page {
    padding-bottom: 10.4rem
}

.page-thank-guest .content-thanks-page .benefits {
    margin-top: 5.6rem
}

@media(max-width: 1023px) {
    .page-thank-guest .content-thanks-page {
        padding-bottom: 6.9rem
    }
    .page-thank-guest .content-thanks-page .benefits {
        margin-top: 6.1rem
    }
}

.page-thank-guest .btn-center,
.page-thank .btn-center {
    display: flex;
    justify-content: center
}

.page-thank-guest .btn-center .btn-solid,
.page-thank .btn-center .btn-solid {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 3rem;
    min-width: 40rem;
    cursor: pointer;
    padding: 0 3rem;
    height: 5.9rem;
    font-size: 2.4rem;
    font-weight: 600;
    text-align: center;
    border-radius: 2.2rem;
    border: none;
    background-color: #3E7472;
    color: #fff
}

.page-default-content {
    padding: 8rem 0
}

.page-default-content p {
    margin-bottom: 3rem;
    clear: both;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: .05em
}

.page-default-content h2 {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    padding: .2rem 1.8rem;
    color: #fff;
    background-color: #3E7472;
    margin-bottom: 2.6rem
}

.page-default-content h3 {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    border-bottom: 5px solid #3E7472;
    color: #3E7472;
    margin-bottom: 2.6rem
}

.page-default-content h4 {
    font-weight: 600;
    font-size: 2.8rem;
    letter-spacing: .05em;
    color: #3E7472;
    margin-bottom: 2.6rem
}

.page-default-content h5 {
    font-weight: 600;
    font-size: 2.4rem;
    letter-spacing: .05em;
    margin-bottom: 2.6rem
}

.page-default-content .note-float-left {
    margin-right: 8rem
}

.page-default-content .note-float-right {
    margin-left: 8rem
}

@media(max-width: 1023px) {
    .page-default-content p {
        font-size: 2.4rem
    }
}

.stogare-banner {
    background-color: #003a3e;
    min-height: 20rem;
    display: flex;
    justify-content: center;
    align-items: center
}

.banner-top {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 53.3rem;
    background-size: cover;
    background-position: center;
    flex-direction: column-reverse
}

.banner-top .banner-left {
    width: 56%;
    min-height: 32.7rem;
    background-color: rgba(0, 58, 62, .8)
}

.banner-top .banner-left .banner-text {
    padding: 6.9rem 4.3rem 0 24rem;
    height: 100%
}

.banner-top .banner-left h1 {
    font-size: 3.2rem;
    line-height: 1.8
}

.banner-top .banner-left h3 {
    font-size: 1.6rem;
    line-height: 2.25;
    padding-top: 4rem
}

.banner-text {
    background: none
}

.banner-text h1 {
    font-size: 4.8rem;
    line-height: 1.7
}

.container-post {
    background-color: #e8e8e8;
    padding: 8rem 24rem
}

.container-post .post-header {
    display: flex;
    margin-bottom: 3.4rem
}

.container-post .post-header h1 {
    font-size: 4rem;
    line-height: 1.8
}

.container-post .post-header .post-line {
    position: relative;
    flex: 1
}

.container-post .post-header .post-line::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #707070;
    bottom: 1.8rem
}

.discussions-forum .agenda-content .columns-3 {
    gap: 1.6rem 0;
    justify-content: space-between;
    grid-template-columns: repeat(3, 46rem)
}

.discussions-forum .agenda-content .columns-3 .ratio {
    padding-bottom: 24.5rem
}

.conference-items {
    display: block
}

.conference-items .item-padding.items {
    min-height: 43.2rem
}

.conference-items .item-padding .item {
    padding: 3.3rem 0 3.2rem 4.5rem
}

.conference-items .item-padding .item img {
    border-radius: 0
}

.conference-items .items {
    display: flex;
    position: relative;
    min-height: 36.7rem;
    background-color: #003a3e;
    width: 100%;
    border-radius: 2rem;
    margin-bottom: 8rem;
    margin-top: 8rem
}

.conference-items .items .item {
    flex: 1;
    line-height: 0
}

.conference-items .items .item:first-of-type {
    flex: 0 0 66.9rem
}

.conference-items .items img {
    border-radius: 2rem 0 0 2rem;
    width: 100%;
    height: 100%
}

.conference-items .items .article-date {
    text-align: end;
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.7;
    color: #707070;
    padding-bottom: 1.6rem
}

.conference-items .items .item-text {
    max-width: 53%;
    padding: 3.5rem 4.4rem 3.2rem 6.4rem;
    flex: 1
}

.conference-items .items .item-text h3 {
    font-weight: 600;
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 2.25;
    color: #fff
}

.conference-items .items .item-text p {
    font-size: 2.4rem;
    line-height: 1.8;
    padding-top: 1.6rem;
    font-weight: 600;
    color: #fff
}

.conference-items .items .btn-item {
    position: absolute;
    right: 4.4rem;
    bottom: 1.8rem
}

.conference-items .items .btn-item a {
    font-size: 1.8rem;
    line-height: 1.7;
    font-weight: 600;
    color: #fff
}

.article .items {
    background-color: #fff
}

.article .items .item-text h3 {
    color: #000;
    overflow: hidden;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    word-wrap: break-word
}

.article .items .item-text p {
    color: #393939
}

.article .items .btn-item a {
    color: #464242
}

.list-article {
    margin-top: 8rem
}

.list-article .grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 4rem
}

.list-article .grid-item .grid-item-img {
    display: block;
    position: relative
}

.list-article .grid-item .grid-item-img p {
    position: absolute;
    bottom: 0;
    background-color: #3E7472;
    padding: .9rem 2rem;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.8
}

.list-article .grid-item .grid-item-content {
    padding: 0 2rem
}

.list-article .grid-item .grid-item-content .content-header {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.8
}

.list-article .grid-item .grid-item-content .content-date {
    color: #707070;
    font-size: 2rem;
    line-height: 1.8;
    font-weight: 300;
    padding-top: 2rem
}

.list-article .article-btn {
    margin: 5rem 0 10rem 0;
    text-align: center
}

.list-article .article-btn a {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.8;
    padding: 1.8rem 12.2rem;
    background-color: #3E7472;
    border-radius: 2rem
}

.stogare-container {
    margin: 9.6rem 24rem;
    padding: 0
}

.stogare-container .conference-items {
    display: block
}

.stogare-container .conference-items .items-custom {
    align-items: normal !important
}

.stogare-container .conference-items .items {
    display: flex;
    align-items: center;
    position: relative;
    min-height: 39rem;
    background-color: #003a3e;
    width: 100%;
    border-radius: 2rem;
    margin-bottom: 4.5rem
}

.stogare-container .conference-items .items.item-padding .item:first-of-type {
    padding: 2.9rem 0 3.2rem 3.9rem
}

.stogare-container .conference-items .items .item {
    flex: 1;
    line-height: 0
}

.stogare-container .conference-items .items .item .article-title {
    font-size: 2rem;
    line-height: 2.8;
    font-weight: 600
}

.stogare-container .conference-items .items .item:first-of-type {
    flex: 0 0 72.1rem
}

.stogare-container .conference-items .items img {
    width: 100%;
    height: 100%
}

.stogare-container .conference-items .items .item-text {
    padding: 2rem 4rem 2rem 4.9rem;
    flex: 1
}

.stogare-container .conference-items .items .item-text h3 {
    font-size: 4rem;
    line-height: 1.8;
    position: relative;
    color: #fff
}

.stogare-container .conference-items .items .item-text h3::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 100%;
    height: 1px;
    bottom: 0;
    left: 0;
    background-color: #fff
}

.stogare-container .conference-items .items .item-text p {
    font-size: 2.4rem;
    line-height: 1.8;
    padding-top: 1.9rem;
    font-weight: 600
}

.stogare-container .conference-items .items .btn-item {
    position: absolute;
    right: 2.8rem;
    bottom: 1.6rem
}

.stogare-container .conference-items .items .btn-item a {
    font-size: 2.4rem;
    line-height: 1.7;
    font-weight: 600
}

.stogare-container .container-video {
    margin-top: 8.8rem
}

.stogare-container .container-video .video-item {
    width: 100%;
    min-height: 93.4rem;
    background-size: cover;
    background-position: center
}

.stogare-container .container-video .video-item:hover {
    cursor: pointer
}

.discussions-forum .centre {
    margin-top: 8rem
}

.discussions-forum .container-video iframe {
    width: 100%;
    height: 94.4rem;
    border-radius: 2rem
}

.discussions-forum .stogare-container .items img {
    border-radius: 2rem
}

.discussions-forum .agenda-category {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    flex: 1
}

.discussions-forum .agenda-category .agenda-category-item {
    background-color: #fff
}

.discussions-forum .agenda-item .agenda-item-date {
    color: #222
}

.confenece-item {
    align-items: start !important
}

.confenece-top .banner-left {
    min-height: 26.6rem
}

@media(max-width: 1023px) {
    .discussions-forum .agenda {
        margin-top: 0
    }
    .discussions-forum .container-video iframe {
        width: 100%;
        height: 48rem
    }
    .discussions-forum .conference-items .items {
        flex-wrap: wrap
    }
    .discussions-forum .conference-items .items.item-padding>.item,
    .discussions-forum .conference-items .items .item-text {
        padding: 3.3rem 3.3rem 0 !important
    }
    .discussions-forum .conference-items .items .item:first-of-type {
        width: 100%;
        flex: 0 0 auto
    }
    .discussions-forum .conference-items .items img {
        border-radius: 2rem 2rem 0 0
    }
    .discussions-forum .conference-items .items .btn-item {
        position: relative;
        width: 100%;
        padding: 3.3rem;
        text-align: end;
        right: 0 !important;
        bottom: 0 !important
    }
    .discussions-forum .conference-items .items .item-text {
        max-width: 100%
    }
    .discussions-forum .agenda-content .columns-3 {
        gap: 1.6rem;
        justify-content: space-between;
        grid-template-columns: repeat(2, calc(50% - 0.8rem))
    }
    .discussions-forum .agenda-content .columns-3 .ratio {
        padding-bottom: 53.3%
    }
    .banner-top .banner-left {
        min-height: fit-content;
        width: auto
    }
    .banner-top .banner-left .banner-text {
        padding: 3rem
    }
    .banner-top .banner-left h1 {
        font-size: 2.4rem
    }
    .banner-top .banner-left h3 {
        font-size: 1.2rem;
        padding-top: 1rem
    }
    .container-post {
        padding: 2.7rem
    }
    .container-post .conference-items .items .item-text {
        padding: 3rem 2rem 6rem 2rem
    }
    .container-post .conference-items .items .btn-item {
        right: 1.8rem;
        bottom: 1rem
    }
    .container-post .conference-items .item-padding {
        padding-bottom: 0
    }
    .list-article .grid {
        grid-template-columns: 1fr 1fr
    }
    .list-article .grid-item .grid-item-img p {
        padding: .9rem 1rem;
        width: 100%
    }
    .list-article .grid-item .grid-item-content .content-date {
        padding-top: 1rem
    }
    .list-article .article-btn {
        margin: 5rem 0
    }
    .stogare-container {
        margin: 0;
        padding: 2rem
    }
    .stogare-container .conference-items .items {
        flex-direction: column
    }
    .stogare-container .conference-items .items .item-text {
        width: 100%
    }
    .stogare-container .conference-items .items .btn-item {
        right: 1.8rem;
        bottom: 1rem
    }
}

.agenda-top {
    display: flex;
    min-height: 42.3rem;
    background-size: cover;
    align-items: center;
    justify-content: center
}

.agenda-top .agenda-title {
    font-size: 4.8rem;
    line-height: 1.7;
    font-weight: 600;
    width: 100%;
    background-color: #3E7472;
    text-align: center;
    padding: 4rem 0
}

.agenda-menu {
    margin: 8rem 0;
}

.agenda-menu .agenda-child-menu {
    display: flex;
    list-style: none;
    gap: 2.5rem;
    align-items: center;
    justify-content: center;
    padding: 0;
    flex-wrap: wrap
}

.agenda-menu .agenda-child-menu li {
    display: flex;
    width: calc(25% - 2.5rem);
    align-items: center;
    justify-content: center
}

.agenda-menu .agenda-child-menu a {
    color: #3E7472;
    font-size: 2rem;
    line-height: 1.7;
    font-weight: 600;
    border: .6rem solid #3E7472;
    padding: 2.4rem 2rem;
    cursor: pointer;
    text-align: center;
    width: 100%
}

.agenda-menu .agenda-child-menu .agenda-menu-active {
    color: #fff;
    background-color: #3E7472
}

.agenda-block-full {
    display: flex;
    width: 100%;
    margin-bottom: 13rem
}

.agenda-block-full .block-full-left {
    flex: 1
}

.agenda-block-full .block-full-left .block-title {
    background-color: #003a3e;
    width: fit-content;
    padding: .9rem 0 .7rem;
    text-align: center;
    min-width: 85.2rem;
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 6.4rem;
    max-height: 8rem;
    overflow: hidden
}

.agenda-block-full .block-full-left .block-content {
    padding: 0 9rem 0 24.4rem
}

.agenda-block-full .block-full-left .block-content .content-top {
    color: #222;
    text-align: justify
}

.agenda-block-full .block-full-left .block-content h1 {
    color: #222;
    font-size: 3rem;
    line-height: 1.8;
    font-weight: 400;
    margin: 6rem 0;
    overflow: hidden
}

.agenda-block-full .block-full-left .block-content p {
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.8;
}

.agenda-block-full .block-full-right {
    width: 40%
}

.page-our-work-agenda .agenda-item .agenda-item-date {
    color: #222
}

.agenda-block-small .block-small-img img {
    height: 81.1rem;
    object-position: center
}

.agenda-block-small .block-small-contnent {
    padding: 6rem 0 4rem 0;
    font-size: 1.6rem;
    line-height: 2.25
}

.agenda-block-small .block-small-contnent .content-bottom {
    color: #222;
    text-align: justify
}

.agenda-block-small .block-small-btn {
    text-align: center;
    margin-bottom: 7.5rem
}

.agenda-block-small .block-small-btn a {
    background-color: #3E7472;
    width: fit-content;
    font-size: 2.4rem;
    line-height: 1.8;
    padding: 1.8rem 21rem;
    border-radius: 2rem
}

.agenda-block-small .block-small-btn a:hover {
    color: #fff
}

.agenda-list-item .agenda-item {
    display: flex;
    margin-bottom: 8.5rem
}

.agenda-item-left {
    flex: 0 0 64.1rem;
    height: auto;
}

.agenda-item-left img {
    height: auto;
    width: 100%;
}

.agenda-item-right {
    width: fit-content;
    padding: 1.2rem 0 0 8rem
}

.agenda-item-right .item-title {
    font-size: 4rem;
    line-height: 1.7;
    font-weight: 600;
    color: #3E7472;
    max-height: 20.4rem;
    overflow: hidden
}

.agenda-item-right .item-content {
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.7;
    padding-top: 2.8rem;
    color: #222
}

.block-mobile,
.menu-mobile {
    display: none !important
}

@media(max-width: 1023px) {
    .agenda-block-small .block-small-img img {
        height: auto
    }
    .menu-pc,

    .menu-mobile {
        display: flex !important
    }
    .block-mobile {
        display: unset !important
    }
    .agenda-menu {
        margin: 1.3rem 2.2rem 7.9rem
    }
    .agenda-menu .agenda-child-menu li {
        width: calc(50% - 1.25rem);
        position: relative
    }
    .agenda-menu .agenda-child-menu li a {
        color: #fff;
        border: none
    }
    .agenda-menu .agenda-child-menu li a::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 1;
        background-color: rgba(0, 138, 63, .8)
    }
    .agenda-menu .agenda-child-menu .agenda-menu-item {
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat
    }
    .agenda-menu .agenda-child-menu .agenda-menu-active::after {
        display: none
    }
    .agenda-list-item .agenda-item {
        margin-bottom: 5rem;
        flex-direction: column
    }
    .agenda-item-left {
        flex: 0 0 26.4rem;
        max-width: 100%
    }
    .agenda-item-right {
        padding: 0 0 5rem 0
    }
    .agenda-item-right .item-content {
        font-size: 2.4rem
    }
    .agenda-item-right:last-child {
        padding: 0
    }
    .agenda-block-full {
        flex-direction: column;
        margin-bottom: 6rem
    }
    .agenda-block-full .block-full-left .block-content {
        padding: 2.4rem
    }
    .agenda-block-full .block-full-left .block-content h1 {
        margin: 0 0 2.7rem 0
    }
    .agenda-block-full .block-full-left .block-content p {
        font-size: 2.4rem
    }
    .agenda-block-full .block-full-left .block-title {
        padding: 2rem 4rem;
        min-width: 0;
        line-height: 1;
        font-size: 4rem;
        text-align: center;
    }
    .agenda-block-full .block-full-right {
        width: 100%;
        padding: 0 2.4rem
    }
}

.donation-form-credit .support-us-form {
    margin: 0
}

.donation-form-credit .support-us-form .row {
    gap: 1.6rem
}

.donation-form-credit .support-us-form .row>.corporate-form-item input {
    min-width: 34.6rem
}

.donation-form-credit .support-us-form .support-us-form-title {
    margin-bottom: 3rem
}

.donation-form-credit .support-us-form .support-us-form-title .box>span:last-child {
    margin-left: 2rem;
    font-size: 1.6rem
}

.donation-form-credit .support-us-form .corporate-form-button {
    display: inline-block;
    text-align: center;
    min-width: 38.3rem;
    margin-bottom: 9.3rem
}

.donation-form-credit .support-us-form .cards-title {
    font-size: 2.4rem;
    line-height: 2.4rem
}

.donation-form-credit .support-us-form img {
    height: 8rem;
    width: auto
}

.donation-form-credit .support-us-form .payment-method-title {
    color: #3E7472
}

.donation-form-credit .support-us-form.box {
    margin-bottom: 6rem
}

.donation-form-credit .support-us-form .form-check {
    display: flex;
    gap: 4rem
}

.donation-form-credit .support-us-form .form-check .form-check-item {
    display: flex;
    align-items: center;
    gap: 1.6rem
}

.donation-form-credit .support-us-form .form-check .form-check-input {
    min-width: auto;
    width: 2.4rem;
    height: 2.4rem
}

.donation-form-credit .support-us-form .form-check .form-check-label {
    font-size: 2.4rem;
    line-height: 2
}

.donation-form-credit .privacy-policy {
    margin-bottom: 8rem
}

.information-submission-form .support-us-form-title {
    border-bottom: 1px solid #707070;
    letter-spacing: 0;
    position: relative;
    padding-bottom: .6rem
}

.information-submission-form .support-us-form-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    display: block;
    width: 66rem;
    height: 5px;
    background-color: #3E7472
}

.message-completed {
    padding: 9.95rem 5rem 11.4rem
}

.message-completed .message {
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: .05em;
    text-align: center;
    margin-bottom: 5.6rem
}

.slide-item .caption{
    max-width: 66.67%;
    position: absolute;
    bottom: 7rem;
    padding-left: 6.7rem;
    z-index: 1;
}

.slide-item-content{
    position: relative;
}
.slide-item-content:after{
    content: '';
    height: 60%;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    background-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(18,18,18,0.7) 100%);
}

.page-header{
    margin-top: 6rem;
    margin-bottom: 6rem;
}

.page-header .page-title{
    font-weight: 600;
    font-size: 3.6rem;
}

.search-content{
    margin-bottom: 8rem;
}

.search-item, .article-item{
    display: block;
    margin-bottom: 4rem;
}

.search-item .category-label, .article-item .category-label{
    display: block;
    font-size: 1.6rem;
    color: #3E7472;
    font-weight: 600;
}

.search-item .title, .article-item .title{
    font-size: 2.4rem;
    font-weight: 400;
    transition: all 0.2s;
}

.search-item .date, .article-item .date{
    color: #707070;
    font-style: italic;
}

.search-item:hover .title, .article-item:hover .title{
    color: #00a2bf;
}

@media screen and (max-width: 1023px) {
    .row {
        gap: 1.6rem
    }
    .row>.corporate-form-item {
        width: calc(50% - .8rem)
    }
    .row>.corporate-form-item input {
        width: 100%;
        min-width: auto !important
    }
    .information-submission-form .support-us-form-title .box>span:first-child {
        line-height: 2
    }
    .information-submission-form .support-us-form-title .box>span:last-child {
        margin-left: 0 !important;
        font-size: 2.4rem !important
    }
    .information-submission-form .support-us-form-title::after {
        width: 20rem
    }
    .slide-item .caption{
        max-width: 100%;
        padding: 0 4rem;
        bottom: 10rem;
    }
    .history .event{
        margin-left: 0;
    }
}

.archives {
    background-color: #002c33;
    padding: 1rem 0;
}

.archives .page-width {
    display: flex;
}

.archives .btn-base {
    font-size: 2rem;
    padding: 1rem 3rem;
    margin-left: auto;
}

.kudo-intro {
    margin-top: 6rem;
}

.kudo-intro .kudo-intro-text {
    text-indent: 1rem;
    padding: 2rem;
    font-size: 2rem;
}

.pickup {
    width: 80%;
    border: 1px solid #8fdbdb;
    background-color: #e0f9f9;
    padding: 3rem 4rem;
    margin: 6rem auto 0;
}

.pickup-title {
    font-size: 3.2rem;
    color: #3E7472;
    line-height: 1.5;
}

.pickup-intro {
    font-size: 3rem;
    line-height: 1.5;
    font-weight: 400;
    margin-top: 1rem;
}

.pickup-intro::after {
    content: "";
    display: block;
    width: 7%;
    height: 3px;
    background-color: #3E7472;
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.pickup-content {
    display: flex;
    flex-direction: row;
    gap: 2rem;
}

.pickup-image {
    width: 42%;
    object-fit: cover;
}

.pickup-text-content {
    flex: 1;
    font-size: 2rem;
    letter-spacing: 0.04em;
    font-weight: 400;
    padding: 0 1rem;
}

.youtube {
    width: 60%;
    height: auto;
    margin: 8rem auto;
}

.youtube .container-video{
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-left: auto;
    margin-right: auto;
}

.youtube .container-video iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.youtube-series {
    margin-bottom: 6rem;
    padding: 6rem 0;
    background-color: #f4f5f5;
}

.page-kudo .section-title .title {
    font-size: 4rem;
    line-height: 1.5;
    color: #212121;
    font-family: "Roboto", "sans-serif";
    font-weight: 700;
    text-align: center;
    margin-bottom: 1rem;
}
.page-kudo .section-title {
    position: relative;
    margin-bottom: 4rem;
}

.page-kudo .section-title .subtitle{
    font-size: 2.4rem;
    line-height: 1.3333;
    color: #212121;
    font-family: "Roboto", "sans-serif";
    font-weight: 700;
    text-align: center;
    margin-bottom: 4rem;
}

.page-kudo .section-title::before{
    content: "";
    display: block;
    width: 100%;
    height: 0.3rem;
    background-color: rgba(203,205,205,.4);
    position: absolute;
    left: 0;
    bottom: -2.8rem;
    z-index: 1;
}

.page-kudo .section-title::after{
    content: "";
    display: block;
    width: 11.2rem;
    height: 0.3rem;
    background-color: #3E7472;
    position: absolute;
    left: calc(50% - 5.6rem);
    bottom: -2.8rem;
    z-index: 2;
}

.youtube-series .content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8rem;
    margin: 8rem auto 4rem auto;
}

.youtube-item {
    display: flex;
    flex-direction: column;
}

.youtube-item .image {
    width: 100%;
    height: 100%;
    padding-top: 56.25%;
    position: relative;
    margin-bottom: 1rem;
}

.youtube-item .image img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.youtube-item .text-content .item-category{
    font-size: 1.8rem;
    line-height: 2;
    color: #3E7472;
    font-family: "Roboto", "sans-serif";
    font-weight: 700;
}

.youtube-item .text-content .item-title{
    font-size: 1.92rem;
    line-height: 2;
    color: #111;
    font-family: "Roboto", "sans-serif";
    font-weight: 400;
}

.youtube-item-link:hover .text-content .item-title{
    color: #00a2bf;
    transition: all 0.4s;
}

.announcement-content {
    padding: 4rem 3rem;
}

.announcement {
    display: flex;
    flex-direction: row;
    gap: 4rem;
}

.announcement .announcement-image{
    width: 50%;
    height: auto;
    max-height: 25rem;
    position: relative;
    padding-top: 30%;
}

.announcement .announcement-image img{
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.announcement-text .announcement-title {
    font-size: 4rem;
    line-height: 1.5;
    color: #000;
    font-family: "Roboto", "sans-serif";
    font-weight: 400;
    letter-spacing: 0.04em;
}

.announcement-text .announcement-date {
    font-size: 1.2rem;
    line-height: 2;
    color: #707070;
    font-family: "Roboto", "sans-serif";
    font-weight: 400;
    font-style: italic;
}

.announcement:hover .announcement-title {
    color: #00a2bf;
    transition: all 0.4s;
}

.previous-announcement {
    margin-top: 4rem;
}

.announcement-cate{
    color: #3E7472;
    font-weight: 600;
}

.previous-announcement .content{
    padding: 3rem 10rem;
}

.previous-announcement .podcast-item {
    border-bottom: 1px solid #d8d9d9;
    margin-bottom: 2rem;
}

.previous-announcement .podcast-item {
    border-bottom: 1px solid #d8d9d9;
    padding-bottom: 2rem;
    margin-bottom: 4rem;
}

.podcast-item .text-title {
    font-size: 2.4rem;
    line-height: 1.5;
    color: #000;
    font-family: "Roboto", "sans-serif";
    font-weight: 400;
    border-left: 3px solid #3E7472;
    padding-left: 1.8rem;
}

.podcast-item .text-date {
    font-size: 1.2rem;
    line-height: 2;
    color: #707070;
    font-family: "Roboto", "sans-serif";
    font-weight: 400;
    font-style: italic;
}

.podcast-item:hover .text-title {
    color: #00a2bf;
    transition: all 0.4s;
}
.previous-announcement .read-more {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2rem;
}

.previous-announcement .read-more .btn-base {
    font-size: 1.8rem;
    padding: 1.5rem 20rem;
    border-radius: 5rem;
}

.sns-kudo {
    margin-top: 8rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-bottom: 8rem;
}

.sns-kudo .sns-text{
    color:#002c33;
    margin-bottom: 2rem;
}

.sns-kudo .sns-text .title {
    font-size: 2.8rem;
    line-height: 1.5;
    color: #003a3e;
    font-family: "Roboto", "sans-serif";
    letter-spacing: 0.04em;
    font-weight: 700;
    text-align: center;
    margin-bottom: 2rem;
}

.sns-kudo .sns-text .subtitle {
    font-size: 1.3rem;
    line-height: 1.75;
    color: #003a3e;
    font-family: "Roboto", "sans-serif";
    letter-spacing: 0.04em;
    font-weight: 400;
    text-align: center;
}

.sns-kudo .sns-content {
    display: flex;
    flex-direction: row;
    gap: 2rem;
    align-items: center;
}
.announcement-text{
    flex: 1;
}

.report-content-group-button,
.activity-report-button{
    display: flex;
    column-gap: 5rem;
}

.about-us-filter{
    width: 24rem;
    text-align: center;
    font-size: 1.6rem;
}

.about-us-filter .choices__inner{
    border: 1px solid #707070;
    background-color: #FFF;
    font-size: 1.6rem;
    border-radius: 0;
    min-height: 4.8rem;
    padding: 0.75rem 0.75rem;
}
.about-us-filter.choices[data-type*=select-one] .choices__inner{
    padding-bottom: 0.75rem;
}

.about-us-filter .choices__inner .choices__list--single{
    padding: 0;
    line-height: 2;
}

.about-us-filter .choices__inner .choices__item{
    color: #3E7472;
    font-weight: 600;
    opacity: 1;
    padding-right: 2rem;
}

.choices[data-type*=select-one]::after{
    border: 0;
    background: url(../images/arrow-down.svg) no-repeat;
    background-size: cover;
    height: 1.4rem;
    width: 1.6rem;
    transform: translateY(-50%);
    right: 1rem;
    margin-top: 0;
}
.choices[data-type*=select-one].is-open::after{
    margin-top: 0;
}

.choices__list--dropdown .choices__item, .choices__list[aria-expanded] .choices__item{
    padding: 1rem;
    font-size: 1.6rem;
}

.title-line{
    margin-bottom: 4rem;
}

.general-meeting-wrap{
    margin-top: 8rem;
}

.packet-update-info .container{
    padding-left: 0;
    padding-right: 0;
}

@media(max-width: 1023px){
    .kudo-intro .kudo-intro-text{
        padding: 0;
        font-size: 2.4rem;
    }
    .pickup{
        width: 100%;
        padding: 4rem;
    }
    .pickup-content{
        flex-wrap: wrap;
    }
    .pickup-image{
        width: 100%;
    }
    .pickup-intro{
        margin-bottom: 4rem;
    }
    .pickup-text-content{
        padding: 0;
        font-size: 2.4rem;
    }
    .youtube{
        width: 100%;
        margin: 6rem auto;
    }
    .page-kudo .section-title .subtitle{
        font-size: 2.8rem;
    }
    .youtube-series .content{
        margin-bottom: 0;
        gap: 4rem;
        grid-template-columns: repeat(1, 1fr);
    }
    .youtube-item .text-content .item-category{
        font-size: 2rem;
    }
    .youtube-item .text-content .item-title{
        font-size: 2.8rem;
    }
    .announcement-cate{
        font-size: 2rem;
    }
    .announcement-text .announcement-date{
        font-size: 1.8rem;
    }
    .announcement{
        gap: 3rem;
    }
    .announcement .announcement-image{
        width: 40%;
    }
    .previous-announcement .content{
        padding: 3rem 1rem;
    }
    .podcast-item .text-date{
        font-size: 2rem;
    }
    .report-content-group-button{
        flex-wrap: wrap;
    }
    .about-us-filter{
        width: 100%;
    }
    .activity-report-button{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    .report-content-group-button, .activity-report-button{
        column-gap: 2rem;
    }
    .activity-report-button .report-content-group-button{
        width: 100%;
    }
    .about-us-filter-btn, .section-label{
        min-height: 6.8rem;
        font-size: 2.4rem;
        padding: 1rem 3rem;
    }
    .about-us-filter .choices__inner{
        min-height: 6.8rem;
        font-size: 2.4rem;
    }
    .choices__list--dropdown .choices__item, .choices__list[aria-expanded] .choices__item{
        font-size: 2rem;
    }
    .choices[data-type*=select-one]::after{
        width: 2rem;
        height: 1.6rem;
    }
    .general-meeting-wrap{
        margin-top: 7rem;
    }
}

.article-content p a.normal_btn2_rev:hover {
  background-color: #fff !important;
  color: rgb(0, 44, 51) !important;
  border-color: 2px solid rgb(0, 44, 51);
}

.article-content p a.normal_btn2_rev:hover font{
  color: rgb(0, 44, 51) !important;
}

.member-form-title{
    margin-bottom: 6rem;
    text-align: center;
}

.member-form{
    max-width: 77rem;
    margin: 0 auto;
}

.member-form-body{
    padding: 8rem 0 12rem;
    background-color: #e8e8e8;
}

.member-form .form-submit{
    text-align: center;
}

.member-form .form-submit button{
    min-width: 60rem;
}

.lost-password-link{
    margin-top: 4rem;
}

.login-button .btn-base.btn-alt{
    min-width: 60rem;
}

.member-form-body .body-content{
    margin: 10rem 0 5rem;
}

.condition-required.hide{
    display: none;
}

.packet-register .list-option .group-radio.option-free input:checked + label{
    background-color: #707070;
    border-color: #707070;
}

.past-forums-content{
    max-width: 1000px;
    margin: 8rem auto 0;
}

.past-forum-button{
    margin-top: 6rem;
}

.mypage-forum .packet-mypage-forum{
    width: calc(100% - 44.5rem);
}

.forum-results{
    margin-bottom: 8rem;
}

.page-list-rows{
    margin-top: 8rem;
    margin-bottom: 10rem;
}

.container-sm{
    max-width: 1000px;
    margin: 0 auto;
    padding-left: 2rem;
    padding-right: 2rem;
}

.list-articles{
    margin-bottom: 8rem;
}

.article-item{
    display: flex;
}
.article-item .thumb{
    width: 25rem;
    margin-right: 2rem;
}
.article-item .thumb img{
    min-height: 14rem;
    max-height: 20rem;
}
.article-item .context{
    flex: 1;
}
.discussions-article .pagination{
    margin-bottom: 6rem;
}
.title-line h2 + span{
    font-weight: 600;
}

.forum-tab{
    padding-bottom: 8rem;
}
.forum-tab .bottom-box{
    margin-top: 6rem;
}
.agenda-block{
    margin-bottom: 8rem;
}
.agenda-block-full .block-full-right img{
    width: 100%;
}
@media(max-width: 1023px){
    .item-input{
        margin-bottom: 4rem;
    }
    .member-form-title{
        margin-bottom: 4rem;
    }
    .member-form-body{
        padding-left: 3rem;
        padding-right: 3rem;
    }
    .member-form .form-submit{
        margin-top: 6rem;
    }
    .mypage-forum .packet-mypage-forum{
        width: 100%;
    }
    body{
        font-size: 2.4rem;
    }
    .post-item.article-item .agenda-item-title{
        font-size: 2.8rem;
        max-height: 9rem;
        margin-bottom: 1rem;
    }
    .agenda-category{
        margin-top: 2rem;
    }
    .agenda .agenda-content .row{
        column-gap: 2rem;
    }
    .intro-banner .intro-overlay .intro-title span{
        font-size: 2.6rem;
    }
    .main-header .box-content .text-wrap .label{
        font-size: 2rem;
    }
    .agenda-menu .agenda-child-menu a{
        font-size: 2.4rem;
        padding: 2rem;
    }
    .agenda-category .agenda-category-item{
        font-size: 2rem;
    }
    .block-pc{
        display: none !important;
    }
    .agenda-menu{
        margin: 6rem 0;
    }
    .about-us-board-member-page .member-chairman .member-intro-item.member-intro-item-alt,
    .about-us-board-member-page .member-intro .member-supervisor .member-intro-item.member-intro-item-alt{
        width: 100%;
    }
    .about-us-annual-report-page .annual-report{
        margin-bottom: 10rem;
    }
    .about-common-header.no-thumbnail{
        padding-left: 2.4rem;
        padding-right: 2.4rem;
    }
    .center-title .title,
    .bottom-center .title{
        font-size: 3.8rem;
    }
    .opportunity-slide-title{
        font-size: 4rem;
    }
    .green-title .small-text{
        display: block;
    }
    .article-content{
        padding: 0;
    }
    .detail-top{
        flex-wrap: wrap;
    }
    .detail-top .detail-thumbnail{
        width: 50%;
    }
    .publ-details-wrap .detail-top .detail-info{
        padding-top: 2rem;
        width: 100%;
        flex: unset;
        padding-left: 0;
    }
    .pub-detail-success .publ-details-bg{
        padding-top: 8rem;
        padding-bottom: 8rem;
    }
    .forum .section-title-line{
        margin-bottom: 4rem;
    }
    .discussion-search-bottom .sort .select-menu{
        font-size: 2rem;
        min-height: 5rem;
    }
    .select-menu option{
        font-size: 2rem;
    }
    .member-discussison .member-discussison-item-title{
        font-size: 3.6rem;
    }
    .agenda-intro .content-left .content{
        max-width: 100%;
        width: 100%;
    }
    .forum-tab{
        padding-bottom: 6rem;
    }
    .support-us-slide{
        height: auto;
    }
    .support-us-slide .support-slide-bg{
        height: 60rem;
    }
    .support-us-page .support-us-faq .qna{
        padding-left: 2.4rem;
        padding-right: 2.4rem;
    }
    .support-us-faq{
        padding-bottom: 6rem;
        padding-top: 0;
    }
    .support-us-slide .support-slide-content.bg-full .support-slide-content-wrap{
        padding-top: 6rem !important;
        padding-bottom: 0 !important;
        min-height: 70rem;
    }
    .item-update-info .item-info input,
    .item-update-info .item-job .select-item{
        width: 100%;
    }
    .item-update-info .item-info .list-radio{
        margin-left: 0;
    }
    .item-update-info{
        margin-bottom: 4rem;
    }
    .item-update-info .item-info .list-radio label{
        margin-right: 4rem;
    }
    .title-info-contact p{
        font-size: 2rem;
    }
    .change-membership .membership-types-item-title{
        font-size: 2.4rem;
    }
    .change-membership .membership-types .membership-types-item-desc{
        font-size: 2.4rem;
    }
    .change-membership .membership-types-body-title{
        font-size: 3.2rem;
        padding: 2rem 0;
    }
    .change-membership .membership-types-body-btn{
        max-height: unset;
        padding: 0.5rem 2rem;
    }
    .membership-types .membership-types-benefits{
        font-size: 2.8rem;
    }
    .change-membership .membership-types-item-title span{
        font-size: 4rem;
    }
    .membership-types .membership-types-body ul li{
        font-size: 2.4rem;
    }
    .list-mypage-pay .row_list button.show-modal{
        margin-left: 0;
    }
    .our-work-page .genron-npo-right>img{
        height: auto !important;
    }
    .item-update-info .item-info .list-radio label{
        font-size: 2.2rem;
    }
    .voices-supporters .voices-supporters-item-body{
        padding: 3rem 2.4rem;
        font-size: 2.4rem;
    }
    .agenda-intro{
        display: block;
    }
    .agenda-intro .content-right{
        width: 100%;
    }
    .agenda-intro .content-right img{
        max-width: 100vw;
        height: auto !important;
    }
    .schedule-event-item .event-info .event-time>h3{
        font-size: 2.4rem;
    }
    .join-form .join-form-choose select.sort-forum{
        min-height: 5rem;
        font-size: 2rem;
    }
    .join-form .join-form-choose p{
        font-size: 2rem;
    }
}

.message-bottom-button{
    width: fit-content;
    margin: 2rem auto 0 auto;
}

.conference-banner{
    padding: 5rem 0;
    min-height: 13.9rem;
    text-align: center;
    background-color: #003A3E;
}
.conference-banner .title,
.conference-banner .title a{
    color: #FFF;
    font-weight: 400;
}

.conference-slide-item{
    width: 100%;
    display: flex;
    position: relative;
}

.conference-slide-item img{
    width: 100%;
    height: 42rem;
    object-fit: cover;
}

.conference-slide-item .caption{
    padding: 4rem;
    background-color: rgba(21,21,21,.8);
    position: absolute;
    bottom: 0;
    left: 0;
}

.conference-slide-item .caption .title{
    color: #FFF;
    font-weight: 400;
}

.conference-videos{
    display: grid;
    gap: 4rem;
    grid-template-columns: repeat(2, 1fr);
}

.conference-videos .video,
.about20years-videos .video{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56%;
}
.conference-videos .video iframe,
.about20years-videos .video iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.conference-main-content{
    padding-bottom: 8rem;
}

.conference-title{
    text-align: center;
    font-weight: bold;
    padding-bottom: 2.8rem;
    font-size: 4.2rem;
    margin-bottom: 4rem;
    line-height: 1.4;
    position: relative;
    color: #121212;
}

.conference-title::after {
    content: '';
    z-index: 1;
    position: absolute;
    bottom: 1.4rem;
    left: 0;
    width: 100%;
    height: .3rem;
    background-color: rgba(203, 205, 205, .4);
}

.conference-title::before{
    content: '';
    z-index: 2;
    position: absolute;
    bottom: 1.4rem;
    left: -webkit-calc(50% - 5.6rem);
    left: calc(50% - 5.6rem);
    width: 11.2rem;
    height: .3rem;
    background-color: #002C33;
}

.conference-videos{
    margin-bottom: 5rem;
}

.recent-articles{
    padding-top: 7rem;
    padding-bottom: 7rem;
    background-color: #f4f5f5;
}

.recent-articles .btn-base.btn-outline{
    border-width: 2px;
    min-width: 30rem;
}

.about20years-table-content{
    font-size: 1.8rem;
}

.about20years-table-content a{
    display: block;
    text-decoration: underline;
    font-size: 1.8rem;
    color: #003a3e;
}

.about20years-main-content,
.tokyo-beijing-main-content{
    padding-top: 3rem;
    padding-bottom: 4rem;
}

.about20years-title,
.tokyo-beijing-title{
    font-size: 2.8rem;
    color: #3E7472;
    font-weight: bold;
    margin-bottom: 2rem;
}

.tokyo-beijing-title span{
    font-size: 4.2rem;
}

.midori{
    background-color: #eaf6d8;
    border: 1px solid #3E7472;
    padding: 2.8rem 5rem;
    font-size: 1.8rem;
    margin-bottom: 4rem;
}
.about20years-videos{
    max-width: 80rem;
    margin: 0 auto 8rem;
}
.about20years-videos .video{
    margin-bottom: 4rem;
}

.about20years-table-content{
    padding-top: 2rem;
    margin-bottom: 8rem;
}

.about20years-content-item{
    margin-bottom: 6rem;
}

.about20years-content-item .back-link a{
    text-decoration: underline;
    color: #003a3e;
}

.about20years-content-item .title{
    margin-bottom: 4rem;
    font-weight: 400;
}

.about20years-content-item .content h3{
    font-weight: 400;
    position: relative;
    padding-bottom: 1rem;
    margin-bottom: 2rem;
}

.about20years-content-item .content p{
    margin-bottom: 2rem;
    font-size: 1.8rem;
}

.about20years-content-item .content p:last-child{
    margin-bottom: 0;
}

.about20years-content-item .content h3::before{
    position: absolute;
    left: 0;
    bottom: 0;
    content: '';
    width: 5.6rem;
    height: .3rem;
    background-color: #3E7472;
}

.conference-about-item{
    padding: 3rem 5rem;
    margin-left: -2rem;
    margin-right: -2rem;
    margin-bottom: 5rem;
}

.conference-about-item h3 span{
    font-size: 2rem;
}

.conference-about-item.cyan{
    background-color: #e0f9f9;
    border: 1px solid #8fdbdb;
    padding: 3rem 7rem;
}

.conference-about-item.white{
    border: 1px solid #d8d9d9;
    background-color: #FFF;
    padding: 3rem 7rem;
}

.conference-about-item h3{
    position: relative;
    padding-bottom: 2rem;
    font-size: 2.5rem;
    line-height: 1.5;
    font-weight: 400;
    margin-bottom: 4rem;
}
.conference-about-item h3:before{
    position: absolute;
    left: 0;
    bottom: 0;
    content: '';
    width: 5.6rem;
    height: .3rem;
    background-color: #3E7472;
}

.conference-about-item .content{
    font-size: 1.8rem;
    display: inline-block;
    width: 100%;
}

.conference-about-item .content p{
    margin-bottom: 2rem;
}

.conference-about-item .content .note-float-right{
    margin-left: 2rem;
    margin-bottom: 2rem;
}

.conference-about-item .content .note-float-left{
    margin-right: 2rem;
    margin-bottom: 2rem;
}

.conference-about-item h4{
    clear: both;
    font-size: 2.4rem;
    padding-bottom: 1.3rem;
    border-bottom: 1px solid #d8d9d9;
    color: #3E7472;
    font-weight: 400;
}

.conference-nav{
    background-color: #002C33;
    /*border-bottom: 4px solid #087a47;*/
}

.conference-menu{
    display: flex;
    padding: 0;
    list-style: none;
    justify-content: center;
}

.conference-menu > li{
    min-width: 10%;
    position: relative;
}

.conference-menu > li > a{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem 1.4rem;
    color: #fff !important;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: .1rem;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    transition: .3s all;
}

.conference-menu > li:hover > a{
    background-color: #3E7472;
}

.conference-menu .sub-menu{
    list-style: none;
    padding: 0;
    z-index: 1000;
    visibility: hidden;
    position: absolute;
    margin: 5.1rem 0 0;
    width: 25rem;
    background: #fff;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    border-top: solid 1px #d1d1d1;
    border-bottom: solid 1px #d1d1d1;
    border-left: solid 1px #d1d1d1;
    border-right: solid 1px #d1d1d1;
    opacity: 0;
    display: flex;
    flex-direction: column;
}
.conference-menu .sub-menu > li{
    position: relative;
    box-sizing: content-box;
    display: block;
    margin: 0;
    width: 100%;
    border-bottom: solid 1px #d1d1d1;
}
.conference-menu .sub-menu > li:last-child{
    border-bottom: 0;
}

.conference-menu .sub-menu > li > a{
    display: block;
    position: relative;
    margin: 0;
    padding: 1.2rem 2.4rem 1.2rem 1.2rem;
    height: auto;
    min-height: 2.4rem;
    background-color: #fff;
    font-size: 1.5rem;
    letter-spacing: 0;
    text-align: left;
    color: #121212;
    font-weight: bold;
    line-height: 1.5;
}

.conference-menu .sub-menu > li > a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 1.2rem;
    margin-top: -3px;
    width: 1rem;
    height: 1rem;
    border-top: solid 2px #3caf7b;
    border-right: solid 2px #3caf7b;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}



.conference-menu .has-sub-menu:hover .sub-menu{
    visibility: visible;
    margin: 0 0 0;
    opacity: 1;
}

.conference-menu-btn{
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    padding: 2rem;
    background-color: #3E7472;
    color: #fff;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    display: none;
}

.conference-menu-btn:before{
    content: "+";
    position: absolute;
    top: 50%;
    margin-top: -1.5rem;
    left: auto;
    right: 1.5rem;
    width: 4rem;
    height: 4rem;
    text-align: center;
    font-size: 3rem;
    line-height: 1;
}

.conference-menu-btn.active::before {
    content: "-";
}

blockquote{
    padding: 1rem 2rem;
    margin: 0 0 2rem;
    font-size: 1.8rem;
    border-left: 0.5rem solid #eee;
}

pre {
    display: block;
    margin: 2rem 0;
    font-size: 1.4rem;
    line-height: 1.42857143;
    color: #333;
    word-break: break-all;
    word-wrap: break-word;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 2rem;
    clear: both;
    white-space: normal;
}

.container .container-sm{
    padding-left: 0;
    padding-right: 0;
}

.tokyo-conference-title{
    color: #3E7472;
    font-size: 2.4rem;
    letter-spacing: 0;
    margin-bottom: 3rem;
    margin-top: 2rem;
}

.tokyo-conference-content{
    margin-bottom: 3rem;
    font-size: 1.8rem;
}

.tokyo-conference-content p:not(:last-child){
    margin-bottom: 2.5rem;
}

.conference-main-content .ao{
    margin: 0 0 3rem;
}

.conference-main-content .ao h2{
    color: #3E7472;
    font-size: 2.8rem;
    line-height: 1.5;
    margin-bottom: 2rem;
}

.conference-main-content .ao .names{
    font-size: 1.8rem;
}

.tokyo-conference-about-content h2{
    font-size: 2.8rem;
    color: #3E7472;
    margin-bottom: 4rem;
    margin-top: 4rem;
    letter-spacing: 0;
}

.tokyo-conference-about-content p{
    font-size: 1.8rem;
    margin-bottom: 2.5rem;
}

.tokyo-conference-about-content h3{
    position: relative;
    padding-bottom: 2rem;
    font-size: 2.5rem;
    line-height: 1.5;
    font-weight: 500;
}

.tokyo-conference-about-content h3:before{
    position: absolute;
    left: 0;
    bottom: 0;
    content: '';
    width: 5.6rem;
    height: .3rem;
    background-color: #3E7472;
}

.tokyo-conference-about-content .note-float-right{
    margin-left: 2rem;
}

.btn-underline{
    font-size: 2.4rem;
    font-weight: 400;
    padding: 0.3rem 2.5rem;
    position: relative;
    display: inline-flex;
}

.btn-underline:before,
.btn-underline:after{
    content: '';
    height: 0;
    width: 100%;
    bottom: 0;
    left: 0;
    position: absolute;
    display: block;
    border-bottom: 1px solid #707070;
    transition: all 0.3s;
}
.btn-underline:hover{
    color: #3E7472;
}
.btn-underline:hover:before{
    opacity: 0;
    border-color: #3E7472;
}
.btn-underline:hover:after{
    border-color: #3E7472;
}

.discussion-item{
    margin-bottom: 4.3rem;
}

.discussion-item .top-wrap{
    margin-bottom: 2.2rem;
    position: relative;
    border-radius: 0.4rem;
    display: flex;
    overflow: hidden;
}

.discussion-item .top-wrap .cat{
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    padding: 0.8rem 1rem;
    line-height: 1.4;
    background-color: #3E7471;
    font-size: 1.2rem;
    font-weight: bold;
    color: #FFF;
}

.discussion-item .title{
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.discussion-item .title a{
    display: block;
}

.discussion-item .title.title-category {
    color: #3E7472;
    margin-bottom: 0.6rem;
    font-size: 1.8rem;
}

.discussion-item .date{
    font-size: 1.6rem;
    color: #707070;
    font-style: italic;
}

.hero-slider-wrap{
    overflow: hidden;
    padding-left: 35rem;
    padding-right: 35rem;
}

.hero-slider{
    overflow: visible;
    width: 100%;
    display: flex;
}

.header-bottom-sp .menu-bottom{
    display: flex;
    list-style: none;
    align-items: center;
    justify-content: center;
    padding: 1.6rem 0 3.5rem;
}
.header-bottom-sp .menu-bottom li{
    padding: 0 3.4rem;
    border-right: 1px solid #121212;
}

.header-bottom-sp .menu-bottom li:last-child{
    border-right: 0;
}

.header-bottom-sp .menu-bottom li a{
    font-size: 2.4rem;
    font-weight: bold;
}

.title-line{
    display: flex;
    align-items: flex-end;
    margin-bottom: 6rem;
}
.title-line h2{
    line-height: 1;
}
.title-line h2 + span{
    line-height: 1;
    margin-right: 1rem;
}
.title-line .line{
    flex: 1;
}

.forum-actors{
    display: grid;
    gap: 4rem;
    grid-template-columns: repeat(2, 1fr);
    background: #FFF;
    padding: 4rem;
}

.actor-item .position{
    display: inline-flex;
    padding: 0.5rem 2rem;
    border: 1px solid #3E7472;
    border-radius: 0.5rem;
    color: #3E7472;
    margin-bottom: 1rem;
    font-weight: bold;
}

.actor-item .actor-wrap{
    display: flex;
    gap: 4rem;
}

.actor-item .actor-wrap .avatar{
    width: 40%;
}
.actor-item .actor-wrap .information{
    flex: 1;
}
.actor-item .actor-wrap .name{
    font-weight: bold;
    color: #3E7472;
    font-size: 2.4rem;
    margin-bottom: 1.5rem;
}

.ratio.ratio-130{
    padding-bottom: 130%;
}

.do-tank{
    padding: 10rem 0;
}

.do-tank .do-tank-wrap{
    display: flex;
    gap: 6rem;
}

.do-tank .content-left{
    width: calc(52% - 6rem);
    font-size: 2rem;
}
.do-tank .content-left p:not(:last-child){
    margin-bottom: 2.5rem;
}

.do-tank .image-right{
    width: 48%;
}

.do-tank .section-title-line{
    margin-bottom: 6rem;
}

@media(max-width: 1023px){
    .do-tank{
        padding: 8rem 0;
    }
    .do-tank .section-title-line{
        font-size: 3.6rem;
        margin-bottom: 4rem;
    }
    .do-tank .do-tank-wrap{
        flex-direction: column-reverse;
        gap: 3rem;
    }
    .do-tank .content-left{
        width: 100%;
        font-size: 2.4rem;
    }
    .do-tank .image-right{
        width: 100%;
    }
    .forum-actors{
        grid-template-columns: repeat(1, 1fr);
        padding: 2.4rem;
    }
    .actor-item .actor-wrap{
        gap: 2rem;
    }

    .actor-item .actor-wrap .desc{
        font-size: 2.4rem;
    }

    .conference-banner .title{
        font-size: 4.8rem;
    }
    .conference-title{
        font-size: 4rem;
    }
    .recent-articles .btn-base.btn-outline{
        border-width: 1px;
    }
    .conference-videos{
        grid-template-columns: repeat(1, 1fr);
    }
    .conference-slide-item{
        display: flex;
        flex-direction: column;
        height: auto;
    }
    .conference-slide-item .caption{
        flex: 1;
        position: relative;
        background-color: rgba(21,21,21,0.8);
    }
    .about20years-title, .tokyo-beijing-title{
        font-size: 3.6rem;
    }
    .about20years-main-content, .tokyo-beijing-main-content{
        padding-top: 6rem;
        padding-bottom: 6rem;
    }
    .conference-about-item{
        margin-left: 0;
        margin-right: 0;
        padding: 4rem;
    }
    .conference-about-item .content img{
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    .conference-about-item .content{
        font-size: 2.4rem;
    }
    .conference-about-item h3{
        font-size: 3.2rem;
    }
    .conference-about-item .content .note-float-left,
    .conference-about-item .content .note-float-right{
        width: 100% !important;
    }
    .conference-about-item.cyan,
    .conference-about-item.white{
        padding: 3rem 4rem;
    }
    .conference-menu-btn{
        display: block;
    }
    .conference-nav{
        display: none;
    }
    .conference-nav .container{
        padding: 0;
    }
    .conference-menu{
        display: block;
        background-color: #3E7472;
    }
    .conference-menu li{
        width: 100%;
    }
    .conference-menu-btn.active + .conference-nav{
        display: block;
    }
    .conference-menu > li > a{
        justify-content: flex-start;
        font-size: 2rem;
        padding: 2rem;
        border-bottom: 1px solid #FFF;
        position: relative;
    }
    li.has-sub-menu > a:before{
        content: "";
        position: absolute;
        top: 50%;
        right: 2.5rem;
        margin-top: -1rem;
        width: 1.5rem;
        height: 1.5rem;
        border-bottom: solid 2px #fff;
        border-right: solid 2px #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .conference-menu .sub-menu{
        border: 0;
    }
    .has-sub-menu .sub-menu{
        display: none;
        margin: 0;
    }
    .has-sub-menu.active .sub-menu{
        visibility: visible;
        margin: 0 0 0;
        opacity: 1;
        display: block;
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
    }
    .conference-menu .sub-menu > li > a{
        font-size: 2rem;
        padding: 2rem 3rem 2rem 2rem;
    }
    .conference-menu .sub-menu > li > a::before{
        right: 2rem;
        width: 1.5rem;
        height: 1.5rem;
    }
    .about20years-content-item .content p{
        font-size: 2.4rem;
    }
    .about20years-content-item .content h3{
        font-size: 3rem;
    }
    .midori{
        font-size: 2.4rem;
        padding: 2.8rem 4rem
    }
    .about20years-table-content{
        font-size: 2.4rem;
    }
    .about20years-table-content a{
        font-size: 2.4rem;
    }
    blockquote{
        font-size: 2.4rem;
        margin-bottom: 2.5rem;
    }
    pre{
        font-size: 2rem;
        padding: 1.5rem;
        margin-bottom: 2rem;
    }
    .tokyo-conference-title{
        font-size: 3rem;
    }
    .tokyo-conference-content{
        font-size: 2.4rem;
    }
    .conference-main-content .ao h2{
        font-size: 3.2rem;
    }
    .conference-main-content .ao .names{
        font-size: 2.4rem;
    }
    .tokyo-conference-about-content p{
        font-size: 2.4rem;
    }
    .tokyo-conference-about-content h2{
        font-size: 3.2rem;
    }
    .tokyo-conference-about-content h3{
        font-size: 2.8rem;
    }
    .tokyo-conference-about-content img{
        margin-bottom: 3rem;
    }
    .tokyo-conference-about-content .note-float-right{
        width: 100%;
        margin-left: 0;
    }
    .container-sm{
        padding-left: 2.4rem;
        padding-right: 2.4rem;
    }
    .form-desc{
        font-size: 2rem;
    }
    .discussion-item .top-wrap{
        margin-bottom: 3.4rem;
    }
    .discussion-item .title{
        font-size: 3rem;
        line-height: 1.6;
    }
    .discussion-item .title.title-category {
        font-size: 2.6rem;
        line-height: 1.6;
    }
    .discussion-item .date{
        font-size: 2.4rem;
    }
    .interview .title-line{
        padding: 3rem 2rem 0;
    }
    .discussion-item .top-wrap .cat{
        padding: 1.6rem 1.8rem;
        font-size: 2.4rem;
    }
    .hero-slider-wrap{
        padding-left: 0;
        padding-right: 0;
    }
    .hero-slider .slide-item{
        padding-left: 0;
        padding-right: 0;
    }
    .caption>.caption-topic{
        padding: 0.6rem 2.4rem;
        font-size: 2.4rem;
    }
    .caption>.caption-detail{
        font-size: 4rem;
    }
    .slide-item-content:after{
        height: 40rem;
    }
    .hero-slider-wrap{
        margin-top: 0;
    }
    .hero-slider{
        margin-bottom: 0;
    }
    .hero-slider .swiper-pagination .swiper-pagination-bullet{
        margin-left: 0.8rem;
        margin-right: 0.8rem;
    }
    .header-wrap .lp-page{
        display: none;
    }
    .discussion-search .post-type-wrap a{
        font-size: 2rem;
    }

    .title-line{
        display: block;
    }
    .title-line h2{
        line-height: 1.8;
    }
}

.three-conferences{
    padding: 12rem 0 6rem;
}

.three-conferences .section-title-line{
    margin-bottom: 6rem;
}
.conference-item{
    margin-bottom: 6rem;
}
.conference-item .title{
    font-size: 3rem;
    color: #00893f;
    margin-bottom: 2rem;
}
.conference-item .item-wrap{
    display: flex;
    gap: 4rem;
    flex-wrap: wrap;
    /* align-items: flex-start; */
}
.conference-item:nth-child(2n) .item-wrap{
    flex-direction: row-reverse;
}
.conference-item .item-wrap .item-left{
    background-color: #f1f1f1;
    padding: 4rem;
    font-size: 2.2rem;
    width: calc(50% - 2rem);
}
.conference-item .item-left p:not(:last-child){
    margin-bottom: 2.5rem;
}
.conference-item .item-wrap .item-right{
    width: calc(50% - 2rem);
    font-size: 2rem;
}

.conference-item .item-right img{
    width: 100%;
    object-fit: cover;
    margin-bottom: 1.5rem;
}

.conference-item .item-right .bx{
    background-color: #e0f9f9;
    padding: 2rem;
    clear: both;
    margin-top: 1.5rem;
}

.global-recognition{
    padding: 10rem 0;
    background-color: #f1f1f1;
}

.global-recognition .section-title-line{
    margin-bottom: 4rem;
}

.g20-title{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    color: #00893f;
    font-size: 3rem;
    margin-bottom: 3rem;
}

.g20-title .coc{
    max-height: 6rem;
}

.global-recognition .desc{
    font-size: 2.4rem;
    letter-spacing: 0;
}

.coc-members{
    padding: 4rem;
    background-color: #ffffff;
    border: 1px solid #3E7472;
    margin-top: 4rem;
}

.coc-members .title{
    position: relative;
    margin-bottom: 3rem;
    padding-bottom: 2rem;
}

.coc-members .title:after{
    content: '';
    height: 2px;
    width: 10rem;
    display: block;
    background-color: #3E7472;
    left: 0;
    bottom: 0;
    position: absolute;
}

.coc-members .title span{
    font-size: 1.6rem;
    font-weight: 400;
}

.member-grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.members-item a{
    font-weight: bold;
    color: rgb(0, 138, 63);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.restore-japanese-democracy{
    padding: 10rem 0 0;
}

.restore-japanese-democracy .section-title-line{
    margin-bottom: 6rem;
}

.restore-japanese-democracy .restore-wrap{
    display: grid;
    gap: 4rem;
    grid-template-columns: repeat(2, 1fr);
}

.restore-japanese-democracy .content-left{
    font-size: 2.4rem;
}

.restore-japanese-democracy .content-left p:not(:last-child){
    margin-bottom: 2.5rem;
}

.restore-japanese-democracy .content-right img{
    margin-bottom: 2rem;
}

@media(max-width: 1023px){
    .restore-japanese-democracy .restore-wrap{
        grid-template-columns: repeat(1, 1fr);
    }
    .conference-item .item-wrap{
        flex-direction: column-reverse !important;
    }
    .conference-item .item-wrap .item-left,
    .conference-item .item-wrap .item-right{
        width: 100%;
        font-size: 2.4rem;
    }
    .g20-title{
        flex-direction: column;
    }
    .global-recognition{
        padding: 8rem 0;
    }
    .coc-members .title span{
        display: block;
    }
    .member-grid{
        grid-template-columns: repeat(1, 1fr);
    }
}

/********Support Us Update 27-06*******/
.support-us-desc{
    padding: 6rem 0 10rem;
}

.support-us-desc .desc{
    font-size: 2rem;
    margin-bottom: 5rem;
}

.btn-support-us{
    padding: 1rem 3rem 1rem 5rem;
    position: relative;
    background-color: #036;
    color: #FFF;
    font-weight: bold;
    font-size: 2.4rem;
    border-radius: 4rem;
    display: inline-flex;
    min-height: 7.5rem;
    align-items: center;
    justify-content: center;
    gap: 3rem;
    transition: all 0.2s;
    text-align: center;
}

.btn-support-us .icon{
    width: 4rem;
    height: 4rem;
    position: relative;
    right: 0;
    transition: all 0.2s;
}

.btn-support-us:hover{
    color: #FFF;
    opacity: 0.9;
}

.btn-support-us:hover .icon{
    right: -1rem;
}

.hometown-tax{
    margin-bottom: 10rem;
}

.hometown-tax .section-title-line{
    margin-bottom: 5rem;
}

.hometown-tax-box{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem;
    margin-bottom: 6rem;
}

.hometown-tax-box .desc{
    font-size: 2rem;
    margin-bottom: 3rem;
}

.hometown-tax-note span{
    border-bottom: 2px solid #00893f;
    display: inline-block;
    padding-bottom: 0.5rem;
    font-size: 2.8rem;
    font-weight: 600;
}

.donate-speech-npo{
    padding: 10rem 0;
    background-color: #f1f1f1;
}

.donate-speech-npo .section-title-line{
    margin-bottom: 5rem;
}

.list-donate-types{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem;
    padding-left: 8rem;
    padding-right: 8rem;
}

.donate-type-item{
    background-color: #FFF;
}

.donate-type-item .thumb{
    position: relative;
    padding-bottom: 60%;
    height: 0;
}

.donate-type-item .thumb:after{
    content: '';
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    background-color: rgba(0,0,0,0.7);
    position: absolute;
    z-index: 1;
}

.donate-type-item .thumb .absolute-title{
    position: absolute;
    width: 100%;
    padding: 0 3rem;
    z-index: 2;
    color: #FFF;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    text-align: center;
    font-size: 2.4rem;
}

.donate-type-item .thumb .absolute-title span{
    font-size: 2.8rem;
}

.donate-type-item .thumb img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
}

.donate-type-item .caption{
    padding: 3rem;
}

.donate-type-item .features{
    list-style: none;
    padding-left: 0;
    margin-left: 10rem;
    margin-bottom: 3rem;
}

.donate-type-item .features .icon{
    width: 4rem;
    height: 4rem;
}
.donate-type-item .features li{
    display: flex;
    align-items: center;
    font-size: 2rem;
    gap: 1rem;
    margin-bottom: 1rem;
}

.donate-type-item .features li span{
    flex: 1;
}

.donate-type-item .btn-more{
    border-radius: 1rem;
    padding: 1rem 4rem;
    font-size: 2rem;
    font-weight: bold;
    color: #3E7472;
    border: 2px solid #3E7472;
    display: inline-flex;
    transition: all 0.2s;
}

.donate-type-item .btn-more:hover{
    color: #FFF;
    background-color: #3E7472;
}

.donate-type-item .btn-more.green{
    color: #00893f;
    border-color: #00893f;
}

.donate-type-item .btn-more.green:hover{
    color: #FFF;
    background-color: #00893f;
}

.donate-type-item .note{
    text-align: center;
    margin-top: 1rem;
    font-size: 2rem;
}

.hometown-tax-box .btn-base{
    padding: 1rem 3rem;
}

.other-donations{
    padding: 10rem 0;
}

.list-donations{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
    margin-top: 4rem;
}

.other-donate-item{
    border-radius: 2rem;
    overflow: hidden;
    padding: 5rem 3rem;
    position: relative;
    background-position: center center;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

.other-donate-item:after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 58, 62, .8);
    position: absolute;
    left: 0;
    top: 0;
}
.other-donate-item .caption{
    position: relative;
    z-index: 1;
    color: #FFF;
}

.other-donate-item .caption .title{
    text-align: center;
    font-size: 2.8rem;
}

.other-donate-item .more{
    position: absolute;
    bottom: 2rem;
    right: 2rem;
    color:white;
    z-index: 1;
}

.donation-tax-info .section-title-line{
    margin-bottom: 5rem;
}

.support-us-message .btn-base{
    margin-top: 4rem;
    height: 6rem;
    border-radius: 3rem;
    padding: 1rem 4rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.furusato-tax-support{
    margin-bottom: 10rem;
}

.furusato-tax-support .section-title-line{
    margin-bottom: 5rem;
}

.furusato-tax-support .content-center{
    text-align: center;
}

.furusato-tax-support .text-content-bottom{
    font-size: 2.4rem;
    margin-bottom: 4rem;
}

.furusato-tax-support .content-center img{
    max-width: 100%;
}

.become-member-intro .intro-content{
    font-size: 2rem;
}

.donation-agency{
    padding: 8rem 0 10rem;
}

.donation-agency .donation-agency-content-sp{
    margin: 0 auto 6rem;
    width: fit-content;
    font-size: 2rem;
}

.da-content-box .support-us-form-title{
    margin-bottom: 3rem;
}

@media(max-width: 1023px){
    .hometown-tax-box{
        grid-template-columns: repeat(1, 1fr);
    }
    .donate-speech-npo .section-title-line .line:first-child{
        display: none;
    }
    .list-donate-types{
        grid-template-columns: repeat(1, 1fr);
        padding-left: 0;
        padding-right: 0;
    }
    .donate-type-item .features li{
        font-size: 2.4rem;
    }
    .donate-type-item .btn-more{
        font-size: 2.4rem;
    }
    .donate-type-item .features .icon{
        width: 5rem;
        height: 5rem;
    }
    .list-donations{
        grid-template-columns: repeat(1, 1fr);
    }
    .reason-donation .other-donate-item {
        min-height: 24.6rem;
    }
    .other-donate-item{
        padding: 6rem 3rem;
    }
    .other-donate-item .caption .more{
        bottom: -4rem;
    }
    .other-donate-item .caption .title{
        font-size: 3.2rem;
    }
    .schedule-event-item .more{
        display: block;
    }
    .schedule-event-item .more .note{
        text-align: center;
        position: relative;
        bottom: 0;
        width: 100%;
        display: block;
        margin-top: 1rem;
        font-size: 2rem;
    }
    .become-member-intro .intro-content,
    .become-a-member-page .become-member-intro ,
    .become-a-member-page .representative-message .message-content,
    .become-a-member-page .membership-types .plan-desc{
        font-size: 2.4rem;
    }
    .donation-agency .donation-agency-content-sp{
        font-size: 2.4rem;
    }
    .notarized-will-donation .notarized-will-card.fd-box-content{
        padding: 4rem;
    }
    .notarized-will-card-btn .button-item .note{
        font-size: 2rem;
    }
    .support-us-message .message-body .message-body-content{
        font-size: 2.4rem;
    }
    .support-us-message .text-right{
        text-align: center;
    }
}

.block-header .section-title-line{
    margin-bottom: 3rem;
    font-size: 3.2rem;
}
.block-header .support-us-subtitle{
    font-size: 2.2rem;
    margin-bottom: 3rem;
}

.furusatodaikou .member-form,
.donation .member-form{
    background: #f3f5f7;
    padding: 4rem 5rem;
}

.furusato-guest-form .item-update-info{
    padding: 0;
}

.form-bottom-contact{
    font-size: 2rem;
    margin-top: 3rem;
}

.form-bottom-contact a{
    color: #00a2bf
}

.furusato-form-action,
.donation-form-action{
    margin-top: 5rem;
}

.furusato-form-action .btn-base.btn-alt,
.donation-form-action .btn-base.btn-alt{
    min-width: 42rem;
}

.form-group{
    margin-bottom: 2rem;
}

.form-control{
    font-size: 2.4rem;
    padding: 1rem 1.5rem;
    width: 100%;
    height: 4.9rem;
    border: 1px solid #707070;
    transition: all .3s;
    position: relative;
}

.form-label{
    display: block;
    font-size: 2.4rem;
    color: #121212;
}
.form-label span{
    background-color: red;
    color: #fff;
    font-size: 1.7rem;
    border-radius: 8px;
    padding: 2px 5px;
    margin-left: 6px;
}

.form-label .note{
    background-color: transparent;
    padding: 0;
    color: #121212;
    display: inline-block;
}

.donation-form-desc{
    font-size: 2.8rem;
    margin-bottom: 3rem;
}

.donation-confirm-form .support-us-form-title{
    margin-bottom: 4rem;
    margin-top: 5rem;
}

.donation-confirm-form .form-submit{
    margin-top: 4rem;
}

.form-col-2{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
}

.form-group.w-70{
    width: 70%;
}

select.form-control{
    padding: 1rem 1.5rem;
    font-size: 2.4rem;
    background: url(../images/component/＞.png) no-repeat right;
    appearance: none;
    background-position-x: calc(100% - 2rem);
    -webkit-appearance: none;
    color: #222;
    border: 1px solid #707070;
    border-radius: 0;
    line-height: 1;
    background-size: 2rem 1.5rem;
}

.form-radio {
    margin-left: 5.5rem;
    display: flex;
    align-items: center
}

.form-radio input {
    width: auto
}

.form-radio label {
    display: inline-block;
    cursor: pointer;
    margin-right: 7rem;
    font-weight: 500;
    font-size: 2rem;
}

.form-radio .radio {
    width: 2.4rem;
    height: 2.4rem;
    margin-right: 1rem
}

.furusato-form-body,
.white-box-body {
    padding: 10rem 14rem;
    background-color: #fff;
}

.furusato-form-body .furusato-form-title,
.white-box-body .white-box-title{
    margin-bottom: 6rem;
    color: #3E7472;
    font-size: 2.8rem;
    font-weight: bold;
}
.form-radio.receive-gifts{
    display: block;
}

.radio-field > input{
    position: relative;
    top: 0.7rem;
}
.radio-field{
    margin-top: 1rem;
    font-size: 1.6rem;
}
.form-radio .radio-field label{
    font-size: 1.6rem;
}

.field-read-item .label{
    font-size: 2.4rem;
    color: #121212;
}
.field-read-item .value{
    font-size: 2rem;
}
.field-read-item{
    margin-bottom: 2rem;
}
.furusato-form .form-submit{
    text-align: center;
}
.btn-base.btn-form-edit{
    border-color: #3E7472;
    color: #3E7472;
    margin-right: 2rem;
    min-width: 25rem;
    min-height: 5.5rem;
}
.btn-base.btn-form-submit{
    min-width: 25rem;
    min-height: 5.5rem;
    border-radius: 3rem;
    padding: 1.1rem 2rem;
    line-height: 1.2;
}

.furusatodaikou-success-box .top-desc,
.donation-success-box .top-desc,
.success-box .top-desc{
    margin-bottom: 4rem;
    font-size: 2rem;
}

.donation-success-box .content02,
.success-box .content02{
    font-size: 2rem;
    margin-bottom: 4rem;
}

.furusatodaikou-success-box .content02 .support-us-form-title,
.donation-success-box .content02 .support-us-form-title,
.success-box .content02 .support-us-form-title{
    margin-bottom: 3rem;
}
.furusatodaikou-success-box .content02 ul,
.donation-success-box .content02 ul,
.success-box .content02 ul{
    margin-bottom: 4rem;
    font-size: 2rem;
}
.furusatodaikou-success-box .content03,
.donation-success-box .content03,
.success-box .content03{
    font-size: 2rem;
    border: 1px solid #d7d7d7;
    padding: 3rem;
    margin-bottom: 2rem;
}

.furusatodaikou-success-box .content03 .title-center,
.donation-success-box .content03 .title-center,
.success-box .content03 .title-center{
    text-align: center;
    font-weight: bold;
    margin-bottom: 1rem;
    font-size: 2.4rem;
}
.furusatodaikou-success-box .content03 .button-right,
.donation-success-box .content03 .button-right,
.success-box .content03 .button-right{
    text-align: right;
    margin-top: 1rem;
}
.btn-base.btn-sm{
    font-size: 2rem;
    min-width: 30rem;
    padding: 1.2rem 2rem;
    border-radius: 10rem;
}
.furusatodaikou-success-box .content04,
.donation-success-box .content04,
.success-box .content04{
    text-align: center;
    font-size: 2rem;
    margin-bottom: 4rem;
}

.furusatodaikou-success-box .content04 a,
.donation-success-box .content04 a,
.success-box .content04 a{
    color: #00a2bf;
}
.furusatodaikou-success-box .footer-bottom1,
.donation-success-box .footer-bottom1,
.success-box .footer-bottom1{
    text-align: center;
    margin-bottom: 2rem;
}
.furusatodaikou-success-box .footer-bottom1 a.btn-base,
.donation-success-box .footer-bottom1 a.btn-base,
.success-box .footer-bottom1 a.btn-base{
    min-width: 35rem;
}
.furusatodaikou-success-box .footer-bottom1 a:first-child,
.donation-success-box .footer-bottom1 a:first-child,
.success-box .footer-bottom1 a:first-child{
    margin-right: 2rem;
}
.furusatodaikou-success-box .footer-bottom2,
.donation-success-box .footer-bottom2,
.success-box .footer-bottom2{
    text-align: center;
}
.list-step-register .packet-step-ar:first-child .icon-arrow{
    display: none;
}
.packet-verify-email .corporation-verify-email .verify-email-desc{
    text-align: center;
}
.furusato-guest-form .support-us-form-title{
    margin-bottom: 4rem;
}
.donation-amount-form{
    max-width: 90rem;
    margin: 0 auto;
}

.donation-payment-method{
    text-align: center;
}
.donation-payment-method .payment-warp{
    justify-content: center;
}

.donation-payment-header .donation-payment-title{
    font-size: 4rem;
    margin-bottom: 3rem;
    color: #3E7472;
}

.donation-payment-header .donation-payment-sub-title{
    font-size: 3rem;
}

.donation-payment-header .donation-payment-note{
    font-size: 2.4rem;
}

.btn-base.btn-blue{
    background-color: #072e6d;
}
.donation-invoice-form{
    max-width: 80rem;
    margin: 0 auto;
}

.error-form-message{
    text-align: center;
    color: #ff0000;
    font-weight: 500;
    font-size: 2rem;
    margin-bottom: 2rem;
}

.request-success-box .content02{
    max-width: 75rem;
    margin: 0 auto 4rem;
}

.request-info-items{
    padding-left: 0 !important;
    list-style: none;
}

.request-info-items .request-info-item{
    display: flex;
}
.request-info-items .request-info-item .label{
    width: 18rem;
    font-weight: 500;
}
.request-info-items .request-info-item .value{
    flex: 1;
}
.mt-1{
    margin-top: 1rem;
}
.agenda-page.politics .agenda-intro-content-top p{
    margin-bottom: 2rem;
}

.agenda-intro-button-top{
    margin-bottom: 6rem;
}

.btn-base.btn-green-2{
    background-color: rgba(0,44,51,1);
}

.agenda-intro-button-top .btn-base{
    padding: 1.5rem 2rem;
    border-radius: 3.5rem;
    min-width: 50rem;
}

.btn-forum-more{
    border: 2px solid #3E7471;
    padding: 0.8rem 3rem;
    border-radius: 1rem;
    font-weight: bold;
    font-size: 1.8rem;
    color: #3E7471;
    display: inline-flex;
    margin-top: 3rem;
    justify-content: center;
    min-width: 20rem;
    transition: all 0.3s;
}
.btn-forum-more:hover{
    background-color: #3E7471;
    color: #FFF;
}

.conference-event .date{
    color: #3E7471;
    font-weight: 600;
}

@media(max-width: 1023px){
    .furusato-form-body,
    .white-box-body{
        padding: 4rem 5rem;
    }
    .member-form .form-submit button{
        min-width: 0;
        width: 100%;
    }
    .block-header .support-us-subtitle{
        margin-bottom: 2rem;
    }
    .form-col-2{
        grid-template-columns: 1fr;
        gap: 0;
    }
    .form-group{
        margin-bottom: 3rem;
    }
    .form-group.w-70{
        width: 100%;
    }
    .form-control{
        min-height: 6rem;
    }
    .address-note{
        font-size: 2rem;
    }
    .furusatodaikou-success-box .footer-bottom1 a:first-child{
        margin-right: 0;
        margin-bottom: 2rem;
    }
    .furusatodaikou-success-box .footer-bottom1 a.btn-base,
    .furusatodaikou-success-box .footer-bottom2 a.btn-base{
        min-width: 40rem;
    }
    .furusatodaikou-success-box .content04{
        font-size: 2.4rem;
    }
    .donation-payment-header .donation-payment-title{
        font-size: 3rem;
    }
    .donation-payment-header .donation-payment-sub-title{
        font-size: 2.8rem;
    }
    .choose-payment .payment-warp a, .choose-payment .payment-warp button{
        font-size: 2.2rem;
    }
    .furusatodaikou-success-box .footer-bottom1 a:first-child,
    .donation-success-box .footer-bottom1 a:first-child,
    .success-box .footer-bottom1 a:first-child{
        margin-right: 0;
        margin-bottom: 2rem;
    }
}

.conference-main-content .activity{
    padding-top: 0;
}
.sub-title-underline{
    color: #3E7471;
    font-size: 2.4rem;
    font-weight: bold;
}
.conference-section{
    margin-top: 8rem;
}
.list-companies{
    display: flex;
    max-width: 100rem;
    margin: 0 auto;
    gap: 4rem;
}
.list-companies .list-companies__item{
    flex: 1;
}

.conference-content{
    font-size: 2rem;
}

.forum-programs{
    margin-top: 8rem;
}

.line-header-text__underline span{
    font-size: 2.4rem;
    display: inline-flex;
    line-height: 1;
    bottom: -1rem;
    position: relative;
}

.list-programs{
    margin-top: 10rem;
}

.conf-program-item:not(:last-child){
    margin-bottom: 6rem;
}

.conf-program-item .day{
    position: relative;
    display: flex;
    align-items: center;
    gap: 3rem;
    margin-bottom: 2rem;
}

.conf-program-item .day:after{
    content: '';
    height: 1px;
    background: #3E7472;
    width: 100%;
    flex: 1;
    display: block;
}

.conf-program-item .day .day-label{
    display: inline-flex;
    padding: 1rem 2rem;
    font-size: 2.4rem;
    font-weight: bold;
    background: #3E7472;
    color: #FFF;
    width: 25rem;
    justify-content: center;
}

.conf-period-item{
    display: flex;
    gap: 10rem;
}

.conf-period-item:not(:last-child){
    margin-bottom: 5rem;
}

.conf-period-item .time-period{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 25rem;
    font-size: 2rem;
}

.conf-period-item .time-period .time{
    font-weight: bold;
}
.conf-period-item .time-period .title{
    color: #3E7472;
}

.conf-period-right{
    flex: 1;
}

.conf-list-events{
    padding-top: 4rem;
}

.tokyo-beijing-21st .conf-list-events {
    padding-top: 0;
}

.tokyo-beijing-21st .conf-period-right .session-detail_link {
    justify-content: flex-end;
}

.conf-event-item:not(:last-child){
    margin-bottom: 4rem;
}

.conf-event-item .event-header{
    display: flex;
    gap: 5rem;
    font-size: 1.8rem;
}

.conf-event-item .event-header .title{
    color: #3E7472;
    font-weight: 500;
}

.conf-list-people{
    padding-left: 20rem;
}

.conf-people-item{
    display: flex;
    gap: 5rem;
    margin-top: 2rem;
}

.conf-people-item .conf-people-cn{
    width: calc(100% - 15rem);
    background: rgba(255,0,0,0.07);
    padding: 2rem;
    font-size: 1.4rem;
    position: relative;
}
.conf-people-item .conf-people-jp{
    width: calc(100% - 15rem);
    font-size: 1.4rem;
    padding: 1.5rem 2rem;
    background: rgba(24, 79, 225, 0.07);
    position: relative;
}

.conf-people-item .conf-people-cn.empty,
.conf-people-item .conf-people-jp.empty{
    background-color: transparent;
}

.keynote-speaker{
    width: 50rem;
    display: flex;
    gap: 3rem;
    margin-left: 20rem;
}
.keynote-speaker .avatar{
    width: 10rem;
    min-height: 15rem;
}
.keynote-speaker .avatar img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.keynote-speaker .speaker-info{
    flex: 1;
}

.conf-people-item .conf-people-cn.has-avatar,
.conf-people-item .conf-people-jp.has-avatar{
    display: flex;
    padding: 0;
}

.conf-people-item .conf-people-cn.has-avatar .avatar,
.conf-people-item .conf-people-jp.has-avatar .avatar{
    width: 10rem;
    min-height: 15rem;
}

.conf-people-item .conf-people-cn.has-avatar .avatar img,
.conf-people-item .conf-people-jp.has-avatar .avatar img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.conf-people-item .conf-people-cn.has-avatar .p-info,
.conf-people-item .conf-people-jp.has-avatar .p-info{
    flex: 1;
    padding: 1.5rem 2rem;
}

.conf-people-item .conf-people-cn .p-name,
.conf-people-item .conf-people-jp .p-name{
    font-size: 2rem;
}

.conf-people-item .conf-people-cn .p-name span,
.conf-people-item .conf-people-jp .p-name span{
    font-size: 1.4rem;
}

.content-periods{
    padding-top: 2rem;
}
.content-periods span{
    display: inline-flex;
    padding: 1rem 2rem;
    border: 1px solid #333;
    min-width: 20rem;
    justify-content: center;
    margin-right: 3rem;
}
.content-periods span:last-child{
    margin-right: 0;
}

.pa-period-title{
    text-align: center;
    margin-bottom: 3rem;
    font-size: 2.6rem;
    color: #3E7472;
    font-weight: bold;
}

.pa-list-people{
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
}

.pa-period-item{
    margin-top: 8rem;
}

.pa-person-item{
    width: 14%;
}

.pa-person-item.ja{
    background: rgba(24, 79, 225, 0.07);
}
.pa-person-item.cn{
    background: rgba(255,0,0,0.07);
}

.pa-person-item.horizontal{
    width: 30%;
    display: flex;
}

.pa-person-item.horizontal .pa-person-image{
    width: 40%;
    padding-bottom: 50%;
}
.pa-person-item.horizontal .caption{
    flex: 1;
}


.pa-person-item .pa-person-image{
    position: relative;
    padding-bottom: 120%;
}
.pa-person-item .pa-person-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
}
.pa-person-item .caption{
    padding: 1rem;
    position: relative;
}

.pa-person-item .pa-person-desc{
    font-size: 1.2rem;
}

.pa-list-people.bottom{
    margin-top: 4rem;
}

.moderator-tag{
    position: absolute;
    right: 0;
    top: 0;
    background-color: #3E7472;
    color: #FFF;
    font-weight: bold;
    padding: 0.1rem 1rem;
    font-size: 1.4rem;
}

.pa-content-periods a,
.pa-content-periods span{
    display: inline-flex;
    padding: 1rem 2rem;
    border: 1px solid #333;
    min-width: 15rem;
    justify-content: center;
    margin-right: 2rem;
    margin-left: 2rem;
    margin-bottom: 2rem;
}

.forum-participants{
    margin-top: 8rem;
}

.pa-person-item .caption .pa-person-name span{
    font-size: 1.1rem;
}

.conference-tokyo__key-points .key-points__list.columns-3{
    grid-template-columns: repeat(3, 1fr);
    max-width: 120rem;
}

.sponsoring-organizations{
    margin-bottom: 10rem;
}

.list-sponsors{
    display: flex;
    gap: 4rem;
    flex-wrap: wrap;
}

.list-sponsors .list-sponsors__item{
    width: calc(50% - 2rem);
    padding: 2rem;
    border: 1px solid #ccc;
}

.list-sponsors__item .content{
    font-size: 1.6rem;
}

.list-sponsors__item .c-logo img{
    width: 13rem;
    height: 13rem;
    object-fit: contain;
    object-position: center;
}

.conference-tokyo__hero-title span{
    font-size: 80%;
}

.list-videos{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5rem;
}

.list-videos .video-item{
    position: relative;
    padding-bottom: 56%;
    height: 0;
}

.video-item iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    top: 0;
    left: 0;
}

.line-header__title{
    color: #3E7472;
    font-size: 3.6rem;
}

.conference-section.last{
    margin-bottom: 10rem;
}

.line-header-subtitle{
    font-size: 2rem;
    font-weight: 500;
}
.conference-faqs .qna-item .qna-question{
    min-height: 8rem;
}

.conference-faqs .qna-item .qna-question .question-bg .question-text{
    font-size: 2.2rem;
    padding-left: 2rem;
}

.conference-faqs .qna-item .qna-question .question-bg .question-icon{
    width: 5rem;
    min-width: 0;
    height: 5rem;
    margin-left: 3rem;
}
.conference-faqs .qna-item .qna-question .question-bg .btn-expand{
    margin-right: 2rem;
}
.conference-faqs .qna-item .qna-answer .answer-icon{
    left: 3rem;
}
.conference-faqs .qna-item .qna-answer .answer-icon .answer-icon-border{
    width: 5rem;
    height: 5rem;
}
.conference-faqs .qna-item .qna-answer .answer-text{
    padding: 3rem 4rem 3rem 10rem;
    font-size: 1.8rem;
}
.conference-faqs .qna-item .qna-question .question-bg .question-icon::after{
    font-size: 2.4rem;
}
.conference-faqs .qna-item .qna-answer .answer-icon .answer-icon-border::after{
    font-size: 2.4rem
}

.line-center .line{
    height: 3px;
    background-color: #777;
}

.timeline-item{
    width: 22rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
    position: relative;
}
.timeline-top .timeline-item:before{
    height: 5rem;
    content: '';
    width: 1px;
    display: block;
    position: absolute;
    top: 100%;
    left: calc(50% - 0.5px);
    background: #777;
}
.timeline-top .timeline-item:after{
    height: 1.6rem;
    content: '';
    width: 1.6rem;
    display: block;
    position: absolute;
    top: calc(100% + 4.4rem);
    left: calc(50% - 0.8rem);
    background: #008a3f;
}
.timeline-bottom .timeline-item:before{
    height: 5rem;
    content: '';
    width: 1px;
    display: block;
    position: absolute;
    bottom: 100%;
    left: calc(50% - 0.5px);
    background: #777;
}
.timeline-bottom .timeline-item:after{
    height: 1.6rem;
    content: '';
    width: 1.6rem;
    display: block;
    position: absolute;
    bottom: calc(100% + 4.4rem);
    left: calc(50% - 0.8rem);
    background: #3E7472;
}
.timeline-item .thumb{
    line-height: 0;
    margin-bottom: 1rem;
}
.timeline-bottom .timeline-item .thumb{
    margin-bottom: 0;
    margin-top: 1rem;
}
.timeline-item .caption{
    font-size: 1.4rem;
}
.timeline-item .year{
    text-align: center;
    display: flex;
    justify-content: center;
}
.timeline-item .year .year-label{
    font-size: 2rem;
    padding: 0.1rem 2rem;
    border: 1px solid #777;
    display: inline-flex;
}
.timeline-top,
.timeline-bottom{
    display: flex;
    gap: 4rem;
}
.timeline-bottom{
    padding-left: 13rem;
}

.line-center{
    padding: 5rem 0;
}
.current-year{
    position: relative;
}
.current-year .desc{
    position: absolute;
    width: 26rem;
    bottom: 120%;
    left: 50%;
    transform: translateX(-50%);
    color: #3E7472;
    font-size: 1.4rem;
    text-align: center;
    border: 1px solid #3E7472;
    border-radius: 1rem;
    font-weight: bold;
    padding: 1rem;
}
.current-year .desc span{
    font-size: 1.6rem;
}
.current-year .year{
    padding-top: 0.5rem;
}
.current-year .year-label{
    font-size: 2rem;
    padding: 0.5rem 2rem;
    border: 2px solid #3E7472;
    color: #3E7472;
}
.timeline-wrap{
    display: flex;
    align-items: center;
    gap: 3rem;
    justify-content: center;
}
.genron-npo-links .genron-npo-wrap .genron-npo-body{
    padding-left: 2rem;
    padding-right: 2rem;
    width: 100%;
    text-align: center;
    white-space: wrap;
}
@media(max-width: 1023px){
    .list-companies{
        flex-wrap: wrap;
    }
    .list-companies .list-companies__item{
        width: 100%;
        flex: unset;
    }
    .conf-period-item .time-period{
        flex-direction: row;
        width: 100%;
        gap: 4rem;
    }
    .conf-period-item{
        flex-wrap: wrap;
        gap: 3rem;
    }
    .conf-period-item .time-period .title,
    .conf-period-item .time-period .time{
        font-size: 2.4rem;
    }
    .conf-list-events{
        padding-top: 0;
    }
    .conf-list-people{
        padding-left: 0;
    }
    .conf-people-item{
        gap: 3rem;
    }
    .conf-people-item .conf-people-jp,
    .conf-people-item .conf-people-cn{
        font-size: 1.6rem;
    }
    .conf-event-item .event-header .title,
    .conf-event-item .event-header .note{
        font-size: 2.4rem;
    }
    .pa-person-item{
        width: 45%;
    }
    .pa-person-item .caption .pa-person-name{
        font-size: 2.4rem;
    }
    .pa-person-item .caption{
        padding: 2rem;
    }
    .pa-person-item .pa-person-desc{
        font-size: 1.8rem;
    }
    .moderator-tag{
        font-size: 2rem;
    }
    .pa-person-item.horizontal{
        width: 70%;
    }
    .pa-person-item .caption .pa-person-name span{
        font-size: 1.6rem;
    }
    .conference-tokyo__key-points .key-points__list.columns-3{
        grid-template-columns: repeat(2, 1fr);
    }
    .list-sponsors .list-sponsors__item{
        width: 100%;
    }
    .list-sponsors__item .content{
        font-size: 2.4rem;
    }
    .line-header-subtitle{
        font-size: 2.4rem;
    }
    .list-videos{
        grid-template-columns: repeat(1, 1fr);
    }
    .line-header-text__underline{
        letter-spacing: 0;
        font-size: 3.6rem;
    }
    .conference-faqs .qna-item .qna-question .question-bg .question-icon{
        margin-left: 0;
    }
    .conference-faqs .qna-item .qna-question .question-bg .btn-expand{
        margin-right: 0;
    }
    .conference-faqs .qna-item .qna-answer .answer-icon .answer-icon-border{
        margin-left: 0;
    }
    .conference-faqs .qna-item .qna-answer .answer-text{
        font-size: 2rem;
    }
    .conference-faqs .qna-item .qna-question .question-bg .question-text{
        font-size: 2.4rem;
    }
    .timeline{
        display: flex;
    }
    .timeline-top{
        flex-direction: column;
        flex: 1;
        align-items: flex-end;
    }
    .timeline-bottom{
        padding-left: 0;
        flex-direction: column;
        flex: 1;
    }
    .line-center{
        padding: 0 5rem;
    }
    .line-center .line{
        width: 1px;
        height: 100%;
    }
    .timeline-wrap{
        flex-direction: column;
    }
    .current-year{
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        justify-content: center;
        gap: 2rem;
    }
    .current-year .year-label{
        font-size: 2.4rem;
        font-weight: bold;
    }
    .current-year .desc{
        top: 0;
        left: 0;
        height: fit-content;
        font-size: 2rem;
        width: 40rem;
        padding: 2rem;
        position: relative;
        transform: translateX(0);
    }
    .current-year .desc span{
        font-size: 2.4rem;
    }
    .timeline-top .timeline-item{
        flex-direction: column-reverse;
    }
    .timeline-top .timeline-item .item{
        display: flex;
        flex-direction: column;
    }
    .timeline-bottom .timeline-item .item{
        display: flex;
        flex-direction: column-reverse;
        gap: 1rem;
    }
    .timeline-bottom .timeline-item .thumb{
        margin-top: 0;
    }
    .timeline-bottom{
        padding-top: 20rem;
    }
    .timeline-item{
        width: 90%;
    }
    .timeline-item .year .year-label{
        font-size: 2.4rem;
        justify-content: center;
        width: 100%;
    }
    .timeline-item .caption{
        font-size:1.8rem;
    }
    .timeline-top .timeline-item:before{
        width: 5rem;
        height: 1px;
        left: 100%;
        top: 2.4rem;
    }
    .timeline-top .timeline-item:after{
        top: 1.8rem;
        left: calc(100% + 4.4rem);
    }
    .timeline-bottom .timeline-item:before{
        width: 5rem;
        height: 1px;
        right: 100%;
        left: auto;
        top: 2.4rem;
    }
    .timeline-bottom .timeline-item:after{
        top: 1.8rem;
        right: calc(100% + 4.4rem);
        left: auto;
    }
    .keynote-speaker{
        margin-left: 10rem;
        width: 50rem;
    }
    .keynote-speaker .avatar{
        width: 14rem;
        min-height: 20rem;
    }
    .program-nav .conference-button{
        padding: 1rem 2rem;
        font-size: 2rem;
    }
    .about-report-item{
        width: 100%;
    }
}

.program-nav{
    display: flex;
    justify-content: center;
    gap: 2rem;
    margin-top: 4rem;
}

.donation-banner{
    position: relative;
    border-radius: 2rem;
    overflow: hidden;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 40rem;
    padding: 5rem 10rem;
    text-align: center;
}
.donation-banner:before{
    content: '';
    position: absolute;
    background-color: rgba(0,0,0,0.5);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.donation-banner .context{
    position: relative;
    z-index: 1;
    color: #FFF;
}
.donation-banner .context .title{
    font-size: 4.8rem;
    padding-top: 2rem;
    border-bottom: 2px solid #FFF;
    margin-bottom: 4rem;
}
.donation-banner .context .desc{
    font-size: 2.4rem;
}

.support-us-section{
    padding-top: 8rem;
}
.support-us-section.last{
    margin-bottom: 8rem;
}
.donation-methods{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6rem;
    padding-left: 10rem;
    padding-right: 10rem;
}
.donation-method-item{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 2rem;
    padding: 4rem;
    text-align: center;
    border: 1px solid #333;
}

.donation-method-item .title{
    font-size: 3.2rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #777;
    margin-bottom: 2rem;
}
.donation-method-item .desc{
    font-size: 2rem;
}
.donation-method-item .btn-base{
    border-radius: 0;
    padding: 1.2rem 3rem;
}

.register-link{
    margin-top: 4rem;
}
.register-link a{
    font-size: 2.4rem;
    color: #3E7472;
    border-bottom-color: #3E7472;
}
.thank-subtitle{
    font-size: 2.4rem;
    margin-top: -4rem;
    margin-bottom: 5rem;
}
.our-work-page .new-activities,
.our-work-page .nuclear-strategy{
    margin-top: 8rem;
}

.forum-note-top{
    font-size: 3.4rem;
    color: #3E7472;
    font-weight: bold;
}
.invite-member-note{
    padding-left: calc(50% + 1rem);
    margin-top: 2rem;
    text-align: left;
    font-size: 2rem;
}
.invoice-address-modal .modal-footer button{
    background-color: #3E7472;
    border: 0;
    color: #FFF;
    padding: 0.8rem 2rem;
    min-width: 13rem;
    border-radius: 3rem;
    font-weight: bold;
    font-size: 1.8rem;
}
.invoice-address-modal .modal-footer button.btn-close{
    background-color: #333333;
}

.student-card-field .upload-input {
    display: none;
}

.student-card-field .preview {
    margin-top: 1.5rem;
    display: none;
}

.student-card-field .preview img {
    max-width: 100%;
    width: auto;
    border-radius: 1rem;
    box-shadow: 0 0.2rem 0.8rem rgba(0,0,0,0.1);
    max-height: 20rem;
}
.student-card-field input[type=file]{
    border: 0;
    padding-left: 0;
}
.btn-base.upload-student-card{
    min-width: 25rem;
    padding: 1rem 3rem;
    border-radius: 3rem;
    font-size: 2rem;
}
.article-content a{
    text-decoration: underline;
    text-underline-offset: 0.2rem;
}
.normal_btn, .normal_btn_rev {
    clear: both;
    display: block !important;
    margin-left: auto;
    margin-right: auto;
    padding: .7rem 2rem;
    width: 80%;
    max-width: 27.2rem;
    border: 2px solid #3E7472;
    border-radius: 3rem;
    font-family: "Roboto", "sans-serif";
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
    text-align: center !important;
    text-decoration: none !important;
    transition: .3s all;
}
.normal_btn.large, .normal_btn_rev.large, .normal_btn2.large, .normal_btn2_rev.large, .normal_btn3.large, .normal_btn3_rev.large {
    width: 100%;
    max-width: 33.7rem;
}

.three-donations-component{
    padding-top: 5.7rem;
    padding-bottom: 4rem;
}

.three-donations{
    display: flex;
    align-items: center;
    gap: 2rem;
}

.three-donation-side{
    flex: 1;
}

.three-donations-heading{
    border-bottom: 3px solid #3e7472;
    margin-bottom: 3rem;
    width: fit-content;
}

.three-donations-list ul{
    list-style-type: none;
    font-size: 2.4rem;
}

.three-donations-list ul li{
    margin-bottom: 1rem;
}

.three-donations-image img{
    width: 100%;
    height: auto;
    object-fit: cover;
}

.donations-by-bequest-component{
    padding-top: 5.7rem;
    padding-bottom: 4rem;
    font-size: 2rem;
}

.donations-by-bequest-component p {
}

.donations-by-bequest-heading{
    padding: 1rem 1.5rem;
    background-color: #3e7472;
    color: #fff;
    margin-bottom: 3rem;
}

.donations-by-bequest-content{
    font-size: 2rem;
}

.donations-by-bequest-content-heading{
    font-size: 3rem;
    padding-left: 2rem;
    border-left: 3px solid #3e7472;
    margin-block: 2rem;
}

.donations-by-bequest-content-url{
    text-decoration: underline;
    color: #3e7472;
}

.donations-by-bequest-steps-list{
    display: grid;
    gap: 3rem;
}

.donations-by-bequest-steps-list-item{
    background-color: rgb(0, 58, 62);
    border-radius: 4rem;
    color: #fff;
    padding: 1rem;
    font-size: 2rem;
    position: relative;
}

.donations-by-bequest-steps-list-item:not(.donations-by-bequest-steps-list-item:last-child)::after{
    content: '';
    position: absolute;
    width: 1.2rem;
    height: 3.2rem;
    display: block;
    background-image: url(../images/register/arrow-right.png);
    background-size: cover;
    top: 2rem;
    right: -2rem;
}

.donations-by-bequest-steps-list-item-header{
    display: flex;
    align-items: start;
    gap: 1rem;
    margin-bottom: 1rem;
}

.donations-by-bequest-steps-list-item-header .icon{
    flex: 1;
    aspect-ratio: 1/1;
    border-radius: 999px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}

.donations-by-bequest-steps-list-item-header .icon img {
    width: 60%;
    height: 60%;
}

.donations-by-bequest-steps{
    margin-block: 3rem 2rem;
}

.donations-by-bequest-steps-heading{
    margin-block: 2rem;
}

.donations-by-bequest-steps-list-item-header .heading{
    font-weight: 600;
    flex: 3;
}

.donations-by-bequest-steps-list-item-content{
    text-align: left;
    font-size: 1.7rem;
}

.grid-col-5{
    grid-template-columns: repeat(5,1fr);
}

.pl-0{
    padding-left: 0;
}

.container.mt-10:not(.container.mt-10:first-child){
    margin-top: 10rem;
}

.border-0{
    border: 0 !important;
}
.roundtable-info{
    text-align: center;
    font-size: 2.4rem;
    margin-bottom: 4rem;
}

.roundtable-info .theme{
    font-weight: 500;
}

.roundtable-info .date{
    font-size: 2rem;
}

.inline-flex{
    display: inline-flex;
}

.flex-start{
    align-items: flex-start;
}

.success-info{
    font-size: 2.4rem;
}
.success-info a{
    color: #00a2bf;
}

.success-desc{
    font-size: 2.4rem;
    margin-bottom: 4rem;
}

.text-left{
    text-align: left;
}

.block-footer{
    margin-top: 5rem;
}
.block-footer .footer-bottom1{
    text-align: center;
    margin-bottom: 2rem;
    display: inline-flex;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap;
    row-gap: 2rem;
}
.block-footer .footer-bottom2{
    text-align: center;
}
.block-footer .footer-bottom1 .btn-base{
    margin: 0 1rem;
}

.photo2{
    float: left;
    margin-right: 2rem;
}

.list-option .group-radio a.btn-base{
    min-width: 26rem;
    display: block;
    cursor: pointer;
    color: #3E7472;
    border: 1px solid #3E7472;
    border-radius: 3rem;
    font-size: 2.4rem;
    text-align: center;
    padding: 1rem 2rem;
    width: auto;
    line-height: 1.8;
    font-weight: 400;
}
.list-option .group-radio a.btn-base:hover{
    background-color: #FFF;
}

@media(max-width: 1023px){
    .invite-member-note{
        padding-left: 0;
        padding-top: 2rem;
        border-top: 1px dashed #777;
    }

    .three-donations {
        flex-direction: column;
    }

    .grid-col-5{
        grid-template-columns: repeat(3, 1fr);
    }
}
@media screen and (min-width: 769px), print {
    .normal_btn, .normal_btn_rev {
        width: auto;
        padding: 1.2rem 2rem;
        border-radius: 4.4rem;
        color: #3E7472; !important;
        font-size: 1.8rem;
    }
}
@media screen and (min-width: 769px), print {
    .normal_btn.large, .normal_btn_rev.large, .normal_btn2.large, .normal_btn2_rev.large, .normal_btn3.large, .normal_btn3_rev.large {
        width: 60%;
        max-width: 54rem;
    }
}
@media screen and (min-width: 769px), print {
    .normal_btn {
        color: #3E7472; !important;
    }
}
@media screen and (min-width: 769px), print {
    .mini_btn:hover, .normal_btn:hover {
        background-color: #3E7472;
        color: #fff !important;
        transition: .3s all;
    }
}

.main-section{
    margin-bottom: 10rem;
}

.list-discussion-categories{
    display: grid;
    gap: 2rem 3rem;
    grid-template-columns: repeat(4, 1fr);
}
.discussion-cat-item{
    padding: 1rem 2rem;
    border: 1px solid #777;
    text-align: center;
    font-size: 2rem;
}

.discussion-search-bottom{
    display: flex;
}
.discussion-search-bottom .search-input-wrap{
    flex: 1;
}
.discussion-search-bottom .sort{
    flex: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.discussion-search-form{
    margin-top: 8rem;
}
.gray-section{
    padding: 8rem 0;
    background-color: #f4f4f4;
}
.theme-wrap .theme-top{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.theme-top .theme-title{
    font-size: 2.8rem;
}

.theme-top .theme-title span{
    border-bottom: 2px solid #3E7472;
}
.theme-top .theme-name span{
    background-color: #00af50;
    padding: 1rem 3rem;
    color: #FFF;
    font-weight: 500;
    font-size: 1.8rem;
    display: inline-flex;
}

.theme-content{
    display: flex;
    gap: 5rem;
    flex-wrap: wrap;
}
.theme-content .content-left{
    width: calc(50% - 2.5rem);
    font-size: 2rem;
    background-color: #f4f4f4;
    padding: 4rem;
}
.theme-content .img-right{
    width: calc(50% - 2.5rem);
    line-height: 0;
}

.theme-sns{
    margin-top: 3rem;
    display: flex;
    align-items: center;
    gap: 3rem;
}

.theme-sns .note{
    font-size: 2.4rem;
}
.theme-content-top{
    background-color: #F4f4f4;
    padding: 4rem;
    margin-bottom: 4rem;
    font-size: 2rem;
}
.theme-content-top h3,
.theme-content h3{
    margin-bottom: 2rem;
}

.theme-content a{
    text-decoration: underline;
    color: #00a2bf;
    text-underline-offset: 2px;
}
.theme-content-top p,
.theme-content p{
    margin-bottom: 2rem;
}

.theme-bottom{
    margin-top: 4rem;
    border: 1px solid #ddd;
    display: flex;
    margin-bottom: 5rem;
    flex-wrap: wrap;
}
.theme-bottom .content-left{
    width: 35%;
    background-color: #ddd;
    padding: 5rem 3rem 3rem;
    display: flex;
    gap: 5rem;
    flex-direction: column;
    justify-content: space-between;
}

.theme-bottom .content-left .more-label{
    padding: 2rem;
    background-color: #FFF;
    font-size: 2.6rem;
    font-weight: 500;
}
.theme-bottom .content-right{
    width: 65%;
    padding: 5rem;
}

.theme-bottom-sns .note{
    font-weight: 500;
    font-size: 2.4rem;
    margin-bottom: 1rem;
}

.list-theme-buttons{
    display: flex;
    flex-direction: column;
    gap: 3rem;
    align-items: center;
}
.theme-button-outline{
    border: 2px solid #777;
    padding: 1rem 2rem;
    min-width: 50rem;
    text-align: center;
    font-weight: 500;
    font-size: 2rem;
}
.list-theme-buttons .text-and-link{
    width: 50rem;
    font-size: 2rem;
    font-weight: 500;
}
.list-theme-buttons .text-and-link .link{
    border-bottom: 2px solid #333;
}
.list-theme-buttons .text-and-link .link:hover{
    border-bottom-color: #00a2bf;
}
.theme-bottom-sns img,
.theme-sns img{
    width: 6rem;
    height: 6rem;
}
.research-discussion .research-discussion-desc,
.research-discussion .item-explain-discussion,
.interview_content,
.item-content-bio{
    font-size: 2rem;
}
.login-groups .btn-link .icon{
    margin-right: 0.5rem;
}
.coming-soon-page{
    padding: 15rem 0;
}
.coming-soon-page h2{
    color: #3E7472;
}
@media(max-width: 1023px){
    .theme-wrap .theme-top{
        flex-wrap: wrap;
    }
    .theme-top .theme-title span{
        border-bottom-width: 1px;
    }
    .theme-top .theme-title{
        font-size: 2.7rem;
        width: 100%;
        margin-bottom: 2rem;
    }
    .theme-top .theme-name span{
        font-size: 2.4rem;
    }
    .theme-content .content-left ul,
    .theme-content-top ul{
        padding-left: 2rem;
    }
    .theme-content .content-left{
        width: 100%;
    }
    .theme-content .img-right{
        width: 100%;
    }
    .theme-bottom .content-left{
        width: 100%;
    }
    .theme-bottom-sns img,
    .theme-sns img{
        width: 8rem;
        height: 8rem;
    }
    .theme-sns{
        flex-wrap: wrap;
    }
    .theme-bottom .content-right{
        width: 100%;
    }
    .theme-button-outline,
    .list-theme-buttons .text-and-link{
        font-size: 2.4rem;
        min-width: 57rem;
    }
    .theme-content-top h3,
    .theme-content h3{
        font-size: 2.8rem;
    }
    .theme-content .content-left,
    .theme-content-top{
        font-size: 2.4rem;
    }
    .theme-name{
        width: 100%;
        text-align: right;
    }
    .research-discussion .research-discussion-social{
        flex-wrap: wrap !important;
    }
    .research-discussion .research-discussion-social img{
        width: 8rem;
        height: 8rem;
    }
    .list-discussion-categories{
        grid-template-columns: repeat(2, 1fr);
    }
    .research-discussion .research-discussion-desc,
    .research-discussion .item-explain-discussion,
    .interview_content,
    .item-content-bio{
        font-size: 2.4rem;
    }
}

.public-forum-page .report-item .item-desc{
    font-size: 2.4rem;
}
.public-forum-page .report-item .item-title{
    font-size: 1.6rem;
    margin-bottom: 1rem;
}
.public-forum-page .report-item .item-title span{
    color: #3E7472;
}
.public-forum-page .list-items-report .report-item{
    padding: 2rem !important;
}
@media(max-width: 1023px){
    .public-forum-page .report-item .item-image{
        height: 40rem !important;
    }
    .public-forum-page .report-item .item-desc{
        font-size: 2.4rem;
    }
    .public-forum-page .list-items-report .report-item{
        padding: 3rem !important;
    }
    .public-forum-page .report-item .item-title{
        font-size: 2rem;
    }
    .tokyo-beijing-21st .conf-period-item {
        gap: 0rem;
    }

}
.notarized-will-card__box-desc {
    text-align: center;
    padding-bottom: 6rem;
}
.notarized-will-card_box-top {
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: center;
}

.number_box {
    font-size: 40px;
    font-weight: 700;
    color: #326265;
    padding: 10px 15px;
    line-height: 1;
    display: inline-block;
    font-size: 12rem;
    opacity: 0.3;
}
.notarized-will-donation.agency .fd-box-content .card-title{
    border-bottom: 2px solid #CCCCCC;
    padding-bottom: 2rem;
    margin-bottom: 6rem;;
}
.agenda-page.politics .agenda-intro .content-left .content > .block:first-child .info{
    flex: 1;
}
.agenda-page.politics .agenda-intro .content-left .content > .block:first-child .socials{
    width: 60rem;
    justify-content: flex-end;
}

.agenda-page.politics .agenda-intro .content-left .content .desc .note-float-left{
    margin-right: 1.5rem;
}
.login-groups .btn-link .icon{
    width: 1.3rem;
    height: auto;
}
.remove-confirm-success{
    background-color: #FFF;
    padding: 4rem;
}
.remove-confirm-success .title{
    color: #326265;
    margin-bottom: 2rem;
}
.remove-confirm-success .desc{
    font-size: 2.4rem;
}
.mt-2{
    margin-top: 2rem;
}
.agenda-page.politics .agenda-intro .content-left .content .desc p{
    margin-bottom: 1.25rem;
}
.theme-content-new{
    background-color: #F4f4f4;
    padding: 4rem;
    margin-bottom: 4rem;
    font-size: 2rem;
}
.theme-content-new .image-right{
    float: right;
    margin-left: 3rem;
    margin-bottom: 2rem;
    width: 49%;
}
.theme-content-new h3{
    margin-bottom: 2rem;
}
.agenda-intro .content-left .content .block-content-top .image{
    width: 40%;
    float: left;
    margin-right: 3rem;
    margin-bottom: 1rem;
}
.agenda-page.politics .agenda-intro .content-left .content .content-text{
    clear: right;
}
.agenda-page.politics .agenda-intro .content-left .content .desc{
    clear: both;
}
.sns .sns-content .sns-post-body-1{
    /*max-height: 50rem;*/
}
.entry_sns{
    margin-bottom: 3rem;
}
.entry_sns ul{
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: flex-end;
    margin-top: -2rem;
    gap: 1rem;
}
.entry_sns ul li a img{
    width: 3.6rem;
    height: 3.6rem;
}
.entry_sns ul li a.x-icon img{
    padding: 0.5rem;
}
.speacker-item .actor-wrap .name{
    font-size: 2rem;
}
.public-forum-page{
    background-color: #FFF;
}
.public-forum-page .forum-research-content{
    padding: 4rem;
    background-color: #e8e8e8;
}
.join-news.forum-results{
    padding: 6rem 0;
    background-color: #e8e8e8;
}
.blog-title .fs-es{
    display: block;
    font-size: 70%;
}
@media (max-width: 767px) {
    .theme-content-new .image-right{
        width: 100%;
        float: none;
        margin: 3rem 0 0;
    }
    .theme-content-new{
        font-size: 2.4rem;
    }
    .theme-content-new h3{
        font-size: 2.8rem;
    }
    .agenda-intro .content-left .content .block-content-top .image{
        width: 100%;
        float: none;
        margin-right: 0;
        margin-bottom: 2rem;
    }
}
.our-work-page .genron-npo-left .our-work__title {
    /* max-height: 14rem; */
    /* overflow: hidden; */
    /* max-width: 41rem; */
    /* margin-bottom: 2.5rem;
    font-weight: 600;
    font-size: 4rem;
    letter-spacing: .05em;
    line-height: 1.8; */

    margin-bottom: 2.5rem;
}
.discussions-page .theme-title {
    line-height: 1.8em;
    letter-spacing: .05em;
    font-weight: 600;
}

.npojob .slider-section__title {
    font-size: 4.8rem;
    line-height: 1.8em;
    letter-spacing: .05em;
    font-weight: 600;
    color: #fff;
}

.parent-menu-item{
    position: relative;
}

.dropleft-menu{
    position: absolute;
    top: -1px;
    left: 100%;
}

.sub-menu.dropleft-menu{
    display: none!important;
}

@media (hover: hover) and (pointer: fine) {
    .menu-item.has-sub-menu:hover >.sub-menu.dropleft-menu{
        display: flex !important;
    }

    .conference-menu .sub-menu > li:hover > a{
        background-color: #f6f6f6;
    }
}




/* breakout session */
.bs-container{
    background-color: #f8f8f8;
}

.bs-container-item{
    background-color: #fff;
}

.bs-section{
    max-width: 100rem;
    width: 100%;
    margin-inline: auto;
    margin-block: 5rem;
}

.bs-section-heading{
    display: block;
    width: fit-content;
    padding-inline: 10rem;
    margin-inline: auto;
    margin-bottom: 5rem;
    font-size: 3.6rem;
    color: #006666;
}

.bs-section-heading .head-subcommitte {
    margin-bottom: 8rem;
}

.bs-section-heading.joiners-heading{
    margin-bottom: 1rem;
    font-size: 3rem;
}

.bs-heading-underline{
    border-bottom: 3px solid #006666;
}

.bs-section-description{
    margin-inline: 5rem;
    padding: 2rem 5rem;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 6rem;
    font-size: 2rem;
}

.bs-section-description-item{
    display: flex;
    align-items: center;
    gap: 2rem;
}

.bs-section-description-item-icon{
    height: 5rem;
    width: 5rem;
    object-fit: cover;
}

.bs-section-description-item-time{
   display: flex;
   gap: 1rem;
}

.bs-section-joiners-heading{
    color: white;
    text-align: center;
    margin-bottom: 5px;
}

.bs-section-joiners-heading.china-side{
    background-color: #bc4047;
}

.bs-section-joiners-heading.japan-side{
    background-color: #0080b2;
}

.bs-section-joiners-avatar{
    height: 10rem;
    aspect-ratio: 5/6;
    object-fit: cover;
    border-radius: 1px;
}

.bs-section-joiners{
    margin-inline: 5rem;
    padding: 4rem 5rem;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.bs-section-joiners-side{
    flex: 1;
}

.bs-section-joiners-mcs{
    height: 100%;
}

.bs-section-joiners-wapper{
    flex: 1;
}

.bs-section-joiners-china-side-mcs{
    display: flex;
    flex-direction: column;
    height: 100%;
}

.bs-section-joiners-item{
    display: flex;
    gap: 1rem;
    padding: 1rem 1.5rem 1.5rem;
}

.bs-section-joiners-item-infor{
    word-break: break-all;
}

.bs-section-joiners-item-infor-name{
    font-size: 2rem;
    line-height: 100%;
    margin-bottom: 1rem;
}

.bs-section-joiners-item-infor-description{
    font-size: 1.6rem;
    line-height: 120%;
}

.bs-section-joiners-wapper{
    border-radius: 4px;
    margin-bottom: 1rem;
}

.bs-section-joiners-wapper.china-side{
    background-color: #f7e9e9;
}

.bs-section-joiners-wapper.japan-side{
    background-color: #e1e9f6;
}

.bs-section-joiners-mc{
    display: flex;
    width: 100%;
    gap:1rem;
}

.bs-section-joiners-mc-item.china-side{
    background-color: #f7e9e9;
}

.bs-section-joiners-mc-item.japan-side{
    background-color: #e1e9f6;
}

.flex-1{
    flex:1;
}

@media (max-width: 1023px) {
    .conference-menu .sub-menu{
        width: 100%;
    }

    .dropleft-menu{
        left:0;
    }

    .bs-section-joiners, .bs-section-description{
        padding-inline: 1rem;
        margin-inline: 1rem;
        font-size: 2.4rem;
    }

    .bs-section-heading{
        font-size: 3.6rem;
        margin-bottom: 6rem;
    }

    .bs-section-joiners-mc{
        flex-direction: column;
    }

    .bs-section-joiners-item-infor-name{
        font-size: 2.4rem;
    }

    .bs-section-joiners-item-infor-description{
        font-size: 2rem;
    }

    .bs-section-joiners-avatar{
        height: 12rem;
    }

    .menu-link.menu-level-2.active::before {
        rotate: 90deg;
    }

    .menu-item.has-sub-menu.li-level-2 > .sub-menu{
        display: none !important;
    }
    .menu-item.has-sub-menu.li-level-2.active > .sub-menu{
        display: flex !important;
    }
}

