@charset "utf-8";
/***************************************************************************************
------------------------------
common
------------------------------
*****************************/

@media screen and (min-width: 600px) {
	.sp_only {
		display: none !important;
	}

	.btn_box.btn_s {
		width: 360px;
	}

	.col_3 {
		overflow: hidden;
	}

	.col_3 .col_item {
		width: 31.5%;
		margin-right: 2.75%;
		float: left;
	}
	.col_3 .col_item:nth-child(3n) {
		margin-right: 0;
		margin-bottom: 0;
	}
	.col_3 .col_item:nth-child(3n+1) {
		clear: both;
	}
	.basic_box .col_item {
		display: block;
		float: left;
	}
	.col_4.basic_box .col_item {
		width: 23.5%;
		margin-right: 2%;
	}
	.col_4.basic_box .col_item:nth-of-type(4n) {
		margin-right: 0;
	}
	.col_4.basic_box .col_item:last-child {
		float: left;
	}


	.sec_block .crosswise_evenbox > .box:nth-of-type(n + 3) {
		margin-top: 15px;
	}

	/* shop_data_box */
	.sec_block .shop_data_box .crosswise_oddbox > .box:nth-of-type(2n + 1) {
		width: 49%;
		max-width: 588px;
	}

	.sec_block .shop_data_box .crosswise_oddbox > .box:nth-of-type(2n) {
		width: 49%;
		max-width: 588px;
	    margin-left: 20px;
	}

	.sec_block .shop_data_box .content_box + .content_box {
	    margin-top: 40px;
	}

}

/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
    TOP
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/
@media screen and (min-width: 600px) {
	#contents .col_4.box_3,
	#contents .col_4.box_2col {
		width: 48.541666666%;
		display: inline-block;
	}
	#contents .col_4.box_2col .col_item:last-child {
		margin-right: 0;
	}
	#contents .col_4.box_2col .col_item,
	#contents .col_4.box_3 .col_item {
		width: 47.096774193%;
	}
	#contents .col_4.box_3 .col_2 .col_item {
		width: 100%;
	}
	#contents .col_4.box_3.last,
	#contents .col_4.box_1,
	#contents .col_4.box_4 .col_item {
		width: 22.8125%;
	}
	#contents .col_4.box_3.last {
		margin-left: 2.91666666%;
	}
	#contents .col_4.box_3.last .col_item,
	#contents .col_4.box_1 .col_item {
		width: 100%;
		display: block;
	}
	#contents .col_small .col_item {
		width: 14.0625%;
		margin-right: 0.96%;
	}
	#contents .col_small .col_item:last-child {
		width: 21.875%;
		margin-right: 0;
		float: right;
	}
	#contents .col_small .col_item img {
		width: 100%;
	}

	.col_4 .col_item {
		margin-right: 2.516666666%;
	}
	.col_4 .col_item:last-child {
		margin-right: 0;
		float: right;
	}

	/*grallry*/
	.js_lightbox .col_item {
		position: relative;
		padding-top: 17%;
	}

	.js_lightbox img {
	    object-fit: cover;
	    width: 100%;
	    height: 100%;
	    position: absolute;
	    top: 0;
	    left: 0;
	   font-family: 'object-fit: cover;';
	    -webkit-backface-visibility: visible;
	    backface-visibility: visible;
}

}

/*pc tb*/
@media screen and (min-width: 600px) {

.archive_link {
	transition: 0.3s;
}

.archive_link:hover {
	opacity: 0.7;
}

#foodcourt {
	overflow: hidden;
	padding-top: 80px;
}

.fc_content_area {
	padding-bottom: 60px;
}

#suite02 {
	background-image: url(../img/fc/fc_bg01_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top;
}

#suite03 {
	background-image: url(../img/fc/fc_bg02_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top;
}

#suite04 {
	background-image: url(../img/fc/fc_bg03_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top;
}

#suite05 {
	background-image: url(../img/fc/fc_bg04_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top 12px;
}


#suite06 {
	background-image: url(../img/fc/fc_bg05_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top 24px;
}

#suite07 {
	background-image: url(../img/fc/fc_bg06_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top 100px;
}

