@charset "UTF-8";

/* 2022年使用 */
.toppre_btn {
    width: 80%;
    margin: 5% auto 5% auto;
}
.top_btn_block {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.top_btn_item {
    width: 48%;
    margin: 0% 1% 1% 1%;
}
.top_btn_pre {
    margin: 0 auto 1% auto;
}
.btnitems {
    display: block;
    width: 100%;
    height: 100%;
}
.top_btn_pre {
    margin: 0 auto 1% auto;
}
.btnitems img {
    width: 100%;
    object-fit: contain;
    object-position: center;
    height: 100%;
}
.cap2022 {
    display:block;
    margin-top: -10px;
    font-size: 1.4rem;
}
[class*="box_gradation-"]:before { 
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
}
.green_block2022 {
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
    padding-top: 10rem;
    padding-bottom: 10rem;
}
.green_box {
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
}
.btn.grad {
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
    overflow: hidden;
}
.btn.green_grad {
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
    overflow: hidden;
}
.breen-txt {
    color: #391504;
}

element.style {
    display: flex;
    align-items: center;
}
.btn.border {
    color: #391504 !important;
    border: 1px solid  #391504!important;
}
.geen_btn2022 {
    color: #fff !important;
    border: 1px solid #391504!important;
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
}
.btn.border i:before {
    color: #391504!important;
}
.line-title::before {
    background: #fff!important;
}
table.about-table th {
    color: #391504!important;
}
.menu_btn_wrap.is_open_ + .panel_menu_wrapp .panel_menu {
    transform: translateX(0%);
    animation: color_op1 .5s linear 0s forwards!important;
    overflow: scroll;
    padding-bottom: 10vh;
  }
.panel_menu_wrapp .panel_menu.is_open_ {
    transform: translateX(0%);
    animation: color_op1 .5s linear 0s forwards!important;
    padding-bottom: 10vh;
  }
  .comment-wrap .comment-name {
    border-bottom: 1px solid linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100%;
}
.flex_gap {
    gap: 2em;
}
.link_green {
    color: #391504;
    font-weight: bold;
    transition: .5s;
}
.kakashi_item p {
    line-height: inherit;
    margin-bottom: 28px;
}
.btn.border i:before {
    color:#391504!important;
}
@keyframes color_op1 {
    0% {
      background: rgba(255, 255, 255, 0.5);
    }
    100% {
        background: #391504;
      opacity: 1;
    }
  }

  .social_2 {
    display: flex;
    width: 7rem!important;
    height: 3rem!important;
    padding-top:0.5rem;
  }
  .s2_f {
    padding-right:0.5rem;
    width: 3rem;
  }
  .s2_i {
    padding-left: 0.5rem;
    width: 3rem;
  }
  .s2_f img {
    width: 100%;
    object-position: center;
  }
  .s2_i img {
    width: 100%;
    object-position: center;
  }
  .top_banner-title {
    font-size: 40px;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    color: #ffc333;
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-align: center;
    padding: 50px 0 20px 0;
  }
  .post_content a {
    word-wrap: break-word;
}
.media-wrap-row .post-title {
    font-size: 1.6rem!important;
    color: #333!important;
}
  @media screen and (max-width: 1100px) {
    .social_2 {
        width: 6rem!important;
      }
      .s2_f {
        padding-right:0.3rem;
        width: 2.5rem;
      }
      .s2_i {
        padding-left: 0.3rem;
        width: 2.5rem;
      }
      .sosial-wrap {
        right: 5.5%;
      }
}

@media screen and (max-width: 767px) {
    .toppre_btn {
        width: 90%;
        margin: 15% auto 5% auto;
    }
    .top_btn_block {
        width: 100%;
        display: block;
    }
    .top_btn_item {
        width: 100%;
        margin: 0% 0% 3% 0;
    }
    .flex_gap {
        gap: 2em;
    }
    .cap2022 {
        line-height: 1.4;
        margin-top: -6px;
    }
    .social_2 {
        display: none;
    }
    .top_banner-title {
        font-size: 5vw;
        padding-top: 30px;
    }
    .figure.wp-block-gallery.has-nested-images {
        display: block!important;
    }
    .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) {
        width: 100%!important;
    }
}
/* 動画 */
.mv__video {
    width: 100%;
    height: 100vh;
    object-fit: cover;								
}
@media screen and (max-width:450px) {
    .mv__video {
        width: 100%;
        height: 50vh;
        object-fit: cover;
    }
    .mv-ven {
        height: 50vh;
    }
}
.movie_by {
    font-size:.6rem;
    padding: 3px 3px 0 0;
    text-align: right;
}

/* 雪 */
.snow {
    /*雪の色*/
    color: snow;
    /*雪の大きさ*/
    font-size: 10px;
    /*初期位置*/
    position: fixed;
    z-index: 999;
    top: -5%;
    /*雪を適当な幅で降らせる*/
    text-shadow:
    5vw   -100px 2px,
    10vw  -400px 3px,
    20vw  -500px 4px,
    30vw  -580px 1px,
    39vw  -250px 2px,
    42vw  -340px 5px,
    56vw  -150px 2px,
    63vw  -180px 0,
    78vw  -220px 4px,
    86vw  -320px 9px,
    94vw  -170px 7px;
    /*雪アニメーション1*/
    animation: roll 5s linear infinite;
  }
    /*2つめの雪アニメーション*/
  .snow2nd{animation: anim 8s linear infinite;}
  
  @keyframes roll {
      0% {transform:rotate(0deg);}
     90% {opacity:1;}
     100% {transform:rotate(20deg);top:100%;opacity:0;}
  }
  @keyframes anim {
    100% {color:transparent;top:150%;}
  }



