@charset "UTF-8";
/* CSS Document */

/**********************************
			header
**********************************/
#it_header {
	width: 100%;
	height: 100vh;
	margin: 0px 0px;
	background-image: url(../../img/common/it/header.jpg);
	background-size: cover;
	background-position: 50% 50%;
	position: relative;
	overflow: hidden;
}
#hadashi_header {
	width: 100%;
	height: 100vh;
	margin: 0px 0px;
	background-image: url(../../img/common/hadashi/header.jpg);
	background-size: cover;
	background-position: 50% 50%;
	position: relative;
	overflow: hidden;
}
#consulting_header {
	width: 100%;
	height: 100vh;
	margin: 0px 0px;
	background: #f7b63b url("../../img/common/consulting/header.jpg");
	background-size: cover;
	background-position: 50% 50%;
	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
}
#contact_header {
	width: 100%;
	height: 350px;
	margin: 0px 0px;
	background: url("../../img/common/AdobeStock_141510816.jpeg");
	background-size: cover;
	background-position: 50% 20%;
	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
}
.sub_header_inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
	color: #FFFFFF;
}
#contact_header .sub_header_inner {
	color: #000000;
}
.sub_header_main_ttl {
	font-size: 2.8rem;
	margin-bottom: 20px;
	font-weight: 700;
}
.sub_header_main_ttl_sub {
	font-size: 1.2rem;
	font-family: Montserrat;	
	letter-spacing: 2px;
	font-weight: 300;
}
.sub_header_main_ttl_sha {
	text-shadow: 0px 0px 20px rgba(0,0,0,0.4);
}

#contact_header .sub_header_main_ttl {
	margin-top: 65px;
}
/**********************************
		hadashi_content
**********************************/
#hadashi_content {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}
#hadashi_content::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #F5F5F5;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform 1s;
	-webkit-transform-origin: right top;
	-webkit-transform: scale(0, 1);
	-webkit-transition: transform 1s;
}
#hadashi_content.active::before {
	transform-origin: left top;
	transform: scale(1, 1);
	-webkit-transform-origin: left top;
	-webkit-transform: scale(1, 1);
}
.hadashi_content_inner {
	width: 100%;
	height: auto;
	margin: 0px auto;
	padding: 80px 30px;
	position: relative;
}
.sub_top_main_ttl {
	text-align: center;
	position: relative;
	z-index: 2;
	font-size: 1.2rem;
	margin-bottom: 10px;
	font-family: Montserrat;
	opacity: 0;
	transition: 0.5s;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0);
    transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0)
}
.sub_top_main_ttl.active {
	opacity: 1;
	transition: 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transition: all 3s cubic-bezier(.19, 1, .22, 1)
}
.sub_main_ttl {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 10px;
	font-family: Montserrat;
	opacity: 0;
	transition: 0.5s;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0);
    transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0)
}
.sub_main_ttl.active {
	opacity: 1;
	transition: 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transition: all 3s cubic-bezier(.19, 1, .22, 1)
}
.sub_cv_inner {
	width: 100%;
	max-width: 1280px;
	height: auto;
	margin: 0px auto;
	position: relative;
	font-size: 0;
	display: table;
}
.sub_cv_inner_left {
	display: table-cell;
	width: 50%;
	opacity: 0;
	height: auto;
	background: url(../../img/common/hadashi/main_visual.jpg);
	background-size: cover;
	background-position: 50% 50%;
	position: relative;
	transition: 1s;
	transform: translate(-20%,0);
}
.sub_cv_inner_left.active {
	width: 50%;
	transition: 1s;
	opacity: 1;
	transform: translate(0%,0);
}
.sub_cv_inner_right {
	display: table-cell;
	top: 0px;
	right: 0;
	width: 50%;
	height: auto;
	position: relative;
	padding: 60px;
}
.sub_cv_inner_right::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #FFFFFF;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform 1s;
}
.sub_cv_inner_right.active::before {
	transform-origin: left top;
	transform: scale(1, 1);
	transition: transform 1s;
}
.sub_cv_inner2 {
	width: 100%;
	max-width: 1280px;
	height: auto;
	margin: 0px auto;
	position: relative;
	font-size: 0;
	display: table;
	margin-top: 60px;
	margin-bottom: 60px;
}
.sub_cv_inner_right2 {
	display: table-cell;
	width: 50%;
	opacity: 0;
	height: auto;
	background: url(../../img/common/hadashi/main_visual2.jpg);
	background-size: cover;
	background-position: 50% 50%;
	position: relative;
	transition: 1s;
	transform: translate(20%,0);
}
.main_visual3 {
	background: url(../../img/common/hadashi/main_visual3.jpg);
	background-size: cover;
	background-position: 50% 50%;
}
.main_visual4 {
	background: url(../../img/common/hadashi/main_visual4.jpg);
	background-size: cover;
	background-position: 50% 50%;
}
.main_visual5 {
	background: url(../../img/common/hadashi/main_visual5.jpg);
	background-size: cover;
	background-position: 50% 50%;
}

