@charset "UTF-8";

/* ================================================================================
common
================================================================================ */
html
{
	font-size: 10px;
	overflow-x: hidden;
}
html.lock{	overflow-y: hidden;	}
html.size2{	font-size: 12px;	}
html.size3{	font-size: 14px;	}

body
{
	min-width: 1180px;	max-width: 100vw;
	min-height: 100vh;

	font-family: "ヒラギノ角ゴシック", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	color: #333;
	font-size: 16px;
	line-height: 1.5;

	overflow-x: hidden;
}

img{	backface-visibility: hidden;	}
img, svg
{
	max-width: 100%;
	vertical-align: bottom;
}
img.object-fit, svg.object-fit
{
	object-fit: cover;
	font-family: "object-fit: cover;";
}

a
{
	color: #000;
	transition: .3s linear;
}
a.tel_link{	pointer-events: none;	}

.overlay
{
	z-index: 1000;
	position: fixed;

	display: none;
	width: 100%;	height: 100%;

	background-color: #000;
	opacity: .5;
}

main
{
	display: block;
	font-family: 'Kosugi Maru', sans-serif;
}

table
{
	border-collapse: collapse;
	border-spacing: 0;
}
*{	box-sizing: border-box;	}

.l_inner
{
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
.inner
{
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}


@media screen and (min-width: 768px){	.sp_block{	display: none !important;	}	}
@media screen and (max-width: 767px)
{

html{	font-size: 2.7vw;	}
html.size2{	font-size: 3.4vw;	}
html.size3{	font-size: 3.8vw;	}
body
{
	min-width: 0;
	font-size: 14px;
}

.l_inner{	max-width: calc(686 / 750 * 100vw);	}
.inner{	max-width: calc(686 / 750 * 100vw);	}

.sp_none{	display: none !important;	}

}






/* ================================================================================
header
================================================================================ */
header .header_content
{
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 106px;
}
header .header_content .logo_wrap img{	width: 200px;	}
header .header_content .fz_btn
{
	display: flex;
	align-items: center;
}
header .header_content .fz_btn p
{
	color: #5f4c3f;
	font-weight: bold;
}
header .header_content .fz_btn ul
{
	display: flex;
	margin-left: 12px;
}
header .header_content .fz_btn ul li
{
	text-align: center;
	width: 34px;
	height: 34px;
	line-height: 34px;
	color: #fff;
	background-color: #5f4c3f;
	border-radius: 5px;
	font-weight: bold;
	cursor: pointer;
}
header .header_content .fz_btn ul li + li{	margin-left: 8px;	}
header .header_content .fz_btn ul li.on{	background-color: #f47c29;	}

.dial
{
	background-image: linear-gradient(to right, #ffe3ba, #ffe3ba 50%, #fff9ba 50%, #fff9ba);
	padding-bottom: 18px;
}
.dial ul
{
	display: flex;
	justify-content: space-between;
}



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

header .header_content{height: calc(110 / 750 * 100vw);	}
/*header .header_content .logo_wrap{	padding-left: calc(90 / 750 * 100vw);	}*/
header .header_content .logo_wrap img{	width: calc(227 / 750 * 100vw);	}
header .header_content .fz_btn p{	font-size: calc(28 / 750 * 100vw);	}
header .header_content .fz_btn ul{	margin-left: calc(10 / 750 * 100vw);	}
header .header_content .fz_btn ul li
{
width: calc(70 / 750 * 100vw);	height: calc(70 / 750 * 100vw);
border-radius: calc(5 / 750 * 100vw);
font-size: calc(28 / 750 * 100vw);
line-height: calc(70 / 750 * 100vw);
}

header .header_content .fz_btn ul li + li{margin-left: calc(10 / 750 * 100vw);	}

.dial
{
	background-image: none;
	padding-bottom: 0;
}
.dial ul.inner{	max-width: none;	}

}



/* ================================================================================
hm_menu
================================================================================ */
.hm_menu{	display: none;	}


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


.hm_wrap
{
position: absolute;
top: 0;	left: 0;

display: flex;	justify-content: center;	align-items: center;	flex-direction: column;
width: calc(105 / 750 * 100vw);	height: calc(110 / 750 * 100vw);

padding-top: calc(12 / 750 * 100vw);

border-right: 1px solid #333;
}

.hm_wrap .hm
{
	position: relative;
	width: calc(38 / 750 * 100vw);	height: calc(26 / 750 * 100vw);
}
.hm_wrap .hm span
{
	position: absolute;
	display: block;
	width: 100%;	height: calc(4 / 750 * 100vw);
	background-color: #333;
	transition: .3s;
}
.hm_wrap .hm span:nth-child(1){	top: 0;	left: 0;	}
.hm_wrap .hm span:nth-child(2)
{
	top: 50%;	left: 0;
	transform: translateY(-50%);
}
.hm_wrap .hm span:nth-child(3){	bottom: 0;	left: 0;	}
.hm_wrap p
{
	margin-top: calc(8 / 750 * 100vw);
	font-size: calc(18 / 750 * 100vw);
	line-height: 1;
}
.hm_wrap.on .hm span:nth-child(1)
{
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}
.hm_wrap.on .hm span:nth-child(2){	opacity: 0;	}
.hm_wrap.on .hm span:nth-child(3)
{
	bottom: 50%;
	transform: translateY(50%) rotate(-45deg);
}
.hm_menu
{
	z-index: 10;
	position: absolute;
	top: calc(110 / 750 * 100vw);

	width: 100%;
	border-top: 1px solid #333;
}

.hm_menu a{	color: #fff;	text-decoration: none;	}
.hm_menu ul{	background-color: #ec7e00;	font-size: 1.5rem;	}
.hm_menu ul.anc_nav{	padding: calc(60 / 750 * 100vw) calc(48 / 750 * 100vw) calc(15 / 750 * 100vw);	}
.hm_menu ul.anc_nav li a{	display: block;	padding-bottom: calc(20 / 750 * 100vw);	}
.hm_menu ul.anc_nav li + li{	border-top: 1px dashed #fff;	padding-top: calc(20 / 750 * 100vw);	}
.hm_menu ul.page_nav{	padding: 0 calc(48 / 750 * 100vw);	font-weight: bold;	}
.hm_menu ul.page_nav li{	padding-top: calc(30 / 750 * 100vw);	border-top: 1px solid #fff;	}
.hm_menu ul.page_nav li a{	display: block;	padding-bottom: calc(30 / 750 * 100vw);	}
.hm_menu .btn_area{	line-height: 1;	}


}

/* ================================================================================
mv_forum
================================================================================ */
.mv_forum
{
	background-color: #fbf1da;
	text-align: center;
}


/* ================================================================================
forum_content_area
================================================================================ */
.forum_content_area
{
	padding-top: 40px;
	padding-bottom: 52px;
	background-color: #fbf1da;
}



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

.forum_content_area
{
	padding-top: calc(56 / 750 * 100vw);
	padding-bottom: 8vw;
}

}


/* ================================================================================
digest
================================================================================ */
#digest{	margin-bottom: 50px;	}
#digest h2
{
	margin-bottom: 25px;
	text-align: center;
}

#digest ul
{
	display: flex;	flex-wrap: wrap;	justify-content: center;
	gap: 60px;
	margin: 0 auto;
}
#digest li{	width: 400px;	}
#digest li picture img{	margin-bottom: 30px;	}
#digest li iframe
{
	display: block;
	width: 100%;	height: 240px;
	margin: 0 0 10px;
}

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

#digest{	margin-bottom: 10vw;	}
#digest h2{	margin-bottom: 6vw;	}
#digest h2 img{	width: calc(539 / 750 * 100vw); }

#digest ul{	gap: 5vw;	}
#digest li{	width: 90vw;	}
#digest li iframe
{
	height: 50vw;
	margin: 0 0 3vw;
}
#digest li p{	font-size: 1.2rem;	}

}






/* ================================================================================
application
================================================================================ */
#application{	margin-bottom: 50px;	}
#application h2
{
	margin-bottom: 25px;
	text-align: center;
}
#application .btn
{
	margin: 0 0 10px;
	text-align: center;
}

#application .alert
{
	color: rgba(217, 0, 0, 1.0);
	text-align: center;
}

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

#application{	margin-bottom: 10vw;	}
#application h2{	margin-bottom: 6vw;	}
#application h2 img{	width: calc(539 / 750 * 100vw); }
#application .btn img{	width: 75vw;	}

#application .alert{	font-size: 1.2rem;	}

}



/* ================================================================================
online
================================================================================ */
#online
{
	display: none;
	margin-bottom: 80px;
}
#online h2
{
	margin-bottom: 25px;
	text-align: center;
}
#online p
{
	margin-bottom: 25px;
	color: #765846;
	font-size: 1.8rem;
	text-align: center;
}
#online .movie_wrap{	text-align: center;	}

#online .commingSoon
{
	width: 560px;	height: 325px;
	margin: 0 auto;

	background-color: rgba(210,210,210,1);
}

/* #online iframe{	display: none;	} */


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

#online{	margin-bottom: 10vw;	}
#online h2{	margin-bottom: 6vw;	}
#online h2 img{	width: calc(539 / 750 * 100vw); }
#online p{	font-size: 1.4rem;	margin-bottom: 6vw;	}
#online .movie_wrap iframe{	width: calc(648 / 750 * 100vw);	height: calc(183 / 375 * 100vw);	}

}



/* ================================================================================
meeting
================================================================================ */
#meeting
{
	margin-bottom: 80px;
}
#meeting h2
{
	margin-bottom: 30px;
	text-align: center;
}

#meeting .lead h3
{
	margin-bottom: 15px;
	text-align: center;
}
#meeting .lead .text
{
	margin-bottom: 20px;
	color: #765846;
	font-size: 1.8rem;
	text-align: center;
}
#meeting .lead .place
{
	display: flex;	justify-content: center;

	margin-bottom: 25px;

	color: #765846;
	font-size: 1.6rem;
}
#meeting .lead .place span
{
	display: block;
	padding: 4px 10px;
	background-color: #fff;
}


#meeting .flyer{	margin: 0 auto 80px;	}
#meeting .flyer h3
{
	margin: 0 0 30px;

	color: #f47c29;
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
}
#meeting .flyer .thumbs
{
	display: flex;	flex-wrap: wrap;	justify-content: space-between;
	width: 600px;
	margin: 0 auto;

	transition: 0.3s ease-in-out 0s;
	transition-property: opacity;
}
#meeting .flyer .thumbs picture,
#meeting .flyer .thumbs a
{
	display: block;
	width: 270px;
}
#meeting .flyer .thumbs picture img
{
	width: 100%;	height: 100%;
	object-fit: contain;
}

#meeting .flyer .thumbs a:hover{	opacity: 0.7;	}



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

#meeting{	margin-bottom: 0;	}
#meeting h2{	margin-bottom: 6vw;	}
#meeting h2 img{	width: calc(539 / 750 * 100vw); }
#meeting .lead h3{	margin-bottom: 3vw;	}
#meeting .lead h3 img{	width: calc(488 / 750 * 100vw);	}

#meeting .lead .text
{
	margin-bottom: 3vw;
	font-size: 1.35rem;
}
#meeting .lead .place
{
	margin-bottom: 5vw;
	font-size: 1.2rem;
}
#meeting .lead .place span
{
	min-width: auto;
	padding: 1vw 2vw;
}

#meeting .flyer{	margin: 0 auto 10vw;	}
#meeting .flyer h3
{
	margin: 0 0 5vw;
	font-size: 1.5rem;
}
#meeting .flyer .thumbs
{
	width: 85%;
}
#meeting .flyer .thumbs picture,
#meeting .flyer .thumbs a
{
	width: 40vw;
}



}


