@charset "UTF-8";
/** ie対応 */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .nav_list {
  	margin-left: -450px;
  }recruit_icon01.svg
  .main_nav {
  	margin-left: 130px !important;
  }
  .main_movie {
  	margin-left: 85px !important;
  	padding: 0 100px 0 0;
  }
  .side_sosikilist li a, .side_speciallist li a {
  	padding-top: 5px;
	}
}
/*-------------------------------------------------------------------------------------------------------
*********************************************************************************************************
*********************************************************************************************************
******
****** PCã‚¹ã‚¿ã‚¤ãƒ«
******
*********************************************************************************************************
*********************************************************************************************************
-------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------
******************************************************************************
** style
******************************************************************************
----------------------------------------------------------------------------*/
body {
	margin: 0;
	padding: 0;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}
img {
  width: auto;
  max-width: 100%;
}
.pc_none {
	display: none !important;
}
.bg_fixed {
  position: fixed;
}

/*----------------------------------------------------------------------------
******************************************************************************
** header
******************************************************************************
----------------------------------------------------------------------------*/

header > .entry{
	display:none;
}


/*----------------------------------------------------------------------------
******************************************************************************
** global nav
******************************************************************************
----------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------
******************************************************************************
** top page
******************************************************************************
----------------------------------------------------------------------------*/
body > section{
	position:relative;
}
body .main_content,footer{
	max-width:calc(100% - 146px);
	margin-left:auto;
	margin-right:0;
}
.spec_img {
	margin-bottom: 0 !important;
	border: none;
}
.spec_img2 {
	margin-top: 0 !important;
	border: none;
	vertical-align: baseline !important;
}
.spec_img4 {
	padding: 30px 0 30px 30px;
}
.time_img {
	width: 650px;
}
#seminar img {
	margin-top: 10px;
	width: 500px;
}
/* general */
.main {
  max-width: 1000px;
  /* margin: 144px auto 0; */
  /* margin: 104px auto 0; */
}
.main_slider.slick-dotted.slick-slider {
  margin-bottom: 0;
}
.main_slider .slick-dots {
  width: auto;
  right: 6%;
  bottom: 2%;
}
.main_slider .slick-dots li button:before {
  color: #9fa0a0;
  opacity: 1;
}
.main_slider .slick-dots li.slick-active button:before {
  color: #fff;
  opacity: 1;
}
.inner {
  padding: 0 11.4%;
}
.main_bg_01 {
  background: #c6bdb7;
  /* background-attachment: fixed; */
  position: relative;
}

.main_bg_01::after {
  /* content: ''; */
  border-top: 64px solid transparent;
  border-bottom: 42px solid #fff;
  border-right: 1000px solid #fff;
  position: absolute;
  left: 0;
  bottom: 0;
}
.con_hd,
.con_slider_hd{
	text-align:center;
	margin-bottom: 20px;
}
.con_slider_hd{
	margin-bottom: 40px;
}

.con_hd img{
	width: 30%;
}
.con_slider_hd img{width: 49%;}


.main_bg_02 {
  /*background-attachment: fixed;*/
  margin-top: 1.4%;
  padding: 0 0 4%;
}


/*----------------------------------------------------------------------------
******************************************************************************
** footer
******************************************************************************
----------------------------------------------------------------------------*/

