
.__________________PC-COMMON_________________{}

@media screen and (min-width:768px) { 
#sp-menu{
 display: none;
 }
}

.sp-show{
	display: none;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____body_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
/*━━━━━━━━━━━━━━━━━━
BODY
━━━━━━━━━━━━━━━━━━*/

html, body{
 height: 100%;
 font-family: kozuka-gothic-pr6n, sans-serif;
 font-size: 15px;
 line-height: 28px;
 font-style: normal;
 letter-spacing: 1px;
 color: #231f20;
}

body{
 position: relative;
 padding-top: 120px;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
.anchor{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}

/*ヘッダー固定時のページ内リンク位置調整*/
.anchor,
.r-anchor,
.e-anchor{
 padding-top: 64px;
 margin-top: -64px;
 display: block;
 }

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____a_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
/*━━━━━━━━━━━━━━━━━━
a
━━━━━━━━━━━━━━━━━━*/

a{
 transition: all 0.2s;
 color: #000000;
 text-decoration: none;
}

a:hover{
 filter:alpha(opacity=70);
 opacity:0.7;
 transition:all 0.2s; 
}

a.external-link{
 color: #134193;
}

a.external-link:hover{
 text-decoration: none;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____contents_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
/*━━━━━━━━━━━━━━━━━━
コンテンツ／メイン
━━━━━━━━━━━━━━━━━━*/

#contents{
 clear: both;
 padding-bottom: 60px;
}

#contents-inner{
 width: 1080px;
 margin-right: auto;
 margin-left: auto;
}

#contents::after,
#contents-inner::after{
 content: "";
 display: block;
 clear: both; 
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____header_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
/*━━━━━━━━━━━━━━━━━━
ヘッダー
━━━━━━━━━━━━━━━━━━*/
header{
	width: 100%;
	height: 120px;
	background-color: #FFFFFF;
	padding-left: 30px;
	z-index: 99;
	transition: all 0.2s;
	/* box-shadow */
	box-shadow: 0px -1px 0px 0px #e2e2e2 inset;
	position: fixed;
	top: 0px;
	left: 0px;
}

header .logo {
	float: left;
	margin-right: 1.5%;
	margin-top: 24px;
}

header .logo img{
 height: 74px;
 transition: all 0.2s;
}

._{}

header nav {
 margin-top: 36px;
}

header nav ul li a {
	font-family: "aralet-n", sans-serif;
	font-size: 15px;
	font-weight: 400;
	width: 6.5%;
	min-width: 100px;
	padding-top: 28px;
	text-align: center;
	float: left;
	position: relative;
	overflow: hidden;
	border-radius: 8px;
	color: #222222;
}

header nav ul li a:hover {
 filter:alpha(opacity=100)!important;
 opacity:1!important
}

header nav ul li a span {
	position: relative;
	z-index: 2;
}

header nav ul li a::before {
 content: '';
 position: absolute;
 top: 0;
 left: 0;
 width: 0;
 height: 100%;
 background-color: #e9f6fd;
 transition: width 0.3s;
 z-index: 0;
}

header nav ul li a::after {
 content: '';
 position: absolute;
 top: 0;
 left: 50%;
 transform: translateX(-50%);
 width: 26px;
 height: 26px;
 background-repeat: no-repeat;
 background-size: contain;
 z-index: 2;
 pointer-events: none;
}

header nav ul li > a:hover::before {
 width: 100%;
}

header nav ul li:nth-of-type(1) a::after {
 background-image: url(../../image/common/nav_01.png);
}
header nav ul li:nth-of-type(2) a::after {
 background-image: url(../../image/common/nav_02.png);
}
header nav ul li:nth-of-type(3) a::after {
 background-image: url(../../image/common/nav_03.png);
}
header nav ul li:nth-of-type(4) a::after {
 background-image: url(../../image/common/nav_04.png);
}
header nav ul li:nth-of-type(5) a::after {
 background-image: url(../../image/common/nav_05.png);
}
header nav ul li:nth-of-type(6) a::after {
 background-image: url(../../image/common/nav_06.png);
}
header nav ul li:nth-of-type(7) a::after {
 background-image: url(../../image/common/nav_07.png);
}

._{}

header .box-summary {
  display: flex;
  align-items: center;
  font-family: 'Quicksand', sans-serif;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

header .box-summary .box {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	border-right: 1px solid #ccc;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;	
	/*
	background-color: #CC5052;
	*/
	padding-bottom: 10px;
}

header .box-summary .box:last-child {
 border: none;
}

header .box-summary .box {
  align-self: stretch;
	 transition: all 0.2s ease;
}

header .box-summary .box a {
  display: flex;
  align-items: center;
  color: #1a5ea6;
  font-size: 18px;
  font-weight: 700;
}

header .box-summary .box a img {
  width: 40px;
  height: 40px;
  margin-right: 12px;
	 transition: all 0.2s ease;
}

header .box-summary .tel dl {
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 20px;
}

header .box-summary .tel dt {
  font-size: 20px;
  font-weight: 700;
  color: #1a5ea6;
}

header .box-summary .tel dd {
  font-size: 11px;
  color: #666;
}

header .box-summary .mail {
  display: flex;
  align-items: center;
}

._{}

header.fixed {
  width: 100%;
  height: 65px;
  padding-top: 0px!important;
  transition: all 0.2s;
}
header.fixed .logo {
  margin-top: 15px;
  margin-right: 30px!important;
}
header.fixed .logo img {
  height: 40px;
  transition: all 0.2s;
}
header.fixed nav {
  padding-top: 20px!important;
  margin-top: 0px!important;
}

header.fixed nav ul li a {
	width: auto!important;
	min-width: 0!important;
	font-size: 13px;
	line-height: 28px;
	font-weight: 400;
	text-align: left;
	padding-top: 0px!important;
	padding-left: 25px;
	margin-right: 20px!important;
	display: inline-block;
	padding-right: 10px;
}

header.fixed nav ul li a::after {
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
}

._{}

header.fixed .box-summary .box {
	padding-left: 10px;
	padding-right: 0px;
	padding-top: 10px;	
	padding-bottom: 10px;
	transition: all 0.2s ease;
}

._{}

header.fixed .box-summary .box a img {
  width: 30px;
  height: 30px;
  margin-right: 12px;
	 transition: all 0.2s ease;
}

header.fixed .box-summary .box a span, 
header.fixed .box-summary .box a dl{
 display: none;
}

._{}


@media screen and (max-width: 1560px) {
	
header .box-summary .box {
	padding-left: 10px;
	padding-right: 0px;
	padding-top: 10px;	
	padding-bottom: 10px;
	transition: all 0.2s ease;
}

	
header .box-summary .box a span, 
header .box-summary .box a dl{
 display: none;
}
}


.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____breadcrumbs_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
#breadcrumbs{
 background-color: #f8f8f8;
 line-height: 40px;
 padding-left: 30px;
 padding-right: 30px;
 clear: both;
 font-weight: 300;
}

#breadcrumbs ol {

}

