@charset "UTF-8";

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    background: transparent;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

ul, li {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

ins {
    background-color: #ff9;
    color: #474747;
    text-decoration: none;
}

mark {
    background-color: #ff9;
    color: #474747;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

input, select {
    vertical-align: middle;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

::-ms-expand {
    display: none;
}

img {
    vertical-align: top;
    width: 100%;
    height: auto;
}

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

a, a:visited, a:hover {
    color: #000;
    text-decoration: none;
}

.clearfix:after {
    height: 0;
    display: block;
    clear: both;
    content: " ";
}

html, body {
    width: 100%;
}

html {
    /* 1rem = 10px にするための設定 (ブラウザのデフォルト16px * 62.5% = 10px) */
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;    
    height: -webkit-fill-available;
}

body {
    /* min-heightについては検討の余地あり */
    min-height: 100vh;
    min-height: -webkit-fill-available;
/*    font-feature-settings: "palt";
    -webkit-font-smoothing: antialiased;*/
}

body {
    font-size: 1.6rem;
    line-height: 1.5;
    color: #272727;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-family: Arial, "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    background-color: transparent;
}

.myfont {
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 900;
}

.m-plus-rounded-1c-light {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 300;
}

.m-plus-rounded-1c-regular {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 400;
}

.m-plus-rounded-1c-medium {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
}

.m-plus-rounded-1c-bold {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 700;
}

.noto-sans-jp {
    font-family: Arial, "Noto Sans JP", sans-serif;
}

.inter {
    font-family: "Inter", sans-serif;
    font-weight: 400;
}

@media only screen and (min-width:1080px) {
    .brpc {
        display: inline;
    }

    .brsp {
        display: none;
    }
}

@media only screen and (max-width:1079px) {
    .brpc {
        display: none;
    }

    .brsp {
        display: inline;
    }
}

@media only screen and (min-width:1080px) {
    .hide-sp {
        display: block;
    }

    .hide-pc {
        display: none;
    }
}

@media only screen and (max-width:1079px) {
    .hide-sp {
        display: none;
    }

    .hide-pc {
        display: block;
    }
}

/* ==========================================================================
	layout ,wrap ,container
========================================================================== */
.wrapper {
    width: 100%;
    background-color: transparent;
    padding-top:82px;
}
.container {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}
.wrap-content{
    width: 100%;
    margin:0 auto;
    padding:100px 0 150px ;
}
.wrap-home{
    width: 100%;
    margin:0 auto;
    padding:0 0 100px ;
}
.wrap-article{
    width: 100%;
    margin:0 auto;
    padding:100px 0;
}
.section-green, .section-white, .section-brown {
    width: 100%;
}

/* ==========================================================================
	header
========================================================================== */
.wrap-header{
    width: 100%;
    position:fixed;
    top: 0;
    left: 0;
    z-index: 100;
}

.wrap-header .logo-header{
    width: 116px;
    height: 82px;
    position:absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.wrap-header .logo-header a{
    width: 75px;
    height: 50px;
    display: block;
}

.navigation-header{
    width: 100%;
    height: 82px;
    background-color: rgba(255, 255, 255, 0.99);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0);
    display: flex;
    align-items: center;
    gap: 0 50px ;
    justify-content: flex-end;
    padding: 0 120px;
}
.navigation-header li a,.navigation-header li span{
    font-weight: 500;
    font-size:1.6rem;
    font-family: "M PLUS Rounded 1c", sans-serif;
    white-space: nowrap;
}
.link-jp{
    pointer-events: none;
}
.trigger-overlay{
    width: 32px;
    height: 32px;
    position:absolute;
    position:fixed;
    top: 24px;
    right: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    appearance: none;
    border: none;
    background-color: transparent;
    cursor: pointer;
    z-index: 110;
}

.trigger-overlay span {
    display: block;
    color: transparent;
    font-size: 1rem;
}
.trigger-overlay span, .trigger-overlay span::before, .trigger-overlay span::after {
    width: 32px;
    height: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
    background-color: #2F2725;
}
.trigger-overlay.is-pulled span::before, .trigger-overlay.is-pulled span::after {
    background-color: #2F2725;
}
.trigger-overlay.is-pulled span {
    background-color: transparent;
}
.trigger-overlay span::before, .trigger-overlay span::after {
    content: "";
    display: block;
}
.trigger-overlay span::before {
    top: -6px;
}
.trigger-overlay span::after {
    bottom: -6px;
}
.trigger-overlay span {
    background-color: transparent;
}
.trigger-overlay span::after {
    transition: bottom 0.4s 0.12s ease, transform 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19),background-color 0.4s ease;
}
.trigger-overlay span::before {
    transition: top 0.4s 0.12s ease, transform 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19),background-color 0.4s ease;
}
.trigger-overlay.is-pulled span::before {
    top:0;
    transform: rotate(45deg);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: top 0.2s ease, transform 0.4s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.trigger-overlay.is-pulled span::after {
    bottom: 0;
    transform: rotate(-45deg);
    transition: bottom 0.2s ease, transform 0.4s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media (hover: hover) and (pointer: fine) {
    .navigation-header li a{
        transition: color ease 0.3s;
    }
    .navigation-header li:nth-of-type(1) a:hover{
        color:#A09857; 
    }
    .navigation-header li:nth-of-type(2) a:hover{
        color:#FFA4B4; 
    }
    .navigation-header li:nth-of-type(3) a:hover{
        color:#CCA1DD; 
    }
    .navigation-header li:nth-of-type(4) a:hover{
        color:#965F36; 
    }
    .navigation-header li:nth-of-type(5) a:hover{
        color:#F5B335; 
    }
    .navigation-header li:nth-of-type(6) a:hover{
        color:#97D1DC; 
    }
    .trigger-overlay:hover span::before {
        background-color: #EDC6CD;
    }
    .trigger-overlay:hover span::after {

    }
    .trigger-overlay.is-pulled:hover span::before {
        background-color: #fff;
    }
    .trigger-overlay.is-pulled:hover span::after {
        background-color: #fff;
    }
    .wrap-header .logo-header a img{
        transition: opacity ease 0.4s;
    }
    .wrap-header .logo-header a:hover img{
        opacity: 0.6;
    }
}
@media only screen and (max-width:1079px) {
    .wrap-header{
    height: 64px;
    background-color: rgba(255, 255, 255, 0.99);
    }
    .wrap-header .logo-header{
    width: 80px;
    height: 64px;
    }
    .wrap-header .logo-header a{
        width: 45px;
        height: 30px;
        display: block;
    }
    .trigger-overlay{
        width: 28px;
        height: 28px;
        top: 19px;
        right: 20px;
    }
    .trigger-overlay span, .trigger-overlay span::before, .trigger-overlay span::after {
        width: 28px;
        height: 3px;
    }
    .trigger-overlay span::before {
        top: -5px;
    }
    .trigger-overlay span::after {
        bottom: -5px;
    }
    .navigation-header{
        display: none;
        padding: 0;
    }
}

/* ==========================================================================
	footer
========================================================================== */
.wrap-footer{
    width: 100%;
    max-width:1280px;
    margin:0 auto;
}
.content-footer{
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding:130px 0;
    background-image: url("../img/dotted_footer.svg");
    background-position: 0 0;
    background-size: contain;
    background-repeat: no-repeat;
}
.nav-footer{
    width: calc(100% - 260px);
    display: flex;
    flex-direction: column;
    gap:48px 64px;

    height:330px;
    flex-wrap:wrap;
}
.cell-nav-footer{
    width: calc(33% - 64px) ;
}
.cell-nav-footer dt a, .cell-nav-footer dd a{
    line-height:1.5;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
}
.cell-nav-footer dt a{
    font-size:1.8rem;
}
.cell-nav-footer dd a{
    font-size:1.4rem;
}
.logo-footer{
    max-width: 160px;
    width: 12.5%;
}
@media (hover: hover) and (pointer: fine) {
    .cell-nav-footer dt a, .cell-nav-footer dd a{
        transition: color 0.4s ease;
    }
    .cell-nav-footer dt a:hover, .cell-nav-footer dd a:hover{
        color:#8d8d8d;
    }
}
@media only screen and (min-width:1280px) {
    .cell-nav-footer{
        width: calc(25% - 64px);
    }
    .cell-nav-footer:nth-of-type(5) ,.cell-nav-footer:nth-of-type(7), .cell-nav-footer:nth-of-type(9) {
        height:160px;
    }
    .cell-nav-footer:nth-of-type(8), .cell-nav-footer:nth-of-type(9) {
        width: calc(25% - 8px);
    }
}
@media only screen and (max-width:1279px) {
    .nav-footer{
    }
}
@media only screen and (min-width:1080px) {
    .navigation-sns{
        position: fixed;
        top: 50%;
        right: 24px;
        width: 32px;
        z-index: 100;
        transform: translate(0, -40%);
    }
    .nav-sns{
        width: 32px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap:30px 0;
    }
    .nav-sns li{
    }
    .nav-sns li:nth-of-type(1){
        width: 30px;
    }
    .nav-sns li:nth-of-type(2){
        width: 30px;
    }
    .nav-sns li:nth-of-type(3){
        width: 32px;
    }
    .nav-sns li:nth-of-type(4){
        width: 32px;
    }
    .nav-sns li a{
        position: relative;
        display:block;
    }
    .nav-sns li a img{
        position: relative;
        transition: opacity 0.4s ease;
    }
    .nav-sns li a img:nth-of-type(1) {
        opacity: 1;
    }
    .nav-sns li a img:nth-of-type(2),
    .nav-sns li a img:nth-of-type(3) {
        opacity: 0;
        position: absolute;
        top:0;
        left:0;
    }
    .nav-sns li a img:nth-of-type(1) {
        opacity: 0;
    }
    .nav-sns li a img:nth-of-type(2) {
        opacity: 1;
    }
}
@media (hover: hover) and (pointer: fine) {
    .nav-sns li a:hover img:nth-of-type(1){
        opacity: 0;
    }
    .nav-sns li a:hover img:nth-of-type(2) {
        opacity: 0;
    }
    .nav-sns li a:hover img:nth-of-type(3) {
        opacity: 1;
    }
}
@media only screen and (max-width:1079px) {
    .wrap-footer{
        width: 86%;
        background-image: url("../img/dotted_footer.svg");
        background-position: 0 0;
        background-size: contain;
        background-size:  auto 3px;
        background-repeat: no-repeat;
    }
    .content-footer{
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding:0;
        background:none;
    }
    .navigation-sns{
        position: relative;
        width: 100%;
        padding:60px 0;
    }
    .nav-sns{
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        gap:0 30px;
    }
    .nav-sns li{
    }
    .nav-sns li:nth-of-type(1){
        width: 25px;
    }
    .nav-sns li:nth-of-type(2){
        width: 25px;
    }
    .nav-sns li:nth-of-type(3){
        width: 24px;
    }
    .nav-sns li:nth-of-type(4){
        width: 27px;
    }
    .nav-sns li a{
        position: relative;
        display:block;
    }
    .nav-sns li a img{
        position: relative;
        transition: opacity 0.4s ease;
    }
    .nav-sns li a img:nth-of-type(1) {
        opacity: 1;
    }
    .nav-sns li a img:nth-of-type(2),
    .nav-sns li a img:nth-of-type(3) {
        opacity: 0;
        position: absolute;
        top:0;
        left:0;
    }
    .nav-sns li a img:nth-of-type(1) {
        opacity: 0;
    }
    .nav-sns li a img:nth-of-type(2) {
        opacity: 1;
    }
    .logo-footer{
        max-width: 320px;
        width: 100%;
        margin:0 auto 60px;
    }
    .nav-footer{
        display: flex;
        flex-direction: column;
        gap:40px 10px;
        flex-wrap:wrap;
        width: 100%;
        max-width:440px;
        height:560px;
        margin:0 auto 24px;
    }
    .cell-nav-footer{
        width: calc(50% - 10px) ;
    }
    .cell-nav-footer dt{
        margin-bottom:5px;
    }
    .cell-nav-footer dd{
        margin-bottom:2px;
    }
    .cell-nav-footer dt a{
        font-size:1.5rem;
    }
    .cell-nav-footer dd a{
        font-size:1.1rem;
    }
    .cell-nav-footer dd a span{
        display: inline-block;
    }
    .cell-nav-footer:nth-of-type(1) {
        order: 1;
    }
    .cell-nav-footer:nth-of-type(2) {
        order: 2;
    }
    .cell-nav-footer:nth-of-type(3) {
        order: 3;
    }
    .cell-nav-footer:nth-of-type(4) {
        order: 6;
    }
    .cell-nav-footer:nth-of-type(5) {
        order: 7;
    }
    .cell-nav-footer:nth-of-type(6) {
        order: 4;
    }
    .cell-nav-footer:nth-of-type(7) {
        order: 5;
        min-height:80px;
    }
    .cell-nav-footer:nth-of-type(8) {
        order: 8;
    }
    .cell-nav-footer:nth-of-type(9) {
        order: 9;
    }
}
.aside-footer{
    height:64px;
    width:100%;
    position:relative;
}
.copyright-footer{
    font-weight: 400;
    font-size:1.2rem;
    font-family: Arial, sans-serif;
    text-align:center;
    padding-right:58px;
}

.link-footer{
    position: absolute;
    top:0;
    right:0;
    padding: 0 120px;
    font-weight: 400;
    font-size:1.2rem;
    font-family: "Inter", sans-serif;
    z-index:1;
}

@media only screen and (max-width:1079px) {
    .aside-footer{
        height:auto;
        width: 100%;
        margin:0 auto;
        padding-bottom:10px;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        flex-direction: row-reverse;
    }
    .copyright-footer{
        font-weight: 400;
        font-size:1rem;
        transform: scale(0.8);
        transform-origin: left bottom;
        text-align:left;
        width:64%;
        padding-right:0;
    }
    .copyright-footer span{
        display: inline-block;
    }

    .link-footer{
        position: relative;
        width:36%;
        padding: 0;
        font-size:1rem;
        text-align:right;
    }
}

/* ==========================================================================
	wrap-drawer
========================================================================== */
.wrap-drawer{
    display: block;
    width: 100%;
    height: 100%;
    width: 100vw;
    height: 100dvh;
    padding:14dvh 0 20dvh;
    padding:0;
    background-color: #EDC6CD;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    opacity: 0;
    opacity: 1;
    transform: translateY(-100%);
    transition: transform .2s cubic-bezier(.42, 0, .58, 1), opacity .2s cubic-bezier(.42, 0, .58, 1);
    overflow: hidden;
}
.navigation-overlay .wrap-drawer{
    opacity: 1;
    transform: translateY(0);
}
.content-drawer{
    width: 100%;
    height: calc(100% - 60px);
    padding:12dvh 0 8dvh;
    overflow-y: scroll;
}
.nav-drawer{
    width: 100%;
    max-width:768px;
    height:520px;
    margin:0 auto 40px;
    display: flex;
    flex-wrap:wrap;
    flex-direction: column;
    gap:48px 48px;
}
.cell-nav-drawer{
    width: calc(33% - 48px) ;
}
.cell-nav-drawer dt{
    margin-bottom:8px;
}
.cell-nav-drawer dd{
    margin-bottom:2px;
}
.cell-nav-drawer dt a, .cell-nav-drawer dd a{
    line-height:1.5;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
}
.cell-nav-drawer dt a{
    font-size:2.3rem;
}
.cell-nav-drawer dd a{
    font-size:1.4rem;
}
.cell-nav-drawer{
}
.cell-nav-drawer:nth-of-type(5) ,.cell-nav-drawer:nth-of-type(7), .cell-nav-drawer:nth-of-type(9) {
}
@media only screen and (min-width:1280px) {
    .cell-nav-drawer:nth-of-type(9), .cell-nav-drawer:nth-of-type(10) {
        width: calc(33% - 4px);
    }
}
@media (hover: hover) and (pointer: fine) {
    .cell-nav-drawer dt a, .cell-nav-drawer dd a{
        transition: color 0.2s ease;
    }
    .cell-nav-drawer dt a:hover, .cell-nav-drawer dd a:hover{
        color:#8d8d8d;
    }
}
@media only screen and (min-width:80px) {
    .nav-sns-drawer{
        width: 100%;
        max-width:768px;
        margin:0 auto ;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap:0 38px;
    }
    .nav-sns-drawer li{
    }
    .nav-sns-drawer li:nth-of-type(1){
        width: 30px;
    }
    .nav-sns-drawer li:nth-of-type(2){
        width: 30px;
    }
    .nav-sns-drawer li:nth-of-type(3){
        width: 32px;
    }
    .nav-sns-drawer li:nth-of-type(4){
        width: 32px;
    }
    .nav-sns-drawer li a{
        position: relative;
        display:block;
    }
    .nav-sns-drawer li a img{
        position: relative;
        transition: opacity 0.4s ease;
    }
    .nav-sns-drawer li a img:nth-of-type(1) {
        opacity: 1;
    }
    .nav-sns-drawer li a img:nth-of-type(2),
    .nav-sns-drawer li a img:nth-of-type(3) {
        opacity: 0;
        position: absolute;
        top:0;
        left:0;
    }
    .nav-sns-drawer li a img:nth-of-type(1) {
        opacity: 0;
    }
    .nav-sns-drawer li a img:nth-of-type(2) {
        opacity: 1;
    }
}
@media (hover: hover) and (pointer: fine) {
    .nav-sns-drawer li a:hover img:nth-of-type(1){
        opacity: 0;
    }
    .nav-sns-drawer li a:hover img:nth-of-type(2) {
        opacity: 0;
    }
    .nav-sns-drawer li a:hover img:nth-of-type(3) {
        opacity: 1;
    }
}
.title-drawer{
    position:absolute;
    position:relative;
    bottom:0;
    z-index:10;

    width:100%;
    background-color: #202945;
}
.title-drawer dl{
    width:100%;
    max-width:1280px;
    max-width:1440px;
    height:60px;
    margin:0 auto;
    padding:0 80px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap:0 30px;
}
.title-drawer dt{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: 0.03em;
    color: #fff;
}
.title-drawer dd{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 300;
    font-size: 1.9rem;
    letter-spacing: 0.03em;
    color: #fff;
}

@media only screen and (max-width:1079px) {
    .content-drawer{
        height: calc(100% - 80px);
    }
    .nav-drawer{
        width: 100%;
        max-width:768px;
        height:520px;
        margin:0 auto 40px;
        display: flex;
        flex-wrap:wrap;
        flex-direction: column;
        gap:48px 48px;
    }
    .cell-nav-drawer{
        width: calc(33% - 48px) ;
    }
    .nav-drawer{
        display: flex;
        flex-direction: column;
        gap:30px 10px;
        flex-wrap:wrap;
        width: 86%;
        max-width:440px;
        height:560px;
        margin:0 auto 4px;
    }
    .cell-nav-drawer{
        width: calc(50% - 10px) ;
    }
    .cell-nav-drawer dt{
        margin-bottom:2px;
    }
    .cell-nav-drawer dd{
        margin-bottom:0px;
    }
    .cell-nav-drawer dt a{
        font-size:1.7rem;
    }
    .cell-nav-drawer dd a{
        font-size:1.1rem;
        line-height:2;
    }
    .cell-nav-drawer dd a span{
        display: inline-block;
    }
    .cell-nav-drawer:nth-of-type(1) {
        order: 1;
        width: 48%;
    }
    .cell-nav-drawer:nth-of-type(2) {
        order: 2;
        width: 48%;
    }
    .cell-nav-drawer:nth-of-type(3) {
        order: 3;
        width: 48%;
    }
    .cell-nav-drawer:nth-of-type(4) {
        order: 6;
        width: 48%;
    }
    .cell-nav-drawer:nth-of-type(5) {
        order: 7;
        width: 36.4%;
    }
    .cell-nav-drawer:nth-of-type(6) {
        order: 8;
        width: 36.4%;
    }
    .cell-nav-drawer:nth-of-type(7) {
        order: 5;
        width: 48%;

    }
    .cell-nav-drawer:nth-of-type(8) {
        order: 6;
        width: 48%;
    }
    .cell-nav-drawer:nth-of-type(9) {
        order: 9;
        width: 36.4%;
    }
    .cell-nav-drawer:nth-of-type(10) {
        order: 10;
        width: 36.4%;
    }
    .nav-sns-drawer{
        width: 86%;
        max-width:440px;
        gap:0 30px;
    }
    .nav-sns-drawer li{
    }
    .nav-sns-drawer li:nth-of-type(1){
        width: 25px;
    }
    .nav-sns-drawer li:nth-of-type(2){
        width: 25px;
    }
    .nav-sns-drawer li:nth-of-type(3){
        width: 27px;
    }
    .nav-sns-drawer li:nth-of-type(4){
        width: 27px;
    }

    .title-drawer dl{
        height:80px;
        padding:0 40px;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap:0 0px;
    }
    .title-drawer dt{
        font-size: 1.8rem;
    }
    .title-drawer dd{
        font-size: 1.5rem;
    }
}

/* ==========================================================================
	pagination
========================================================================== */
.pagination{
    width: 100%;
    max-width:1280px;
    margin:0 auto;
    padding:150px 0 100px;
}
ul.page-numbers{
    width: 100%;
    margin:0;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    gap:20px;
}
ul.page-numbers li{
}
ul.page-numbers li a{
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #2F2725;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 1.3rem;
    letter-spacing: 0em;
    color: #fff;
}
ul.page-numbers li .current{
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 1.3rem;
    letter-spacing: 0em;
    color: #2F2725;
    border:2px solid #2F2725;
}
ul.page-numbers li .dots{
    width: 72px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    font-size: 1.3rem;
    letter-spacing: 0em;
    color: transparent;
    position:relative;
}
ul.page-numbers li .dots:after{
    width: 72px;
    height: 3px;
    content: "";
    background-image: url("../img/dots_pagination.svg");
    background-position: 0 0;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    display: inline-block;
    z-index: 4;
    transform: translate(0, -50%);
}
ul.page-numbers li a.prev {
    display: inline-block;
    width: 18px;
    height: 36px;
    background-color: #2F2725;
    clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
ul.page-numbers li a.next {
    display: inline-block;
    width: 18px;
    height: 36px;
    background-color: #2F2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
}
@media (hover: hover) and (pointer: fine) {
    ul.page-numbers li a:hover{
        background-color: #FFA4B4;
    }
    ul.page-numbers li a.prev:hover {
        background-color: #A09857;
    }
    ul.page-numbers li a.next:hover {
        background-color: #A09857;
    }
}
@media only screen and (max-width:1079px) {
    .pagination{
        padding:70px 0 150px;
    }
    ul.page-numbers{
        gap:15px;
    }

    ul.page-numbers li a{
        width: 26px;
        height: 26px;
    }
    ul.page-numbers li .current{
        width: 26px;
        height: 26px;
    }
    ul.page-numbers li .dots{
        width: 52px;
        height: 26px;
    }
    ul.page-numbers li .dots:after{
        width: 52px;
        height: 3px;
    }
    ul.page-numbers li a.prev {
        width: 13px;
        height: 26px;
    }
    ul.page-numbers li a.next {
        width: 13px;
        height: 26px;
    }
}

/* ==========================================================================
	button-link leftward rightward ******ここはまとめたい******
========================================================================== */
.cell-leftward,.cell-rightward,.cell-links {
    width:fit-content;
    margin:0;
}
.cell-links {
    margin:0 auto;
}
.cell-links a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 68px;
    color: #fff;
    padding: 0 20px;
    background-color: #2F2725;
    position:relative;
}
.cell-links a span{
    font-size: 1.8rem;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    line-height: 1;
    color: #fff;
    transform: translate(0px, 0);
}
.cell-links a:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 30px;
    height: 68px;
    top:0;
    right:100%;
    background-color: #2F2725;
    clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.cell-links a:before {
    content: "";
    position:absolute;
    display: inline-block;
    width: 100%;
    height: 68px;
    top:0;
    right:0;
    background-color: #2F2725;
 }
.cell-links a {
    transition: background-color 0.4s ease;
}
.cell-links a span,.cell-links a:before,.cell-links a:after {
    transition: background-color 0.4s ease, transform 0.4s ease;
}
.cell-links a:after {
    transition: background-color 0.4s ease, transform 0.38s ease;
}
.cell-links a:hover {
    background-color: #A09857;
}
.cell-links a:hover:after {
    transform: translate(-30px, 0);
    background-color: #A09857;
    transition: background-color 0.4s ease, transform 0.42s ease;
}
.cell-links a:hover:before {
    transform: translate(-30px, 0);
    background-color: #A09857;
}
.cell-links a:hover span {
    transform: translate(-30px, 0);
}
@media only screen and (max-width:1079px) {
    .cell-links {
    }
    .cell-links a {
        height: 47px;
        padding: 0 14px;
    }
    .cell-links a span{
        font-size: 1.3rem;
    }
    .cell-links a:after {
        width: 20px;
        height: 47px;
    }
    .cell-links a:before {
        height: 47px;
    }
}
/* 左向きボタン */
.cell-leftward.cell-align-center {
    margin:0 auto;
}
.cell-leftward a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 68px;
    color: #fff;
    padding: 0 20px;
    background-color: #2F2725;
    position:relative;
}
.cell-leftward a span{
    font-size: 1.8rem;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    line-height: 1;
    color: #fff;
    transform: translate(0px, 0);
}
.cell-leftward a:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 30px;
    height: 68px;
    top:0;
    right:100%;
    background-color: #2F2725;
    clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.cell-leftward a:before {
    content: "";
    position:absolute;
    display: inline-block;
    width: 100%;
    width: 100.1%;
    height: 68px;
    top:0;
    right:0;
    background-color: #2F2725;
}
.cell-leftward a {
    transition: background-color 0.4s ease;
}
.cell-leftward a span,.cell-leftward a:before,.cell-leftward a:after {
    transition: background-color 0.4s ease, transform 0.4s ease;
}
.cell-leftward a:after {
    transition: background-color 0.4s ease, transform 0.38s ease;
}
.cell-leftward a:hover {
    background-color: #A09857;
}
.cell-leftward a:hover:after {
    transform: translate(-30px, 0);
    background-color: #A09857;
    transition: background-color 0.4s ease, transform 0.42s ease;
}
.cell-leftward a:hover:before {
    transform: translate(-30px, 0);
    background-color: #A09857;
}
.cell-leftward a:hover span {
    transform: translate(-30px, 0);
}
@media only screen and (max-width:1079px) {
    .cell-leftward {
    }
    .cell-leftward a {
        height: 47px;
        padding: 0 14px;
    }
    .cell-leftward a span{
        font-size: 1.3rem;
    }
    .cell-leftward a:after {
        width: 20px;
        height: 47px;
    }
    .cell-leftward a:before {
        height: 47px;
    }
}
/* 右向きボタン */
.cell-rightward {
    margin:0;
}
.cell-rightward a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 68px;
    color: #fff;
    padding: 0 20px;
    background-color: #2F2725;
    position:relative;
}
.cell-rightward a span{
    font-size: 1.8rem;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1;
    color: #fff;
    transform: translate(0px, 0);
}
.cell-rightward a:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 30px;
    height: 68px;
    top:0;
    left:100%;
    background-color: #2F2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
}
.cell-rightward a:before {
    content: "";
    position:absolute;
    display: inline-block;
    width: 100%;
    width: 100.1%;
    height: 68px;
    top:0;
    left:0;
    background-color: #2F2725;
}
.cell-rightward a {
    transition: background-color 0.4s ease;
}
.cell-rightward a span,.cell-rightward a:before,.cell-rightward a:after {
    transition: background-color 0.4s ease, transform 0.4s ease;
}
.cell-rightward a:after {
    transition: background-color 0.4s ease, transform 0.38s ease;
}
.cell-rightward a:hover {
    background-color: #A09857;
}
.cell-rightward a:hover:after {
    transform: translate(30px, 0);
    background-color: #A09857;
    transition: background-color 0.4s ease, transform 0.42s ease;
}
.cell-rightward a:hover:before {
    transform: translate(30px, 0);
    background-color: #A09857;
}
.cell-rightward a:hover span {
    transform: translate(30px, 0);
}
.cell-rightward.button-concept a:hover,
.cell-rightward.button-concept a:hover:after,
.cell-rightward.button-concept a:hover:before {
    background-color: #97D1DC;
}
.submit-button + .cell-rightward a:hover,
.submit-button + .cell-rightward a:hover:after,
.submit-button + .cell-rightward a:hover:before {
    background-color: #CCA1DD;
}
.button-inquiry .cell-rightward a:hover,
.button-inquiry .cell-rightward a:hover:after,
.button-inquiry .cell-rightward a:hover:before {
    background-color: #CCA1DD;
}
.button-inquiry .cell-leftward a:hover,
.button-inquiry .cell-leftward a:hover:after,
.button-inquiry .cell-leftward a:hover:before {
    background-color: #965F36;
}
.cell-rightward.button-sakura a:hover,
.cell-rightward.button-sakura a:hover:after,
.cell-rightward.button-sakura a:hover:before {
    background-color: #EDC6CD;
}
.cell-rightward.button-sakura a:hover span {
    color: #202945;
}
.cell-rightward.button-navy a:hover,
.cell-rightward.button-navy a:hover:after,
.cell-rightward.button-navy a:hover:before {
    background-color: #202945;
}
.cell-rightward.button-pink a:hover,
.cell-rightward.button-pink a:hover:after,
.cell-rightward.button-pink a:hover:before {
    background-color: #FFA4B4;
}
.cell-leftward.button-pink a:hover,
.cell-leftward.button-pink a:hover:after,
.cell-leftward.button-pink a:hover:before {
    background-color: #FFA4B4;
}
.cell-rightward.button-brown a:hover,
.cell-rightward.button-brown a:hover:after,
.cell-rightward.button-brown a:hover:before {
    background-color: #965F36;
}
.cell-rightward.button-saxeblue a:hover,
.cell-rightward.button-saxeblue a:hover:after,
.cell-rightward.button-saxeblue a:hover:before {
    background-color: #97D1DC;
}
.cell-rightward.button-lavender a:hover,
.cell-rightward.button-lavender a:hover:after,
.cell-rightward.button-lavender a:hover:before {
    background-color: #CCA1DD;
}
.cell-leftward.button-orange a:hover,
.cell-leftward.button-orange a:hover:after,
.cell-leftward.button-orange a:hover:before,
.cell-rightward.button-orange a:hover,
.cell-rightward.button-orange a:hover:after,
.cell-rightward.button-orange a:hover:before {
    background-color: #F5B335;
}

