@charset "utf-8";
*{margin: 0;padding: 0;}

/*=================================================================*/
/* 【PC】：component.css setting                                                 */
/*=================================================================*/


/*	1: body
---------------------------------------------------------------*/
body {
	margin: 0 auto;
	text-align: left;
	word-break: break-all;
	font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: #333;
	font-size: 14px;
	background-color: #FFF;
	background: url(../../images/pc/union/bg01.gif) repeat 0 0;
	}
#wrap {
	overflow: hidden;
	}

/*	p
---------------------------------------------------------------*/
p{text-align: left; line-height: 1.5}

/*	img
---------------------------------------------------------------*/
img{
	vertical-align: bottom;
}

/*	table
---------------------------------------------------------------*/
table {
	border-collapse:collapse;
	border-spacing:0;
	font-size:100%;
}

/*	a
---------------------------------------------------------------*/
a:link{
 color: #0085c7;
}
a:visited{
 color: #0085c7;
 text-decoration: none;
}
a:hover{
 text-decoration: none;
 /*opacity: 0.7;*/
}
a img{border: none;}

/*	2: ul
---------------------------------------------------------------*/
ul li, ol li {
	list-style-type: none ;
}

::selection{
background:rgba(245,203,30,0.7);
/* text-shadow:none; */
}
::-webkit-selection{
background:rgba(245,203,30,0.7);
text-shadow:none
}

/*	スペース
---------------------------------------------------------------*/

#sec_contents .mb10 { margin-bottom: 10px !important; }
#sec_contents .mb20 { margin-bottom: 20px !important; }
#sec_contents .mb30 { margin-bottom: 30px !important; }
#sec_contents .mb40 { margin-bottom: 40px !important; }
#sec_contents .mb50 { margin-bottom: 50px !important; }
#sec_contents .mb60 { margin-bottom: 60px !important; }
#sec_contents .mb80 { margin-bottom: 80px !important; }
#sec_contents .mb100 { margin-bottom: 100px !important; }

#sec_contents .ml20 { margin-left: 20px;}

/* PC非表示 */
.pc{ display: none !important; }
img {
	width: 100%;
	height: auto;
	}

/* header
-------------------------------------------------------------------*/
header {
	padding: 10px 0;
	background-color: #FFF;
	border-top: solid 3px #0095cf;
	background-repeat: repeat-x;
	background-position: 0 0;
	background-size: auto 4px;
	position: relative;
	z-index: 100;
	}

	header div.logo {
		text-decoration: none;
		width: 143px;
		height: auto;
		margin: 0 0 0 3.125%;
		}
		
		header div.logo a {
			display: block;
			}
		
	#wrap header a {
		color: #424242;
		text-decoration: none;
		}
	
	header .inner {
		position: relative;
	}
		
header .head-function {
	border-bottom: 1px solid #d8d8d8;
	width: 100%;
	text-align: center;
	padding: 0 0 5px 0;
	margin: 0 0 10px 0;
	font-size: 80%;
	display: none;
	padding: 0 15px 7px;
  box-sizing: border-box;
	}
	
	header .head-function ul {
		margin: 1% 4% 1% 0;
		display: block;
		}

		header .head-function ul li {
			padding-left: 2%;
			padding-right: 2%;
			border-right: 1px solid #c5c5c5;
			line-height: 90%;
			float: right;
			}
			
			header .head-function ul li:first-child { border: none; }
			
			header .head-function ul li a { text-decoration: none; }

.sp_search_icon {
	position: absolute;
	width: 32px;
	height: 32px;
	bottom: 8px;
	right: 64px;
	background: url(../../images/sp/union/icon_search.gif) no-repeat 0 0;
	background-size: 32px 32px;
}
.sp_search_icon.on {
	background: url(../../images/sp/union/icon_search_close.gif) no-repeat 0 0;
	background-size: 32px 32px;
}