.sub_cv_inner_right2.active {
	width: 50%;
	transition: 1s;
	opacity: 1;
	transform: translate(0%,0);
}
.sub_cv_inner_left2 {
	display: table-cell;
	top: 0px;
	right: 0;
	width: 50%;
	height: auto;
	position: relative;
	padding: 60px;
}
.sub_cv_inner_left2::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #FFFFFF;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform 1s;
}
.sub_cv_inner_left2.active::before {
	transform-origin: right top;
	transform: scale(1, 1);
	transition: transform 1s;
}


.sub_main_cv_ttl {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 30px;
	line-height: 150%;
	font-weight: 700;
	opacity: 0;
	transition: 0.5s;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0);
    transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0)
}
.sub_main_cv_ttl.active {
	opacity: 1;
	transition: 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transition: all 3s cubic-bezier(.19, 1, .22, 1)
}
.sub_main_cv {
	text-align: center;
	font-size: 1rem;
	font-weight: 300;
	opacity: 0;
	transition: 0.5s;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0);
    transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0)
}
.sub_main_cv.active {
	opacity: 1;
	transition: 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transition: all 3s cubic-bezier(.19, 1, .22, 1)

}

.model_ttl {
	width: 100%;
	height: auto;
	background: #F5F5F5;
	padding: 10px;
	font-size: 0.9rem;
	text-align: center;
	font-weight: 700;
	margin-top: 30px;
}
ul.hadashi_list {
	font-size: 0;
	max-width: 1100px;
	height: auto;
	margin: 0px auto;
	margin-top: 10px;
	text-align: center;
}
ul.hadashi_list li {
	width: 25%;
	display: inline-block;
	font-size: 1rem;
	text-align: center;
	opacity: 0;
	transition: 0.5s;
	transform: translate(0px,50px);
	vertical-align: top;
}
ul.hadashi_list li.active {
	opacity: 1;
	transition: 0.5s;
	transform: translate(0px,0px);
}
ul.hadashi_list li:nth-child(2).active {
	transition-delay: .2s;
}
ul.hadashi_list li:nth-child(3).active {
	transition-delay: .4s;
}
ul.hadashi_list li:nth-child(4).active {
	transition-delay: .6s;
}
ul.hadashi_list li .hadashi_type_image {
	width: 100%;
	height: auto;
}
ul.hadashi_list li .hadashi_type_image img {
	width: 100%;
}
ul.hadashi_list li .hadashi_type_ttl {
	margin-top: 10px;
	font-weight: 300;
	font-size: 0.9rem;
	font-family: Montserrat;
}
.buy_btn a {
	display: block;
	width: 80%;
	max-width: 250px;
	height: auto;
	margin: 0px auto;
	margin-top: 20px;
	padding: 6px;
	font-size: 0.9rem;
	font-weight: 300;
	color: #000000;
	border: 2px solid #222222;
	text-align: center;
	position: relative;
}
.buy_btn a:hover {
	color: #FFFFFF;
}
.buy_btn a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: '';
  background: #222222;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.buy_btn a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

