@charset "UTF-8";

/*------------------------------------------------------------------------------------------
	common
------------------------------------------------------------------------------------------*/
html {font-size: 62.5%;}

.pointPageAll {
	width: 100%;
	color: #333333;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "YuGothic", "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", "Meiryo", Sans-Serif;
	font-size: 1.4rem;
	letter-spacing: normal;
	line-height: 1.5;
}
.pointPageAll * {
	box-sizing: content-box;
}

/* layout, design
------------------------------*/

/* container */
.container {
	width: 100%;
	max-width: 1080px;
	margin: 0px auto;
	box-sizing: border-box;
	position: relative;
}
@media screen and (max-width: 1080px) {
	.container {padding: 0px 15px;}
}
@media screen and (max-width: 767px) {
	.container {padding: 0px 12px;}
}

/* gray bg */
.bg_gray {background: #f0efeb; padding-top: 45px;}
.lower_page .bg_gray {padding: 30px 0px 10px;}
@media screen and (max-width: 767px) {
	.bg_gray {
		padding-top: 0;
	}
	.lower_page .bg_gray {padding: 10px 0px 10px;}
}

/* section title
------------------------------*/
.ttl_section {
	font-family: "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", "Meiryo", Sans-Serif;
	font-weight: normal;
}

/* icon
------------------------------*/
.icon_new {
	color: #ffffff;
	font-size: 1.2rem;
	font-weight: bold;
	background: #e4922a;
	font-style: normal;
	padding: 2px 8px;
}
@media screen and (max-width: 767px) {
	.icon_new {
		font-size: 1.0rem;
		padding: 2px 7px;
	}
}

/* clearfix
------------------------------*/
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/*------------------------------------------------------------------------------------------
	main contents
------------------------------------------------------------------------------------------*/
#contents_main {
	width: 100%;
	margin-right: -300px;
	float: left;
}
#contents_main .inner_contnets_main {
	width: 100%;
	padding-right: 300px;
	float: left;
	box-sizing: border-box;
}
@media screen and (max-width: 1080px) {
#contents_main {margin-right: -255px;}
#contents_main .inner_contnets_main {padding-right: 255px;}
}
@media screen and (max-width: 767px) {
	#contents_main {
		width: 100%;
		margin-right: 0px;
		float: none;
	}
	#contents_main .inner_contnets_main {
		width: 100%;
		padding-right: 0px;
		float: left;
		box-sizing: border-box;
	}
}

/* breadcrumb
------------------------------*/
.breadcrumb {margin-bottom: 12px;}
.breadcrumb,
.breadcrumb a {
	color: #666666;
	font-size: 1.2rem;
	text-decoration: none;
}
@media screen and (max-width: 767px) {
	.breadcrumb {display: none;}
}


