/* 調整用スタイル */

html {
    visibility: hidden;
}

html.wf-active,
html.loading-delay {
    visibility: visible;
}

body{
	font-family: a-otf-ud-shin-go-pr6n, sans-serif;
	font-weight: 300;
	font-style: normal;	
	font-size:15px; 
	line-height: 24px;
	color: #231815;	
	line-height: 30px;

}

.text-f{
	font-family: futura-pt, sans-serif;
	font-weight: 500;
	font-style: normal;	
}

.center{
	text-align: center;
}

a {
  text-decoration: none;
	color: #FFFFFF;
}

a:hover {
	color: #717171;
}


ul,
li {
  list-style: none;
}

.br_sen{
	display: none;
}

.pc_area{
	display: block;
}

.sp_area{
	display: none;
}

a img:hover { opacity: 0.6; filter: brightness(110%); }

@media screen and (max-width: 500px) {
	.pc_area{
		display: none;
	}

	.sp_area{
		display: block;
	}
}



.title{
	font-family: futura-pt, sans-serif;
	font-style: normal;
}


.image100{
	width: 100%;
}

.main_top{
	position: relative;
}

/* ヘッダー */


.header {
  background-color: white;
  width: 100%;
	height: 77px;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}

.header__inner_top {
  padding: 10px 0px 0px 0px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 1244px;
  margin: 0px auto;
}

.header__inner_top > :first-child{
   margin-right: auto;
padding-left: 10px;
}

.header__inner_top_in{
  display: flex;
  align-items: center;
}

.header__inner_top_in div{
	margin-right: 10px;
}

.header__inner_down_all{
	background-color:rgba(0,0,0,0.8);
}

.header__inner_down{
  width: 1244px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
	padding: 10px 0px;
	margin: -5px auto 0px auto;
}

.header__inner_down div{
	padding: 0px 20px 0px 60px;
}

.header__inner {
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
  position: relative;
  width: 1244px;
  margin: 0px auto;
}

	
.menu_area{
	text-align: center;
	line-height: 20px;
}

.menu_area_text01{
	font-size: 20px;
	font-weight: bold;
	color: #231815;
}

a:hover .menu_area_text02{
	color: #626262;;
}

.menu_area_text02{
	font-size: 12px;
	color: #c9caca;
}

.menu_area_text01_2{
	font-size: 20px;
	font-weight: 300;
	color: #FFF;
}

.menu_area_text03{
	font-size: 14px;
	color: #747474;
}

a:hover .menu_area_text03{
	color: #BBBBBB;
}

.menu_area_text04{
	font-size: 14px;
	color: #231815;	
}

a:hover .menu_area_text04{
	color: #BBBBBB;
}


.main_area_01 {
	background-image: url("../images/bg_01.png");
	background-repeat: repeat-y;
	background-position: center;
}

.main_area_01_in {
	text-align: center;
	padding: 100px 0px ;
}

.main_area_02 {
	background-image: url("../images/bg_01.png");
	background-repeat: repeat-y;
	background-position: center;
	padding: 100px 0px;
}

.main_area_02_in {
	text-align: center;
	margin: 0px auto;
	padding: 30px 0px;
	width: 900px;
}

@media screen and (max-width: 500px) {
	.main_area_02_in {
		text-align: center;
		margin: 0px auto;
		width: 100%;
	}
	
	.faci_img{
		width: 300px;
	}
}

.main_area_in {
	text-align: center;
	padding: 100px 0px;
}

.news_area {
  display: flex;
  align-items: center;
  justify-content: space-between;
padding: 30px 50px;
}

.news_area div{
  margin: 0px 20px;
}

.news_up{
	text-align: left;
}

a .news_up {
		color: #231815;	
}

.news_com{
	padding: 0px 40px;
	text-align: center;
	background-color: #231815;
	color: #fff;
	margin-left: 5px;
}

.news_down{
	border-top: solid 1px #000;
	font-size: 22px;
	margin-top: 5px;
	padding-top: 5px;
	line-height: 28px;
	color: #231815;
}

a:hover .news_down{
	color: #929292;
}

.news_down_2{
	font-size: 16px;
	margin-top: 5px;
	padding-top: 5px;
	line-height: 28px;
	color: #231815;
}

a:hover .news_down_2{
	color: #929292;
}

.news_down_3{
	font-size: 14px;
	margin-top: 20px;
	padding-top: 5px;
	line-height: 28px;
	color: #231815;
}

.news_down_4{
	font-size: 20px;
	margin-top: 5px;
	padding-top: 5px;
	line-height: 28px;
	color: #231815;
	margin-bottom: 5px;
}

