@charset "utf-8";
/* ****************************************************

top.css
-----------------------------------
1: contents parts for PC & Tablet
-----------------------------------
2: contents parts for Smartphone
-----------------------------------
ex: clearfix

***************************************************** */


/*=================================

	1: contents parts for PC

================================ */

/* layout
================================ */
#top #main {
	margin-top: 0;
}
#top #contentsWrap {
	padding-bottom: 0;
}
#top #mainBannerArea {
	background: #eef3f3;
}
#top #main #contents > #mainVisual,
#top #main #contents > #menuWrap,
#top #main #contents > [class*="bgSection-"] {
	width: 100%;
}
#top #gNav .menuBox {
	top: auto;
	bottom: 100%;
}
#top #gNav .menuBox .cellWrap:after {
	top: auto;
	bottom: -15px;
}
#top #gNav .menuBox[data-nav="corporate"] .cellWrap:after {
	background: url(/common/img/gnav_bg03.png) no-repeat 0 0;
}
#top #gNav .menuBox[data-nav="bukken"] .cellWrap:after {
	background: url(/common/img/gnav_bg03.png) no-repeat 0 0;
}
#top #gNav .menuBox[data-nav="ir"] .cellWrap:after {
	background: url(/common/img/gnav_bg03.png) no-repeat 0 0;
}
#top #gNav .menuBox[data-nav="csr"] .cellWrap:after {
	background: url(/common/img/gnav_bg04.png) no-repeat 0 0;
}
#top #gNav .menuBox[data-nav="recruit"] .cellWrap:after {
	background: url(/common/img/gnav_bg04.png) no-repeat 0 0;
}

/* main
================================ */
/* mainSlider */
#mainVisual {
	overflow: hidden;
}
#mainVisual .mainSliderWrap {
	width: 100%;
	margin: 0 auto ;
	height: 449px;
	overflow: hidden;
}
#mainVisual .mainSlider {
	margin: 0;
}
#mainVisual .mainSlider > li {
	height: 449px !important;
}
#mainVisual .mainSlider > li .slideItem {
	position: relative;
	width: 100%;
	height: 449px;
	overflow: hidden;
}
#mainVisual .mainSlider > li .slideItem > .inner {
	display: block;
	position: absolute;
	width: 1920px;
	left: 50%;
	height: 449px;
	margin-left: -960px;
}
#mainVisual .bx-wrapper {
	margin: 0 auto;
}
#mainVisual .bx-wrapper .bx-viewport {
	left: 0;
	border: none;
	-webkit-box-shadow: none;
	   -moz-box-shadow: none;
					box-shadow: none;
}
/* PAGER */
#mainVisual .bx-wrapper .bx-pager {
	padding-top: 0;
	bottom: 15px;
}
#mainVisual .bx-wrapper .bx-pager.bx-default-pager a {
	background: #ffffff;
	text-indent: -9999px;
	display: block;
	position: relative;
	width: 16px;
	height: 16px;
	margin: 0 10px;
	border: solid 1px #cccccc;
	outline: 0;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
#mainVisual .bx-wrapper .bx-pager.bx-default-pager a:hover:after,
#mainVisual .bx-wrapper .bx-pager.bx-default-pager a.active:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	height: 10px;
	width: 10px;
	margin-top: -5px;
	margin-left: -5px;
	background: #70c5d2;
	border-radius: 50%;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
#mainVisual .bx-wrapper .bx-prev {
	left: 50%;
	margin-left: -500px;
	background: url(/img/index_slider_ic01.png) no-repeat 0 0;
}
#mainVisual .bx-wrapper .bx-next {
	right: 50%;
	margin-right: -500px;
	background: url(/img/index_slider_ic02.png) no-repeat 0 0;
}

#mainVisual .bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	outline: 0;
	width: 24px;
	height: 44px;
	margin-top: -22px;
	text-indent: -9999px;
	z-index: 99;
}
#mainVisual .bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}

/* parts
================================ */

