@charset "UTF-8";

/**
 * メインページ用css
 */

main {
	overflow:unset;
}
main > #contents{
	overflow:hidden;
}
/*=================================================
 * CSS for PC
 * ================================================= */

.contentsSection {
	/*padding: 40px 0;*/
		position:relative;
}
#parts_container1 .contentsSection,
#parts_container2 .contentsSection,
#parts_container3 .contentsSection{
	margin-bottom:0px;
}
#contents [class*=contentsBlock-],
#contents [class*=twoColumnContentsBlock-]{
	position:relative;
	padding-top:0.1px;
	padding-bottom:0.1px;
}
.contentsSection > div {
	/*width: 1120px;*/
	width:100%;
	margin: 0 auto;
}


/** img_up **/

#img_bg {
	width: 1120px;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#imgup {}

#sp_slide .bx-wrapper {
	position: relative;
}



/** rank **/

#rank {
	position: relative;
	font-size: 0;
	line-height: 0;
	text-align: center;
}

#rank h2 {
	margin: 0;
}

#rank .rank_in {
	padding: 40px 0;
	border-left-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#rank li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	padding: 10px 0 0 0;
}

#rank .rankbox .img {
	overflow: hidden;
	width: 140px;
	margin: 0 auto;
}

#rank .rankbox .img a > img {
	width: 140px;
	height: 187px;
}

#rank .rankbox .img a {}

#rank .rankbox .textBlock {
	font-size: 14px;
	line-height: 18px;
	text-align: center;
	padding: 7px 0;
}

#rank .rankbox .textBlock br {
	display: none;
}

#rank .rankbox .rankno {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 30px);
	font-size: 14px;
	font-weight: normal;
	line-height: 22px;
	text-align: center;
	border-radius: 12px;
	position: absolute;
	top: 168px;
	left: 15px;
}

#rank .rankbox .rankno span {
	font-size: 20px;
}


/** maga **/

#maga {
	clear: left;
	display: table;
	text-align: left;
	vertical-align: top;
	min-height: 80px;
	margin-bottom: 40px;
}

#maga:last-child {
	margin-bottom: 0;
}

#maga_l {
	display: table-cell;
	vertical-align: middle;
	width: 200px;
	font-size: 12px;
	text-align: center;
	padding-top: 2px;
}

#maga_l em {
	display: inline-block;
	font-size: 20px;
	line-height: 20px;
}

#maga_l em span {
	display: none;
}

#maga_r {
	display: table-cell;
	vertical-align: top;
	font-size: 0;
	line-height: 0;
	padding: 25px 40px 40px 40px;
	border-top-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#maga_r p {
	font-size: 14px;
	line-height: 20px;
	margin: 0 0 20px 0;
}

#maga_r div {
	display: inline-block;
	vertical-align: top;
}

#maga_r a.bt,
#maga_r input.bt[type="submit"] {
	width: 120px;
	height: 40px;
	display: inline-block;
	vertical-align: top;
	font-size: 15px;
	font-weight: bold;
	line-height: 40px;
	margin-right: 10px;
	padding: 0;
	border-radius: 3px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	font-family: Meiryo, "MS PGothic", Osaka, sans-serif;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#maga_r .linkListWrap a.bt {
	width: 230px;
	text-align: center;
}

#maga_r a.bt:hover,
#maga_r input.bt[type="submit"]:hover {
	cursor: pointer;
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
}

#maga_r input[type="email"] {
	width: 400px;
	height: 40px;
	margin-right: 10px;
	padding: 5px;
	font-size: 14px;
	font-family: Meiryo, "MS PGothic", Osaka, sans-serif;
	line-height: 30px;
	border-width: 1px;
	border-style: solid;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


/** rss **/

#rss {
	clear: left;
	display: table;
	text-align: left;
	vertical-align: top;
	margin-bottom: 40px;
}

#rss:last-child {
	margin-bottom: 0;
}

#rss_l {
	display: table-cell;
	vertical-align: middle;
	width: 200px;
	font-size: 12px;
	text-align: center;
	padding-top: 5px;
}

#rss_l em {
	display: inline-block;
	font-size: 20px;
	line-height: 20px;
}

#rss_r {
	display: table-cell;
	vertical-align: top;
	font-size: 0;
	line-height: 0;
	padding: 20px 40px 40px 20px;
	border-top-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#rss_r a {
	display: inline-block;
	width: calc(50% - 20px);
	line-height: 20px;
	margin-left: 20px;
	padding: 10px 0;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
}

#rss_r a em {
	display: inline-block;
	vertical-align: top;
	width: 160px;
	font-size: 13px;
}

