@charset "UTF-8";
@media screen and (min-width: 801px) {}
@media screen and (max-width: 800px) {}
/* =====================================
	全体設定
===================================== */
figure {
	margin: 0;
}
.bold {
	font-weight: bold;
	
}

.l-container {
	overflow: visible!important;
}
.mb0 {
	margin-bottom: 0!important;
	
}
.clearfix:after {content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;}
.clearfix {display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

@media screen and  (min-width: 801px) and (max-width:1200px) {

.pc_area_l .txt01 {
	position: absolute;
	right: 0px;
	width: 355px;
	margin: 0 auto;
}

.pc_area_r .lnav  {
}
.pc_area_r .lnav ul  {
	width: 184px;
	margin: 0;
	
}
.pc_area_r .pc_entry ul  {
	display: flex;
	justify-content: flex-start;
	width: 280px;
	margin: 0 auto;
	
}


}
@media screen and (max-height:750px) {

.pc_area_l .txt01 {
	width: 355px;
	margin: 0 auto;
}

}
@media screen and (max-height:700px) {

.pc_area_r .pc_entry  {
	position: static!important;
	
}

}

@media screen and (min-width: 801px) {
.dsp_pc {
	display: block;
}
.inl_pc {
	display: inline;
}
.dsp_sp {
	display: none;
}
.inl_sp {
	display: none;
}

.rewind_bg {
	z-index: 1;
	position: relative;
	background: url(../../../../img/campaign/westerfesta/202509/pc_bg.png) center center no-repeat #fadbdf;
	background-size: cover;               /* 全画面 */
	background-attachment: fixed;         /* 固定 */
	background-position: center calc(50% + 140px);   /* 縦横中央 */
}

.rewind_container {
	display: flex;
	width: 100%;
	/*min-width: 1400px;*/
}

.pc_area_l {
	position: relative;
	width: calc( 50% - 225px);
	
}
.pc_area_l .pc_bg {
	position: sticky;
	top: 180px;
	left: 0;
	width: 100%;
	height: calc( 100vh - 180px);
}
.pc_area_l .txt01 {
	max-width: 425px;
	margin: 0 auto;
}
.pc_area_l .txt01 img {
	height: 100%;
}


.pc_area_r {
	position: relative;
	box-sizing: border-box;
	width: calc( 50% - 225px);
}
.pc_area_r .container {
	position: sticky;
	top: 180px;
	left: 0;
	width: 100%;
	height: calc( 100vh - 180px);
}
.pc_area_r .lnav  {
	overflow: hidden;
	display: block;
	padding: 13px 80px 20px;
	
}
.pc_area_r .lnav ul  {
    max-width: 224px;
	margin: 0 auto;
	
}
.pc_area_r .lnav ul li  {
	position: relative;
	
}
.pc_area_r .lnav ul li.on::before  {
	position: absolute;
	left: -26px;
	top: 15px;
	content: "";
	width: 20px;
	height: 17px;
	background: url(../../../../img/campaign/westerfesta/202509/lnav_on.png);
	background-size: 20px auto;
	
	
}
.pc_area_r .lnav ul li:first-child.on::before  {
	top: 18px;	
}

.pc_area_r .pc_entry  {
	overflow: hidden;
	box-sizing: border-box;
	display: block;
	position: absolute;
	bottom: 40px;
	left: 0;
	width: 100%;
	padding: 0 40px;
	
}
.pc_area_r .pc_entry ul  {
	display: flex;
	justify-content: flex-start;
	max-width: 315px;
	margin: 0 auto;
	
}
.pc_area_r .pc_entry ul li {
	position: relative;
	max-width: 150px;
	
}
.pc_area_r .pc_entry ul li:first-child {
	margin-right: 15px;
	
}

.pc_area_r .pc_entry ul li #my_qr_code_div_id {
	position: absolute;
	left: calc(27/150*100%);
	top: 0;
	width: calc(95/150*100%);
	height: 95px;
	margin: calc(107/150*100%) auto 0;
	/*background: #ff0000;*/
	
}

.pc_area_r .pc_entry ul li #my_qr_code_div_id canvas {
	width: 100%;
	height: auto;
	
}

main {
	z-index: 1;
}

#rewind {
	z-index: 6000;
	position: relative;
	font-size: calc(25 * calc(450 / 750)*1px);
	/*font-feature-settings: "palt";*/
	line-height: 1.5;
	color: #000000;
	width: 450px;
	overflow: visible;
	background: #cbe9ff;
	margin: 0 auto;
}

.cp {
	border-bottom: 2px solid #ddd;
	font-weight: 500;
	color: #000;
}

.navarea {
	padding-top: 220px;
	margin-top: -220px;
}
.navarea02 {
	padding-top: 240px;
	margin-top: -240px;
}

}