/* モーダル */

	.load_wrap_2 {
		position: absolute;
		width: 600px;
		height: auto;
		top: 0%;
		left: 50%;
		transform: translateX(-50%);
        animation: Animetion2023  4s forwards;
	}
    @keyframes Animetion2023 {
		0% {
			opacity: 0;
		}
		90% {
			opacity: 1;
		}
		100% {
			opacity: 0;
		}
	}
	.loading_logo1 {
		width: 60px;
		margin: 0 auto;
		animation: load3Animetion 1.3s ease-in 1s forwards;
		opacity: 0;
		margin-top: -100px;
	}
	.loading_logo1 img {
		width: 100%;
		height: 60px;
		object-fit: contain;
		object-position: center;
	}
	@keyframes load3Animetion {
		0% {
			opacity: 0;
		}
		30% {
			opacity: 1;
		}
		60% {
			opacity: 1;
			transform: rotateY(-90deg);
		}
		70% {
			opacity: 1;
			transform: rotateY(0deg);
		}
		85% {
			opacity: 1;
			transform: rotateY(-90deg);
		}
		100% {
			opacity: 1;
			transform: rotateY(-0deg);
		}
	}
	.loading_txt1 {
		width: 400px;
		margin: 0 auto;
		animation: load2Animetion 0.6s ease-in 0.5s forwards;
		opacity: 0;
	}
	.loading_txt1 img {
		width: 100%;
		height: 50px;
		object-fit: contain;
		object-position: center;
	}
	@keyframes load2Animetion {
		0% {
			opacity: 0;
		}
		100% {
			opacity: 1;
		}
	}
	.loading_txt2 {
		width: 500px;
		height: 70px;
		margin: 0 auto;
		animation: load1Animetion 0.6s ease-in 0s forwards;
	}
	.loading_txt2 img {
		width: 100%;
		object-fit: contain;
		object-position: center;

	}
	 @keyframes load1Animetion {
		0% {
			opacity: 0;
		}
		100% {
			opacity: 1;
		}
	} 

		/* .fadeout {
			animation: fadeOut 1.5s ease 2.3s forwards;
		}
		@keyframes fadeOut {
			50% {
				opacity: 1;
			}
			99% {
				opacity: 0;
				display: none;
				top: 0;
			}
			100% {
				opacity: 0;
				display: none;
				top: -150%;
			}
			} */
	@media (max-width:600px) {
	.load_wrap_2 {
		width: 300px;
		top: 35%;
		left: 50%;
		transform: translateX(-50%);
	}
	.loading_logo1 {
		width: 40px;
		margin-top: 0px;
	}
	.loading_logo1 img {
		height: 40px;
	}
	.loading_txt1 {
		width: 250px;
	}
	.loading_txt1 img {
		width: 100%;
		height: 20px;
	}
	.loading_txt2 {
		width: 300px;
	}
	.loading_txt2 img {
		width: 100%;
		height: 40px;
	}
	}

    .btn.border i:before {
        color:#391504!important;
    }


    header {
        background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
    }

    ._fix header {
        background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
    }

    .nav_2 {
        max-width: 55%;
    }

    @media screen and (max-width: 900px) {
        .nav_2 {
            max-width: 53%;
        }
    }


    /* カード */
    ul.youtubeList {
        padding: 0;
        margin: 0;
        border: none;
        list-style: none;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 25px;
    }

    ul.youtubeList li {
        width: 47%;
    }

    ul.youtubeList li a {
        display: flex;
        flex-direction: column;
        height: 100%;
        border-radius: 2px;
        background: #fff;
        box-shadow: 0 0 3px 0 rgb(0 0 0 / 12%), 0 2px 3px 0 rgb(0 0 0 / 22%);
        cursor: pointer;
        transition: 0.2s ease-in-out;
    }

    ul.youtubeList li a:hover {
        box-shadow: 0 15px 30px -5px rgb(0 0 0 / 15%), 0 0 5px rgb(0 0 0 / 10%);
        transform: translateY(-4px);
        text-decoration: none;
    }

    ul.youtubeList li a:hover:before {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        background: rgb(0, 0, 0, .4);
    }

    ul.youtubeList li a:hover:after {
        content: "\f03d";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 2rem;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
        left: 50%;
        color: #FFF;
    }

    ul.youtubeList li a img {
        border-radius: 2px 2px 0 0;
    }

    ul.youtubeList li a p {
        margin: 0;
        text-decoration: none;
        color: #313131;
        padding: 10px 20px;
        line-height: 1.6;
    }

    /* modal */
    .ed-modal {
        position: fixed;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        background: rgba(0, 0, 0, 0.9);
        display: flex;
        z-index: 9999;
    }

    div#modalOverlay {
        width: 100%;
        height: 100%;
        display: flex;
        cursor: pointer;
    }

    .ed-closeModal {
        position: absolute;
        top: -35px;
        right: 5px;
        cursor: pointer;
        width: 1.5rem;
        height: 1.5rem;
        opacity: 0.5;
    }

    .ed-closeModal::before,
    .ed-closeModal::after {
        content: "";
        width: 35px;
        height: 2px;
        background: #fff;
        position: absolute;
        top: 0;
        transform: rotate(45deg);
        transform-origin: top left;
    }

    .ed-closeModal::before {
        left: -9px;
    }

    .ed-closeModal::after {
        right: 0;
        transform: rotate(-45deg);
        transform-origin: top right;
    }

    .modalContent {
        width: 100%;
        max-width: 800px;
        margin: auto;
        position: relative;
    }

    .video {
        width: 100%;
        position: relative;
        height: 0;
        padding-bottom: 56.25%;
        overflow: hidden;
        filter: drop-shadow(0px 2px 5px #313131);
        animation: fadeIn 1.2s ease 0s 1 normal;
    }

    .video iframe {
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
    }

    @keyframes fadeIn {
        0% {
            opacity: 0;
            transform: translateY(30px);
        }

        100% {
            opacity: 1;
        }
    }

    @media screen and (max-width: 767px) {

        /* （ここにモバイル用スタイルを記述） */
        ul.youtubeList li {
            width: 100%;
        }
    }

    .sub-title {
        font-size: 1.8rem;
    }


    .issp {
        display: none;
    }
        .about-text {
            font-size: 1vw;
            line-height: 1.5;
        }
        .about-measures-block {
            background: #f9f5ee;
            padding: 3rem 5%;
        }
        .about-measures {
            margin-top: 2rem;
        }
        .green {
            background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
        }
        .img-flex-box {
            display: flex;
            justify-content: space-between;
        }
        .img-flex-box1 {
            width: 48%
        }
        .img-flex-box2 {
            width: 48%
        }
        .green1 {
            background: #391504;
            width: 40%;
            color: #fff;
        }
        .schedulebox {
            display: flex;
            justify-content: space-between;
        }
        .shedulebox_item {
            width: 47%;
        }
        .shedulebox_item table td {
            border: none;
        }
        /* .shedulebox_item table thead {
           border-bottom: 1px solid #fff;
        } */
        .date-top {
            font-size: 2rem;
            text-align: left;
            width: 90%;
            border-bottom: 1px solid #000;
        }
        .about-measures {
            width:80%;
            margin: 0 auto;
        }
        .s-wid {
            width: 80%;
            margin: 0 auto;
        }
        .ws-apply {
            width: 40%;
        }
        .request_1 {
            margin-top: 3rem;
        }
        .request_2 {
            margin-top: 3rem;
        }
        .w45 {
            width: 45%;
            margin-left: auto;
            margin-right: auto;
        }
        .w55 {
            width: 55%;
            margin-left: auto;
            margin-right: auto;
        }
        .w6 {
            width: 60%;
            margin-left: auto;
            margin-right: auto;
        }
        .w7 {
            width:70%;
            margin-left: auto;
            margin-right: auto;
        }
        .w90 {
            width: 90%;
            margin-left: auto;
            margin-right: auto;
        }
        .w100 {
            width:100%;
        }
        .cw {
            color: #fff;
        }
        .img-mt {
            margin-top: 3rem;
        }
        .attention2022 {
            padding-top: 2rem;
        }
        .mb0 {
            margin-bottom: 0!important;
        }
        .mtb3 {
            margin: 4rem 0;
        }
        .map {
            width:80%;
            margin-left:auto;
            margin-right: auto;
        }
        .map img {
            width: 100%;
            max-width: 100%;
            object-fit: contain;
            object-position:center;
        }
        .work_sec {
            margin-bottom: 8rem;
        }
        .sec-title {
            margin-bottom: 3rem;
        }
        .syuryou2022 {
            position:relative;
        }
        .finish {
            position: absolute;
            width: 445px;
            height: 125px;
            top: 25%;
            left: 50%;
            transform: translateX(-50%);
            z-index: 90;
        }
        .position_pika {
            position:relative;
        }
        .h_e {
            color: #ffc333;
            transition: 0.3s ease-in;
            opacity: 1;
            text-decoration:underline;
        }
        .h_e:hover {
            color: #ffc333;
            opacity: 0.7;
        }
        .ws-apply2 {
            width: 30%;
        }
        .comment-wrap .comment-name {
            border-bottom: 1px solid #fff;
        }


        @media screen and (max-width:767px) {
            .about-text {
                font-size: 3vw;
            }
            .talf {
                text-align: left;
            }
            .w7 {
                width:90%;
                margin-left:auto;
                margin-right: auto;
            }
            .date-top {
                width: 100%;
            }
            .w55 {
                width: 90%;
                margin-left: auto;
                margin-right: auto;
            }
            .map {
                width:100%;
            }
            .spm {
                margin-bOttom: 5rem;
            }
            .table2022 td {
               width: 100%;
            }
            .s-sp100 {
                width: 100%;
            }
            .w90 {
                width: 100%;
            }
            .schedulebox {
                display: block;
            }
            .shedulebox_item {
                width: 90%;
                margin-left: auto;
                margin-right: auto;
            }
            .issp {
                display: block;
            }
            .ws-apply {
                width: 90%;
            }
            .w6 {
                width: 90%;
            }
            .w45 {
                width: 90%;
            }
            .stb {
                margin-bottom: 6.5rem;
            }
            .wm-mv {
                height: 67vh!important;
            }
            .s_flex tr {
                display: flex;
            }
            .s-time {
                width: 40%;
                font-size: 1.4rem;
                padding: 3% 1% 3% 0%;
            }
            .s-content {
                width: 60%;
                font-size: 1.4rem;
                padding: 3% 0% 3% 1%;
            }
            .work_sec {
                margin-bottom: 4rem;
            }
            .attention2022 {
                margin-top: 0;
            }
            .stt {
                padding-top: 2rem;
            }
            .finish {
                position: absolute;
                width: 310px;
                height: 92px;
                top: 36%;
                left: 50%;
                transform: translateX(-50%);
                z-index: 90;
            }
        }

        @media screen and (max-width:992px) {
        .spmt {
            padding-top: 100.37% !important;
        }
        }
        @media screen and (max-width:767px) {
            .spmt {
                padding-top: 103.37% !important;
            }
            .ws-apply2 {
            width: 90%;
        }
        }
        /* カード */
ul.youtubeList {
padding: 0;
margin: 0;
border: none;
list-style: none;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
gap: 25px;
}
ul.youtubeList li {
width: 47%;
}
ul.youtubeList li a {
display: flex;
flex-direction: column;
height: 100%;
border-radius: 2px;
background: #fff;
box-shadow: 0 0 3px 0 rgb(0 0 0 / 12%), 0 2px 3px 0 rgb(0 0 0 / 22%);
cursor: pointer;
transition: 0.2s ease-in-out;
}
ul.youtubeList li a:hover {
box-shadow: 0 15px 30px -5px rgb(0 0 0 / 15%), 0 0 5px rgb(0 0 0 / 10%);
transform: translateY(-4px);
text-decoration: none;
}
ul.youtubeList li a:hover:before {
content: "";
width: 100%;
height: 100%;
position: absolute;
background: rgb(0,0,0,.4);
}
ul.youtubeList li a:hover:after {
content: "\f03d";
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 2rem;
position: absolute;
top: 50%;
transform: translate(-50%, -50%);
left: 50%;
color: #FFF;
}
ul.youtubeList li a img {
border-radius: 2px 2px 0 0;
}
ul.youtubeList li a p {
margin: 0;
text-decoration: none;
color: #313131;
padding: 10px 20px;
line-height: 1.6;
}
/* modal */
.ed-modal {
position: fixed;
width: 100%;
height: 100%;
left: 0;
top: 0;
background: rgba(0, 0, 0, 0.9);
display: flex;
z-index: 9999;
}
div#modalOverlay {
width: 100%;
height: 100%;
display: flex;
cursor: pointer;
}