#rss_r a span {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 160px);
	font-size: 13px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
}


/** wid **/
.wid_in {
	border-left-width: 1px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/** body **/
/* 背景1 */
																
																
body:after{
	content:unset;
}
#pageBg1 {
	position:relative;
	height:100%;
	top:0;
	left:0;
	z-index:-1;
	pointer-events:none;
		max-height:100%;
	overflow:hidden;
}
#pageBg1:after {
	content:'';
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
				background-color:#FFF0F7;
		position:fixed;
	z-index:1;
}
@media screen and (min-width:641px){
		#pageBg1 {
					position:fixed;
			-webkit-text-size-adjust: 100%;
			-webkit-font-smoothing: subpixel-antialiased;
				/*
					width:100%;
				*/
	}
	#pageBg1:after {
					position:fixed;
																	background-image: url(/upFu8/33296/official/officialConf/partsresponsive/img/bgOverall1.webp);
						background-size:cover;
			background-repeat:no-repeat;
			background-position:center top;
							width:100%;
			}
	}
@media screen and (max-width:640px){
		#pageBg1 {
					position:fixed;
			-webkit-text-size-adjust: 100%;
			-webkit-font-smoothing: subpixel-antialiased;
				width:100%;
		height:var(--parts-bodyMainBgImage1HeightSp);
	}
	#pageBg1:after {
													height:var(--parts-bodyMainBgImage1HeightSp);
							background-image: url(/upFu8/33296/official/officialConf/partsresponsive/img/bgOverall1.webp);
						background-size:cover;
			background-repeat:no-repeat;
			background-position:center top;
			}
	}

/* 背景2 */
	
	
#pageBg2 {
	position:relative;
	height:100%;
	top:0;
	left:0;
	z-index:0;
	pointer-events:none;
		max-height:100%;
	overflow:hidden;
}
#pageBg2:after {
	content:'';
	display:block;
	width:100%;
	height:100%;
	top:0;
	left:0;
	position: fixed;
	z-index: 1;
}
@media screen and (min-width:641px){
		#pageBg2 {
					position:absolute;
				/*
					width:100%;
				*/
	}
	#pageBg2:after {
					position:absolute;
											width:100%;
			}
	}
@media screen and (max-width:640px){
		#pageBg2 {
					position:absolute;
				width:100%;
		height:var(--parts-bodyMainBgImage2HeightSp);
	}
	#pageBg2:after {
					position:relative;
							}
	}


/** shopinfo **/
#shopinfo {
	border-width: 1px;
	border-style: solid;
	padding: 0 0 40px 0;
}
#shopInfo:after{
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	box-sizing: border-box;
}
@media screen and (min-width:641px){
	#shopInfo{
		padding:7px 0 5px 0;
		margin-top:0px;
		margin-bottom:0px;
		border-width:0;
	}
	body:not(#indexBody)#mainBody #shopInfo:after{
					border-top: 1px solid rgba(247,145,179,1);
			border-bottom: 1px solid rgba(247,145,179,1);
					}
}
@media screen and (max-width:640px){
	#shopInfo{
		padding:6px 5px 6px 5px;
		margin-top:0px;
		margin-bottom:0px;
	}
	body:not(#indexBody)#mainBody #shopInfo:after{
					border-top: 1px solid rgba(247,145,179,1);
			border-bottom: 1px solid rgba(247,145,179,1);
					}
}

#shopinfo h3 {
	font-size: 24px;
	font-weight: bold;
	line-height: 30px;
	padding: 40px;
}

#shopinfo ul {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	align-content: stretch;
	font-size: 0;
	line-height: 0;
	text-align: left;
	padding: 0 40px;
}

#shopinfo li {
	width: calc(50% - 10px);
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#shopinfo li:nth-of-type(1),
#shopinfo li:nth-of-type(2) {
	border-top-width: 1px;
	border-top-style: dotted;
}

#shopinfo li:nth-of-type(odd) {
	margin-right: 10px;
}

#shopinfo li:nth-of-type(even) {
	margin-left: 10px;
}

#shopinfo li .sibox {
	width: 100%;
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	font-size: 0;
	line-height: 0;
}

#shopinfo li .sibox_l,
#shopinfo li .sibox_r {
	font-size: 14px;
	line-height: 20px;
	text-align: left;
	padding: 10px 0;
}

#shopinfo li .sibox_l {
	width: 80px;
}

#shopinfo li .sibox_r {
	width: calc(100% - 80px);
}

#shopinfo .sibt {
	font-size: 0;
	line-height: 0;
	margin: 40px 0 0 0;
	padding: 0 35px 0 35px;
}