#breadcrumbs ol li {
	margin-bottom: 10px;
	font-size: 13px;
	display: inline;
	margin-right: 10px;
}

#breadcrumbs ol li::after{
 content: "/";
 position: relative;
 right: -8px;
 margin-right: 6px;
}

#breadcrumbs ol li:last-child::after{
	content:"";
}


#breadcrumbs ol li a {
 text-decoration: none;
 color: #2d2d2d;
}

#breadcrumbs ol li a:hover {
	text-decoration: none;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____footer_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}

footer {
	padding-top: 50px;
	padding-bottom: 100px;
	overflow: hidden;
	border-bottom: 1px solid #c9c9c9;
	background-color: #f7fcff;
	background-repeat: repeat-x;
	background-image: url(../../image/estate/top/recommend-list_bg.png);
	background-position: center bottom;
 border-top: 1px solid #231f20;
}

footer .top-col .inner{
	width: 1080px;
	margin-right: auto;
	margin-left: auto;
}

footer .top-col .ttl{
	font-family: 'Quicksand', sans-serif;
	font-size: 20px;
	font-weight: 700;
 color: #0e62c0;
	margin-bottom: 30px;
}

footer .top-col .box {
  position: relative;
}

footer .top-col .box:nth-of-type(1){
	border-bottom: 1px solid #C4C4C4;
	padding-bottom: 25px;
	margin-bottom: 30px;
}

