@charset "UTF-8";



/*ループスライダーの設定*/

.loopslider {
	margin: 0 auto;
	width: 100%;
	height: 217px;
	text-align: left;
	position: relative;
	overflow: hidden;
}
.loopslider ul {
	width: 100%;
	height: 217px; 
	float: left;
	display: inline;
	overflow: hidden;
}
.loopslider ul li {
	width: 217px;
	height: 217px;
	float: left;
	display: inline;
}

.loopslider ul li img{
	width: 217px;
	height: 217px;
	}
.loopslider .loopslider_wrap{
	height:217px !important;
	}	

/*	ClearFixElements */
.loopslider ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}

.loopslider ul {
	display: inline-block;
	overflow: hidden;
}

/* hero ----------
------------------*/
.hero{
	width: 100%;
	min-width: 1110px;
	margin: 80px auto 75px;
	position: relative;
}
.hero .hero_inner {
	position: relative;
	width: 100%;
}
.hero .hero_inner .hero_inner_has_banner{
	position: absolute;
	top: 30px;
	right: 60px;
	z-index: 100;
}
.hero .hero_inner ul {
	line-height: 0;
}
.hero .hero_inner ul li {
	width: 100%;
}
.hero .hero_inner ul li img{
	width: 100%;
	height: auto;
}
/* ページャー */
.hero .hero_slide_pager {
    position: absolute;
    top: 42%;
	left: 0;
	width: 100%;
	z-index: 100;
}
.hero .hero_slide_pager li {
	position: absolute;
	display: inline-block;
	width: auto;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	min-height: inherit;
	text-indent: -9999px;
	width: 30px;
	height: 30px;
	border: 3px solid #CC0000;
	border-width: 3px 3px 0 0;
	overflow: hidden;
}
.hero .hero_slide_pager li:hover {
	opacity: .7;
	-webkit-opacity: .7;
}
.hero .hero_slide_pager li.prev {
	left: 30px;
	transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
.hero .hero_slide_pager li.next {
	right: 30px;
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
/* マーカー */
.hero .hero_slide_marker {
	clear: both;
	text-align: center;
	position: absolute;
	z-index: 50;
	bottom: 100px;
	width: 100%;
	margin: 0 auto;
}
.hero .hero_slide_marker li {
	display: inline-block;
	width: 15px;
	height: 15px;
	margin: 0 10px 0 0;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	background-color: #ffffff;
	cursor: pointer;
}
.hero .hero_slide_marker li.current {
	background-color: #CC0000;
}

/* メニュー */
.hero .hero_slide_marker + ul {
	margin: 0 auto;
	background-color: #fff;
/*	width: 945px; /* 4 */
	width: 719px; /* 3 */
	margin: -84px auto 0;
	padding: 10px 10px 0 10px;
	position: relative;
	z-index: 100;
	border-radius: 8px;
}
.hero .hero_slide_marker + ul li {
	display: inline-block;
	text-align: center;
	font-size: 176%;
	font-weight: 300;
	letter-spacing: 0.1em;
	width: 230px;
	margin-right: 1px;
	overflow: hidden;
	position: relative;
	z-index: 100;
}
.hero .hero_slide_marker + ul li:last-child{
	margin-right: 0;
}
.hero .hero_slide_marker + ul li a {
	color: #fff;
	display: block;
	padding: 20px 40px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	position: relative;
}
.hero .hero_slide_marker + ul li a::after{
	display: block;
	position: absolute;
	right: 8%;
	top: 31%;
	width: 13px;
	height: 26px;
	content: "";
	background: transparent url(../img/common/arrow_right.svg) no-repeat 92% center;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}
.hero .hero_slide_marker + ul li a:hover{
	opacity: .7;
	-webkit-opacity: .7;
}
.hero .hero_slide_marker + ul li a:hover::after{
	right: 5%;
}
.hero .hero_slide_marker + ul li.hero_cate01 a{
	background: #CC0000; /*  url(../img/top/cate_overlay01.png) no-repeat; */
	background-position: right bottom;
	border-radius: 8px;
}
.hero .hero_slide_marker + ul li.hero_cate02 a{
	background: #CC0000; /*  url(../img/top/cate_overlay02.png) no-repeat; */
	background-position: right bottom;
	border-radius: 8px;
}
.hero .hero_slide_marker + ul li.hero_cate03 a{
	background: #CC0000; /*  url(../img/top/cate_overlay03.png) no-repeat; */
	background-position: right bottom;
	border-radius: 8px;
}
.hero .hero_slide_marker + ul li.hero_cate04 a{
	background: #CC0000; /*  url(../img/top/cate_overlay04.png) no-repeat; */
	background-position: right bottom;
	border-radius: 8px;
}

.hero_sp {
	display: none;
}
@media screen and (max-width: 798px) {
	.hero {
		display: none;
	}
	.hero_sp {
		display: block;
		overflow: hidden;
		width: 100%;
		padding: 0 20px;
		margin: 110px auto 30px;
	}
	.hero_sp ul li {
		display: block;
		float: left;
		margin: 0 auto 1%;
/*		width: 32%; */
	}
	.hero_sp ul li + li {
		margin-left: 2%;
	}
	.hero_sp ul li:nth-child(5) {
		margin: 0 auto;
		width: 66%;
	}
	.hero_sp ul li ul li {
		float: none;
		margin: 0 auto 1%;
		width: 100%;
	}
	.hero_sp img {
		width: 100%;
	}

}



/* cate_list --------
-------------------*/
ul.cate_list {
	width: 1000px;
	margin: 0 auto;
	margin-bottom: 30px;
	text-align: center;
}
ul.cate_list li {
	text-align: center;
	margin-right: 12px;
	padding: 15px 0;
	display: inline-block;
	font-size: 130%;
	background-color: #dfdfdf;
	border: 1px solid #dfdfdf;
}
ul.cate_list li a {
	color: #CC0000;
}
ul.cate_list li:hover a {
	color: #fff;
}
ul.cate_list li:last-child{
	margin-right: 0;
}
ul.cate_list li.tab_current,
ul.cate_list li:hover {
/*	background: #CC0000 url(../img/top/bg_tab_chara.png) no-repeat 95% bottom; */
	background: #CC0000;
	border: 1px solid #d1d1d1;
}
ul.cate_list li.tab_current a {
	color: #fff;
}
@media screen and (max-width: 798px) {
	.tab_list {
		width: 100%;
		white-space: nowrap;
	}
	.tab_list::-webkit-scrollbar {
		display: none;
	}
	ul.cate_list li {
		margin-right: 0;
		border-right: 2px solid #ffffff;
	}
}



/* topics ----------
------------------*/
.topics{
	width: 100%;
	min-width: 1110px;
	margin-bottom: 90px;
}
.cate_topic li{
	width: 241px;
}
.topics .topic_articles {
	text-align: center;
}
.topics .topic_articles ul {
	text-align: left;
	margin-bottom: 30px;
}
.topics .topic_articles ul li{
	width: 25%;
	float: left;
	margin-bottom: 30px;
}
.topics .topic_articles ul li figure {
	line-height: 0;
}
.topics .topic_articles ul li figure img{
	width: 100%;
}

.topics .topic_articles ul li .txt{
	padding: 4% 5%;
	border-right: 1px dashed #ababab;
}
.topics .topic_articles ul li:nth-child(4n) .txt{
	border: none;
}
.topics .topic_articles ul li a{
	display: block;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}
.topics .topic_articles ul li a:hover {
	opacity: .7;
	-webkit-opacity: .7;
}
.topics .topic_articles ul li figure,
.topics .topic_articles ul li a figure{
	position: relative;
	background: #ddd;
	line-height: 0;
	height: 220px;
	overflow: hidden;
}
.topics .topic_articles ul li.pickup figure:before,
.topics .topic_articles ul li.pickup a figure:before{
	content: "";
	color: #fff;
	display: block;
	width: 71px;
	height: 71px;
	background: transparent url(../img/top/topic_tag01.png) no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}
.topics .topic_articles ul li a figure img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center;
	font-family: 'object-fit: cover; object-position: center;';
}
.topics .topic_articles ul li h3{
	font-size: 115%;
	font-weight: 300;
	line-height: 1.7;
	margin-bottom: 17px;
}
.topics .topic_articles ul li h3 span{
	background-color:  #ae2121;
	font-family: 'Roboto', sans-serif;
	font-size: 73%;
	color: #fff;
	padding: 5px 7px 3px 7px;
}
.topics .topic_articles ul li p.date{
	color: #CC0000;
	float: left;
	margin-right: 2%;
}
.topics .topic_articles ul li ul.topics_tag{
	float: left;
	width: 68%;
}
.topics .topic_articles ul li ul.topics_tag:before {
	content: "/";
	display: inline-block;
	float: left;
	margin-right: 3px;
}
.topics .topic_articles ul li ul.topics_tag li{
	width: auto;
	margin: 0 2% 0 0;
}
.topics .topic_articles ul li ul.topics_tag li + li::before{
	content: ",";
	margin: 0 3px 0 0;
}
.topics .topic_articles ul li ul.topics_tag li a{
	display: inline;
	color: #CC0000;
	text-decoration: underline;
	transition: none;
	-webkit-transition: none;
}
.topics .topic_articles ul li ul.topics_tag li a:hover{
	text-decoration: none;
	opacity: 1;
	-webkit-opacity: 1;

}
.btn_more {
	display: inline-block;
	min-width: 280px;
	margin: 0 auto;
	text-align: center;
	font-size: 138%;
	background: #CC0000 url(../img/common/arrow_right.svg) no-repeat 92% center;
	border: 1px solid #d1d1d1;
	box-shadow: 0px 0px 5px 4px #CC0000 inset;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}
.btn_more:hover {
	background-position: 93% center;
	opacity: .7;
	-webkit-opacity: .7;
}
.btn_more a {
	color: #fff;
	display: block;
	padding: 20px 60px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

@media screen and (max-width: 798px) {
	.topics{
		margin-bottom: 80px;
		min-width: inherit;
	}
	ul.cate_list {
		width: 100%;
		margin-bottom: 30px;
	}
	.cate_topic li {
		width: auto;
		padding: 15px 2% !important;
		font-size: 3.5vmin !important;
	}
	.cate_topic li:first-child { width: 11%;}
	.cate_topic li:nth-child(2) { width: 29%;}
	.cate_topic li:nth-child(3) { width: 34%;}
	.cate_topic li:last-child { width: 26%;}

	.topics .topic_articles {
		width: 100%;
		padding: 0 4%;
		margin-bottom: 50px;
	}
	.topics .topic_articles ul li {
	    width: 100%;
	    float: none;
	    margin-bottom: 30px;
	    position: relative;
	    border-bottom: 2px solid #e5e5e5;
		padding: 0 20px 4%;
		overflow: hidden;
	}
	.topics .topic_articles ul li:nth-child(n+4) {
		display: none;
	}
	.topics .topic_articles ul li figure,
	.topics .topic_articles ul li a figure {
		width: 100%;
		float: none;
		margin: 0 auto 20px;
		height: 50vmin;
	}
	.topics .topic_articles ul li .txt {
		border: none;
		float: none;
		width: 100%;
		padding: 0;
	}
	.topics .topic_articles ul li.pickup a figure:before {
	    content: "";
	    width: 100%;
	    height: 45%;
	    background: transparent url(../img/top/topic_tag01.png) no-repeat;
	    background-size: auto 100%;
	    left: 0;
	}
	.topics .topic_articles ul li p.date {
	    float: none;
		display: inline-block;
		vertical-align: top;
	}
	.topics .topic_articles ul li ul.topics_tag {
	    float: none;
		display: inline-block;
		vertical-align: middle;
		margin-bottom: 0;
	}
	.topics .topic_articles ul li ul.topics_tag li {
	    width: auto;
	    margin: 0 2% 2% 0;
	    border: none;
	    float: left;
		padding: 0;
	}
}
/* sites ----------
------------------*/
.sites{
	margin-bottom: 100px;
	min-width: 1110px;
}
ul.cate_sites{
	display: table;
}
ul.cate_sites li{
	width: 123px;
	margin: 0 1px 15px;
	font-size: 114.28%;
	vertical-align: middle;
	display: table-cell;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
}
ul.cate_sites li.double{
	padding: 6px 0;
}
ul.cate_sites li:last-child{
	margin: 0 1px 15px;
}
.sites_articles{
	width: 1000px;
	margin: 0 auto;
}
.sites_articles h5 {
	margin: 10px auto 25px;
	padding: 1em 20px;
	background: url("../img/common/bg_h5.png") no-repeat 0 50%;
	background-size: 4px 18px;
	border-bottom: 1px solid #cacaca;
	overflow: hidden;
	line-height: 1.5;
	font-size: 1.1428em;
	font-weight: 500;
	letter-spacing: .025em;
}
.sites_articles ul + h5 {
	margin-top: 45px;
}
.sites_articles ul{}
.sites_articles ul li{
/*	width: 235px; */
	width: 48%;
	margin: 0 20px 20px 0;
	float: left;
	position: relative;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	overflow: hidden;
	min-height: 210px;
}
.sites_articles ul li:hover{
	cursor: pointer;
}
.sites_articles ul li:nth-child(4n){
	margin-right: 0;
}
.sites_articles ul li a{
	display: block;
	position: relative;
	z-index: 100;
}
.sites_articles ul li a .logo{
	text-align: center;
	padding: 20px 0 10px 0;
	min-height: 100px;
	display: flex;
	display: -webkit-flex;
	display: -ms-flexbox;
	align-items: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
}
.sites_articles ul li a .logo img{}
.sites_articles ul li a p{
	text-align: center;
	padding: 0 22px 25px;
	font-size: 107%;
	line-height: 1.7;
	color: #000;
}
.sites_articles ul li span {
	text-align: center;
	padding: 0 22px 25px;
	font-size: 200%;
	line-height: 1.7;
	color: #CC0000;
	font-weight: 500;
}


.sites_articles ul li::before,
.sites_articles ul li::after {
    content: '';
    width: 95%;
    height: 95%;
    position: absolute;
    display: inline-block;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}
.sites_articles ul li::before{
	border-right: solid 1px #660000;
    border-top: solid 1px #660000;
    top: 0;
    right: 0;
}
.sites_articles ul li::after {
	border-left: solid 1px #CC0000;
    border-bottom: solid 1px #CC0000;
    bottom: 0;
    left: 0;
}
.sites_articles ul li:hover::before,
.sites_articles ul li:hover::after {
	width: 98.4%;
	height: 98.4%;
	border-width: 4px;
}

.sites_articles .sites_relation h5 {
	text-align: center;
	padding: 0;
	background: none;
	border: none;
	font-size: 1.7142em;
}
.sites_articles .sites_relation h5 span {
	padding: 0 85px;
	position: relative;
	display: inline-block;
}
.sites_articles .sites_relation h5 span::before,
.sites_articles .sites_relation h5 span::after {
	content: "";
	position: absolute;
	display: inline-block;
	top: 50%;
	width: 68px;
	height: 2px;
	background: url(../img/top/site_ttl_border.png);
}
.sites_articles .sites_relation h5 span::before {
	left: 0;
}
.sites_articles .sites_relation h5 span::after {
	right: 0;
}
.sites_articles .sites_relation ul li {
	border: none;
	color: #212121;
	min-height: inherit;
}
.sites_articles .sites_relation ul li::before,
.sites_articles .sites_relation ul li::after {
	content: none;
}
.sites_articles .sites_relation ul li .btn {
	margin-bottom: 14px;
}
.sites_articles .sites_relation ul li a {
	width: 235px;
	height: 74px;
	padding: 18px 45px 16px 12px;
	border: 2px solid #e1e1e1;
	position: relative;
}
.sites_articles .sites_relation ul li a img{
	width: 100%;
}
.sites_articles .sites_relation ul li a:hover {
	opacity: .8;
	-webkit-opacity: .8;
}
.sites_articles .sites_relation ul li a::before {
	content: "";
	width: 18px;
	height: 18px;
	right: 15px;
	top: 27px;
	position: absolute;
	background-color: #3a5ea6;
	border-radius: 50%;
}
.sites_articles .sites_relation ul li a::after {
	content: "";
	width: 5px;
	height: 5px;
	right: 22px;
	top: 32px;
	position: absolute;
	border: 1px solid transparent;
	border-right-color: #ffffff;
	border-bottom-color: #ffffff;
	transform: rotate(-45deg);
}

.sites .toggle_btn {
	display: none;
}
@media screen and (max-width: 798px) {
	.sites{
		margin-bottom: 0;
		min-width: inherit;
	}
	.sites .tab_list {
		display: none;
	}
	.sites_articles {
		width: 100%;
		padding: 40px 10px;
		display: none;
	}
	.sites_articles ul li {
	    width: 45%;
	    margin: 0 2% 20px;
		padding: 2%;
	}
	.sites_articles ul li img {
		width: 100%;
		max-width: 200px;
	}
	.sites_articles ul li a p{
		padding: 0 2.5% 25px;
	}


	.sites_articles ul li a p {
	    text-align: center;
	    padding: 0 5px 5px 5px;
	    font-size: 60%;
	    line-height: 1.7;
	    color: #000;
	}

	.sites #sites_all {
		display: none !important;
	}

	.sites_articles ul li span {
	    text-align: center;
	    padding: 0 22px 25px;
	    font-size: 150%;
	    line-height: 1.7;
	    color: #CC0000;
	    font-weight: 500;
	}



	.sites .toggle_btn {
	    display: block;
	    padding: 20px 14%;
	    background: #CC0000;
	    color: #ffffff;
	    text-align: center;
	    font-size: 142.8%;
	    border: 1px solid #d1d1d1;
	    margin-bottom: 1px;
		position: relative;
	}
	.sites #sites_rent + .toggle_btn,
	.sites #sites_lend + .toggle_btn,
	.sites #sites_inheritance + .toggle_btn {
		background: #2b58b0;
	}
	.sites .toggle_btn span {
		display: block;
		width: 26px;
		height: 26px;
		border: 2px solid #ffffff;
		border-radius: 10px;
		position: absolute;
		right: 5%;
		top: 20px;
		transition: all 0.3s;
		-webkit-transition: all 0.3s;
	}
	.sites .toggle_btn span::before,
	.sites .toggle_btn span::after {
		display: block;
		position: absolute;
		right: 4px;
		top: 12px;
		content: "";
		width: 18px;
		height: 2px;
		background: #ffffff;
		margin: 0 auto;
		transition: all 0.3s;
		-webkit-transition: all 0.3s;
	}
	.sites .toggle_btn span::after {
		transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
	}
	.sites .toggle_btn.open span {
		transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
	}
	.sites .toggle_btn.open span::before {
		display: none;
	}
}

.spotbnr_area{
	margin: 0 0 60px;
	text-align: center;
}
.spotbnr_area p{}
.spotbnr_area p img{}

@media screen and (max-width: 798px) {
	.spotbnr_area{
		margin: 0 0 60px;
		padding: 0 4%;
	}
	.spotbnr_area p img{
		width: 100%;
	}
}