@media screen and (max-width: 800px) {
	.dsp_pc {
		display: none;
	}
	.inl_pc {
		display: none;
	}
	.dsp_sp {
		display: block;
	}
	.inl_sp {
		display: inline;
	}

	.pc_area_l {
		display: none;
		
	}
	.pc_area_r {
		display: none;
		
	}

	.rewind_bg {
		z-index: 1;
		position: relative;
		width: 100%;
		background: #ffebf5;
		padding: 0;
	}
	#rewind {
		position: relative;
		width: 100%;
		font-size: calc(25/750*100vw);
		/*font-feature-settings: "palt";*/
		line-height: 1.5;
		color: #000000;
		overflow: visible;
		background: #cbe9ff;
	}
	
	.navarea {
		padding-top: calc(220/750*100%);
		margin-top: calc(-220/750*100%);
	}
	.navarea02 {
		padding-top: calc(250/670*100%);
		margin-top: calc(-250/670*100%);
	}

}
/* =====================================
	header
===================================== */

	
	.l-container.-wester-portal .c-topic-path {
	  margin: 0 auto 0;
	}
	.l-container.-wester-portal .c-topic-path p {
		margin-bottom: 16px;
	}
	.cp {
		border-bottom: 1px solid #ddd;
		font-weight: 500;
		color: #000;
	}
	.cp img {
		width: 100%;
		
	}
	.mv {
		position: relative;
		width: 100%;
	}

	#following_area {
		position: relative;
	}

	.entry {
		opacity: 0;
		/*display: none;*/
		z-index: 75;
		position: sticky;
		left: 0;
		bottom: 0;
		transition: 1s all ease 0s;
		pointer-events: none;
	}	
	.entry.active {
		opacity: 1;
		/*display: block;*/
		pointer-events: auto;
	}	
	.entry ul {
		display: flex;
	}	
	
	.entry_start {
		opacity: 0;
		/*display: none;*/
		z-index: 75;
		position: sticky;
		left: 0;
		bottom: 0;
		transition: 1s all ease 0s;
		pointer-events: none;
	}
	.entry_start.active {
		opacity: 1;
		/*display: block;*/
		pointer-events: auto;
	}
	.entry_start.none {
		display: none;
	}
		
	#rewind a {
		color: #004a9e;
		text-decoration: underline;
	}
	.red {
		color: #fa3232;
		font-weight: 500;
		
	}
	