@media only screen and (max-width:1079px) {
    .cell-rightward {
    }
    .cell-rightward a {
        height: 47px;
        padding: 0 14px;
    }
    .cell-rightward a span{
        font-size: 1.3rem;
    }
    .cell-rightward a:after {
        width: 20px;
        height: 47px;
    }
    .cell-rightward a:before {
        height: 47px;
    }
}
.cell-align-center {
    margin:0 auto;
}
.cell-align-left {
    margin:0;
}
.button-inquiry .cell-rightward{
    padding-left:72px;
}
.button-inquiry .cell-leftward{
    padding-right:98px;
}

.button-faq .cell-rightward{
    padding-left:180px;
}
.button-faq .cell-leftward{
    padding-right:88px;
}

.button-course{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.button-course .button-orange{
    padding-right:40px;
}
.button-course .button-brown{
    padding-left:90px;
}

/* ==========================================================================
	guidance
========================================================================== */
.link-guidance{
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 10px;
    padding:100px 0;
}
.button-guidance{
    width: 500px;
    height:200px;
    margin: 0 auto;
    display:block;
    border: 4px solid #CCA1DD;
    padding:36px 96px 26px 48px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position:relative;
}
.link-guidance-01{
    width: 100%;
    height: 100%;
}
.button-guidance:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 40px;
    height: 77px;
    top:50%;
    right:41px;
    background-color: #CCA1DD;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    transform: translate(0, -50%);
}
.button-guidance dt{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 3rem;
    letter-spacing: 0.05em;
    color: #2F2725;
    line-height:1.6;
}
.button-guidance dd{
    font-family: "Inter", sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    color:#5B5B5B;
    line-height:1.8;
}
.button-guidance dt span{
    display: block;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 800;
    font-size: 3rem;
    letter-spacing: 0.05em;
    color: #CCA1DD;
}
.link-guidance-flex{
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    padding:70px 0 150px;
    display: flex;
    justify-content: center;
    gap:20px 0;
    position:relative;
}
.link-guidance-collaboration,.link-guidance-spot{
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    padding:0 0 50px;
}
.button-guidance dl,
.button-guidance dl{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height:100%;
    min-height:72px;
}
.button-event.button-guidance{
    border-color:#97D1DC;
}
.button-stay.button-guidance{
    border-color:#F5B335;
}
.button-event.button-guidance:after {
    background-color: #97D1DC;
}
.button-stay.button-guidance:after {
    background-color: #F5B335;
}
.link-guidance-spot .button-guidance{
    border-color: #A09857;
}
.link-guidance-spot .button-guidance:after {
    background-color: #A09857;
}
.link-guidance-collaboration .button-guidance{
    border-color: #EDC6CD;
}
.link-guidance-collaboration .button-guidance:after {
    background-color: #EDC6CD;
}
.link-guidance-collaboration .button-guidance dt span{
    color: #EDC6CD;
    line-height:1.1;
    margin-top:-0.2em;
}
.link-guidance-collaboration .button-guidance dt{
    position:relative;
    padding-left:112px;
}
.link-guidance-collaboration .button-guidance dt:after {
    width: 92px;
    height: 62px;
    display: inline-block;
    content: "";
    background-image: url("../img/logo_link_button.png");
    background-position: 0 0;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
}
@media (hover: hover) and (pointer: fine) {
    .button-guidance:after {
        transition: transform 0.6s ease;
    }
    .button-guidance:hover:after {
        transform: translate(21px, -50%);
    }
}