/*ヘッダーSDGs*/
.header_sdgs {
	position: absolute;
  left: 160px;
  bottom: 3px;
  font-size: 11px;
  text-decoration: none;
  display: inline-block;
  background: url(../../images/sp/union/header_sdgs.gif) no-repeat left center;
  background-size: 104px auto;
  padding: 0;
  letter-spacing: 0.05em;
  text-indent: -9999px;
  width: 104px;
  height: 38px;
}
.header_sdgs span {
  display: none;
}

div#gsc-iw-id1 {
  padding: 0;
}					
button.gsc-search-button.gsc-search-button-v2 {
  background-color: #4371bc;
  border: none;
  padding: 10px 20px;
}

.goog-te-gadget-simple {
	width: 200px;
}
.goog-te-gadget img {
	max-height: 20px;
	max-width: 20px;
}
	/* mmenu */
	#btn_sp-wrapper {
		float: right;
		width: 30px;
		margin: 7px 16px 0 0;
		}
		
	#btn_living-toggle-sp {
		background: #1b508a url("/common/main/images/union/btn_living-toggle-sp.png") no-repeat scroll center 4px;
		border-radius: 4px;
		color: #ffffff;
		display: inline-block;
		font-size: 87%;
		font-weight: bold;
		padding: 28px 6px 2px;
		min-width: 62px;
		cursor:pointer;
	}
	#btn_living-toggle-sp:hover {
		opacity: 0.7;
	}
	#btn_menu-sp {
		display: block;
		
	}
	#menu-sp ul li.close{
		text-align: center;
		font-weight:normal;
		color:#fff;
		font-weight: bold;
		background: #0185C7;
	}
	#menu-sp ul li{
		text-align: left;
		font-weight:bold;
		color:#333;
	}
	#menu-sp ul li ul li{
		font-weight:normal;
	}
	
	/* mmenu */
	.bx-controls {
		display: none;
		}
		
/* main_visual
-------------------------------------------------------------------*/
#visual { margin: 0 0 5% 0; }

/* フッター
-------------------------------------------------------------------*/
footer {
	background: url(../../images/pc/union/bg_footer.gif) repeat 0 0;
	margin: 0 0 0 0;
	}

	footer .footer_top .footer_top_inner { text-align: center; }
		
		footer .footer_top .footer_top_inner #link_page-top {
			padding: 3% 0 4% 0;
			width: 100%;
			display: block;
			border-bottom: 2px solid #d8d0bf;
			}
			
			footer .footer_top .footer_top_inner #link_page-top img { width: 9%; }

/*トップへ戻る*/

.top_back {
	width: 100%;
	text-align: center;
	background: url(../../images/pc/union/bg_copyright.gif) repeat 0 0;
	padding: 8px 0;
}

.top_back a {
	line-height: 0.7em;
	display: block;
}

.top_back a img {
	width: 29px;
	height: 17px;
}

/*=================================================================*/
/*  a.topBack
/*=================================================================*/

a.topBack {
	position: fixed;
	right: 20px;
	bottom: 20px;
	display: block;
	width: 40px;
	height: 40px;
	border: solid 3px #FFF;
	text-indent: -9999px;
	background-color: #0080bf;
	-webkit-transition: none;
	transition: none;
	z-index: 300;
}
a.topBack::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  border-top: solid 2px;
  border-right: solid 2px;
  transform: rotate(-45deg);
  top: 50%;
  right: 50%;
  margin: -4px -7px 0 0;
  color: #FFF;
}

/* footerMenu
-----------------------------------------------------------------*/
.footerMenu {
	font-family: Noto Sans JP, '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 500;
	background-color: #f1f9ff;
	text-align: center;
	padding: 12px 4%;
	border-top: solid 1px #e4f1fa;
}
.footerMenu a {
	color: #000;
	text-decoration: none;
	padding: 0 12px;
	background: url(../../images/pc/union/icon_fnav_dott.svg) no-repeat right center;
	font-size: 12px;
	white-space: nowrap;
}
.footerMenu a:hover {
	opacity: 0.7;
}
.footerMenu a:last-child {
	background: none;
}

