@charset "utf-8";
@import url("/jutaku/common/css/rn03/fonts3.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
/* ****************************************************************************

　目次

-------------------------------------------------------------------------------

　01. モジュール

******************************************************************************* */
#container {
	margin-top: 0;
	padding-bottom: 0;
	font-family: "Noto Sans JP", 'Noto Sans Japanese', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
}
/* ==

　01. モジュール

=============================================================================== */
/* ビジュアル
------------------------------------------------------------------------------- */
.fairVisual01 {
	padding: 0 20px 0 40px;
	position: relative;
	background: url(../images/visual_bg01.jpg) center center no-repeat;
	background-size: cover;
}
.fairVisual01_in {
	position: relative;
	max-width: 976px;
	margin: 0 auto;
	padding: 30px 0 13px;
}
.fairVisual01_tit {
	line-height: 1;
}
.fairVisual01_lead{
	margin-bottom: 22px;
	background: #CCAF65;
	background: linear-gradient(180deg, rgba(204, 175, 101, 1) 0%, rgba(175, 130, 13, 1) 100%);
}
.fairVisual01_lead_in {
	position: relative;
	max-width: 950px;
	margin: 0 auto;
	padding: 21px 0 23px;
}
.fairVisual01_lead p{
	font-size: 200%;
	color: #FFF;
	font-weight: 600;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
}
.fairLead{
	margin: 52px 0 54px;
}
.fairLead_in{
	position: relative;
	max-width: 950px;
	margin: 0 auto;
}
.fairLead p{
	margin-bottom: 31px;
	font-size: 150%;
	font-weight: 500;
	line-height: 1.694;
	color: #000;
	letter-spacing: 0.2em;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
}
.fairLead p:last-child {
	margin-bottom: 0;
}
/* 見出し
------------------------------------------------------------------------------- */
.spHeading01 {
	position: relative;
	line-height: 1;
	max-width: 930px;
	margin: 0 auto;
	padding: 56px 0 0;
	color: #fff;
	font-size: 234%;
	font-weight: 700;
	text-align: center;
}
.spHeading01 > span {
	display: inline-block;
	position: relative;
	padding: 20px 80px 25px;
	border-radius: 50px;
}
.fairArea04-jutaku .spHeading01 > span {
	background-color: #152F68;
}
.fairArea04-bunjo .spHeading01 > span {
	background-color: #720731;
}
.spHeading01 > span::before {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: -24px;
	left: 80px;
	width: 30px;
	height: 25px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.fairArea04-jutaku .spHeading01 > span::before {
	background-image: url(../images/heading_bg05.png);
}
.fairArea04-bunjo .spHeading01 > span::before {
	background-image: url(../images/heading_bg06.png);
}
.spHeading01 > span > span::before {
	content: "";
	display: block;
	position: absolute;
	top: 21px;
	left: 50px;
	width: 25px;
	height: 33px;
	background: url(../images/heading_bg01.png) center center no-repeat;
	background-size: contain;
}
.spHeading01 > span > span::after {
	content: "";
	display: block;
	position: absolute;
	top: 21px;
	right: 50px;
	width: 25px;
	height: 33px;
	background: url(../images/heading_bg02.png) center center no-repeat;
	background-size: contain;
}
.iitPlace01 {
	margin: 49px auto 0;
}
.iitPlace01_in {
	margin: 0 -50px;
	overflow: hidden;
}
.fairArea04-jutaku .iitPlace01_in {
	margin-bottom: -52px;
}
.iitPlace01_tit {
	line-height: 1;
	margin: 0;	
	padding: 15px 0 14px;
	color: #fff;
	font-size: 167%;
	font-weight: 700;
	text-align: center;
}
.fairArea04-jutaku .iitPlace01_tit {
	background-color: #152F68;
}
.fairArea04-bunjo .iitPlace01_tit {
	background-color: #720731;
}
.fairArea04-monitor .iitPlace01_tit {
	background-color: #2B5B37;
}
.iitPlace01_tit::before {
	content: "";
	display: inline-block;
	width: 55px;
	height: 55px;
	margin: 0 20px 0 0;
	background: url(../images/place_bg02.png) center center no-repeat;
	background-size: contain;
	vertical-align: -0.9em;
}
/* エリア情報
------------------------------------------------------------------------------- */
.area01 {
	padding: 26px 15px 32px;
	border-radius: 4px;
	background-color: #F5F5F5;
	overflow: hidden;
}
.area01_navs1 {
	color: #333;
	font-size: 14px; /* oldIE */
	font-size: 0.85rem;
	text-align: center;
	letter-spacing: -0.5em;
}
.area01_nav1 {
	width:10.7857%;
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
}
#hokkaidoTab{ width:11.5%; }
#chubu2Tab{ width:13%; }
.area01_nav1 a,
.area01_nav1 > span {
	display: block;
	position: relative;
	padding: 18px 2% 18px;
	color: #000;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}
.area01_nav1 a:after,
.area01_nav1 > span:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 13px;
	left: 50%;
	width: 6px;
	height: 6px;
	margin: 0 0 0 -4px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #666;
	-webkit-transform:rotate(135deg);
	-ms-transform:rotate(135deg);
	transform:rotate(135deg);
}
.d_hover .area01_nav1 a:hover:after,
.d_hover .area01_nav1 > span:hover:after,
.area01_nav1-current a:after,
.area01_nav1-current > span:after,
.area01_nav1.fnTab_current a:after,
.area01_nav1.fnTab_current > span:after {
	border-color: #EAA960;
}
.d_hover .area01_nav1 a:hover,
.d_hover .area01_nav1 > span:hover {
	color: #EAA960;
}
.area01_nav1-current a,
.area01_nav1-current > span,
.area01_nav1.fnTab_current a,
.area01_nav1.fnTab_current > span {
	background-color: #fff;
	color: #EAA960;
	cursor: default;
}
.fnTab_target {
	display: none !important;
}
.fnTab_target.fnTab_current {
	display: block !important;
}

@media only screen and (max-width: 1150px) {
	.area01_navs1 { padding:0 20px; }
}
/* 地図
------------------------------------------------------------------------------- */
.tMap {
	position: relative;
	max-width:1150px;
	margin: 0 auto;
}
.tMap_img {
	display: block;
	}
.tMap_item {
	position: absolute;
}
/* 北海道 */
.tMap_item-pref1 {
	top: 45%;
	left: 47%;
}
/* 青森 */
.tMap_item-pref2 {
	top: 9%;
	left: 51%;
}
/* 岩手 */
.tMap_item-pref3 {
	top: 32%;
	left: 58%;
}
/* 宮城 */
.tMap_item-pref4 {
	top: 62%;
	left: 54%;
}
/* 秋田 */
.tMap_item-pref5 {
	top: 28%;
	left: 42%;
}
/* 山形 */
.tMap_item-pref6 {
	top: 56%;
	left: 38%;
}
/* 福島 */
.tMap_item-pref7 {
	top: 80%;
	left: 44%;
}
/* 茨城 */
.tMap_item-pref8 {
	top: 26%;
	left: 63%;
}
/* 栃木 */
.tMap_item-pref9 {
	top: 7%;
	left: 52%;
}
/* 群馬 */
.tMap_item-pref10 {
	top: 14%;
	left: 35%;
}
/* 埼玉 */
.tMap_item-pref11 {
	top: 37%;
	left: 42%;
}
/* 千葉 */
.tMap_item-pref12 {
	top: 65%;
	left: 64%;
}
/* 東京 */
.tMap_item-pref13 {
	top: 57%;
	left: 46%;
}
/* 神奈川 */
.tMap_item-pref14 {
	top: 75%;
	left: 43%;
}
/* 新潟 */
.tMap_item-pref15 {
	top: 15%;
	left: 65%;
}
/* 富山 */
.tMap_item-pref16 {
	top: 38%;
	left: 44%;
}
/* 石川 */
.tMap_item-pref17 {
	top: 45%;
	left: 31%;
}
/* 福井 */
.tMap_item-pref18 {
	top: 67%;
	left: 26%;
}
/* 山梨 */
.tMap_item-pref19 {
	top: 58%;
	left: 27%;
}
/* 長野 */
.tMap_item-pref20 {
	top: 59%;
	left: 56%;
}
/* 岐阜 */
.tMap_item-pref21 {
	top: 15%;
	left: 46%;
}
/* 静岡 */
.tMap_item-pref22 {
	top: 50%;
	left: 66%;
}
/* 愛知 */
.tMap_item-pref23 {
	top: 49%;
	left: 47%;
}
/* 三重 */
.tMap_item-pref24 {
	top: 67%;
	left: 36%;
}
/* 滋賀 */
.tMap_item-pref25 {
	top: 24%;
	left: 60%;
}
/* 京都 */
.tMap_item-pref26 {
	top: 18%;
	left: 47%;
}
/* 大阪 */
.tMap_item-pref27 {
	top: 46%;
	left: 44%;
}
/* 兵庫 */
.tMap_item-pref28 {
	top: 26%;
	left: 32%;
}
/* 奈良 */
.tMap_item-pref29 {
	top: 64%;
	left: 55%;
}
/* 和歌山 */
.tMap_item-pref30 {
	top: 77%;
	left: 41%;
}
/* 鳥取 */
.tMap_item-pref31 {
	top: 9%;
	left: 70%;
}
/* 島根 */
.tMap_item-pref32 {
	top: 20%;
	left: 42%;
}
/* 岡山 */
.tMap_item-pref33 {
	top: 42%;
	left: 68%;
}
/* 広島 */
.tMap_item-pref34 {
	top: 52%;
	left: 47%;
}
/* 山口 */
.tMap_item-pref35 {
	top: 67%;
	left: 17%;
}
/* 徳島 */
.tMap_item-pref36 {
	top: 40%;
	left: 66%;
}
/* 香川 */
.tMap_item-pref37 {
	top: 17%;
	left: 58%;
}
/* 愛媛 */
.tMap_item-pref38 {
	top: 38%;
	left: 31%;
}
/* 高知 */
.tMap_item-pref39 {
	top: 53%;
	left: 47%;
}
/* 福岡 */
.tMap_item-pref40 {
	top: 8%;
	left: 59%;
}
/* 佐賀 */
.tMap_item-pref41 {
	top: 14%;
	left: 47%;
}
/* 長崎 */
.tMap_item-pref42 {
	top: 32%;
	left: 46%;
}
/* 熊本 */
.tMap_item-pref43 {
	top: 43%;
	left: 56%;
}
/* 大分 */
.tMap_item-pref44 {
	top: 22%;
	left: 70%;
}
/* 宮崎 */
.tMap_item-pref45 {
	top: 58%;
	left: 68%;
}
/* 鹿児島 */
.tMap_item-pref46 {
	top: 72%;
	left: 55%;
}
/* 沖縄 */
.tMap_item-pref47 {
	top: 64%;
	left: 18%;
}
.tMap_item p {
	line-height: 1;
	margin: 0 0 8px;
	color: #000;
	font-size: 15px; /* oldIE */
	font-size: 1rem;
	text-align: center;
}
.tMap_item li {
	margin: 10px 0 0;
}
.tMap_item li:first-child {
	margin-top: 0;
}
.tMap_item a,
.tMap_item span {
	display: block;
	position: relative;
	line-height: 1.5;
	padding: 3px 32px 4px 21px;
	border: 2px solid #EAA960;
	border-radius: 4px;
	background-color: #fff;
	color: #EAA960;
	font-size: 14px; /* oldIE */
	font-size: 0.88rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}
.d_hover .tMap_item a:hover {
	opacity: 0.6;
}
.tMap_item a:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 14px;
	width: 7px;
	height: 7px;
	margin-top: -5px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
}
.tMap_item .tMap_disable {
	border-color: #999;
	color: #999;
}
.tMap_item .tMap_disable:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 14px;
	width: 8px;
	height: 8px;
	margin-top: -6px;
	border-width: 2px 2px 0 0;
	border-style: solid;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
}