@media only screen and (max-width:1079px) {
    .button-guidance{
        width: 100%;
        max-width: 320px;
        height:auto;
        min-height:132px;
        border: 2px solid #CCA1DD;
        padding:24px 32px 20px;
    }
    .link-guidance-01{
        width: 100%;
        height: 100%;
    }
    .button-guidance:after {
        width: 20px;
        height: 48px;
        right:18px;
    }
    .button-guidance dt{
        font-size: 1.8rem;
    }
    .button-guidance dd{
        font-size: 1.3rem;
        padding-right: 50px;
    }
    .button-guidance dt span{
        font-size: 1.8rem;
    }
    .link-guidance-collaboration,.link-guidance-spot{
        padding:0;
    }
    #section-button1,
    #section-button2{
        margin-bottom:80px;
    }
    .link-guidance-collaboration .button-guidance dt{
        padding-left:80px;
    }
    .link-guidance-collaboration .button-guidance dt:after {
        width: 60px;
        height: 41px;
    }
    .link-guidance-flex{
        padding:0 0 60px;
        flex-direction: column;
        gap:30px;
    }
    #section-faq .link-guidance{
        margin: 0 auto;
        padding:60px 0 0;
    }
    #section-faq {
        margin: 0 auto 50px;
    }
    #section-inquiry .subtitle-page{
        font-size: 2.1rem;
        margin-bottom:12px;
    }
    .contact-message{
        font-size: 1.3rem;
        margin-bottom:24px;
    }
}

/* ==========================================================================
	page
========================================================================== */
.title-page{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 5rem;
    letter-spacing: 0.03em;
    color: #2F2725;
    line-height:1.6;
    text-align:center;
    margin-bottom:80px;
}
.subtitle-page, .subtitle-front{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 4rem;
    letter-spacing: 0.03em;
    color: #2F2725;
    line-height:2;
    text-align:left;
    margin-bottom:30px;
}
.section-page {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 100px;
}
.section-intro {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 60px;
    padding-top:70px;
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.description-intro{
    width:630px;
    max-width:62%;
    font-size:1.6rem;
    letter-spacing:.01em;
    line-height:1.8;
    color:#2F2725;
    font-weight:400;
}
.logo-intro{
    width:390px;
    max-width:38%;
    font-size:1.6rem;
}
.logo-intro span{
    width:150px;
    margin:0 auto;
    display: block;
}
.section-intro .subtitle-page {
    width: 100%;
}

@media only screen and (max-width:1079px) {
    .title-page{
        font-size: 3rem;
        margin-bottom:60px;
    }
    .subtitle-page, .subtitle-front {
        font-size: 2.8rem;
        line-height: 1.7;
    }
    .section-page {
        width: 86%;
        margin: 0 auto 80px;
    }
    .section-intro {
        width: 86%;
        margin: 0 auto 30px;
        padding-top:0px;
    }
    .description-intro{
        width:100%;
        max-width:100%;
        font-size:1.3rem;
    }
    .logo-intro{
        width:100%;
        max-width:100%;
    }
    .logo-intro span{
        width:100px;
        margin:0 auto;
        padding:30px 0 0;
    }
}

/* list-cities
-------------------------------------------------------------*/
.wrap-list-city{
    width:100%;
    margin:0 auto 60px;
}
.text-list-city{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
    margin:0 auto 30px;
    text-align:center;
}

.list-city{
    width:100%;
    max-width:760px;
    margin:0 auto;
    display:flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap:20px 20px;
}
.list-city li{

}
.list-city li a{
    width:110px;
    height:60px;
    font-size:1.8rem;
    letter-spacing:.05em;
    line-height:1.2;
    color:#2F2725;
    border:2px solid #2f2725;
    font-weight:500;
    display:flex;
    justify-content: center;
    align-items: center;
}
.list-city li a:hover{
    border:2px solid #F5B335;
}
.list-city li a.selected{
    background-color: #bbb;
    border-color:#2f2725;
}

.section-foreword {
    width: 100%;
    max-width: 760px;
    margin: 0 auto 80px;
}
.state-spot{
    font-size:2.7rem;
    letter-spacing:0.03em;
    line-height:1.84;
    color:#2F2725;
    font-weight:500;
    margin: 0 auto 30px
}
.text-foreword{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
}
.map-spot{
    width: 66%;
    max-width: 500px;
    margin: 0 auto 30px;
    position:relative;
}
.map-spot img.map-spot-text{
    width: 100%;
    max-width: 500px;
    position:absolute;
    top:0;
    left:0;
}
.tab-spot {
    display: none;
}
.tab-spot.is_show {
    display: block;
}
@media only screen and (max-width:1079px) {
    .wrap-list-city{
        margin-bottom:40px;
    }
    .text-list-city{
        font-size: 1.3rem;
        margin-bottom:20px;
    }
    .list-city{
        max-width: 560px;
        gap:13px 13px;
    }
    .list-city li a{
        width:70px;
        height:45px;
        font-size:1.3rem;
        border:1px solid #2f2725;
    }

    .section-foreword {
        width: 86%;
    }
    .state-spot{
        font-size:1.9rem;
    }
    .text-foreword{
        font-size: 1.3rem;
    }
    .map-spot{
        width: 100%;
        max-width: 320px;
        margin-bottom:35px;
    }
    .map-spot img.map-spot-text{
        width: 100%;
        max-width: 320px;
    }
}
@media only screen and (max-width:640px) {
    .list-city{
        max-width: 400px;
    }
}


/* swiper spot
-------------------------------------------------------------*/
.leadtitle-sights{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 3rem;
    letter-spacing: 0.05em;
    color: #2F2725;
    line-height:2;
    text-align:left;
    margin-bottom:30px;
}
.wrap-swiper {
    position: relative;
    width: 100%;
    max-width: 1020px;
    max-width:940px;
    margin:0 auto;
    margin: 0 auto 80px;
}
.wrap-swiper .leadtitle-sights{
}
.wrap-swiper .slide a {
    display: block;
    position: relative;
    width: 250px;
    margin-right: 20px;
}
.wrap-swiper .slide a:last-of-type {
    margin-right: 0px;
}
.wrap-swiper .slide span {
    display: block;
    position: relative;
    width: 250px;
}
.wrap-swiper .name-sight {
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.42;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#2F2725;
    font-size: 1.9rem;
}
.wrap-swiper .img-sights{
    position: relative;
    overflow: hidden;
    width: 100%;
    margin: 0 auto 8px;
    /*aspect-ratio: 1/1;*/
}
.wrap-swiper .swiper-modelcourse .slide a {
    display: block;
    position: relative;
    width: 400px;
    min-height:560px;
    margin-right: 30px;
    border:1px solid #2F2725;
}
.wrap-swiper .swiper-modelcourse .slide a:last-of-type {
    margin-right: 0px;
}
.wrap-swiper .swiper-front-spot .slide a {
    display: block;
    position: relative;
    width: 240px;
    min-height:296px;
    margin-right: 20px;
    border:1px solid #2F2725;
    transition: transform ease 0.4s;
}
.wrap-swiper .swiper-front-spot .slide a:last-of-type {
    margin-right: 0px;
}
.wrap-swiper .swiper-front-spot .slide .swiper-slide-active {
    transform: translate(0, -30px);
    transition-delay: 1000ms;
}
.wrap-swiper .swiper-front-spot .slide .swiper-slide-active {
}
.wrap-swiper .swiper-front-spot .slide .swiper-slide-prev {
}
.wrap-swiper .swiper-front-spot .slide .swiper-slide-next {
}
.wrap-swiper .swiper-front-spot{
}

.wrap-swiper-01 .img-modelcourse{
    position: relative;
    overflow: hidden;
    width: 100%;
    height:210px;
}
.img-modelcourse{
    position: relative;
    overflow: hidden;
    width: 100%;
    height:256px;
}
@media (hover: hover) and (pointer: fine) {
    .img-modelcourse img{
        transition: scale 0.4s ease;
    }
    a:hover .img-modelcourse img{
        scale:1.1;
    }
}
.text-modelcourse{
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding:16px 20px;
}
.name-modelcourse{
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.42;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#2F2725;
    font-size: 2rem;
    margin-bottom:10px;
}
.outset-modelcourse{
    font-weight: 350;
    letter-spacing: .03em;
    line-height: 1.8;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#5B5B5B;
    font-size: 1.5rem;
    min-height:80px;
    margin-bottom:15px;
}
.keyword-modelcourse{
    width:100%;
    display:flex;
    gap:6px;
    flex-wrap: wrap;
}
.keyword-modelcourse li{
    font-weight: 350;
    letter-spacing: .03em;
    line-height: 1;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#2F2725;
    font-size: 1.2rem;
    background-color: #fff;
    padding:3px 5px;
    border:1px solid #2F2725;
}
.keyword-modelcourse li.key-artist{
    background-color: #fff;
}
.keyword-modelcourse li.key-tsuyama{
    background-color: #FFA4B4B2;
}/*津山市*/
.keyword-modelcourse li.key-takahashi{
    background-color: #fff;
}/*高梁市*/
.keyword-modelcourse li.key-niimi{
    background-color: #A09857;
}/*新見市*/
.keyword-modelcourse li.key-maniwa{
    background-color: #97D1DC;
}/*真庭市*/
.keyword-modelcourse li.key-mimasaka{
    background-color: #fff;
}/*美作市*/
.keyword-modelcourse li.key-shinjo{
    background-color: #fff;
}/*新庄村*/
.keyword-modelcourse li.key-kagamino{
    background-color: #CCA1DDB2;
}/*鏡野町*/
.keyword-modelcourse li.key-shoo{
    background-color: #fff;
}/*勝央町*/
.keyword-modelcourse li.key-nagi{
    background-color: #F5B335B2;
}/*奈義町*/
.keyword-modelcourse li.key-nishiawakura{
    background-color: #fff;
}/*西粟倉村*/
.keyword-modelcourse li.key-kumenan{
    background-color: #fff;
}/*久米南町*/
.keyword-modelcourse li.key-misaki{
    background-color: #fff;
}/*美咲町*/

.pager-sights,.pager-gourmet,.pager-modelcourse{
    position:relative;
}
.pager-sights,.pager-gourmet,.pager-front-spot{
    position:relative;
}
.button{
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    width: 54px;
    height:54px;
    background-color: #2F2725;
    border-radius: 50%;
}

.button-prev:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 14px;
    height: 28px;
    top:50%;
    left:50%;
    background-color: #fff;
    clip-path: polygon(100% 0, 0 50%, 100% 100%);
    transform: translate(-60%, -50%);
}
.button-next:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 14px;
    height: 28px;
    top:50%;
    right:50%;
    background-color: #fff;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    transform: translate(60%, -50%);
}
.button:hover{
    background-color: #A09857;
}
.swiper-button-disabled,
    .swiper-button-disabled:hover {
    background-color: #bbb;
}
.wrap-swiper .swiper-scrollbar, .wrap-swiper .swiper-scrollbar.swiper-scrollbar-horizontal {
    position: relative;
    height: 1px;
    background-color: rgba(231, 231, 231, 0.5);
    top: auto;
    left: 0;
    bottom: auto;
    width: 100%;

    opacity:0;
    pointer-events: none;
}
.wrap-swiper .swiper-scrollbar-drag {
    background-color: #ddd;
}
.wrap-swiper .swiper-sights,.wrap-swiper .swiper-gourmet,.wrap-swiper .swiper-modelcourse,.wrap-swiper .swiper-front-spot{
    position:relative;
    padding-bottom:30px;
    padding-bottom:0;
}
.wrap-swiper .swiper-front-spot{
      padding-top:30px;
}
@media only screen and (min-width:1080px) {
    .button {
        position: absolute;
        top: 50%;
        top: 60px;
        z-index: 50;
    }
    .button-prev {
        left: -42px;
    }
    .button-next {
        right: -42px;
    }
    .pager-modelcourse .button{
        top:calc(250px - 54px / 2);
    }
    .pager-front-spot .button{
        top:calc(160px - 54px / 2);
    }
}


/* exhibitions spot
-------------------------------------------------------------*/

