.sp {
    display: none
}

.pc {
    display: block
}

h3,
.pagecontents p,
.pagecontents a {
    letter-spacing: 3px;
}

h3 {
    line-height: 1.7;
}

.pagecontents {
    font-family: "Noto Sans JP", sans-serif;
    font-feature-settings: 'palt';
    width: 100%;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    /* padding: 120px 0 0 */
}

.pagecontents a:hover {
    opacity: .6;
    cursor: pointer
}

.pagecontents .mv {
    /* padding: 4.16667vw 14.58333vw; */
    padding: 4.16667vw 4.58333vw 0 0;
    font-family: "Stick No Bills", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    background-color: #0f5a5a;
    color: #fff;
    background-size: cover;
    /* text-shadow: 1px 1px 2px #a61515, 0 0 1em #00004f, 0 0 .2em #00f */
}

.pagecontents .mv h1 {
    color: #003872;
    text-align: center;
    font-family: "Noto Sans";
    font-size: 6.25vw;
    font-weight: 600;
    /* line-height: 180px; */
    letter-spacing: 12px;
    margin: 20px 0;
}

.pagecontents .mv h1 span {
color: #FF9D00;
font-family: "Noto Sans";
font-size: 6.25vw;
font-style: normal;
font-weight: 600;
/* line-height: 180px; */
}

.pagecontents .mv div{
    display: grid;
    gap: 10px;
}

.pagecontents .mv p {
    color: #003872;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 1.597222222222222vw;
    font-style: normal;
    font-weight: 500;
    line-height: 30px; 
    letter-spacing:0.05em;
}


.pagecontents .mv .top {
  display: flex;
  gap: 24px;
  padding-top: 80px;
}

.pagecontents .mv .top .people2026 {
  max-width: 50%; 
  /* max-width: 937px; */
max-height: 702px;
}

.pagecontents .mv .top .text {
    /* max-width: 929px; */
  max-width: 50%;
  margin: auto;
}

.pagecontents .mv .top .text img {
  margin: auto;
}

.pagecontents .block {
    padding: 80px 14.58333vw
}

.pagecontents .detail {
    background: #6CAEBD;
    color: #fff;
    margin: -1px 0 0;
}

.pagecontents .detail h2 {
    font-size: 40px
}

.pagecontents .detail__btnarea {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    margin: 40px 0 60px;
}

.pagecontents .detail__btnarea .btn {
    padding: 20px;
    font-weight: 600;
    border-radius: 999px;
    color: #ffffff;
    display: flex;
    width: 100%;
    background-color: #F29604;
    font-size: 30px;
    justify-content: center;
    /* width: 100%; */
    align-items: center;
    word-break: keep-all;
    text-align: center;
    height: auto
}
.pagecontents .detail__btnarea .btn-left{
    /* max-width: 789px; */
    max-width: 600px;
    max-height: 150px;
    flex: 1 1 0;
    min-width: 0;
}

.pagecontents .detail__btnarea .btn-right{
    /* max-width: 493px; */
    max-width: 600px;
    max-height: 150px;
    flex: 1 1 0;
    min-width: 0;
}

.btn.btn-right.last-year {
    padding: 20px;
}

.pagecontents .detail p {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.7;
}

.pagecontents .detail p span {
    display: block;
    margin: 16px 0 0;
    font-weight: 400;
    font-size: 18px
}

.pagecontents .schedulearea h2 {
    font-size: 80px;
    color: #6CAEBD;
}

.pagecontents .schedulearea .timearea {
    margin: 40px 0 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 390px
}

.pagecontents .schedulearea .timearea .zone {
    display: flex;
    flex-direction: column
}

.pagecontents .schedulearea .timearea .zone__inner {
    display: flex;
    font-size: 30px;
    font-weight: 600;
    padding: 0 20px;
    color: #6CAEBD;
    align-items: center;
}

.pagecontents .schedulearea .timearea .zone .one {
    padding: 0 20px 0 0;
    margin: 0;
    width: 360px;
    flex: none;
    white-space: nowrap;
}