/* footerAddress
-----------------------------------------------------------------*/
.footerAddress {
	font-family: Noto Sans JP, '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 500;
	background-color: #FFF;
	padding: 18px 4%;
}
.footerAddress .inner {
	margin: 0 auto;
}
.footerAddress .inner .left,
.footerAddress .inner .right {
	text-align: left;
	box-sizing: border-box;
}
.footerAddress .inner .left {
	padding: 0 0 5px;
	margin: 0 0 15px;
	border-bottom: dotted 1px #c3c3c3;
}
.footerAddress .inner .right {
	padding: 0;
}
.footerAddress .inner dl {
	margin: 0 0 10px;
}
.footerAddress .inner dl dt {
	font-weight: bold;
	font-size: 15px;
	letter-spacing: 0.05em;
	margin: 0 0 5px;
}
.footerAddress .inner dl dd {
	letter-spacing: 0.1em;
	font-size: 13px;
}
.footerAddress .snsLink {
	margin: 0 6px 6px 0;
}
footer .date_inner {
	display: none;
}

/* フッター アドレス
-----------------------------------------------------------------*/
footer ul.about_contact_link {
	margin: 6px 0 20px;
	font-size: 80%;
}

footer ul.about_contact_link li {
	line-height: 1.5em;
	float: right;
}

footer ul.about_contact_link li a {
	padding: 0 10px 0 0;
}

footer ul.about_contact_link li:first-child a {
	border-right: none;
	padding-right: 0px;
}

footer ul.about_contact_link li a {
	color: #333;
	text-decoration: none;
}

footer .footer_date {
	background: url(../../..../../images/sp/union/bg_footer.gif) repeat 0 0;
	background-size: 50px;
	overflow: hidden;
	position: relative;
	z-index: 2;
}

footer .footer_date a[target="_blank"] {
	background: none;
	padding: 0;
}

footer .footer_date .date_inner {
	margin: 0 10px;
	padding-top: 10px;
	color: #333333;
}

footer .footer_date .date_inner .adress:first-child {
	padding-left: 0;
	padding-bottom: 3%;
	border-bottom:  1px #aca8a0 dotted;
	width: 100%;
	margin: 0 0 3% 0;
}

footer .footer_date .date_inner .adress:nth-child(2) {
	padding-bottom: 3%;
}

footer .footer_date .date_inner dl dt {
	font-size: 93%;
	margin-bottom: 10px;
}

footer .footer_date .date_inner dl dd {
	font-size: 79%;
	width: 100%;
}

footer .footer_date .date_inner dl dd span {
	float: left;
	width: 190px;
}

footer .footer_date .date_inner dl dd span .sp {
	display: inline;
}

.address_left {
	padding-bottom: 15px;
	border-bottom: dotted 1px #B7B7B7;
	margin-bottom: 15px;
	width: 100%;
}

.address_right {
	padding-bottom: 15px;
	width: 100%;
}

footer .footer_date .date_inner .fr p {
	font-size: 86% !important;
	text-align: right;
}
						
footer .sns_banner {
	float: right;
	width: 115px;
	right: 10px;
	top: 0px;
}
	
footer .sns_banner li {
	width: 30px;
	height: 30px;
	border: none;
	margin: 0 8px 0 0;
	float: left;
}
				
	/* コピーライト部分
	-----------------------------------------------------------------*/
	footer .copyright {
		padding: 10px 0;
		background-color: #0080bf;
		color: #FFF;
		}
		
		footer .copyright p {
			text-align: center;
			font-size: 80%;
			}


/* ページが見つかりません
-----------------------------------------------------------------*/

.nfound {
	width: 84%;
	background-color: #FFF;
	border-radius: 10px;
	text-align: center;
	padding: 4%;
	margin: 4%;
}

.nfound h1 {
	color: #c0c0c0;
	font-size: 30px;
	margin: 0px 0 20px 0;
	line-height: 1.2em;
}
.nfound img {
	width: 110px;
}

.nfound p {
	font-size: 16px;
	text-align: center;
}
.nfound p br {
	display: none;
}

.nfound p.nf_txt {
	font-size: 20px;
	margin: 0 0 30px 0;
}

.nf_menu {
	padding: 20px 0;
	margin: 0 auto;
	display: inline-block;
}

.nf_menu li {
	width: 200px;
}