.guide-modelcourse{
    position: relative;
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    padding:70px 0 0;
}
.text-guide-modelcourse{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
}
p.text-guide-modelcourse, dl.text-guide-modelcourse {
    padding-top:2em;
}
.plan-modelcourse{
    position: relative;
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
    padding:80px 0 150px;
    padding:80px 0 100px;
}
.list-plan-modelcourse{
    position: relative;
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
}
.list-plan-modelcourse:before {
    content: "";
    position:absolute;
    display: inline-block;
    width: 4px;
    height: 100%;
    top:0%;
    left:30px;
    background-color: #2F2725;
    transform: translate(0, 0%);
    z-index:-1;
}
.item-plan-modelcourse{
}
.item-plan-modelcourse.nomove{
    margin-bottom:50px;
}
.point-plan-modelcourse{
    border:4px solid #2f2725;
    display:flex;
    justify-content: flex-start;
    align-items: center;
    min-height:60px;
    background-color: #fff;
    position:relative;
}
.point-plan-modelcourse.link-info{
    background-color: #2f2725;
}
.point-plan-modelcourse.link-bamboo{
    border-color: #A09857;
    background-color: #A09857;
}/*新見市*/
.point-plan-modelcourse.link-saxeblue{
    border-color: #97D1DC;
    background-color: #97D1DC;
}/*真庭市*/
.point-plan-modelcourse.link-orange{
    border-color: #F5B335;
    background-color: #F5B335;
}/*奈義町*/
.point-plan-modelcourse.link-pink{
    border-color: #FFA4B4;
    background-color: #FFA4B4;
}/*津山市*/
.point-plan-modelcourse.link-lavender{
    border-color: #CCA1DD;
    background-color: #CCA1DD;
}/*鏡野町*/
.point-plan-modelcourse dt{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 3rem;
    letter-spacing: 0.05em;
    color: #2F2725;
    line-height:1;
    width:80px;
    padding-left:0.6em;
}
.point-plan-modelcourse .name-point{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 1.9rem;
    letter-spacing: 0.03em;
    color: #2F2725;
    line-height:1.5;
    width:calc(100% - 80px - 240px);
}
.point-plan-modelcourse .name-point span{
    font-weight: 350;
    font-size: 1.6rem;
}
.link-point{
    width:240px;
}
.point-plan-modelcourse a{
    font-size:1.5rem;
    letter-spacing:.03em;
    line-height:1.5;
    color:#2F2725;
    font-weight:500;
    position:relative;
    font-family: "M PLUS Rounded 1c", sans-serif;
    display:block;
    text-align:right;
    padding-right:64px;
}
.point-plan-modelcourse a:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 14px;
    height: 28px;
    top:50%;
    right:0;
    background-color:#2f2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    transform: translate(-30px, -50%);
}
.point-plan-modelcourse.link-info a:after {
    background-color: #fff;
}
.point-plan-modelcourse.link-info dt{
    color: #fff;
}
.point-plan-modelcourse.link-info .name-point{
    color: #fff;
}
.point-plan-modelcourse.link-info .link-point a{
    color: #fff;
}
.transport-modelcourse{
    padding:1em 70px;
}
.transport-modelcourse p{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.2;
    color:#2F2725;
    padding:1em 2em;
    position:relative;
}
.transport-modelcourse p:before{
    content: "";
    background-position: 0 0;
    background-size: contain;
    background-repeat: no-repeat;
    top: 50%;
    left: 0;
    display: inline-block;
    z-index: 4;
    transform: translate(-50%, -50%);
    position:absolute;
}
.transport-modelcourse p.by-car:before{
    width: 18px;
    height:16px;
    background-image: url("../img/icon_by_car.svg");
}
.transport-modelcourse p.by-train:before{
    width: 18px;
    height:20px;
    background-image: url("../img/icon_by_train.svg");
}
.transport-modelcourse p.by-bus:before{
    width: 18px;
    height:20px;
    background-image: url("../img/icon_by_bus.svg");
}
.transport-modelcourse p.by-cycle:before{
    width: 24px;
    height:16px;
    background-image: url("../img/icon_by_cycle.svg");
}
.transport-modelcourse p.on-foot:before{
    width: 13px;
    height:22px;
    background-image: url("../img/icon_on_foot.svg");
}
.cell-item-modelcourse{
    background-color:#f5f5f5;
    padding:30px;
    display:flex;
    gap:0 34px;
}
.img-item-modelcourse{
    width:50%;
}
.img-item-modelcourse.img-item-modelcourse_01{
    max-width:230px;
}
.img-item-modelcourse.img-item-modelcourse_03{
    max-width:300px;
}
.img-item-modelcourse.img-item-modelcourse_03{
    max-width:230px;
}
.img-item-modelcourse.img-item-modelcourse_04{
    max-width:307px;
}
.img-item-modelcourse.img-item-modelcourse_05{
    max-width:345px;
}
.img-item-modelcourse img{

}
.caption-item-modelcourse{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1rem;
    line-height:1.4;
    color:#2F2725;
    white-space: nowrap;
    padding-top:0.8em;
}
.title-plan-modelcourse{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 4rem;
    letter-spacing: 0.03em;
    color: #2F2725;
    line-height:2;
    position:relative;
}
.list-plan-modelcourse + .title-plan-modelcourse{
    margin-top:64px;
}
@media (hover: hover) and (pointer: fine) {
    .point-plan-modelcourse a:after {
        transition: transform ease 0.3s;
    }
    .point-plan-modelcourse a:hover:after {
        transform: translate(-24px, -50%);
    }
}
.wrap-kanko-okayama{
    position: relative;
    width: 100%;
    max-width: 760px;
    margin: 0 auto 150px;
    display: flex;
    justify-content: center;
}
.myplan-kanko-okayama{
    text-align:center;
}
.myplan-kanko-okayama dt{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    line-height:1.4;
    color:#2F2725;
    padding:0 0 30px;
}
.myplan-kanko-okayama dd{
}
.myplan-kanko-okayama dd a{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 2rem;
    letter-spacing: 0.05em;
    color: #2F2725;
    line-height:1.2;
    position:relative;
    padding:0 34px 0 0;
}
.myplan-kanko-okayama dd a:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 14px;
    height: 28px;
    top:50%;
    right:0%;
    background-color: #2F2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    transform: translate(0, -50%);
    transition: transform ease 0.3s;
}
@media (hover: hover) and (pointer: fine) {
    .myplan-kanko-okayama dd a:hover:after {
        transform: translate(8px, -50%);
    }
}

@media only screen and (max-width:1079px) {
    .guide-modelcourse{
        width: 86%;
        padding:0;
    }
    .text-guide-modelcourse{
        font-size: 1.3rem;
    }
    p.text-guide-modelcourse, dl.text-guide-modelcourse {
        padding-top:30px;
    }
    .plan-modelcourse{
        width: 86%;
        padding:30px 0 80px;
    }
    .list-plan-modelcourse{
    }
    .list-plan-modelcourse:before {
        width: 2px;
    }
    .item-plan-modelcourse{
    }
    .item-plan-modelcourse.nomove{
        margin-bottom:50px;
    }
    .point-plan-modelcourse{
        border-width:2px;
        flex-wrap: wrap;
        padding:16px 0
    }
    .point-plan-modelcourse dt{
        font-size: 2.1rem;
        width:56px;
        padding-left:15px;
    }
    .point-plan-modelcourse .name-point{
        font-weight: 350;
        font-size: 1.6rem;
        width:calc(100% - 96px);
    }
    .point-plan-modelcourse .name-point span{
        font-weight: 350;
        font-size: 1.6rem;
    }
    .link-point{
        width:100%;
    }
    .point-plan-modelcourse a{
        font-size:1.3rem;
        margin-top:10px;
        padding:0 0 0 56px;
        display:inline-block;
        text-align:left;
    }
    .point-plan-modelcourse a:after {
        width: 8px;
        height: 16px;
        transform: translate(20px, -50%);
    }

    .cell-item-modelcourse{
        flex-direction: column;
        gap:10px;
    }
    .img-item-modelcourse{
        width:100%;
    }
    .img-item-modelcourse.img-item-modelcourse_01,
    .img-item-modelcourse.img-item-modelcourse_03,
    .img-item-modelcourse.img-item-modelcourse_03,
    .img-item-modelcourse.img-item-modelcourse_04,
    .img-item-modelcourse.img-item-modelcourse_05{
        max-width:100%;
    }
    .caption-item-modelcourse{
        font-size:1rem;
        transform: scale(0.8);
        transform-origin: right top;
        padding-top:0.4em;
    }
    .title-plan-modelcourse{
        font-size: 2.8rem;
    }
    .list-plan-modelcourse + .title-plan-modelcourse{
        margin-top:56px;
    }
    .transport-modelcourse{
        padding:1em 0 1em 72px;
    }
    .transport-modelcourse p{
        font-size: 1.3rem;
    }

    .wrap-kanko-okayama{
        width: 86%;
        margin: 0 auto 80px;
    }
    .myplan-kanko-okayama{
        text-align:center;
    }
    .myplan-kanko-okayama dt{
        font-size: 1.4rem;
        padding:0 0 20px;
    }
    .myplan-kanko-okayama dd{
    }
    .myplan-kanko-okayama dd a{
        font-size: 1.7rem;
        padding:0 18px 0 0;
    }
    .myplan-kanko-okayama dd a:after {
        width: 8px;
        height: 16px;
        top:50%;
    }
}

/* exhibitions spot
-------------------------------------------------------------*/
.wrap-exhibitions-spot{
    position: relative;
    width: 100%;
    max-width: 1020px;
    max-width:940px;
    margin:0 auto;
    margin: 0 auto 80px;
}
.cell-exhibitions-spot{
    position: relative;
    width: 33%;
    max-width: 307px;
    margin:0 auto;
    margin: 0 auto 80px;
}
.cell-exhibitions-spot>a{
    position: relative;
    width: 100%;
    margin: 0;
    display: block;
}
.text-exhibitions-spot{
    position: relative;
    width: 100%;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#2F2725;
}
.img-exhibitions-spot {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin: 0 auto 10px;
    /*aspect-ratio: 1/1;*/
}
.text-exhibitions-spot>.name-artist, .text-item-modelcourse>.name-artist {
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.533;
    margin-bottom: 8px;
    font-size: 1.5rem;
}
.bullet-pink{
    color:#FFA4B4;
}
.bullet-artist{
    color: #fff;
}
.bullet-tsuyama{
    color: #FFA4B4B2;
}/*津山市*/
.bullet-takahashi{
    color: #fff;
}/*高梁市*/
.bullet-niimi{
    color: #A09857B2;
}/*新見市*/
.bullet-maniwa{
    color: #97D1DCB2;
}/*真庭市*/
.bullet-mimasaka{
    color: #fff;
}/*美作市*/
.bullet-shinjo{
    color: #fff;
}/*新庄村*/
.bullet-kagamino{
    color: #CCA1DDB2;
}/*鏡野町*/
.bullet-shoo{
    color: #fff;
}/*勝央町*/
.bullet-nagi{
    color: #F5B335B2;
}/*奈義町*/
.bullet-nishiawakura{
    color: #fff;
}/*西粟倉村*/
.bullet-kumenan{
    color: #fff;
}/*久米南町*/
.bullet-misaki{
    color: #fff;
}/*美咲町*/

.text-exhibitions-spot>.name-artworks,.text-item-modelcourse>.name-artworks {
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 1.42;
    margin-bottom: 8px;
    font-size: 1.9rem;
}

.text-item-modelcourse .location-artworks dt,.text-item-modelcourse .location-artworks dd,
.text-exhibitions-spot .location-artworks dt,.text-exhibitions-spot .location-artworks dd{
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.5;
    color: #5B5B5B;
    font-size: 1.4rem;
}
/*
.state-spot{
    font-size:2.7rem;
    letter-spacing:0.03em;
    line-height:1.84;
    color:#2F2725;
    font-weight:500;
    margin: 0 auto 30px
}
.text-foreword{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
}
.wrap---swiper {
    position: relative;
    width: 100%;
    max-width: 1020px;
    max-width:940px;
    margin:0 auto;
    margin: 0 auto 80px;
}
*/

@media only screen and (max-width:1079px) {
    .wrap-exhibitions-spot{
        max-width:640px;
    }
    .cell-exhibitions-spot{
        position: relative;
        width: 86%;
        max-width: 560px;
        margin:0 auto;
    }
    .text-exhibitions-spot>.name-artist, .text-item-modelcourse>.name-artist {
        margin-bottom: 3px;
        font-size: 1.3rem;
    }
    .text-exhibitions-spot>.name-artworks,.text-item-modelcourse>.name-artworks {
        margin-bottom: 3px;
        font-size: 1.6rem;
    }
    .text-item-modelcourse .location-artworks dt,.text-item-modelcourse .location-artworks dd,
    .text-exhibitions-spot .location-artworks dt,.text-exhibitions-spot .location-artworks dd{
        font-size: 1.3rem;
    }
    .cell-exhibitions-spot .img-exhibitions-spot {
        max-width: 560px;
    }
    .wrap-exhibitions-spot .text-exhibitions-spot>.name-artist, .wrap-exhibitions-spot .text-item-modelcourse>.name-artist {
        margin-bottom: 3px;
        font-size: 1.3rem;
    }
    .wrap-exhibitions-spot .text-exhibitions-spot>.name-artworks,.wrap-exhibitions-spot .text-item-modelcourse>.name-artworks {
        margin-bottom: 3px;
        font-size: 1.6rem;
    }
    .wrap-exhibitions-spot .text-item-modelcourse .location-artworks dt,.wrap-exhibitions-spot .text-item-modelcourse .location-artworks dd,
    .wrap-exhibitions-spot .text-exhibitions-spot .location-artworks dt,.wrap-exhibitions-spot .text-exhibitions-spot .location-artworks dd{
        font-size: 1.3rem;
    }
    .wrap-exhibitions-spot .cell-exhibitions-spot .img-exhibitions-spot {
        max-width: 560px;
    }
}

@media only screen and (min-width:1080px) {
    .wrap-exhibitions-spot{
        margin: 0 auto 100px;
    }
    .cell-exhibitions-spot{
        position: relative;
        width: 100%;
        max-width: 100%;
    }
    .cell-exhibitions-spot>a{
        display: flex;
        gap:60px;
    }
    .cell-exhibitions-spot .text-exhibitions-spot{
        max-width: 440px;
        width: 45%;
        display:flex;
        flex-direction: column;
        justify-content: flex-end;
    }
    .cell-exhibitions-spot .img-exhibitions-spot {
        max-width: 500px;
        width: 52%;
        margin: 0;
    }
    .text-exhibitions-spot>.name-artist, .text-item-modelcourse>.name-artist {
        font-weight: 500;
        letter-spacing: .03em;
        line-height: 1.533;
        margin-bottom: 8px;
        font-size: 1.5rem;
    }
}

/* inner links
-------------------------------------------------------------*/
.wrap-anchor-inner{
    width:100%;
    margin:0 auto;
    background-color:#f5f5f5;
}
.anchor-inner{
    width:100%;
    max-width:1280px;
    min-height:80px;
    margin:0 auto;
    display:flex;
    justify-content: center;
    align-items: center;
    gap:0 60px;
}
.anchor-inner li{
}
.anchor-inner li a{
    font-size:1.6rem;
    letter-spacing:.01em;
    line-height:2;
    color:#2F2725;
    font-weight:500;
    display:block;
    position:relative;
    padding-left:28px;
}
.anchor-inner li a:after{
    content: "";
    position:absolute;
    top:50%;
    left:0;
    display: inline-block;
    width: 16px;
    height: 8px;
    background: #2F2725;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    transform: translate(0, -50%);
}
.text-intro{
    width:100%;
    max-width:1020px;
    padding:80px 0 60px;
    margin:0 auto;
    display:flex;
    justify-content: center;
}
.text-intro p{
    max-width:760px;
    font-size:1.6rem;
    letter-spacing:.01em;
    line-height:1.8;
    color:#2F2725;
    font-weight:400;
}
@media only screen and (max-width:1079px) {
    .anchor-inner{
        gap:0;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        max-width:480px;
        min-height:40px;
        padding:10px 24px;
    }
    .anchor-inner li a{
        font-size:1.5rem;
        letter-spacing:.03em;
        line-height:2.1;
        padding-left:26px;
    }
    .anchor-inner li a:after{
        width: 12px;
        height: 6px;
    }
    .text-intro{
        width:86%;
        padding:72px 0 56px;
    }
    .text-intro p{
        font-size:1.3rem;
        text-align: justify;
    }
}

/* overview ,concept / about
-------------------------------------------------------------*/
.section-overview-01{
    width: 100%;
    max-width:1280px;
}
.description-list-overview{
    width: 75%;
    max-width:768px;
    margin:0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 30px 0;
}
.description-list-overview dt{
    width: 28%;
    max-width:215px;
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 600;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    color:#FFA4B4;
 }