.pagecontents .schedulearea .timearea .zone .time {
    white-space: nowrap;
    margin: 0;
}

.pagecontents .schedulearea .timearea--compact .zone .one {
    width: 100%;
    max-width: 180px;
    flex: 0 1 auto;
}

.pagecontents .schedulearea .timearea--compact .zone .time {
    margin-left: 150px;
}

.pagecontents .schedulearea .timearea .zone hr.rounded {
    width: 140%;
    height: 6px;
    background-color: #6CAEBD;
    border-radius: 50px
}

.pagecontents .schedulearea .timearea .zone hr.rounded.long {
    width: 160%;
}

.pagecontents .schedulearea .speecharea {
    margin: 80px 0 0;
}

.pagecontents .schedulearea .speecharea .title {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    gap: 20px
}

.pagecontents .schedulearea .speecharea .title .genre {
    display: flex;
    font-size: 32px;
    /* font-weight: 600; */
    border: 2px #000 solid;
    border-radius: 20px;
    padding: 4px 40px;
    width: -moz-fit-content;
    width: fit-content
}

.pagecontents .schedulearea .speecharea .title .genre p {
    margin: 0 0 0 20px
}

.pagecontents .schedulearea .speecharea .title h3 {
    font-size: 30px;
    font-weight: 600;
    padding: 0 0 4px;
    text-wrap: auto;
}

.pagecontents .schedulearea .speecharea .orange .genre {
    border-color: #e1542f;
    color: #ffffff;
    background-color: #e1542f;
}

.pagecontents .schedulearea .speecharea .orange h3 {
    color: #e1542f
}

.pagecontents .schedulearea .speecharea .blue .genre {
    border-color: #132d7d;
    color: #132d7d
}

.pagecontents .schedulearea .speecharea .blue h3 {
    color: #132d7d
}

.pagecontents .schedulearea .speecharea .green .genre {
    border-color: #3aac46;
    color: #3aac46
}

.pagecontents .schedulearea .speecharea .green h3 {
    color: #3aac46
}

.pagecontents .schedulearea .speecharea .red .genre {
    border-color: #be003c;
    color: #be003c;
    max-width: 300px;
}

.pagecontents .schedulearea .speecharea .red h3 {
    color: #be003c
}

.pagecontents .schedulearea .speecharea .download {
    margin: 30px 0
}

.pagecontents .schedulearea .speecharea .download a {
    color: #fff;
    display: flex;
    text-decoration: none;
    font-size: 30px;
    font-weight: 400;
    padding: 4px 70px;
    border-radius: 20px;
    justify-content: center;
    gap: 8px;
    width: -moz-fit-content;
    width: fit-content
}

.pagecontents .schedulearea .speecharea .talk_session {
    color: #fff;
    display: flex;
    text-decoration: none;
    font-size: 30px;
    font-weight: 400;
    padding: 4px 80px;
    border-radius: 20px;
    justify-content: center;
    gap: 8px;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #132d7d
}

.pagecontents .schedulearea .speecharea .download .btn-orange {
    background-color: #e1542f
}

.pagecontents .schedulearea .speecharea .download .btn-blue {
    background-color: #132d7d
}

.pagecontents .schedulearea .speecharea .download .btn-green {
    background-color: #3aac46
}

.pagecontents .schedulearea .speecharea .download .btn-red {
    background-color: #be003c
}

.pagecontents .schedulearea .speecharea .people {
    margin: 40px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between */
    gap: 26px; 
}

.pagecontents .schedulearea .speecharea .people .item {
    display: flex;
    flex-direction: column;
    margin: 0 0 32px;
    width: calc((100%/ 4) - 20px);
    gap: 20px;
    /* white-space: nowrap; */
}

.pagecontents .schedulearea .speecharea .people .item img {
    border-radius: 999px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top center;
    object-position: top center;
    aspect-ratio: 1 / 1;
}

