.inner{
    width: 1000px;
    margin: 0 auto;
    position: relative;
}
body{
	
}
.mc{
	color: #ec5502;
}
.bg-mc{
	background-color: #ec5502;
}
.serif{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.about_10{
	font-size: 1.2rem;
}
.pc-float-right{
	float: right;
}
.wrapper{
	overflow: hidden;
}
.mb20{
	margin-bottom: 26px;
}

@media only screen and (max-width: 1024px) {

body{
	width: 1024px;
}

}

@media only screen and (max-width: 768px) {

.inner{
    width: 90%;
}
body{
	width: 100%;
}
.pc-float-right {
    float: none;
}

}


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

load

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

#loader-bg {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0px;
    left: 0px;
    background: #050505;
    z-index: 100000;
    text-align: center;
}
#loader-bg h2{
	position: absolute;
	font-size: 1rem;
	height: 15px;
	top: 180px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; 
	color: #fff;
}
#loader-bg img{
	width: 80px;
	height: auto;
	position: absolute;
	top: -240px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; 
}
:root {
  --bg-color: radial-gradient(circle at center, #ffffff, #cccccc);
  --dot-color1: #ec5502;
  --dot-color2: #fff;
}
.dna {
  width: 228px;
  height: 50px;
  position: absolute;
  top: 30px;
  left: 10px;
  right: 0;
  bottom: 0;
  margin: auto; 
  perspective: 400px;
  transform-style: preserve-3d;
}
.ele {
  width: 1px;
  height: 50px;
  float: left;
  margin: 0 5px;
  border-left: 1px #B0B0B0 dashed;
  position: relative;
  transform: rotateX(-360deg);
  animation: run 2s linear infinite;
}
.ele:before, .ele:after {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--dot-color1);
  border-radius: 50%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.ele:before {
  top: -2px;
  background: var(--dot-color2);
}
.ele:after {
  bottom: -2px;
}
.ele:nth-of-type(1) {
  animation-delay: -0.15s;
}
.ele:nth-of-type(2) {
  animation-delay: -0.3s;
}
.ele:nth-of-type(3) {
  animation-delay: -0.45s;
}
.ele:nth-of-type(4) {
  animation-delay: -0.6s;
}
.ele:nth-of-type(5) {
  animation-delay: -0.75s;
}
.ele:nth-of-type(6) {
  animation-delay: -0.9s;
}
.ele:nth-of-type(7) {
  animation-delay: -1.05s;
}
.ele:nth-of-type(8) {
  animation-delay: -1.2s;
}
.ele:nth-of-type(9) {
  animation-delay: -1.35s;
}
.ele:nth-of-type(10) {
  animation-delay: -1.5s;
}
.ele:nth-of-type(11) {
  animation-delay: -1.65s;
}
.ele:nth-of-type(12) {
  animation-delay: -1.8s;
}
.ele:nth-of-type(13) {
  animation-delay: -1.95s;
}
.ele:nth-of-type(14) {
  animation-delay: -2.1s;
}
.ele:nth-of-type(15) {
  animation-delay: -2.25s;
}
.ele:nth-of-type(16) {
  animation-delay: -2.4s;
}
.ele:nth-of-type(17) {
  animation-delay: -2.55s;
}
.ele:nth-of-type(18) {
  animation-delay: -2.7s;
}
.ele:nth-of-type(19) {
  animation-delay: -2.85s;
}
.ele:nth-of-type(20) {
  animation-delay: -3s;
}
@keyframes run {
  to {
    transform: none;
  }
}
.loadingBar {
    width: 0;
    height: 4px;
    background: #fff;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000s;
    transition: all 0.2s linear 0s;
}


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

header

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

.discription{
	height: 30px;
	background-color: #050505;
	position: relative;
	z-index: 101;
}
.discription p{
	color: #fff;
	float: left;
	line-height: 30px;
}
.discription ul{
	float: right;
}
.discription ul li{
	float: left;
	position: relative;
}
.discription ul li:first-child{
	padding-right: 30px;
}
.discription ul li:first-child:after{
	content: "";
	position: absolute;
	height: 14px;
	width: 1px;
	background-color: #ec5502;
	right: 14.5px;
	top: 8px;
}
.discription a{
	color: #fff;
	line-height: 30px;
}
.discription a i{
	margin-right: 5px;
}

header{
	background-color: rgba(255,255,255,0.8);
	height: 80px;
	position: fixed;
	width: 100%!important;
	left: 0;
	z-index: 1000;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
}
header .logo{
	float: left;
}
header .logo img{
	width: 320px;
	height: auto;
	line-height: 80px;
	margin-top: 17.5px;
}
header nav{
	float: right;
}
header nav ul li{
	float: left;
	margin-left: 20px;
}
header nav ul li a{
	font-weight: bold;
	line-height: 1.5rem;
	text-align: center;
	margin-top: 24px;
}
header nav ul li a:hover{
	opacity: 0.7;
}
header nav ul li:last-child a:hover{
	opacity: 1;
}
header nav ul li a span{
	display: block;
	text-align: center;
	font-size: .85rem;
	color: #ec5502;
	letter-spacing: .1rem;
}
header nav ul li .cta{
	display: block;
	position: relative;
	width: 140px;
	height: 80px;
	margin-top: 0px;
	padding-top: 22px;
	color: #fff;
	text-align: center;
	margin-left: 10px;
}
header nav ul li .cta div{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -2;
	background-color: #ec5502;
}
header nav ul li .cta span{
	color: #fff;
}
header nav ul li .cta:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	z-index: -1;
	background-color: #000;
}
header nav ul li .cta:hover:before{
	width: 100%;
}
header nav ul li .cta:after{
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	top: 30px;
	right: -10px;
	background-image: url(../img/arrow.png);
	background-repeat: no-repeat;
	background-size: 20px;
}
.fixed {
    position: fixed;
    top: 0;
    background-color: #eee;
}