/* card list
------------------------------*/
/* type01 */
#contents_main .section_card .list_card_type01 {
	display: flex;
	flex-wrap: wrap;
}
#contents_main .section_card .list_card_type01 .item_list_card_type01 {
	width: 31%;
	list-style-type: none;
	background: #ffffff;
	margin: 0% 3.5% 26px 0%;
}
#contents_main .section_card .list_card_type01 .item_list_card_type01 a {
	text-decoration: none;
}
#contents_main .section_card .list_card_type01 .item_list_card_type01:nth-child(3n) {margin-right: 0%;}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .thumb { position: relative;}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .thumb img {
    max-width: 100%;
    max-height: 100%;
    margin: auto;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    vertical-align: bottom;
}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text {padding: 11px 15px 15px;}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .date,
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .product {
	margin-bottom: 5px;
}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .date,
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .shop,
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .product {
	color: #888888;
	font-size: 1.2rem;
}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .shop {margin-bottom: 5px;}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .date .icon_new,
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .shop .icon_new {
	margin-right: 5px;
}
#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .description {
	color: #333333;
	font-size: 1.4rem;
	line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.lower_page #contents_main .section_card .list_card_type01 .item_list_card_type01 .text .description {
    overflow: visible;
    text-overflow: ellipsis;
    white-space: normal;
}
@media screen and (max-width: 900px) {
	#contents_main .section_card .list_card_type01 .item_list_card_type01 {
		width: 48%;
		margin: 0% 4% 26px 0%;
	}
	#contents_main .section_card .list_card_type01 .item_list_card_type01:nth-child(3n) {margin-right: 4%;}
	#contents_main .section_card .list_card_type01 .item_list_card_type01:nth-child(2n) {margin-right: 0%;}
	#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .date .icon_new {
		line-height: 1;
		display: inline-block;
	}
	#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .description {
	    display: -webkit-box;
	    -webkit-box-orient: vertical;
	    -webkit-line-clamp: 2;
	    white-space: normal;
	}
	.lower_page #contents_main .section_card .list_card_type01 .item_list_card_type01 .text .description {
	    -webkit-box-orient: horizontal;
	}
}
@media screen and (max-width: 767px) {
	#contents_main .section_card .list_card_type01 .item_list_card_type01 {
		width: 47.5%;
		margin: 0% 5% 15px 0%;
	}
	#contents_main .section_card .list_card_type01 .item_list_card_type01:nth-child(3n) {margin-right: 5%;}
	#contents_main .section_card .list_card_type01 .item_list_card_type01:nth-child(2n) {margin-right: 0%;}
	#contents_main .section_card .list_card_type01 .item_list_card_type01 .text {padding: 10px;}
	#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .shop span {
		margin-top: 3px;
		display: block;
	}
	#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .date,
	#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .shop {font-size: 1.1rem;}
	#contents_main .section_card .list_card_type01 .item_list_card_type01 .text .description {font-size: 1.3rem;}
}

/* type02 */
#contents_main .section_card .list_card_type02 {
	display: flex;
	flex-wrap: wrap;
}
#contents_main .section_card .list_card_type02 .item_list_card_type02 {
	width: 48%;
	list-style-type: none;
	line-height: 0;
	background: #ffffff;
	margin: 0% 4% 30px 0%;
	box-sizing: border-box;
}
#contents_main .section_card .list_card_type02 .item_list_card_type02 a {
	text-decoration: none;
	padding: 19px 15px;
	display: block;
}
#contents_main .section_card .list_card_type02 .item_list_card_type02:nth-child(2n) {margin-right: 0%;}
#contents_main .section_card .list_card_type02 .item_list_card_type02 .thumb {
	width: 40.7%;
	display: table-cell;
	/*vertical-align: middle;*/
	vertical-align: top;
}
#contents_main .section_card .list_card_type02 .item_list_card_type02 .thumb img {
	width: 100%;
	vertical-align: bottom;
}
#contents_main .section_card .list_card_type02 .item_list_card_type02 .text {
	width: 68%;
	line-height: 1.7;
	display: table-cell;
	vertical-align: top;
	padding-left: 4.8%;
	box-sizing: border-box;
}
#contents_main .section_card .list_card_type02 .item_list_card_type02 .text .icon {margin-bottom: 5px;}
#contents_main .section_card .list_card_type02 .item_list_card_type02 .text .date {
	color: #888888;
	font-size: 1.2rem;
	margin-bottom: 7px;
}
#contents_main .section_card .list_card_type02 .item_list_card_type02 .text .description {
	color: #333333;
	font-size: 1.4rem;
	line-height: 1.4;
}
@media screen and (max-width: 900px) {
	#contents_main .section_card .list_card_type02 .item_list_card_type02 {
		width: 100%;
		margin: 0% 0% 12px 0%;
	}
}
@media screen and (max-width: 767px) {
	#contents_main .section_card .list_card_type02 .item_list_card_type02 a {padding: 10px;}
	#contents_main .section_card .list_card_type02 .item_list_card_type02 .thumb {
		width: 24.8%;
	}
	#contents_main .section_card .list_card_type02 .item_list_card_type02 .text {
		width: 68%;
		vertical-align: middle;
	}
	#contents_main .section_card .list_card_type02 .item_list_card_type02 .text .icon {float: left;}
	#contents_main .section_card .list_card_type02 .item_list_card_type02 .text .icon + .date {margin: 3px 0px 0px 48px;}
	#contents_main .section_card .list_card_type02 .item_list_card_type02 .text .date {font-size: 1.1rem;}
	#contents_main .section_card .list_card_type02 .item_list_card_type02 .text .description {
		font-size: 1.3rem;
		clear: both;
	}
}