.ft_bg {
	width: 100%;
	/* color: #fff; */
	/* background: #251e1c; */
	padding: 100px 0 0px;
	/* margin: 0 auto; */
}
.ft {
  max-width: 1000px;
  margin: 0 auto;
}
.ft_con {
  padding: 0 8.8%;
  position: relative;
}
.ft_box01{
	display:flex;
	justify-content: space-between;
}
.ft_box01 .ft_box_col{
	margin-right: 50px;
}
.ft_con01_hd {
  font-family: 'DIN Condensed',sans-serif;
  font-size: 35px;
  letter-spacing: 0.22em;
  line-height: 1;
  margin-bottom: 33px;
}
.ft_con01 .ft_box01 .ft_box_hd {
  /* color: #727171; */
  font-size: 13px;
  font-weight: bold;
  margin-top: 18px;
  letter-spacing: 0.18em;
  line-height: 1;
}
.ft_con01 .ft_box01 .ft_box_hd.en {
  font-family: 'DIN Condensed',sans-serif;
  font-size: 22px;
  letter-spacing: 0.2em;
  line-height: 1.15;
  margin-bottom: 25px;
  margin-top: 0;
}
.ft_con01 .ft_box01 .ft_box_hd.en:nth-child(n+2){
	margin-top:25px
}
.ft_con01 .ft_box01 .ft_box_hd a {
  color: #fff;
  text-decoration: none;
}
.ft_con01 .ft_box01 .ft_box_list {
	/* display: flex; */
	margin: 16px 0 0;
}
.ft_con01 .ft_box01 .ft_box_list li {
  margin-bottom: 11px;
  padding-left: 3px;
}
.ft_con01 .ft_box01 .ft_box_list li a {
  color: #000;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.18em;
  text-decoration: none;
}
.ft_con01 .ft_box01 .ft_box_list li a:hover {
	opacity: 0.7;
}
.ft_con02 {
  display: flex;
  margin-top: 64px;
  margin-bottom: 30px;
}
#credit {
  /* color: #fff; */
  /* font-family: serif; */
  font-size: 11px;
  font-weight: bold;
  margin-top: 22px;
  margin-left: 12px;
  letter-spacing: -0.08px;
}
#top_scroll {
  position: absolute;
  right: 72px;
  bottom: 7px;
}
#top_scroll img{
	width:40px;
}
.noclick{
    pointer-events: none;
}
/*----------------------------------------------------------------------------
******************************************************************************
** page
******************************************************************************
----------------------------------------------------------------------------*/

/* general */
.page_content {
	/* padding-top: 109px; */
	/* background: #f1ede2; */
	width: 100%;
}
.page_content .rightFit,
.page_content .sub_content.qanda{
	max-width:calc(100% - 146px);
	/* width: 100%; */
	margin-left: auto!important;
	margin-right: 0!important;
	margin-bottom: 40px;
	display: block;
}
.page_content .sub_content.qanda{
	padding-top:40px;
}
.page_content .sub_content.qanda.answer{
	margin: auto!important;
	max-width: 1000px;
}
.page_content .q_box,
.page_content .a_box{
}
.page_content .rightFit img{
	max-width:calc(100% - 146px);
	width: 100%;
	margin-left: auto!important;
	margin-right: 0!important;
	display: block;
}
.page2_content {
	padding-top: 151px;
	background: #FFFFFF;
	width: 100%;
}
.page3_content {
	padding-top: 161px;
	background: #f1ede2;
	width: 100%;
	display: flex;
	justify-content: center
}
.forsvg img {
	width: 550px;
}

.sub_content {
	max-width: 1000px;
	margin: 0 auto;
	padding-bottom: 50px;
	overflow: hidden;
}
.page_content .sub_content{margin: 0 auto;width: 100%;}
.sub_content #side_con {
	float: left;
	width: 200px;
	overflow: hidden;
}
.sub_content #main_con {
	text-align: center;
}
.sub_content #main_con2 {
	float: right;
	width: 630px;
}
.sub_content #side_con .side_title01 {
	background: #0d3258;
	color: #FFF;
	height: 70px;
	font-size: 1.7rem;
	letter-spacing: 0.05em;
	line-height: 70px;
	text-align: center;
	margin-bottom: 30px;
	width: 100%;
	font-weight: bold;
}
.sub_content #side_con .side_btn01 a {
	border: solid 1px #a69341;
	display: block;
	color: #a69341;
	background: #FFFFFF;
	height: 60px;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	line-height: 60px;
	text-decoration: none;
	padding: 0 0 0 20px;
	position: relative;
	font-weight: bold;
}
.sub_content #side_con .side_btn01 a:after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -4px;
	width: 7px;
	height: 7px;
	border: 1px solid;
	border-color: transparent transparent #fff #fff;
	transform: rotate(-135deg);
}
.sub_content #side_con .side_btn01 a:hover {
	opacity: 0.8;
	transform: .3s;
}