.ed-closeModal {
position: absolute;
top: -35px;
right: 5px;
cursor: pointer;
width: 1.5rem;
height: 1.5rem;
opacity: 0.5;
}
.ed-closeModal::before, .ed-closeModal::after {
content: "";
width: 35px;
height: 2px;
background: #fff;
position: absolute;
top: 0;
transform: rotate(45deg);
transform-origin: top left;
}
.ed-closeModal::before {
left: -9px;
}
.ed-closeModal::after {
right: 0;
transform: rotate(-45deg);
transform-origin: top right;
}

.modalContent {
width: 100%;
max-width: 800px;
margin: auto;
position: relative;
}

.video {
width: 100%;
position: relative;
height: 0;
padding-bottom: 56.25%;
overflow: hidden;
filter: drop-shadow(0px 2px 5px #313131);
animation: fadeIn 1.2s ease 0s 1 normal;
}
.video iframe {
width: 100%;
position: absolute;
top: 0;
left: 0;
height: 100%;
}
/* table.table2022 tbody tr td.white1 {
    background: #fff;
    color: #333;
} */

@keyframes fadeIn {
0% {
opacity: 0;
transform: translateY(30px);
}
100% {
opacity: 1;
}
}

@media screen and (max-width: 767px) {
/* （ここにモバイル用スタイルを記述） */
ul.youtubeList li {
width: 100%;
}
}

    .nav_2 {
    max-width:55%;
    }
    @media screen and (max-width: 900px) {
    .nav_2 {
    max-width:53%;
    }
    }

    .purple {
        background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100%;
    }

    .purpl1 {
        background: #805b4a;
        width: 37%;
        color: #fff;
    }

    .mgb-xl_2{
        margin-bottom: 7rem;
    }

    .comment-site-width-top{
        width: 60%;
        margin-left: auto;
        margin-right: auto;
        position: relative;
    }

    @media screen and (max-width: 767px){
        .comment-site-width-top {
            width: 90%;
        }
    }

    .cnctn{
        padding-bottom: 10rem;
    }

    .about-measures-block_2{
        padding: 0 5%;
    }

    .pc-none{
        display: none;
    }

    .cont-l{
        width: 55%;
        padding-top:4rem; 
        display: flex;
    }
    .cont-l_t{
        margin-left:5rem ;
        margin-top: 5rem;
        width: 99%;
    }
    .cont-l_p{
        width: 99%;
    }

    .cont-r{
        width: 55%;
        padding-top:4rem; 
        display: flex;
    }
    .cont-r_t{
        margin-right:5rem ;
        margin-top: 5rem;
        width: 99%;
    }
    .cont-r_p{
        width: 99%;
    }

    @media screen and (max-width: 1316px){
        .cont-r_t{
            margin-right:5rem ;
            margin-top: 0rem;
            width: 99%;
        }
        .cont-l_t{
            margin-left:5rem ;
            margin-top: 0rem;
            width: 99%;
        }
        .cont-r{
            width: 75%;
        }
        .cont-l{
            width: 75%;
        }
        
    }

    @media screen and (max-width: 767px){
        .sp-none{
        display: none;
        }
        .pc-none{
            display: block;
        }
        .cont-l{
            width: 80%;
            padding-top:3rem; 
            display: block;
        }
        .cont-l_t{
            margin-left:0rem ;
            margin-top: 2rem;
            width: 99%;
        }
        .cont-l_p{
            margin: 0 auto;
            width: fit-content;
        }

        .cont-r{
            width: 80%;
            padding-top:3rem; 
            display: block;
        }
        .cont-r_t{
            margin-left:0rem ;
            margin-top: 2rem;
            width: 99%;
        }
        .cont-r_p{
            margin: 0 auto;
            width: fit-content;
        }
        .Venue-w-2023{
            margin-bottom: 0 !important;
          }
          .mtb3-Venue{
            margin: 2rem 0 4rem  0 !important; 
          }
        
    }
.venue-f-m{
    font-size: 18px;
    padding-left: 4px;
}
  .map-2023 iframe {
    width: 100%;
    aspect-ratio: 16/9;
  }
  .Venue-w-2023{
    margin-bottom: 7rem;
  }

  .mtb3-Venue{
    margin: 4rem 0;
  }

  .map-2024  {
    color: #fff;
    width: 55%;
    margin-left: auto;
    margin-right: auto;
    /* text-align: center; */
    margin-top: 25px;
  }
  .map-2024 iframe {
    width: 100%;
    aspect-ratio: 16/7;
    margin-top: 7px;

  }


#main_visual.end .main_visual_inner .catch-copy-wrap {
    top: 51%;
}