/* 日本地図
------------------------------------------------------------------------------- */
.fSelect {
	max-width: 1150px;
	position: relative;
	margin: 0 auto;
}
.fMap {
	padding: 0;
	background-color: #fff;
	text-align: left;
}
.fMap_in{
	width: 750px;
	height: 465px;
	margin: 0 auto;
	position: relative;
}
.fMap_tit {
	margin: 0 0 0 17px;
	color: #000;
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,Georgia,メイリオ,Meiryo,serif;
	font-size: 200%;
	font-weight: bold;
}
.fMap_map {
	position: absolute;
	top: 58px;
	left: 220px;
	width: 330px;
}
.fMap_area {
	position: absolute;
}
.fMap_area-hokkaido {
	top: 70px;
	left: 564px;
	width: 170px;
}
.fMap_area-tohoku {
	top: 156px;
	left: 480px;
	width: 252px;
}
.fMap_area-kanto {
	top: 246px;
	left: 480px;
	width: 252px;
}
.fMap_area-chubu2 {
	top: 44px;
	left: 55px;
	width: 420px;
}
.fMap_area-chubu {
	top: 370px;
	left: 313px;
	width: 451px;
}
.fMap_area-kinki {
	top: 108px;
	left: 55px;
	width: 336px;
}
.fMap_area-chugoku {
	top: 201px;
	left: 55px;
	width: 252px;
}
.fMap_area-shikoku {
	top: 404px;
	left: 313px;
	width: 451px;
}
.fMap_area-kyushu {
	top: 292px;
	left: 55px;
	width: 168px;
}
.fMap_area p {
	line-height: 17px;
	margin: 0 0 7px;
	font-size: 16px;
	color: #333;
	white-space: nowrap;
}
.fMap_area-chubu p,
.fMap_area-shikoku p {
	float: left;
	width: 95px;
}
.fMap_area p span {
	margin: 0 0 0 2px;
	font-size: 78%;
}
.fMap_area ul {
	font-size: 13px;
}
.fMap_area-chubu ul,
.fMap_area-shikoku  ul {
	float: right;
	width: 356px;
	margin-top: -4px;
}
.fMap_area li {
	float: left;
	width: 69px;
	margin: 0 3px 3px 0;
}
.fMap_area .fMap_first {
	display: none;
}
.fMap_area ul a {
	display: block;
	line-height: 24px;
	padding: 0 0 2px 0;
	background-color: #D59248;
	color: #fff;
	text-align: center;
	text-decoration: none;
	opacity: 1.0;
}
.d_hover .fMap_area ul a:hover {
	opacity: 0.8;
}
.fMap_area:after,
.fMap_area ul:after { content: ''; display: block; clear: both; height: 0; }



