@charset "UTF-8";

*,*::before,*::after{
    box-sizing: border-box;
}
html {
  font-size: 16px; /* 基準 */
	overflow-x: hidden;
}
body{
    font-family: "Helvetica Neue", "Helvetica",noto-sans-cjk-jp, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    overflow-wrap: break-word;
	font-feature-settings: "palt";
	letter-spacing: 0.05em;
  overflow: hidden;
}
/* 共通 */
.pc{
    display: block;
}
.sp{
    display: none;
}
#content{
    overflow: hidden;
    width: 100%;
}

img{
	max-width: 100%
}
p{
    font-family: "Helvetica Neue", "Helvetica",noto-sans-cjk-jp, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-size: clamp(0.95rem, 1.25vw, 1.1rem);
	  line-height: 1.6;
    font-weight: 400;
    font-style: normal;
}
.hero_small {
  font-size: 16px;
  color: #b02020;
  text-align: center;
  margin: 20px auto 40px;
}

.hero_small span {
  display: inline-block;
  background: rgba(255, 255, 255, 1);
  backdrop-filter: blur(5px);
  padding: 3px 10px;
  font-weight: 600;
  line-height: 1.6;
  border-radius: 4px;
}

.sec_ttl {
    font-size: 3rem;
    letter-spacing: 0.08em;
}
.navy{
    color: #114876;
}
.small_text {
    font-size: 15px;
    line-height: 1.4;
}
.small{
    font-size: 60%;
}
.large{
    font-size: 150%;
}
.font_large{
    font-size: 130%;
}

@media screen and (max-width: 1366px) {
    .sec_ttl {
        font-size: 2.3rem;
    }
}
@media screen and (max-width: 1100px) {
    .sec_ttl {
        font-size: 1.8rem;
    }
}

@media screen and (max-width: 768px) {
    .sec_ttl {
        font-size: 1.6rem;
        letter-spacing: 3px;
    }

}

@media screen and (max-width: 430px) {
    .sec_ttl {
        font-size: 1.5rem;
    }
}
/* FONT */
.gar{
    font-family: garamond-premier-pro-display, "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-weight: 300;
    font-style: italic;
}
.min_s_bold{
    font-family: source-han-serif-japanese, "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-weight: 600;
    font-style: normal;
	line-height: 1.5;
}
.min_s_bold .ls-0 {
	letter-spacing: 0.025em;
}
.min_bold{
    font-family: source-han-serif-japanese, "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-weight: 600;
    font-style: normal;
}
.n_med{
    font-weight: 500;
    font-style: normal;
}
.n_bold{
    font-weight: 600;
    font-style: normal;
}
/* ボタン装飾 */
.button001 a {
    background: #1e5277;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    width: 80%;
    padding: 10px 25px;
    color: #ffffff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    text-decoration: none;
    font-size: 1.5rem;
    margin-top: 5%;
}
.button001 a:hover {
    background: #aa1300;
    color: #FFF;
}
.button001 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 47%;
    right: 30px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.button001 a:hover:after {
    border-color: #FFF;
}

.button002 a {
    background: #1e5277;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    width: 80%;
    padding: 12px 25px;
    color: #ffffff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    text-decoration: none;
    font-size: clamp(1.125rem, 2.5vw, 1.5rem);
    margin-top: 5%;
}
.button002 a:hover {
    background: #aa1300;
    color: #FFF;
}
.button002 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 47%;
    right: 30px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.button002 a:hover:after {
    border-color: #FFF;
}

.button003 a {
    background: #a99065;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    width: 80%;
    padding: 10px 25px;
    color: #ffffff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    text-decoration: none;
    font-size: 1.5rem;
	font-weight: 600;
    margin-top:10%;
}
.button003 a:hover {
    background: #aa1300;
    color: #FFF;
}
.button003 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 47%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.button003 a:hover:after {
    border-color: #FFF;
}

.button004 a {
    background: #a99065;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    width: 80%;
    padding: 10px 25px;
    color: #ffffff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    text-decoration: none;
    font-size: 1.5rem;
	font-weight: 600;
    margin-top: 10%;
}
.button004 a:hover {
    background: #aa1300;
    color: #FFF;
}
.button004 a:after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 47%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.button004 a:hover:after {
    border-color: #FFF;
}
.ttbtn {
    top: 60px;
    right: 2%;
    width: 100px;
    background-color: #a99065;
    z-index: 1000;
    padding: 22px 18px 20px;
    border-radius: 50%;
    height: 100px;
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.4);
}
.mpttl {
    top: 165px;
    right: 2%;
    width: 100px;
    background-color: #a99065;
    z-index: 999;
    padding: 20px;
    border-radius: 50%;
    height: 100px;
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.4);
    text-align: center;
}
.mpttl img{
    height: 64px;
}

.comingsoon-btn-size{
	text-align: center;
	width: 80%;
	margin: 0 auto;
}