.nf_menu li:first-child {
	margin-bottom: 10px;
}

.nf_menu li a {
	background-color: #0085c7;
	color: #FFF;
	display: block;
	padding: 10px;
	text-decoration: none;
	border-radius: 5px;
}



/* 広告バナーの非表示（広告運用開始まで） */

.footer_bannar {
	display: block !important;
	background: #b2b2b2;
	padding: 5px 10px 10px;
}
.footer_bannar_inner>p {
	color: #FFF;
	font-size: 12px;
	letter-spacing: 0.1em;
}
.footer_bannar .footer_bannar_inner ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.footer_bannar .footer_bannar_inner ul.cf::after {
	content: none;
}
.footer_bannar .footer_bannar_inner ul li {
	width: 48%;
	margin: 0 0 2%;
	float: none;
}
.footer_bannar .footer_bannar_inner ul li a {
	display: block;
}
.footer_bannar .footer_bannar_inner ul li a img {
}
.footer_bannar .footer_bannar_inner ul + a {
	display: none;
}

/* SNS
-----------------------------------------------------------------*/
a.snsLink {
	font-family: Noto Sans JP, '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	display: inline-block;
	background-color: #e1effa;
	color: #000;
	font-size: 10px;
	text-decoration: none;
	position: relative;
	border-radius: 3px;
	overflow: hidden;
	padding: 7px 10px 7px 38px;
	letter-spacing: 0.05em;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
a.snsLink:hover {
	opacity: 0.7;
}
a.snsLink::before {
	width: 30px;
	height: 30px;
	content: "";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
}
a.snsLink.fb::before {
	background: url(../../images/pc/union/btn_facebook.gif) no-repeat center center;
}
a.snsLink.tw::before {
	background: url(../../images/pc/union/btn_x.gif) no-repeat center center;
}
a.snsLink.insta::before {
	background: url(../../images/pc/union/btn_instagram.png) no-repeat center center;
}
img.imgAuto {
	width: auto;
}

/* 季節背景
-----------------------------------------------------------------*/

/*秋*/

#wrap.autumn header .inner::before,
#wrap.autumn header .inner::after {
	position: absolute;
	content: "";
}
#wrap.autumn header .inner::before {
  width: 43px;
  height: 36px;
  background: url(../../images/pc/union/season/autumn/sp/header_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -7px;
  bottom: 20px;
}
#wrap.autumn header .inner::after {
  width: 39px;
  height: 34px;
  background: url(../../images/pc/union/season/autumn/sp/header_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -6px;
  bottom: -10px;
}

#wrap.autumn .mainContents,
#wrap.autumn .sec_main.container>.inner {
  position: relative;
}
#wrap.autumn .footerAddress::before {
  position: absolute;
  content: "";
  background: url(../../images/pc/union/season/autumn/sp/footer_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -7px;
  bottom: 0px;
  width: 96px;
  height: 58px;
}
#wrap.autumn .footerAddress {
  position: relative;
}
#wrap.autumn .footerAddress::after {
	position: absolute;
	content: "";
  background: url(../../images/pc/union/season/autumn/sp/footer_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -6px;
  bottom: -4px;
  width: 85px;
  height: 74px;
}

/*冬*/

#wrap.winter header .inner::before,
#wrap.winter header .inner::after {
	position: absolute;
	content: "";
}
#wrap.winter header .inner::before {
  width: 35px;
  height: 70px;
  background: url(../../images/pc/union/season/winter/sp/header_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -7px;
  top: -14px;
}
#wrap.winter header .inner::after {
  width: 40px;
  height: 43px;
  background: url(../../images/pc/union/season/winter/sp/header_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -6px;
  bottom: -10px;
}
#wrap.winter .footerAddress::before {
  position: absolute;
  content: "";
  background: url(../../images/pc/union/season/winter/sp/footer_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -7px;
  bottom: 0px;
  width: 82px;
  height: 63px;
}
#wrap.winter .footerAddress {
  position: relative;
}
#wrap.winter .footerAddress::after {
	position: absolute;
  content: "";
  background: url(../../images/pc/union/season/winter/sp/footer_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -6px;
  bottom: 0px;
  width: 79px;
  height: 68px;
}

