@charset "UTF-8";
/* CSS Document */
/*--------------------------------*/
.top_hero_area {
  width: 100%;
  background-color: #f0f0f0;

}

.top_hero {
  display: flex;
  width: 100%;
	  max-width: 2000px;
  overflow: hidden;
  margin: auto;
}


.top_hero_left_area{

width: 50%
}
.top_hero_right_area{
width: 50%

}

/*--------------------------------*/

.top_copy_area {
  width: 90%;
  display: flex;
  flex-wrap: wrap;
justify-content: center;
	  margin: 40px auto 50px auto;
}


.top_copy {

  margin: 0px auto 0px auto;
  font-size: 2rem;
  font-family: "FP-ヒラギノ角ゴ ProN W3";
  line-height: 3.4rem;


}

.top_copy_bold {

  margin: 0px auto 2.5rem auto;
  font-size: 2.2rem;
  font-family: "FP-ヒラギノ角ゴ ProN W6";
  line-height: 3.6rem;

text-align: center
}


.top_b_area {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  border-bottom: #ccc 1px solid;
  margin: 0px auto 20px auto;
}
a.top_b {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  border-top: #ccc 1px solid;
  padding: 30px 0px 30px 10px;
  position: relative;
  cursor: pointer;
}
a.top_b:hover {
  opacity: 1.0;
}
a.top_b.half {
  width: calc(50% - 10px);
  display: flex;
  flex-wrap: wrap;
}
a.top_b.quarter {
  width: calc(25% - 10px);
  display: flex;
  flex-wrap: wrap;
}
.top_b_left {
  flex: 1 0;
  display: flex;
  flex-direction: column;
	align-items: flex-start;
	
}
a.top_b.half .top_b_left {
  flex: 1 0 ;
  display: flex;
  flex-direction: column;

}
.top_b_right {
  flex: 1 0;
  min-width: 300px;
  transition: .3s opacity linear;
  align-self: center;
  border: #ccc 3px solid;
  overflow: hidden;
  border-radius: 6px;
}


.top_b_ss {
  flex: 1 0;

  transition: .3s opacity linear;

}




a.top_b.half .top_b_right {
  flex: 1 0;

  margin-right: 1rem;
  transition: .3s opacity linear;
  align-self: center;
  border: none;
  border-radius: 0px;

}
.top_b_right.av,.top_b_ss.av  {
  opacity: 0.7
}
.top_b_bar {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 238px;
  height: 6px;
  overflow: hidden;
  background: url(../../images/top_menu_bar.png) top right / 476px 6px no-repeat, url(../../images/top_menu_bar02.jpg) top right / 476px 6px no-repeat;
  transition: .2s background linear;
}
.top_b_bar.av {
  width: 238px;
  height: 6px;
  background: url(../../images/top_menu_bar.png) top left / 476px 6px no-repeat, url(../../images/top_menu_bar02.jpg) top right / 476px 6px no-repeat;
}
.top_b_txt_l {
  font-size: 3.4rem;
  font-family: "AbelPro";
  line-height: 2.6rem;
  margin: 1rem 2rem 1rem 0px;
  white-space: nowrap
}
h2.top_b_txt_ss {
  font-size: 1.6rem;
  font-family: "FP-ヒラギノ角ゴ ProN W6";
  line-height: 2.6rem;
  margin: 0px 2rem 1rem 0px;
	text-align: left
}
.top_b_txt_s {
  font-size: 1.6rem;
  font-family: "FP-ヒラギノ角ゴ ProN W3";
  line-height: 2.8rem;
  margin: 0px 2rem 0px 0px;
	word-break: break-all
}
a.top_b.half .top_b_txt_s,a.top_b.quarter .top_b_txt_s  {
  font-size: 1.6rem;
  font-family: "FP-ヒラギノ角ゴ ProN W3";
  line-height: 2.8rem;
  margin: 0px 1rem 0px 0px;
	word-break: break-all
}
.b_mov_area{
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-top: #ccc 1px solid;
  padding: 40px 5px 50px 5px;
  position: relative;
  cursor: pointer;
}

.top_b_mov{

 width: 60%;
  transition: .3s opacity linear;
  align-self: center;
  border: #ccc 3px solid;
  overflow: hidden;
  border-radius: 6px;
}
.top_b_mov:hover {
  opacity: 0.7
}
.top_b_mov_title_area {
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  margin: 0rem 0rem 2rem 0rem;
}
.top_b_mov_title {
  flex: 1 0 auto;
  font-size: 1.8rem;
  text-align: center;
  font-family: "FP-ヒラギノ角ゴ ProN W6";
  margin: 0rem 2rem 0rem 2rem;
  font-feature-settings: "palt";
}
.top_b_mov_title_bar {
  flex: 1 0 100%;
  margin: 1rem auto 0rem auto;
  height: 4px;
  overflow: hidden;
  background: linear-gradient(45deg, #ea0000 0%, #3c1619 100%);
}
/* modal
-----------------------------------------------*/

.modal_mov {
	display: none;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	flex-direction: column;
		justify-content: center;
	align-items: center;

	background-color: #000;
	z-index: 200;
	cursor: pointer
}

.modal_mov.av {
	display: flex;

}

.mov_area {
	width: 70%;

}
.mov_inner{
   position: relative;
        padding-bottom: 56.25%;

}

.mov_inner iframe{
  position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;  

}


.b_close {
	margin-top: 2rem;
  font-size: 3rem;
  font-family: "AbelPro";
	color: #CD3E3E;

		  transition: .2s opacity linear;
}
.b_close:hover {
  opacity: 0.5
}