/* notice section
------------------------------*/
#contents_main .section_notices .detail {
	border: 1px solid #dcdcdc;
	background-color: #ffffff;
	padding: 25px 20px;
}
#contents_main .section_notices .detail .list_notice .item_list_notice {
	list-style-type: none;
	margin-bottom: 10px;
}
#contents_main .section_notices .detail .list_notice .item_list_notice:last-child {
	margin-bottom: 0px;
}
#contents_main .section_notices .detail .list_notice .item_list_notice dl {
	display: flex;
}
@media screen and (max-width: 767px) {
	#contents_main .section_notices .detail .list_notice .item_list_notice dl {
		display: block;
	}
}
#contents_main .section_notices .detail .list_notice .item_list_notice dl dt,
#contents_main .section_notices .detail .list_notice .item_list_notice dl dd {
	/*float: left;*/
}
#contents_main .section_notices .detail .list_notice .item_list_notice dl dt {
	font-weight: bold;
	margin-right: 10px;
	white-space: nowrap;
}
#contents_main .section_notices .detail .list_notice .item_list_notice dl dd .icon_new {margin-right: 5px;}
#contents_main .section_notices .detail .list_notice .item_list_notice dl dd a {
	color: #333333;
}
@media screen and (max-width: 767px) {
	#contents_main .section_notices .detail {
		font-size: 1.4rem;
		padding: 15px;
	}
	#contents_main .section_notices .detail .list_notice .item_list_notice dl dt .icon_new {margin-left: 5px;}
}

/*------------------------------------------------------------------------------------------
	header
------------------------------------------------------------------------------------------*/
#header_site {
	border-top: 7px solid #00a290;
	border-bottom: 1px solid #b3b3b3;
	padding: 39px 0px 2px;
	width: 100%;
}
@media screen and (max-width: 767px) {
	#header_site {
		border-top: 4px solid #00a290;
		border-bottom: none;
		padding: 7px 0px 0px;
		-webkit-order: 1;
		    -ms-order: 1;
		        order: 1;
	}
}

.lower_page #block_link_brand {
	display: none;
}

/* left box
------------------------------*/
#header_site .box_left {
	width: 740px;
	float: left;
}
@media screen and (max-width: 767px) {
	#header_site .box_left {
		width: 100%;
		border-bottom: 1px solid #b4b4b4;
		padding: 0px 12px 10px;
		box-sizing: border-box;
		float: none;
	}
}

/* logo */
#header_site .logo {
	margin-bottom: 28px;
	box-sizing: border-box;
	float: left;
    margin-right: 47px;
}
#header_site .logo img {
	width: 132px;
	vertical-align: middle;
}
#header_site .logo_right {display: none;}
@media screen and (max-width: 767px) {
	#header_site .container {padding: 0px}
	#header_site .logo {
		width: 66px;
		margin-bottom: 0px;
		float: left;
		margin-right: auto;
	}
	#header_site .logo img {width: 66px;}
	#header_site .logo_right {
		margin-top: 5px;
		display: block;
		float: right;
	}
}

/* business hours */
#header_site .business_tell {
	color: #4d4d4d;
	margin-bottom: 8px;
}
#header_site .business_tell dt {
	font-weight: bold;
	background: url("../../imgs/icon_tell.png") left center no-repeat;
	margin-right: 10px;
	padding-left: 15px;
	display: inline-block;
}
#header_site .business_tell dd {display: inline-block;}
#header_site .business_tell dd a {color: #4d4d4d;}
@media screen and (max-width: 767px) {
	#header_site .business_tell{display: none;}
}
/* business hours */
#header_site .business_hours {color: #4d4d4d;}
#header_site .business_hours dt {
	font-weight: bold;
	background: url("../../imgs/icon_time.png") left center no-repeat;
	margin-right: 10px;
	padding-left: 15px;
	display: inline-block;
}
#header_site .business_hours dd {display: inline-block;}
#header_site .business_hours dd.info {
	margin-left: 10px;
	padding-right: 10px;
}
#header_site .business_hours dd.first {
	border-right: 1px solid #4d4d4d;
	margin-left: 0px;
}
#header_site .business_hours dd a {color: #4d4d4d;}
@media screen and (max-width: 767px) {
	#header_site .business_hours{display: none;}
}