.q_box{
	margin-bottom:40px;
}
.a_box.cols{
	display:flex;
	justify-content:space-around
}
.a_box{
	margin: auto;
	margin-bottom:40px;
	border: solid 2px;
	border-radius: 6px;
	background: #EAE5E3;
	position: relative;
	max-width: 639px!important;
	text-align:center;
	padding: 40px;
}

.a_box#a3 img.a_txt{
	margin-left:35px;
}
.a_box#a4 img.a_txt{
	margin-left:-20px;
}
.a_box .a_ttl{
	position: absolute!important;
	left:0;
	top:0;
}

#bottom_con {
  text-align: center;
}
#bottom_con img {
	width: 877px;
	background: #FFFFFF;
}
#bottom_con2 {
	width: 800px;
	margin-left: 142px;
}
#bottom_con2 img {
	background: #FFFFFF;
}
.sub_content02 {
	width: 100%;
	padding: 0 0 50px 0;
	overflow: hidden;
}
.sp_img {
	display: none;
}
.main_con {
	width: 100%;
	max-width: 1200px;
	min-width: 980px;
	text-align: center;
}
#main_con {
	/* margin-right: -72px; */
}
.page_content .qanda.answer #main_con{
	margin-left: -8.3%;
}
.page_content #main_con img {
	margin-bottom: 0;
}
.page_content #main_con img.mb40{
	margin-bottom:40px;
}
.page_content #main_con img.ml-500{
	margin-left:-500px;
}
.page_content #main_con .introTxt{
	margin-top:-20px;
	margin-bottom: 40px;
}
.page_content #main_con img:not(.rightFit) {
	max-width:1000px;
	position: relative;
	z-index: 9;
}
.page_content .qanda.answer #main_con > div {
    margin-bottom: 135px;
}
.page_content #main_con img#main_img{
	margin-top:40px;
	margin-bottom:60px
}
.page_content #main_con img.alignLeft{
	display:block;
	margin-left:0;
}
.page_content .child-link{
	margin-top:-10px;
}
.page_content .child-link a{
	margin: auto;
	display: block;
	margin-left: 15%;
}
.page_content .child-link > img{float: left;}
#main_con img,.page_content #main_con a img {
	margin-bottom: 30px;
}
#main_con p {
	width: 600px;
}
#main_con2 {
	margin-right: 52px;
}
#main_con2 img {
	margin-bottom: 30px;
	padding-right: 20px;
}
@media screen and (max-width: 850px) {
.main_recruit .con li::before{
	left:10%!important;	
}
.main_recruit .con li:nth-of-type(5)::before{
	left:12%!important;	
}
.ft_con {
  padding: 0 3%;
}
.ft_con01 .ft_box01 .ft_box_list li {
    margin-right: 0;
    padding-left: 0;
    margin-bottom: 0;
    line-height: 1.7;
}
}



