@charset "UTF-8";



/***************************************************

	top

***************************************************/


#kv_area{
	width: 100%;
	height: 480px;
	background: url('../images/top/top_kv01.jpg') no-repeat 50% 50%;
	background-size: cover;
	position: relative;
	margin: 0 0 70px;
}

#kv_area .movie_area{
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	background-color: #fff;
}

#kv_area .movie_area video{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	min-width: 100%;
	min-height: 100%;
	opacity: 0.6;
}

#kv_area .catch{
	font-size: 55px;
	color: #fff;
	font-weight: 600;
	line-height: 1.45;
	position: absolute;
	top: 50px;
	left: 50%;
	transform: translate(-50%, 0);
	z-index: 10;
	white-space: nowrap;
	text-shadow: 0px 0px 5px rgb(69 69 69);
}


#b_content{

}

#b_content .cont_wrapp{
	padding-bottom: 100px;
}

#b_content .cont_wrapp h2{
	font-size: 40px;
	margin-bottom: 96px;
}

#b_content .cont_wrapp h2::after {
	width: 70px;
	height: 4px;
	background: #b48845;
	bottom: -34px;
}

#b_content p{
	text-align: center;
	font-size: 19px;
	line-height: 2.63;
}


#outline{

}

#outline .cont_wrapp{
	padding-bottom: 150px;
}

#outline .cont_wrapp ul.outline_ul{
	max-width: 100%;
	max-width: 850px;
	margin: 0 auto;
}

#outline .cont_wrapp ul.outline_ul > li{
	display: table;
	width: 100%;
	border-bottom: 1px solid #ddd;
}

#outline .cont_wrapp ul.outline_ul > li:last-child{
	border-bottom: none;
}

#outline .cont_wrapp ul.outline_ul > li .cont,
#outline .cont_wrapp ul.outline_ul > li .item{
	display: table-cell;
	vertical-align: top;
	padding: 26px 0 26px 26px;
}

#outline .cont_wrapp ul.outline_ul > li .item{
	width: 214px;
	border-right: 1px solid #ddd;
	padding-left: 20px;
	box-sizing: border-box;
	font-size: 18px;
}

#outline .cont_wrapp ul.outline_ul > li .cont{
	font-size: 16px;
	line-height: 1.75;
}

#outline .cont_wrapp ul.outline_ul > li .cont dl dt{

}

#outline .cont_wrapp ul.outline_ul > li .cont dl dd{
	margin: -27px 0 18px 0;
	padding: 0 0 0 116px;
}

#outline .cont_wrapp ul.outline_ul > li .cont dl dd:last-child{
	margin-bottom: 0;
}

#outline .cont_wrapp ul.outline_ul > li ul.list01 li{
	margin: 0 0 16px;
}

#outline .cont_wrapp ul.outline_ul > li ul.list01 li:last-child{
	margin-bottom: 0;
}

#outline .cont_wrapp ul.outline_ul > li p{
	line-height: 1.81;
	margin: 0 0 28px;
}

#outline .cont_wrapp ul.outline_ul > li .table{
	display: table;
}

#outline .cont_wrapp ul.outline_ul > li .table .text,
#outline .cont_wrapp ul.outline_ul > li .table .image{
	display: table-cell;
	vertical-align: top;
}

#outline .cont_wrapp ul.outline_ul > li .table .text{
	padding-left: 18px;
	font-size: 16px;
	line-height: 1.5;
}


#access{

}

#access .cont_wrapp{
	padding-bottom: 150px;
}

#access .map{
	width: 100%;
	max-width: 950px;
	margin: 0 auto 14px;
}

#access .map iframe{
	width: 100%;
	height: 350px;
}

#access p.add{
	font-size: 16px;
	line-height: 1.6;
	text-align: center;
	margin: 0 0 150px;
}


#access .btn01{
	width: 290px;
	margin: 0 auto;
}

