
.main-visual {
	height: 100vh;
	position: relative;
	background-image: url(images/home/main-visual.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	}
.main-visual .main-catch {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	color: #FFF;	
	}
.main-visual .main-catch h1 {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	}
.main-visual .main-catch span {
	font-size: 14px;
	text-align: center;
	display: block;
	}


/* 共通（ローディングとナビゲーション） */
	.bxslider {
		position: relative;
	}
	.bxslider ul {
		opacity: 0;
		list-style: none;
	-webkit-padding-start: 0px;
	}
 
	.bxslider a {
		transition: 0.4s;
	}
	.bxslider .bx-pager {
		position: absolute;
		bottom: 26px;
		left: 0;
		width: 100%;
		height: 0px;
		text-align: center;
		display: inline;
	}
	.bxslider .bx-pager-item {
		display: inline;
		padding: 0 20px;
	}
	.bxslider .bx-pager-item a {
		background: rgba(0,0,0,1);
		display: inline-block;
		width: 16px;
		height: 16px;
		text-indent: -200%;
		overflow: hidden;
		border-radius: 50%;
	}
	.bxslider .bx-pager-item a:hover {
		background: rgba(0,0,0,0.6);
	}
	.bxslider .bx-pager-item a.active {
		background: rgba(160,160,160,1);
	}
 
	.bxslider .bx-controls-direction {
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -1em;
		width: 100%;
		height: 0px;
	}
	.bxslider .bx-controls-direction a {
		width: 40px;
		height: 40px;
		display: block;
		background: rgba(0,0,0,0.8);
		position: relative;
		text-indent: -100%;
		overflow: hidden;
	}
	.bxslider .bx-controls-direction a:hover {
		background: rgba(0,0,0,0.4);
	}
	.bxslider .bx-controls-direction a:before,
	.bxslider .bx-controls-direction a:after {
		content: '';
		position: absolute;
		top: 13px;
		left: 8px;
	}
	.bxslider .bx-controls-direction a:after {
		width: 16px;
		height: 16px;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		transform: rotate(45deg);
	}
	.bxslider .bx-controls-direction a.bx-prev:after {
		transform: rotate(-135deg);
		left: 16px;
	}
	.bxslider .bx-prev {
		float: left;
	}
	.bxslider .bx-next {
		float: right;
	}
 
	.bx-loading:before,
	.bx-loading:after,
	.bx-loading {
	  border-radius: 50%;
	  width: 1em;
	  height: 1em;
	  -webkit-animation-fill-mode: both;
	  animation-fill-mode: both;
	  -webkit-animation: load7 1.8s infinite ease-in-out;
	  animation: load7 1.8s infinite ease-in-out;
	}
	.bx-loading {
	  color: #000;
	  font-size: 10px;
	  position: absolute;
	  top: 40%;
	  left: 50%;
	  text-indent: -100%;
	  -webkit-transform: translateZ(0);
	  -ms-transform: translateZ(0);
	  transform: translateZ(0);
	  -webkit-animation-delay: -0.16s;
	  animation-delay: -0.16s;
	}
	.bx-loading:before {
	  left: -3.5em;
	  -webkit-animation-delay: -0.32s;
	  animation-delay: -0.32s;
	}
	.bx-loading:after {
	  left: 3.5em;
	}
	.bx-loading:before,
	.bx-loading:after {
	  content: '';
	  position: absolute;
	  top: 0;
	}
	@-webkit-keyframes load7 {
	  0%,
	  80%,
	  100% {
	    box-shadow: 0 2.5em 0 -1.3em;
	  }
	  40% {
	    box-shadow: 0 2.5em 0 0;
	  }
	}
	@keyframes load7 {
	  0%,
	  80%,
	  100% {
	    box-shadow: 0 2.5em 0 -1.3em;
	  }
	  40% {
	    box-shadow: 0 2.5em 0 0;
	  }
	}







/* Example3 */

.bx-wrapper {
	-moz-box-shadow: 0 0 0px #ccc !important;
	-webkit-box-shadow: 0 0 0px #ccc !important;
	box-shadow: 0 0 0px #ccc !important;
	border: 0px solid #fff !important;
	background: #fff !important;
	margin-bottom: 0px !important;
	}
.bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto {
    bottom: 60px !important;
}

.bx-wrapper .bx-controls-direction a {
    height: 42px !important;
}










.bxslider3 {
	overflow: hidden;
}
.bxslider3 .bxslider {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}
.bxslider3 ul li img {
	width: 100%;
	height: auto;	
}
.bxslider3 ul li {
	opacity: 0.5;	
}
.bxslider3 ul li.active {
	opacity: 1;
}
.bxslider3 .bx-viewport {
	overflow: visible !important;
}











/* col-lg- 1200px以上はそのまま */

.home-information-list {
	list-style: none;
	-webkit-padding-start: 0px;
	display: flex;
    flex-wrap: wrap;
	}
.home-information-list li {
	width: 20%;
	border: 1px solid #EFEFEF;
	padding-top: 35px;
	padding-right: 25px;
	padding-bottom: 35px;
	padding-left: 25px;
	-webkit-transition:	all 0.6s ease;
	transition:		all 0.6s ease;
	}
.info-inner:hover {
	color: #000;	
	}
.home-information-list .hi01:hover {
	background-color: #ECCED8;
	}
.home-information-list .hi02:hover {
	background-color: #ECCED8;
	}
.home-information-list .hi03:hover {
	background-color: #ECCED8;
	}
.home-information-list .hi04:hover {
	background-color: #ECCED8;
	}
.home-information-list .hi05:hover {
	background-color: #ECCED8;
	}
.home-information-list .hi06:hover {
	background-color: #ECCED8;
	}

.home-information-list li a {
	color: #333;	
	}
.home-information-list li a:hover {
	text-decoration: none;		
	}

	
.home-information-list li .info-item-mask {
	opacity: 1;
	}
.home-information-list li .mask01 {

	}
	
	
.info-inner .info-item-header {
	margin-bottom: 20px;
	}
.info-inner .info-item-header h2 {
	text-align: center;
	font-size: 20px;
	margin-bottom: 6px
	}
.info-inner .info-item-header span {
	text-align: center;
	display: block;
	font-size: 10px;
	}


	
.info-inner .info-icon-img {
	width: 50px;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 15px;
	margin-left: auto;
	}
.info-inner .info-after-text {
	margin-bottom: 30px;
	width: 85%;
	margin-right: auto;
	margin-left: auto;
	font-size: 12px;
	min-height: 50px;
	}
	
.info-inner .info-btn-wrap {
	width: 85%;
	margin-top: 0;
	margin-right: auto;
	margin-left: auto;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;	
	}
.info-inner .info-btn-wrap .more-text {
	border-radius: 30px;
	font-size: 12px;
	text-align: center;
	padding-top: 5px;
	padding-bottom: 5px;
	background-color: #903;
	color: #FFF;
	}

/* col-md- 1199px以下 */
@media screen
    and (max-width: 1199px) {

}
 
/* col-sm- 991px 以下 */
@media screen
    and (max-width: 991px) {
}
 
/* col-xs- 767px 以下 */
@media screen
    and (max-width: 767px) {

.home-information-list li {
	width: 50%;
	border: 1px solid #EFEFEF;
	padding-top: 25px;
	padding-right: 25px;
	padding-bottom: 10px;
	padding-left: 25px;
	-webkit-transition:	all 0.6s ease;
	transition:		all 0.6s ease;
	}

	
.info-inner .info-item-header {
	margin-bottom: 20px;
	}
.info-inner .info-item-header h2 {
	text-align: center;
	font-size: 16px;
	margin-bottom: 4px
	}
.info-inner .info-item-header span {
	text-align: center;
	display: block;
	font-size: 10px;
	}

.info-inner .info-after-text {
	margin-bottom: 30px;
	width: 100%;
	font-size: 12px;
	min-height: 60px;
	}


}














/* col-lg- 1200px以上はそのまま */
.entrance-section {
	background-image: url(images/home/entrance.jpg);
	background-repeat: no-repeat;
	background-size: cover;	
	}
.entrance-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 1460px;
	margin: 0 auto;	
	}