#shopinfo .sibt a {
	cursor: pointer !important;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

#shopinfo .sibt a:hover {
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=70);
}

#shopinfo .sibt .stel,
#shopinfo .sibt .sline {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: calc(100% / 3 - 20px);
	height: 70px;
	font-size: 13px;
	line-height: 14px;
	margin: 0 10px;
	padding-left: 40px;
	border-width: 1px;
	border-style: solid;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#shopinfo .sibt .stel {
	padding-top: 13px;
}

#shopinfo .sibt .stel em {
	font-size: 26px;
	font-weight: bold;
	line-height: 28px;
}

#shopinfo .sibt .stel:before {
	content: '';
	display: block;
	position: absolute;
	background: transparent;
	top: calc(50% - 16px);
	left: 34px;
	width: 8px;
	height: 17px;
	border-width: 10px 0 10px 3px;
	border-style: solid;
	background: transparent;
	-webkit-border-top-left-radius: 10px 12px;
	-webkit-border-bottom-left-radius: 10px 12px;
	-moz-border-radius-topleft: 10px 12px;
	-moz-border-radius-bottomleft: 10px 12px;
	border-top-left-radius: 10px 12px;
	border-bottom-left-radius: 10px 12px;
	-webkit-transform: rotate(-30deg);
	-moz-transform: rotate(-30deg);
	-ms-transform: rotate(-30deg);
	-o-transform: rotate(-30deg);
	transform: rotate(-30deg);
}

#shopinfo .sibt .stel:after {
	content: '';
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	left: 44px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	border-width: 4px 4px 0 0;
	border-style: double;
	background: transparent;
	/* css3 */
	-webkit-border-radius: 0 15px 0 0;
	-moz-border-radius: 0 15px 0 0;
	border-radius: 0 15px 0 0;
	-webkit-transform: rotate(15deg);
	-moz-transform: rotate(15deg);
	-ms-transform: rotate(15deg);
	-o-transform: rotate(15deg);
	transform: rotate(15deg);
}

#shopinfo .sibt .sline {
	padding-top: 18px;
}

#shopinfo .sibt .sline em {
	font-size: 17px;
	font-weight: bold;
	line-height: 18px;
}

#shopinfo .sibt .sline span {
	position: absolute;
	top: calc(50% - 15px);
	left: 30px;
	width: 36px;
	height: 25px;
	border: solid 1px currentColor;
	background-color: currentColor;
	border-radius: 3px;
}

#shopinfo .sibt .sline span:before {
	content: '';
	position: absolute;
	bottom: -5px;
	left: 9px;
	width: 6px;
	height: 6px;
	background-color: currentColor;
	border-bottom: solid 1px currentColor;
	border-right: solid 1px currentColor;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#shopinfo .sibt .sline i {
	display: inline-block;
	vertical-align: top;
	font-style: normal;
}

#shopinfo .sibt .sline i:nth-child(2) {
	font-size: 15px;
	font-weight: bold;
	padding-top: 10px;
}


/** btm bnr **/

#btm_etc_link_no {
	width: 1125px;
	text-align: left;
	margin: 40px auto -10px auto;
}

#btm_etc_link {
	width: 1125px;
	font-size: 0;
	line-height: 0;
	text-align: left;
	margin: 40px auto -10px auto;
}

#btm_etc_link a {
	width: 217px;
	height: 57px;
	display: inline-block;
	vertical-align: top;
	margin: 0 5px 10px 5px;
}

#btm_etc_link .bg_k1 {
	width: 217px;
	height: 57px;
	display: inline-block;
	vertical-align: top;
	margin: 0 5px 10px 5px;
	padding: 0;
	text-align: center;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

#btm_etc_link .bg_k1 span {
	font-size: 15px;
	font-weight: bold;
	line-height: 57px;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
}

#btm_etc_link .bg_k1 span em {
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
}

#btm_etc_link .bg_k1:hover {
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
}

#btm_etc_link div.no {
	width: 217px;
	height: 57px;
	display: inline-block;
	vertical-align: top;
	margin: 0 5px 10px 5px;
	border-width: 1px;
	border-style: solid;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#btm_etc_link a:first-child,
#btm_etc_link div.no:first-child,
#btm_etc_link a:nth-child(6n),
#btm_etc_link div.no:nth-child(6n) {
	margin-left: 0;
}

#btm_etc_link a:last-child,
#btm_etc_link div.no:last-child,
#btm_etc_link a:nth-child(5n),
#btm_etc_link div.no:nth-child(5n) {
	margin-right: 0;
}