/* ========================================
member
======================================== */
#member
{
	margin: 0 auto 55px;
	padding: 0 72px 56px 60px;

	background-color: #fff;
	border: 2px solid #f47c29;
	border-radius: 20px;
}
#member > h3
{
	position: relative;
	padding-top: 45px;
	margin-bottom: 30px;
	text-align: center;
}
#member > h3::before
{
	position: absolute;
	top: 0;	left: 50%;

	content: "";
	display: block;
	width: 2px;	height: 25px;

	background-color: #f47c29;
	transform: translateX(-50%);
}
#member .notes
{
	padding: 10px;
	background-color: #e7e7e7;

	color: #333;
	font-size: 1.6rem;
	text-align: center;
}

#member ul
{
	display: flex;	flex-wrap: wrap;	justify-content: space-between;
	gap: 35px 30px;

	margin-bottom: 40px;
}
#member ul li
{
	width: calc((100% - 30px * 2)/3);
	padding: 20px 40px;
	position: relative;
	z-index: 1;
	background-color: #fff;
}
#member ul li::before
{
	z-index: -1;
	position: absolute;
	top: 0;	left: 0;

	content: "";
	display: block;
	width: 100%;	height: 100%;

	background-color: #fff;
	border: 1px solid #f47c29;
	border-radius: 10px;
}
#member ul li::after
{
	z-index: -2;
	position: absolute;
	right: -12px;	bottom: -12px;

	content: "";
	display: block;
	width: 100%;	height: 100%;

	background-image: url(../img/bg_member.png);
	border-radius: 10px;
}