/* モーダル
------------------------------------------------------------------------------- */

.gwModal button.mfp-close {
	opacity: 0;
	transition: opacity .3s ease-out;	
}
.gwModal button.mfp-close-show {
	opacity: 1;
}
.gwModal button.mfp-close,
.gwModal button.mfp-close:active {
	position: absolute;
	top: 0;
	right: 0;
	width: 80px;
	max-width: none;
	height: 80px;
	margin: 0 auto;
	background: #004377 url(../images/close_bg01.svg) center center no-repeat;
	background-size: 33px 33px;
}
.mfp-bg.gwModal {
	z-index: 105;
	background: #f5f5f5;
	opacity: 0;
	transition: opacity .2s;
}
.mfp-bg.gwModal.mfp-ready {
	opacity: .95;
}
.mfp-wrap.gwModal {
	z-index: 110;
}
.gwModal .mfp-iframe-scaler {
	overflow: visible;
	padding: 0;
}
.gwModal .mfp-container {
	min-width: 950px;
	padding: 80px 0 70px;
}
.gwModal .mfp-iframe-holder .mfp-content {
	width: 100%;
	max-width: 920px;
	height: 580px;
	margin: 0 0 40px;
	padding: 0;
	box-sizing: border-box;
	overflow: hidden;
	border: none;
	opacity: 0;
	transition: opacity .3s ease-out;
}
.gwModal .mfp-iframe-holder .mfp-content-show {
	opacity: 1;
}
.gwModal .mfp-iframe-scaler iframe {
	top: 70px;
	height: -webkit-calc(100% - 70px);
	height: calc(100% - 70px);
	border-radius: 8px;
}