/*--------------------
  20260328 takase
---------------------*/
.hero_content .boot_inner .flex {
	display: flex;
	align-items: center;
	gap: 8px;
    max-width: 560px;
    margin: 0 auto;
}
.hero_content .boot_inner .flex .col-6 {
	width: calc((100% - 10px) / 2);
	padding: 0;
}
.hero_content .boot_inner .flex .col-6 .button003 a,
.hero_content .boot_inner .flex .col-6 .button004 a {
	width: 100%;
	margin-top: 0;
    font-size: 1.2rem;
	padding: 12px 25px 12px 10px;
}
.hero_content .boot_inner .flex .col-6 .button003 a {
	background: #b02020;
}
.hero_content .boot_inner .flex .col-6 .button003 a:hover {
	background: #a99065;
}
.date_sec .boot_inner .hu_place h3 {
	line-height: 1.0;
}
.date_sec .boot_inner .hu_place .small {
	font-size: 1.0rem;
	font-weight: 500;
}
@media screen and (max-width:1100px) {
	.date_sec .boot_inner .hu_place h3 {
		line-height: 1.2;
	}
}
@media screen and (max-width:500px) {
    .pc{
        display: none;
    }
    .sp{
        display: block;
    }
}
@media screen and (max-width: 430px) {
    .small_text {
        font-size: 12px;
        line-height: 1.2;
    }
	.hero_ttl {
        padding: 28% 0 0;
    }
	.hero_content .boot_inner .flex .col-6 {
		width: 80%;
		margin: 0 auto;
	}
	.hero_small {
	    margin: 20px auto 20px;
	}
}