@media screen and (max-width: 500px) {
	.news_area {
	  display: flex;
	flex-direction: column;
	  align-items: center;
	  justify-content: space-between;
	padding: 30px 20px;
	}
	
	.news_com{
		padding: 0px 20px;
		text-align: center;
		background-color: #231815;
		color: #fff;
		margin-left: 5px;
	}	
	
	.news_down{
		border-top: solid 1px #000;
		font-size: 18px;
		margin-top: 5px;
		padding-top: 5px;
		line-height: 22px;
		margin-bottom: 20px!important;
	}	
}



.btn_newslist{
	display:inline-block;
	text-align: center;
	background-color: #231815;
	color: #fff;
	border-radius: 50px;
	margin: 50px auto;
	font-size: 24px;
	padding: 15px 100px;
}

a:hover .btn_newslist{
	display:inline-block;
	text-align: center;
	background-color: #646464;
	color: #fff;
	border-radius: 50px;
	margin: 50px auto;
	font-size: 24px;
	padding: 15px 100px;
}

h2{
	text-align: center;
	font-size: 36px;
	margin: 0px auto ;
	padding: 10px;
	line-height: 26px;
	line-height: 26px;
	font-family: futura-pt, sans-serif;
	font-weight: 600;
}


h2 span{
	color:#9fa0a0;
	font-size: 16px;
	font-family: a-otf-ud-shin-go-pr6n, sans-serif;
}



/* ヘッダーのロゴ部分 */
.header__title {
  width: 200px;
}


.header__title img {
  display: block;
  width: 100%;
  height: 100%;
}

/* ヘッダーのナビ部分 */

.header__nav {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  transform: translateX(100%);
  background-color: #fff;
  transition: ease .4s;
}


@media screen and (min-width: 960px) {
  .header__nav {
    position: static;
    transform: initial;
    background-color: inherit;
    height: inherit;
    display: flex;
    justify-content: end;
    width: 80%;
  }
}


@media screen and (min-width: 960px) {
  .nav__items {
    width: 100%;
    display: flex;
    align-items: center;
    height: initial;
    justify-content: space-between;
  }
}

.nav-items {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 0;
	width: 400px;
}


@media screen and (min-width: 960px) {
  .nav-items {
    position: inherit;
    top: 0;
    left: 0;
    transform: translate(0, 0);

  }
}

/* ナビのリンク */
.nav-items__item a {
  color: black;
  width: 100%;
  display: block;
  text-align: center;
  font-size: 18px;
  margin-bottom: 24px;
}

.nav-items__item:last-child a {
  margin-bottom: 0;
}

@media screen and (min-width: 960px) {
  .nav-items__item a {
    margin-bottom: 0;
  }
}


/* ハンバーガーメニュー */

.header__hamburger {
  width: 48px;
  height: 100%;

}

.hamburger {
  background-color: transparent;
  border-color: transparent;
  z-index: 9999;
}

@media screen and (min-width: 960px) {
  .hamburger {
    display: none;
  }
}

/* ハンバーガーメニューの線 */
.hamburger span {
  width: 100%;
  height: 1px;
  background-color: #000;
  position: relative;
  transition: ease .4s;
  display: block;
}

.hamburger span:nth-child(1) {
  top: 0;
}

.hamburger span:nth-child(2) {
  margin: 8px 0;
}

.hamburger span:nth-child(3) {
  top: 0;
}


/* ハンバーガーメニュークリック後のスタイル */
.header__nav.active {
  transform: translateX(0);
}

.hamburger.active span:nth-child(1) {
  top: 5px;
  transform: rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;

}

.hamburger.active span:nth-child(3) {
  top: -13px;
  transform: rotate(-45deg);
}


/* スライダーのスタイル */


.swiper--wrapper {
  /* wrapperのサイズを調整 */
  width: 100%;
  height: 300px;


}

.swiper-slide {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: #ffffff;
  width: 100%;
  height: 100%;
  text-align: center;
margin-top: 0px;
	line-height: 0px!important;	
}

@media screen and (max-width: 500px) {
	.swiper-slide {
 	margin-top: 60px;
	}	
}


.swiper-slide:nth-child(3n + 1) {
  /*1、4、7、3n+1枚目の背景色 */
  background-color: #fff;
}

.swiper-slide:nth-child(3n + 2) {
  /*2、5、8、3n+2枚目の背景色 */
  background-color: #fff;
}

.swiper-slide:nth-child(3n + 3) {
  /*3、6、9、3n+3枚目の背景色 */
  background-color: #fff;
}


.swiper-pagination-bullet {
  width: 12px !important;
  height: 12px !important;
  margin: 0 0 0 10px !important;
  background: #333 !important;
}