#member ul li .img_wrap
{
	margin-bottom: 5px;
	border-radius: 10px;
}

#member ul li h4
{
	color: #765846;
	font-size: 1.9rem;
	text-align: center;
}
#member ul li h4 span{	font-size: 0.75em;	}

#member ul li p
{
	min-height: 6.5rem;
	margin-bottom: 5px;

	color: #765846;
	font-size: 1.4rem;
	text-align: center;
	letter-spacing: -0.1em;
}

#member ul li .btn_wrap span
{
	position: relative;

	display: flex;	justify-content: center;	align-items: center;
	padding: 7px 0;

	background-color: #f5b666;
	border-radius: 5px;

	color: #765846;
	font-size: 1.6rem;
	line-height: 1;

	transition: .3s;
	cursor: pointer;
}
#member ul li .btn_wrap span:hover{	background-color: #ffc376;	}
#member ul li .btn_wrap span::after
{
	content: "＋";

	position: absolute;
	top: 50%;	right: 3%;

	display: block;
	transform: translateY(-50%);
}



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

#member
{
	margin: 0 auto 7vw;
	padding: 5vw calc(30 / 750 * 100vw) calc(28 / 750 * 100vw) calc(16 / 750 * 100vw);
	border: 0.3vw solid #f47c29;
	border-radius: 3vw;
}
#member > h3
{
	padding-top: 0;
	margin-bottom: 5vw;
}
#member > h3 img{	height: calc(42 / 750 * 100vw);	}
#member > h3::before{	display: none;	}
#member .notes
{
	padding: 1vw;
	font-size: 1rem;
}