.top-bdr {
    border-bottom: 1px solid #ccc;
    margin-bottom: 100px;
}
.top-left-img {
  display: flex;
  margin-bottom: 50px;
}
.top-left-img .left{
  width: 33%;
  margin-right: 2%;
}
.top-left-img .right{
  width: 62%;
}
.top-left-img h2 {
  font-size: 26px;
  text-align: left;
  margin: 0 0 20px;
}
.cont_wrapp .top-left-img h2::after {
    content: '';
    width: 0;
    height: 0;
    background: none;
    margin: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}


/********************************************************************************
	スマートフォン用 CSS
********************************************************************************/

@media(max-width:768px){

#kv_area{
	height: 350px;
	margin: 0 0 30px;
}

#kv_area .catch{
	font-size: 8vw;
	top: 50%;
	transform: translate(-50%, -50%);
}

#kv_area .movie_area video{
	width: 169%;
}

#b_content .cont_wrapp{
	padding-bottom: 60px;
}

#b_content .cont_wrapp h2{
	font-size: 6.5555vw;
	margin: 0 0 30px;
}

#b_content .cont_wrapp h2::after {
	width: 70px;
	height: 4px;
	bottom: -17px;
}

#b_content p{
	text-align: left;
	font-size: 4.266667vw;
	line-height: 1.8;
}


#outline .cont_wrapp{
	padding-bottom: 60px;
}

#outline .cont_wrapp ul.outline_ul > li{
	display: block;
	border-bottom: none;
}

#outline .cont_wrapp ul.outline_ul > li .cont,
#outline .cont_wrapp ul.outline_ul > li .item{
	display: block;
	padding: 14px 1em;
}

#outline .cont_wrapp ul.outline_ul > li .item{
	width: auto;
	border-right: none;
	background: #f2f2f2;
	padding-left: 0;
	font-size: 4.266667vw;
	line-height: 1;
	font-weight: bold;
	text-align: center;
}

#outline .cont_wrapp ul.outline_ul > li .cont{
	font-size: 3.733333vw;
	line-height: 1.75;
}


#outline .cont_wrapp ul.outline_ul > li .cont dl dd{
	margin: -8.6% 0 2% 0;
	padding: 0 0 0 23%;
}

#outline .cont_wrapp ul.outline_ul > li ul.list01 li{
	margin: 0 0 10px;
}

#outline .cont_wrapp ul.outline_ul > li ul.list01 li span{
	display: block;
	margin-left: 10%;
}

#outline .cont_wrapp ul.outline_ul > li p{
	line-height: 1.81;
	margin: 0 0 18px;
}

#outline .cont_wrapp ul.outline_ul > li .table{
	display: block;
}

#outline .cont_wrapp ul.outline_ul > li .table .text,
#outline .cont_wrapp ul.outline_ul > li .table .image{
	display: block;
}

#outline .cont_wrapp ul.outline_ul > li .table .image{
	width: 40%;
	margin: 0 auto 12px;
}

#outline .cont_wrapp ul.outline_ul > li .table .text{
	padding-left: 0;
	font-size: 3.733333vw;
	line-height: 1.81;
}


#access .cont_wrapp{
	padding-bottom: 60px;
}

#access .map{

}

#access .map iframe{
	height: 280px;
}

#access p.add{
	font-size: 4.266667vw;
	line-height: 1.6;
	text-align: center;
	margin: 0 0 30px;
}

#access .btn01{
	width: 91%;
}

.top-bdr {
    border-bottom: 1px solid #ccc;
    margin-bottom: 50px;
}
.top-left-img {
  display: block;
  margin-bottom: 30px;
}
.top-left-img h2 {
  font-size: 26px;
  text-align: center;
  margin: 20px 0 20px;
}
.top-left-img .left{
  width: 100%;
  margin-right: 0%;
}

.top-left-img .right{
  width: 100%;
}
}