.popEntry01 {
	max-width: 950px;
	margin: 0 auto;
	padding: 40px;
	color: #222;
	font-family: "Noto Sans JP", 'Noto Sans Japanese', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
	word-break: break-all;
	box-sizing: border-box;
}
.popEntry01_head {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 70px;
	line-height: 1;
	margin: 0;
	color: #004377;
	font-family: "Noto Sans JP", 'Noto Sans Japanese', "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
	font-size: 32px;
	font-weight: 700;
	text-align: center;
}
.popEntry01 a {
	color: #BE1717;
}
.popEntry01_tit {
	line-height: 1.75;
	margin: 33px 0 0;
	font-size: 134%;
	font-weight: 700;
}
.popEntry01_tit:first-child {
	margin-top: 0;
}
.popEntry01_txt {
	line-height: 1.75;
	margin: 0;
	font-size: 134%;
	font-weight: 400;
}
.popEntry01_list {
	line-height: 1.75;
	margin: 0;
	font-size: 134%;
	font-weight: 400;
}
.popEntry01_list li {
	position: relative;
	padding: 0 0 0 18px;
}
.popEntry01_list li::before {
	content: "";
	display: block;
	position: absolute;
	top: 0.45em;
	left: 0;
	width: 16px;
	height: 16px;
	border-radius: 100%;
	background-color: #222;
}