#member ul
{
	gap: 4vw 3vw;
	margin-bottom: 5vw;
}
#member ul li
{
	width: calc((100% - 3vw)/2);
	padding: 2vw;
}
#member ul li::before
{
	border: 0.2vw solid #f47c29;
	border-radius: 2vw;
}
#member ul li::after
{
	right: -1.5vw;	bottom: -1.5vw;
	border-radius: 2vw;
}

#member ul li .img_wrap
{
	margin-bottom: 2vw;
	border-radius: 2vw;
}
#member ul li h4{	font-size: 1.3rem;	}

#member ul li p
{
	min-height: 3.8rem;
	margin-bottom: 2vw;
	font-size: 1.05rem;
}
#member ul li:nth-child(6) p{	font-size: 0.80rem;	}

#member ul li .btn_wrap span
{
	padding: 2vw 0;
	border-radius: 1vw;
	font-size: 1.1rem;
}
#member ul li .btn_wrap span::after{	right: 5%;	}



}



/* ========================================
menber_modal
======================================== */
#meeting .menber_modal
{
	z-index: 1001;
	position: fixed;
	top: 50%;	left: 50%;

	display: none;
	color: #333;
	transform: translate(-50%, -50%);
}
#meeting .menber_modal::before
{
	z-index: -1;
	position: absolute;
	bottom: -25px;	right: -25px;

	content: "";
	display: block;
	width: 100%;	height: 100%;

	background-color: #333;
	background-image: url(../img/bg_member.png);
	border-radius: 10px;
}
#meeting .menber_modal .modal_content
{
	width: 924px;
	max-height: calc(100vh - 120px);

	padding: 45px 0 40px;

	background-color: #fff;
	border-top: 11px solid #f47c29;
	border-radius: 10px;

	overflow-y: auto;
}

#meeting .menber_modal .upper
{
	display: flex;	align-items: flex-end;
	width: 755px;
	margin-left: auto;	margin-right: auto;
}