#suite08 {
	background-image: url(../img/fc/fc_bg07_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top 105px;
}

#suite09 {
	background-image: url(../img/fc/fc_bg08_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left bottom;
}

/*#suite10 {
	background-image: url(../img/fc/fc_bg09_pc.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: left top;
}*/

#suite11 {
	background-image: url(../img/fc/fc_bg09_pc.png),url(../img/fc/fc_bg10_pc.png);
	background-repeat: no-repeat,no-repeat;
	background-size: 100% auto, 100% auto;
	background-position: left top 15px, left bottom;
}

#suite11 .item_detail_inner {
	position: relative;
	padding-bottom: 190px;
}

#suite11 .item_detail_inner .protruding_img {
	position: absolute;
    width: 430px;
    bottom: -40px;
    right: -3px;
}

.fc_content_end {
	position: relative;
}

.fc_content_end .op00 {
	opacity: 0;
}

.fc_content_end .content_end_inner {
	position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: #555555;
}

.fc_content_end .content_end_inner img {
	margin: -15px auto;
}

.fc_btn_box {
	max-width: 750px;
    margin: 50px auto 40px;
}

.fc_btn_box .btn {
    width: 100%;
    margin-bottom: 0;
}

.fc_btn_box .btn_col01 .btn {
    width: 100%;
    font-size: 24px;
}

.fc_btn_box .btn_col01 .btn a {
    font-size: 24px;
    padding: 30px 20px;
}

.fc_btn_box .btn_col02 {
    margin-top: 25px;
    overflow: hidden;
}

.fc_btn_box .btn_col02 .btn_box {
    width: 48%;
    float:left;
}

.fc_btn_box .btn_col02 .btn_box:nth-of-type(2n) {
    margin-left: 4%;
}

.fc_btn_box .btn_col02 .btn_box:nth-of-type(n+3) {
    margin-top: 25px;
}

.fc_btn_box .btn_col02 .btn_box:nth-of-type(2n + 3) {
    clear: both;
}

.fc_btn_box .btn_col02 .btn a {
    font-size: 18px;
    padding: 30px 20px;
}

.fc_btn_box .btn_box .btn a:after {
	width: 10px;
	height: 10px;
}

.gallery_page .photo_list .photo_item img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    font-family: 'object-fit: cover;';
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
}

.gallery_page .movie_item.item_full {
	width: 100%;
}

.gallery_page .movie_item.item_full + .item_full {
	margin-top: 2%;
}

.gallery_page .movie_item.item_full + .movie_item {
	margin-top: 2%;
}

.article_page .ttl_lv02 {
	margin-bottom: 60px;
}

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
	max-width: 1200px;
}

}