#top h1.outline {
	display: none;
}
#top .importantBox {
	margin-top: 30px;
	padding: 15px;
	background: #ffffff;
	border: solid 1px #d24e4e;
	border-radius: 5px;
	overflow: hidden;
}
#top [class*="bgSection-"] > .importantBox:first-child {
	margin-top: -20px !important;
}
#top .importantBox > *:first-child {
	margin-top: 0 !important;
}
#top .importantBox .importantTxt {
	position: relative;
	padding-left: 35px;
	color: #d24e4e;
}
#top .importantBox .importantTxt:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 18px;
	width: 21px;
	background: url(/common/img/com_caution_ic01.png) no-repeat 0 0;
}
#top [class*="bgSection-"] {
	padding: 50px 0;
}
#top [class*="bgSection-"] > *:first-child {
	margin-top: 0 !important;
}
#top [class*="bgSection-"] > .imgHeading {
	text-align: center;
}
#top [class*="bgSection-"] > .imgHeading + * {
	margin-top: 40px;
}
#top .bgSection-01 {
	background: #eef3f3;
}
#top .bgSection-02 {
	background: #ffffff;
}
#top .bgSection-03 {
	background: #ffffff;
}
#top [class*="bgSection-"] > * {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
#top .doorLink {
	margin-top: 30px;
}
#top .doorLink > .link {
	display: block;
	float: left;
	color: #333333;
	text-decoration: none;
	border-radius: 5px;
	background: #ffffff;
	overflow: hidden;
	-webkit-box-shadow: 0px 2px 0px 0px rgba(229,237,237,1);
		 -moz-box-shadow: 0px 2px 0px 0px rgba(229,237,237,1);
					box-shadow: 0px 2px 0px 0px rgba(229,237,237,1);
	-webkit-transition: opacity 0.3s ease-out 0s;
		 -moz-transition: opacity 0.3s ease-out 0s;
					transition: opacity 0.3s ease-out 0s;
}
#top .doorLink > .link:hover {
	opacity: 0.6;
}
#top .doorLink > .link img {
	opacity: 1;
}
#top .doorLink.count3 > .link {
	width: 31%;
	margin-right: 3.5%;
	
}
#top .doorLink.count3 > .link:nth-child(3n) {
	margin-right: 0;
}
#top .doorLink.count3 > .link:nth-child(n+4) {
	margin-top: 20px;
}
#top .doorLink > .link > .txtArea {
	display: table;
	width: 100%;
	position: relative;
}
#top .doorLink > .link > .txtArea:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -3px;
	right: -3px;
	height: 0;
	width: 0;
	border-top: solid 7px #4bbbcd;
	border-right: solid 7px transparent;
	border-bottom: solid 7px transparent;
	border-left: solid 7px transparent;
	-webkit-transform: rotate(-45deg);
		 -moz-transform: rotate(-45deg);
					transform: rotate(-45deg);
}
#top .doorLink > .link > .txtArea > *:first-child {
	margin-top: 0 !important;
}
#top .doorLink > .link > .txtArea > .title {
	display: table-cell;
	padding: 12px 10px;
	font-size: 19px;
	font-size: 1.9rem;
	color: #666666;
	text-align: center;
	vertical-align: middle;
}
#top .categoryBtn-bukken {
	margin-top: 30px;
}
#top .categoryBtn-bukken > li {
	display: table;
	position: relative;
	float: left;
	width: 31%;
	margin-right: 3.5%;
	border: solid 1px #e5eded;
	border-bottom: solid 3px #e5eded;
	border-radius: 5px;
	overflow: hidden;
}
#top .categoryBtn-bukken > li:nth-child(3n) {
	margin-right: 0;
}
.pc#top .categoryBtn-bukken > li:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 8px;
	height: 8px;
	width: 8px;
	margin-top: -4px;
	border-right: 2px solid #9e9e9f;
	border-bottom: 2px solid #9e9e9f;
	-webkit-transform: rotate(-45deg);
		 -moz-transform: rotate(-45deg);
					transform: rotate(-45deg);
}
.pc#top .categoryBtn-bukken > li.typeOffice:after {
	border-right-color: #90d2dc;
	border-bottom-color: #90d2dc;
}
.pc#top .categoryBtn-bukken > li.typeResidence:after {
	border-right-color: #bace6c;
	border-bottom-color: #bace6c;
}
.pc#top .categoryBtn-bukken > li.typeHotel:after {
	border-right-color: #d3bbda;
	border-bottom-color: #d3bbda;
}
.pc#top .categoryBtn-bukken > li:hover:after {
	border-right-color: #ffffff !important;
	border-bottom-color: #ffffff !important;
}
#top .categoryBtn-bukken > li > a {
	display: table-cell;
	position: relative;
	height: 155px;
	color: #333333;
	text-decoration: none;
	text-align: left;
	vertical-align: middle;
	background: #ffffff;
}
#top .categoryBtn-bukken > li > a:before{
	content:"";
	position: absolute;
	top: -22px;
	left: -70px;
	width: 200px;
	height: 200px;
	border-radius: 400px;
}
#top .categoryBtn-bukken > li.typeOffice > a:before{
	background: #70c5d2;
}
#top .categoryBtn-bukken > li.typeResidence > a:before{
	background: #bace6c;
}
#top .categoryBtn-bukken > li.typeHotel > a:before{
	background: #cbafd4;
}
.pc#top .categoryBtn-bukken > li > a:hover:before{
	width: 500px;
	-webkit-transform: scale(2.2);
	 	 -moz-transform: scale(2.2);
					transform: scale(2.2);
	-webkit-transition: all ease-out 1s;
		 -moz-transition: all ease-out 1s;
					transition: all ease-out 1s;
}
#top .categoryBtn-bukken > li > a .txtArea {
	position: relative;
	padding-left: 140px;
	padding-right: 20px;
}
#top .categoryBtn-bukken > li > a .txtArea:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 5px;
	height: 80px;
	width: 114px;
	margin-top: -40px;
}
#top .categoryBtn-bukken > li.typeOffice > a .txtArea:before {
	background: url(/img/index_ic01.png) no-repeat 0 0;
}
#top .categoryBtn-bukken > li.typeResidence > a .txtArea:before {
	background: url(/img/index_ic02.png) no-repeat 0 0;
}
#top .categoryBtn-bukken > li.typeHotel > a .txtArea:before {
	background: url(/img/index_ic03.png) no-repeat 0 0;
}
#top .categoryBtn-bukken > li > a .txtArea > *:first-child {
	margin-top: 0 !important;
}
#top .categoryBtn-bukken > li > a .txtArea .title {
	color: #666666;
	font-size: 20px;
	font-size: 2.0rem;
}
#top .categoryBtn-bukken > li > a .txtArea .sub {
	margin-top: 5px;
	font-size: 12px;
	font-size: 1.2rem;
}
#top .categoryBtn-bukken > li.typeOffice > a .txtArea .sub {
	color: #70c5d2;
}
#top .categoryBtn-bukken > li.typeResidence > a .txtArea .sub {
	color: #bace6c;
}
#top .categoryBtn-bukken > li.typeHotel > a .txtArea .sub {
	color: #cbafd4;
}
.pc#top .categoryBtn-bukken > li > a:hover .txtArea .title,
.pc#top .categoryBtn-bukken > li > a:hover .txtArea .sub {
	color: #ffffff !important;
}
#top .boxNews01 {
	margin-top: 0;
	padding: 5px 20px 30px;
	background: #ffffff;
	border-radius: 0 0 5px 5px;
	-webkit-box-shadow: 0px 2px 0px 0px rgba(229,237,237,1);
		 -moz-box-shadow: 0px 2px 0px 0px rgba(229,237,237,1);
					box-shadow: 0px 2px 0px 0px rgba(229,237,237,1);
}
#top .boxNews01 dl dt {
	color: #333333;
}
#top .rssLinkWrap {
	margin-top: 1em;
	letter-spacing: -4px;
	text-align: right;
}
#top .rssLinkWrap > * {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	margin-top: 0;
}
#top .rssLinkWrap > * + * {
	margin-left: 25px;
	font-size: 13px;
	font-size: 1.3rem;
}
#top .rssLinkWrap .link {
	position: relative;
	padding-left: 15px;
}
#top .rssLinkWrap .link:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0.4em;
	left: 0;
	height: 7px;
	width: 7px;
	border-right: 1px solid #9e9e9f;
	border-bottom: 1px solid #9e9e9f;
	-webkit-transform: rotate(-45deg);
		 -moz-transform: rotate(-45deg);
					transform: rotate(-45deg);
}
#top .rssLinkWrap .rssLink {
	position: relative;
	padding-right: 23px;
}
#top .rssLinkWrap .rssLink:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	height: 15px;
	width: 15px;
	background: url(/common/img/com_rss_ic01.png) no-repeat 0 0;
	-webkit-background-size: 15px 15px;
		 -moz-background-size: 15px 15px;
					background-size: 15px 15px;
}
#top .rssLinkWrap + [class*="btnType"].news {
	margin-top: 0;
}
#top [class*="btnType"].news li a {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: normal;
	min-width: 180px;
}
#top [class*="btnType"].news.is-top li {
	vertical-align: top;
}
#top [class*="btnType"].news li.is-btnTypeIr {
	margin-top: 0;
	margin-left: 20px;
}