/**********************************
		hadashi_cv2
**********************************/
#hadashi_cv2 {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}
.hadashi_cv2_inner {
	width: 100%;
	height: auto;
	margin: 0px auto;
	padding: 80px 30px;
	position: relative;
}
ul.block_list {
	width: 100%;
	max-width: 1100px;
	margin: 0px auto;
	height: auto;
	font-size: 0;
	text-align: center;
}
ul.block_list li {
	display: inline-block;
	width: 32%;
	margin-right: 2%;
	margin-bottom: 2%;
	vertical-align: top;
}
ul.block_list li:nth-child(3n) {
	margin-right: 0;
}
ul.block_list li:last-child {
	margin-right: 0;
}
ul.block_list li:nth-last-child(-n+3) {
	margin-bottom: 0;
}
ul.block_list li img {
	width: 100%;
	position: relative;
}
button.focus_play {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: 100%;
	background: none;
	border: none;
}
.blockarea1,.blockarea2,.blockarea3,.blockarea4,.blockarea5,.blockarea6 {
	display: none;
}
.blockarea {
	position:fixed;
	z-index: 9999;
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background: rgba(0,0,0,0.25);
}
.blockarea iframe {
	position: absolute;
    width: 560px;
    height: 315px;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.block_ttl {
	font-size: 1rem;
	background: #EEEEEE;
	padding: 10px;
}
ul.hadashi_type {
	font-size: 0;
	max-width: 800px;
	height: auto;
	margin: 0px auto;
	margin-top: 60px;
}
ul.hadashi_type li {
	width: 25%;
	display: inline-block;
	font-size: 0.9rem;
	text-align: center;
	opacity: 0;
	transition: 0.5s;
	transform: translate(0px,50px);
	vertical-align: top;
	font-family: Montserrat;
}
ul.hadashi_type li.active {
	opacity: 1;
	transition: 0.5s;
	transform: translate(0px,0px);
}
ul.hadashi_type li:nth-child(2).active {
	transition-delay: .2s;
}
ul.hadashi_type li:nth-child(3).active {
	transition-delay: .4s;
}
ul.hadashi_type li:nth-child(4).active {
	transition-delay: .6s;
}
ul.hadashi_type li .hadashi_type_image {
	width: 100%;
	height: auto;
}
ul.hadashi_type li .hadashi_type_image img {
	width: 100%;
}
ul.hadashi_type li .hadashi_type_ttl {
	margin-top: 20px;
	font-weight: 300;
}

.shoping_btn a {
	display: block;
	width: 300px;
	height: auto;
	margin: 0px auto;
	margin-top: 30px;
	padding: 20px;
	color: #222222;
	border: 3px solid #dadcdf;
	text-align: center;
	position: relative;
	opacity: 0;
	transition: 0.5s;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0);
    transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0)
}
.shoping_btn a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #dadcdf;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.shoping_btn a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.shoping_btn a.active {
	opacity: 1;
	transition: 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transition: all 3s cubic-bezier(.19, 1, .22, 1)
}
.shoping_btn a:after {
	position: absolute;
	content: '\f105';
	font-size: 0.85rem;
	font-weight: bold;
	top: 50%;
	right: 30px;
	transform: translate(0%,-50%);
	font-family: 'Font Awesome 5 Free';	
	color: #aab9b9;
}