/* pc */
@media screen and (min-width: 1241px) {

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite02 {
		padding-top: 57px;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite02 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite02 .fc_item_detail {
		padding-top: 102px;
		left: 50px;
		right: auto;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite03
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite03 {
		padding-top: 154px;
		padding-bottom: 0;
		margin-top: -65px;
	}

	#suite03 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite03 .fc_item_detail {
		padding-top: 130px;
		left: auto;
		right: 20px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite04
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite04 {
		padding-top: 111px;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite04 .fc_item_img {
		padding-top: 5px;
		left: auto;
		right: 60px;
	}

	#suite04 .fc_item_detail {
		padding-top: 0;
		left: 58px;
		right: auto;
	}

	#suite04 .item_detail_inner {
		padding-right: 130px;
		padding-bottom: 20px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite05
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite05 {
		padding-top: 97px;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite05 .fc_item_img {
		padding-top: 0;
		left: 134px;
		right: auto;
	}

	#suite05 .fc_item_detail {
		padding-top: 70px;
		left: auto;
		right: auto;
	}

	#suite05 .item_detail_inner {
		padding-left: 150px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite06
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite06 {
		padding-top: 110px;
		padding-bottom: 110px;
		margin-top: 0;
	}

	#suite06 .fc_item_img {
		padding-top: 5px;
		left: auto;
		right: 134px;
	}

	#suite06 .fc_item_detail {
		padding-top: 0px;
		left: auto;
		right: auto;
	}

	#suite06 .item_detail_inner {
		padding-right: 135px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite07
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite07 {
		padding-top: 0;
		padding-bottom: 90px;
		margin-top: 0;
	}

	#suite07 .fc_item_img {
		margin-top: -20px;
		padding-top: 0px;
		left: 126px;
		right: auto;
	}

	#suite07 .fc_item_detail {
		padding-top: 50px;
		left: auto;
		right: 50px;
	}

	#suite07 .item_detail_inner {
		padding-left: 200px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite08
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite08 {
		padding-top: 0;
		padding-bottom: 110px;
		margin-top: 0;
	}

	#suite08 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite08 .fc_item_detail {
		padding-top: 180px;
		left: 124px;
		right: auto;
	}

	#suite08 .item_detail_inner {
		padding-right: 130px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite09
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite09 {
		padding-top: 0;
		padding-bottom: 40px;
		margin-top: 0;
	}

	#suite09 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite09 .fc_item_detail {
		width: 38%;
	}

	#suite09 .fc_item_detail {
		padding-top: 0;
		left: auto;
		right: 165px;
	}

	#suite09 .item_detail_inner {
		padding-left: 60px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite10
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite10 {
		padding-top: 70px;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite10 .fc_item_img {
		padding-top: 5px;
		left: auto;
		right: 60px;
	}

	#suite10 .fc_item_detail {
		padding-top: 0;
		left: 60px;
		right: auto;
	}

	#suite10 .item_detail_inner {
		padding-right: 130px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite11
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite11 {
		padding-top: 112px;
		padding-bottom: 90px;
		margin-top: 0;
	}

	#suite11 .fc_item_img {
		padding-top: 0;
		left: 135px;
		right: auto;
	}

	#suite11 .fc_item_detail {
		width: 40%;
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite11 .item_detail_inner {
		padding-left: 60px;
	}

}