@media screen and (max-width: 768px) {
  body {
  	width: 100%;
  	overflow: hidden;
  }
  .sp_none {
  	display: none !important;
  }
  .pc_none {
    display: block !important;
  }
	.hd_btn{
		display:none;
	}

  /*----------------------------------------------------------------------------
  ******************************************************************************
  ** header
  ******************************************************************************
  ----------------------------------------------------------------------------*/
	header > .entry{
		position:absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		right:55px;
		display: flex;
		align-items: center;
	}
	header > .entry{
		width: 20%;
	}

  /*----------------------------------------------------------------------------
  ******************************************************************************
  ** global nav
  ******************************************************************************
  ----------------------------------------------------------------------------*/

  .nav {
  	background: #fff;
  	color: #fff;
  	height: calc(100% + 500px);
  	padding-bottom: 572px;
  	width: 260px;
  	overflow-x: none;
  	overflow-y: auto;
  	top: 112px;
  	top: 70px;
  	right: -260px;
  	position: fixed;
  	-webkit-transition: All 0.5s ease;
  	transition: All 0.5s ease;
  }
  .nav_list {
    display: block;
    padding: 12px 0;
  }
  .nav_list > li {
    margin: 0;
  }
  .nav_list > li > span {
    display: block;
    color: #9e9e9f;
    font-size: 14px;
    padding: 10px 24px;
  }
  .nav_list > li > a {
  	display: block;
    font-size: 16px;
  	padding: 8px 24px;
  	position: relative;
  }
  .nav_list > li > a:hover {
  	box-shadow: inset 0 0 10px 2px rgba(0, 0, 0, 0.3);
  }
  .nav_list > li > a::after {
  	content: attr(data-text);
  	display: block;
  }
  .nav_list > li > a img {
  	display: none;
  }
  .sp_nav_open {
  	right: 0 !important;
  }
  .sp_nav_trigger {
    width: 26px;
    height: 37px;
    background: url(../img/fixed/menu_btn.png) no-repeat;
    background-size: cover;
    position: fixed !important;
    top: 57px;
    top: 17px;
    right: 4%;
    cursor: pointer;
  }

  /*----------------------------------------------------------------------------
  ******************************************************************************
  ** pagetop
  ******************************************************************************
  ----------------------------------------------------------------------------*/

  /* main */
  .main {
  	width: 100%;
  	margin-top: 112px;
  	margin-top: 70px;
  }
  .main_slider .slick-dots {
    bottom: -2%;
  }
  
  /*----------------------------------------------------------------------------
  ******************************************************************************
  ** page
  ******************************************************************************
  ----------------------------------------------------------------------------*/
  /* general */
  .page_content {
    padding-top: 72px;
  }
.page_content .sub_content.qanda.answer{
	margin-top:-72px!important;
}
	.page_content .qanda.answer #main_con > div {
    margin-bottom: 60px;
}
  .page_content #main_con img {
  	width: 100%;
  }
	
.page_content #main_con img.ml-500{
	margin-left:auto;
}
  .page_content .child-link{
  	margin-top: -10px;
  	position: relative;
  }
  .page2_content {
  	text-align: center;
  }
  .page_content .sub_content {
  	padding-top:0;
  }
  .sub_content {
  	width: 94%;
  	margin-left: auto;
  	margin-right: auto;
  	padding: 20px 0;
  }
  .sub_content #side_con {
  	width: 100%;
  	padding-top: 20px;
    float: none;
  }
  .sub_content #main_con,
  .sub_content #main_con2 {
  	width: 100%;
  	float: none;
  }
	.page_content .qanda.answer #main_con{
		margin-left: auto;
	}
  .sub_content #side_con .side_btn01 a {
  	background-color: #a69341;
  	display: block;
  	color: #FFF;
  	height: 50px;
  	font-size: 1.4rem;
  	letter-spacing: 0.05em;
  	line-height: 50px;
  	text-decoration: none;
  	padding: 0 0 0 20px;
  	position: relative;
  }
  .sub_content #side_con .side_btn01 a:after {
  	content: "";
  	position: absolute;
  	right: 20px;
  	top: 50%;
  	margin-top: -4px;
  	width: 7px;
  	height: 7px;
  	border: 1px solid;
  	border-color: transparent transparent #fff #fff;
  	transform: rotate(-135deg);
  }
  .sub_content #side_con .side_title01 {
  	background-color: #333333;
  	color: #FFF;
  	font-size: 1.6rem;
  	letter-spacing: 0.1em;
  	text-align: center;
  	margin-bottom: 10px;
  	width: 100%;
  	padding: 5px 10px;
  	-webkit-box-sizing: border-box;
  	-moz-box-sizing: border-box;
  	box-sizing: border-box;
  }
  .sub_content02 {
  	width: 100%;
  	padding: 70px 0 25px 0;
  	overflow: hidden;
  }
  #bottom_con img {
  	margin-top: 20px;
  	width: 100%;
  }
  #bottom_con2 img {
  	margin-top: 20px;
  	width: 100%;
  }
  
	body .main_content, footer {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
	}

  /*----------------------------------------------------------------------------
  ******************************************************************************
  ** footer
  ******************************************************************************
  ----------------------------------------------------------------------------*/

  .ft_bg {
    padding: 20px 0 8px;
  }
  .ft_con {
  padding: 26px 11% 0;
  }
  .ft_con01 {
  }