/**********************************
			it_content
**********************************/
#it_content {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}
.it_content_inner {
	width: 100%;
	height: auto;
	margin: 0px auto;
	padding: 80px 30px;
	position: relative;
}
.school_banner_top {
	margin-top: 60px;
}
.school_banner_top img {
	display: block;
	margin: 0px auto;
	margin-bottom: 20px;
	width: 100%;
	max-width: 600px;
}
.school_banner_top img:hover {
	opacity: 0.5;
	transition: .5s;
}
.it_detail_top a {
	display: block;
	width: 100%;
	max-width: 200px;
	height: auto;
	margin: 0px auto;
	margin-bottom: 60px;
	padding: 10px;
	font-size: 0.9rem;
	font-weight: 300;
	color: #000000;
	border: 3px solid #222222;
	text-align: center;
	position: relative;
}
.it_detail_top a:hover {
	color: #FFFFFF;
}
.it_detail_top a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: '';
  background: #222222;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.it_detail_top a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.it_detail_top a:after {
	position: absolute;
	content: '\f105';
	font-size: 0.85rem;
	font-weight: bold;
	top: 50%;
	right: 30px;
	transform: translate(0%,-50%);
	font-family: 'Font Awesome 5 Free';	
	color: #222222;
}
ul.it_list {
	width: 100%;
	max-width: 1100px;
	margin: 0px auto;
	font-size: 0;
	text-align: center;
}
ul.it_list li {
	display: inline-block;
	width: auto;
	margin-right: 5%;
	vertical-align: top;
}
ul.it_list li:last-child {
	margin-right: 0;
}
ul.it_list li img {
	width: auto;
	height: 200px;
	transition: .5s;
}
ul.it_list li img:hover {
	opacity: 0.5;
	transition: .5s;
}
.it_detail a {
	display: block;
	width: 100%;
	max-width: 200px;
	height: auto;
	margin-top: 20px;
	padding: 10px;
	font-size: 0.9rem;
	font-weight: 300;
	color: #000000;
	border: 3px solid #222222;
	text-align: center;
	position: relative;
}
.it_detail a:hover {
	color: #FFFFFF;
}
.it_detail a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: '';
  background: #222222;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.it_detail a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.it_detail a:after {
	position: absolute;
	content: '\f105';
	font-size: 0.85rem;
	font-weight: bold;
	top: 50%;
	right: 30px;
	transform: translate(0%,-50%);
	font-family: 'Font Awesome 5 Free';	
	color: #222222;
}
/**********************************
		consulting_content
**********************************/
#consulting_content {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}
#consulting_content::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #f5f5f5;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform 1s;
	-webkit-transform-origin: right top;
	-webkit-transform: scale(0, 1);
	-webkit-transition: transform 1s;
}
#consulting_content.active::before {
	transform-origin: left top;
	transform: scale(1, 1);
	-webkit-transform-origin: left top;
	-webkit-transform: scale(1, 1);
}
.consulting_content_inner {
	width: 100%;
	height: auto;
	margin: 0px auto;
	padding: 80px 30px;
	position: relative;
}
.consulting_top_cv_inner {
	width: 100%;
	max-width: 1100px;
	height: auto;
	margin: 0px auto;
	position: relative;
	font-size: 0;
	display: table;
	padding: 0px 30px 80px 30px;
}
.consulting_main_cv {
	text-align: center;
	font-size: 1.2rem;
	opacity: 0;
	transition: 0.5s;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0);
    transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0)
}
.consulting_main_cv.active {
	opacity: 1;
	transition: 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transition: all 3s cubic-bezier(.19, 1, .22, 1)
}
ul.consulting_main_cv_list {
	margin-top: 65px;
	margin-bottom: 65px;
	display: table;
	width: 100%;
	font-size: 1.2rem;
}
ul.consulting_main_cv_list li {
	margin-bottom: 5%;
	display: inline-block;
	width: 47.5%;
	margin-right: 5%;
	color: #000000;
	background: #BBBBBB;
	padding: 50px;
	vertical-align: top;
	text-align: left;
	font-weight: 700;
}
ul.consulting_main_cv_list li:nth-child(1) {
	background: #f8b73b;
}
ul.consulting_main_cv_list li:nth-child(2) {
	background: #a9cf52;
}
ul.consulting_main_cv_list li:nth-child(3) {
	background: #1eb9ee;
}
ul.consulting_main_cv_list li:nth-child(2n) {
	margin-right: 0;
}
ul.consulting_main_cv_list li:nth-last-child(-n+2) {
	margin-bottom: 0;
}
ul.consulting_main_cv_list li:last-child {
	margin-bottom: 0;
}
.consulting_cv_inner {
	width: 100%;
	max-width: 1280px;
	height: auto;
	margin: 0px auto;
	position: relative;
	font-size: 0;
	display: table;
}
.consulting_cv_inner_right {
	display: table-cell;
	width: 50%;
	opacity: 0;
	height: auto;
	background: url("../../img/common/consulting/main_visual.jpg");
	background-size: cover;
	background-position: 50% 50%;
	position: relative;
	transition: 1s;
	transform: translate(-20%,0);
}
.consulting_cv_inner_right.active {
	width: 50%;
	transition: 1s;
	opacity: 1;
	transform: translate(0%,0);
}
.consulting_cv_inner_left {
	display: table-cell;
	top: 0px;
	right: 0;
	width: 50%;
	height: auto;
	position: relative;
	padding: 60px;
}
.consulting_cv_inner_left .sub_main_cv {
	text-align: left;
}
.consulting_cv_inner_left::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #FFFFFF;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform 1s;
}
.consulting_cv_inner_left.active::before {
	transform-origin: left top;
	transform: scale(1, 1);
	transition: transform 1s;
}
.consulting_vrio {
	width: 100%;
	max-width: 1100px;
	height: auto;
	margin: 0px auto;
	position: relative;
}
img.consulting_image {
	width: 100%;
	max-width: 740px;
	margin: 0px auto;
	display: block;
	margin-bottom: 65px;
	opacity: 0;
	transition: 0.5s;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0);
    transform: scale3d(1.3, 1.3, 1) rotate3d(1, -3, -1, -.1turn) translate3d(-50px, 100px, 0)
}
img.consulting_image.active {
	opacity: 1;
	transition: 0.5s;
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transform: scale3d(1, 1, 1) rotate3d(0, 0, 0, 0) translate3d(0, 0, 0);
    transition: all 3s cubic-bezier(.19, 1, .22, 1)
}
ul.vrio_list {
	display: table;
	width: 100%;
	font-size: 1rem;
	padding-left: 80px;
	position: relative;
}
ul.vrio_list:after {
	content: '';
	position: absolute;
	width: 1px;
	height: 0%;
	top: 0;
	left: 0;
	background: #888888;
	transition: 3s;
	transition-delay: 1s;
}
ul.vrio_list.active:after {
	content: '';
	position: absolute;
	width: 1px;
	height: 100%;
	top: 0;
	left: 0;
	background: #888888;
}
ul.vrio_list li {
	display: block;
	width: 0%;
	margin-bottom: 5%;
	background: #FFFFFF;
	padding: 30px 60px;
	vertical-align: top;
	position: relative;
	opacity: 0;
	transition: 1s;
}
ul.vrio_list li.active {
	width: 100%;
	transition: 1s;
	opacity: 1;
}
ul.vrio_list li .vrio_list_inner {
	width: 100%;
	transition: 1s;
	opacity: 0;	
}
ul.vrio_list li.active .vrio_list_inner {
	width: 100%;
	transition: 1s;
	opacity: 1;	
	transition-delay: 0.6s;
}
ul.vrio_list li:after {
	content: '';
	position: absolute;
	width: 100%;
	height: 1px;
	top: 50%;
	left: -80px;
	z-index: -1;
	background: #888888;
	opacity: 0;
	transition: 1s;
}
ul.vrio_list li.active:after {
	opacity: 1;
	content: '';
	position: absolute;
	width: 100%;
	height: 1px;
	top: 50%;
	left: -80px;
	z-index: -1;
	background: #888888;
	transition: 1s;
	transition-delay: 1s;
}
.consulting_vrio_number {
	position: absolute;
	color: #222222;
	font-family: Montserrat;
	font-weight: 300;
	font-size: 1.2rem;
	top: 50%;
	left: -80px;
	transform: translate(-50%,-50%);
	width: 50px;
	height: 50px;
	text-align: center;
	line-height: 50px;
	border-radius: 50%;
	border: 1px solid #888888;
	background: #F5F5F5;
	z-index: 10;
	transition: 1s;
	opacity: 1;
}
ul.vrio_list li:last-child {
	margin-bottom: 0;
}
.consulting_vrio_big {
	font-size: 2em;
}

