@charset "utf-8";

/* ------------------------------
	all Start
 --------------------------------*/
.inner-01,
.inner-02{
	min-width:1080px;
	max-width:1200px;
}
.inner-01,
.inner-02,
.inner-07,
.inner-08{
	padding:0 6rem;
}
.inner-01{
	position:relative;
	margin:0 auto 25.0rem;
}
.inner-02{
	position:relative;
	margin:0 auto;
}
.inner-07{
	position:relative;
	width:760px;
	margin:0 auto 10.0rem;
}
.inner-08{
	position:relative;
	width: 760px;
	margin:0 auto 16.0rem;
}
.text-01 {
	position:relative;
	margin-bottom:5.0rem;
}
.text-01 p {
	margin-bottom:1em;
}
.text-01:last-child{
	margin-bottom:0;
}
.text-01 p:last-child{
	margin-bottom:0;
}

h3.h_title-01 {
	position: relative;
    margin-bottom: 1.8rem;
	color: #286BC1;
}
.layout-01 h3.h_title-01 {
    margin-bottom: 2.2rem;
}
h3 .h_title-01_ja{
	position:relative;
	top:-1px;

	line-height: 1.5;
	font-size: 1.5rem;
	font-weight:bold;
	letter-spacing: 0.075em;
}
h3 .h_title-01_en{
	display:inline-block;
	position:relative;
	margin-left:2px;
	margin-right:5.0rem;
	line-height: 1;
	letter-spacing: 0.075em;
	font-size:1.7rem;
	font-family: "droid-sans", sans-serif;
	font-weight: 400;
	font-style: normal;
}
h3 .h_title-01_en::after{
	position: absolute;
	right: -2.5rem;
	top: -0.2rem;
	bottom: 0;
	margin: auto;
	width: 0.5px;
	height: 1.6rem;
	background-color: #286BC1;
	transform: rotate(30deg);
	content: "";

}
h4.h_title-01_ja{
	position:relative;
    margin-bottom: 6.0rem;
	line-height: 1.5;
	font-size: 3.4rem;
	font-weight:bold;
	letter-spacing: 0.075em;
}
.layout-01 h4.h_title-01_ja {

    margin-bottom: 0;

}
h3.title-01 {
	position: relative;
    margin-bottom: 7.4rem;
	
}
.title-01_ja{
	line-height: 1.5;
	font-size: 3.4rem;
	font-weight:bold;
	letter-spacing: 0.075em;
}
.title-01_en{
	display:block;
	position:relative;
	margin-left:2px;
	margin-bottom: 2.5rem;
	line-height: 1;
	letter-spacing: 0.075em;
	color: #286BC1;
	font-size:1.6rem;
	font-family: "droid-sans", sans-serif;
	font-weight: 400;
	font-style: normal;
}
h3.title-04 {
	position: relative;
    margin-bottom: 7.4rem; 
	
}
h3.title-04::before{
	position: absolute;
    bottom: -21px;
    left: 1px;
    width: 26px;
    height: 1px;
    background-color: #0068CF;
    content: "";
}
h4.title-04 {
	position: relative;
    margin-bottom: 74px; 
	
}
h4.title-04::before{
	position: absolute;
    bottom: -16px;
    left: 1px;
    width: 26px;
    height: 1px;
    background-color: #0068CF;
    content: "";
}
.btn-01{
	position:relative;


}
.btn-01 a{
	display: inline-block;
    position: relative;
    line-height: 1;
    font-weight: bold;
    transition: ease-in-out 0.2s;
    padding-bottom: 10px;
    color: #64CCBF;

}
.btn-01 a::after {
  position: absolute;
  right: auto;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: #64CCBF;
  transition: 0.3s cubic-bezier(0.260, 0.005, 0.000, 1.035);
  content: "";
  z-index: 1;
}
.btn-01 a:hover::after {
  width: 0;
  right: 0;
  left: auto;

}
.btn-01 a:hover{
	color:#64CCBF;

}
.nowrap{
	white-space:nowrap;
}
.tb02{
	border-spacing: 0;
	text-align: left;
	width:100%;

}
.tb02 td,
.tb02 th{
	padding:2.8rem 0;
	border-bottom:1px solid #E1EBF3;
	line-height:1.75;

	
}
.tb02 th{
	padding-left:0;
	padding-right:4.4rem;
	white-space:nowrap;
	text-align:left;
	font-weight: bold;
	color:#333;
	vertical-align:top;
}
.tb02 td{

	padding-right:0 ;
	text-align:left;
		vertical-align:middle;
}
.tb02 tr:first-child td,
.tb02 tr:first-child th{
	border-top:1px solid #E1EBF3;
}
.tb_access td,
.tb_access th{
	border-bottom: none;
	padding-bottom:0;
}
.tb_map td,
.tb_map th{
	padding-top:2.4rem;
}
.tb_map iframe{
	width:100%;
	margin-bottom:8px;
}
.layout-01{
	display:flex;
	justify-content:space-between;
}
.layout-01_text{
	padding-top: 4.5rem;
	width:50%;
}
.layout-01 h3{
	margin-bottom:0;
}
.layout-02{
	display:flex;
	justify-content:space-between;
	align-items: center;
}
.layout-02_contents{
	width:50%;
}
.layout-02 picture{
	position:relative;
	width:43.2rem;
	height:59.0rem;
	overflow:hidden;
	z-index:20;
}
.layout-02 picture img{
    position: absolute;
    top: 50%;
    left: 50%;
    margin: auto;
    transform: translate(-50%,-50%);
	width:100%;
	height:100%;
}
.layout-02_bg{
	position:absolute;
    top: -224px;
    left: calc(50% - 50vw);
    width: calc((50vw - 50%) + 984px);
    height: calc(100% + 108px + 224px);
	background-color:#F5F7FA;
	z-index:-1;
}

@media screen and (min-width:1921px) {

	.inner-01,
	.inner-02{
		max-width:1400px;
	}
	.inner-08 {
		width: 640px;
	}
	.layout-02 picture{
		height:686px;
	}

}
/* ------------------------------
	End all
 --------------------------------*/