.entrance-wrap .entrance-text {
    width: 45.9%;
    margin-right: 5.9%;
	}


.entrance-text h2 {
	font-size: 32px;
	font-color: #000;
	margin-bottom: 40px;
	}
.entrance-text h2 span {
	color: #900;
	font-weight: bold;
	}
.entrance-text .entrance-middle-text {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 35px;
	}
.entrance-text .entrance-main-text {
	}




.entrance-wrap .entrance-img {
	width: 37%;
    margin-top: 70px;
    padding-top: 49.3%;
    position: relative;
    border-radius: 30px 0 30px 0;
    overflow: hidden;
	}
.entrance-wrap .entrance-img span {	
	width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
	}
.entrance-wrap .entrance-img span img {
    width: 100%;
	height: 100%;
	object-fit: cover;
    object-position: center;
}
/* col-md- 1199px以下 */
@media screen
    and (max-width: 1199px) {
.entrance-wrap {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 6.67vw;
    display: block;
	}

.entrance-wrap .entrance-text {
    width: 100%;
    margin-right: 0;
    position: relative;
	}
.entrance-wrap .entrance-img {
    width: 100%;
    height: 86.7vw;
    margin-top: 10.7vw;
    padding-top: 0;
	}
.entrance-wrap .entrance-img span img {
	height: 100%; 
	position: static;
	}
}
 