#meeting .menber_modal .img_wrap{	margin-right: 40px;	}
#meeting .menber_modal .img_wrap img
{
	width: 302px;
	border-radius: 15px;
}
#meeting .menber_modal .text{	padding-bottom: 22px;	}
#meeting .menber_modal .text p.furi{	font-size: 1.4rem;	}
#meeting .menber_modal .text h4
{
	color: #614c3f;
	font-size: 2.8rem;
	line-height: 1.4;
}
#meeting .menber_modal .text h4 span{	font-size: 0.7em;	}
#meeting .menber_modal .text .director
{
	margin-top: 5px;
	font-size: 1.4rem;
}
#meeting .menber_modal .description
{
	position: relative;
	width: 770px;
	margin-top: 40px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 50px;
	font-size: 1.6rem;
}
#meeting .menber_modal .description::before
{
	position: absolute;
	top: 0;	left: 0;

	content: "";
	display: block;
	width: 100%;	height: 11px;
	background-image: url(../img/bg_member.png);
}
#meeting .menber_modal .btn_close
{
	margin-top: 72px;
	text-align: center;
}
#meeting .menber_modal .btn_close span
{
	position: relative;
	display: inline-block;
	padding: 3px 10px;

	border: 1px solid #f3a643;

	color: #f3a643;
	font-size: 1.6rem;
	cursor: pointer;
}
#meeting .menber_modal .btn_close span::before
{
	content: "✕";
	display: inline-block;
	padding-right: 10px;
}



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

#meeting .menber_modal::before
{
	bottom: calc(16 / 750 * -100vw);
	right: calc(16 / 750 * -100vw);
	border-radius: calc(10 / 750 * 100vw);
}
#meeting .menber_modal .modal_content
{
	width: calc(686 / 750 * 100vw);

	padding: calc(50 / 750 * 100vw) 0 calc(36 / 750 * 100vw);

	border-top: 3vw solid #f47c29;
	border-radius: 3vw;
}

#meeting .menber_modal .upper
{
	display: flex;	flex-wrap: wrap;	justify-content: center;
	width: auto;
}

#meeting .menber_modal .img_wrap
{
	width: 100%;
	margin: 0 auto 4vw;
	text-align: center;
}
#meeting .menber_modal .img_wrap img
{
	width: calc(366 / 750 * 100vw);
	border-radius: 3vw;
}
#meeting .menber_modal .text{	padding: 0;	}
#meeting .menber_modal .text p.furi{	font-size: 1rem;	}
#meeting .menber_modal .text h4{	font-size: 2rem;	}
#meeting .menber_modal .text .director
{
	margin-top: 0;
	font-size: 1.2rem;
}

#meeting .menber_modal .description
{
	width: 80vw;
	margin-top: 4vw;
	padding-top: 5vw;
	font-size: 1.2rem;
}
#meeting .menber_modal .description::before{	height: 1.5vw;	}

#meeting .menber_modal .btn_close{	margin-top: 8vw;	}
#meeting .menber_modal .btn_close span
{
	padding: 1vw 2vw;
	border: 0.2vw solid #f3a643;
	font-size: 1.3rem;
}
#meeting .menber_modal .btn_close span::before{	padding-right: 2vw;	}

}



/* ========================================
date_box & place_box & program & promotion
======================================== */
#date_box,
#place_box,
#program,
#promotion
{
	position: relative;

	margin: 0 auto 40px;
	padding: 0 0 35px;

	background-color: #fff;
	border: 2px solid #f47c29;
	border-radius: 20px;
}
#date_box::before
{
	position: absolute;
	left: 86px;	top: -40px;

	content: url(../img/meeting_date_deco.png);
	display: block;
}

#date_box > h3,
#place_box > h3,
#program > h3
{
	position: relative;
	padding-top: 30px;
	margin-bottom: 25px;
	text-align: center;
}
#date_box > h3::before,
#place_box > h3::before,
#program > h3::before
{
	position: absolute;
	top: 0;	left: 50%;

	content: "";
	display: block;
	width: 2px;	height: 20px;

	background-color: #f47c29;
	transform: translateX(-50%);
}


#date_box .date_time
{
	margin-bottom: 15px;
	text-align: center;
}

#date_box .tag
{
	text-align: center;
	font-size: 1.8rem;
}
#date_box .tag span
{
	padding: 5px 30px;
	background-color: #fff5c8;
}

#place_box .place{	text-align: center;	}



#program ol
{
	margin-bottom: 30px;
	color: #333;
}
#program ol li{	padding: 24px 40px;	}
#program ol li:nth-child(2n){	background-color: #fff7e8;	}