.pagecontents .schedulearea .speecharea .people .item p {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    display: inline-block
}
.pagecontents .schedulearea .speecharea .people .item p b {
    display: block;
    font-size: 80%;
    font-weight: normal;
    padding: 0 0 10px;
}

.pagecontents .schedulearea .speecharea .people .item p span {
    display: block;
    /* font-size: 75%; */
    font-weight: 700;
    font-weight: normal;
    padding: 10px 0;
}
.pagecontents .schedulearea .speecharea .people .item .career{
    max-width: none;
    flex: 1;
    min-width: 0;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: anywhere;
    font-weight: normal;
}
.pagecontents .schedulearea .speecharea .people .item p .left {
    text-align: left;
}
.pagecontents .schedulearea .speecharea .orange {
    color: #e1542f
}

.pagecontents .schedulearea .speecharea .blue {
    color: #132d7d;
}

.pagecontents .schedulearea .speecharea .green {
    color: #3aac46
}

.pagecontents .schedulearea .speecharea .red {
    color: #be003c
}

.pagecontents .outlinearea {
    display: flex;
    gap: 48px
}

.pagecontents .outlinearea .left h2 {
    font-size: 80px;
    color: #6CAEBD;
    margin: 0
}

.pagecontents .outlinearea .right {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 40px;
    min-width: 0;
    width: 100%
}

.pagecontents .outlinearea .right .text p {
    font-size: 24px;
    border-bottom: #286aa6 2px solid;
    padding: 0 0 8px;
    margin: 20px 0 0
}

.pagecontents .outlinearea .right .divided {
    font-size: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    line-height: 1.7;
}

.pagecontents .outlinearea .right .divided p {
    margin: 0
}

.pagecontents .outlinearea .right .divided hr {
    width: 100%;
    height: 2px;
    background-color: #6CAEBD;
    border: solid #6CAEBD 0;
    padding: 0;
    margin: 0
}

.pagecontents .outlinearea .right .divided img {
    padding: 20px
}

.pagecontents .outlinearea .right .divided a {
    text-decoration: none;
    color: inherit
}

.pagecontents .outlinearea .right .btnarea p {
    font-size: 24px;
    margin: 0 0 8px
}

.pagecontents .outlinearea .right .btnarea a {
    display: flex;
    width: 100%;
    background-color: #286aa6;
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    text-decoration: none;
    justify-content: center;
    padding: 24px 0;
    border-radius: 20px
}

.pagecontents .outlinearea .right .outline_btnarea p {
    font-size: 24px;
    margin: 0 0 8px
}

.pagecontents .outlinearea .right .outline_btnarea a {
    display: flex;
    width: 100%;
    max-width: 800px;
    height: auto;
    background-color: #6CAEBD;
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    text-decoration: none;
    justify-content: center;
    border-radius: 8px;
}

.timearea-txt{
    color: #286aa6;
    font-size: 125%;
}


.pagecontents .detail__btnarea {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    margin: 40px 0 60px;
}

.pagecontents .detail__btnarea .btn {
    padding: 20px;
    font-weight: 600;
    border-radius: 999px;
    color: #ffffff;
    display: flex;
    width: 100%;
    background-color: #F29604;
    font-size: 30px;
    justify-content: center;
    /* width: 100%; */
    align-items: center;
    word-break: keep-all;
    text-align: center;
    height: auto
}
.pagecontents .detail__btnarea .btn-left{
    /* max-width: 789px; */
    max-width: 600px;
    max-height: 150px;
    flex: 1 1 0;
    min-width: 0;
}
.contact {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 16px;
    background-color: #6CAEBD;
    padding: 80px 14.58333vw;
    justify-content: center;
    margin: 0 auto;
}

.contact .content_btn{
    padding: 20px 25px;
    font-weight: 600;
    border-radius: 999px;
    color: #ffffff;
    display: flex;
    width: 100%;
    /* max-width: 600px; */
    background-color: #F29604;
    font-size: 30px;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: auto;
    text-decoration: none;
}