#main_visual.end .scroll-down {
    bottom: .5%;
}

.caption-2022 {
    font-size: 20px;
    background: rgba(8, 7, 7, 0.7);
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 750px;
    text-align: center;
}

.cap2022 {
    font-size: 1.6rem;
    line-height: 1.3;
}

.cap2022 span {
    font-size: 1.2rem;
    display: inline-block;
}

.cap2022 span.n-size {
    font-size: 1.4rem;
    line-height: 1;
    padding-bottom: 10px;
    display: inline-block;
}

.cap2022 dl {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
}

.catch-copy-wrap {
    width: 70% !important;
}
.catch-copy-wrap .catch-copy {
    max-width: 700px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.catch-copy-wrap .catch-copy img {
    width: 100%;
}
.mv_img2024 {
    width: 40% !important;
}

.btn {
    margin: 45px 0 30px 0;
    /* display: block; */
}

.backcolor {
    background-color: #f9f5ee;
}

.mv-date {
    font-size: 2.0vw;
    line-height: 1.2;
}

.caption2022 {
    margin-top: 30px;
}

.top-catch {
    font-size: 1.6rem;
}

.overview2023 {
    display: block;
    margin: 0 auto;
    width: fit-content;
}

.overview2023 table {
    border: none;
}
.overview2023 th {
    border: none;
    background: none;
    padding: 0;
    vertical-align: baseline;
}
.overview2023 td {
    border: none;
    padding: 0 0 2px 0;
}

.overview2023 tr {
    padding-bottom: 5px;
    display: block;
}

.comingsoon {
    font-size:1.5vw;
    line-height: 1;
    margin-bottom:10px;
}
.caption-2022 dl.is_pc  {
    display: flex!important;
    justify-content: center;
    font-size: 1.6rem;
    line-height: 1.3;
}
.caption-2022 dl:first-child {
    margin-bottom: 10px;
}
.caption-2022 dl span {
    /* display: inline-block; */
    font-size: 1.2rem;
}

.caption-2022 dl span.is_pc {
    font-size: 1.2rem;
    /* display: inline-block; */
}
/* .caption-2022 dl dt {
    width:205px;
    text-align: right;
    white-space: nowrap;
} */
.caption-2022 dl dt {
    width:100%;
    text-align: center;
    white-space: nowrap;
}
/* .caption-2022 dl dd {
    width: 670px;
    text-align: left;
} */
.caption-2022 dl dd {
    width: 100%;
    text-align: center;
}
/* @media screen and (max-width:1350px) {
    .caption-2022 dl dt {
        width:230px;
    }
    .caption-2022 dl dd {
        width: 590px;
    }
} */
@media screen and (max-width:1100px) {
    .cap2022 {
        font-size: 1.2rem;
        line-height: 1;
    }

    .cap2022 span {
        font-size: 1rem;
        padding-bottom: 7px;
        display: inline-block;
    }

    .cap2022 span.n-size {
        font-size: 1.2rem;
        line-height: 1;
        padding-bottom: 7px;
        display: inline-block;
    }
    .caption-2022 dl {
        font-size: 1.2rem;
    }
    .caption-2022 dl dt {
        font-size: 1.2rem;
        /* width: 175px; */
    }
    .caption-2022 dl dd {
        font-size: 1.2rem;
        /* width: calc(100% - 175px); */
    }
    
    .caption-2022 dl dt span {
        font-size: 1rem;
    }
    
    .caption-2022 dl dd span {
        font-size: 1rem;
    }
    .culture-site-width {
        width: 90%;
    }
}

@media screen and (max-width:767px) {
    #main_visual .caption {
        font-size: 3.2vw !important;
        position: relative;
        top: 2vw;
    }

    .comingsoon {
        font-size: 5.2vw;
    }

    .catch-copy-wrap {
        width: 95% !important;
    }

    .mv_img2024 {
        width: 90% !important;
    }

    .cap2022 {
        font-size: 13px;
        line-height: 1;
        letter-spacing: 1.3px;
    }

    .cap2022 span {
        font-size: 10px;
        padding-bottom: 7px;
        display: inline-block;
    }

    .cap2022 span.n-size {
        font-size: 12px;
        line-height: 1;
        padding-bottom: 7px;
        display: inline-block;
    }
    .caption-2022 dl {
        font-size: 12px;
        display: block;
        text-align: center;
    }

    .caption-2022 dl span {
        font-size: 10px;
        width: auto;
    }
    .caption-2022 dl span.is_pc {
        font-size: 12px;
    }
    .caption-2022 dl dt {
        width: 100%;
        text-align: center;
        margin-top: 12px;
        margin-bottom: 3px;
    }
    .caption-2022 dl dd {
        width: 100%;
        text-align: center;
    }


    .mv-date {
        font-size: 2.2vw;
    }

    .mv-date {
        font-size: 1.6rem;
    }

    .caption2022 {
        margin-top: 20px;
    }

    .caption-2022 {
        margin-top: 40px;
        padding-bottom: 7px!important;
        padding-top:  0px!important;
    }
    .cap2022 {
        padding-top: 20px;
    }

    .top-catch {
        font-size: 1.25rem;
    }

    .caption-2022 {
        padding-left: 1%!important;
        padding-right: 1%!important;
        padding-top: 20px!important;
        padding-bottom: 20px!important;
    }
    .caption-2022 dl.is_pc  {
        display: none!important;
    }
    .caption-2022 dl dt  {
        font-weight: bold;
        font-size: 1.4rem;
        margin-top: 5px;
    }
    .caption-2022 dl dd  {
        margin-bottom: 10px;
        font-size: 1.4rem;
        line-height: 1.1;
    }
    .caption-2022 dl dt  span{
        font-weight: bold;
        font-size: 1.4rem;
        margin-bottom: 3px;
    }
    .caption-2022 dl dd span {
        font-size: 1.2rem;
        /* display: inline-block; */
        padding-bottom: 3px;
        line-height: 1;
    }
    .map-2024  {
        margin-top: 25px;
      }
}