#program ol li .title_person{	display: flex;	}
#program ol li .title_person .tit_content{	width: 380px;	}
#program ol li .title_person .tit_content .times
{
	margin-bottom: 10px;
	font-size: 1.6rem;
}
#program ol li .title_person .tit_content p.sub_title
{
	font-size: 1.6rem;
	margin-bottom: 3px;
}

#program ol li .title_person .tit_content h4
{
	color: #f47c29;
	font-size: 2.3rem;
	font-weight: bold;
	line-height: 1.2;
}
#program ol li .title_person .tit_content h4 .s_tit{	font-size: .65em;	}
#program ol li .title_person .person{	width: 520px;	}
#program ol li .title_person .person p{	font-size: 1.5rem;	}
#program ol li .title_person .person .note{	font-size: 1.3rem;	}
#program ol li .description
{
	margin-top: 12px;
	padding-top: 14px;
	border-top: 1px dashed #2d1603;
}
#program ol li .description p{	font-size: 1.4rem;	}
#program ol li.last_program
{
	display: flex;	align-items: center;
	padding: 40px;
}
#program ol li.last_program .title_person .tit_content
{
	margin-left: 26px;
	margin-top: 0;
}
#program ol li .mbA{	margin-bottom: 15px;	}
#program ol li:nth-child(2) .title_person .person{	padding-top: 20px;	}
#program ol li:nth-child(3) .title_person .person{	padding-top: 20px;	}
#program ol li:nth-child(4) .title_person .person{	padding-top: 20px;	}
#program ol li:nth-child(5) .title_person .person{	padding-top: 35px;	}
#program ol li:nth-child(6) .title_person .person{	padding-top: 50px;	}
#program ol li:nth-child(8) .title_person .person{	padding-top: 50px;	}
#program ol li:nth-child(9) .title_person .person{	padding-top: 50px;	}

#program .notes
{
	padding: 10px;
	background-color: #e7e7e7;

	color: #333;
	font-size: 1.6rem;
	text-align: center;
}


#promotion{	padding-bottom: 80px;	}
#promotion h3
{
	margin: -2px 0 55px;
	text-align: center;
}
#promotion h4
{
	margin: 0 0 30px;
	text-align: center;
}
#promotion h5
{
	margin: 0 0 50px;
	text-align: center;
}
#promotion p
{
	max-width: 865px;
	margin: 0 auto;

	color: #5f4c3f;
	font-size: 1.6rem;
	line-height: 1.8;
}



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

#date_box,
#place_box,
#program,
#promotion
{
	margin: 0 auto 7vw;
	padding: 0 0 3vw;
	border: 0.3 solid #f47c29;
	border-radius: 3vw;
}
#date_box::before
{
	left: 0;
	top: calc(50 / 750 * -100vw);

	content: "";
	width: calc(133 / 750 * 100vw);
	height: calc(133 / 750 * 100vw);

	background: url("../img/meeting_date_deco.png") no-repeat center / contain;
}

#date_box > h3,
#place_box > h3,
#program > h3
{
	padding-top: 4vw;
	margin-bottom: 3vw;
}
#date_box > h3 img,
#place_box > h3 img,
#program > h3 img
{	height: calc(42 / 750 * 100vw);	}

#date_box > h3::before,
#place_box > h3::before,
#program > h3::before
{	width: 0.3vw;	height: 2.5vw;	}


#date_box .date_time{	margin-bottom: 3vw;	}
#date_box .date_time img{	width: 80vw;	}
#date_box .tag{	font-size: 1.2rem;	}
#date_box .tag span{	padding: 1vw 2vw;	}


#place_box .place img{	width: 75vw;	}


#program ol
{
	margin-bottom: 5vw;
	padding: 0 4vw;
}
#program ol li{	padding: 2vw;	}
#program ol li:nth-child(n+5){	display: none;	}
#program ol li .title_person{	display: block;	}
#program ol li .title_person .tit_content{	width: 100%;	}
#program ol li .title_person .tit_content .times,
#program ol li .times
{
	margin-bottom: 0.5vw;
	font-size: 1.2rem;
}
#program ol li .title_person .tit_content p.sub_title
{
	font-size: 1.1rem;
	margin-bottom: 0;
}