.description-list-overview dd{
    width: 72%;
    max-width:550px;
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    color:#2F2725;
}
.cell-page{
    width: 76%;
    max-width: 760px;
    margin: 0 auto;
}
.cell-concept{
    margin: 0 auto 60px;
}
.img-concept{
    width: 100%;
    margin: 0 auto 50px;
    position:relative;
}
.logo-concept{
    width: 268px;
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    z-index: 4;
    transform: translate(-50%, -50%);
}
.text-concept , .text-page{
    width: 100%;
    margin: 0 auto 1.5em;
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
}
.text-concept:last-of-type{
    margin: 0 auto;
}
.cell-profile,.cell-director{
    width: 100%;
    margin: 0 auto 50px;
    display: flex;
    gap:0 60px;
}
.img-profile,.img-director{
    width: 34%;
    max-width: 330px;
}
.bio-profile,.bio-director{
    width: 64%;
    max-width: 630px;
}
.name-profile,.name-director{
    width: 100%;
    margin-bottom:56px;
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 0 30px;
    color:#2F2725;
}
.name-profile dt,.name-director dt{
    font-weight: 500;
    font-size: 3rem;
    letter-spacing: 0.05em;
    font-family: Arial, "Noto Sans JP", sans-serif;
}
.name-profile dd,.name-director dd{
    font-weight: 400;
    font-size: 2.1rem;
    letter-spacing: 0.03em;
    font-family: Arial, sans-serif;
}
.text-profile,.text-director{
    width: 100%;
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.5rem;
    letter-spacing: 0.03em;
    line-height:1.8;
    color:#2F2725;
}
.text-profile:last-of-type,.text-director:last-of-type{
    margin-top:1em;
}
.title-policy{
}
.cell-concept .text-concept , .cell-concept .text-page{
    font-family: Arial, "Noto Sans JP", sans-serif;
}
.text-remark{
    font-size: 1.5rem;
}

@media only screen and (max-width:1079px) {
    #section-concept{
        margin-bottom:80px;
    }
    .section-overview-01{
        width: 100%;
        max-width:1280px;
    }
    .description-list-overview{
        width: 100%;
        gap: 24px 0;
    }
    .description-list-overview dt{
        width: 38%;
        font-weight: 500;
        font-size: 1.2rem;
    }
    .description-list-overview dd{
        width: 62%;
        font-weight: 400;
        font-size: 1.2rem;
    }

    .cell-page{
        width: 100%;
        max-width: 960px;
    }
    .cell-concept{
        margin: 0 auto 30px;
    }
    .img-concept{
        width: 124%;
        margin: 0 -12% 30px;
    }
    .logo-concept{
        width: 132px;
    }
    .text-concept , .text-page{
        margin: 0 auto 1.5em;
        font-size: 1.3rem;
        text-align: justify;
    }
    .text-concept:last-of-type{
        margin: 0 auto;
    }
    .cell-profile{
        margin: 0 auto 60px;
        flex-direction: column;
        gap:0;
        justify-content: center;
        align-items: center;
    }
    .cell-director{
        width: 100%;
        margin: 0 auto 50px;
        display: block;
        gap:0;
        position:relative;
    }
    .img-profile{
        width: 78%;
        max-width: 480px;
    }
    .img-director{
        width: 52%;
        max-width: 640px;
        position:absolute;
        top:0;
        left:0;
    }
    .bio-profile,.bio-director{
        width: 100%;
        max-width: 1020px;
    }
    .name-profile{
        width: 100%;
        margin-bottom:0;
        flex-direction: column;
        gap:10px 0;
        justify-content: center;
        align-items: center;
        padding:1em 0;
        min-height:100px;
    }
    .name-director{
        width: 100%;
        margin-bottom:30px;
        padding-left:52%;
        padding-left:60.3%;
        aspect-ratio: 320 / 250;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 0;
    }
    .name-profile dt,.name-director dt{
        font-size: 2.1rem;
    }
    .name-profile dd,.name-director dd{
        font-size: 1.6rem;
    }
    .text-profile,.text-director{
        font-size: 1.1rem;
    }
    .text-remark{
        font-size: 1.1rem;
    }
}

/* ==========================================================================
	collaboration
========================================================================== */
.content-retractable{
    width: 100%;
    max-width:1020px;
    margin:0 auto;
    padding:88px 0 0;
    display: none;
}
.define-gofor2027{
    width: 75%;
    max-width:760px;
    margin:0 auto;
    color: #2F2725;
    font-weight:350;
}
.define-gofor2027 dt{
    font-size:2.1rem;
    letter-spacing:0.03em;
    line-height: 1.833;
    font-weight:600;
    margin-bottom:1em;
}
.define-gofor2027 dd{
    font-size:1.6rem;
    letter-spacing:0.03em;
    line-height: 1.833;
    color: #2F2725;
    padding-bottom:3em;
}
.define-gofor2027 dd li{
    margin-left:18px;
    margin-bottom:0.2em;
    list-style-type: disc;
}
.define-gofor2027 dd li.nobullet{
     text-indent:-1em;
     list-style-type: none;
 }
.define-gofor2027 dd p,.define-gofor2027 dd ul{
}
.define-logomark{
    width: 75%;
    max-width:760px;
    margin:0 auto;
    color: #2F2725;
    font-weight:350;
}
.define-logomark dt{
    font-size:2.1rem;
    letter-spacing:0.03em;
    line-height: 1.833;
    font-weight:600;
    margin-bottom:1em;
}
.define-logomark dd{
    font-size:1.6rem;
    letter-spacing:0.03em;
    line-height: 1.833;
    color: #2F2725;
    padding-bottom:3em;
}
.define-logomark dd li{
    margin-left:0px;
    margin-bottom:0.2em;
    list-style-type: none;
}
.define-logomark dd li.nobullet{
     text-indent:-1em;
     list-style-type: none;
 }
.define-logomark dd p,.define-logomark dd ul{
}
.rem-logomark{
    margin-top:3em;
}
.pdf-logomark{
    margin-top:1em;
}
.pdf-logomark a{
     text-decoration:underline;
 }

/* retractable contents
-------------------------------------------------------------*/
.trigger-retractable{
    background-color: #FFF;
    width:fit-content;
    margin:0 auto;
    position:relative;
}
.trigger-retractable a{
     font-family: "M PLUS Rounded 1c", sans-serif;
     font-weight: 500;
     font-size: 1.8rem;
     letter-spacing: 0.03em;
     color: #2F2725;
     line-height:1.1;
     border:2px solid #EDC6CD;
     width:fit-content;
     min-width:180px;
     padding:20px 64px 20px 24px;
     margin:0 auto;
     position:relative;
    display: block;
 }
.trigger-retractable:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 100vw;
    max-width:1020px;
    height: 4px;
    top:50%;
    left:50%;
    background-color: #EDC6CD;
    transform: translate(-50%, -50%);
    z-index: -1;
}
.trigger-retractable a::before,.trigger-retractable a::after  {
    content: '';
    display: inline-block;
    width: 20px;
    height: 2px;
    background-color: #EDC6CD;
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
}

.trigger-retractable a::after {
    transform: translateY(-50%) rotate(90deg);
    transition: transform 0.4s;
}

.trigger-retractable.is-open a::before {
}

.trigger-retractable.is-open a::after {
    transform: translateY(-50%) rotate(360deg);
}
.trigger-retractable a span:nth-of-type(1) {
    display:inline;
}
.trigger-retractable a span:nth-of-type(2) {
    display:none;
}
.trigger-retractable.is-open a span:nth-of-type(1) {
    display:none;
}
.trigger-retractable.is-open a span:nth-of-type(2) {
    display:inline;
}
.trigger-retractable.is-open a::after {
    transform: translateY(-50%) rotate(360deg);
}

.define-gofor2027 + .cell-page{
    margin-bottom:120px;
}
.define-logomark + .cell-page{
    margin-bottom:120px;
}

#section-logomark{
}

#section-logomark .trigger-retractable a{
    border-color:#A09857;
}
#section-logomark .trigger-retractable:after {
    background-color: #A09857;
}
#section-logomark .trigger-retractable a::before,#section-logomark .trigger-retractable a::after  {
    background-color: #A09857;
}

@media (hover: hover) and (pointer: fine) {
    .trigger-retractable a:hover{
        color: #EDC6CD;
    }
    .trigger--retractable a:active{
        color: #2F2725;
    }
    #section-logomark .trigger-retractable a:hover{
        color: #A09857;
    }
    #section--logomark .trigger-retractable a:active{
        color: #2F2725;
    }
}

@media only screen and (max-width:1079px) {
    .content-retractable{
        padding:40px 0 30px;
    }
    .define-gofor2027{
        width: 100%;
        max-width:100%;
    }
    .define-gofor2027 dt{
        font-size:1.6rem;
        margin-bottom:10px;
    }
    .define-gofor2027 dd{
        font-size:1.3rem;
        padding-bottom:50px;
    }
    .define-gofor2027 dd li{
        margin-left:18px;
        margin-bottom:0.2em;
        list-style-type: disc;
    }
    .define-gofor2027 dd li.nobullet{
        text-indent:-1em;
        list-style-type: none;
    }
    .define-gofor2027 dd:last-of-type{
        padding-bottom:30px;
    }
    .define-gofor2027 + .cell-page,
    .define-logomark + .cell-page{
        margin-bottom:80px;
    }
    .define-logomark{
        width: 100%;
        max-width:100%;
    }
    .define-logomark dt{
        font-size:1.6rem;
        margin-bottom:10px;
    }
    .define-logomark dd{
        font-size:1.3rem;
        padding-bottom:40px;
    }
    .rem-logomark{
        margin-top:2em;
    }

    .trigger-retractable a{
        font-size: 1.6rem;
        min-width:150px;
        padding:10px 44px 10px 20px;
    }
    .trigger-retractable:after {
        height: 2px;
    }
    .trigger-retractable a::before,.trigger-retractable a::after  {
        right: 15px;
        width: 15px;
    }
}

/* ==========================================================================
	faq
========================================================================== */
.cell-faq{
    width: 80%;
    max-width: 760px;
    margin: 0 auto 30px;
}
.cell-question{
    position:relative;
    background-color:#f5f5f5;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    min-height:60px;
    padding:0 20px;
}
.cell-question p{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
}
.cell-answer{
    position:relative;
    background-color:#EDC6CD;
    width: 100%;
    padding:13px 20px;
    display:none;
}
.cell-answer p{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
}
.cell-answer p a{
    text-decoration: underline;
}
.cell-answer p a:hover{
    text-decoration: none;
}
.cell-question::before,.cell-question::after  {
    content: '';
    display: inline-block;
    width: 20px;
    height: 2px;
    background-color: #2F2725;
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
}

.cell-question::after {
    transform: translateY(-50%) rotate(90deg);
    transition: transform 0.4s;
}
.cell-question.is-open::before {
}
.cell-question.is-open::after {
    transform: translateY(-50%) rotate(360deg);
}
.wrap-anchor-faq{
    width:100%;
    margin:0 auto;
}
.anchor-faq{
    width:100%;
    max-width:1020px;
    margin:0 auto 100px;
    display:flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap:30px 20px;
}
.anchor-faq li{
    display:flex;
}
.anchor-faq li:nth-of-type(6),.anchor-faq li:nth-of-type(5),.anchor-faq li:nth-of-type(3),.anchor-faq li:nth-of-type(7){
    width:30%;
}
.anchor-faq li:nth-of-type(6),.anchor-faq li:nth-of-type(3){
    justify-content: flex-end;
}
.anchor-faq li a{
    font-size:1.6rem;
    letter-spacing:.03em;
    line-height:2.1;
    color:#2F2725;
    font-weight:500;
    position:relative;
    padding:8px 20px 8px 46px;
    width:fit-content;
    border:2px solid #2f2725;
    display:flex;
    justify-content: center;
    align-items: center;
}
.anchor-faq li a:after{
    content: "";
    position:absolute;
    top:50%;
    left:20px;
    display: inline-block;
    width: 16px;
    height: 8px;
    background: #2F2725;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    transform: translate(0, -50%);
}
.text-intro-faq{
    width:100%;
    max-width:1020px;
    padding:0px 0 60px;
    margin:0 auto;
    display:flex;
    justify-content: center;
}
.text-intro-faq p{
    max-width:760px;
    font-size:1.6rem;
    letter-spacing:.01em;
    line-height:1.8;
    color:#2F2725;
    font-weight:400;
}

@media only screen and (max-width:1079px) {
    #section-faq01,#section-faq02,#section-faq03,#section-faq04,#section-faq05,#section-faq06,#section-faq07,#section-faq08{
        width: 90%;
        margin: 0 auto 60px;
    }
    #section-faq01 .subtitle-page ,#section-faq02 .subtitle-page,#section-faq03 .subtitle-page,#section-faq04 .subtitle-page,#section-faq05 .subtitle-page,#section-faq06 .subtitle-page,#section-faq07 .subtitle-page,#section-faq08 .subtitle-page{
        font-size: 2.1rem;
        margin-bottom:20px;
    }

    .cell-faq{
        width: 100%;
        max-width: 960px;
        margin: 0 auto 20px;
    }
    .cell-question{
        min-height:55px;
        padding:12px 80px 12px 24px;
    }
    .cell-question p{
        font-size: 1.3rem;
    }
    .cell-answer{
        padding:13px 24px;
    }
    .cell-answer p{
        font-size: 1.3rem;
    }

    .wrap-anchor-faq{
        width:100%;
        margin:0 auto;
    }
    .anchor-faq{
        width:86%;
        margin:0 auto 80px;
        justify-content: flex-start;
        gap:10px 10px;
    }
    .anchor-faq li{
        display:flex;
    }
    .anchor-faq li:nth-of-type(6),.anchor-faq li:nth-of-type(5),.anchor-faq li:nth-of-type(3),.anchor-faq li:nth-of-type(7){
        width:30%;
        width:fit-content;
    }
    .anchor-faq li:nth-of-type(6),.anchor-faq li:nth-of-type(3){
        justify-content: flex-start;
    }
    .anchor-faq li a{
        font-size:1.2rem;
        padding:4px 10px 4px 30px;
        border:1.5px solid #2f2725;
    }
    .anchor-faq li a:after{
        left:10px;
        width: 12px;
        height: 6px;
    }

    .text-intro-faq{
        padding:0 0 30px;
    }
    .text-intro-faq p{
        font-size:1.3rem;
        letter-spacing:.03em;
        text-align: justify;
    }

    .button-inquiry .cell-rightward{
        padding-left:36px;
    }
    .button-inquiry .cell-leftward{
        padding-right:56px;
    }
    .button-faq .cell-rightward{
        padding-left:80px;
    }
    .button-faq .cell-leftward{
        padding-right:70px;
    }

    .button-course .button-orange{
        padding-right:64px;
    }
    .button-course .button-brown{
        padding-left:72px;
    }
}

/* ==========================================================================
	access
========================================================================== */
.cell-access{
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 30px;
}
.cell-access-from{
    position:relative;
    background-color:#fff;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    min-height:80px;
    padding:0 40px;
    border:2px solid #2f2725;
}
.cell-access-from p{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 3rem;
    letter-spacing: 0.05em;
    line-height:1.0;
    color:#2F2725;
}
.cell-access-means{
    position:relative;
    background-color:#f5f5f5;
    width: 100%;
    padding:80px 110px;
    display:block;
    display:none;
}
.cell-access-means p{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
}
.cell-access-means p a{
    text-decoration: underline;
}
.cell-access-means p a:hover{
    text-decoration: none;
}
.cell-access-from::before,.cell-access-from::after  {
    content: '';
    display: inline-block;
    width: 30px;
    height: 2px;
    background-color: #2F2725;
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
}

