@charset "UTF-8";

/*HEADER
================================================= */
header{
	width: 100%;
	background-image:url("../image/back_green.png");
	background-position: center bottom;
	background-size: 140% auto;
	background-repeat: no-repeat;
}
.header_main_box {
	width: 100%;
	max-width: 1560px;
	margin: 0 auto;
	padding: 12% 0 6% ;
	position: relative;
	background-image:url("../image/back_header.png");
	background-size: 124% auto;
	background-repeat: no-repeat;
	background-position: center top 26%;
}
header h1 {
	width: 80%;
	max-width: 680px;
	margin: 0 auto;
	padding: 6% 0 6%;
}
header h2 {
	width: 64%;
	max-width: 1080px;
	margin: 0 auto;
	font-size: clamp( 1.6rem , 2.2vw , 2.8rem);
	color: #6c2900;
	text-shadow: 1px 1px 4px rgba(255, 247, 218, 1), 0px 0px 8px rgba(255, 247, 218, 1), -1px 0px 8px rgba(255, 247, 218, 1);
}

.header_parts_catch,
.header_parts_1ch,
.header_parts_free{
	position: absolute;
}
.header_parts_catch { width: 19vw; max-width: 200px; top:55px; left:2vw; }
.header_parts_1ch { width: 19vw; max-width: 180px; top:calc(60px + 1vw); right:1vw; }
.header_parts_free { width: 17vw; max-width: 190px; top:calc(60px + 20vw); right:3vw; }

.header_fade-in{
	animation: fade-in ease;
	animation-duration: 1.6s;
}
@keyframes fade-in {
  0% { transform: translateY(30px); }
  100% { transform: translateY(0); }
}

@media print, screen and (min-width: 960px) {
header{
	background-size: 100% auto;
}
.header_main_box {
	padding: 4% 0 6% ;
	background-size: 116% auto;
	background-position: center top 26%;
}
.header_parts_catch { width: 16vw; top:70px; left:4vw; }
.header_parts_1ch { width: 14vw; top:calc(70px + 2vw); right:2vw; }
.header_parts_free { width: 14vw; top:calc(70px + 44vw); right:3vw; }
}

@media print, screen and (min-width: 1280px) {
header{
	background-position: center bottom -20%;
}
.header_main_box {
	padding: 0 0 80px;
	background-image:url("../image/back_header.png");
	background-size: 100% auto;
	background-position: center top 0%;
}
header h1 {
	padding: 80px 0 80px;
}
.header_parts_catch { width: 12vw; top:80px; left:60px; }
.header_parts_1ch { width: 12vw; top:calc(80px + 20px); right:70px; }
.header_parts_free { width: 12vw; top:calc(80px + 600px); right:80px; }
}

/*COMMON
================================================= */
main { background-image:url("../image/back_mesh.png"); }

.area_marche,
.area_company,
.area_stage,
.area_event_info { padding: clamp(24px , 6% , 80px) 0 clamp(36px , 9% , 120px); }