.modReason .mfp-close {
	top: 0;
	right: 0;
	width: 74px;
	height: 74px;
	line-height: 1;
	padding: 0;
	background: url(../images/close_bg03.png) center center no-repeat;
	background-size: 27.5px 27.5px;
	cursor: pointer;
	z-index: 5;
	opacity: 1;
}
.modReason .mfp-iframe-holder .mfp-close:active {
	top: 0;
	right: 0;
}
.mfp-bg.modReason {
	z-index: 105;
	background: #0b0b0b;
	opacity: 0;
	transition: opacity .2s;
}
.mfp-bg.modReason.mfp-ready {
	opacity: .8;
}
.mfp-wrap.modReason {
	z-index: 110;
}
.modReason .mfp-iframe-scaler {
	overflow: visible;
	padding: 0;
}
.modReason .mfp-container {
	min-width: 950px;
	padding: 80px 0 70px;
}
.modReason .mfp-iframe-holder .mfp-content {
	width: 100%;
	max-width: 830px;
	height: 640px;
	margin: 0 0 40px;
	padding: 0;
	box-sizing: border-box;
	border: none;
}
.modReason .mfp-iframe-scaler iframe {
	border: 1px solid #707070;
	border-radius: 27px;	
}
.nPagetop {
	z-index: 50;
}
/* 追加モジュール
------------------------------------------------------------------------------- */
.fairGuide01 {
	margin: 96px 0 60px;
	padding: 0 20px;
}
.fairGuide01_catch1 {
	line-height: 1;
	margin: 0 0 32px;
	font-size: 167%;
	font-weight: 700;
	text-align: center;
}
.fairGuide01_catch1 span {
	display: inline-block;
	padding: 14px 22px;
	border-radius: 24px;
	color: #fff;
}
.fairArea04-jutaku .fairGuide01_catch1 span {
	background-color: #152F68;
}
.fairArea04-bunjo .fairGuide01_catch1 span {
	background-color: #720731;
}
.fairGuide01_catch2 {
	line-height: 1.428;
	margin: 0 -10px 9px;
	color: #000;
	font-size: 200%;
	font-weight: 700;
	text-align: center;
}
.fairArea04-jutaku .fairGuide01_catch2 > span {
	background:linear-gradient(#fff 82%, #D0D5E1 83%, #D0D5E1 99%, #fff 99.5%);
}
.fairArea04-bunjo .fairGuide01_catch2 > span {
	background:linear-gradient(#fff 82%, #D3B2BF 83%, #D3B2BF 99%, #fff 99.5%);
}
.fairGuide01_catch2 > span > span {
	font-size: 40px;
}
.fairGuide01_date {
	display: -webkit-box;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	margin: 29px auto 30px;
	color: #152F68;
	font-size: 200%;
	font-weight: 700;
}
.fairGuide01_date dt {
	width: 5em;
	margin: 0 10px 0 0;
	padding: 2px 0;
	color: #fff;
	border-radius: 11px;
	text-align: center;
}
.fairArea04-jutaku .fairGuide01_date dt {
	background-color: #152F68;
}
.fairArea04-bunjo .fairGuide01_date dt {
	background-color: #720731;
}
.fairArea04-monitor .fairGuide01_date dt {
	background-color: #2B5B37;
}
.fairGuide01_date dd {
	padding: 2px 0;
	color: #000;
}
.fairGuide01_stit {
	position: relative;
	line-height: 1;
	margin: 50px 0 54px;
	font-size: 200%;
	font-weight: 700;
	text-align: center;
}
.fairGuide01_stit::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	height: 2px;
	margin: 2px 0 0;
}
.fairArea04-jutaku .fairGuide01_stit {
	color: #152F68;
}
.fairArea04-jutaku .fairGuide01_stit::before {
	background-color: #152F68;
}
.fairArea04-bunjo .fairGuide01_stit {
	color: #720731;
}
.fairArea04-bunjo .fairGuide01_stit::before {
	background-color: #720731;
}
.fairGuide01_stit span {
	display: inline-block;
	position: relative;
	padding: 0 12px;
	background-color: #fff;
	z-index: 1;
}
.fairGuide01_catch4 {
	line-height: 1.357;
	margin: 0 0 29px;
	font-size: 167%;
	font-weight: 700;
	text-align: center;
}
.fairGuide01_catch4-short {
	margin-top: 65px;
	margin-bottom: 28px;
}
.fairGuide01_catch4-add {
	line-height: 1.19;
	margin-top: 46px;
}
.fairGuide01_catch4 > span,
.fairGuide01_catch4 > div {
	display: block;
	position: relative;
	padding: 10px 20px 12px;
	border-radius: 10px;
	color: #fff;
	text-align: center;
}
.fairArea04-jutaku .fairGuide01_catch4 > span,
.fairArea04-jutaku .fairGuide01_catch4 > div {
	background-color: #152F68;
}
.fairArea04-bunjo .fairGuide01_catch4 > span,
.fairArea04-bunjo .fairGuide01_catch4 > div {
	background-color: #720731;
}
.fairGuide01_catch4-short > span {
	padding: 16px 30px 18px;
}
.fairGuide01_catch4-add > span,
.fairGuide01_catch4-add > div {
	padding: 45px 20px 27px;
}
.fairGuide01_catch4 > span::after,
.fairGuide01_catch4 > div::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: -7px;
	left: 0;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	border-bottom: 0;
}
.fairArea04-jutaku .fairGuide01_catch4 > span::after,
.fairArea04-jutaku .fairGuide01_catch4 > div::after {
	border-top: 8px solid #152F68;
}
.fairArea04-bunjo .fairGuide01_catch4 > span::after,
.fairArea04-bunjo .fairGuide01_catch4 > div::after {
	border-top: 8px solid #720731;
}
.fairGuide01_catch4 > span > span,
.fairGuide01_catch4 > div > span {
	font-size: 28px;
}
.fairGuide01_catch4-add > span > span,
.fairGuide01_catch4-add > div > span {
	font-size: 21px;
}
.fairGuide01_catch5 {
	line-height: 1.32;
	margin: 0 0 20px;
	font-size: 267%;
	font-weight: 700;
	text-align: center;
}
.fairArea04-jutaku .fairGuide01_catch5 {
	color: #152F68;
}
.fairArea04-bunjo .fairGuide01_catch5 {
	color: #720731;
}
.fairComment01 {
	margin: 0 0 44px;
	text-align: center;
}
.fairComment01 > div {
	display: block;
	position: relative;
	padding: 29px 20px 30px;
	border-radius: 10px;
	background-color: #2B5B37;
	color: #fff;
	text-align: center;
}
.fairComment01 > div::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	bottom: -7px;
	left: 0;
	margin: 0 auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	border-top: 8px solid #2B5B37;
	border-bottom: 0;
}
.fairComment01 > div > span {
	font-size: 28px;
}
.fairComment01_txt {
	line-height: 1.357;
	margin: 0;
	font-size: 234%;
	font-weight: 700;
}
.fairGuide01_note1 {
	line-height: 1.714;
	margin: 45px -10px 0 0;
	color: #000;
	font-size: 117%;
	font-weight: 400;
	letter-spacing: -0.02em;
}
.fairGuide01_note1 li {
	margin: 0 0 0 1em;
	text-indent: -1em
}
.fairGuide01_btn1 {
	position: relative;
	line-height: 1;
	margin: 45px 0 0;
	font-size: 117%;
	font-weight: 500;
	text-align: center;
	z-index: 2;
}
.fairGuide01_btn1 a {
	display: inline-block;
	padding: 0 0 7px;
	text-decoration: none;
}
.fairArea04-jutaku .fairGuide01_btn1 a {
	border-bottom: 1px solid #004377;
	color: #004377;
}
.fairArea04-bunjo .fairGuide01_btn1 a {
	border-bottom: 1px solid #720731;
	color: #720731;
}
.fairArea04-monitor .fairGuide01_btn1 a {
	border-bottom: 1px solid #2B5B37;
	color: #2B5B37;
}
.fairGuide01_btn1 a::after {
	content: "";
	display: inline-block;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.fairGuide01_btn1 a::after {
	width: 13px;
	height: 13px;
	margin: 0 0 0 8px;
	background-image: url(../images/arw_bg05.png);
	vertical-align: -0.05em;
}
.fairGuide01_btn1-modal a::after {
	width: 9px;
	height: 9px;
	margin: 0 0 0 12px;
	background-image: url(../images/arw_bg01.png);
	vertical-align: 0.1em;
}
.fairGuide01_note3 {
	line-height: 1.714;
	margin: 9px 0 18px;
	color: #000;
	font-size: 117%;
	font-weight: 400;
	text-align: center;
}
.fairGuide01_note3-cc {
	margin: 20px 0 0;
	padding: 0 0 20px;
}
.fairGuide01_txt1{
	margin-top: 40px;
	font-size: 150%;
	color: #000;
	text-align: center;
}
.fairGuide01_note4 {
	line-height: 1.714;
	margin: 12px 0 0;
	color: #222;
	font-size: 109%;
	font-weight: 400;
	text-align: right;
}
.fairGuide01_pickup1 {
	line-height: 1.1;
	margin: -8px 0 18px;
	color: #2B5B37;
	font-size: 175%;
	font-weight: 700;
	text-align: center;
}
.fairGuide01_pickup1-t2 {
	line-height: 1.25;
	margin-top: -9px;
	margin-bottom: 65px;
}
.fairGuide01_pickup1-t3 {
	line-height: 1.25;
	margin-top: -9px;
	margin-bottom: 15px;
	font-size: 58px;
	font-weight: 900;
	letter-spacing: 0.1em;
}
.fairGuide01_em1 {
	display: inline-block;
	font-size: 97px;
	vertical-align: -0.05em;
}
.fairGuide01_em2,
.fairGuide01_em4 {
	display: inline-block;
	font-size: 28px;
}
.fairGuide01_em3 {
	display: inline-block;
	margin: 15px 0 0;
	font-size: 52px;
}
.fairGuide01_img2 {
	max-width: 875px;
	margin: 41px auto -60px;
}
.fairGuide01_img3 {
	max-width: 765px;
	margin: 0 auto 0;
	text-align: center;
}
.fairGuide01_img4 {
	max-width: 830px;
	margin: 52px auto 15px;
}
.fairGuide03 {
	margin: 66px 0 0;
	border: 1px solid #004377;
	color: #004377;
}
.fairGuide03_head {
	line-height: 1.2;
	padding: 16px 10px;
	border-bottom: 1px solid #004377;
	font-size: 200%;
	font-weight: 700;
	text-align: center;
}
.fairGuide03_head span {
	display: inline-block;
	font-size: 16px;
}
.fairGuide03_body {
	padding: 29px 20px 22px;
}
.fairGuide03_txt {
	line-height: 2.35;
	margin: 0;
	font-size: 134%;
	font-weight: 500;
	text-align: center;
}
.fairGuide03_txt:first-child {
	margin-top: 0;
}
.fairGuide03_img {
	max-width: 771px;
	margin: 25px auto 0;
}
.fairGuide01_btn2 {
	line-height: 1;
	margin: 50px 0 0;
	font-size: 167%;
	font-weight: 700;
	text-align: center;
}
.fairGuide01_btn2 a {
	display: inline-block;
	position: relative;
	min-width: 320px;
	padding: 19px 40px 21px;
	background-color: #C60025;
	color: #fff;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}
.fairGuide01_btn2 a::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 14px;
	width: 13px;
	height: 13px;
	margin: -6px 0 0;
	background: url(../images/arw_bg04.svg) center center no-repeat;
	background-size: contain;
}
.fairGuide01_sub2 {
	font-size: 24px;
}
.fairGuide01_thumb {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	max-width: 782px;
	margin: 43px auto 0;
	font-size: 100%;
}
.fairGuide01_thumb li {
	width: 18.29%;
	max-width: 143px;
}
.fairGuide01_thumb span {
	display: block;
}
.fairGuide01_thumb p {
	line-height: 1.785;
	margin: 9px 0 0;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
}
.fairGuide01_thumb .fairGuide01_fs {
	line-height: 1.5;
	margin: 12px 0 0;
	font-size: 12px;
}







/* アンカーナビ
------------------------------------------------------------------------------- */
.fairNav01 {
	position: relative;
	margin: 104px 0 0;
	color: #000;
}
.fairNav01_in {
	position: relative;
	max-width: 950px;
	margin: 0 auto;
	z-index: 2;
}
.fairNav01_hdArea{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 0 40px;
}

.fairNav01_tit {
	max-width: 362px;
}
.fairNav01_tit img {
}
.fairNav01_txt {
	line-height: 2.0;
	margin: 0;
	font-family: 'Noto Serif JP', serif;	
	font-size: 150%;
	font-weight: 700;
}


/* =====================
  Layout
===================== */
.fairNav01_list{
	min-width: 950px;
	line-height: 1.3;
	margin: 64px auto 0;
	padding:0;
	font-size: 167%;
	list-style:none;
	display:flex;
	gap: 0 25px;
	flex-wrap:wrap;
	justify-content:center;
}
.fairNav01_item{
  --w: 260px;
  --h: 140px;
  --cut: 18px;
  --border: 3px;
  --bandH: 44px;

/*
  width: var(--w);
*/
	width: calc((100% - 50px) / 3);
  height: var(--h);
  position: relative;

  border-radius: 12px;
  background: var(--accent);
  overflow: hidden;
}

@supports (clip-path: polygon(0 0)){
  .fairNav01_item{
    border-radius: 0;
    clip-path: polygon(
      var(--cut) 0,
      calc(100% - var(--cut)) 0,
      100% var(--cut),
      100% calc(100% - var(--cut)),
      calc(100% - var(--cut)) 100%,
      var(--cut) 100%,
      0 calc(100% - var(--cut)),
      0 var(--cut)
    );
  }
}
.fairNav01_item > a.fnAnchorFair{
  position:absolute;
  inset: var(--border);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;

  padding: 0 16px 34px;
  box-sizing:border-box;

  text-align:center;
  font-weight:700;
  letter-spacing:.02em;
  line-height:1.4;
  text-decoration:none;
  color: var(--accent);

  background:
    linear-gradient(var(--band), var(--band)) 0 100% / 100% var(--bandH) no-repeat,
    linear-gradient(180deg, #FFF 0%, #FFF 70%) 0 0 / 100% 100% no-repeat;

  border-radius: 10px;
}

@supports (clip-path: polygon(0 0)){
  .fairNav01_item > a.fnAnchorFair{
    border-radius: 0;
    
    clip-path: polygon(
      calc(var(--cut) - var(--border)) 0,
      calc(100% - (var(--cut) - var(--border))) 0,
      100% calc(var(--cut) - var(--border)),
      100% calc(100% - (var(--cut) - var(--border))),
      calc(100% - (var(--cut) - var(--border))) 100%,
      calc(var(--cut) - var(--border)) 100%,
      0 calc(100% - (var(--cut) - var(--border))),
      0 calc(var(--cut) - var(--border))
    );
  }
}
.fairNav01_item > a.fnAnchorFair::after{
  content:"";
  position:absolute;
  left:50%;
  bottom: 18px;
  transform: translateX(-50%) rotate(45deg);
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

/* =====================
  Color variations
===================== */
.fairNav01_item-jutaku{ --accent:#152E68; --band:#152E68; }
.fairNav01_item-bunjo{ --accent:#581531; --band:#581531; }
.fairNav01_item-seiyaku{ --accent:#264546; --band:#264546; }

@media only screen and (max-width: 990px) {
	.fairNav01_list{
		min-width: 0;
		margin: 64px 20px 0;
	}
}




/* 各キャンペーンエリア
------------------------------------------------------------------------------- */
.fairArea01 {
	position: relative;
	margin: 0;
	padding: 0 0 75px;
	color: #000;
}
.fairArea01::before {
	content: "";
	display: block;
	position: absolute;
	top: 510px;
	right: 0;
	bottom: 0;
	left: 0;
	background-color:#FAF5ED;
	background: radial-gradient(
		ellipse at 50% 20%,
		#FAF5ED 20%,
		#D6CBBA 100%
	);
}
.fairArea01_in {
	position: relative;
	max-width: 950px;
	margin: 0 auto;
	z-index: 2;
}
.fairArea01_note {
	line-height: 2;
	margin: 37px 0 0;
	font-size: 100%;
	font-weight: 400;
}
.fairArea01_note li {
	display: inline;
}
.fairHeading01 {
	max-width: 950px;
	margin: 0 auto;
	padding: 120px 0 0;
	position: relative;
}
.fairHeading01 h2.fairHeading01_tit{
	margin-left: -299px;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 2;
}
.fairHeading01_in{
	position: relative;
}
.fairHeading01_img img{
	border-radius: 10px;
}
.fairHeading01 .fairHeading01_btn01{
	position: absolute;
	left: 87px;
	bottom: 68px;
}
.fairHeading01 .fairHeading01_btn02{
	position: absolute;
	top: 77px;
	right: 66px;
}
.fairHeading01 .fairHeading01_btn01 a,
.fairHeading01 .fairHeading01_btn02 a{
	width: 198px;
	height: 198px;
	border-radius: 150px;
	display: block;
}
.fairHeading01 .fairHeading01_btn01 a:hover,
.fairHeading01 .fairHeading01_btn02 a:hover{
	background-color: rgba(255, 255, 255, 0.3);
}
.fairHeading01 .fairHeading01_btn01 a span,
.fairHeading01 .fairHeading01_btn02 a span{
	text-indent: -9999px;
	display: inline-block;
}

@media only screen and (max-width: 1000px) {
	.fairArea01_note {
		margin: 37px 20px 0;
	}
}
@media only screen and (max-width: 950px) {
	.fairHeading01_img img{
		border-radius: 0;
	}
}


.fairArea02 {
	max-width: 830px;
	margin: 47px auto 67px;
	display: flex;
	justify-content: space-between;
}
.fairArea02_catch {
	line-height: 1.875;
	margin: -3px 0 10px;
	font-size: 200%;
	font-weight: 700;
}
.fairArea02_info{
	width: calc(100% - 407px);
	padding: 0 20px 0 0;
	box-sizing: border-box;
}
.fairArea02_img{
	width: 407px;
}
.fairArea02_img img{
	border-radius: 10px;
}
.fairArea02_txt {
	line-height: 1.9;
	margin: 0;
	font-size: 134%;
	font-weight: 400;
	font-family: 'Noto Serif JP', serif;
}
.fairArea03 {
	margin: 0 0 47px 6%;
	padding: 34px 60px 33px 23.5789%;
	border-radius: 10px;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
}
.fairArea03-reverse {
	margin: 0 6% 100px 0;
	padding: 34px 23.5789% 33px 60px;
	flex-direction: row-reverse;
}

.fairArea03_img {
	/* width: 234px; */
	width: 24.6315%;
	position: absolute;
	top: -36px;
	left: -6%;
}
.fairArea03-reverse .fairArea03_img {
	top: auto;
	bottom: -36px;
	left: auto;
	right: -6%;
}
.fairArea03_img img {
	border-radius: 10px;
}
.fairArea03_info {
	padding-left: 24px;
	border-left: 5px solid #A1835C;
	box-sizing: border-box;
}
.fairArea03_tit {
	line-height: 1.875;
	margin: -2px 0 9px;
	font-size: 200%;
	font-weight: 700;
}
.fairArea03_txt {
	position: relative;
	line-height: 1.9;
	font-family: 'Noto Serif JP', serif;
	box-sizing: border-box;
	z-index: 2;
}
.fairArea03-reverse .fairArea03_txt {
	margin: 0 -30px 0 0;
}

@media only screen and (max-width: 1000px) {
	.fairArea03 {
		margin: 0 20px 47px calc(20px + 6%);
	}
	.fairArea03-reverse {
		margin: 0 calc(20px + 6%) 100px 20px;
	}
}


.fairArea04 {
	position: relative;
	margin: 100px 0 0;
	padding: 0 20px 60px;
	background-color: #D6CBBA;
}
.fairArea04-jutaku{
	margin: 110px 0 0;
}
.fairArea04::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 64px;
	background-color: #fff;
}
.fairArea04-monitor::before {
	height: 100px;
}
.fairArea04_in {
	position: relative;
	max-width: 950px;
	margin: 0 auto;
	z-index: 2;
}
.fairArea04_tit {
	line-height: 1.38;
	margin: 0 auto 65px;
	padding: 7px 0;
	background-color: #FFF;
	border-top: 5px solid #A0835C;
	border-bottom: 5px solid #A0835C;
	color: #000;
	font-size: 350%;
	font-weight: 700;
	text-align: center;
}
.fairArea04_tit > span{
	padding: 31px 10px 30px;
	border-top: 1px solid #A0835C;
	border-bottom: 1px solid #A0835C;
	display: block;
}
.fairArea04_tit-t1 {
	max-width: 597px;
	color: #152F68;
}
.fairArea04_tit-t2 {
	max-width: 597px;
	color: #720731;
}
.fairArea04_tit-t3 {
	max-width: 729px;
	color: #013522;
}
.fairArea05 {
	margin: 50px 0 0;
	padding: 52px 50px;
	border-radius: 30px 30px 0 0;
	background-color: #fff;
}
.fairArea04-monitor .fairArea05 {
	padding-top: 104px;
}


/* タブ
------------------------------------------------------------------------------- */
.fairTab01_head {
	display: flex;
	justify-content: space-between;
	max-width: 830px;
	line-height: 1.1;
	margin: 0 auto 42px;
	font-size: 150%;
	font-weight: 700;
}
.fairTab01_item {
	position: relative;
	width: 47.59%;
	padding: 35px 10px 33px;
	border-radius: 10px;
	background-color: #817A70;
	color: #fff;
	text-align: center;
	box-sizing: border-box;
	cursor: pointer;
}
.fairTab01_item-current {
	background-color: #fff;
	color: #000;
	cursor: default;
}
.fairTab01_item-current::after {
	content: '';
	position: absolute;
	right: 0;
	left: 0;
	bottom: -21px;
	width: 0;
	height: 0;
	margin: 0 auto;
	border-style: solid;
	border-right: 13px solid transparent;
	border-left: 13px solid transparent;
	border-top: 22px solid #fff;
	border-bottom: 0;
}
.fairTab01_btn {
	display: block;
	line-height: 1.2;
	padding: 18px 10px 19px;
	background-color: #C60025;
	color: #fff;
	font-size: 167%;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	position: relative;
}
.fairTab01_btn span{
	display: inline-block;
	position: relative;
}
.fairTab01_btn span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -28px;
	width: 13px;
	height: 13px;
	margin: -6px 0 0;
	background: url(../images/arw_bg04.svg) center center no-repeat;
	background-size: contain;
}
.fairTab01_block {
	display: none;
}
.fairTab01_block-show {
	display: block;
}


.fairTab01_img {
	position: relative;
}
.factGuide01_caption {
	position: absolute;
	right: 12px;
	bottom: 10px;
	font-size: 14px;
	font-weight: 500;
	color: #fff;
}