@media screen and (min-width: 769px), print {
#top #header {
	border-bottom: solid 1px #e7e7e7;
}
#top #gNav {
	border-bottom: solid 2px #4bbbcd;
}
}


/*=================================

	2: contents parts for SP

================================ */

@media screen and (max-width: 768px) {
/* layout
================================ */
#top #main #contents > #mainVisual,
#top #main #contents > #menuWrap,
#top #main #contents > [class*="bgSection-"] {
	width: auto;
	margin-left: -10px;
	margin-right: -10px;
}

/* main
================================ */
/* mainSlider */
#mainVisual .mainSliderWrap {
	height: 225px;
}
#mainVisual .mainSlider > li {
	height: 225px !important;
}
#mainVisual .mainSlider > li .slideItem {
	height: 225px;
}
#mainVisual .mainSlider > li .slideItem > .inner {
	width: 960px;
	height: 225px;
	margin-left: -480px;
}

/* PAGER */
#mainVisual .bx-wrapper .bx-pager {
	padding-top: 0;
	bottom: 10px;
}
#mainVisual .bx-wrapper .bx-pager.bx-default-pager a {
	width: 13px;
	height: 13px;
	margin: 0 5px;
}
#mainVisual .bx-wrapper .bx-pager.bx-default-pager a.active:after {
	height: 8px;
	width: 8px;
	margin-top: -4px;
	margin-left: -4px;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