.cell-access-from::after {
    transform: translateY(-50%) rotate(90deg);
    transition: transform 0.4s;
}
.cell-access-from.is-open::before {
}
.cell-access-from.is-open::after {
    transform: translateY(-50%) rotate(360deg);
}
.wrap-anchor-access{
    width:100%;
    margin:0 auto;
}
.anchor-access{
    width:100%;
    max-width:1020px;
    margin:0 auto 100px;
    display:flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap:20px 20px;
}
.anchor-access li{
    display:flex;
}/*
.anchor-access li:nth-of-type(6),.anchor-access li:nth-of-type(5),.anchor-access li:nth-of-type(3),.anchor-access li:nth-of-type(7){
    width:30%;
}
.anchor-access li:nth-of-type(6),.anchor-access li:nth-of-type(3){
    justify-content: flex-end;
}*/
.anchor-access li:nth-of-type(5),.anchor-access li:nth-of-type(7){
    width:40%;
}
.anchor-access li:nth-of-type(5){
    justify-content: flex-end;
}
.anchor-access li a{
    font-size:1.6rem;
    letter-spacing:.03em;
    line-height:2.1;
    color:#2F2725;
    font-weight:500;
    position:relative;
    padding:8px 20px 8px 46px;
    width:fit-content;
    border:2px solid #2f2725;
    display:flex;
    justify-content: center;
    align-items: center;
}
.anchor-access li a:after{
    content: "";
    position:absolute;
    top:50%;
    left:20px;
    display: inline-block;
    width: 16px;
    height: 8px;
    background: #2F2725;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    transform: translate(0, -50%);
}
.text-intro-access{
    width:100%;
    max-width:1020px;
    padding:0px 0 20px;
    margin:0 auto;
    display:flex;
    justify-content: center;
}
.text-intro-access p{
    max-width:760px;
    font-size:1.6rem;
    letter-spacing:.01em;
    line-height:1.8;
    color:#2F2725;
    font-weight:400;
}

#section-access01>.subtitle-page,
#section-access02>.subtitle-page{
    margin-top:80px;
}
.wrap-northern-part{
    width:100%;
    max-width:1020px;
    margin:0 auto 80px;
    padding:0 ;
    display: flex;
    gap:0 60px;
}
.link-northern-part{
    width:49%;
    max-width:480px;
}
.link-northern-part .text-intro-access{
    padding:0 0 30px;
    justify-content: flex-start;
}
.link-northern-part .anchor-access{
    width:100%;
    max-width:1020px;
    margin:0;
    display:flex;
    justify-content: flex-start;
}
.link-northern-part .anchor-access li:nth-of-type(5),.link-northern-part .anchor-access li:nth-of-type(7){
    width:auto;
}
.anchor-access li a{
    min-width:136px;
    padding-left:38px;
    padding-right:10px;
}
.map-northern-part{
    width:50%;
    max-width:500px;
}
@media only screen and (max-width:1079px) {
    .cell-access{
        margin: 0 auto 20px;
    }
    .cell-access-from{
        min-height:60px;
        padding:0 20px;
    }
    .cell-access-from p{
        font-size: 2.1rem;
        letter-spacing: 0.03em;
    }
    .cell-access-from::before,.cell-access-from::after  {
        width: 20px;
        right: 20px;
    }
    .cell-access-means{
        padding:30px 20px;
        text-align:center;
        display:none;
    }
    .cell-access-means img{
        max-width:400px;
    }
    .cell-access-means p{/**/
        font-family: Arial, "Noto Sans JP", sans-serif;
        font-weight: 350;
        font-size: 1.6rem;
        letter-spacing: 0.03em;
        line-height:1.875;
        color:#2F2725;
    }
    .anchor-access,.link-northern-part .anchor-access{
        margin:0 auto 60px;
        justify-content: flex-start;
        gap:10px 10px;
        max-width:320px;
        max-width:800px;
    }
    .anchor-access li{
        width:100px;
    }
    .anchor-access li:nth-of-type(5),.anchor-access li:nth-of-type(7){
        width:100px;
    }
    .anchor-access li:nth-of-type(5){
        justify-content: flex-start;
    }
    .anchor-access li a{
        font-size:1.2rem;
        padding:2px 8px 2px 20px;
        width:auto;
        min-width:100px;
        min-height:24px;
    }
    .anchor-access li a:after{
        left:6px;
        width: 12px;
        height: 6px;
    }
    .text-intro-access{
    }
    .text-intro-access p{
        font-size:1.3rem;
        letter-spacing:.03em;
    }

    .wrap-northern-part{
        margin:0 auto 30px;
        gap:0 30px;
        flex-direction: column;
    }
    .link-northern-part{
        width:100%;
        max-width:480px;
        max-width:800px;
        margin:0 auto;
    }
    .link-northern-part .text-intro-access{
        padding:0 0 20px;
        justify-content: center;
    }
    .wrap-northern-part .link-northern-part .anchor-access{
        margin:0 auto 30px;
    }
    .map-northern-part{
        width:100%;
        max-width:500px;
        margin:0 auto;
    }
}