.area_event_info { background:#bdc8ac; }
.area_stage { background:#e6cda3; }

.area_company{ background-image:url("../image/back_dotte.png"); background-color:#e6cda3;
background-size:24px;}
/*見出し*/

h2,h3,h4,h5,h6,th,.txt_corner{ 
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-weight: 700;
	font-style: normal;
	color: rgba(104,42,25,1.00);
	line-height: 1.4;
}
.txt_title_sub{ 
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-weight: 400;
	font-style: normal;
}

main h3 { font-size: 2.2rem; width: 100%; }
main h3 span{ font-size: 1.8rem; }
main h4 { font-size: 2rem; }
main h4 span{ font-size: 1.6rem; }
main h5 { font-size: 1.6rem; }
main h5 span{ font-size: 1.4rem; }
main h6 { font-size: 1.4rem; }

.txt_corner {
	display: inline-block;
	padding: 1% ;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	border-top: dashed 2px rgba(104,42,25,1.00);
	border-bottom: dashed 2px rgba(104,42,25,1.00);
}
.txt_corner span{
	padding: 1px 7px;
	color: rgba(255,255,255,1.00);
	background-color: rgba(104,42,25,1.00);
	border-radius: 16px;
}
.txt_title_sub{ font-size: 1.6rem;}

@media print, screen and (min-width: 768px) {
main h3 { font-size: 3.0rem; }
main h3 span{ font-size: 2.4rem; }
main h4 { font-size: 2.4rem; }
main h4 span{ font-size: 1.8rem; }
main h5 { font-size: 2rem; }
main h5 span{ font-size: 1.6rem; }
main h6 { font-size: 1.8rem; }
.txt_corner{ font-size: 2.0rem;}
.txt_title_sub{ font-size: 2.0rem;}
.txt_corner span{ padding: 1px 8px; border-radius: 17px; }
}

@media print, screen and (min-width: 960px) {
main h3 { font-size: 3.8rem; }
main h3 span{ font-size: 2.8rem; }
main h4 { font-size: 2.8rem; }
main h4 span{ font-size: 2rem; }
main h5 { font-size: 2.2rem; }
main h5 span{ font-size: 1.6rem; }
main h6 { font-size: 1.8rem; }
.txt_corner{ font-size: 2.4rem;}
.txt_title_sub{ font-size: 2.2rem;}
.txt_corner span{ padding: 1px 9px; border-radius: 20px; }
}

/*flex_column
================================================= */
.flex_box_2c,
.flex_box_3c {
	display: flex;
	flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
}
.flex_box_2c { justify-content: space-between; margin-bottom: clamp(24px , 4% , 40px); }
.flex_box_3c {}

.unit_color_w {/*白丸背景*/
	padding:  clamp( 1.4rem ,4% , 3.6rem);
	background-color: #ffffff;
	border-radius: 1.6rem;
}

.unit_color_dotte {/*白丸背景*/
	padding:  clamp( 1.4rem ,4% , 3.6rem);
	border-radius: 1.6rem;
	border: dashed 2px rgba(104,42,25,1.00);
	background-color: rgba(255, 247, 218, 0.4);
}
.all_with_unit { width: 100% }

/*見出しのタイトル枠 */
.corner_title { margin: clamp(12px , 3% , 40px) auto clamp(12px , 4% , 24px);}
.corner_title h4 { padding-top: clamp(12px , 4% , 24px);}

/*2column
================================================= */
.unit_left,.unit_right { width: 100%; }
.unit_left { margin-bottom:clamp(24px , 4% , 36px); }

@media print, screen and (min-width: 768px) {
.unit_left { width: 48.5%;  margin-bottom:0; }
.unit_right { width: 48.5%; }
}

/*3column
================================================= */
.column3_unit { 
	position: relative;
	width: 100%;
	margin-right: 0;
	margin-bottom: clamp(24px , 4% , 36px);
	padding: clamp( 16px , 6% , 58px);
	overflow: hidden;
	background-color: #ffffff;
	border-radius: 1.6rem;
}

@media print, screen and (min-width: 640px) {
.column3_unit {
	width: 48.5%;
	margin-right: 3%;
	padding: clamp( 1.4rem , 3% , 2.8rem); }
.column3_unit:nth-child(2n) { margin-right: 0; }
}

@media print, screen and (min-width: 1280px) {
.column3_unit {
	width: 31.5%;
	margin-right: 2.75%;
	padding: clamp( 1.4rem , 2% , 2.8rem);}
.column3_unit:nth-child(2n) { margin-right: 2.75%; }
.column3_unit:nth-child(3n) { margin-right: 0; }
}

/*画像*/
.flex_box_2c figure,
.flex_box_3c figure { margin: 1.8rem auto; }
.flex_box_2c figure { max-width: 480px; }

/* リンクボタン */
.btn_link {
	width: 100%;
	min-width: 240px;
	max-width: 400px;
	display: block;
	position: relative;
	margin: 1.8rem auto 0;
	padding: 0.6rem 2.6rem ;
    background-color: rgba(255, 255, 255,1);
    color: #6c2900;
	font-size: 1.3rem;
    font-weight: bold;
	text-align: center;
	border-radius: 2.4rem;
	border: solid 2px #6c2900;
	text-decoration: none;
}
.btn_link:hover {
	text-decoration: none;
	color: #fff;
	 background-color: #6c2900;
}
.btn_link::before {
	display: block;
	position: absolute;
	content: "";
	width: 1rem;
	height: 1rem;
	top: 1.3rem;
	border-left: solid 2px #6c2900;
	border-top: solid 2px #6c2900;
	transform: rotate(135deg);
	right:1.6rem;
}

.btn_link:hover::before {
	border-left: solid 2px #fff;
	border-top: solid 2px #fff;
}
@media print, screen and (min-width: 640px) {
.btn_link { padding: 0.6rem 1.6rem ; }
}

@media print, screen and (min-width: 768px) {
.btn_link::before { top: 1.5rem; }
}
@media print, screen and (min-width: 1280px) {
	.btn_link {width: 90%;}
}
/*注意事項*/
.important_txt {margin-bottom: clamp(24px , 6% , 80px);}
.important_txt h5{
	margin-bottom: 0.6rem;
	padding: 0 0 6px 30px; 
	background-image:url(../image/icon_important.svg);
	background-repeat: no-repeat;
	background-size: 22px;
	background-position: left top 2px;
	border-bottom: dashed 2px rgba(42,17,10,0.40);
}
.important_txt h6{ margin-top: 1.2rem;margin-bottom: 0.4rem; }

/*パンコーディネーターさん枠*/
.coordinator_box{}
.coordinator_photo{width: 30%;}
.coordinator_txt{width: 66%;}

/* =infomation & Stage================================================= */
.event_info { display: flex; flex-wrap: wrap;}
.event_info-container,
.map-container { width: 100%;}
.event_info-container { margin-bottom: 8vw;}
.event_info h4 { margin-bottom: 2%;}
.stage_guest_photo{width: 50%; max-width: 200px;}

/* table */
.event_info table { width: 100%;}
.event_info tr {
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0;
	text-align: left;
	border-bottom: dashed 2px rgba(42,17,10,0.40);
}
.event_info tr:first-child { border-top: dashed 2px rgba(42,17,10,0.40);}
.event_info th,.event_info td { width: 100%; padding:1px 0; }
.event_info table span { display: inline-block;}

/* map */
.map-container {
  width: 100%;
  margin: 0 0 6vw;
}
.map-container iframe {
  width: 100%;
  height: 400px;
  border: none;
}
@media (min-width: 640px) {
.event_info { justify-content: space-between;}
.event_info-container,.map-container { width: 47%; margin: 0 0 0;}
.event_info tr { padding: clamp(12px ,3% , 24px) 0; }
.event_info th { width: clamp(100px ,24% ,180px);}
.event_info td { width: inherit;}
}
@media (min-width: 1280px) {
.event_info { font-size: 1.8rem;}
.event_info th { font-size: 2rem;}
}