/* =====================================
	content
===================================== */
	.cont01 {
		padding: calc(40/750*100%) 0 0;
		background: #7cc6b4;
	}
	.cont01 .inner {
		padding: calc(85/750*100%) calc(40/750*100%) calc(35/750*100%);
	}
	.cont01 .box {
		position: relative;
		box-sizing: border-box;
		margin-bottom: calc(60/670*100%);
		padding-bottom: calc(45/670*100%);
		background: #fff;
		border:calc(6/750*100vw) solid #e84b5f;
		border-radius: calc(30/750*100vw);
	}
	.cont01 .box .bg01 {
		position: absolute;
		right: calc(16/670*100%);
		top: 0;
		width: calc(52/670*100%);
		margin-top: calc(16/670*100%);
	}
	.cont01 .box .bg02 {
		position: absolute;
		left: calc(16/670*100%);
		bottom: 0;
		width: calc(53/670*100%);
		margin-bottom: calc(16/670*100%);
	}
	.cont01 .box .bg03 {
		position: absolute;
		left: calc(16/670*100%);
		top: 0;
		width: calc(7/670*100%);
		margin-top: calc(106/670*100%);
	}
	.cont01 .box .bg04 {
		position: absolute;
		right: calc(16/670*100%);
		top: 0;
		width: calc(7/670*100%);
		margin-top: calc(284/670*100%);
	}

	.cont01 .box h4 {
		width: calc(284/670*100%);
		margin: calc(-70/670*100%) auto calc(40/670*100%);
	}
	.cont01 .box p {
		line-height: calc(70/45);
		text-align: center;
		font-size: calc(42 / 25 * 1em);
		font-weight: bold;
		letter-spacing: 0;
	}
	.cont01 .clr01 {
		color: #e84b5f;
	}
	.cont01 .clr02 {
		color: #004a9e;
	}
	.cont01 h5.h501 {
		width: calc(530/670*100%);
		margin: 0 auto calc(35/670*100%);
	}
	.cont01 .btn_wester {
		margin: 0 0 calc(30/670*100%);
	}
	.cont01 dt.acc_btn01 {
		cursor: pointer;
	}
	.cont01 dl dd {
		margin-top: calc(-20/670*100%);
		padding: calc(40/670*100%) calc(40/670*100%) calc(60/670*100%);
		border-radius: 0 0 calc(20/750*100vw) calc(20/750*100vw);
	}
	.cont01 dl.btn_wester dd {
		background: #ccf2fb;
	}
	.cont01 .btn_wester dd .txt01 {
		margin-bottom: calc(55/590*100%);
	}
	.cont01 .btn_wester dd .ttl01 {
		margin-bottom: calc(15/590*100%);
		font-size: calc(33 / 25 * 1em);
		font-weight:bold;
		text-align: center;
	}
	.cont01 .btn_wester dd .txt02 {
		margin-bottom: calc(55/590*100%);
	}
	.cont01 dl dd .btn_entry {
		margin-bottom: calc(25/590*100%);
	}
	.cont01 dl dd .notes {
		margin-bottom: calc(70/590*100%);
		font-size: calc(20 / 25 * 1em);
		line-height: calc(30/20);
	}
	.cont01 dl dd .notes li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.cont01 dl .close {
		width: calc(271/590*100%);
		margin: 0 auto;
		cursor: pointer;
	}
	.cont01 dl.btn_wespo dd {
		background: #fbdfec;
	}
	.cont01 dl.btn_wespo dd .txt01 {
		margin-bottom: calc(55/590*100%);
	}
	.cont01 dl.btn_wespo dd .ttl01 {
		margin-bottom: calc(15/590*100%);
		font-size: calc(33 / 25 * 1em);
		font-weight:bold;
		text-align: center;
	}
	
	.cont01 .btn_wespo {
		margin: 0 0 calc(60/670*100%);
	}
	.cont01 h5.h502 {
		margin: 0 0 calc(30/670*100%);
		font-size: calc(35 / 25 * 1em);
		font-weight: bold;
		/*letter-spacing: 0.05em;*/
		color: #ffffff;
		text-align: center;
	}
	.cont01 .btn_dl {
		width: calc(590/670*100%);
		margin: 0 auto calc(60/670*100%);
	}
	.cont01 .btn_id {
		/*width: calc(590/670*100%);*/
		margin: 0 auto calc(110/670*100%);
	}
	.cont01 .box p .fs105 {
		font-size: calc(105 / 45 * 1em);
	}
	.cont01 .box p .fs60 {
		font-size: calc(60 / 45 * 1em);
	}
	.cont01 .box p.txt02 {
		line-height: 1.0;
	}
	.cont01 .box .notes {
		width: calc(610/670*100%);
		margin: calc(30/670*100%) auto calc(30/670*100%);
		line-height: calc(30/20);
		font-size: calc(20 / 25 * 1em);
	}
	.cont01 .box .notes li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.cont01 .box.mb0 {
		margin-bottom: 0;
	}
	.cont01 .neko {
		margin: calc(50/750*100%) 0 0;
	}


	.cont02_h3 {
		/*margin: calc(-40/750*100%) 0 0;*/
	}
	.cont02 {
		background: #f0879e;
	}
	.cont02 .cont02_inner {
		position: relative;
		padding: calc(70/750*100%) calc(40/750*100%) 0;
	}
	.cont02 .cont02_inner .lnav {
		width: calc(628/670*100%);
		margin-left: calc(40/670*100%);
	}
	.cont02 .cont02_inner .lnav li {
		position: relative;
		float: left;
		width: calc(310/628*100%);
		margin-bottom: calc(30/628*100%);
	}
	.cont02 .cont02_inner .lnav li:first-child {
		margin-right: calc(8/628*100%);
		margin-bottom: calc(122/628*100%);
	}
	.cont02 .cont02_inner .lnav li:nth-child(2) {
		float: right;
		padding-top: calc(233/628*100%);
	}
	.cont02 .cont02_inner .lnav a {
		z-index: 2;
		position: relative;
	}
	.cont02 .cont02_inner .asei01 {
		z-index: 0;
		position: absolute;
		left: calc(53/310*100%);
		top: 0;
		width: calc(257/310*100%);
		margin-top: calc(-154/310*100%);
	}
	.cont02 .cont02_inner .kiki01 {
		position: absolute;
		left: calc(-14/310*100%);
		top: 0;
		width: calc(272/310*100%);
		margin-top: calc(0/310*100%);
	}
	.cont02 .cont02_inner h4 {
		margin-bottom: calc(35/670*100%);
	}
	.cont02 .cont02_inner .box {
		box-sizing: border-box;
		position: relative;
		margin: 0 0 calc(60/670*100%) 0;
		padding: calc(55/670*100%) calc(40/670*100%) calc(50/670*100%);
		background: #fff;
		border: calc(6/750*100vw) solid #fcd000;
		border-radius: calc(30/750*100vw);
	}
	.cont02 .cont02_inner .box .boximg {
		position: absolute;
		right: 0;
		top: 0;
		width: calc(140/590*100%);
		margin-top: calc(-20/590*100%);
	}
	.cont02 .cont02_inner .box h5 {
		margin-bottom: calc(40/590*100%);
		line-height: calc(55/40);
		font-size: calc(38 / 25 * 1em);
		font-weight: bold;
		color: #004a9e;
		text-align: center;
	}
	.cont02 .cont02_inner .box h6 {
		margin-bottom: calc(40/590*100%);
		line-height: calc(55/40);
		font-size: calc(35 / 25 * 1em);
		font-weight: bold;
		text-align: center;
	}
	.cont02 .cont02_inner .box.box01 h6 {
		font-size: calc(34 / 25 * 1em);
	}
	.cont02 .cont02_inner .box.box01 h6 span {
		font-size: calc(27 / 34 * 1em);
	}
	.cont02 .cont02_inner .box .notes {
		line-height: calc(30/20);
		font-size: calc(20 / 25 * 1em);
	}
	.cont02 .cont02_inner .box.box01 .notes {
		margin-bottom: calc(55/590*100%);
	}
	.cont02 .cont02_inner .box .notes li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.cont02 .cont02_inner .box01 .img01 {
		margin-bottom: calc(70/590*100%);
	}
	.cont02 .cont02_inner .box01 .img02 {
		margin-bottom: calc(40/590*100%);
	}
	.cont02 .cont02_inner .box01 .bnr {
		margin: 0 calc(-40/590*100%);
	}

	.cont02 .cont02_inner .box02 .img01 {
		margin-bottom: calc(20/590*100%);
	}
	.cont02 .cont02_inner .box02 .img02 {
		margin-bottom: calc(20/590*100%);
	}
	.cont02 .cont02_inner .box02 .img03 {
		margin-bottom: calc(20/590*100%);
	}
	.cont02 .cont02_inner .box02 .img04 {
		margin-top: calc(40/590*100%);
		margin-bottom: calc(40/590*100%);
	}
	.cont02 .cont02_inner .box02 .img06 {
		margin-bottom: calc(30/590*100%);
	}
	.cont02 .cont02_inner .box03 .img01 {
		margin-bottom: calc(50/590*100%);
	}
	.cont02 .cont02_inner .box03 .img02 {
		margin: 0 calc(-40/590*100%) calc(30/590*100%) calc(-40/590*100%);
		
	}
	.cont02 .cont02_inner .box .note {
		line-height: calc(30/20);
		font-size: calc(20 / 25 * 1em);
		text-align: center;
	}
	.cont02 .cont02_inner .box hr {
		height: 0;
		margin: calc(40/590*100%) 0 calc(40/590*100%) 0;
		border: none;
		border-top: calc(8/750*100vw) dotted #0074c1;
	}
	.cont02 .cont02_inner .bnr_hotel {
		display: flex;
		justify-content:space-between;
		flex-wrap: wrap;
	}
	.cont02 .cont02_inner .bnr_hotel li {
		width: calc(176/590*100%);
		margin-bottom: calc(32/590*100%);
	}
	.cont02 .cont02_inner .bnr_hotel li p {
		margin-top: calc(5/176*100%);
		font-size: calc(15 / 25 * 1em);
	}
	#rewind .cont02 .cont02_inner .bnr_hotel a {
		color: #000;
		text-decoration: none;
	}
	.cont02 .cont02_inner .bnr_hotel li.balloon {
		width: calc(330/590*100%);
	}
	.cont02 .cont02_inner .box03 .btn01 {
		width: calc(400/590*100%);
		margin: 0 auto calc(30/590*100%);
	}
	.cont02 .cont02_inner .box03 .btn01 li {
		margin-bottom: calc(30/400*100%);
		cursor: pointer;
	}
	#rewind .cont02 .cont02_inner .box03 .txt01 {
		margin-bottom: calc(60/590*100%);
		text-align: center;
	}
	#rewind .cont02 .cont02_inner .box03 .txt01 a {
		color: #004a9e;
		text-decoration: underline;
	}
	.cont02 .cont02_inner .bnr_net {
		display: flex;
		justify-content:space-between;
	}
	.cont02 .cont02_inner .bnr_net li {
		width: calc(280/590*100%);
	}
	#rewind .cont02 .cont02_inner .bnr_net li a {
		color: #000;
		text-decoration: none;
	}
	.cont02 .cont02_inner .bnr_net li p {
		margin-top: calc(5/176*100%);
		font-size: calc(18 / 25 * 1em);
	}
	.cont02 .doublepoint {
		background: #004a9e;
		padding: 0 calc(40/750*100%) calc(20/750*100%);
	}
	.cont02 .doublepoint .box {
		box-sizing: border-box;
		position: relative;
		margin: 0 0 calc(70/670*100%) 0;
		padding: calc(70/670*100%) calc(40/670*100%) calc(50/670*100%);
		background: #fff;
		border-radius: calc(30/750*100vw);
	}
	.cont02 .doublepoint .txt01 {
		margin: calc(10/590*100%) 0 calc(25/590*100%);
		text-align: center;
	}
	.cont02 .doublepoint .txt02 {
		margin: 0 0 calc(40/590*100%);
		text-align: center;
	}
	.cont02 .doublepoint .txt03 {
		margin: calc(10/590*100%) 0 calc(25/590*100%);
		text-align: center;
		font-size: calc(20 / 25 * 1em);
	}
	#rewind .cont02 .doublepoint .txt02 a {
		color: #004a9e;
		text-decoration: underline;
	}
	.cont02 .doublepoint .box .notes {
		margin-top: calc(50/590*100%);
		line-height: calc(30/20);
		font-size: calc(20 / 25 * 1em);
	}
	.cont02 .doublepoint .box .notes li {
		padding-left: 1.8em;
		text-indent: -1.8em;
	}
	.cont02 .doublepoint h5 {
		margin: 0 0 calc(50/670*100%) 0;
	}
	.cont02 .doublepoint .bnr li {
		margin: 0 0 calc(60/670*100%) 0;
	}

	.cont03 {
		padding: calc(70/750*100%) calc(40/750*100%) calc(90/750*100%);
		background: #fef6cc;
	}
	.cont03 .ttl01 {
		margin-bottom: calc(45/670*100%);
	}
	.cont03 h4 {
		margin-bottom: calc(40/670*100%);
		line-height: calc(55/40);
		font-size: calc(38 / 25 * 1em);
		font-weight: bold;
		color: #e84b5f;
		text-align: center;
	}
	.cont03 .b_box {
		position: relative;
		box-sizing: border-box;
		margin-bottom: calc(40/750*100%);
		padding: calc(20/750*100%) 0 ;
		border: calc(6/750*100vw) solid #fcd000;
		border-radius: calc(20/750*100vw);
		background: #fff;
		font-size: calc(30 / 25 * 1em);
		text-align: center;
	}
	.cont03 .b_box .balloon {
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
		width: calc(31/738*100%);
		margin-top: calc(-42/738*100%);
	}
	.cont03 .b_box p span {
		color: #e84b5f;
	}
	.cont03 .tab {
		margin-bottom: calc(50/670*100%);
	}
	.cont03 .tab .tabmenu {
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin: 0;
	}
	.cont03 .tab .tabmenu li {
		width: calc(324/670*100%);
		padding-bottom: calc(190/670*100%);
		cursor: pointer;
	}
	.cont03 .tab .tabmenu li.tab01 {
		background: url(../../../../img/campaign/westerfesta/202509/tab01.png) center top no-repeat;
		background-size: 100% auto;
	}
	.cont03 .tab .tabmenu li.tab01.active {
		background: url(../../../../img/campaign/westerfesta/202509/tab01_on.png) center top no-repeat;
		background-size: 100% auto;
	}
	.cont03 .tab .tabmenu li.tab02 {
		background: url(../../../../img/campaign/westerfesta/202509/tab02.png) center top no-repeat;
		background-size: 100% auto;
	}
	.cont03 .tab .tabmenu li.tab02.active {
		background: url(../../../../img/campaign/westerfesta/202509/tab02_on.png) center top no-repeat;
		background-size: 100% auto;
	}
	.cont03 .tab .tabcont li {
		display: none;
		box-sizing: border-box;
		padding: calc(60/750*100%) calc(40/750*100%) calc(60/750*100%);
		border: calc(6/750*100vw) solid #fcd000;
		border-radius: 0 0 calc(20/750*100vw) calc(20/750*100vw);
		background: #fff;
	}
	.cont03 .tab .tabcont li.active{
		display: block;
	}
	.cont03 .tab .tabcont li h5 {
		margin-bottom: calc(25/590*100%);
		color: #e84b5f;
		text-align: center;
		font-size: calc(45 / 25 * 1em);
		font-weight: bold;
	}
	.cont03 .tab .tabcont li.tabcont01 .img01 {
		width: calc(200/590*100%);
		margin: 0 auto calc(50/590*100%);
	}
	.cont03 .tab .tabcont li .txt01 {
		text-align: center;
		font-size: calc(30 / 25 * 1em);
		font-weight: 500;
		margin-bottom: calc(30/590*100%);
	}
	.cont03 .tab .tabcont li .txt02 {
		text-align: center;
		font-size: calc(30 / 25 * 1em);
		font-weight: 500;
		margin-bottom: calc(50/590*100%);
	}
	.cont03 .tab .tabcont li .txt03 {
		text-align: center;
		font-size: calc(30 / 25 * 1em);
		font-weight: 500;
	}
	.cont03 .tab .tabcont li p span {
		color: #e84b5f;
	}
	.cont03 .tab .tabcont li .hr{
		margin-bottom: calc(50/590*100%);
	}
	.cont03 .tab .tabcont li .txtbox {
		padding: calc(25/590*100%) 0;
		background: #ccf2fb;
		border-radius: calc(20/750*100vw) calc(20/750*100vw);
		text-align: center;
		font-size: calc(30 / 25 * 1em);
		font-weight: 500;
		line-height: calc(45 / 30);
	}
	.cont03 .tab .tabcont li .ttl01 {
		margin-bottom: calc(40/590*100%);
		text-align: center;
		font-size: calc(38 / 25 * 1em);
		font-weight: bold;
	}
	.cont03 .tab .tabcont li.tabcont02 .img01 {
		width: calc(550/590*100%);
		margin: 0 auto calc(50/590*100%);
	}
	.cont03 .tab .tabcont li.tabcont02 .img02 {
		width: calc(452/590*100%);
		margin: 0 auto calc(50/590*100%);
	}
	.cont03 .bnr_dl {
		width: calc(590/670*100%);
		margin: 0 auto;
	}
	.cont03 .bnr_dl li {
		margin-bottom: calc(20/590*100%);
	}
	.cont03 .notes {
		width: calc(590/670*100%);
		margin: 0 auto;
		font-size: calc(20 / 25 * 1em);
	}
	.cont03 .notes li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.cont03 h4 + .sign-up {
		margin: calc(-30 / 670* 100%) 0 calc(40 / 670* 100%);
		text-align: center;
	}

	
	.cont04 {
		padding: calc(90/750*100%) calc(40/750*100%) calc(90/750*100%);
		background: #e7f1fa;
	}
	.cont04 h3 {
		margin-bottom: calc(45/670*100%);
		font-size: calc(45 / 25 * 1em);
		text-align: center;
		color: #004a9e;
	}
	.cont04 h4 {
		margin-bottom: calc(20/670*100%);
		font-size: calc(35 / 25 * 1em);
		text-align: center;
		color: #004a9e;
	}
	
	.cont04 .txt01 {
		margin-bottom: calc(50/590*100%);
		line-height: calc(38/25);
	}
	.cont04 .txt01 li {
		padding-left: 1em;
		text-indent: -1em;
	}
	.cont04 .txt01 li.br {
		margin-bottom: calc(30/590*100%);
	}
	.cont04 .txt01 li span.blue {
		color: #004a9e;
	}
	.cont04 a {
		color: #004a9e!important;
		text-decoration: underline!important;
	}
	
	
	.cont04 .box {
		box-sizing: border-box;
		width: 100%;
		margin: 0 auto;
		padding: calc(30/670*100%) calc(20/670*100%) ;
		border: calc(6/750*100vw) solid #004a9e;
		border-radius: calc(30/750*100vw);
		background: #fff;
	}
	.cont04 .box .inner {
		height: calc(840/750*100vw);
		padding: 0 calc(20/630*100%) ;
		overflow-y:scroll;
	}
	.cont04 .box p {
		/*margin-bottom: calc(50/590*100%);*/
		line-height: calc(38/25);
	}
	.cont04 .box .txt01 {
		margin-bottom: calc(40/590*100%);
	}
	.cont04 .box h5 {
		font-size: calc(30 / 25 * 1em);
		color: #004a9e;
	}

	.cont05 {
		padding: calc(95/750*100%) calc(40/750*100%) calc(110/750*100%);
		background: #ffffff;
	}
	.cont05 h3 {
		margin-bottom: calc(35/590*100%);
	}


	.appli {
		padding: calc(90/750*100%) 0 0;
		background:
url(../../../../img/campaign/westerfesta/202509/appli_bg_head.png) center top no-repeat,
/*url(../../../../img/campaign/westerfesta/202409/appli_bg_foot.png) center bottom no-repeat,*/
			#0074ba

		;
		background-size: 100% auto;
		
	}
	.appli .inner {
		padding: 0 calc(40/750*100%);
		
	}
	.appli h2 {
		margin-bottom: calc(90/690*100%);
		line-height: 1.75;
		font-size: calc(50 / 25 * 1em);
		color: #ffffff;
		font-weight: bold;
		text-align: center;
		letter-spacing: 0.06em;
	}
	.appli .fbox {
		display: none;
	}
	.appli .btn01 {
		margin-bottom: calc(80/690*100%);
	}
	.appli .note {
		margin-bottom: calc(40/690*100%);
		line-height: 1.75;
		font-size: calc(26 / 25 * 1em);
		color: #ffffff;
		font-weight: bold;
		text-align: center;
	}
	/*
	.appli .btn01 a {
		display: block;
		width: 100%;
		height: calc(140/750*100vw);
		margin: 0 auto calc(50/750*100vw);
		border-top: calc(4/750*100vw) solid #00b8e5;
		border-left: calc(4/750*100vw) solid #00b8e5;
		border-bottom: calc(4/750*100vw) solid #004999;
		border-right: calc(4/750*100vw) solid #004999;
		background: url(../../img/wester_cp/btn01_bg.png) calc(570/750*100vw) center no-repeat #fff;
		background-size: calc(40/750*100vw) auto;
		font-size: calc(32/750*100vw);
		color: #0074ba;
		font-weight: bold;
		line-height: calc(130/750*100vw);
		text-align: center;
	}*/
	.appli .asei {
		width: calc(634/690*100%);
		margin-left: calc(27/690*100%);
	}