.contact .address a {
    color: inherit;
    text-decoration: none;
}

.contact .row {
    font-size: 30px;
    flex-direction: row;
    justify-content: flex-start;
}

.contact .contact_btnarea,
.contact .address {
    flex: 1;
}

a:hover {
    opacity: .6;
    cursor: pointer
}

.wrap {
    display: flex;
    flex-direction: column;
    gap: 60px;
    color: #ffffff;
    margin: 0 auto;
}

.row {
    display: flex;
    align-items: flex-start;
    gap: 160px;
    justify-content: center;
}

.label {
    width: 240px;
    flex: none;
    white-space: nowrap;
}

@media (max-width:1440px) {
    .pagecontents .detail__btnarea .btn {
        font-size: 24px
    }

    .pagecontents .outlinearea .right .btnarea p {
    font-size: 24px;
    margin: 0 0 8px
}

.pagecontents .outlinearea .right .btnarea a {
    display: flex;
    width: 100%;
    background-color: #286aa6;
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    text-decoration: none;
    justify-content: center;
    padding: 24px 0;
    border-radius: 20px
}
}

@media (max-width:1200px) {
    .pagecontents .detail__btnarea .btn {
        display: flex;
        font-size: 18px;
        flex-direction: column
    }

    .pagecontents .schedulearea .speecharea .title {
        flex-direction: column;
        align-items: flex-start
    }

    .pagecontents .outlinearea {
        flex-direction: column
    }

    .pagecontents.row {
        display: block;
        gap: 16px;
    }

    .label.detail {
        margin-bottom: 12px;
    }

    .pagecontents .mv .top {
        padding: 70px 0;
    }
}

@media (max-width:960px) {
    .pagecontents {
        padding: 0 0 0
    }
}