/* ==========================================================================
	newslist
========================================================================== */
.wrap-newslist{
    width: 100%;
    max-width:1280px;
    margin:0 auto;
    display: flex;
}
.content-newslist{
    width: 80%;
    margin:0;
    display: flex;
    flex-wrap: wrap;
    gap:84px;
}
.item-newslist{
    max-width: 240px;
    width:24%;
}
.img-newslist{
    width: 100%;
    aspect-ratio: 1/1;
    margin-bottom:10px;
    position:relative;
}
.img-newslist .img-fit {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mask-circle {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: lime;
    mask-image: linear-gradient(#000, #000), url("../img/mask_circle.svg");
    mask-repeat: no-repeat, no-repeat;
    mask-position:
            0 0,
            center center;
    mask-size:
            800px 900px,
            240px 200px;
    mask-composite: exclude;
}
.img-newslist:after{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #F5B335;
    mask-image: linear-gradient(#000, #000), url("../img/mask_circle.svg");
    mask-repeat: no-repeat, no-repeat;
    mask-position:
            0 0,
            center center;
    mask-size:
            100% 100%,
            240px 200px;
    mask-composite: exclude;
    display: inline-block;
    content: "";
    z-index: 4;
    opacity:0;
}
.item-newslist:nth-of-type(4n-3) .img-newslist:after{
    background-color: #F5B335;
}
.item-newslist:nth-of-type(4n-2) .img-newslist:after{
    background-color: #965F36;
}
.item-newslist:nth-of-type(4n-1) .img-newslist:after{
    background-color: #EDC6CD;
}
.item-newslist:nth-of-type(4n) .img-newslist:after{
    background-color: #FFA4B4;
}
.name-newslist {
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 2rem;
    letter-spacing: 0.03em;
    color: #2F2725;
    margin-bottom:15px;
}
.date-newslist {
    font-weight: 400;
    font-size:1.5rem;
    font-family: "Inter", sans-serif;
    line-height:1;
    color: #2F2725;
    margin-bottom:22px;
    display: block;
}
.mark-new {
    font-weight: 800;
    font-size:1.5rem;
    font-family: "Inter", sans-serif;
    line-height:1;
    color: #FFA4B4;
    margin-left:1em;
}

.item-category{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 1.3rem;
    letter-spacing: 0.05em;
    line-height:1;
    color: #2F2725;
    display: inline-block;
    border:1px solid #2F2725;
    padding:4px 4px;
}
.item-category.category-notice:before{
    content: "● ";
    color:#97D1DC;
}
.item-category.category-event:before{
    content: "● ";
    color:#FFA4B4;
}
.item-category.category-pressrelease:before{
    content: "● ";
    color:#965F36;
}
.side-newslist{
    width: 20%;
    max-width:260px;
    margin:0;
}
.title-newslist{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 4rem;
    letter-spacing: 0.03em;
    color: #2F2725;
    margin-bottom:120px;
}
.list-category{
}
.list-category li{
    margin-bottom:18px;
    width:92%;
}
.list-category li a{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 1.7rem;
    letter-spacing: 0.04em;
    color: #2F2725;
    display: inline-block;
    border:1px solid #2F2725;
    padding:3px 8px;
}
.list-category li.category-notice a:before,
.list-category li.category-01 a:before{
    content: "● ";
    color:#97D1DC;
}
.list-category li.category-event a:before,
.list-category li.category-02 a:before{
    content: "● ";
    color:#FFA4B4;
}
.list-category li.category-pressrelease a:before,
.list-category li.category-03 a:before{
    content: "● ";
    color:#965F36;
}

@media (hover: hover) and (pointer: fine) {
    .item-newslist a:hover{
    }
    .item-newslist:nth-of-type(4n-3) a .name-newslist,
    .item-newslist:nth-of-type(4n-3) a .date-newslist,
    .item-newslist:nth-of-type(4n-2) a .name-newslist,
    .item-newslist:nth-of-type(4n-2) a .date-newslist,
    .item-newslist:nth-of-type(4n-1) a .name-newslist,
    .item-newslist:nth-of-type(4n-1) a .date-newslist,
    .item-newslist:nth-of-type(4n) a .name-newslist,
    .item-newslist:nth-of-type(4n) a .date-newslist {
        transition: color ease 0.4s;
    }
    .item-newslist:nth-of-type(4n-3) a:hover .name-newslist,
    .item-newslist:nth-of-type(4n-3) a:hover .date-newslist {
        color: #97D1DC;
    }
    .item-newslist:nth-of-type(4n-2) a:hover .name-newslist,
    .item-newslist:nth-of-type(4n-2) a:hover .date-newslist {
        color: #CCA1DD;
    }
    .item-newslist:nth-of-type(4n-1) a:hover .name-newslist,
    .item-newslist:nth-of-type(4n-1) a:hover .date-newslist {
        color: #202945;
    }
    .item-newslist:nth-of-type(4n) a:hover .name-newslist,
    .item-newslist:nth-of-type(4n) a:hover .date-newslist {
        color: #A09857;
    }
    .item-newslist a .img-newslist:after{
        transition: opacity ease 0.4s;
    }
    .item-newslist a:hover .img-newslist:after{
        opacity:1;
    }
    .list-category li a,
    .list-category li.category-notice a,.list-category li.category-01 a,
    .list-category li.category-event a,.list-category li.category-02 a,
    .list-category li.category-pressrelease a,.list-category li.category-03 a{
        transition: color ease 0.4s, border-color ease 0.4s;
    }

    .list-category li a:hover{
        color: #8d8d8d;
        border-color:#8d8d8d;
    }
    .list-category li.category-notice a:hover,.list-category li.category-01 a:hover{
        color: #97D1DC;
        border-color:#97D1DC;
    }
    .list-category li.category-event a:hover,.list-category li.category-02 a:hover{
        color: #FFA4B4;
        border-color:#FFA4B4;
    }
    .list-category li.category-pressrelease a:hover,.list-category li.category-03 a:hover{
        color: #965F36;
        border-color:#965F36;
    }
}

@media only screen and (min-width:1080px) {
    .wrap-newslist{
        padding-top:50px;
    }
}
@media only screen and (max-width:1079px) {
    .wrapper {
        padding-top:64px;


        overflow:hidden;/**/
    }
    .wrap-content{
        padding:40px 0 100px;
    }
    .wrap-newslist{
        width: 86%;
        max-width:440px;
        flex-direction: column;
    }
    .content-newslist{
        width: 100%;
        margin:0;
        display: flex;
        flex-wrap: wrap;
        gap:40px 16px;
    }
    .item-newslist{
        max-width: 240px;
        width:calc(50% - 8px);
    }
    .name-newslist {
        font-size: 1.2rem;
        margin-bottom:10px;
    }
    .date-newslist {
        font-size:1.2rem;
        margin-bottom:8px;
    }

    .item-category{
        font-size: 1rem;
        padding:4px 4px;
    }
    .side-newslist{
        width: 100%;
        max-width: 100%;
    }
    .title-newslist{
        text-align:center;
        font-size: 2.8rem;
        margin-bottom:90px;
    }
    .list-category{
        display: flex;
        flex-wrap: wrap;
        gap:10px 14px;
        margin-bottom:40px;
    }
    .list-category li{
        margin-bottom:0px;
    }
    .list-category li a{
        font-size: 1rem;
        padding:4px 4px;
    }
}

.wrap-newsbody{
    width: 100%;
    max-width:1280px;
    margin:0 auto;
    display: flex;
    justify-content: space-between;
}
.content-newsbody{
    width: 70%;
}
.article-newsbody{
    width: 100%;
    max-width:630px;
    margin:0;
}
.title-newsbody{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 2.4rem;
    letter-spacing: 0.04em;
    color: #2F2725;
    margin-bottom:48px;
}
.date-newsbody {
    font-weight: 400;
    font-size:1.5rem;
    font-family: "Inter", sans-serif;
    line-height:1;
    color: #2F2725;
    margin-bottom:22px;
    display: block;
}
.body-newsbody{
    padding:64px 0;
}
.body-newsbody p{
    padding:0 0 56px 0;

    font-weight: 400;
    font-size:1.5rem;
    font-family: Arial, "Noto Sans JP", sans-serif;
    line-height:2;
    color: #2F2725;
}
.body-newsbody p{
    padding:0 0 2em 0;
}
.body-newsbody .imgbox{
    margin-bottom:1.8em;
}
.body-newsbody ol,
.body-newsbody ul{
    padding-left:2em;
    margin:0.8em 0;
}
.body-newsbody table,
.body-newsbody table *{
    margin: revert;
    padding: revert;
    border: revert;
    outline: revert;
    font-size: revert;
    background: revert;
}
.body-newsbody table , .body-newsbody td, .body-newsbody th {
    border: 1px solid #000;
    border-collapse: collapse;
}
.body-newsbody td, .body-newsbody th {
    padding: 0.2em 0.4em;
}

.wrap-paginate{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height:68px
}
.paginate-prev span{
    display: block;
    width: 18px;
    height: 36px;
    background-color: #2F2725;
    clip-path: polygon(100% 0, 0 50%, 100% 100%);
    cursor: pointer;
}
.paginate-next span{
    display: block;
    width: 18px;
    height: 36px;
    background-color: #2F2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    cursor: pointer;
}
.paginate-prev span.link-nega,
.paginate-next span.link-nega{
    opacity:0.4;
    pointer-events: none;
}
.wrap-paginate + .cell-links{
    margin-top:-68px;
}

@media (hover: hover) and (pointer: fine) {
    .paginate-prev span:hover{
        background-color: #A09857;
    }
    .paginate-next span:hover {
        background-color: #A09857;
    }
}
@media only screen and (min-width:1080px) {
    .wrap-newsbody{
        padding-top:50px;
    }
}
@media only screen and (max-width:1079px) {
    .wrap-newsbody{
        width: 100%;
        max-width:1280px;
        margin:0 auto;
        display: flex;
        justify-content: space-between;
        flex-direction: column;
    }
    .wrap-newsbody .list-category{
        display:none;
    }
    .content-newsbody{
        width: 86%;
        margin:0 auto;
    }
    .article-newsbody{
        width: 100%;
        max-width:880px;
        margin:0 auto;
    }
    .title-newsbody{
        font-size: 2rem;
        margin-bottom:20px;
    }
    .date-newsbody {
        margin-bottom:10px;
    }
    .body-newsbody{
        padding:48px 0;
    }
    .body-newsbody p{
        padding:0 0 48px 0;
        font-size:1.3rem;
    }
    .wrap-paginate + .cell-links{
        margin-top:-58px;
    }
}

/* ==========================================================================
	swiper firstview
========================================================================== */
.section-firstview .swiper-wrapper {
    height: 630px;
    max-width:630px;
    max-height: 630px;
    min-height: 420px;
    min-width: 416px;
}
.section-firstview .swiper-slide {
    display: flex;
    justify-content: center;
}
.section-firstview .swiper-slide img {
    align-self: center;
    max-height: 100%;
    max-width: 100%;
    width: auto;
}
.section-firstview .swiper-slide:nth-of-type(1),.section-firstview .swiper-slide:nth-of-type(3) ,.section-firstview .swiper-slide:nth-of-type(5) {
}
.cell-firstview .wrap-swiper {
    margin:0 auto;
}

/* ==========================================================================
	home, firstview
========================================================================== */
.section-firstview {
    width: 100%;
    height:calc(100vh - 82px);
    min-height:calc(772px - 82px);
    margin: 0;
    display:flex;
    flex-direction: column-reverse;
    position:relative;
}
.wrap-firstview {
    width: 100%;
    height:100%;
    margin: 0;
    position:relative;

}
.cell-firstview{
    position:absolute;
    top:50%;
    left:50%;
    display: inline-block;
    width:100%;
    max-width:1020px;
    height: 630px;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: flex-end;
}
.cell-firstview dt{
    width:100%;
    width:498px;
    height: 630px;
    position:absolute;
    top:0;
    left:4%;
    z-index:2;
}
.cell---firstview dd{
    width:100%;
    max-width:445px;
    height: 630px;
    position:relative;
    z-index:1;
    transform: translate(-53px, 0%);
}
.header-firstview{
    width:100%;
    background-color: #A09857;
}
.header-firstview div{
    width:100%;
    max-width:1280px;
    max-width:1440px;
    height:60px;
    margin:0 auto;
    padding:0 80px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap:0 30px;
}
.header-firstview h1{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 2.4rem;
    letter-spacing: 0.03em;
    color: #fff;
}
.header-firstview p{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 300;
    font-size: 1.9rem;
    letter-spacing: 0.03em;
    color: #fff;
}
.section-front-about {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 100px;
    padding:140px 0 180px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.cell-movie-about {
    width: 60%;
    max-width: 580px;
    margin: 0;
    padding-top:96px;
}
.cell-movie {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.cell-movie iframe {
    width: 100%;
    height: 100%;
}
.content-text-about {
    width: 40%;
    max-width: 400px;
}
.subtitle-front a {
    position:relative;
    display: inline-block;
}
.subtitle-front a:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 18px;
    height: 36px;
    top:50%;
    left:calc(100% + 30px);
    background-color: #2F2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    transform: translate(0, -50%);
    pointer-events: none;
    transition: transform ease 0.3s;
}
.subtitle-front a:hover:after {
    transform: translate(8px, -50%);
}
.cell-text-about{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
    width: 90%;
    max-width: 350px;
    margin-bottom:60px;
}
.section-front-news {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 100px;
    padding:0px 0 100px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.cell-list-news {
    width: 50%;
    max-width: 500px;
    margin: 0;
}
.content-text-news {
    width: 50%;
    max-width: 500px;
}
.cell-text-news{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color:#2F2725;
    width: 90%;
    max-width: 350px;
    margin-bottom:60px;
}
.cell-list-news .item-newslist{
    max-width: 500px;
    width:100%;
    margin-bottom:40px;
}
.cell-list-news .item-newslist:last-of-type{
    margin-bottom:60px;
}
.cell-list-news .item-newslist a{
     width:100%;
     display: flex;
     flex-wrap: nowrap;
     gap:0 20px ;
 }
.cell-list-news .img-newslist{
    width: 150px;
    aspect-ratio: 1/1;
    margin-bottom:0;
}
.cell-list-news .text-newslist{
    width: calc(100% - 170px );
}
.cell-list-news .mask-circle {
    mask-size:
            800px 900px,
            150px 130px;
}
.cell-list-news .img-newslist:after{
    mask-size:
            100% 100%,
            150px 130px;
}
.cell-list-news .name-newslist {
    font-size: 1.6rem;
    margin-bottom:12px;
}
.cell-list-news .date-newslist {
    font-size:1.3rem;
    font-family: Arial, sans-serif;
    margin-bottom:12px;
}
.cell-list-news .mark-new {
    font-size:1.3rem;
    font-family: Arial, sans-serif;
}
.cell-list-news .item-category{
}

.section-front-exhibitions {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 150px;
    padding:0;
}
.content-text-exhibitions {
    width: 100%;
    margin-bottom:60px;
}
.cell-text-exhibitions{
    max-width:590px;
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0;
    line-height:1.875;
    color:#2F2725;
}
.subtitle-front a {
    position:relative;
    display: inline-block;
}
.cell-list-exhibitions{
    display: flex;
    gap: 60px 64px;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-bottom:60px;
}
.cell-item-exhibitions{
    position: relative;
    width: fit-content;
    margin:0 ;
}
.img-exhibitions-spot{
    width: 100%;
    max-width:300px;
}
.cell-item-exhibitions:nth-of-type(1) .img-exhibitions-spot{
    max-width:230px;
}
.cell-item-exhibitions:nth-of-type(2) .img-exhibitions-spot{
    max-width:300px;
}
.cell-item-exhibitions:nth-of-type(3) .img-exhibitions-spot{
    max-width:240px;
}
.cell-item-exhibitions:nth-of-type(4) .img-exhibitions-spot{
    max-width:300px;
}
.cell-item-exhibitions:nth-of-type(5) .img-exhibitions-spot{
    max-width:337px;
}
.cell-item-exhibitions:nth-of-type(6) .img-exhibitions-spot{
    max-width:300px;
}
@media (hover: hover) and (pointer: fine) {
    .img-exhibitions-spot img{
        transition: scale 0.4s ease;
    }
    a:hover .img-exhibitions-spot img{
        scale:1.1;
    }
}
.section-front-access {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 150px;
    padding:0;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
}
.cell-map-japan {
    width: 68%;
    max-width: 630px;
}
.map-japan {
    width: 100%;
}
.content-text-access {
    width: 32%;
    max-width: 310px;
}
.section-front-access .subtitle-front{
    margin-bottom:80px;
}
.section-front-spot {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto 100px;
}
.content-map-spot {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    padding:0;
    display: flex;
}
.content-map-spot .subtitle-front{
    width: 28%;
    max-width: 280px;
}
.wrap-map-pref-spot {
    width: 48%;
    max-width: 480px;
    margin:20px 0 24px;
    position:relative;
}
.map-pref-spot {
    width: 100%;
    position:relative;
}
.map-pref-spot img{
    position:absolute;
    top:0;
    left:0;
    opacity: 0;
    transition: opacity 0.4s ease;
    transition-delay: 1000ms;
}

.map-pref-spot.active-slide-is-0 img:nth-of-type(1){
    opacity: 1;
}

.map-pref-spot.active-slide-is-0 img:nth-of-type(1){
    opacity: 1;
}
.map-pref-spot.active-slide-is-1 img:nth-of-type(2){
    opacity: 1;
}
.map-pref-spot.active-slide-is-2 img:nth-of-type(3){
    opacity: 1;
}
.map-pref-spot.active-slide-is-3 img:nth-of-type(4){
    opacity: 1;
}
.map-pref-spot.active-slide-is-4 img:nth-of-type(5){
    opacity: 1;
}
.map-pref-spot.active-slide-is-5 img:nth-of-type(6){
    opacity: 1;
}
.map-pref-spot.active-slide-is-6 img:nth-of-type(7){
    opacity: 1;
}
.map-pref-spot.active-slide-is-7 img:nth-of-type(8){
    opacity: 1;
}
.map-pref-spot.active-slide-is-8 img:nth-of-type(9){
    opacity: 1;
}
.map-pref-spot.active-slide-is-9 img:nth-of-type(10){
    opacity: 1;
}
.map-pref-spot.active-slide-is-10 img:nth-of-type(11){
    opacity: 1;
}
.map-pref-spot.active-slide-is-11 img:nth-of-type(12){
    opacity: 1;
}
.map-pref-spot.active-slide-is-12 img:nth-of-type(13){
    opacity: 1;
}
.map-pref-spot.active-slide-is-13 img:nth-of-type(14){
    opacity: 1;
}
.map-pref-spot.active-slide-is-14 img:nth-of-type(15){
    opacity: 1;
}
.map-pref-spot img:nth-of-type(13){
    opacity: 1;
    position:relative;
}
.map-pref-spot.negative-blank img:nth-of-type(13){
    opacity: 0;
}

.content-text-spot {
    width: 48%;
    max-width: 460px;
}
.wrap-swiper .img-front-spot{
    position: relative;
    overflow: hidden;
    width: 100%;;
}
.text-front-spot{
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding:16px 20px 16px 20px;
}
.text---front-spot:after{
    content: "";
    position:absolute;
    display: inline-block;
    width: 10px;
    height: 20px;
    top:50%;
    right:20px;
    background-color: #2F2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    transform: translate(0, -50%);
}
.name-front-spot{
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.42;
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-family: "M PLUS Rounded 1c", sans-serif;
    color:#2F2725;
    font-size: 2rem;
    margin-bottom:10px;
    position: relative;
}
.name-front-spot:after{
    content: "";
    position:absolute;
    display: inline-block;
    width: 10px;
    height: 20px;
    top:50%;
    right:0;
    background-color: #2F2725;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    transform: translate(0, -50%);
}
.excerpt-front-spot{
    font-weight: 350;
    line-height: 1.78;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#2F2725;
    font-size: 1.4rem;
}
.list-front-artist{
}

.list-front-artist li{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1rem;
    letter-spacing: 0.01em;
    line-height:1.4;
    color:#2F2725;
    margin-bottom:1.4em;
}
.nav-map{
    width: 100%;
    position:absolute;
    top:0;
    left:0;
}
.nav-map>ul{
    position:absolute;
    top:0;
    left:0;
    width:100%;
}
.nav-map > ul > li {
    width:3em;
    height:1em;
    position: absolute;
    top: 0;
    left: 0;
}
.nav-map>ul>li span{
    display: block;
    width:3em;
    height:1em;
    overflow:hidden;
    color:transparent;
    cursor: pointer;
}
.nav-map>ul>li:nth-of-type(1) {
    top: 107px;
    left: 300px;
}
.nav-map>ul>li:nth-of-type(2) {
    top: 276px;
    left: 85px;
}
.nav-map>ul>li:nth-of-type(3) {
    top: 156px;
    left: 56px;
}
.nav-map>ul>li:nth-of-type(4) {
    top: 104px;
    left: 149px;
}
.nav-map>ul>li:nth-of-type(5) {
    top: 184px;
    left: 358px;
}
.nav-map>ul>li:nth-of-type(6) {
    top: 64px;
    left: 97px;
}
.nav-map>ul>li:nth-of-type(7) {
    top: 51px;
    left: 249px;
}
.nav-map>ul>li:nth-of-type(8) {
    top: 141px;
    left: 333px;
}
.nav-map>ul>li:nth-of-type(9) {
    top: 96px;
    left: 358px;
}
.nav-map>ul>li:nth-of-type(10) {
    top: 62px;
    left: 423px;
}
.nav-map>ul>li:nth-of-type(11) {
    top: 218px;
    left: 261px;
}
.nav-map>ul>li:nth-of-type(12) {
    top: 181px;
    left: 269px;
}
.nav-map>ul>li:nth-of-type(13) {
    top: 999px;
    left: 999px;
}
.nav-map>ul>li:nth-of-type(14) {
    top: 999px;
    left: 999px;
}
.nav-map>ul>li:nth-of-type(15) {
    top: 999px;
    left: 999px;
}

@media only screen and (max-width:1079px) {
    .wrap-home{
        padding:0;
    }
    .section-firstview {
        height:calc(100dvh - 64px);
        min-height:calc(772px - 82px);
    }
    .wrap-firstview {
        margin:0 auto;
    }
    .cell-firstview{
        height: 614px;
        display: block;
    }
    .cell-firstview dt{
        width:320px;
        max-width:calc(100% - 20px);
        height:auto;
        position:relative;
        left:0;
        margin:0 auto 10px;
    }
    .header-firstview{
    }
    .header-firstview div{
        height:80px;
        padding:0 40px;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap:0 0px;
    }
    .header-firstview h1{
        font-size: 1.8rem;
    }
    .header-firstview p{
        font-size: 1.5rem;
    }
    .section-firstview .swiper-wrapper {
        height: 424px;
        max-width:480px;
        max-height: 360px;
        min-height: 200px;
        min-width: 200px;
    }
    .swiper-slide-01{
        transform: translate(40px, 0);
        position:relative;
    }
    .swiper-slide-03{
        transform: translate(-24px, -32px);
        position:relative;
    }
    .swiper-slide-05{
        transform: translate(24px, -40px);
        position:relative;
    }

    .section-front-about {
        width: 86%;
        max-width: 1020px;
        margin: 0 auto 80px;
        padding:80px 0 0;
        flex-direction: column-reverse;
    }
    .cell-movie-about {
        width: 100%;
        margin:0 auto;
        padding-top:0;
        padding-bottom:40px;
    }
    .content-text-about {
        width: 100%;
        max-width: 100%;
    }
    .subtitle-front a:after {
        width: 12px;
        height: 24px;
        left:calc(100% + 20px);
    }
    .cell-text-about{
        font-size: 1.3rem;
        max-width: 100%;
        width: 100%;
        margin-bottom:30px;
        text-align: justify;
    }

    .section-front-news {
        width: 86%;
        max-width: 1020px;
        margin: 0 auto 80px;
        padding:0;
        flex-direction: column;
    }
    .cell-list-news {
        width: 100%;
        max-width: 100%;
    }
    .content-text-news {
        width: 100%;
        max-width: 100%;
    }
    .cell-list-news .item-newslist{
        max-width: 500px;
        width:100%;
        margin-bottom:20px;
    }
    .cell-list-news .item-newslist:last-of-type{
        margin-bottom:30px;
    }
    .cell-list-news .item-newslist a{
        gap:0 16px ;
    }
    .cell-list-news .img-newslist{
        width: 90px;
    }
    .cell-list-news .text-newslist{
        width: calc(100% - 106px );
    }
    .cell-list-news .name-newslist {
        font-size: 1.2rem;
        margin-bottom:10px;
    }
    .cell-list-news .date-newslist {
        font-size:1.2rem;
    }
    .cell-list-news .mark-new {
        font-size:1.2rem;
    }

    .section-front-exhibitions {
        width: 86%;
        margin: 0 auto 80px;
    }
    .content-text-exhibitions {
        width: 100%;
        margin-bottom:30px;
    }
    .cell-text-exhibitions{
        font-size: 1.3rem;
        max-width: 100%;
        width: 100%;
        text-align: justify;
    }
    .cell-list-exhibitions{
        display: flex;
        gap: 30px 32px;
        justify-content: flex-start;
        flex-wrap: wrap;
        margin-bottom:30px;
    }
    .cell-item-exhibitions{
        width:50%;
    }
    .cell-item-exhibitions:nth-of-type(1){
        width:38%;
    }
    .cell-item-exhibitions:nth-of-type(3){
        width:38%;
    }
    .cell-item-exhibitions:nth-of-type(5){
        width:56%;
    }
    /*
    .img-exhibitions-spot{
        width: 100%;
        max-width:300px;
    }*/
    .img-exhibitions-spot {
        margin: 0 auto 8px;
    }
    .text-exhibitions-spot>.name-artist, .text-item-modelcourse>.name-artist {
        line-height: 1.3;
        margin-bottom: 3px;
        font-size: 1rem;
    }
    .text-exhibitions-spot>.name-artworks,.text-item-modelcourse>.name-artworks {
        margin-bottom: 3px;
        font-size: 1.2rem;
    }
    .text-item-modelcourse .location-artworks dt,.text-item-modelcourse .location-artworks dd,
    .text-exhibitions-spot .location-artworks dt,.text-exhibitions-spot .location-artworks dd{
        font-size: 1rem;
        white-space: nowrap;
    }

    .section-front-access {
        width: 86%;
        margin: 0 auto 80px;
        flex-direction: column;
    }
    .cell-map-japan {
        width: 100%;
        margin: 0 auto;
    }
    .map-japan {
        width: 100%;
        margin-bottom:30px;
    }
    .content-text-access {
        width: 100%;
        max-width: 640px;
    }
    .section-front-access .subtitle-front{
        margin-bottom:30px;
    }
    .content-text-access .subtitle-front + .link-access{
        display:none;
    }
    .cell-map-japan .map-japan .link-access{
        display:block;
    }
    .section-front-spot {
        width: 100%;
        margin: 0 auto 80px;
    }
    .content-map-spot {
        width: 86%;
        max-width: 1020px;
        margin: 0 auto ;
        flex-direction: column;
    }
    .content-map-spot .subtitle-front{
        width: 100%;
        max-width: 100%;
        margin-bottom:56px;
    }
    .wrap-map-pref-spot {
        width: 100%;
        max-width: 320px;
        margin:0px auto 40px;
    }
    .map-pref-spot {
        width: 100%;
        position:relative;
    }
    .map-pref-spot img{
        transition-delay: 400ms;
    }

    .wrap-swiper .swiper-front-spot .slide a {
        width: 200px;
        min-height:228px;
        margin-right: 6px;
        margin-left: 6px;
    }
    .wrap-swiper .swiper-front-spot .slide a:last-of-type {
        margin-right: 0px;
    }
    .wrap-swiper .swiper-front-spot .slide a:first-of-type {
        margin-left: 0px;
    }
    .wrap-swiper .swiper-front-spot .slide .swiper-slide-active {
        transform: translate(0, 0px);
        transition-delay:0ms;
    }
    .wrap-swiper .swiper-front-spot{
        padding-top:0px;
    }
    .text-front-spot{
        padding:8px 15px 12px 15px;
    }
    .name-front-spot{
        font-size: 1.8rem;
        margin-bottom:5px;
    }
    .name-front-spot:after{
        width: 8px;
        height: 16px;
    }
    .excerpt-front-spot{
        font-size: 1.1rem;
    }
    .content-map-spot + .wrap-swiper{
        margin-bottom:30px;
    }

    .button{
        position:absolute;
        width: 36px;
        height:36px;

        z-index:50;
    }
    .button-prev:after {
        width: 9px;
        height: 18px;
        transform: translate(-60%, -50%);
    }
    .button-next:after {
        width: 9px;
        height: 18px;
        transform: translate(60%, -50%);
    }
    .button-prev{
        right:80px;
        top:-56px;
    }
    .button-next{
        right:24px;
        top:-56px;
    }
    .leadtitle-sights{
        font-size: 2.1rem;
        width: 86%;
        margin:0 auto 16px;
    }
    .wrap-swiper {
        margin: 0 auto 96px;
    }
    .wrap-swiper .slide-wrap {
        width: 100%;
    }
      .wrap-swiper .slide a {
        display: block;
        position: relative;
        width: 250px;
        margin-right: 20px;
    }
    .wrap-swiper .slide a:last-of-type {
        margin-right: 0px;
    }
    .wrap-swiper .slide span {
        display: block;
        position: relative;
        width: 250px;
    }

    .wrap-swiper .name-sight {
        font-weight: 400;
        font-size: 1.6rem;
        text-align:center
    }
    .wrap-swiper .swiper-modelcourse .slide a {
        width: 260px;
        min-height:518px;
        margin-right: 6px;
        margin-left: 6px;
    }
    .wrap-swiper .swiper-modelcourse .slide a:last-of-type {
        margin-right: 6px;
    }
    .tab-spot .wrap-swiper {
        margin: 0 auto 80px;
    }
    .img-modelcourse{
        height:auto;
        /*height:256px;*/
    }
}

@media only screen and (min-width:1080px) {
    .content-text-access .subtitle-front + .link-access{
        display:block;
    }
    .cell-map-japan .map-japan + .link-access{
        display:none;
    }
}

/* ==========================================================================
	exhibitions, artworks
========================================================================== */
.cell-list-artworks{
    position:relative;
    margin-bottom:160px;
    height:1376px;
}
.cell-list-artworks .cell-item-exhibitions{
    position: absolute;
    z-index: 1;
}
#item-artworks-01{
    top:100px;
    left:0;
}
#item-artworks-02{
    top:63px;
    left:310px;
}
#item-artworks-03{
    top:-24px;
    left:678px;
}
#item-artworks-04{
    top:1024px;
    left:288px;
}
#item-artworks-05{
    top:884px;
    left:675px;
}
.map-artworks{
    display:block;
    width: 760px;
    z-index: 1;
    transform: translate(162px, 428px);
    position:relative;
}
.content-modelcourse{
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    padding:80px 76px;
    border:4px solid #F5B335;
    transition: border-color ease 0.4s;
}
.content-modelcourse.border01{
    border-color:#F5B335;
}
.content-modelcourse.border02{
    border-color:#97D1DC;
}
.tab-content-modelcourse{
    width: 100%;
}
.tab-content-modelcourse {
    display: none;
    transition-duration: 0.4s;
}
.tab-content-modelcourse.is-show {
    display: block;
}