@media screen and (min-width: 801px) {
	
	.cont01 .box {
		border: calc(450/750*6px) solid #e84b5f;
		border-radius: calc(450/750*30px);
		/*
		border: calc(6/750*100vw) solid #004a9e;
		border-radius: calc(30/750*100vw);
		*/
	}
	.cont01 dl dd {
		border-radius: 0 0 calc(450/750*20px) calc(450/750*20px);
	}
	
	.cont02 .cont02_inner .box {
		border: calc(450/750*6px) solid #fcd000;
		border-radius: calc(450/750*30px);
	}
	
	.cont02 .cont02_inner .box hr {
		border-top: calc(450/750*8px) dotted #0074c1;
	}
	
	.cont02 .doublepoint .box {
		border-radius: calc(450/750*30px);
	}
	.cont03 .b_box {
		border: calc(450/750*6px) solid #fcd000;
		border-radius: calc(450/750*20px);
	}
	.cont03 .tab .tabcont li {
		border: calc(450/750*6px) solid #fcd000;
		border-radius: 0 0 calc(450/750*30px) calc(450/750*30px);
	}
	.cont03 .tab .tabcont li .txtbox {
		border-radius: calc(450/750*20px) calc(450/750*20px);
	}
	.cont04 .box {
		border: calc(450/750*6px) solid #004a9e;
		border-radius: calc(450/750*30px);
	}
	.cont04 .box .inner {
		height: calc(450/750*840px);
	}
	
}