footer .top-col .box:nth-of-type(1) ul {
	display: grid;
	grid-template-columns:
		  140px  /* 1列目 */
    140px  /* 2列目 */
    180px  /* 3列目 */
    140px  /* 4列目 */
    130px  /* 5列目 */
    210px  /* 6列目 */
    210px; /* 7列目 */
}

footer .top-col .box:nth-of-type(1) ul + ul {
	margin-top: 10px;
}

footer .top-col .box ul li a{
 font-size: 13px;
 line-height: 24px;
 font-weight: 400;
	padding-left: 22px;
	background-image: url(../../image/common/common-marker.png);
	background-position: left 4px;
	background-size: 14px auto;
	background-repeat: no-repeat;
	display: block;
}

footer .top-col .box ul li{
	margin-bottom: 5px;
}

footer .top-col .box ul li.external-link a{
	background-image: url(../../image/common/footer_external-link.png);
}

._{}


footer .top-col .box:nth-of-type(2)  {
  position: relative;
  padding-bottom: 25px;
}

footer .top-col .box:nth-of-type(2)::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 6px;
  background-image: radial-gradient(circle, #367dcb 0.2px, transparent 2.2px);
  background-size: 12px 6px;
  background-repeat: repeat-x;
  background-position: left center;
}

footer .top-col .box:nth-of-type(2) ul {
	display: grid;
	grid-template-columns: 250px  /* 1列目 */
    220px  /* 2列目 */
    265px  /* 3列目 */
    260px  /* 4列目 */;
}

footer .top-col .box:nth-of-type(2) .inner-box + .inner-box{
	margin-top: 10px;
}

footer .top-col .box:nth-of-type(2) p{
 font-size: 13px;
 line-height: 24px;
 font-weight: 600;
	margin-bottom: 5px;
}


footer .bottom-col {
	display: grid;
	grid-template-columns: repeat(2, auto);
	gap: 60px;
	justify-content: center;
	align-items: center;
	padding-top: 56px;
	padding-bottom: 44px;
}

footer .bottom-col .logo{

}

footer .bottom-col .logo img{
 height: 76px;
}

footer .bottom-col access{
 
}

footer .bottom-col access p{
 font-size: 13px;
	line-height: 20px;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____copyright_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}

#copyright{
 background-color: #0e62c0;
 text-align: center;
 line-height: 50px;
 color: #FFFFFF;
 font-size: 13px;
 font-weight: 400;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
.fadeIn{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}

/* fadeIn */

.fadeIn{
animation-name: fadeInAnime;
animation-duration:1.2s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeInTrigger{
    opacity: 0;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____page-top_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
/*━━━━━━━━━━━━━━━━━━
ページトップへ
━━━━━━━━━━━━━━━━━━*/

#page-top a{
 position: fixed;
 right: 35px;
 bottom: 20px;
 display: block;
 width: 58px;
 height: 58px;
 background-repeat: no-repeat;
 background-position: center center;
 border-radius: 9999px;
}

#page-top a{
 background-color: #FFFFFF;
 background-image: url(../../image/common/page-top.png);
 background-size: 18px 9px;
 border: 1px solid #231f20;
}

#page-top a{
 background-color: #0e62c0;
 background-image: url(../../image/common/estate/page-top.png);
 background-size: 20px 11px;
 border: 1px solid #0e62c0;
}


.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____fixed-contact_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
.fixed-contact{
	display: none;
}

.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}
._____common-table_____{}
.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX{}

.common-table {
 margin-bottom: 30px;
 border-top: 1px solid #eeeeee;
 width: 100%;
 margin-top: 0px;
}

.common-table tr {
	background: #FFFFFF;
}

.common-table th,
.common-table td{
 padding-top: 20px;
 padding-right: 20px;
 padding-left: 20px;
 padding-bottom: 20px;
 border-bottom: 1px dotted #999999;
 border-top-style: none;
 border-right-style: none;
 border-left-style: none;
}

.common-table td{
 width: 66%;
}

.common-table th {
 text-align: left;
 font-weight: 400;
 background-color: #f8f8f8;
 width: 26%;
 vertical-align: middle;
}

.common-table td .txt {
 margin-top: 10px;
 font-size: 13px;
 line-height: 24px;
 font-weight: 400;
 }