/* レイアウト全体共通 */
.boot{
    max-width: 1200px;
    margin: 0 auto;
}
.boot_inner{
    padding: 0 50px;
}
ul,li{
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 768px) {
    .boot_inner {
        padding: 0 40px;
    }
}
@media screen and (max-width: 640px) {
    .boot_inner {
        padding: 0 30px;
    }
}
@media screen and (max-width: 430px) {
    .boot_inner {
        padding: 0 10px;
    }
}
/* HERO */
.hero{
    height: 100vh;
    background-image: url(img/pc_hero.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.hero_ttl{
    padding: 7% 10% 0;
}
@media screen and (max-width: 1720px) {
    .hero_ttl{
        padding: 12% 15% 0;
    }
}
@media screen and (max-width: 1366px) {
    .hero_ttl{
        padding: 12% 20% 0;
    }
}
@media screen and (max-width: 1280px) {
    .hero_ttl{
        padding: 13% 14% 0;
    }

}
@media screen and (max-width: 1024px) {
    .hero {
		
        height: 80vh;
    }
    .hero_ttl {
        padding: 14% 12% 0;
    }
}
@media screen and (max-width:910px) {
  .button004 a{
    margin-top: 5%;
  }
	
  .barandshop .col-md-6 {
    width: 100%;
  }
	.barandshop .col-md-6 .bg_inner_sec {
		padding-bottom: 10px;
	}
	.barandshop .col-md-6 .inner_img > img {
		height: 600px;
	}
	.barandshop .col-md-6 .bg_inner_sec .detail-btn {
		margin: 30px auto 30px;
	}
}
@media screen and (max-width: 768px) {
  .row{
    display: block;
  }
    .hero {
        height: 76vh;
    }
    .hero_ttl {
        padding: 17% 6% 0;
    }
    .button003 a,.button004 a {
        font-size: 1.2rem;
    }
    .hu_place h3{
        font-size: 1.4rem;
    }
  .col-md-6{
    margin: 0 auto;
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
    .hero_ttl {
        padding: 25% 2% 0;
    }
}

@media screen and (max-width: 500px) {
    .hero {
        height: 77vh;
    }
    .button003 a,.button004 a {
        width: 90%;
        font-size: 1rem;
    }
}

/* DATE SECTION */


.date{
	font-size: 25px;
	font-weight: 500;
	color: #ffffff;
	position: relative;
	line-height: 1.4;
    font-feature-settings: "palt";
}

.date::after{
	content: "";
	position: absolute;
	right:-10px; 
	transform: translateY(-25%);
	bottom: 0%;
	width: 1px;         
	height: 30px;       
	background: #fff;  
}
.time {
    color: #ffffff;
	font-size: 28px;
	font-weight: 500;
	margin-left: 20px;
	font-feature-settings: "palt";
}
.time-smaller{
	font-size:13px;
}

.d-flex-date{
	display: flex !important;
}

.date-bigger{
	font-size: 40px;
	font-weight: 500;
}


.dateblock{
    background-color: #333333;
    padding: 25px 0 40px;
}
.sponsored{
    background-color: #51514b;
    padding: 20px 0;
}
.und_logo img{
    width: 500px;
}
.g_btn {
    background-color: #e68721;
    color: #333;
    padding: 0px 16px;
    border-radius: 50px;
    text-decoration: none;
    font-size: 1.3rem;
    margin-left: 0.85rem;
}
/* LIMITED */
.grid-sec{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    height: 100vh;
}
.lim_img{
    background-image: url(img/taru.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
.lim_cont{
    width: 100%;
    height: 100%;
}
.sec_tag {
    position: absolute;
    top: 50px;
    right: 30px;
    font-size: 7rem;
}
.bb{
    color: #444;
}
.gr{
    color: #e3e3e3;
}
.lim_inner{
    width: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
}
.li_img img{
    width: 60px;
	padding-left: 10px;
}
.tag {
    display: inline-block;
    color: #e43828;
    border: 1px solid #e43828;
    padding: 5px 10px;
}


.limited .lim_item_box {
	padding: 20px 20px 23px;
}

.lim_inner .notes {
	display: inline-block;
	border-bottom: 1px solid;
	font-size: 18px;
}

.limited .lim_item_box .li_text {
	margin-left: 20px;
}
.limited .lim_item_box .li_text .capacity {
	line-height: 1.2;
	margin-bottom: 0;
	color: #666;
}
.limited .lim_item_box .li_text .price {
    font-size: 2rem;
	line-height: 1.0;
}
.limited .lim_item_box .li_text .price .tax {
	font-size: 13px;
}


@media screen and (max-width: 1366px) {
    .grid-sec{
        height: 80vh;
    }
    .sec_tag {
        font-size: 5rem;
    }
    .li_text h3{
        font-size: 1.5rem;
    }
}
@media screen and (max-width: 1100px) {
    .lim_inner{
        width: 80%;
    }
    .li_text h3{
        font-size: 1.2rem;
		line-height: 1.3;
    }
    .sec_tag {
        font-size: 4rem;
    }
}
@media screen and (max-width: 1024px) {
    .grid-sec {
        height: 70vh;
    }
    .ttbtn {
        top: 24px;
		width: 90px;
		height: 90px;
	    padding: 14px 12px 20px;
    }
    .mpttl {
        top: 120px;
		width: 90px;
		height: 90px;
	    padding: 14px 20px;
    }
}

@media screen and (max-width:863px) {
    .dateblock .d-flex,.sponsored .d-flex {
        display: inline-block !important;
        width: 100%;
    }
}
@media screen and (max-width: 768px) {
    .grid-sec{
        height: 103.5vh;
        grid-template-columns: 1fr;
    }
    .lim_cont {
        height: 60vh;
    }
    .lim_img{
        height: 450px;
    }
    
    .time img {
        height: 20px;
    }
    .und_logo img {
        width: 380px;
    }
    .li_img img {
        width: 40px;
    }
    .li_text h3 {
        font-size: 1.1rem;
    }
    .price {
        font-size: 1.5rem;
    }
    .sec_tag {
        top: 20px;
    }
}
@media screen and (max-width: 863px) {
    .dateblock {
        padding: 30px 10px 40px;
    }

    .date {
        margin-right: 0;
        padding-right: 0;
        border-right: none;
        text-align: center;
        margin-bottom: 15px;
    }
    .time,.tel_btn{
        text-align: center;
    }
    .g_btn{
        margin: 0 !important;
    }
    .hu_place h3 {
        font-size: 1.2rem;
    }
    .sponsored {
        padding: 20px 30px;
    }
    .und_logo img {
        width: 100%;
        margin-bottom: 10px;
    }
    .sec_tag {
        font-size: 2.5rem;
    }
    .li_text{
        margin-left: 20px;
    }
    .koushi{
        width: 100%;
    }
}

@media screen and (max-width:640px){
	.d-flex-date{
		display: block!important;
	}
	.date::after{
		display:none;
	}
	.date{
		margin-bottom:0;
	    line-height: 1.2;
	}
	.time{
		margin-left:0;
	}
    .ttbtn {
        top: inherit;
		bottom: 110px;
		right: 20px;
		width: 80px;
		height: 80px;
	    padding: 14px 12px 20px;
    }
    .mpttl {
        top: inherit;
		bottom: 20px;
		right: 20px;
		width: 80px;
		height: 80px;
	    padding: 14px 20px;
    }
    .sponsored {
        padding: 20px 20px;
    }
    .und_logo img {
        margin-bottom: 0;
    }
}
@media screen and (max-width: 375px) {
    .dateblock {
        padding: 30px 0;
    }   
    .date img {
        height: 30px;
    }
}
/* SEMINAR */
.seminar {
	overflow-x: hidden;
}
.attention{
    background-color: #114876;
    padding: 30px 0;
}
.attention h3{
    color: #ffffff;
    line-height: 1.6;
	letter-spacing: 0.05em;
}
.attention h3 .small {
	font-size: 17px;
}
.sem-grid-sec{
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  align-items: stretch;
	margin-bottom: 120px;
}
.sem_cont_sec.sem_3 .sem-grid-sec {
	margin-bottom: 60px;
}
.sem_ttl_sec{
    padding: 3% 0;
    background-image: url(img/background.jpg);
}
.sem_ttl_sec .boot_inner .d-flex {
	gap: 20px;
}
.sem_ttl_sec .boot_inner .d-flex .sem_ttl_img {
	width: 40%;
	text-align: right;
}
.sem_ttl_sec .boot_inner .d-flex .sem_ttl_text {
	width: 60%;
}
.sem_ttl_img img{
    width: 300px;
    margin-right: 30px;
}
.stt_waku {
    background-color: #114876;
    padding: 10px 40px;
    color: white;
    border-radius: 50px;
    display: inline-block;
    margin-bottom: 10px;
}
.sem_content{
    padding: 120px 0 10%;
}
.sem_con_inner{
    width: 85%;
    margin: 0 auto;
}
.sem-img-a{
    background-image: url(img/sem01.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	height: 100%;
}
.sem-img-b{
    background-image: url(img/sem03.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	height: 100%;
}
.sem-img-c{
    background-image: url(img/sem02.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
	height: 100%;
}
.ko_ph img{
    width: 120px;
    margin-right: 20px;
}
.sc_und{
    border-top: 1px solid #000;
    margin-top: 30px;
    padding-top: 30px;
}
.sc_und .notes {
	font-size: 12px;
	color: #6B6B6B
}
.koushi_block.flex {
	display: flex;
	gap: 5px;
}
.koushi{
    background-color: #f6f6f6;
    display: inline-block;
    padding: 14px 20px;
	width: 100%;
	margin-top: 10px;
}
.koushi_block.flex .mem-1 {
	width: 65%
}
.koushi_block.flex .mem-2 {
	width: 35%
}
.ko_name h5 {
	font-size: 18px;
}
.ko_name .kousi_tl {
	font-size: 13px;
}
.ko_name .koushi_name {
	font-size: 20px;
	margin-bottom: 0;
}
.event_info > div {
  display: flex;
  gap: 12px;
  margin-bottom: 5px;
}
.event_info {
font-size: clamp(1.1rem, 1.8vw, 1.05rem);
  line-height: 1.6;
}
.event_info dt {
  min-width: 60px;
  font-weight: 600;
}
.event_info dd {
  margin: 0;
}
.sem_tag{
    display: inline-block;
    background-color: #114876;
    border-radius: 30px;
    padding: 5px 20px;
}
.sem_btn_sec p {
    display: inline-block;
    width: 80%;
    background-color: #b0b0b0;
    padding: 5px 20px;
    font-size: 2rem;
    color: white;
    text-align: center;
    border-radius: 50px;
    padding-bottom: 10px;
}

@media screen and (max-width: 1366px) {
    .stt_waku {
        padding: 7px 30px;
        font-size: 1.5rem;
    }
    .sem_price h3 {
        font-size: 1.3rem;
    }
    .sem_btn_sec p {
        width: 90%;
        padding-bottom: 8px;
        font-size: 25px;
    }
}
@media screen and (max-width: 1100px) {
    .sem_con_inner{
        width: 100%;
    }
	.sem_con_inner .button002 a { 
		width: 100%;
		margin-top: 20px;
	}
    .sem_price h3 {
        font-size: 1.2rem;
    }
    .sem_btn_sec p {
        font-size: 1.5rem;
    }
    .attention h3 {
        font-size: 1.5rem;
    }
    .sem-grid-sec{
        grid-template-columns: 1fr;
		gap: 40px;
		padding: 0 10%;
    }
    .sem-img-a,.sem-img-b,.sem-img-c{
        height: 500px;
    }
    .stt_waku {
        padding: 7px 20px;
        font-size: 1.1rem;
    }
    .sem_ttl_img img {
        width: 230px;
    }
	.sem_cont_sec.sem_2 .sem-grid-sec .order-lg-1 {
		order: 2!important;
	}
	.sem_cont_sec.sem_2 .sem-grid-sec .order-lg-2 {
		order: 1!important;
	}
	.event_info dt {
		  min-width: 70px;
	}
	.sem_cont_sec.sem_3 .sem-grid-sec {
		margin-bottom: 0;
	}
	.sem_btn_sec p {
		width: 100%;
	}
}
@media screen and (max-width: 768px) {
    .attention h3 {
        font-size: 1.3rem;
    }
	.seminar .sem_ttl_sec .boot {
		padding-top: 30px;
	}
}
@media screen and (max-width: 600px) {
	.sem_ttl_sec .boot_inner .d-flex .sem_ttl_img {
		width: 100%;
		text-align: center;
	}
	.sem_ttl_sec .boot_inner .d-flex .sem_ttl_text {
		width: 100%;
	}
	.sem_content{
		padding: 80px 0 10%;
	}
	.sem-grid-sec {
	    padding: 0 2%;
		margin-bottom: 80px;
	}
    .event_info dt {
        min-width: 80px;
    }
}
@media screen and (max-width: 430px) {
    .lim_img {
        height: 300px;
    }
    .lim_cont {
        height: 72vh;
    }
    .lim_inner {
        width: 90%;
    }
    .sem_ttl_sec .d-flex{
        display: inline-block !important;
    }
    .sem_ttl_sec {
        padding: 30px 10px;
        text-align: center;
    }
    .sem_ttl_img img {
        margin-right: 0;
        margin-bottom: 25px;
    }
	.koushi_block.flex {
		display: block;
	}
	.koushi_block.flex .mem-1,
	.koushi_block.flex .mem-2 {
		width: 100%;
		margin-bottom: 5px!important;
	}
	.koushi_block.flex .mem-2 {
		margin-top: 0;
	}
	
	.ko-02_padding{
		padding-right: 20px;
	}
    .attention h3 .small {
        font-size: 12px;
    }
	
}
@media screen and (max-width: 390px) {
    .lim_cont {
        height: 110vh;
    }
    .attention h3 {
        font-size: 1.1rem;
    }
    .button002 a {
        font-size: 1.3rem;
    }
}
@media screen and (max-width: 375px) {
    .grid-sec {
        height: 140vh;
    }
    .lim_cont {
        height: 100vh;
    }
    .attention {
        padding: 20px 0;
    }
    .attention h3 {
        font-size: 1.1rem;
    }
}
/* BAR */
.bar{
    background-color: #603813;
}
.bar_inner{
    background-color: #4c2d17;
}
.bar_head_sec img{
    width: 100%;
}
.bp_flex{
    display: flex;
    justify-content: space-between;
}
.bpf_inner {
    display: flex;
    align-items: center;
    width: 32%;
    justify-content: center;
    border: 1px solid #fff;
    padding: 40px 20px;
    border-radius: 10px;
}
.bpf_inner h4{
    font-size: 20px;
}
.bar_ttl,.bar_inner,.bar_point{
    padding: 3% 0;
}
.bar_inner h3 {
    line-height: 1.7;
    font-size: 1.5rem;
}
.inner_read{
    margin-bottom: 3%;
    padding-bottom: 3%;
    border-bottom: 3px solid #603813;
}
.tt_link{
	text-decoration: none;
	display: block;
}
@media screen and (max-width: 1100px) {
    .bar_inner h3 {
        font-size: 1.3rem;
    }
}
@media screen and (max-width: 1024px) {
    .bpf_inner h4{
        font-size: 18px;
    }
}
@media screen and (max-width: 768px) {
    .bar_inner h3 {
        font-size: 1rem;
    }
    .bpf_inner {
        padding: 35px 10px;
    }
    .bar_attention ul li{
        font-size: 12px;
    }
    .bpf_inner h4{
        font-size: 14px;
    }
}
@media screen and (max-width: 430px) {
    .bar_ttl, .bar_inner, .bar_point {
        padding: 9% 0;
    }
    .bp_flex {
        display: block;
    }
    .bpf_inner {
        width: 80%;
        padding: 25px 10px;
        margin: 0 auto 20px;
    }
    .sp_small{
        font-size: 80%;
    }
    .inner_read {
        margin-bottom: 7%;
        padding-bottom: 4%;
    }
}
@media screen and (max-width: 390px) {
    .bar_ttl, .bar_inner, .bar_point {
        padding: 7% 0;
    }
    .bar_ttl .sec_ttl {
        font-size: 1.5rem;
    }
    .bar_inner h3 {
        font-size: .9rem;
    }
    .inner_read {
        margin-bottom: 6%;
        padding-bottom: 2%;
    }
}
@media screen and (max-width: 375px) {
    .bar_ttl .sec_ttl {
        font-size: 1.4rem;
    }
}
/* NEW BAR SEC */
.section-container {
    background-color: #3e2a1a;
    color: white;
}

.section-title {
    text-align: center;
    font-size: 3rem;
    font-weight: 600;
    letter-spacing: 2px;
    margin: 35px auto 20px;
    padding-top: 13px;
    position: relative;
}

.section-title::before,
.section-title::after {
    content: "";
    display: block;
    width: 150px;
    height: 1px;
    background-color: white;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.section-title::before {
    top: 0;
}

.section-title::after {
    bottom: -10px;
}

.section-description {
    text-align: center;
    line-height: 1.8;
    margin: 30px auto;
    max-width: 80%;
}

.detail-btn {
    display: block;
    background-color: #e09141;
    color: white;
    border: none;
    border-radius: 30px;
    padding: 10px 30px;
    margin: 30px auto 40px;
    width: 250px;
    font-weight: 500;
    transition: background-color 0.3s;
}

.detail-btn:hover {
    background-color: #c67d2d;
    color: white;
}

.modal-content {
    background-color: #3e2a1a;
    color: white;
}

.modal-header {
    border-bottom: 1px solid #5a3c23;
}

.modal-footer {
    border-top: 1px solid #5a3c23;
}

.btn-close {
    background-color: white;
}
.bg_inner_sec{
    background-color: #603813;
    height: 100%;
}
.chuui {
    bottom: 6px;
    right: 3%;
    position: absolute;
	margin-bottom: 0;
	font-size: 12px;
}
@media (max-width: 767px) {
    .section-image {
        max-height: 300px;
        object-fit: cover;
    }
}

/* GOURMET */
.food-reed {
    font-weight: 500;
	font-size: clamp(1rem, 1.8vw, 1.3rem);
    line-height: 1.8;
	margin-bottom: 0;
	padding-bottom: 0;
}
.gourmet_lead {
	max-width: 800px;
	margin: 0 auto 40px;
}
.gourmet{
    padding: 120px 0 7%;
    background-image: url(img/background.jpg);
	overflow-x: hidden;
}
.gourmet_block .menubtn_sec {
	padding: 40px 6%;
	margin-bottom: 20px;
}
.gourmet_block .menubtn_sec .flex {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.gourmet_block .menubtn_sec .flex > li.shop_item {
	width: calc((100% - 24px) / 3);
    background-color: #f6f6e9;
    padding: 24px 5px 20px;
    border-radius: 5px;
    border: 1px solid #333333;
}
.gourmet_block .menubtn_sec.mars_booth .flex {
	display: flex;
	justify-content: center;
}
.gourmet_block .menubtn_sec.mars_booth .flex .button001 a,
.gourmet_block .menubtn_sec.mars_booth .flex .button002 a {
        width: auto;
        white-space: nowrap;
        min-width: 300px;
	    padding: 14px 25px;
    } 

.gourmet_block ul li h4{
    font-size: 20px;
}
.taru {
    width: 120px;
    left: 17%;
    bottom: 4%;
}
.master {
    width: 170px;
    right: 16%;
    bottom: 4%;
}
.f_logo{
    width: 80%;
}

@media screen and (max-width: 1720px) {
    .taru {
        left: 12%;
    }
    .master {
        right: 11%;
    }
}
@media screen and (max-width: 1366px) {
    .taru {
        left: 4%;
        width: 100px;
    }
    .master {
        right: 4%;
        width: 130px;
    }
}
@media screen and (max-width: 1100px) {
	.gourmet{
		padding: 80px 0 7%;
	}
    .gourmet_block ul li {
        font-size: 1.2rem;
    }
    .taru {
        left: 2%;
        width: 80px;
        bottom: 1%;
    }
    .master {
        right: 1%;
        width: 120px;
        bottom: 1%;
    }
    .gourmet_block ul li h4{
        font-size: 17px;
    }
	.gourmet_block .menubtn_sec .flex > li.shop_item {
		width: calc((100% - 24px) / 2);
	}
}
@media screen and (max-width: 1024px) {
    .f_logo{
        width: 85%;
    }
    .tenpo ul li{
        width: 48%;
    }
}
@media screen and (max-width: 768px) {
    .gourmet_block ul li {
        font-size: 1.1rem;
    }
    .taru {
        left: 2%;
        width: 60px;
    }
    .master {
        right: 2%;
        width: 80px;
    }
    .food-reed {
        font-size: 1.1rem;
		margin-bottom: 20px;
    }
	.f_logo{
        width: 35%;
    }
    .gourmet_block .menubtn_sec {
        padding: 40px 3px;
    }
	.gourmet_block .menubtn_sec.mars_booth .flex .button001 a, .gourmet_block .menubtn_sec.mars_booth .flex .button002 a {
		margin-top: 0;
	}
}
@media screen and (max-width: 430px) {
    .sem_cont_sec {
        padding: 0 5%;
    }
    .sem-img-a, .sem-img-b, .sem-img-c {
        height: 330px;
    }
    .sem_con_inner {
        width: 100%;
    }
    .sem_price h3 {
        font-size: 1.1rem;
    }
    .ko_ph img {
        width: 110px;
    }
    .gourmet {
        padding: 20% 0 30%;
    }
    .sp-g-i {
/*
        position: absolute;
        width: 30%;
        bottom: 1%;
        right: 20%;
*/
        position: static;
        width: 40%;
        margin: -70px 160px -70px;
        display: block;
    }
    .f_logo {
        width: 30%;
        margin-top: 20px;
    }
    .tenpo ul li{
        width: 98%;
        padding: 3% 2% 2% 2%;
    }
    .txt_adj a{
	    font-size: 1rem !important;
    }
	.gourmet_block .menubtn_sec  {
		margin-bottom: 10px;
	}
	.gourmet_block .menubtn_sec .flex {
		gap: 10px;
	}
    .gourmet_block .menubtn_sec .flex > li.shop_item {
        width: calc((100% - 10px) / 2);
    }
}
/* STAGE */
.stage{
    background-color: #f6f6e9;
    padding: 100px 0 5%;
}
.yel{
    color: #e2e2b0;
}
.kids {
    width: 300px;
    left: 6%;
    top: 8%;
}
.tent {
    width: 370px;
    right: 6%;
    bottom: 5%;
}
.shoukai{
    font-size: 90%;
    text-align: justify;
}
.acount{
	margin-top: 10px;
}
.acount a{
    font-size: 16px;
	font-weight: 500;
    text-decoration: none;
	color: #1e5277;
	letter-spacing: 0.02em;
}
.instaicon img{
    width: 15px;
    margin-right: 2px;
}
.modal-content{
    width: 800px !important;
}
.modal-dialog{
    max-width: 800px !important;
}
.modal-content .shoukai{
    font-size: 18px;
}
.modal-content .acount a{
    font-size: 18px;
}

.artist_list .artist_list-name  h4 {
	line-height: 1.5;
}
.artist_list .artist_list-name .name_tl {
	font-size: 16px;
	color: #666666;
}
.artist_list .artist_list-name .small {
	font-size: 18px;
}
.artist_list .stage_jazz .content-block {
	border-top: 6px double #114876;
	border-bottom: 6px double #114876;
	padding: 20px 0 25px;
	margin-top: 20px;
}
.artist_list .stage_jazz .jazz_tl {
	font-size: 32px;
	margin-bottom: 12px;
}
.stage_jazz .artist_inner .btn_block {
	display: flex;
	justify-content: center;
	gap: 10px;
}
.stage_jazz .artist_inner .btn {
	font-size: 18px;
	padding: 10px 25px;
}
.stage_jazz .modal-content .artist_list-name .name_tl {
	color: #ffffff;
}


@media screen and (max-width: 1366px) {
    .kids {
        width: 250px;
        left: 4%;
        top: 4%;
    }
    .tent {
        width: 300px;
        right: 4%;
        bottom: 4%;
    }
    .modal-content .artist_inner{
        padding: 1.5rem !important;
    }
}
@media screen and (max-width: 1100px) {
    .kids {
        width: 200px;
        left: 2%;
        top: 3%;
    }
    .tent {
        width: 250px;
        right: 3%;
        bottom: 3%;
    }
    .artist_list-name h4{
        font-size: 1.3rem;
    }
    .acount a {
        font-size: 15px;
    }
	.artist_list .stage_jazz .jazz_tl {
		font-size: 28px;
	}
	.artist_list .row .col-md-4 {
		width: 45%;
	}
}
@media screen and (max-width: 768px) {
    .kids {
        width: 150px;
        top: 5%;
    }
    .artist_inner {
        padding: 1rem 0rem !important;
    }
    .tent {
        width: 170px;
        bottom: 2%;
    }
    .artist_list-name h4 {
        font-size: 1.1rem;
    }
	.artist_list .row .col-md-4 {
		width: 48%;
	}
	.artist_list .stage_jazz .jazz_tl {
		font-size: 22px;
	}
}
@media screen and (max-width: 430px) {
    .sp-s-i {
        width: 30%;
        position: absolute;
        right: 6px;
        bottom: -20px;
    }
    .acount a {
        font-size: 14px;
    }
    .acount{
        line-height: 1.5;
    }
    .artist_list-name {
        text-align: center;
    }
    
    .gourmet_block ul li h4 {
        display: inline-grid;
    }
    
	.artist_list .artist_list-name .small {
		font-size: 13px;
	}
}
/* PLACE */
.place{
    padding: 5% 0;
    background-image: url(img/background.jpg);
}
.l_btn_sec p{
    display: inline-block;
    width: 55%;
    background-color: #b0b0b0;
    padding: 5px 20px;
    font-size: 2rem;
    color: white;
    text-align: center;
    border-radius: 50px;
}
.p_img{
    max-height: 250px;
}
.rinji{
	text-align: center;
	margin-top: 10px;
}
.rinji a {
	color: #000;
}

/* YOYAKU */
.yoyaku{
    padding: 65px 0 70px;
}
.ji_ttl{
    padding: 0 20%;
}

.yoyaku_block {
	max-width: 740px;
	margin: 0 auto;
}
.yoyaku_block .button003 a,
.yoyaku_block .button004 a {
	margin-top: 0;
	width: 100%;
	padding: 14px 30px 14px 25px;
	font-size: clamp(1.3rem, 2.2vw, 1.6rem);
	font-weight: 500;
}
.yoyaku_block .button003 a {
    background: #b02020;
}
.yoyaku_block .button003 a:hover {
	background: #a99065;
}
.yoyaku_notes {
    font-size: 16px;
    color: #b02020;
    text-align: center;
    margin: 0 auto 20px;
}
.yoyaku_notes span {
    display: inline-block;
    background: rgba(176, 32, 32, 0.2);
    backdrop-filter: blur(5px);
    padding: 3px 10px;
    font-weight: 600;
    line-height: 1.6;
    border-radius: 4px;
}


@media screen and (max-width: 768px) {
	.yoyaku {
		padding: 50px 0 55px;
	}
    .l_btn_sec p {
        font-size: 1.5rem;
    }
    .ji_ttl {
        padding: 0 20%;
    }
	.yoyaku_block .row .col-6 {
		width: 100%;
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 430px) {
    .l_btn_sec p {
        width: 90%;
    }
    .place {
        padding: 10% 0 7%;
    }
    .ji_ttl {
        padding: 0 5%;
    }
    .yoyaku {
        padding: 10% 0 10%;
    }
}
/* FOOTER */
footer{
    background-color: #2e3b58;
    padding: 4% 0;
}
.footlogo{
    padding-right: 15%;
}
footer p{
    font-size: 14px;
}
@media screen and (max-width: 992px) {
	footer .boot .footlogo {
		margin-bottom: 25px;
	}
}
@media screen and (max-width: 768px) {
    .footlogo{
        padding: 0 20%;
        margin-bottom: 30px;
    }
}@media screen and (max-width: 430px) {
    .footlogo {
        padding: 5% 5% 0;
        margin-bottom: 25px;
    }
    footer p {
        font-size: 10px;
        text-align: center;
    }
    footer {
        padding: 4% 0 10%;
    }
}

/* MENU */
.menu_cont{
    padding: 3% 0 5%;
    background-color: #89796c;
}
.mib{
    background-color: rgba(54,40,30,.55);
}
.menu_ttl h2{
    font-size: 7rem;
    margin-bottom: 5%;
}
@media screen and (max-width: 1366px) {
    .menu_ttl h2{
        font-size: 5rem;
        margin-bottom: 4%;
    }
}
@media screen and (max-width: 768px) {
    .menu_ttl h2{
        font-size: 4rem;
        margin-bottom: 3%;
    }
}
@media screen and (max-width: 768px) {
    .menu_ttl h2{
        font-size: 3.5rem;
    }
}











.toggleBtn {
    width: 39px;
    height: 39px
}

.toggleBtn span {
    width: 100%;
    height: 100%;
    display: block;
    position: relative
}

.toggleBtn span::before,.toggleBtn span::after {
    content: '';
    margin: auto;
    width: 100%;
    height: 4px;
    border-radius: 2px;
    background: #333;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transition: all .4s;
    transition: all .4s
}

@media (max-width: 480px) {
    .toggleBtn span::before,.toggleBtn span::after {
        height:3px
    }
}

.toggleBtn span::after {
    transform: rotate(90deg)
}

.toggleBtn.active span::before,.toggleBtn.active span::after {
    transform: rotate(180deg)
}

.targetBtn .toggleBtn.toggleBtn--heading span::before,
.targetBtn .toggleBtn.toggleBtn--heading span::after {
  width: 25px;
  height: 4px;
  top: 15px;
}
.targetBtn.active .toggleBtn.toggleBtn--heading span::before {
  content: none;
}
.targetBtn.active .toggleBtn.toggleBtn--heading span::after {
  transform: rotate(180deg);
}

.accordionBox {
    padding: min(40px,4.167vw) min(20px,2.0835vw);
    width: 100%
}

@media (max-width: 1024px) {
    .accordionBox {
        padding:20px
    }
}

@media (max-width: 480px) {
    .accordionBox {
        padding:20px 5px
    }
}

.accordionBox .targetBtn {
    position: relative
}

.accordionBox .targetBtn .toggleBtn {
    position: absolute;
    top: 0;
    right: 0
}

.accordionBox .targetBtn .toggleBtn span::before,.accordionBox .targetBtn .toggleBtn span::after {
    background: #a08b5c
}

.accordionBox .targetBtn.active .toggleBtn span::before,.accordionBox .targetBtn.active .toggleBtn span::after {
    transform: rotate(180deg)
}

@media (max-width: 1024px) {
    .accordionBox .targetBtn .toggleBtn {
        width:25px;
        height: 25px;
        top: 7px
    }
}

@media (max-width: 480px) {
    .accordionBox .targetBtn .toggleBtn {
        width:20px;
        height: 20px;
        top: 0
    }
}

.accordionBox .acdInner {
    display: none
}

.moreBtn {
    margin: auto;
    width: 70%;
    min-width: 10em;
    max-width: 320px;
    height: 80px;
    line-height: 80px
}

#tourFaqArea {
    padding: min(120px,12.4995vw) 0;
    background: #ececec;
}

#tourFaqArea section {
    background: #fff;
    box-sizing: border-box
}

#tourFaqArea section h3 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 700;
    font-size: clamp(20px, 3.2vw, 28px);
    line-height: 1.2;
    letter-spacing: 0.1em;
    text-align: center;
    margin-bottom: 25px
}

#tourFaqArea section h3::after {
    content: '';
    margin: 25px auto 0;
    width: 40px;
    height: 1px;
    background: #333;
    display: block
}

@media (max-width: 480px) {
    #tourFaqArea section h3::after {
        margin:10px auto 0
    }
}

#tourFaqArea section p {
    line-height: 2;
    letter-spacing: 0.1rem
}

@media (max-width: 480px) {
    #tourFaqArea section {
        padding:40px 0
    }

    #tourFaqArea section p {
        line-height: 1.8
    }
}

#tourFaqArea .aboutTour {
    padding: min(80px,8.334vw) 0
}

#tourFaqArea .aboutTour p {
    text-align: center
}

#tourFaqArea .aboutTour a.reserveBtn {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 560px;
    width: 80%;
    height: 80px;
    background: #006c3b;
    color: #fff;
    margin: 25px auto
}