@media screen and (min-width:1300px) {
    #main_visual .caption {
        font-size: 1vw !important;
    }

}

@media screen and (min-width:1500px) {
    #main_visual .caption {
        font-size: .8vw !important;
    }
}

@media screen and (max-width:767px) {
    #main_visual .caption {
        font-size: 3.2vw !important;
        position: relative;
        top: 2vw;
    }
}

@media screen and (min-width:1300px) {
    #main_visual .caption {
        font-size: 1vw !important;
    }
}

@media screen and (min-width:1500px) {
    #main_visual .caption {
        font-size: .8vw !important;
    }
}
header {
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
}

._fix header {
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
}

.nav_2 {
    max-width: 55%;
}

@media screen and (max-width: 900px) {
    .nav_2 {
        max-width: 53%;
    }
}.about-text {
    font-size: 1vw;
    line-height: 1.5;
}

.pul-ma {
    margin-right: 5rem !important;
}

.pul-ju {
    justify-content: center !important;
}

.bo-ma {
    margin-bottom: 10rem;
}

@media screen and (min-width: 767px) {
    .about_desc {
        width: 50%;
        margin-left: auto;
        margin-right: auto;
        text-align: justify;
    }
}

@media screen and (max-width:767px) {
    .about-text {
        font-size: 3vw;
    }

    .about_desc {
        text-align: center;
        max-width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .pul-ma {
        margin-right: 0;
    }

    .sp-mb {
        margin-bottom: 5rem;
    }

    .bo-ma {
        margin-bottom: 3rem;
    }
}


.gift2024 .apply_gift {
    width: 40%;
}
.gift2024 .slick-prev {
    display: none !important;
}
.gift2024 .slick-next {
    display: none !important;
}
.gift2024 .slick-dots li button {
    background: #fff !important;
}
.gift2024 .slick-dots {
    padding-top: 10px;
}
.gift2024 .w90 {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    justify-content: space-between;
    align-items: center;
}
.gift2024 .w20 {
    width: 23%;
}
.gift2024 table.about-table th th {
    color: #391504!important;
}
.gift2024 .btn.border.no-link:before {
    background: #fff;
}
.gift2024 .sec-title-wrap .sec-title {
    margin-bottom: 0;
}
.gift2024 .sec-title-wrap .caption {
    font-size: 1.7rem;
}
.gift2024 .small-en__th {
    font-size: 1.3rem;
    display: inline-block;
}
.gift2024 .small-en-attention {
    font-size: 1.2rem;
}
.gift2024 .small-en02 {
    font-size: 1.6rem;
    display: inline-block;
}
.gift2024 .small-en {
    display: inline-block;
}

@media screen and (max-width:767px) {
    .gift2024 .is_sp {
        display: block;
    }
    .gift2024 .mgb_sp {
        margin-bottom: 2.5rem;
    }
    .gift2024 .mgb_sp {
        margin-bottom: 2.5rem;
    }
    .gift2024 .apply_gift {
        width: 100%;
    }
    .gift2024 .w90 {
        width: 90%;
    }
    .gift2024 .w20 {
        width: 100%;
    }
    .gift2024 .inner-site-width {
        width: 100%;
    }
    .gift2024 .small-en {
        font-size: 1.3rem;
    }
    .gift2024 .table th, table td {
        text-align: left;
        line-height: 1.35;
    }
    .gift2024 .offset-lg-3.px-5 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .map-2024 {
        width: 90%;
    }
}

.facebook-section {
    padding-bottom: 60px;
    background: #fff;
    margin-top: -4vh;
    padding-top: 60px;
}
.facebook-section ul {
    display: flex;
    justify-content:center;
    gap: 40px;
}
.facebook-section ul li {
    width:450px;
    background: #f9f5ee;
    padding: 20px;
    position:relative;
}
.fb-img {
    width:100%;
    height: 270px;
    overflow: hidden;
}
.facebook-section ul li a:hover img {
    transform:scale(1.1);
    transition:0.3s;
}
.facebook-section ul li a img {
    width:100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform:scale(1.0);
    transition:0.3s;
}
.facebook-section ul li a p {
    /* font-size: 1.8rem; */
    padding-top: 10px;
    line-height:1.5;
    padding-right:10px;
    padding-left:10px;
}
.facebook-section ul li a p.fb-time {
    font-size: 1.3rem;
    /* text-align: right; */
    padding-bottom: 0px;
    padding-top: 15px;
    line-height:1;
    padding-right:10px;
    padding-left:10px;
    font-weight:bold;
}
.facebook-section ul li a p.fb-more {
    font-size: 1.3rem;
    text-align: right;
    line-height:1;
    color: #633870;
    position:absolute;
    bottom: 10px;
    right: 10px;
    
}
.cap2022 {
    display: block;
    text-align: center;
    padding-top: 1px;
}
@media screen and (max-width:1300px) {
    .facebook-section ul {
        gap: 10px;
    }
    .facebook-section ul li {
        width:320px;
    }
    .facebook-section ul li a img {
        height:320px;
    }
    .fb-img {
        height: 220px;
    }
}
@media screen and (max-width:900px) {
    .facebook-section ul {
        display: block;
    }
    .facebook-section ul li {
        width:80%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 15px;
    }
    .facebook-section ul li a img {
        height:auto;
    }
    .fb-img {
        height: 300px;
    }
}
@media screen and (max-width:550px) {
    .facebook-section {
        padding-bottom: 35px;
        background: #fff;
        margin-top: -40px;
        padding-top: 35px;
    }
    .facebook-section ul {
        display: block;
    }
    .facebook-section ul li {
        width:80%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 15px;
    }
    .facebook-section ul li a img {
        height:auto;
    }
    .fb-img {
        height:auto;
    }
}


.s-time {
    font-size: 1.6rem;
    /* white-space: nowrap;
width:135px; */
    margin-right: 5px;
    letter-spacing: 0;
}

.s-content {
    line-height: 1.3;
    letter-spacing: 0;
}

.small-en {
    display: inline-block;
    padding-top: 3px;
}

.purple9 {
    background: #51265e;
}

.pikapika_flex {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: center;
}

.pikapika_flex .zoom_hover {
    width: 59.5%;
    margin-left: auto;
    margin-right: auto;
}

.pikapika-txt {
    /* margin-top: 20px; */
    margin-bottom: 12px;
    text-align: center;
}

.pikapika_flex .media-wrap {
    width: 34%;
    margin-left: 1%;
}

.pikapika_flex .media-wrap img {
    width: 100%;
    object-fit: contain;
    object-position: center;
}

.table2022 a {
    text-decoration: underline;
}

.table2022 a:hover {
    text-decoration: none;
}

.company-link {
    text-decoration: underline;
}

.company-link a:hover {
    text-decoration: none;
}

@media screen and (max-width: 1450px) {
    .w90 {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .s-time {
        white-space: nowrap;
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 1100px) {
    .schedulebox {
        display: block;
    }

    .shedulebox_item {
        width: 100%;
    }

    .pikapika_flex {
        width: 80%;
    }
}

@media screen and (max-width: 767px) {
    .s90-2023 {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .w90 {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .pikapika_flex {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }

    .pikapika_flex .zoom_hover {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .pikapika-txt {
        /* margin-top: 15px; */
        margin-bottom: 10px;
    }

    .pikapika_flex .media-wrap {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
        margin-top: 10px;
    }
}


.ad_title {
    font-size: 1.8rem;
    padding: 2rem 0;
    text-align: center;
    font-weight: bold;
}
.ad_title span {
    font-size: 1.4rem;
    padding: 2rem 0 3rem 0;
}
.movie-area50 {
    width: 50% !important;
    margin-left: auto;
    margin-right: auto;
}

.movie-width img {
    width: 100% !important;
    object-fit: cover;
    object-position: center;
}

.pb15r {
    padding-bottom: .3rem;
    margin-bottom: 0;
    text-align: left !important;
}

.mg100 {
    margin-top: 80px;
}

.culture-site-width .sec-title {
    padding-top: 3px;
}

@media screen and (max-width: 767px) {
    .movie-area50 {
        width: 100% !important;
    }
}

#footer .sec-title-wrap .sec-title {
    margin-bottom: 0;
    font-size: 3.8rem;
}
#footer  .mgb-lg {
    margin-bottom: 2rem;
}
#footer  .sec-title-wrap .caption {
    margin-bottom: 1.5rem;
}

.front-footer .sec-title {
    margin-bottom: 0;
    font-size: 3.8rem;

}
.front-footer .mgb-lg {
    margin-bottom: 2rem;
}
.front-footer .caption {
    margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
    #footer.pdy-lg {
        padding-top: 5rem;
    }
    #footer .foot-contact .btn {
        margin-top: 0;
    }

    .front-footer {
        padding-top: 5rem;
    }
    .front-footer .btn.grad {
        margin-top: 10px;
        padding-left: 7vw;
        padding-right: 7vw;
    }
}


/* ワークショップ */
.c-flex {
    display: flex;
}
.-jc-c {
    justify-content: center;
}
.c-white {
    color: #fff;
}
.workshp-item {
    margin-bottom: 45px;
    padding-top: 20px;
}
.workshp-item .-img {
    width: 40%;
    margin-right: 7%;
}
.workshp-item .-img img {
   width: 100%;
   object-fit: contain;
   object-position: center;
}
.workshp-item .-txt {
    text-align: left;
    width: 53%;
}
.workshp-item .-txt {
    text-align: left;
    width: 45%;
}
.workshp-item .-txt .-detail {
    margin: 20px 0;
}
.workshp-item .-txt .-detail dl {
    display: flex;
    font-size: 15px;
}
.workshp-item .-txt .-detail dl dt{
    width: 72px;
}
.workshp-item .-txt .-detail dl dd span{
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
}
.workshp-item .-txt h6 {
   font-size: 20px;
   font-weight: bold;
   line-height: 1.5;
   position: relative;
   padding-bottom: 7px;
   margin-bottom: 17px;
}
.workshp-item .-txt h6::after {
    content:"";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, #391504 20%, #805b4a 75%) no-repeat 50% 50%/100% 100% !important;
}
.workshp-item .-txt h6 span {
    font-size: 14px;
}
.workshp-item .-txt p {
  font-size: 15px;
}
.purple .workshp-item .-txt h6::after { 
    background: #fff !important;
}

table th, table td.purpl1 {
    padding: 1%;
    line-height: 1.5;
    font-size: 15px;
}
table.shop-table tr td {
    font-size: 15px;
    line-height: 1.5;
}
table.shop-table.w7 {
    max-width: 1100px!important;
    width: 100%!important;
}
.attention {
    font-size: 12px;
    margin-top: 20px;
    text-align: center;
}
.ws-width.comment-site-width {
    max-width: 1100px!important;
    width: 95%!important;
}
.movie_by {
    position: absolute;
    z-index: 999;
    right: 10px;
    top: 5px;
}
.purple {
    position: relative;
}

@media screen and (max-width: 1100px) {
    table.shop-table tr td {
        font-size: 14px;
    }
    .workshp-item .-img {
        width: 45%;
        margin-right: 5%;
    }
    .workshp-item .-txt {
        width: 50%;
    }
    .workshp-item {
        margin-bottom: 15px;
    }
    .workshp-item .-txt p {
       font-size: 14px;
    }
    .workshp-item .-txt h6 {
        font-size: 18px;
    }
    .workshp-item .-txt .-detail dl {
        font-size: 14px;
    }
}
@media screen and (max-width: 750px) {
    table th, table td.purpl1 {
        padding: 2% 10px;
    }
    .c-flex.-wrap {
        flex-wrap: wrap;
    }
    .workshp-item .-img {
        width: 100%;
        margin-right: 0;
    }
    .workshp-item .-txt {
        width: 100%;
        margin-top: 15px;
        font-size: 14px;
    }
    .workshp-item .-txt h6 {
        padding-bottom: 5px;
        margin-bottom: 10px;
    }
    .ws-width.comment-site-width {
        width: 90%!important;
    }
  
}