#top_link_sp {
	display: none;
}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 640px) {
	main .title {
		font-size: 11px;
		line-height: 12px;
		text-align: center;
		height: 60px;
		padding-top: 12px;
		border-left: none;
		border-right: none;
	}
	main #itemReviewListBlock .title{
		height: unset;
		padding-top: 12px;
		padding-bottom: 12px;
		line-height: 1.2;
	}
	main .title em {
		font-size: 22px;
		line-height: 24px;
	}
	.contentsSection {
		padding: 0;
	}
	.contentsSection > div {
		width: auto;
		margin: 0 0 0 0;
	}
	/** img_up **/
	.contentsSection > div#img_bg {
		width: 100%;
		margin: 0 0 10px 0;
	}
	.contentsSection > div#img_bg .bx-wrapper .bx-pager.bx-default-pager {
		padding: 5px 0;
	}
	#imgup {
		width: auto;
	}
	#imgup > div {
		text-align: center;
	}
	#imgup img {
		width: 100%;
		max-width: 1120px
	}
	#sp_slide .bx-wrapper .bx-pager {
		position: static;
	}
	/** newface **/
	#newface {
		margin-bottom: 0;
	}
	#newface .newface_in {
		padding: 10px 0;
		border: none;
		background: none;
	}
	#newface ul {
		font-size: 0;
		line-height: 0;
	}
	#newface li {
		padding: 1px 0;
	}
	#newface li .textBlock {
		font-size: 12px;
		line-height: 14px;
		padding: 2px 0;
	}
	#newface li .img {
		width: auto;
		margin: 0 1px;
	}
	#newface li .img a {}
	#newface li .img a img {
		width: 100px;
		height: 133px;
	}
	/** rss **/
	/** rank **/
	#rank {
		margin-bottom: 0;
	}
	#rank .rank_in {
		padding: 10px 0;
		border: none;
		background: none;
	}
/*	#newface .bx-wrapper .bx-controls-direction a,*/
	#schedule .bx-wrapper .bx-controls-direction a,
	#rank .bx-wrapper .bx-controls-direction a {
		width: 25px;
		height: 50px;
		line-height: 50px;
	}
/*	#newface .bx-wrapper .bx-controls-direction a.bx-prev,*/
	#schedule .bx-wrapper .bx-controls-direction a.bx-prev,
	#rank .bx-wrapper .bx-controls-direction a.bx-prev {
		top: calc(50% + 10px);
		left: 0px;
	}
/*	#newface .bx-wrapper .bx-controls-direction a.bx-next,*/
	#schedule .bx-wrapper .bx-controls-direction a.bx-next,
	#rank .bx-wrapper .bx-controls-direction a.bx-next {
		top: calc(50% + 10px);
		right: 0px;
	}
	/** shopinfo **/
	#shopinfo_bg {
		background: none;
	}
	#shopinfo {
		border-left: none;
		border-right: none;
		padding: 0 10px 10px 10px;
	}
	#shopinfo h3 {
		font-size: 18px;
		line-height: 20px;
		text-align: center;
		padding: 20px 0;
	}
	#shopinfo ul {
		display: block;
		padding: 0;

	}
	#shopinfo li {
		width: auto;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
	}
	#shopinfo li:nth-of-type(2) {
		border-top: none;
	}
	#shopinfo li:nth-of-type(odd) {
		margin-right: 0;
	}
	#shopinfo li:nth-of-type(even) {
		margin-left: 0;
	}
	#shopinfo li .sibox_l,
	#shopinfo li .sibox_r {
		font-size: 13px;
		line-height: 16px;
		text-align: left;
		padding: 10px 0;
	}
	#shopinfo li .sibox_l {
		width: 70px;
	}
	#shopinfo li .sibox_r {
		width: calc(100% - 70px);
	}
	#shopinfo .sibt {
		margin: 10px 0 0 0;
		padding: 0;
	}
	#shopinfo .sibt .stel,
	#shopinfo .sibt .sline {
		position: relative;
		display: block;
		width: auto;
		text-align: center;
		margin: 0 0 10px 0;
		padding-left: 40px;
	}
	#shopinfo .sibt .stel:last-child,
	#shopinfo .sibt .sline:last-child {
		margin-bottom: 0;
	}
	#shopinfo .sibt .stel:before {
		left: 20px;
	}
	#shopinfo .sibt .stel:after {
		left: 30px;
	}
	#shopinfo .sibt .sline {
		padding-top: 15px;
	}
	#shopinfo .sibt .sline em {
		font-size: 21px;
		font-weight: bold;
		line-height: 21px;
	}
	#shopinfo .sibt .sline {
		padding-left: 45px;
	}
	#shopinfo .sibt .sline span {
		left: 8px;
	}
	#shopinfo .sibt .sline span:before {
		content: '';
		position: absolute;
		bottom: -5px;
		left: 9px;
		width: 6px;
		height: 6px;
		background-color: currentColor;
		border-bottom: solid 1px currentColor;
		border-right: solid 1px currentColor;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	/** btm bnr **/
	#btm_etc_link_no {
		width: auto;
		text-align: center;
		margin: 0;
		padding: 0;
	}
	#btm_etc_link {
		width: auto;
		text-align: center;
		margin: 0;
		padding: 0;
	}
	#btm_etc_link a {
		width: 145px;
		height: 38px;
	}
	#btm_etc_link .bg_k1 {
		width: 145px;
		height: 38px;
	}
	#btm_etc_link a > img {
		width: 145px;
		height: 38px;
	}
	#btm_etc_link .bg_k1 span {
		font-size: 13px;
		font-weight: bold;
		line-height: 38px;
	}
	#btm_etc_link div.no {
		width: 145px;
		height: 38px;
		display: none;
	}
	#btm_etc_link a:first-child,
	#btm_etc_link div.no:first-child,
	#btm_etc_link a:nth-child(6n),
	#btm_etc_link div.no:nth-child(6n) {
		margin-left: 5px;
	}
	#btm_etc_link a:last-child,
	#btm_etc_link div.no:last-child,
	#btm_etc_link a:nth-child(5n),
	#btm_etc_link div.no:nth-child(5n) {
		margin-right: 5px;
	}
	#top_link_sp {
		display: block;
		margin: 10px 0;
		text-align: center;
	}
}