/* parking situation
------------------------------*/
.parking_situation {
	width: 430px;
	height: 126px;
	border: 1px solid #b3b3b3;
	box-sizing: border-box;
	background-size: contain;
	position: relative;
}
.parking_situation .status {
	width: 9.3023256%;
	position: absolute;
	top: 53.2258065%;
	left: 80%;
	line-height: 0;
}
.parking_situation .status img {
	width: 100%;
	vertical-align: bottom;
}
.parking_situation .bg_status.pc {display: block;}
.parking_situation .bg_status.sp {display: none;}
.parking_situation .bg_status img {
	width: 100%;
	vertical-align: bottom;
}
@media screen and (max-width: 1060px) {
	.parking_situation {
		width: 430px;
		height: 126px;
	}
}
@media screen and (max-width: 960px) {
	.parking_situation {
		width: 430px;
		height: 126px;
	}
}
@media screen and (max-width: 845px) {
	.parking_situation {
		width: auto;
		height: auto;
	}
}
@media screen and (max-width: 767px) {
	.parking_situation {
		width: auto;
		height: auto;
		margin-top: 0px;
		float: none;
	}

}

@media screen and (min-width: 768px) {
	#header_site .parking_situation {
		display: none;
		/*clear: both;*/
		width: 300px;
		height: 88px;
		position: absolute;
		right: 0;
		top: -20px;
		border: none;
	}
}
@media screen and (max-width: 767px) {
	#header_site .parking_situation {
		display: none;
		margin: 10px 30px;
		border: none;
	}
}

/* site navigation
------------------------------*/
#nav_site {
	background: #ffffff;
	margin-bottom: 7px;
	padding-top: 20px;
	clear: both;
}
#nav_site .list_nav_site li {
	width: 14.286%;
	border-left: 1px solid #e8e8e8;
	float: left;
	box-sizing: border-box;
}
#nav_site .list_nav_site li:last-child {
	border-right: 1px solid #e8e8e8;
}
#nav_site .list_nav_site li img {width: 100%;}
#nav_site .list_nav_site li a img {transition: 0.3s}
#nav_site .list_nav_site li a:hover img {opacity: 0.7;}
@media screen and (min-width: 768px) {
	#nav_site {display: block !important;}
}
@media screen and (max-width: 767px) {
	#nav_site {display: none;}
}

/* sp navigation
------------------------------*/
#nav_sp {
	width: 100%;
	left: 0px;
	top: 0px;
	z-index: 9999;
	-webkit-order: 3;
	    -ms-order: 3;
	        order: 3;
}
#nav_sp .wrap_detail_nav_sp {
	position: absolute;
	z-index: 9998;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100vh;
	background: #ffffff;
	overflow: hidden;
	display: none;
}

#nav_sp .detail_nav_sp {
	padding: 57px 16px 100px 16px;
	box-sizing: border-box;
	position: relative;
	z-index: 100000;
}
@media screen and (min-width: 768px) {
	#nav_sp {display: none !important}
}