.swiper-pagination-bullet:first-child {
  margin: 0 !important;
}

.swiper-button-next, .swiper-button-prev{
	background-color:rgba(0,0,0,0.6);
	color: #FFFFFF!important;
	width: 30px!important;
	height: 30px!important;
	font-size: 10px!important;
	padding: 5px ;
	top:55%!important;
}

.side_sw{
	top:50%!important;
}

.swiper-img{
	width: 900px;
}

@media screen and (max-width: 500px) {
	.swiper-img{
		width: 100%;
	}	
	.swiper-button-next, .swiper-button-prev{
		top:58%!important;
	}
	
	.side_sw{
	top:57%!important;
	}	
}

.top_img{
	width: 100%;
}

.btn_more{
	font-family: futura-pt, sans-serif;
	display:inline-block;
	border: 1px #231815 solid;
	color: #231815;
	padding: 15px;
	margin: 50px auto;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
}


 a:hover .btn_more{
	border: 1px #5B5B5B solid;
	background-color:rgba(255,255,255,0.4);
	color: #5B5B5B;
}

iframe {
  width: 100%;
  aspect-ratio: 16/9; //アスペクト比（縦横比）を指定
}

footer{
	background-color: #231815;
	color: #FFFFFF;
	text-align: center;
	padding: 50px;
}

.footer_area_all{
  display: flex;
  align-items: center;
  justify-content: space-between;

}

.footer_area{
display: flex;
  align-items: center;
  justify-content: space-between;
	padding: 20px 0px;
}

.footer_area>div{
	padding: 0px 30px;
}

.footer_logo{
	width: 300px;
}

.footer_icon{
	height: 50px;
	margin: 20px;
}


@media screen and (max-width: 500px) {
	.footer_area_all{
		flex-direction: column;
	}
	
	.footer_area{
		flex-direction: column;
	}	

	.main_area_01_in {
		padding: 30px 10px;
	}
	
	.main_area_02  {
		padding: 30px 10px;
	}
	
	.sp_com{
		width: 90%;
		margin: 0px auto;
	}
	
	.br_sen{
		display: block;
	}
	
	.sp_logo{
		width: 200px;
		padding: 20px 0px 0px 0px;
	}	
}

.sp_logo{
	width: 200px;
}


.sp_menu_area{
	display: flex;
  align-items: center;
  justify-content: space-between;
}

.menu_icon{
display: flex;
  align-items: center;
  justify-content: space-between;
	width: 160px;
	margin: 20px auto 0px auto;
}

a.jump_point {height: 1px;
display: block;
padding-top: 120px;
margin-top: -120px;
}

.sub_area_01 {
	margin-top: 140px;
	background-image: url("../images/bg_01.png");
	background-repeat: repeat-y;
	background-position: center;
}

.sub_area_01_in {
	text-align: center;
	padding: 50px 0px ;
}

@media screen and (max-width: 500px) {
	.sub_area_01 {
		margin-top: 80px;
	}	
}

.news_page{
	width: 80%;
	padding: 50px 100px;
	margin: 0px auto;
}

.news_page a{
	color: #231815;	
}

.news_menu{
	display: flex;
	align-items: center;
	justify-content:flex-start;
	padding-bottom: 50px;
	border-bottom: solid 1px #000;
}

.news_menu a:hover{
	color: #ACACAC;
}

.news_menu_back{
	margin: 10px 0px;
}

.news_menu_back a:hover{
	color: #ACACAC;
}

.news_menu div{
	margin-right: 50px;
}

.news_sen{
		border-bottom: solid 1px #000;
		padding: 50px 0px;
}

.news_page img{
	width: 100%;
}

@media screen and (max-width: 500px) {
	.news_page{
		width: 90%;
		padding: 10px 0px;
		margin: 0px auto;
	}

	.news_menu{
		display: flex;
		align-items: flex-start;
		justify-content:flex-start;
		flex-direction: column;
		padding-bottom: 20px;
		border-bottom: solid 1px #000;
	}
	
	.news_menu div{
		margin-right: 0px;
		margin-left: 10px;
		margin-bottom: 10px;
	}	

	.news_sen{
			border-bottom: solid 1px #000;
			padding: 30px 0px;
	}	
}

.privacy_title{
	font-size: 20px;
	margin: 50px 0px 20px 0px;
}

.map_img{
	width: 200px;
}

.map_title{
	font-size: 18px;
}

.map_com{
	font-size: 13px;
	margin-bottom: 20px;
	line-height: 18px;
}

.footer_com{
	font-size: 13px;
	line-height: 16px;
}

.header_tel{
	width: 250px;
}

.footer_tel{
	width: 400px;
}