/*-- mail magazine  -----------------------------------*/
#mailMagazine .fdc_contentsWrap{
	text-align: left;
			color:#333333;
			}
#fdc_mailMagazineWork {
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1000;
	background-color:rgba(0,0,0,.6);
}
#fdc_mailMagazineWork .workMessage {
	width: 490px;
	height:100px;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	left:0;
	right:0;
	text-align:center;
	font-size: 16px;
	color:#000000;
	border:1px solid #888888;
	background-color:#FFFFFF;
	z-index:1;
	border-radius:8px;
}
#fdc_mailMagazineWork .workMessage p {
	padding: 10px;
	border-bottom: 1px dotted #888888;
	line-height: 140%;
	text-align:left;
}
#fdc_mailMagazineWork .hideLink {
	padding-top:10px;
	display: inline-block;
	cursor: pointer;
}
#fdc_mailMagazineWork .hideLink:hover {
	text-decoration: underline;
}
@media screen and (max-width: 640px) {
	#fdc_mailMagazineWork .workMessage {
		width: 340px;
		height:145px;
	}
	#mailMagazine .fdc_contentsWrap form{
		text-align:center;
	}
}
/* h1 color */
@media screen and (min-width:641px){
	h1{
		background-color:rgba(255,240,247,0);
		border-top:0px solid rgba(247,145,179,0);
		border-bottom:0px solid rgba(247,145,179,0);
		backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
	h1 a{
		color:#333333;
	}
}
@media screen and (max-width: 640px) {
	h1{
		background-color:rgba(255,240,247,0);
		border-top:0px solid rgba(247,145,179,0);
		border-bottom:0px solid rgba(247,145,179,0);
		backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
	h1 a{
		color:#333333;
	}
}

/** header **/
@media screen and (min-width:641px){
	header {
							min-height:0vh;
			}
	}
@media screen and (max-width:640px){
	header {
					min-height: unset;
									min-height:0vh;
			}
	}
header.headerBgImage > .bgImg {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}
header.headerBgImage > .bgImg:before,
header.headerBgImage > .bgImg:after {
	content: '';
	top: 0;
	left: 0;
	width: 100%;
}
header.headerBgImage > .bgImg:after {
	z-index: -1;
}
@media screen and (min-width:641px){
	header.headerBgImage > .bgImg:after {
		position: absolute;
		height: 100%;
	}
					
				header.headerBgImage > .bgImg:after {
			background-size: var(--parts-headerBgSizePc, none);
			background-repeat: var(--parts-headerBgRepeatPc, none);
			background-position:center top;
					}
			header.headerBgImage > .bgImg:after {
										background-color:rgba(255,240,247, 0);
									z-index: 1;
	}

	header.headerBgImage > .bgImg {
		backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
		}
@media screen and (max-width: 640px) {
	header.headerBgImage > .bgImg:after {
		position: absolute;
		height: 100%;
	}
		
						header.headerBgImage > .bgImg:after {
			background-size: var(--parts-mainHeaderBgSizeSp, none);
			background-repeat: var(--parts-mainHeaderBgRepeatSp, none);
			background-position:center top;
		}
			header.headerBgImage > .bgImg:after {
										background-color:rgba(255,240,247, 0);
							z-index: 1;
	}

	header.headerBgImage > .bgImg {
		backdrop-filter: var(--parts3-bgEffectFilter0, none);
	}
		}
@media screen and (min-width:641px){
	header.headerBgImage > .bgImg:before {
		position: absolute;
		height: 100%;
	}
								header.headerBgImage > .bgImg:before {
			background-size: var(--parts-mainHeaderBg2SizePc, none);
			background-repeat: var(--parts-mainHeaderBg2RepeatPc, none);
			background-position:center top;
		}
			header.headerBgImage > .bgImg:before {
										background-color:rgba(255,240,247, 0);
									z-index:3;
	}

		}
@media screen and (max-width: 640px) {
	header.headerBgImage > .bgImg:before {
		position: absolute;
		height: 100%;
	}
								header.headerBgImage > .bgImg:before {
			background-size: var(--parts-mainHeaderBg2SizeSp, none);
			background-repeat: var(--parts-mainHeaderBg2RepeatSp, none);
			background-position:center top;
		}
			header.headerBgImage > .bgImg:before {
										background-color:rgba(255,240,247, 0);
							z-index:3;
	}

		}

/* メインタグ内背景設定 */
/*   */
@media screen and (min-width:641px){
	main > .bgImg:after {
		position: absolute;
		height: 100%;
	}
					
				main > .bgImg:after {
					position:absolute;
			height:100%;
				background-image: var(--parts-mainPageContentsBgImagePc);
		background-size: var(--parts-mainPageContentsBgSizePc, none);
		background-repeat: var(--parts-mainPageContentsBgRepeatPc, none);
		background-position:center top;
					width: 100%;
			}
		main > .bgImg:after {
		z-index: 1;
	}
}
@media screen and (max-width: 640px) {
	main > .bgImg:after {
		position: absolute;
		height: 100%;
	}
		
						main > .bgImg:after {
					position:absolute;
			height:100%;
					width: 100%;
			background-image:var(--parts-mainPageContentsBgImageSp);
			background-size: var(--parts-mainPageContentsBgSizeSp, none);
			background-repeat: var(--parts-mainPageContentsBgRepeatSp, none);
			background-position:center top;
		}
	}



/* コンテンツパララックス及び通常背景の共通設定 */
#contents .bgImg,
#contents .bgImgSp{
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	clip-path: inset(-1px);
	z-index: -1;
}
#contents .bgImg:after,
#contents .bgImgSp:after{
	position: absolute; /*パララックス時はfix */
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%; /*パララックス時はvh */
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 0px 0px 0px 0px;
}
@media screen and (min-width:641px){
	#contents .bgImgSp{
		display:none;
	}
}
@media screen and (max-width:640px){
	#contents .bgImg{
		display:none;
	}
}