@media only screen and (max-width: 768px) {

.discription ul {
    float: none;
    width: 320px;
    margin: 0 auto;
}
header {
    height: 60px;
}
header .logo img {
    width: 260px;
    height: auto;
    margin-top: 13.5px;
}
.menu-bg{
	width: 61px;
	height: 60px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 100;
	text-align: center;
}
.menu-bg p{
	color: #fff;
	font-weight: 700;
	font-size: 1.1rem;
	line-height: 60px;
	letter-spacing: 0;
}
.menu-bg:after{
	content: "";
	position: absolute;
	width: 20px;
	height: 20px;
	left: 0;
	right: 0;
	bottom: -10px;
	margin: auto; 
	background-image: url(../img/arrow1.png);
	background-repeat: no-repeat;
	background-size: 20px;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
}
.active:after{
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
}
.sp-nav{
	position: absolute;
	height: 800px;
	width: 100%;
	left: 0;
	bottom: -800px;
	z-index: -1;
	opacity: 0;
	background-color: #050505;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
}
.sp-opened-nav{
	bottom: 0px;
	position: fixed;
	opacity: 1;
	z-index: 100;
}
.sp-opened-nav ul{
	position: absolute;
	bottom: 0;
	left: 10%;
	height: 66vh;
}
header.fixed + .sp-opened-nav ul{
	height: 73vh;
}
.sp-opened-nav a{
	color: #ec5502;
	font-size: 1.5rem;
	font-weight: 900;
	padding-left: 50px;
    padding-bottom: 50px;
    padding-top: 8px;
}
.sp-opened-nav a span{
	font-size: 1rem;
	padding-left: 10px;
	display: inline-block;
	letter-spacing: .01rem;
}
.sp-opened-nav li:nth-of-type(1) a{
	background-image: url(../img/icon1.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: top left;
}
.sp-opened-nav li:nth-of-type(2) a{
	background-image: url(../img/icon2.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: top left;
}
.sp-opened-nav li:nth-of-type(3) a{
	background-image: url(../img/icon3.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: top left;
}
.sp-opened-nav li:nth-of-type(4) a{
	background-image: url(../img/icon4.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: top left;
}

}

@media only screen and (max-width: 340px) {

header .logo img {
    width: 230px;
    margin-top: 15px;
}

}


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

fv

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

.fv{
	height: 96vh;
	background-image: url(../img/fv.jpg);
	background-size: cover;
	background-position: center;
	position: relative;
	overflow: hidden;
}
.fv .inner{
	height: 100%;
}
.fv .copy{
	width: 640px;
    height: auto;
    position: absolute;
    top: 31%;
	left: 0;
	z-index: 2;
}
.fv h2{
	color: #fff;
	font-size: 1.6rem;
    line-height: 2.6rem;
    position: absolute;
    top: 63%;
	left: 0;
}
.fv h3{
	font-size: 10rem;
	font-weight: 900;
	letter-spacing: -3px;
	opacity: 0.1;
	color: #fff;
	position: absolute;
	top: 42%;
	right: -100px;
	z-index: 1;
}
.cl .fv h3{
	font-size: 6rem;
    position: absolute;
    top: auto;
    right: 0;
    left: 0;
    letter-spacing: 0;
}
.cl .fv h2{
	position: relative;
	top: auto;
	left: auto;
	margin-top: 26px;
}
.fv .scroll{
	position: absolute;
	width: 100px;
	padding-bottom: 28px;
	bottom: 30px;
	left: 0;
	right: 0;
	margin: auto;
	color: #fff;
	text-align: center;
}
.fv .scroll:after{
	content: "";
	width: 20px;
	height: 20px;
	position: absolute;
	bottom: 0px;
	right: 0px;
	left: 0;
	margin: auto;
	background-image: url(../img/arrow1.png);
	background-repeat: no-repeat;
	background-size: 20px;
}
.fv .scroll:before{
	position: absolute;
	top: 40%;
	left: 24%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #fff;
}
.fv .scroll:hover:before{
	width: 51%;
}
.fv .scroll:hover{
	bottom: 35px;
}
.fv .scroll:hover:after{
	bottom: -10px;
}

.cl-title{
	position: absolute;
	text-align: center;
	width: 100%;
	height: 74px;
	top: 160px;
}
.cl-title img{
	width: 36px;
	height: auto;
}
.about .fv{
	height: 400px;
	background-image: url(../img/message-fv_2.jpg);
}
.page-staff .fv{
	height: 400px;
	background-image: url(../img/staff-fv.jpg);
}
.page-activity .fv{
	height: 400px;
	background-image: url(../img/activity-fv.jpg);
}
.page-application .fv{
	height: 400px;
	background-image: url(../img/application_bg.jpg);
}


@media only screen and (max-width: 768px) {

.fv .copy {
    width: 280px;
    top: 32%;
}
.fv h3 {
    font-size: 4rem;
    top: 52%;
    opacity: 0.1;
    right: -5%;
    z-index: 1;
}
.fv h2 {
    font-size: 1.1rem;
    line-height: 1.8rem;
    top: 64%;
}
.fv {
    height: 500px;
}
.cl-title {
    position: absolute;
    text-align: center;
    width: 100%;
    height: 74px;
    top: 100px;
}
.cl .fv h3 {
    font-size: 3.5rem;
    position: absolute;
    top: 52px;
    right: 0;
    left: 0;
    letter-spacing: 0;
}
.cl .fv{
	height: 300px;
}
.page-staff .cl-title img {
    width: 30px;
}

}


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

about

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

.top_about{
	padding: 90px 0 210px;
}
.top_about .section-title{
	position: relative;
	font-size: 1.2rem;
	margin-bottom: 40px;
}
.top_about .section-title:before{
	content: "";
	position: absolute;
	top: -10px;
	left: -50px;
	width: 30px;
	height: 32px;
	background-image: url(../img/icon1.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
}
.top_about h3{
	background-color: #111;
	display: inline-block;
	padding: 10px;
	color: #fff;
	font-size: 2.1rem;
	margin-bottom: 40px;
}
.top_about p{
	width: 500px;
	font-size: 1.2rem;
}
.top_about .image{
	width: 386px;
    height: 432px;
	background-image: url(../img/about1.jpg);
	background-size: 100%;
	background-position: center;
	position: absolute;
	top: 8px;
	right: 0;
	z-index: -1;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
}
.top_about .image a{
	width: 100%;
	height: 100%;
}
.top_about .image:hover{
	background-size: 105%;
}
.top_about .image:hover + .cta{
	right: 200px;
}
.top_about .image:hover + .cta:after{
	width: 284px;
	left: -297px;
}
.top_about .image:hover + .cta:before{
	left: -298px;
}
.top_about .cta:hover{
	right: 200px;
}
.top_about .cta:hover + .image{
	background-size: 105%;
}
.top_about .cta:hover:after{
	width: 284px;
	left: -297px;
}
.top_about .cta:hover:before{
	left: -298px;
}
.top_about .cta{
	display: inline-block;
	padding: 10px 30px 10px 0;
	position: absolute;
	top: 373px;
	right: 240px;
	font-weight: 700;
	background-image: url(../img/arrow2.png);
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: right center;
}
.top_about .cta:after{
	content: "";
    position: absolute;
    width: 244px;
    height: 1px;
    background-color: #ec5502;
    top: 48%;
    left: -257px;
}
.top_about .cta:before{
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	background-color: #ec5502;
	top: 44.5%;
	left: -258px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
}


.about .top_about {
    padding: 90px 0 105px;
    text-align: center;
}
.about .top_about h3{
	margin-bottom: 60px;
}
.about .top_about p {
    width: 700px;
    margin: 0 auto;
    text-align: left;
    font-size: 1.2rem;
    margin-bottom: 20px;
}
.cl .profile{
	height: 360px;
	position: relative;
	text-align: center;
	background-image: url(../img/message-fv2.jpg);
	background-size: cover;
	background-position: center;
}
.cl .profile .cl-title{
	top: 140px;
}
.profile-content{
	padding: 90px 0 105px;
	position: relative;
}
.profile-content .image{
	width: 260px;
	height: 320px;
	float: left;
	position: relative;
	top: -118px;
	background-image: url(../img/message_amano.jpg);
	background-size: cover;
	background-position: center top;
}
.profile-content .name{
	position: absolute;
	bottom: -70px;
	left: 0;
}
.profile-content .name h3{
	font-size: 1.2rem;
	margin-bottom: 14px;
}
.profile-content .name h2{
	font-size: 1.5rem;
}
.profile-content .name img{
	position: absolute;
	width: 140px;
	height: auto;
	right: -30px;
	bottom: -30px;
}
.profile-content .text{
	width: 64%;
	float: right;
	text-align: left;
}
.profile-content .text p{
	margin-bottom: 20px;
	font-size: 1.2rem;
}

@media only screen and (max-width: 768px) {

.top_about {
    padding: 30px 0 80px;
}
.top_about .image {
    width: 120%;
    height: 240px;
    top: 40px;
    right: auto;
    left: -10%;
}
.top_about .section-title {
    position: relative;
    font-size: 1.2rem;
    text-align: center;
    margin-bottom: 40px;
    font-weight: 900;
}
.top_about .section-title:before {
    top: -10px;
    left: 0px;
}
.top_about h3 {
    padding: 15px 5px 15px 10px;
    color: #fff;
    font-size: 1.3rem;
    position: relative;
    left: -5.5%;
    letter-spacing: 0;
    margin-top: 205px;
    margin-bottom: 26px;
}
.top_about p {
    width: 100%;
    font-size: 1rem;
    margin-bottom: 10px;
}
.top_about .cta {
    top: auto;
    bottom: -57px;
    right: 0;
    font-weight: 900;
}
.top_about .cta:after {
    content: "";
    position: absolute;
    width: 185%;
    height: 1px;
    background-color: #ec5502;
    top: 48%;
    left: -196%;
}
.top_about .cta:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #ec5502;
    top: 42%;
    left: -197%;
}
.top_about .cta:hover {
    top: auto;
    bottom: -57px;
    right: 0;
    font-weight: 900;
}
.top_about .cta:hover:after {
    content: "";
    position: absolute;
    width: 185%;
    height: 1px;
    background-color: #ec5502;
    top: 48%;
    left: -196%;
}
.top_about .cta:hover:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #ec5502;
    top: 42%;
    left: -197%;
}

.about .top_about {
    padding: 60px 0 60px;
}
.about .top_about h3 {
    font-size: 1.3rem;
    text-align: left;
    line-height: 2rem;
    margin-bottom: 26px;
    left: auto;
    margin-top: 0px;
}
.about .top_about p {
    width: auto;
    text-align: left;
    margin-bottom: 10px;
}
.cl .profile {
    height: 240px;
}
.cl .profile .cl-title {
    top: 75px;
}
.cl .profile h3 {
    top: 12px;
}
.profile-content .image {
    width: 100%;
    height: 320px;
    float: none;
}
.profile-content .text {
    width: 100%;
    float: none;
    text-align: left;
}

}


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

staff

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

.top_staff{
	padding: 120px 0 100px;
	background-image: url(../img/staff_bg.jpg);
	background-size: cover;
	background-position: right center;
}
.top_staff .section-title{
	position: relative;
	font-size: 1.2rem;
	margin: 0 auto 60px;
	text-align: center;
	display: block;
}
.top_staff .section-title:before{
	content: "";
	position: absolute;
	top: -55px;
    left: 0px;
    right: 0;
    margin: auto;
	width: 30px;
	height: 38px;
	background-image: url(../img/icon2.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
}
.top_staff .box{
	width: 22%;
	margin-right: 4%;
	height: 280px;
	background-color: #ddd;
	float: left;
	position: relative;
}
.top_staff .staff1{
	background-image: url(../img/staff1.jpg);
	background-size: cover;
	background-position: center;
	background-color: none;
}
.top_staff .staff1:hover{
	background-image: url(../img/staff1_2.jpg);
}
.top_staff .staff2{
	background-image: url(../img/staff2.png);
	background-size: cover;
	background-position: center;
	background-color: none;
	background-repeat: no-repeat;
}
.top_staff .staff2:hover{
	background-image: url(../img/staff2_2.png);
}
.top_staff .staff4{
	background-image: url(../img/logo_icon.png);
	background-size: 100px;
	background-position: center;
	background-color: none;
	background-repeat: no-repeat;
}
.top_staff .staff3{
	background-image: url(../img/staff3.jpg);
	background-size: cover;
	background-position: center;
	background-color: none;
}
.top_staff .staff3:hover{
	background-image: url(../img/staff3_2.jpg);
}
.top_staff .staff4{
	background-image: url(../img/staff4.jpg);
	background-size: cover;
	background-position: center;
	background-color: none;
}
.top_staff .box:nth-of-type(4){
	margin-right: 0;
}
.top_staff .box .profile{
	position: absolute;
	width: 100%;
	padding: 12px 5px 12px 10px; 
	background-color: rgba(0,0,0,0.5);
	left: 0;
	bottom: 0;
	text-align: center;
}
.top_staff .box .profile h4{
	color: #ddd;
	margin-bottom: 11px;
	font-weight: normal;
	font-size: 1rem;
} 
.top_staff .box .profile h3{
	color: #fff;
	margin-bottom: 8px;
	font-size: 1.3rem;
	letter-spacing: .05rem;
}
.top_staff .box .profile h5{
	color: #ddd;
	margin-bottom: 10px;
}
.top_staff .box .profile p{
	color: #ddd;
}
.top_staff .box a{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 2;
}


.staff{
	padding: 90px 0 130px;
	position: relative;
}
.staff .first-box{
	width: 640px;
	margin: 0 auto 80px;
	position: relative;
}
.staff .first-box .image{
	width: 260px;
	height: 320px;
	float: left;
	background-image: url(../img/staff1.jpg);
	background-size: cover;
	background-position: center;
	background-color: none;
}
.staff .first-box .image:hover{
	background-image: url(../img/staff1_2.jpg);
}
.staff .first-box .info{
	width: 380px;
	height: 340px;
	background-image: url(../img/staff-info-bg.jpg);
	background-size: cover;
	background-position: center;
	padding: 45px 30px;
	overflow: auto;
	margin-top: 60px;
	color: #ddd;
	position: relative;
}
.staff .info h3{
	font-size: 1.05rem;
	color: #ddd;
	margin-bottom: 15px;
	font-weight: normal;
}
.staff .info h2{
	font-size: 1.4rem;
	margin-bottom: 14px;
	color: #fff;
}
.staff .info h5{
	font-size: 1.05rem;
	margin-bottom: 26px;
	font-weight: normal;
}
.staff .info h4{
	color: #fff;
	font-weight: normal;
	font-size: 1.2rem;
	padding: 6px 10px;
	margin-bottom: 20px;
	border-left: 2px solid #ec5502;
}
.staff .info p{
	margin-left: 13px;
	margin-bottom: 8px;
	font-size: 1.05rem;
}
.bottom-hide{
	position: absolute;
	width: 380px;
	height: 30px;
	background-color: #0f0300;
	right: 0;
	bottom: 0;
	z-index: 2;
}
.bottom-hide img{
	width: 20px;
	height: auto;
	position: absolute;
	right: 15px;
	bottom: 15px;
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
}
.second-box .box-cl{
	width: 31%;
	float: left;
	margin-right: 3.5%;
	position: relative;
}
.second-box .box-cl .image{
	background-image: url(../img/logo_icon.png);
	background-size: 100px;
	background-position: center;
	background-color: none;
	background-repeat: no-repeat;
}
.second-box .box-cl .staff2{
	background-image: url(../img/staff2.png);
	background-size: cover;
	background-position: center;
	background-color: none;
}
.second-box .box-cl .staff2:hover{
	background-image: url(../img/staff2_2.png);
	background-position: center -80px;
}
.second-box .box-cl .staff3{
	background-image: url(../img/staff3.jpg);
	background-size: cover;
	background-position: center;
	background-color: none;
}
.second-box .box-cl .staff3:hover{
	background-image: url(../img/staff3_2.jpg);
	background-position: center -80px;
}
.second-box .box-cl .staff4{
	background-image: url(../img/staff4.jpg);
	background-size: cover;
	background-position: center top;
	background-color: none;
}
.second-box .box-cl:nth-of-type(3){
	margin-right: 0;
}
.second-box .box-cl .image{
	width: 100%;
	height: 240px;
	background-color: #ddd;
	float: none;
}
.second-box .box-cl .info{
	width: 100%;
	height: 240px;
	padding: 20px;
	float: none;
	background-image: url(../img/staff-info-bg.jpg);
	background-size: cover;
	background-position: center;
	overflow: auto;
	color: #ddd;
	position: relative;
}
.second-box .bottom-hide{
	width: 100%;
}
.staff .second-box .info h3{
	font-size: .95rem;
	color: #ddd;
	margin-bottom: 15px;
	font-weight: normal;
}
.staff .second-box .info h2{
	font-size: 1.3rem;
	margin-bottom: 14px;
	color: #fff;
}
.staff .second-box .info h5{
	font-size: 1rem;
	margin-bottom: 26px;
	font-weight: normal;
}
.staff .second-box .info h4{
	color: #fff;
	font-weight: normal;
	font-size: .95rem;
	padding: 5px 10px;
	margin-top: 20px;
	margin-bottom: 10px;
	border-left: 2px solid #ec5502;
}
.staff .second-box .info p{
	margin-left: 13px;
	margin-bottom: 8px;
}
.staff .info h2 span{
	display: block;
	margin-top: 8px;
	color: #fff;
	margin-left: 0px;
	font-size: .95rem;
	font-weight: normal;
	font-family: 'Muli',"游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

@media only screen and (max-width: 768px) {

.top_staff .box {
    width: 48%;
    margin-right: 4%;
    height: 220px;
    background-color: #ddd;
    float: left;
    position: relative;
    margin-bottom: 12px;
}
.top_staff .box:nth-of-type(2),
.top_staff .box:nth-of-type(4){
	margin-right: 0;
}
.top_staff {
    padding: 80px 0 40px;
}
.top_staff .section-title {
    position: relative;
    font-size: 1.2rem;
    margin: 0 auto 30px;
    font-weight: 900;
}
.top_staff .section-title:before {
    content: "";
    position: absolute;
    top: -50px;
}
.top_staff .box .profile h4 {
    margin-bottom: 10px;
    font-size: .9rem;
}
.top_staff .box .profile {
    padding: 10px 5px 6px 10px;
}
.top_staff .box .profile h5 {
    color: #ddd;
    font-size: .9rem;
    color: #fff;
    font-weight: normal;
    margin-bottom: 7px;
}
.top_staff .box .profile p {
    color: #ddd;
    font-size: .9rem;
}

.staff {
    padding: 60px 0 60px;
}
.staff .first-box {
    width: 100%;
    margin-bottom: 60px;
}
.staff .first-box .image {
    width: 100%;
    height: 320px;
    float: none;
}
.staff .first-box .info {
    width: 100%;
    margin-top: 0px;
}
.bottom-hide {
    position: absolute;
    width: 100%;
}
.second-box .box-cl {
    width: 100%;
    float: none;
    margin-right: 0;
    margin-bottom: 60px;
}

}


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

activity

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

.top_activity{
	padding: 90px 0 210px;
	text-align: right;
}
.top_activity .section-title{
	position: relative;
	font-size: 1.2rem;
	margin-bottom: 40px;
	top: -2px;
}
.top_activity .section-title:before{
	content: "";
	position: absolute;
	top: -10px;
	right: -50px;
	width: 30px;
	height: 32px;
	background-image: url(../img/icon3.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
}
.top_activity h3{
	background-color: #111;
	padding: 0px 10px;
	color: #fff;
	font-size: 1.8rem;
	line-height: 3.6rem;
	margin-bottom: 40px;
	text-align: left;
	width: 500px;
	margin-left: 500px;
	position: relative;
}
.top_activity h3:before{
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	background-color: #fff;
	left: 0;
	top: 42px;
}
.top_activity h3:after{
	content: "";
	position: absolute;
	width: 126px;
    height: 45px;
    background-color: #fff;
    right: -1px;
    bottom: -1px;
}
.top_activity p{
	width: 500px;
	font-size: 1.2rem;
	text-align: left;
}
.top_activity .image{
	width: 386px;
    height: 433px;
	background-image: url(../img/activity1.jpg);
	background-size: 100%;
	background-position: center;
	position: absolute;
	top: 5px;
	left: 0;
	z-index: -1;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
}
.top_activity .cta{
	display: inline-block;
	padding: 10px 30px 10px 0;
	position: absolute;
	top: 373px;
	left: 500px;
	font-weight: 700;
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	background-image: url(../img/arrow2.png);
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: right center;
}
.top_activity .cta:after{
	content: "";
    position: absolute;
    width: 244px;
    height: 1px;
    background-color: #ec5502;
    top: 48%;
    left: -257px;
}
.top_activity .cta:before{
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	background-color: #ec5502;
	top: 44.5%;
	left: -258px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
}
.top_activity .image:hover{
	background-size: 105%;
}
.top_activity .image:hover + .cta{
	left: 540px;
}
.top_activity .image:hover + .cta:after{
	width: 284px;
	left: -297px;
}
.top_activity .image:hover + .cta:before{
	left: -298px;
}
.top_activity .cta:hover{
	right: ;
}
.top_activity .cta:hover + .image{
	background-size: 105%;
}
.top_activity .cta:hover:after{
	width: 284px;
	left: -297px;
}
.top_activity .cta:hover:before{
	left: -298px;
}
.activity{
	padding: 90px 0 105px;
	text-align: center;
}
.activity h2{
	font-size: 1.8rem;
	margin-bottom: 60px;
}
.activity p{
	text-align: left;
	width: 80%;
	font-size: 1.1rem;
	margin: 0 auto 5px;
}
.activity .inner > h3{
	font-size: 1.3rem;
	margin-top: 50px;
}
.table{
	margin-top: 30px;
}
.table-cl{
	width: 80%;
	margin: 0 auto 6px;
}
.table-cl .title{
	width: 25%;
	height: 50px;
	float: left;
	background-color: #0f0300;
}
.table-cl .title h3{
	font-size: 1.2rem;
	line-height: 50px;
	margin-left: 20px;
	color: #fff;
}
.table-cl .text{
	width: 75%;
	float: left;
	background-color: #eee;
	padding: 0 0 14px 0;
}
.table-cl .text p{
	width: auto;
	font-size: 1.1rem;
	margin-left: 20px;
	margin-top: 15px;
	margin-bottom: 0px;
	margin-right: 20px;
	color: #222;
}

@media only screen and (max-width: 768px) {

.top_activity {
    padding: 30px 0 80px;
}
.top_activity .image {
    width: 120%;
    height: 240px;
    top: 40px;
    right: auto;
    left: -10%;
}
.top_activity .section-title {
    position: relative;
    font-size: 1.2rem;
    text-align: center;
    margin-bottom: 40px;
    font-weight: 900;
}
.top_activity .section-title:before {
    top: -10px;
    left: 0px;
}
.top_activity h3 {
    padding: 10px 5px 10px 10px;
    color: #fff;
    font-size: 1.4rem;
    position: relative;
    left: -5.5%;
    text-align: left;
    line-height: 2rem;
    letter-spacing: 0;
    margin-top: 205px;
    margin-bottom: 26px;
    width: auto;
    display: inline-block;
    margin-left: 0px;
}
.top_activity h3:before,
.top_activity h3:after{
	display: none;
}
.top_activity p {
    width: 100%;
    font-size: 1rem;
    margin-bottom: 10px;
    text-align: left;
}
.top_activity .cta {
    top: auto;
    bottom: -57px;
    right: 0;
    font-weight: 900;
    left: auto;
}
.top_activity .cta:after {
    content: "";
    position: absolute;
    width: 185%;
    height: 1px;
    background-color: #ec5502;
    top: 48%;
    left: -196%;
}
.top_activity .cta:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #ec5502;
    top: 42%;
    left: -197%;
}
.top_activity .cta:hover {
    top: auto;
    bottom: -57px;
    right: 0;
    font-weight: 900;
    left: auto;
}
.top_activity .cta:hover:after {
    content: "";
    position: absolute;
    width: 185%;
    height: 1px;
    background-color: #ec5502;
    top: 48%;
    left: -196%;
}
.top_activity .cta:hover:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    background-color: #ec5502;
    top: 42%;
    left: -197%;
}

.activity {
    padding: 60px 0 60px;
}
.activity h2 {
    font-size: 1.3rem;
    line-height: 2rem;
    margin-bottom: 30px;
}
.activity p {
    text-align: left;
    width: 100%;
}
.table-cl {
    width: 100%;
}
.table-cl .title {
    width: 100%;
    height: 50px;
    float: none;
}
.table-cl .text {
    width: 100%;
    float: none;
    background-color: #eee;
    padding: 0 0 14px 0;
}
.table-cl .text p {
    width: auto;
    font-size: 1.1rem;
    margin-left: 20px;
    margin-top: auto;
    padding-top: 15px;
}

}


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

application

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

.top_application{
	padding: 120px 0 100px;
	background-image: url(../img/application_bg.jpg);
	background-size: cover;
	background-position: right top;
	text-align: center;
}
.top_application .section-title{
	position: relative;
	font-size: 1.2rem;
	margin: 0 auto 60px;
	text-align: center;
	display: block;
}
.top_application .section-title:before{
	content: "";
	position: absolute;
	top: -55px;
    left: 0px;
    right: 0;
    margin: auto;
	width: 30px;
	height: 38px;
	background-image: url(../img/icon4.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
}
.top_application p{
	color: #fff;
	font-size: 1.2rem;
}
.top_application .cta{
	display: inline-block;
	padding: 10px 30px 10px 0;
	font-weight: 700;
	margin-top: 60px;
	margin-left: 20px;
	background-image: url(../img/arrow2.png);
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: right center;
}
.top_application .cta:hover{
	padding: 10px 40px 10px 0;
}


.application{
	padding: 10px 0 105px;
	position: relative;
	text-align: left;
}
.application h2{
	font-size: 1.8rem;
	margin-bottom: 40px;
	margin-top: 80px;
	padding-left: 12px;
	border-left: 2px solid #ec5502;
}
.application .box{
	background-color: #f5f5f5;
	padding: 40px 40px;
}
.application .box p{
	margin-bottom: 10px;
	font-size: 1.1rem;
}
.application .box p span{
	color: #ec5502;
}
.application .box h3{
	margin-top: 30px;
	margin-bottom: 10px;
	font-size: 1.25rem;
	line-height: 1.6rem;
}
.application .box h4{
	font-size: 1.25rem;
	margin-bottom: 10px;
	margin-top: 30px;
}
.application .point-box{
	border: 5px solid #ec5502;
	padding: 5px 25px 25px;
	margin-top: 30px;
}
.application .box h5{
	margin-bottom: 10px;
	margin-left: 5px;
}
.application .point-box p{
	margin-left: 20px;
}
.application .no-point p{
	margin-left: 0px;
}
.application table{
	margin-bottom: 20px;
}
.application table td{
	padding: 10px;
	line-height: 1.5rem;
	vertical-align: middle;
	border: 1px solid #222;
	text-align: center;
}
.application table td span{
	font-size: .9rem;
}

@media only screen and (max-width: 768px) {

.top_application {
    padding: 85px 0 30px;
    background-image: url(../img/application_bg.jpg);
    background-size: cover;
    background-position: center;
    text-align: center;
}
.top_application .section-title {
    position: relative;
    font-size: 1.2rem;
    margin: 0 auto 30px;
    font-weight: 900;
    text-align: center;
    display: block;
}
.top_application .section-title:before {
    top: -50px;
}
.top_application p {
    color: #fff;
    font-size: 1rem;
    letter-spacing: .04rem;
    text-align: left;
}
.top_application .cta {
    margin-top: 30px;
}

.application {
    padding: 0px 0 60px;
}
.application h2 {
    font-size: 1.8rem;
    margin-bottom: 20px;
    margin-top: 60px;
}
.application .box {
    background-color: #f5f5f5;
    padding: 20px 20px;
}
.application .point-box {
    border: 5px solid #ec5502;
    padding: 5px 10px 20px;
    margin-top: 30px;
}
.application .point-box p {
    margin-left: 12px;
}

}


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

news

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

.top_news{
	padding: 120px 0;
	background-image: url(../img/news_bg.jpg);
	background-size: cover;
	background-position: center;
	text-align: center;
}
.top_news p{
	color: #fff;
	font-size: 1.2rem;
}
.top_news p span{
	display: block;
	margin-bottom: 6px;
	opacity: 0.7;
	font-size: 1rem;
}

@media only screen and (max-width: 768px) {

.top_news {
    padding: 80px 0;
}
.top_news p span{
	display: block;
	margin-bottom: 1px;
}

}


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

footer

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

footer{
	padding: 60px 0 40px;
	background-color: #111;
	text-align: center;
}
footer .f-nav1{
	float: left;
	margin-bottom: 40px;
}
footer .f-nav2{
	float: right;
	position: relative;
	top: -10px;
	margin-bottom: 40px;
}
footer ul li{
	float: left;
}
footer .f-nav1 li{
	margin-right: 20px;
}
footer .f-nav1 li a{
	color: #fff;
	font-weight: 700;
}
footer .f-nav1 li a:hover{
	color: #ec5502;
}
footer .f-nav2 li{
	margin-left: 30px;
}
footer .f-nav2 li img{
	width: 30px;
	height: auto;
}
footer .f-nav2 li:nth-of-type(4) img{
	width: 26px;
	height: auto;
}
footer p{
	color: #fff;
}

@media only screen and (max-width: 768px) {

footer{
	padding: 50px 0 20px;
}
footer ul li{
	float: none;
	text-align: left;
}
footer ul.sp{
	padding-left: 5%;
	margin-bottom: 30px;
}
footer ul.sp a{
	color: #fff;
    font-size: 1.2rem;
    font-weight: 700;
    padding-left: 36px;
    padding-bottom: 25px;
    padding-top: 4px;
}
footer ul.sp a span{
	font-size: 1rem;
	padding-left: 10px;
	display: inline-block;
	letter-spacing: .01rem;
}
footer ul.sp li:nth-of-type(1) a{
	background-image: url(../img/icon1_w.png);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: top left;
}
footer ul.sp li:nth-of-type(2) a{
	background-image: url(../img/icon2_w.png);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: top left;
}
footer ul.sp li:nth-of-type(3) a{
	background-image: url(../img/icon3_w.png);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: top left;
}
footer ul.sp li:nth-of-type(4) a{
	background-image: url(../img/icon4_w.png);
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: top left;
}
footer p{
	text-align: left;
	padding-left: 10%;
}

}