@media screen and (min-width: 801px) {
/*モーダルを開くボタン*/
.modal-open01,
.modal-open02{
	cursor: pointer;
}
.modal-open01 img:hover,
.modal-open02 img:hover{
	/*opacity: 0.8;*/
}
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container{
	z-index: 1200;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(100,100,100,50%);
	/*padding: 40px 20px;*/
	overflow-x: auto;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	box-sizing: border-box;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
	opacity: 1;
	visibility: visible;
}
/*モーダル枠の指定*/
.modal-container .modal-body{
	overflow-x: auto;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	/*max-width: 620px;*/
	width: 1200px;
	background: #fff;
	/*margin: 20px 0;*/
	box-sizing: border-box;
}
/*モーダルを閉じるボタンの指定*/
.modal-container .modal-close{
	position: absolute;
	top: 30px;
	right: 30px;
	width: 32px;
	height: auto;
	margin: 0 0 0 0;
	cursor: pointer;
}
.beginner {
	width: 841px;
	margin: 0 auto;
	padding: 55px 0;
	
}

.bnr_area {
	width: 1024px;
	margin: 0 auto;
	padding: 55px 0;
	text-align: left;
	
}
.bnr_area a {
	color: #000000!important;
	
}
.bnr_area .ttl01 {
	margin-bottom: 35px;
	font-size: 25px;
	font-weight: bold;
	color: #0074c1;
	line-height: 1.0;
}
.bnr_area .ttl02 {
	margin-bottom: 15px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.0;
}
.bnr_area ul {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	box-sizing: border-box;
	width: 1046px;
	margin: 0 0 0 -22px;
}
.bnr_area ul li {
	width: 152px;
	margin: 0 0 20px 22px;
}
.bnr_area ul li p {
	margin-top: 5px;
	background: url(../../../../img/campaign/westerfesta/202509/icon_link01.png) right 5px no-repeat;
	background-size: 12px auto;
	font-size: 12px;
	line-height: 1.4;
}
.bnr_area .column01 {
	margin: 0 0 40px 0;
}
.bnr_area .column01.flex02 {
	display: flex;
	justify-content: flex-start;
	
}
.bnr_area .column01.flex02 .ttl02 {
	margin-right: 18px;
}
.bnr_area .column02 {
	display: flex;
	justify-content: flex-start;
}
.bnr_area .column02 ul {
	width: 544px;
}
/*
.bnr_area .column06 {
	display: flex;
	justify-content: flex-start;
}*/
.bnr_area .column01.item01 ul {
	width: 196px;
}
.bnr_area .column01.item01 .flex03 {
	display: flex;
	justify-content: flex-start;
}
.bnr_area .column01.item01 .flex03 .link {
	margin-top: 22px;
}
.bnr_area .link {
	font-size: 15px;
}
.bnr_area .link a {
	color: #00499f!important;
	text-decoration: underline;
}


.modal-container.modal02 .modal-body{
	width: 710px;
}
.modal-container.modal02 .modal-close{
	position: absolute;
	top: 23px;
	right: 23px;
	width: 19px;
}
.modal02_cont {
	padding: 44px 64px;
	
}

.entry {
	display: none;
}	
.entry_start {
	/*display: none;*/
}	


}