/* col-sm- 991px 以下 */
@media screen
    and (max-width: 991px) {
}
 
/* col-xs- 767px 以下 */
@media screen
    and (max-width: 767px) {

.entrance-text h2 {
	font-size: 24px;
	font-color: #000;
	margin-bottom: 40px;
	text-align: center;
	}
.entrance-text h2 span {
	color: #900;
	font-weight: bold;
	}
.entrance-text .entrance-middle-text {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 35px;
	}


.entrance-wrap .entrance-img {
    width: 100%;
    height: 86.7vw;
    margin-top: 10.7vw;
    padding-top: 0;
	}
.entrance-wrap .entrance-img span img {
	height: 100%; 
	position: static;
	}

}





/* col-lg- 1200px以上はそのまま */


.topics-inner {
	}

.topics-inner h2 {
	background-color: #933;
	color: #FFF;
	padding: 10px;
	margin-bottom: 20px;
	font-size: 16px;
	}


.topics-wrap {
	padding-top: 70px;
	padding-bottom: 70px;
	}
.topics-wrap .topics-head {
	padding-bottom: 40px;
	text-align: center;
	}
.topics-wrap .topics-head h2 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 10px;
	}
.topics-wrap .topics-head p {
	font-size: 12px;
	}

.topics-item {
	margin-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	padding-top: 25px;
	}
.topics-item a {
	color: #333;	
	}
.topics-item a:hover {
	text-decoration: none;	
	}


.topics-date {
	font-size: 14px;
	}
.topics-title {
	font-size: 14px;
	min-height: 70px;
	}


.home-topics-inner {
	margin-bottom: 50px;	
	} 
/* col-md- 1199px以下 */
@media screen
    and (max-width: 1199px) {
}
 
/* col-sm- 991px 以下 */
@media screen
    and (max-width: 991px) {
}
 
/* col-xs- 767px 以下 */
@media screen
    and (max-width: 767px) {

.topics-inner {
	background-color: #FFF;
	border-radius: 4px;
	padding: 10px;
	}



.topics-wrap {
	background-color: #ecf7ea;
	padding-top: 50px;
	padding-bottom: 50px;
	}
.topics-wrap .topics-head {
	padding-bottom: 40px;
	text-align: center;
	}
.topics-wrap .topics-head h2 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 10px;
	}
.topics-wrap .topics-head p {
	font-size: 12px;
	}

.topics-item {
	margin-bottom: 0px;
	padding: 0px;
	}
.topics-item a {
	color: #4f0203 !important;
	}
.topics-inner .topics-inner-left img {
	border-radius: 4px;
	}

.topics-inner-right {
	background-color: #FFF;
	position: static;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	border-radius: 0px;

	}
.topics-inner-right .topics-date {
	background-color: #FFF;
	font-size: 12px;
	color: #606;
	padding-top: 3px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	border-radius: 0px;
	margin-bottom: 7px;
	position: static;
		color: #4f0203 !important;
	}
.topics-inner-right .topics-title {
	font-size: 14px;
	font-weight: bold;
	}

.home-topics-inner {
	margin-bottom: 50px;	
	} 
.topicspage-border {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #ECECEC;	
	}
}

















/* col-lg- 1200px以上はそのまま */

.rinpa-wrapper {
	display: flex;
	}