.ft_box01 .ft_box_col {
    margin-right: 1.5%;
    /* width: 33%; */
}
	.ft_box01 .ft_box_col:last-child{
		margin-right:0;
	}
	.ft_con01 .ft_box01 .ft_box_hd.en{
		letter-spacing: 0.7px;
		font-size: 11.9px;
		line-height: 1.2;
		margin-bottom: 5px;
	}
	.ft_con01 .ft_box01 .ft_box_list{
		margin:0 ;
	}
  .ft_con01_hd {
    font-size: 34px;
    margin-bottom: 20px;
    /* text-align: center; */
  }
.ft_con01 .ft_box01 .ft_box_list li a{
	font-size: 1vw;
	letter-spacing: 0;
}
  .ft_con01 .ft_box02 {
    display: flex !important;
    justify-content: space-between;
  }
  .ft_con01 .ft_box02 .ft_box_list {
    flex-grow: 1;
  }
  .ft_con01 .ft_box02 .ft_box_list:not(:last-of-type) {
    margin-right: 0%;
  }
  .ft_con01 .ft_box02 .ft_box_list a {
    display: inline-block;
    color: #000;
    font-size: 18px;
    font-weight: bold;
    margin: 8px 0;
    text-decoration: none;
  }
  .ft_con02 {
    display: block;
    text-align: center;
    margin-top: 30px;
  }
  .ft_con .ft_copy {
  	font-size: 0.8em;
  	text-align: center;
  	padding: 20px 0 0px 0;
  }
  #credit {
  	font-size: 16px;
    margin-left: 0;
  }
  #top_scroll {
    right: 3%;
    width: 7%;
    bottom: 0;
  }
.page_content .rightFit,
.page_content .sub_content.qanda{
	max-width:100%;
}
.a_box#a3 img.a_txt{
	margin-left:auto;
}
.a_box#a4 img.a_txt{
	margin-left:auto;
}
.a_box img.a_ttl{
	width: 14%!important;
}
}
header > .entry{
	right: 43px;
}
.sp_nav_trigger{
	right: 10px;
	top: 14px;
	background-size: contain;
	width: 26px;
}

  .ft_con01_hd {
    font-size: 22px;
  }
  .ft_con01 .ft_box02 .ft_box_list a {
    font-size: 10px;
  }
  #credit {
    font-size: 10px;
    letter-spacing: -0.2px;
  }
	.ft_con {
  padding: 16px 20px 0;
  }
	.ft_con01 .ft_box01 .ft_box_list li a {
    font-size: 11px;
 }
	.page_content .sub_content.qanda{
		padding:20px
	}
	.page_content .sub_content.qanda .q_box{
		margin-bottom:20px;
	}
	.page_content .sub_content.qanda .a_box{
		padding:32px;
	}
	.page_content .sub_content.qanda .a_box.cols{
		padding:20px 12px;
	}
	.page_content .sub_content.qanda .a_box.cols > div{
		padding:12px;
	}
	.ft_con01 .ft_box01 .ft_box_hd.en{
		font-size:12px;
	}

}