#mainVisual .bx-wrapper .bx-prev {
	margin-left: 0;
	left: 10px;
	-webkit-background-size: 12px 22px;
					background-size: 12px 22px;
}
#mainVisual .bx-wrapper .bx-next {
	margin-right: 0;
	right: 10px;
	-webkit-background-size: 12px 22px;
					background-size: 12px 22px;
}
#mainVisual .bx-wrapper .bx-controls-direction a {
	width: 12px;
	height: 22px;
	margin-top: -11px;
}

/* parts
================================ */
#top .importantBox {
	margin-top: 15px;
	padding: 10px;
}
#top [class*="bgSection-"] > .importantBox:first-child {
	margin-top: -5px !important;
}
#top .importantBox .importantTxt {
	padding-left: 20px;
}
#top .importantBox .importantTxt:before {
	height: 13px;
	width: 15px;
	top: 0.2em;
	-webkit-background-size: 15px 13px;
					background-size: 15px 13px;
}
#top [class*="bgSection-"] {
	padding: 15px 10px;
}
#top [class*="bgSection-"] > .imgHeading + * {
	margin-top: 15px;
}
#top [class*="bgSection-"] > * {
	width: 100%;
}
#top .doorLink {
	margin-top: 15px;
}
#top .doorLink.count3 > .link {
	width: 32%;
	margin-right: 2%;
}
#top .doorLink.count3 > .link:nth-child(n+4) {
	margin-top: 15px;
}
#top .doorLink > .link > .txtArea > .title {
	display: table-cell;
	padding: 7px;
	font-size: 12px;
	font-size: 1.2rem;
}
#top .categoryBtn-bukken {
	margin-top: 15px;
}
#top .categoryBtn-bukken > li {
	position: relative;
	width: 32%;
	margin-right: 2%;
}
#top .categoryBtn-bukken > li:after {
	content: "";
	display: block;
	position: absolute;
	top: auto !important;
	bottom: 0 !important;
	right: -2px !important;
	height: 0 !important;
	width: 0 !important;
	margin: 0 !important;
	border-top: solid 5px #4bbbcd !important;
	border-right: solid 5px transparent !important;
	border-bottom: solid 5px transparent !important;
	border-left: solid 5px transparent !important;
	-webkit-transform: rotate(-45deg);
		 -moz-transform: rotate(-45deg);
					transform: rotate(-45deg);
}
#top .categoryBtn-bukken > li.typeOffice:after {
	border-top-color: #70c5d2 !important;
}
#top .categoryBtn-bukken > li.typeResidence:after {
	border-top-color: #bace6c !important;
}
#top .categoryBtn-bukken > li.typeHotel:after {
	border-top-color: #cbafd4 !important;
}
#top .categoryBtn-bukken > li > a {
	height: 120px;
	padding: 70px 5px 7px;
	text-align: center;
}
#top .categoryBtn-bukken > li > a:before{
	content:"";
	display:block;
	position: absolute;
	top: 0;
	left:50%;
	width: 300px;
	height: 300px;
	margin-top: -235px;
	margin-left: -150px;
	border-radius: 400px;
	-webkit-transition: none;
					transition: none;
}
#top .categoryBtn-bukken > li > a:after {
	content: "";
	position: absolute;
	top: 10px;
	left: 50%;
	height: 40px;
	width: 57px;
	margin: 0 0 0 -28px;
	-webkit-background-size: 57px 40px !important;
					background-size: 57px 40px !important;
}
#top .categoryBtn-bukken > li.typeOffice > a:after {
	background: url(/img/index_ic01.png) no-repeat 0 0;
}
#top .categoryBtn-bukken > li.typeResidence > a:after {
	background: url(/img/index_ic02.png) no-repeat 0 0;
}
#top .categoryBtn-bukken > li.typeHotel > a:after {
	background: url(/img/index_ic03.png) no-repeat 0 0;
}
#top .categoryBtn-bukken > li > a .txtArea {
	padding: 0;
}
#top .categoryBtn-bukken > li > a .txtArea:before {
	display: none;	
}
#top .categoryBtn-bukken > li > a .txtArea .title {
	font-size: 12px;
	font-size: 1.2rem;
}
#top .categoryBtn-bukken > li > a .txtArea .sub {
	display: none;
}
#top .boxNews01 {
	margin-top: 0;
	padding: 5px 10px 10px;
}
#top .boxNews01 dl dt {
	color: #333333;
}
#top .rssLinkWrap {
	text-align: center;
}
#top .rssLinkWrap > * + * {
	font-size: 12px;
	font-size: 1.2rem;
}
#top .rssLinkWrap .link {
	position: relative;
	padding-left: 15px;
}
#top .rssLinkWrap .link:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0.4em;
	left: 0;
	height: 7px;
	width: 7px;
	border-right: 1px solid #9e9e9f;
	border-bottom: 1px solid #9e9e9f;
	-webkit-transform: rotate(-45deg);
		 -moz-transform: rotate(-45deg);
					transform: rotate(-45deg);
}
#top .rssLinkWrap .rssLink {
	position: relative;
	padding-right: 23px;
}
#top .rssLinkWrap .rssLink:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	height: 15px;
	width: 15px;
	background: url(/common/img/com_rss_ic01.png) no-repeat 0 0;
	-webkit-background-size: 15px 15px;
		 -moz-background-size: 15px 15px;
					background-size: 15px 15px;
}
#top .rssLinkWrap + [class*="btnType"].news {
	margin-top: 15px;
}
#top [class*="btnType"].news li a {
	display: inline-block;
	font-size: 12px;
	font-size: 1.2rem;
}
#top [class*="btnType"].news li.is-btnTypeIr {
	margin-top: 1.5em;
	margin-left: auto;
}

}


/* Clearfix
------------------------------------------------------ */
#top .doorLink:after,
#top .categoryBtn-bukken:after {
	content: "";
	display: block;
	clear: both;
}