/*春*/

#wrap.spring header .inner::before,
#wrap.spring header .inner::after {
	position: absolute;
	content: "";
}
#wrap.spring header .inner::before {
  width: 65px;
  height: 52px;
  background: url(../../images/pc/union/season/spring/sp/header_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -10px;
  top: -13px;
}
#wrap.spring header .inner::after {
  width: 45px;
  height: 34px;
  background: url(../../images/pc/union/season/spring/sp/header_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -5px;
  bottom: -14px;
  z-index: -1;
}
#wrap.spring .footerAddress::before {
	position: absolute;
  content: "";
  background: url(../../images/pc/union/season/spring/sp/footer_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -6px;
  bottom: -6px;
  width: 82px;
  height: 74px;
}
#wrap.spring .footerAddress {
  position: relative;
}
#wrap.spring .footerAddress::after {
	position: absolute;
  content: "";
  background: url(../../images/pc/union/season/spring/sp/footer_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -6px;
  bottom: -5px;
  width: 78px;
  height: 68px;
}

/*夏*/

#wrap.summer header .inner::before,
#wrap.summer header .inner::after {
	position: absolute;
	content: "";
}
#wrap.summer header .inner::before {
  width: 50px;
  height: 60px;
  background: url(../../images/pc/union/season/summer/sp/header_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -8px;
  top: -12px;
  /*z-index: -1;*/
}
#wrap.summer header .inner::after {
	width: 58px;
  height: 50px;
  background: url(../../images/pc/union/season/summer/sp/header_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -10px;
  bottom: -11px;
  z-index: -1;
}
#wrap.summer .footerAddress::before {
  position: absolute;
  content: "";
  background: url(../../images/pc/union/season/summer/sp/footer_left.png) no-repeat 0 0;
  background-size: 100% auto;
  left: -6px;
  bottom: -5px;
  width: 96px;
  height: 62px;
}
#wrap.summer .footerAddress {
  position: relative;
}
#wrap.summer .footerAddress::after {
  position: absolute;
  content: "";
  background: url(../../images/pc/union/season/summer/sp/footer_right.png) no-repeat 0 0;
  background-size: 100% auto;
  right: -6px;
  bottom: 0;
  width: 85px;
  height: 49px;
}

/* チャット表示非表示
-----------------------------------------------------------------*/
.ul-widget-main-window {
	display: none;
  width: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  height: 100% !important;
}
.ul-widget-main-window.open {
  display: block;
}
.chatOpenBtn {
  position: fixed;
  bottom: 88px;
  right: 12px;
  width: 88px;
  height: 132px;
  cursor: pointer;
  z-index: 150;
}
.chatOpenBtn.bottom2 {
}
.chatOpenBtn.hide {
	display: none;
}
.chatBtnWrap {
  position: fixed;
  top: 0;
  right: 0;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 77px;
  z-index: 450;
  display: none;
}
.chatCloseBtn {
  position: absolute;
  right: 4px;
  top: 8px;
  width: 60px;
  height: 60px;
  cursor: pointer;
	z-index: 450;
}
.chatCloseBtn.open {
  display: block;
}
.chatCloseBtn span {
  position: absolute;
  left: 5px;
  width: 50px;
  height: 4px;
  background-color: #FFF;
}
.chatCloseBtn span:nth-of-type(1) {
	top: 19px;
	-webkit-transform: translateY(20px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}
.chatCloseBtn span:nth-of-type(2) {
	top: 41px;
	-webkit-transform: translateY(-20px) rotate(45deg);
	transform: translateY(-13px) rotate(45deg);
}
.chatResetBtn {
  position: absolute;
  right: 72px;
  top: 19px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 450;
	background: url(/common/images/pc/union/icon_chat_reset.svg) no-repeat 0 0;
	background-size: 100% auto;
}
.chatResetBtn.open {
  display: block;
}

/* 印刷時に画面と変更するスタイルを定義 */
@media print {
	body {
		width: 960px;
	}
}