/**********************************
		contact
**********************************/
#contact {
	width: 100%;
	height: auto;
	position: relative;
}
.contact_inner {
	width: 100%;
	height: auto;
	margin: 0px auto;
	padding: 80px 30px;
	position: relative;
}
.cotanct_ttl {
	font-size: 2rem;
	text-align: center;
	font-weight: 700;
	margin-bottom: 60px;
}
table.formTable {
    width: 100%;
	max-width: 800px;
    margin: 0 auto;
    border-collapse: collapse;
	opacity: 0;
	transition: 0.5s;
	transform: translate(0px,50px);
}
table.formTable.active {
	opacity: 1;
	transition: 0.5s;
	transform: translate(0px,0px);
}
table.formTable th {
	width: 200px;
	padding: 25px 25px 25px 0;
	text-align: left;	
    font-size: 1rem;
	background-color: none;
	vertical-align: top;
}
table.formTable td {
	width: auto;
	padding: 10px;
	text-align: left;	
    font-size: 16px;
	position: relative;
}
table.formTable td input {
	width: 300px;
	padding: 12px;
	font-size: 1rem;
	border: none;
	border-bottom: 1px solid #DDDDDD;
	border-radius: none;
}
table.formTable td textarea {
	width: 100%;
	height: 200px;
	padding: 20px;
	font-size: 1rem;
	border: none;
	border-bottom: 1px solid #DDDDDD;
	border-radius: none;
}
table.formTable .hissu {
	display: inline-block;
	color: #c3291c;
	font-weight: lighter;
	padding: 0px 0px;
	font-size: 1rem;
	margin-left: 10px;
}
table.formTable p.ninsyo {
	margin: 10px 0px;
}
.btn_submit {
	position: relative;
	max-width: 350px;
}
.btn_submit {
	display: block;
	width: 400px;
	height: auto;
	margin: 0px auto;
	margin-top: 50px;
	padding: 30px 15px;
	transition: .5s;
	color: #000000;
	background: none;
	text-align: center;
	font-size: 1.2em;
	font-weight: 700;
	outline:none;
	border: none;
	border: 2px solid #212121;
	position: relative;
	overflow: hidden;
}
.btn_submit::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #222222;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.btn_submit:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.btn_submit:hover {
	color: #FFFFFF;
	z-index: 1;
	position: relative;
	transition: 0.5s;
}