#tourFaqArea .aboutTour a.reserveBtn:hover {
    opacity: 0.5
}

@media (min-width: calc(1024px + 1px)) {
    #tourFaqArea .aboutTour a[href*="tel:"] {
        pointer-events:none;
        cursor: default;
        text-decoration: none
    }

    #tourFaqArea .aboutTour a[href*="tel:"]:hover {
        color: #333
    }
}

@media (max-width: 480px) {
    #tourFaqArea .aboutTour p {
        text-align:left;
        padding: 0 5%
    }

    #tourFaqArea .aboutTour a {
        height: 60px
    }
}

#tourFaqArea .faqWrap {
    padding: 40px 0;
    background-color: #fff;
}

#tourFaqArea .faqWrap h3 {
    margin: 0 auto 25px;
    max-width: 880px;
    width: 90%;
    position: relative
}

#tourFaqArea .faqWrap h3::after {
    width: 100%;
    -webkit-transition: all .4s;
    transition: all .4s
}

#tourFaqArea .faqWrap h3 .toggleBtn {
    position: absolute;
    top: 0;
    right: 0
}

#tourFaqArea .faqWrap h3 .toggleBtn span::before,#tourFaqArea .faqWrap h3 .toggleBtn span::after {
    background: #333
}

#tourFaqArea .faqWrap h3.active::after {
    width: 40px
}