/* tb */
@media screen and (min-width: 600px) and (max-width: 1240px) {

	.fc_item .category_ttl {
	    font-size:  15px;
	}

	.fc_item .item_desc {
	    margin-top: 10px;
	    font-size:  13px;
	}

	.fc_item .item_detail_ttl {
	    font-size:  24px;
	    margin-top: 3px;
	}

	.fc_item dl {
	    margin-top: 10px;
	    font-size:  16px;
	}
	.fc_item dl dd p,
	.fc_item dl dd,
	.fc_item dl dt {
	    font-size:  14px;
	}

	.fc_item dl dd span {
		font-size: 12px;
	}

	.fc_item_detail .item_detail_inner {
	    padding: 30px 30px 15px 30px;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite02
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite02 {
		padding-top: 4.6vw;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite02 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite02 .fc_item_detail {
		padding-top: 8.2vw;
		left: 4vw;
		right: auto;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite03
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite03 {
		padding-top: 12.4vw;
		padding-bottom: 0;
		margin-top: -5.2vw;
	}

	#suite03 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite03 .fc_item_detail {
		padding-top: 10.4vw;
		left: auto;
		right: 1.6vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite04
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite04 {
		padding-top: 9vw;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite04 .fc_item_img {
		padding-top: 5px;
		left: auto;
		right: 60px;
	}

	#suite04 .fc_item_detail {
		padding-top: 0;
		left: 4.7vw;
		right: auto;
	}

	#suite04 .item_detail_inner {
		padding-right: 13.4vw;
		padding-bottom: 1.6vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite05
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite05 {
		padding-top: 7.8vw;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite05 .fc_item_img {
		padding-top: 0;
		left: 10.8vw;
		right: auto;
	}

	#suite05 .fc_item_detail {
		padding-top: 5.6vw;
		left: auto;
		right: auto;
	}

	#suite05 .item_detail_inner {
		padding-left: 12vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite06
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite06 {
		padding-top: 8.8vw;
		padding-bottom: 8.8vw;
		margin-top: 0;
	}

	#suite06 .fc_item_img {
		padding-top: 5px;
		left: auto;
		right: 10.8vw;
	}

	#suite06 .fc_item_detail {
		padding-top: 0px;
		left: auto;
		right: auto;
	}

	#suite06 .item_detail_inner {
		padding-right: 10.8vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite07
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite07 {
		padding-top: 0;
		padding-bottom: 7.2vw;
		margin-top: 0;
	}

	#suite07 .fc_item_img {
		margin-top: -1.6vw;
		padding-top: 0px;
		left: 10.1vw;
		right: auto;
	}

	#suite07 .fc_item_detail {
		padding-top: 4vw;
		left: auto;
		right: 4vw;
	}

	#suite07 .item_detail_inner {
		padding-left: 16vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite08
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite08 {
		padding-top: 0;
		padding-bottom: 8.9vw;
		margin-top: 0;
	}

	#suite08 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite08 .fc_item_detail {
		padding-top: 14.5vw;
		left: 10vw;
		right: auto;
	}

	#suite08 .item_detail_inner {
		padding-right: 10.4vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite09
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite09 {
		padding-top: 0;
		padding-bottom: 3.2vw;
		margin-top: 0;
	}

	#suite09 .fc_item_img {
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite09 .fc_item_detail {
		width: 38%;
	}

	#suite09 .fc_item_detail {
		padding-top: 0;
		left: auto;
		right: 13.3vw;
	}

	#suite09 .item_detail_inner {
		padding-left: 5.8vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite10
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite10 {
		padding-top: 5.6vw;
		padding-bottom: 0;
		margin-top: 0;
	}

	#suite10 .fc_item_img {
		padding-top: 5px;
		left: auto;
		right: 4.8vw;
	}

	#suite10 .fc_item_detail {
		padding-top: 0;
		left: 4.8vw;
		right: auto;
	}

	#suite10 .item_detail_inner {
		padding-right: 10.4vw;
	}

	/*____________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	suite11
	______________________________
	^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
	#suite11 {
		padding-top: 9vw;
		padding-bottom: 7.2vw;
		margin-top: 0;
	}

	#suite11 .fc_item_img {
		padding-top: 0;
		left: 10.8vw;
		right: auto;
	}

	#suite11 .fc_item_detail {
		width: 40%;
		padding-top: 0;
		left: auto;
		right: auto;
	}

	#suite11 .item_detail_inner {
		padding-left: 4.8vw;
	}

	#suite11 .item_detail_inner {
		padding-bottom: 15vw;
	}

	#suite11 .item_detail_inner .protruding_img {
		width: 90%;
		bottom: -3vw;
		right: 0;
	}

	.fc_btn_box .btn_col01 .btn a {
	    font-size: 20px;
	    padding: 30px 20px;
	}

	.fc_btn_box .btn_col02 .btn a {
	    font-size: 16px;
	    padding: 30px 20px;
	}

}


/* tb */
@media screen and (min-width: 600px) and (max-width: 1039px) {
	.table_scroll:before {
	content: '※横スクロールで全体を見ることができます。';
	}

	.article_page .content_block {
	    width: calc(100% - 250px);
	}

	.article_page .archive_block {
	    width: 220px;
	}

	.arrow_list a {
	    font-size: 13px;
	    padding-left: 1.2em;
	}

	.arrow_list a:before {
		width: 6px;
		height: 6px;
		top: 7px;
	}

	.article_page .year_archive_box + .year_archive_box {
		margin-top: 25px;
	}

}

/* 特殊 */
@media screen and (min-width: 940px) {

	.module_banner > a {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: row-reverse;
		-ms-flex-direction: row-reverse;
		-webkit-box-orient: row-reverse;
		-webkit-box-direction: row-reverse;
		flex-direction: row-reverse;
		overflow: hidden;
	}

	.module_banner .mod_image {
		width: 45%;
	}
	.module_banner .mod_text {
		width: 55%;
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-ms-flex-align: center;
		-webkit-box-align: center;
		-webkit-align-items: center;
		align-items: center;
		padding: 0 60px;
	}
}
/*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
    TOP
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*/