/* 各ベンダープレフィックスが取れた標準版！！(http://caniuse.com/#search=placeholder-shown) */
:placeholder-shown {
    color: #CCCCCC;font-size: 0.9rem; }
/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
    color: #CCCCCC;font-size: 0.9rem; }
/* Firefox 18- */
:-moz-placeholder {
    color: #CCCCCC;font-size: 0.9rem; opacity: 1; }
/* Firefox 19+ */
::-moz-placeholder {
    color: #CCCCCC;font-size: 0.9rem; opacity: 1; }
/* IE 10+ */
:-ms-input-placeholder {
    color: #CCCCCC; }

.contact_detail {
	width: 100%;
	max-width: 800px;
	margin: 0px auto;
	margin-top: 60px;
	background: #F5F5F5;
	padding: 20px;
	font-size: 0.9rem;
	color: #666666;
}

/**********************************
			thanks
**********************************/
#thanks {
	width: 100%;
	height: auto;
	position: relative;
}
.thanks_inner {
	width: 100%;
	max-width: 1100px;
	height: auto;
	margin: 0px auto;
	padding: 145px 30px 80px 30px;
	position: relative;
}
.thanks_ttl {
	font-size: 2rem;
	text-align: center;
	font-weight: 700;
	margin-bottom: 60px;
}
.thanks_detail {
	width: 100%;
	max-width: 800px;
	margin: 0px auto;
	font-size: 1rem;
	text-align: center;
}

.home_btn a {
	display: block;
	width: 100%;
	max-width: 250px;
	height: auto;
	margin: 0px auto;
	margin-top: 60px;
	padding: 15px;
	font-size: 0.9rem;
	font-weight: 300;
	color: #000000;
	border: 3px solid #222222;
	text-align: center;
	position: relative;
}
.home_btn a:hover {
	color: #FFFFFF;
}
.home_btn a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: '';
  background: #222222;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.home_btn a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.home_btn a:after {
	position: absolute;
	content: '\f105';
	font-size: 0.85rem;
	font-weight: bold;
	top: 50%;
	right: 30px;
	transform: translate(0%,-50%);
	font-family: 'Font Awesome 5 Free';	
	color: #222222;
}
/**********************************
			news
**********************************/
#news {
	width: 100%;
	height: auto;
	position: relative;
}
.news_inner {
	width: 100%;
	height: auto;
	margin: 0px auto;
	padding: 145px 30px 80px 30px;
	position: relative;
}