@media screen and (max-width: 800px) {

	/*モーダルを開くボタン*/
	.modal-open01,
	.modal-open02{
		cursor: pointer;
	}
	/*モーダル本体の指定 + モーダル外側の背景の指定*/
	.modal-container{
		z-index: 1200;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		text-align: center;
		background: rgba(100,100,100,50%);
		/*padding: 40px 20px;*/
		overflow: auto;
		opacity: 0;
		visibility: hidden;
		transition: .3s;
		box-sizing: border-box;
	}
	/*モーダル本体の擬似要素の指定*/
	.modal-container:before{
		content: "";
		display: inline-block;
		vertical-align: middle;
		height: 100%;
	}
	/*モーダル本体に「active」クラス付与した時のスタイル*/
	.modal-container.active{
		opacity: 1;
		visibility: visible;
	}
	/*モーダル枠の指定*/
	.modal-container .modal-body{
		position: relative;
		display: inline-block;
		vertical-align: middle;
		/*max-width: 620px;*/
		width: calc(670 / 750 * 100%);
	}
	/*モーダルを閉じるボタンの指定*/
	.modal-container .modal-close{
		position: absolute;
		top: 0;
		right: calc(40 / 670 * 100%);
		width: calc(50 / 670 * 100%);
		margin: calc(40 / 670 * 100%) 0 0 0;
		height: auto;
		cursor: pointer;
	}
	/*モーダル内のコンテンツの指定*/
	.modal-container .modal-content{
		/*background: #000000;*/
		/*border-radius: calc(40 / 750 * 100vw);*/
		box-sizing: border-box;
		text-align: center;
		padding: calc(85 / 670 * 100%) 0;
		background: #fff;
	}
	.bnr_area {
		width: calc(573/670*100%);
		margin: 0 auto;
		padding: 0 0;
		text-align: left;
		
	}
	.bnr_area a {
		color: #000000!important;
		
	}
	.bnr_area .ttl01 {
		margin-bottom: calc(35/750*100vw);
		font-size: calc(35/750*100vw);
		font-weight: bold;
		color: #0074c1;
		line-height: 1.0;
	}
	.bnr_area .ttl02 {
		margin-bottom: calc(25/750*100vw);
		font-size: calc(25/750*100vw);
		font-weight: bold;
		line-height: 1.0;
	}
	.bnr_area ul  {
		display: flex;
		justify-content:space-between;
		flex-wrap: wrap;
	}
	.bnr_area ul::after {
		content: "";
		display:block;
		width: calc(133/573*100%);
	}	
	.bnr_area ul::before { 
		content: ""; 
		display:block; 
		width: calc(133/573*100%);
		order: 1;
	}
	.bnr_area ul li {
		width: calc(133/573*100%);
		margin-bottom: calc(30/750*100vw);
	}
	.bnr_area ul li p {
		display: none;
		/*
		margin-top: calc(5/750*100vw);
		font-size: calc(15/750*100vw);
		*/
	}
	.bnr_area .column01 {
		margin: 0 0 calc(30/750*100vw);
	}
	.bnr_area .column02 {
		margin: 0 0 calc(30/750*100vw);
	}
	.bnr_area .column02 .c01 {
		margin: 0 0 calc(30/750*100vw);
	}
	.bnr_area .column01.flex02 {
		display: flex;
		justify-content: flex-start;
		
	}
	.bnr_area .column01.flex02 .ttl02 {
		margin-right: calc(20/750*100vw);
	}
	.bnr_area .column01.item01 ul {
		width: calc(133/573*100%);
	}
	.bnr_area .column01.item01 ul li {
		width: 100%;
	}
	.bnr_area .column01.item01 .flex03 {
		display: flex;
		justify-content: flex-start;
	}
	.bnr_area .column01.item01 .flex03 p {
		margin-top: calc(20/750*100vw);
		margin-left: calc(25/750*100vw);
	}
	.bnr_area .link {
		padding: 0 0 calc(10/750*100vw);
		font-size: calc(23/750*100vw);
		line-height: 1.0;
	}
	.bnr_area .link a {
		color: #00499f!important;
		text-decoration: underline;
	}
	
	.modal-container.modal02 .modal-body{
		position: relative;
		width: calc(590 / 750 * 100%);
	}
	.modal-container.modal02 .modal-close{
		position: absolute;
		top: auto;
		right: 0;
		bottom: 0;
		left: 0;
		width: calc(47 / 590 * 100%);
		margin: 0 auto calc(48 / 590 * 100%);
		height: auto;
		cursor: pointer;
	}
	.modal-container.modal02 .modal-content{
		/*background: #000000;*/
		/*border-radius: calc(40 / 750 * 100vw);*/
		box-sizing: border-box;
		text-align: center;
		padding: 0 0;
		background: #fff;
	}
	.modal02_cont {
		padding: calc(44 / 590 * 100%) 0 calc(180 / 590 * 100%);
		
	}
	
}