#program ol li .title_person .tit_content h4{	font-size: 1.5rem;	}
#program ol li .title_person .tit_content h4 .s_tit{	font-size: .8em;	}
#program ol li .title_person .person{	width: 100%;	}
#program ol li .title_person .person p{	font-size: 1.2rem;	}
#program ol li .title_person .person .note{	font-size: 0.9rem;	}
#program ol li .description
{
	margin-top: 2vw;
	padding-top: 2vw;
}
#program ol li .description p{	font-size: 1.2rem;	}
#program ol li.last_program{	display: none;	padding: 2vw;	}
#program ol li.last_program .title_person .tit_content{	margin-left: 0;	}

#program ol li .mbA{	margin-bottom: 1vw;	}
#program ol li:nth-child(2) .title_person .person{	padding-top: 2vw;	}
#program ol li:nth-child(3) .title_person .person{	padding-top: 2vw;	}
#program ol li:nth-child(4) .title_person .person{	padding-top: 2vw;	}
#program ol li:nth-child(5) .title_person .person{	padding-top: 2vw;	}
#program ol li:nth-child(6) .title_person .person{	padding-top: 2vw;	}
#program ol li:nth-child(7) .title_person .person{	padding-top: 2vw;	}
#program ol li:nth-child(8) .title_person .person{	padding-top: 2vw;	}
#program ol li:nth-child(9) .title_person .person{	padding-top: 2vw;	}


#program p.more
{
	margin: 0 auto 5vw;
	text-align: center;
}
#program p.more span
{
	position: relative;
	display: inline-block;

	padding: calc(12 / 750 * 100vw);
	padding-right: calc(45 / 750 * 100vw);
	padding-left: calc(80 / 750 * 100vw);

	border: 1px solid #f47c29;
	border-radius: 1.8rem;

	color: #f47c29;
	font-size: calc(30 / 750 * 100vw);
}
#program p.more span::before
{
	position: absolute;
	top: 40%;	left: 10%;

	content: "";
	display: block;
	width: calc(18 / 750 * 100vw);	height: calc(18 / 750 * 100vw);

	border-right: 1px solid #f47c29;
	border-bottom: 1px solid #f47c29;

	transform: translateY(-50%) rotate(45deg);
}

#program p.more span.on::before
{
	top: 60%;
	transform: translateY(-50%) rotate(-135deg);
}

#program .notes
{
	width: 95%;
	padding: 1vw;
	margin: 0 auto;
	font-size: 1rem;
}



#promotion{	padding-bottom: 10vw;	margin: 0 auto;	}
#promotion h3{	margin: -0.2vw 0 5vw;	}
#promotion h3 img{	width: 80vw;	}
#promotion h4{	margin: 0 0 5vw;	}
#promotion h4 img{	width: 85vw;	}
#promotion h5{	margin: 0 0 5vw;	}
#promotion h5 img{	width: 70vw;	}
#promotion p
{
	max-width: 80vw;
	font-size: 1.2rem;
}





}




/* ================================================================================
footer
================================================================================ */
.footer_logo_area
{
	padding-bottom: 34px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer_logo_area .logo_wrap + .logo_wrap{	margin-left: 16px;	}
.footer_logo_area{	background-color: #fbf1da;	}

footer
{
	padding-top: 30px;
	padding-bottom: 80px;
	background-color: #eb7d00;
	color: #fff;
}
footer .text{	display: flex;	align-items: center;	}
footer .text h2{	font-size: 25px;	}
footer .text p
{
	padding-top: 5px;
	margin-left: 25px;
	font-size: 15px;
	}
footer p.copy {	font-size: 10px;	}



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

.footer_logo_area{	padding-bottom: calc(50 / 750 * 100vw);	}
.footer_logo_area .logo_wrap + .logo_wrap{	margin-left: calc(45 / 750 * 100vw);	}
.footer_logo_area .mhlw img{	width: calc(252 / 750 * 100vw);	}
.footer_logo_area .orangeribbon img{	width: calc(231 / 750 * 100vw);	}

#page_forum .footer_logo_area{	background-color: #fbf1da;	}
footer
{
	padding-top: calc(60 / 750 * 100vw);
	padding-bottom: calc(160 / 750 * 100vw);
}
footer .text{	display: block;	}
footer .text h2{	font-size: calc(36 / 750 * 100vw);	}
footer .text p
{
	padding-top: 2px;
	margin-left: 0;
	font-size: calc(26 / 750 * 100vw);
}
footer p.copy{	font-size: 10px;	}


}

/*# sourceMappingURL=style.css.map */