/********************************************************************************
	COMMON
********************************************************************************/
/*----フォントサイズ----*/
.font-size-12 { font-size:12px!important; }
.font-size-14 { font-size:14px!important; }
.font-size-15 { font-size:15px!important; }
.font-size-16 { font-size:16px!important; }
.font-size-17 { font-size:17px!important; }
.font-size-18 { font-size:18px!important; }
.font-size-20 { font-size:20px!important; }
.font-size-22 { font-size:22px!important; }
.font-size-24 { font-size:24px!important; }
.font-size-26 { font-size:26px!important; }
.font-size-28 { font-size:28px!important; }
.font-size-32 { font-size:32px!important; }
@media only screen and (max-width: 768px){
.font-size-20 { font-size:18px!important; }
.font-size-22 { font-size:20px!important; }
.font-size-24 { font-size:20px!important; }
.font-size-26 { font-size:24px!important; }
.font-size-28 { font-size:24px!important; }
.font-size-32 { font-size:26px!important; }
}



.txt-align-ctr { text-align: center!important; }
.txt-align-lft { text-align: left!important; }
.txt-align-rgt { text-align: right!important; }

/*----部分的にマージン・パディング調整----*/

.mgn-top-00 { margin-top: 0px!important; }
.mgn-top-05 { margin-top: 5px!important; }
.mgn-top-10 { margin-top: 10px!important; }
.mgn-top-20 { margin-top: 20px!important; }
.mgn-top-30 { margin-top: 30px!important; }
.mgn-top-40 { margin-top: 40px!important; }
.mgn-top-50 { margin-top: 50px!important; }
.mgn-top-60 { margin-top: 60px!important; }
.mgn-top-70 { margin-top: 70px!important; }
.mgn-top-80 { margin-top: 80px!important; }
.mgn-top-90 { margin-top: 90px!important; }
.mgn-top-100 { margin-top: 100px!important; }

.mgn-btm-00 { margin-bottom: 0px!important; }
.mgn-btm-05 { margin-bottom: 5px!important; }
.mgn-btm-10 { margin-bottom: 10px!important; }
.mgn-btm-20 { margin-bottom: 20px!important; }
.mgn-btm-30 { margin-bottom: 30px!important; }
.mgn-btm-40 { margin-bottom: 40px!important; }
.mgn-btm-50 { margin-bottom: 50px!important; }
.mgn-btm-60 { margin-bottom: 60px!important; }
.mgn-btm-70 { margin-bottom: 70px!important; }
.mgn-btm-80 { margin-bottom: 80px!important; }
.mgn-btm-90 { margin-bottom: 90px!important; }
.mgn-btm-100 { margin-bottom: 100px!important; }

@media only screen and (max-width: 768px){
.mgn-top-30 { margin-top: 20px!important; }
.mgn-top-40 { margin-top: 20px!important; }
.mgn-top-50 { margin-top: 30px!important; }
.mgn-top-60 { margin-top: 30px!important; }
.mgn-top-70 { margin-top: 40px!important; }
.mgn-top-80 { margin-top: 40px!important; }
.mgn-top-90 { margin-top: 50px!important; }
.mgn-top-100 { margin-top: 50px!important; }

.mgn-btm-30 { margin-bottom: 20px!important; }
.mgn-btm-40 { margin-bottom: 20px!important; }
.mgn-btm-50 { margin-bottom: 30px!important; }
.mgn-btm-60 { margin-bottom: 30px!important; }
.mgn-btm-70 { margin-bottom: 40px!important; }
.mgn-btm-80 { margin-bottom: 40px!important; }
.mgn-btm-90 { margin-bottom: 50px!important; }
.mgn-btm-100 { margin-bottom: 50px!important; }
}

/*--------PC/SP　切り替え--------*/
.toggle--pc { display: block; }
.toggle--inline-pc { display: inline-block; }
.toggle--sp,.toggle--inline-sp { display: none; }
@media only screen and (max-width: 768px){
.toggle--pc,.toggle--inline-pc  { display: none; }
.toggle--sp { display: block; }
.toggle--inline-sp { display: inline-block; }

.hidd--sp { display: none; }
}