/* sp menu btn */
#nav_sp #btn_menu_sp {
	text-align: center;
	background: #00a290;
	padding: 6px 0px 5px;
	position: relative;
	z-index: 9999;
}
#nav_sp #btn_menu_sp .text {
	color: #ffffff;
	font-size: 1.8rem;
	letter-spacing: 1px;
	margin-right: 5px;
}
#nav_sp #btn_menu_sp .icon {
	width: 16px;
	height: 15px;
	display: inline-block;
	position: relative;
}
#nav_sp #btn_menu_sp .icon i {
	width: 16px;
	height: 3px;
	background: #ffffff;
	display: block;
	position: absolute;
	left: 0px;
	transition: 0.3s;
}
#nav_sp #btn_menu_sp .icon i:nth-child(1) {top: 0px;}
#nav_sp #btn_menu_sp .icon i:nth-child(2) {top: 6px;}
#nav_sp #btn_menu_sp .icon i:nth-child(3) {top: 12px;}
#nav_sp #btn_menu_sp.open .icon i:nth-child(1) {
	left: 1px;
	top: 2px;
	transform: rotate(45deg);
	transform-origin: 0% 0%;
}
#nav_sp #btn_menu_sp.open .icon i:nth-child(2) {opacity: 0}
#nav_sp #btn_menu_sp.open .icon i:nth-child(3) {
	left: 1px;
	top: 12px;
	transform: rotate(-45deg);
	transform-origin: 0% 100%;
}

/* sp navigation */
#nav_sp #nav_site_sp {margin-bottom: 30px;}
#nav_sp #nav_site_sp .list_nav_site li {border-top: 1px solid #E8E8E8;}
#nav_sp #nav_site_sp .list_nav_site li:last-child {border-bottom: 1px solid #E8E8E8;}
#nav_sp #nav_site_sp .list_nav_site li a {display: block;}
#nav_sp #nav_site_sp .list_nav_site li img {
	width: 100%;
	vertical-align: bottom;
}

/* shopguide */
#nav_sp #section_shopguide .detail .search {margin-bottom: 30px;}
#nav_sp #section_shopguide .detail .search:last-child {margin-bottom: 0px;}
#nav_sp #section_shopguide .detail .search dt {
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 8px;
}

/* floor */
#nav_sp #section_shopguide .detail .search_floor dd .btn_floor {
	width: 47.5%;
	font-size: 1.8rem;
	color: #333333;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	background: #eaeaea;
	padding: 20px 0px;
}
#nav_sp #section_shopguide .detail .search_floor dd .btn_floor:first-child {float: left;}
#nav_sp #section_shopguide .detail .search_floor dd .btn_floor:last-child {float: right;}

/* category */
#nav_sp #section_shopguide .detail .search_category dd .list_category li {
	border-top: 1px solid #eaeaea;
	list-style-type: none;
}
#nav_sp #section_shopguide .detail .search_category dd .list_category li:last-child {border-bottom: 1px solid #eaeaea;}
#nav_sp #section_shopguide .detail .search_category dd .list_category li a {
	font-size: 1.7rem;
	color: #333333;
	text-decoration: none;
	background: url("../../imgs/icon_arrow_right.png") 3px center no-repeat;
	background-size: 7px 9px;
	padding: 12px 0px 11px 23px;
	display: block;
}

/* sp menu btn */
#nav_sp #btn_close_menu_sp {
	color: #ffffff;
	text-align: center;
	letter-spacing: 1px;
	background: #333333;
	margin-top: 20px;
	padding: 10px 0px;
}

/* overlay */
.overlay {
	width: 100%;
	height: 100vh;
	background: rgba(0,0,0,0.5);
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 9998;
	display: none;
}
@media screen and (min-width: 768px) {
	.overlay {display: none !important;}
}

/*------------------------------------------------------------------------------------------
	sidebar
------------------------------------------------------------------------------------------*/
#sidebar {
	width: 240px;
	float: right;
}
@media screen and (max-width: 767px) {
	#sidebar {
		width: 100%;
		float: none;
	}
	.lower_page #sidebar {display: none;}
}

/* shop guide
------------------------------*/
#sidebar #section_shopguide {margin-bottom: 30px;}
#sidebar #section_shopguide .ttl_section {
	font-size: 1.0rem;
	background: url("../../imgs/icon_floor.png") left center no-repeat;
	margin-bottom: 16px;
	padding: 10px 0px 8px 40px;
}
#sidebar #section_shopguide .ttl_section img {
	margin-right: 5px;
}
#sidebar #section_shopguide .detail {
	border: 1px solid #dcdcdc;
	background-color: #ffffff;
	padding: 15px 20px 10px;
}
#sidebar #section_shopguide .detail .search {margin-bottom: 32px;}
#sidebar #section_shopguide .detail .search:last-child {margin-bottom: 0px;}
#sidebar #section_shopguide .detail .search dt {
	font-size: 1.4rem;
	font-weight: bold;
	margin-bottom: 8px;
}