.rinpa-wrapper .rinpa-left {
	width: 50%;
	background-image: url(images/rinpa/rinpa-main-back.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 550px;
	display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	}
.rinpa-wrapper .rinpa-right {
	width: 50%;
	background-image: url(images/rinpa/rinpa-main-back.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 550px;
	display: flex; /* 子要素をflexboxで揃える */
    flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */
	}
.rinpa-wrapper .rinpa-right .rinpa-text-inner {
	}
.rinpa-wrapper .rinpa-right .rinpa-text-inner p {
	margin-bottom: 70px;
	}
.rinpa-wrapper .rinpa-left .rinpa-img-inner {
	}
.rinpa-wrapper .rinpa-left .rinpa-img-inner h2 {
	font-weight: bold;
	}
	
.rinpa-wrapper .rinpa-right .rinpa-text-inner {
	padding-left: 15%;
	padding-right: 15%;
	}



.rinpa-text-inner .btn-wrap {
    display: flex;
    justify-content: right !important;
}

/* col-md- 1199px以下 */
@media screen
    and (max-width: 1199px) {

}
 
/* col-sm- 991px 以下 */
@media screen
    and (max-width: 991px) {
}
 
/* col-xs- 767px 以下 */
@media screen
    and (max-width: 767px) {
.rinpa-wrapper {
	display: block;
	background-image: url(images/rinpa/rinpa-main-back.jpg);
	}
.rinpa-wrapper .rinpa-left {
	width: 100%;
	background-image: none;
	min-height: 0px;
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
	padding-top: 50px;
	padding-bottom: 50px;
	}
.rinpa-wrapper .rinpa-right {
	width: 100%;
	}
.rinpa-wrapper .rinpa-right .rinpa-text-inner {
	padding-left: 15px;
	padding-right: 15px;
	}

}














.hk-service-item {
	margin-bottom: 40px;	
	}













/* col-lg- 1200px以上はそのまま */

.home-baner-inner {
	position: relative;	
	}
.home-baner-inner a {
		color: #FFF;
	}
.home-baner-inner img {	
	}
.home-baner-inner .home-baner-title {
	background-color: #933;
	padding-top: 13px;
	padding-right: 13px;
	padding-bottom: 13px;
	padding-left: 13px;
	min-height: 80px;
	}
.home-baner-inner a:hover {
	text-decoration: none;
}
.home-baner-inner .home-baner-title h2 {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 0px;
	color: #FFF;
	}
.home-baner-inner .home-baner-title span {
	font-size: 10px;
	color: #FFF;
	}
/* col-md- 1199px以下 */
@media screen
    and (max-width: 1199px) {
}
 
/* col-sm- 991px 以下 */
@media screen
    and (max-width: 991px) {
}
 
/* col-xs- 767px 以下 */
@media screen
    and (max-width: 767px) {
.home-baner-item {
	margin-bottom: 15px;
	}

.home-baner-inner .home-baner-title {
	padding-top: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
	}
.home-baner-inner .home-baner-title  h2 {
	font-size: 16px;
	font-weight: bold;
	color: #FFF;
	}
.home-baner-inner .home-baner-title  span {
	font-size: 12px;
	color: #FFF;
	}
}






























/* col-lg- 1200px以上はそのまま */

.home-point-section .point-head {
	margin-bottom: 80px;
	}

.home-point-section .point-head h2 {
	text-align: center;
	font-size: 24px;
	margin-bottom: 10px;
	font-weight: bold;
	}
.home-point-section .point-head p {
	text-align: center;
	font-size: 12px;
	}




.point-base {
	margin-bottom: 80px;
	}
.point-base2 {
	margin-bottom: 80px;
	}
.point-inner {	
	}
.point-inner h3 {
	margin-bottom: 35px;
	font-size: 24px;
	color: #900;
	}
.point-inner p {	
	}
 
/* col-md- 1199px以下 */
@media screen
    and (max-width: 1199px) {
}
 
/* col-sm- 991px 以下 */
@media screen
    and (max-width: 991px) {
}
 
/* col-xs- 767px 以下 */
@media screen
    and (max-width: 767px) {
.point-inner {
	padding-left: 15px;
	padding-right: 15px;	
	}
.point-base2 {
	margin-bottom: 0px;
	}
.sp-mb20 {
	margin-bottom: 25px;	
	}
}