@media (max-width:820px) {
    .sp {
        display: block
    }

    .pc {
        display: none
    }

    .pagecontents .mv .top {
        display: block;
        padding: unset;
    }

    .pagecontents .mv .top .text {
        max-width: 100%;
        margin: 0 auto;
        min-width: 0;
    }

    .pagecontents .mv .top .people2026 {
        max-width: 100%;
        height: auto;
    }

    .pagecontents .mv .top .text img {
        max-width: 100%;
        height: auto;
    }

    .pagecontents .mv {
        padding: 20vw 4.26667vw 10.66667vw
    }

    .pagecontents .mv h1 {
        font-size: 13.600000000000001vw;
        letter-spacing: 2px;
        word-break: break-all;
        text-align: left;
        margin: 0;
    }

    .pagecontents .mv h1 span {
        padding: 0 4px 0;
        font-size: 13.600000000000001vw;
        top: 0
    }

    .pagecontents .mv p {
        font-size: 5.333333333333334vw;
        line-height: 1.5;
        text-align: left;
        word-break: break-word;
        overflow-wrap: anywhere;
    }

    .pagecontents .block {
        padding: 10.66667vw 4.26667vw
    }

    .pb-0 {
        padding-bottom: 0 !important
    }

    .pagecontents .detail h2 {
        font-size: 32px
    }

    .pagecontents .detail__btnarea {
        flex-direction: column;
        gap: 6px;
        margin-bottom: 20px;
    }

    .pagecontents .detail__btnarea .btn {
        display: block;
        line-height: 1.2
    }

    .pagecontents .detail__btnarea .btn span {
        font-size: 16px;
        font-weight: 400
    }

    .pagecontents .detail p {
        font-size: 16px
    }

    .contact .pagecontents .detail p {
        font-size: 18px;
    }

    .pagecontents .detail p span {
        font-size: 14px;
        margin: 8px 0 0
    }

    .pagecontents .schedulearea h2 {
        font-size: 32px
    }

    .pagecontents .schedulearea .timearea {
        width: 100%;
        max-width: unset
    }

    .pagecontents .schedulearea .timearea .zone {
        width: 100%
    }

    .pagecontents .schedulearea .timearea .zone__inner {
        font-size: 18px;
        justify-content: space-between;
    }

    .pagecontents .schedulearea .timearea .zone .one {
        width: auto;
        flex: 1 1 0;
        min-width: 0;
        white-space: normal;
        word-break: break-all;
    }

    .pagecontents .schedulearea .timearea .zone .time {
        margin-left: unset;
        justify-self: end;
        flex: none;
    }

    .pagecontents .schedulearea .timearea .zone hr.rounded,
    .pagecontents .schedulearea .timearea .zone hr.rounded.long {
        width: 100%;
    }

    .pagecontents .schedulearea .speecharea {
        margin: 30px 0 0
    }

    .pagecontents .schedulearea .speecharea .title {
        flex-direction: column
    }

    .pagecontents .schedulearea .speecharea .title .genre,
    .pagecontents .schedulearea .speecharea .talk_session {
        font-size: 24px;
        width: 100%;
        justify-content: space-between;
        white-space: wrap;
        flex-direction: row;
        display: grid;
        padding: 4px 40px;
    }

    .pagecontents .schedulearea .speecharea .title .genre p {
        margin: 0
    }

    .pagecontents .schedulearea .speecharea .title h3 {
        text-align: center;
        text-wrap: auto;
        line-height: 1.4;
        font-size: 20px;
        word-break: auto-phrase;
        width: 100%
    }

    .pagecontents .schedulearea .speecharea .download a {
        font-size: 20px;
        width: 100%
    }

    .pagecontents .schedulearea .speecharea .download a img {
        width: 24px
    }

    .pagecontents .schedulearea .speecharea .people.center {
        justify-content: center;
    }

    .pagecontents .schedulearea .speecharea .people {
        gap: unset;
        justify-content: space-between
    }

    .pagecontents .schedulearea .speecharea .people .item {
        width: calc((100% - 24px)/ 2);
        margin: 0 0 20px
    }

    .pagecontents .schedulearea .speecharea .people .item .career {
        white-space: normal;
        word-break: break-word;
        overflow-wrap: anywhere;
    }

    .pagecontents .schedulearea .speecharea .people .item p {
        word-break: break-word;
        overflow-wrap: anywhere;
    }

    .pagecontents .outlinearea {
        gap: 16px;
        flex-direction: column
    }

    .pagecontents .outlinearea .left h2 {
        font-size: 32px
    }

    .pagecontents .outlinearea .right {
        gap: 0px
    }

    .pagecontents .outlinearea .right .text p {
        font-size: 16px
    }

    .pagecontents .outlinearea .right .divided {
        font-size: 16px
    }

    .pagecontents .outlinearea .right .divided img {
        padding: 8px
    }

    .pagecontents .outlinearea .right .btnarea p {
        font-size: 16px
    }

    .pagecontents .outlinearea .right .btnarea a {
        padding: 14px 0;
        font-size: 24px
    }

    .pagecontents .schedulearea .speecharea .people .item p span,
    .pagecontents .schedulearea .speecharea .people .item .career {
        font-size: 16px;
    }

    .wrap.contact {
        padding: 10.66667vw 4.26667vw;
        gap: 30px;
    }

    .contact .content_btn {
        font-size: 18px;
    }

    .pagecontents .outlinearea .right .outline_btnarea a {
        font-size: 18px;
        padding: 16px 0;
        align-items: center;
    }

    .pagecontents .schedulearea .timearea {
        margin-top: 20px;
    }
    
}
@media (max-width:530px) {
    .pagecontents .schedulearea .timearea .zone .one {
        white-space: unset;
    }
}

@media (min-width:1440px) {
    .pagecontents .outlinearea .right .btnarea p {
    font-size: 24px;
    margin: 0 0 8px
}

.pagecontents .outlinearea .right .btnarea a {
    display: flex;
    width: 100%;
    background-color: #286aa6;
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    text-decoration: none;
    justify-content: center;
    padding: 24px 0;
    border-radius: 20px
}
}
/*# sourceMappingURL=top.css.map */