#tourFaqArea .faqWrap h3.active .toggleBtn span::before,#tourFaqArea .faqWrap h3.active .toggleBtn span::after {
    transform: rotate(180deg)
}

@media (max-width: 1024px) {
    #tourFaqArea .faqWrap h3 .toggleBtn {
        width:25px;
        height: 25px;
        top: 7px
    }
}

@media (max-width: 480px) {
    #tourFaqArea .faqWrap h3 .toggleBtn {
        width:20px;
        height: 20px;
        top: 0
    }
}

#tourFaqArea .faqWrap .accordionBox {
    margin: 0 auto 40px;
    padding: 40px 0 0;
    max-width: 880px;
    width: 90%;
    border-bottom: solid 1px #333;
    box-sizing: border-box;
    display: none
}

#tourFaqArea .faqWrap .accordionBox .targetBtn {
  border-top: solid 1px #333;
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
  font-size: clamp(20px, 3.2vw, 18px);
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding: 35px 6.944vw 25px 2.777vw;
  cursor: pointer;
  transition: opacity .3s;
}
h2.targetBtn {
  margin-bottom: 30px;
  cursor: pointer;
  transition: opacity .3s;
}
#tourFaqArea .faqWrap .accordionBox .targetBtn:hover,
h2.targetBtn:hover {
  opacity: .5;
}

#tourFaqArea .faqWrap .accordionBox .targetBtn .toggleBtn {
    top: 50%;
    right: 1.388vw;
    transform: translateY(-50%)
}

#tourFaqArea .faqWrap .accordionBox .targetBtn .toggleBtn span::before,
#tourFaqArea .faqWrap .accordionBox .targetBtn .toggleBtn span::after {
    background: #333
}

#tourFaqArea .faqWrap .accordionBox .acdInner {
    padding: 0 6.944vw 18px 2.777vw;
    line-height: 2;
    letter-spacing: 0.1rem
}

@media (max-width: 480px) {
    #tourFaqArea .faqWrap .accordionBox {
        padding:10px 0 0;
        margin: 0 auto 10px
    }

    #tourFaqArea .faqWrap .accordionBox .targetBtn {
        padding: 25px 6.944vw 25px 2.777vw
    }

    #tourFaqArea .faqWrap .accordionBox .acdInner {
        padding: 0 6.944vw 18px 2.777vw;
        line-height: 1.8
    }
}