.row-modelcourse{
    width: 100%;
    margin-bottom:60px;
    display: flex;
    gap:60px;
}
.row-modelcourse:last-of-type{
    margin-bottom:0;
}
.title-row-modelcourse{
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.42;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#2F2725;
    font-size: 2.5rem;
    margin-bottom:10px;
}
.wrap-tab-modelcourse{
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
}
.tab-content{
    width: 100%;
}
.tab-list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}
.tab-item {
    width: 50%;
    max-width:500px;
    cursor: pointer;
}
.tab-item span {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 72px;
    transition-duration: 0.3s;
    color:#fff;
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 1.2;
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-size: 2.6rem;
    position:relative;
}
.tab-item:nth-child(1) span {
    color: #F5B335;
    background-color: #fff;
}
.tab-item:nth-child(2) span {
    color: #97D1DC;
    background-color: #fff;
}
@media (hover: hover) and (pointer: fine) {
    .tab-item:nth-child(1) span:hover {
        color: #fff;
        background-color: #F5B335;
    }
    .tab-item:nth-child(2) span:hover {
        color: #fff;
        background-color: #97D1DC;
    }
}
.tab-item:nth-child(1) {
    border:4px solid #F5B335;
}
.tab-item:nth-child(2) {
    border:4px solid #97D1DC;
}
.tab-top .tab-item {
    border-bottom:none;
}
.tab-bottom .tab-item {
    border-top:none;
}
.tab-top .tab-item.selected span:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 100%;
    height: 8px;
    top:98%;
    left:0%;
    background-color: #fff;
}
.tab-bottom .tab-item.selected span:after {
    content: "";
    position:absolute;
    display: inline-block;
    width: 100%;
    height: 8px;
    bottom:98%;
    left:0%;
    background-color: #fff;
}
.tab-item.selected  {
    pointer-events: none;
    cursor: default;
}
.name-modelcourse{
    font-weight: 500;
    letter-spacing: .03em;
    line-height: 1.42;
    font-family: Arial, "Noto Sans JP", sans-serif;
    color:#2F2725;
    font-size: 2rem;
    margin-bottom:10px;
}
.cell-modelcourse{
    display: block;
    position: relative;
    width: 400px;
    min-height:560px;
    margin-right: 0px;
    border:1px solid #2F2725;
}
.cell-text-modelcourse{
    font-family: Arial, "Noto Sans JP", sans-serif;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.875;
    color: #2F2725;
    margin-bottom:60px;
}
.cell-artworks{
    position: relative;
    width: 760px;
    margin:0 auto;
    padding:100px 0 50px;
}
.photo-artworks-horizontal{
    position: relative;
    width: 760px;
    margin:0 auto;
}
.photo-artworks-vertical{
    position: relative;
    width: 500px;
    margin:0 auto;
}
.text-artworks{
    font-size:1rem;
    letter-spacing:0.03em;
    line-height:1.3;
    color:#2F2725;
    font-weight:400;
    padding:0.4em 0 0.2em;
    text-align:right;
}
.info-artworks{
    position: relative;
    width: 760px;
    margin:0 auto;
    padding:30px 0 100px;
    font-family: Arial, "Noto Sans JP", sans-serif;
}
.title-artworks{
    font-weight: 500;
    font-size: 3.2rem;
    letter-spacing: 0.03em;
    line-height:2.4;
    color: #2F2725;

}
.artist_name-artworks,.year-artworks{
    font-weight: 600;
    font-size: 1.8rem;
    letter-spacing: 0.03em;
    line-height:1.66;
    color: #2F2725;
}
.description-artworks{
    padding:1em 0;
}
.description-artworks p{
    margin-bottom:1em;
    font-weight: 350;
    font-size: 1.6rem;
    letter-spacing: 0.03em;
    line-height:1.66;
    color: #2F2725;
}
.description-artworks p:last-of-type{
    margin-bottom:0;
}

.cell-movie-artworks {
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
    padding-bottom:50px;
}

.cell-venue{
    width: 100%;
    display: flex;
    gap: 0 60px ;
    margin-bottom: 20px;
}
.img-venue{
    width: 50%;
    max-width:500px;
}
.info-venue{
    width: 50%;
    max-width:460px;
}
.header-venue{
    margin-bottom:60px;
}
.header-venue .city-venue{
    font-size:2rem;
    letter-spacing:0.03em;
    line-height: 1.5;
    font-weight:600;
    margin-bottom:1em;
}
.header-venue .name-venue{
    font-size:3rem;
    letter-spacing:0.03em;
    line-height: 1.6;
    font-weight:500;
}
.header-venue .ruby-venue{
    font-size:1.6rem;
    letter-spacing:0.03em;
    line-height: 1.875;
    font-weight:600;
}
.description-venue{
    font-size:1.6rem;
    letter-spacing:0.03em;
    line-height: 1.875;
    color: #2F2725;
}
.cell-location{
    width: 100%;
    display: flex;
    gap: 0 60px ;
    margin-bottom: 30px;
}
.map-location{
    width: 50%;
    max-width:500px;
}
.wrap-googlmaps{
    aspect-ratio: 4 / 3;
}
.wrap-googlmaps iframe {
    width: 100%;
    height: 100%;
}
.info-location{
    width: 50%;
    max-width:460px;
}
.info-location{
    display: flex;

    align-items: center;
    width:100%;
    padding:0;
}
.define-location{
    position:relative;
}
.define-location dt{
    font-size:1.6rem;
    letter-spacing:0.03em;
    line-height: 1.6;
    color: #ffa4b4;
    font-weight:600;
    margin-bottom:1em;
    position:absolute;
}
.define-location dd{
    font-size:1.6rem;
    letter-spacing:0.03em;
    line-height: 1.6;
    color: #2F2725;
    padding-left:7em;
    margin-bottom:1em;
}

.content-around{
    width: 100%;
    display: flex;
    gap: 0 60px ;
    padding-bottom: 48px;
}
.cell-around{
    width: 32%;
    max-width:300px;
}
.cell-around dd{
    font-size:1.9rem;
    letter-spacing:0.03em;
    line-height: 1.74;
    color: #2F2725;
    font-weight:500;
    text-align:center;
}

@media only screen and (max-width:1079px) {
    .cell-list-artworks{
        margin-bottom:0;
        height:900px;
    }
    .cell-list-artworks .cell-item-exhibitions{
        position: absolute;
        z-index: 1;
    }
    #item-artworks-01{
        top:calc(50% + 46px);
        left:calc(50% - 168px);
        width:130px;
    }
    #item-artworks-02{
        top:calc(50% - 400px);
        left:calc(50% - 140px);
        width:130px;
    }
    #item-artworks-03{
        top:calc(50% - 426px);
        left:calc(50% + 52px);
        width:130px;
    }
    #item-artworks-04{
        top:calc(50% + 186px);
        left:calc(50% - 8px);
        width:130px;
    }
    #item-artworks-05{
        top:calc(50% - 24px);
        left:calc(50% + 56px);
        width:130px;
    }
    /*
    .img-exhibitions-spot{
        width: 100%;
        max-width:300px;
    }*/
    #item-artworks-01 .img-exhibitions-spot {
        width:96px;
        margin: 0 0 5px;
    }
    #item-artworks-03 .img-exhibitions-spot {
        width:104px;
        margin: 0 0 5px;
    }

    .map-artworks{
        width: 100%;
        max-width:320px;
        margin:0 auto;
        transform: translate(0px, 248px);
    }
    .content-modelcourse{
        padding:26px 24px;
        border:3px solid #F5B335;
    }
    .row-modelcourse{
        width: 100%;
        margin-bottom:40px;
        flex-direction:column;
        align-items: center;
        gap:40px;
    }
    .row-modelcourse:last-of-type{
        margin-bottom:0;
    }
    .title-row-modelcourse{
        font-size: 1.9rem;
        margin-bottom:10px;
    }
    .tab-item:nth-child(1),
    .tab-item:nth-child(2) {
        border-width:3px;
    }
    .tab-item {
        width: 49%;
    }
    .tab-item span {
        height: 48px;
        font-size: 1.6rem;
    }
    .name-modelcourse{
        font-size: 1.6rem;
    }
    .outset-modelcourse{
        font-size: 1.3rem;
        min-height:20px;
        margin-bottom:15px;
    }
    .cell-modelcourse{
        width:100%;
        max-width: 400px;
        min-height:60px;
        margin-right: 0px;
    }
    #section-artworks{
        width: 86%;
        margin: 0 auto 0;
    }
    .cell-text-modelcourse{
        font-size: 1.3rem;
        margin-bottom:50px;
    }

    .cell-artworks{
        width: 100%;
        padding:60px 0 30px;
    }
    .photo-artworks-horizontal{
        width: 100%;
    }
    .photo-artworks-vertical{
        width: 78%;
        min-width: 250px;
    }
    .text-artworks{
        font-size:1rem;
        transform: scale(0.8);
        transform-origin: right top;
    }
    .info-artworks{
        width: 100%;
        padding:0px 0 50px;
    }
    .title-artworks{
        font-size: 2.1rem;
        line-height:1.4;
    }
    .artist_name-artworks,.year-artworks{
        font-size: 1.5rem;
    }
    .description-artworks p{
        font-size: 1.2rem;
        line-height:1.8;
    }

    .cell-movie-artworks {
        padding-bottom:56px;
    }

    .cell-venue{
        flex-direction: column;
        gap: 30px 0;
        margin-bottom: 30px;
    }
    .img-venue{
        width: 100%;
        max-width:1000px;
    }
    .info-venue{
        width: 100%;
        max-width:960px;
    }
    .header-venue{
        margin-bottom:30px;
    }
    .header-venue .city-venue{
        font-size:1.5rem;
    }
    .header-venue .name-venue{
        font-size:2rem;
        line-height: 1.4;
    }
    .header-venue .ruby-venue{
        font-size:1.2rem;
    }
    .description-venue{
        font-size:1.3rem;
    }
    .cell-location{
        width: 100%;
        flex-direction: column-reverse;
        gap: 20px ;
        margin-bottom: 50px;
    }
    .map-location{
        width: 100%;
        max-width:640px;
    }
    .info-location{
        width: 100%;
        max-width:640px;
    }
    .define-location{
        position:relative;
    }
    .define-location dt{
        font-size:1.3rem;
    }
    .define-location dd{
        font-size:1.3rem;
        padding-left:8em;
    }

    .content-around{
        align-items: center;
        flex-direction: column;
        gap: 30px ;
        padding-bottom: 0;
    }
    .cell-around{
        width: 62.5%;
        max-width:300px;
    }
    .cell-around dd{
        font-size:1.6rem;
        font-weight:400;
        line-height:1.88;
        text-align:center;
    }


}

/* ==========================================================================
	wrap-comingsoon
========================================================================== */
.wrap-comingsoon{
    width: 100%;
    max-width: 1020px;
    min-height:60vh;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
}
.wrap-comingsoon p{
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
    font-size: 5rem;
    letter-spacing:0;
    line-height:1.875;
    color:#2F2725;
}

@media only screen and (max-width:1079px) {
    .wrap-comingsoon{
        min-height:50dvh;
    }
    .wrap-comingsoon p{
        font-size: 3rem;
    }

}