/* floor */
#sidebar #section_shopguide .detail .search_floor dd .btn_floor {
	width: 90px;
	color: #333333;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	background: #eaeaea;
	padding: 12px 0px;
}
#sidebar #section_shopguide .detail .search_floor dd .btn_floor:first-child {float: left;}
#sidebar #section_shopguide .detail .search_floor dd .btn_floor:last-child {float: right;}

/* category */
#sidebar #section_shopguide .detail .search_category dd .list_category li {
	border-top: 1px solid #eaeaea;
	list-style-type: none;
}
#sidebar #section_shopguide .detail .search_category dd .list_category li a {
	color: #333333;
	text-decoration: none;
	background: url("../../imgs/icon_arrow_right.png") left center no-repeat;
	background-size: 5px 6px;
	padding: 7px 0px 6px 15px;
	display: block;
}
@media screen and (max-width: 767px) {
	#sidebar #section_shopguide {display: none;}
}

/* banner
------------------------------*/
#sidebar #section_banner_list .list_banner li {
	list-style: none;
	margin-bottom: 16px;
}
#sidebar #section_banner_list .list_banner li img {
	width: 100%;
	vertical-align: bottom;
}
@media screen and (max-width: 767px) {
	#sidebar #section_banner_list {
		font-size: 0;
		margin-bottom: 12px;
	}
	#sidebar #section_banner_list .list_banner li {
		width: 47.5%;
		margin-bottom: 14px;
		display: inline-block;
		vertical-align: top;
		/*float: left;*/
	}
	#sidebar #section_banner_list .list_banner li:nth-child(2n) {margin-left: 5%;}
}

/*------------------------------------------------------------------------------------------
	pagetop btn
------------------------------------------------------------------------------------------*/
#btn_pagetop {
	cursor: pointer;
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 9999;
	display: none;
}
#btn_pagetop img {
	width: 48px;
	vertical-align: bottom;
}
@media screen and (max-width: 767px) {
	#btn_pagetop {
		right: 5px;
		bottom: 5px;
	}
	#btn_pagetop img {width: 39px;}
}

/*------------------------------------------------------------------------------------------
	footer
------------------------------------------------------------------------------------------*/
#footer_site .logo {float: left;}
#footer_site .link p,
#footer_site .copyright p {
	margin-bottom: 5px;
}
#footer_site .link {
	font-size: 1.2rem;
	margin-top: 20px;
	float: left;
}
#footer_site .link a {
	color: #4d4d4f;
	text-decoration: none;
}
#footer_site .copyright {
	font-size: 1.1rem;
	text-align: right;
	margin-top: 20px;
	float: right;
}
#footer_site .copyright .company_name {
	font-size: 1.3rem;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	#footer_site {border-top: 2px solid #fa0046;}
	#footer_site .link {
		text-align: center;
		margin-top: 7px;
		float: none;
	}
	#footer_site .link p {
		font-size: 1.0rem;
		letter-spacing: -0.03rem;
	}
	#footer_site .link p:first-child {display: none;}
	#footer_site .logo {display: none;}
	#footer_site .copyright {
		font-size: 0.9rem;
		text-align: center;
		letter-spacing: -0.03rem;
		margin-top: 0px;
		float: none;
	}
	#footer_site .copyright .company_name {display: none;}
	#footer_site .copyright .pc {display: none;}
}

/*------------------------------------------------------------------------------------------
	lower page
------------------------------------------------------------------------------------------*/
.lower_page #contents_main .ttl_section {
	font-size: 1.8rem;
	border-top: 2px solid #333333;
	border-bottom: 1px dotted #333333;
	margin-bottom: 42px;
}
@media screen and (max-width: 767px) {
	.lower_page #contents_main .ttl_section {
		font-size: 1.4rem;
		margin-bottom: 12px;
	}
}