/* 全体枠設定 表示幅がウィンドウ幅と側面メニュー時コンテンツエリア幅の場合、2カラムエリア以外は丸みをなくす */
/* シンプルレイアウト */
main:not(#layout1) section ~ [class^=bgImg]:after {
	border-radius: 0;
}
/* ベーシックレイアウト */
@media screen and (min-width:641px){
	/* 2カラムは除外 */
	main#layout1 div:not([class^=twoColumnContentsBlock]) > section ~ [class^=bgImg]:after {
		border-radius: 0;
	}
}
@media screen and (max-width:640px){
	main#layout1 section ~ [class^=bgImg]:after {
		border-radius: 0;
	}
}

/* ベーシック2カラムレイアウトSP用layoutStyle上書き */
@media screen and (max-width:640px) {
	#contents .wrapContents.contentsBlock-twoColumns {
		min-width: unset;
		width: 100%;
		padding: 0px;
	}
	#contents .wrapContents [class^=twoColumnContentsBlock] {
		min-width: auto;
		width: var(--contents-sp-width, calc(100% - 40px));
		padding: 0 var(--contents-sp-marginRight, auto) 0 var(--contents-sp-marginLeft, auto);
	}
}

	
/****************************/
/* コンテンツ幅背景画像 */
				
					/**
			 * id:125451
			 */
						/*常設*/
			main .wrapContents > section#freeContents_125451{
				position:relative;
			}
			/*PC用*/
			@media screen and (min-width:641px) {
				main #contents .wrapContents.contentsBlock-officialFreecontents_125451{
																				margin-top: calc(0px + 0px);
					margin-bottom: 0px;
									}
				main .wrapContents > section#freeContents_125451{
					padding-top: 0px;
					padding-bottom: 40px;
					min-height:0px;
				}
									/*2Columns*/
																					main #contents div.layoutFlexCol .twoColumnContentsBlock-officialFreecontents_125451{
						margin-top: calc(0px + 0px);
						margin-bottom: 0px;
											}
					main #contents div.layoutFlexCol section#freeContents_125451{
						padding-top: 0px;
						padding-bottom: 40px;
						min-height:0px;
					}
																					}
														
						
			/*SP用*/
			@media screen and (max-width:640px) {
				main #contents .wrapContents.contentsBlock-officialFreecontents_125451{
					margin-top: calc(0px + 0px);
					margin-bottom: 0px;
					
				}
				main .wrapContents > section#freeContents_125451{
					padding-top: 0px;
					padding-bottom: 40px;
					min-height:0px;
				}
			}
							/*2Columns*/
				body.sp main #contents div.layoutFlexCol .twoColumnContentsBlock-officialFreecontents_125451{
					margin-top: calc(0px + 0px);
					margin-bottom: 0px;
				}
				body.sp main #contents div.layoutFlexCol section#freeContents_125451{
					padding-top: 0px;
					padding-bottom: 40px;
					min-height:0px;
					position: relative;
				}
				@media screen and (max-width:640px) {
					main #contents div.layoutFlexCol .twoColumnContentsBlock-officialFreecontents_125451{
						margin-top: calc(0px + 0px);
						margin-bottom: 0px;
					}
					main #contents div.layoutFlexCol section#freeContents_125451{
						padding-top: 0px;
						padding-bottom: 40px;
						min-height:0px;
						position: relative;
					}
				}
											/****************************/
				
					/**
			 * id:125452
			 */
						/*常設*/
			main .wrapContents > section#freeContents_125452{
				position:relative;
			}
			/*PC用*/
			@media screen and (min-width:641px) {
				main #contents .wrapContents.contentsBlock-officialFreecontents_125452{
																				margin-top: calc(0px + 0px);
					margin-bottom: 0px;
									}
				main .wrapContents > section#freeContents_125452{
					padding-top: 0px;
					padding-bottom: 40px;
					min-height:0px;
				}
									/*2Columns*/
																					main #contents div.layoutFlexCol .twoColumnContentsBlock-officialFreecontents_125452{
						margin-top: calc(0px + 0px);
						margin-bottom: 0px;
											}
					main #contents div.layoutFlexCol section#freeContents_125452{
						padding-top: 0px;
						padding-bottom: 40px;
						min-height:0px;
					}
																					}
														
						
			/*SP用*/
			@media screen and (max-width:640px) {
				main #contents .wrapContents.contentsBlock-officialFreecontents_125452{
					margin-top: calc(0px + 0px);
					margin-bottom: 0px;
					
				}
				main .wrapContents > section#freeContents_125452{
					padding-top: 0px;
					padding-bottom: 40px;
					min-height:0px;
				}
			}
							/*2Columns*/
				body.sp main #contents div.layoutFlexCol .twoColumnContentsBlock-officialFreecontents_125452{
					margin-top: calc(0px + 0px);
					margin-bottom: 0px;
				}
				body.sp main #contents div.layoutFlexCol section#freeContents_125452{
					padding-top: 0px;
					padding-bottom: 40px;
					min-height:0px;
					position: relative;
				}
				@media screen and (max-width:640px) {
					main #contents div.layoutFlexCol .twoColumnContentsBlock-officialFreecontents_125452{
						margin-top: calc(0px + 0px);
						margin-bottom: 0px;
					}
					main #contents div.layoutFlexCol section#freeContents_125452{
						padding-top: 0px;
						padding-bottom: 40px;
						min-height:0px;
						position: relative;
					}
				}
											/****************************/
			
					/*** newsList*//*PC用*/
			@media screen and (min-width:641px) {
				/*常設*/
				#contents .contentsBlock-newsList{
															margin-top:calc(0px + 0px);
					margin-bottom:40px;
									}
				main .wrapContents section.contentsSection#blockNewsList{
					padding-top:0px;
					padding-bottom:0px;
					min-height:0vh;
				}
									/*2Columns*/
										#contents div.layoutFlexCol .twoColumnContentsBlock-newsList{
						margin-top:calc(0px + 0px);
						margin-bottom:40px;
											}
																					}

									
									@media screen and (min-width:calc(641px)){
				0 .bgImg:after{
																width:100%;
									}
			}
				








		/*SP用*/
														
		/*常設*/
		body.sp #contents .contentsBlock-newsList{
			
			margin-top:calc(0px + 0px);
			margin-bottom:40px;
		}
		body.sp main .wrapContents section.contentsSection#blockNewsList{
			padding-top:0px;
			padding-bottom:0px;
			min-height:0vh;
		}
		@media screen and (max-width:640px) {
			#contents .contentsBlock-newsList{
				margin-top:calc(0px + 0px);
				margin-bottom:40px;
			}
			main .wrapContents section.contentsSection#blockNewsList{
				padding-top:0px;
				padding-bottom:0px;
				min-height:0vh;
			}
		}
					/*2Columns*/
			body.sp #contents div.layoutFlexCol .twoColumnContentsBlock-newsList{
				margin-top:calc(0px + 0px);
				margin-bottom:40px;
			}
			@media screen and (max-width:640px) {
				#contents div.layoutFlexCol .twoColumnContentsBlock-newsList{
					margin-top:calc(0px + 0px);
					margin-bottom:40px;
				}
			}
						

				/****************************/
			
					/*** todaySchedule*//*PC用*/
			@media screen and (min-width:641px) {
				/*常設*/
				#contents .contentsBlock-todaySchedule{
															margin-top:calc(40px + 0px);
					margin-bottom:40px;
									}
				main .wrapContents section.contentsSection#blockTodaySchedule{
					padding-top:0px;
					padding-bottom:0px;
					min-height:0vh;
				}
									/*2Columns*/
										#contents div.layoutFlexCol .twoColumnContentsBlock-todaySchedule{
						margin-top:calc(40px + 0px);
						margin-bottom:40px;
											}
																					}

									
									@media screen and (min-width:calc(641px)){
				0 .bgImg:after{
																width:100%;
									}
			}
				








		/*SP用*/
														
		/*常設*/
		body.sp #contents .contentsBlock-todaySchedule{
			
			margin-top:calc(40px + 0px);
			margin-bottom:40px;
		}
		body.sp main .wrapContents section.contentsSection#blockTodaySchedule{
			padding-top:0px;
			padding-bottom:0px;
			min-height:0vh;
		}
		@media screen and (max-width:640px) {
			#contents .contentsBlock-todaySchedule{
				margin-top:calc(40px + 0px);
				margin-bottom:40px;
			}
			main .wrapContents section.contentsSection#blockTodaySchedule{
				padding-top:0px;
				padding-bottom:0px;
				min-height:0vh;
			}
		}
					/*2Columns*/
			body.sp #contents div.layoutFlexCol .twoColumnContentsBlock-todaySchedule{
				margin-top:calc(40px + 0px);
				margin-bottom:40px;
			}
			@media screen and (max-width:640px) {
				#contents div.layoutFlexCol .twoColumnContentsBlock-todaySchedule{
					margin-top:calc(40px + 0px);
					margin-bottom:40px;
				}
			}
						

				/****************************/
			
					/*** warning*//*PC用*/
			@media screen and (min-width:641px) {
				/*常設*/
				#contents .contentsBlock-warning{
															margin-top:calc(40px + 0px);
					margin-bottom:40px;
									}
				main .wrapContents section.contentsSection#blockWarning{
					padding-top:0px;
					padding-bottom:0px;
					min-height:0vh;
				}
									/*2Columns*/
										#contents div.layoutFlexCol .twoColumnContentsBlock-warning{
						margin-top:calc(40px + 0px);
						margin-bottom:40px;
											}
																					}

									
									@media screen and (min-width:calc(641px)){
				0 .bgImg:after{
																width:100%;
									}
			}
				








		/*SP用*/
														
		/*常設*/
		body.sp #contents .contentsBlock-warning{
			
			margin-top:calc(40px + 0px);
			margin-bottom:40px;
		}
		body.sp main .wrapContents section.contentsSection#blockWarning{
			padding-top:0px;
			padding-bottom:0px;
			min-height:0vh;
		}
		@media screen and (max-width:640px) {
			#contents .contentsBlock-warning{
				margin-top:calc(40px + 0px);
				margin-bottom:40px;
			}
			main .wrapContents section.contentsSection#blockWarning{
				padding-top:0px;
				padding-bottom:0px;
				min-height:0vh;
			}
		}
					/*2Columns*/
			body.sp #contents div.layoutFlexCol .twoColumnContentsBlock-warning{
				margin-top:calc(40px + 0px);
				margin-bottom:40px;
			}
			@media screen and (max-width:640px) {
				#contents div.layoutFlexCol .twoColumnContentsBlock-warning{
					margin-top:calc(40px + 0px);
					margin-bottom:40px;
				}
			}
						

				/****************************/
		