/*------------------------------------------------------------------------------------------
	helper classes
------------------------------------------------------------------------------------------*/

.mt00 { margin-top: 0 !important; }
.mt03 { margin-top: 3px !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }
.mt50 { margin-top: 50px !important; }
.mt55 { margin-top: 55px !important; }
.mt60 { margin-top: 60px !important; }
.mt65 { margin-top: 65px !important; }
.mt70 { margin-top: 70px !important; }
.mt75 { margin-top: 75px !important; }
.mt80 { margin-top: 80px !important; }
.mt85 { margin-top: 85px !important; }
.mt90 { margin-top: 90px !important; }
.mt95 { margin-top: 95px !important; }
.mt100 { margin-top: 100px !important; }
.mb00 { margin-bottom: 0 !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb95 { margin-bottom: 95px !important; }
.mb100 { margin-bottom: 100px !important; }
.ml00 { margin-left: 0 !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }
.ml45 { margin-left: 45px !important; }
.ml50 { margin-left: 50px !important; }
.ml55 { margin-left: 55px !important; }
.ml60 { margin-left: 60px !important; }
.ml65 { margin-left: 65px !important; }
.ml70 { margin-left: 70px !important; }
.ml75 { margin-left: 75px !important; }
.ml80 { margin-left: 80px !important; }
.ml85 { margin-left: 85px !important; }
.ml90 { margin-left: 90px !important; }
.ml95 { margin-left: 95px !important; }
.ml100 { margin-left: 100px !important; }
.mr00 { margin-right: 0 !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.mr45 { margin-right: 45px !important; }
.mr50 { margin-right: 50px !important; }
.mr55 { margin-right: 55px !important; }
.mr60 { margin-right: 60px !important; }
.mr65 { margin-right: 65px !important; }
.mr70 { margin-right: 70px !important; }
.mr75 { margin-right: 75px !important; }
.mr80 { margin-right: 80px !important; }
.mr85 { margin-right: 85px !important; }
.mr90 { margin-right: 90px !important; }
.mr95 { margin-right: 95px !important; }
.mr100 { margin-right: 100px !important; }
.pt00 { padding-top: 0 !important; }
.pt05 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt35 { padding-top: 35px !important; }
.pt40 { padding-top: 40px !important; }
.pt45 { padding-top: 45px !important; }
.pt50 { padding-top: 50px !important; }
.pt55 { padding-top: 55px !important; }
.pt60 { padding-top: 60px !important; }
.pt65 { padding-top: 65px !important; }
.pt70 { padding-top: 70px !important; }
.pt75 { padding-top: 75px !important; }
.pt80 { padding-top: 80px !important; }
.pt85 { padding-top: 85px !important; }
.pt90 { padding-top: 90px !important; }
.pt95 { padding-top: 95px !important; }
.pt100 { padding-top: 100px !important; }
.pb00 { padding-bottom: 0 !important; }
.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb35 { padding-bottom: 35px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb45 { padding-bottom: 45px !important; }
.pb50 { padding-bottom: 50px !important; }
.pb55 { padding-bottom: 55px !important; }
.pb60 { padding-bottom: 60px !important; }
.pb65 { padding-bottom: 65px !important; }
.pb70 { padding-bottom: 70px !important; }
.pb75 { padding-bottom: 75px !important; }
.pb80 { padding-bottom: 80px !important; }
.pb85 { padding-bottom: 85px !important; }
.pb90 { padding-bottom: 90px !important; }
.pb95 { padding-bottom: 95px !important; }
.pb100 { padding-bottom: 100px !important; }
.pl00 { padding-left: 0 !important; }
.pl05 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }
.pl35 { padding-left: 35px !important; }
.pl40 { padding-left: 40px !important; }
.pl45 { padding-left: 45px !important; }
.pl50 { padding-left: 50px !important; }
.pl55 { padding-left: 55px !important; }
.pl60 { padding-left: 60px !important; }
.pl65 { padding-left: 65px !important; }
.pl70 { padding-left: 70px !important; }
.pl75 { padding-left: 75px !important; }
.pl80 { padding-left: 80px !important; }
.pl85 { padding-left: 85px !important; }
.pl90 { padding-left: 90px !important; }
.pl95 { padding-left: 95px !important; }
.pl100 { padding-left: 100px !important; }
.pr00 { padding-right: 0 !important; }
.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pr35 { padding-right: 35px !important; }
.pr40 { padding-right: 40px !important; }
.pr45 { padding-right: 45px !important; }
.pr50 { padding-right: 50px !important; }
.pr55 { padding-right: 55px !important; }
.pr60 { padding-right: 60px !important; }
.pr65 { padding-right: 65px !important; }
.pr70 { padding-right: 70px !important; }
.pr75 { padding-right: 75px !important; }
.pr80 { padding-right: 80px !important; }
.pr85 { padding-right: 85px !important; }
.pr90 { padding-right: 90px !important; }
.pr95 { padding-right: 95px !important; }
.pr100 { padding-right: 100px !important; }

/* rem */
.fz10 { font-size: 1.0rem !important; }
.fz11 { font-size: 1.1rem !important; }
.fz12 { font-size: 1.2rem !important; }
.fz13 { font-size: 1.3rem !important; }
.fz14 { font-size: 1.4rem !important; }
.fz15 { font-size: 1.5rem !important; }
.fz16 { font-size: 1.6rem !important; }
.fz17 { font-size: 1.7rem !important; }
.fz18 { font-size: 1.8rem !important; }
.fz19 { font-size: 1.9rem !important; }
.fz20 { font-size: 2.0rem !important; }
.fz21 { font-size: 2.1rem !important; }
.fz22 { font-size: 2.2rem !important; }
.fz23 { font-size: 2.3rem !important; }
.fz24 { font-size: 2.4rem !important; }
.fz25 { font-size: 2.5rem !important; }
.fz26 { font-size: 2.6rem !important; }
.fz27 { font-size: 2.7rem !important; }
.fz28 { font-size: 2.8rem !important; }
.fz29 { font-size: 2.9rem !important; }
.fz30 { font-size: 3.0rem !important; }
.fz31 { font-size: 3.1rem !important; }
.fz32 { font-size: 3.2rem !important; }
.fz33 { font-size: 3.3rem !important; }
.fz34 { font-size: 3.4rem !important; }
.fz35 { font-size: 3.5rem !important; }
.fz36 { font-size: 3.6rem !important; }
.fz37 { font-size: 3.7rem !important; }
.fz38 { font-size: 3.8rem !important; }
.fz39 { font-size: 3.9rem !important; }
.fz40 { font-size: 4.0rem !important; }

.lh00 { line-height: 0 !important; }
.lh11 { line-height: 1.1 !important; }
.lh12 { line-height: 1.2 !important; }
.lh13 { line-height: 1.3 !important; }
.lh14 { line-height: 1.4 !important; }
.lh15 { line-height: 1.5 !important; }
.lh16 { line-height: 1.6 !important; }
.lh17 { line-height: 1.7 !important; }
.lh18 { line-height: 1.8 !important; }
.lh19 { line-height: 1.9 !important; }
.lh20 { line-height: 2.0 !important; }
.lh21 { line-height: 2.1 !important; }
.lh22 { line-height: 2.2 !important; }
.lh23 { line-height: 2.3 !important; }
.lh24 { line-height: 2.4 !important; }
.lh25 { line-height: 2.5 !important; }

.ta-c { text-align: center; }
.ta-l { text-align: left; }
.ta-r { text-align: right; }
.dy-n { display: none; }
.dy-b { display: block; }
.dy-ib { display: inline-block; }
.dy-i { display: inline; }
.fl-l { float: left; }
.fl-r { float: right; }
.va-m { vertical-align: middle; }
.va-bl { vertical-align: baseline; }
.va-t { vertical-align: top; }
.va-b { vertical-align: bottom; }
.td-u { text-decoration: underline; }