@charset "UTF-8";

/* about
---------------------------------------------------------------------------*/

/* .slider-about
---------------------------------------------------------------------------*/
.slider-about {
	margin-bottom: 140px;
	padding: 0 45px;
	opacity: 0;
}

.slider-about .slick-list {
/* 	background-color: #121212; */
}

.slider-about .inner {
	opacity: 1;
}

.slider-about .inner-s {
	display: -webkit-box !important;
	display: flex !important;
	flex-wrap: wrap;
}

.slider-about.active .inner-s {
	transition: .8s cubic-bezier(0.77, 0, 0.175, 1) 0s;
/* 	transform: scale(1.1); */
	opacity: 0;
}

.slider-about.active .inner.slick-current .inner-s {
	transition: 0s linear 0s;
	transform: scale(1);
	opacity: 1;
}

.slider-about.active .inner-s img {
	opacity: 0;
}

.slider-about.active .inner-s div:nth-of-type(1) img,
.slider-about.active .inner-s div:nth-of-type(2) img,
.slider-about.active .inner-s div:nth-of-type(3) img,
.slider-about.active .inner-s div:nth-of-type(4) img {
	transition: 1s cubic-bezier(0.25, 0.46, 0.45, 0.94) .8s;
}

.slider-about.active .inner-s div:nth-of-type(5) img,
.slider-about.active .inner-s div:nth-of-type(6) img,
.slider-about.active .inner-s div:nth-of-type(7) img,
.slider-about.active .inner-s div:nth-of-type(8) img {
	transition: 0s linear 2s;
}

.slider-about.active .inner.slick-current .inner-s img {
	opacity: 1;
}

.slider-about .inner-s div {
	width: 50%;
	z-index: 2;
}

.slider-about.active .inner-s div:nth-of-type(1) { opacity: 1; transition: 0s linear 7s; }
.slider-about.active .inner-s div:nth-of-type(2) { opacity: 1; transition: 0s linear 7s; }
.slider-about.active .inner-s div:nth-of-type(3) { opacity: 1; transition: 0s linear 7s; }
.slider-about.active .inner-s div:nth-of-type(4) { opacity: 1; transition: 0s linear 7s; }

.slider-about.active .slick-current .inner-s div:nth-of-type(1),
.slider-about.active .slick-current .inner-s div:nth-of-type(2),
.slider-about.active .slick-current .inner-s div:nth-of-type(3),
.slider-about.active .slick-current .inner-s div:nth-of-type(4) {
	opacity: 0;
}

.slider-about.active .slick-current .inner-s div:nth-of-type(1) { opacity: 0; transition: .8s cubic-bezier(0.215, 0.61, 0.355, 1) 4s; }
.slider-about.active .slick-current .inner-s div:nth-of-type(2) { opacity: 0; transition: .8s cubic-bezier(0.215, 0.61, 0.355, 1) 5s; }
.slider-about.active .slick-current .inner-s div:nth-of-type(3) { opacity: 0; transition: .8s cubic-bezier(0.215, 0.61, 0.355, 1) 6s; }
.slider-about.active .slick-current .inner-s div:nth-of-type(4) { opacity: 0; transition: .8s cubic-bezier(0.215, 0.61, 0.355, 1) 7s; }

.slider-about .inner-s div:nth-of-type(5),
.slider-about .inner-s div:nth-of-type(6),
.slider-about .inner-s div:nth-of-type(7),
.slider-about .inner-s div:nth-of-type(8) {
	position: absolute;
	z-index: 1;
}

.slider-about .inner-s div:nth-of-type(5) { top: 0; left: 0; }
.slider-about .inner-s div:nth-of-type(6) { top: 0; right: 0; }
.slider-about .inner-s div:nth-of-type(7) { bottom: 0; left: 0; }
.slider-about .inner-s div:nth-of-type(8) { bottom: 0; right: 0; }

.slider-about .inner-s div img {
	display: block;
	width: 100%;
	height: auto;
}


/* .sec-message
---------------------------------------------------------------------------*/
.sec-message {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1060px;
	margin-bottom: 180px;
	padding-right: 47%;
}

.sec-message h1 {
	position: absolute;
	top: 130px;
	left: -154px;
	font-size: 26px;
	letter-spacing: 0.15em;
	white-space: nowrap;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-feature-settings: 'palt' 0;
	opacity: 0;
}

.sec-message .inner {
	position: relative;
	opacity: 0;
	-webkit-backface-visibility: hidden;
}

.sec-message h2 {
	margin-bottom: 52px;
}

.sec-message h2 strong {
	display: block;
	margin: 21px 0 0 -2px;
	font-size: 30px;
	letter-spacing: 0.14em;
}

.sec-message p {
	margin-bottom: 22px;
	color: #555555;
	text-align: justify;
	line-height: 2.2;
	letter-spacing: 0.06em;
}

.sec-message .profile {
	position: absolute;
	bottom: 2px;
	right: 6.5%;
	width: 294px;
}

.sec-message .profile-inner {
	transform-origin: center top;
	opacity: 0;
}

.sec-message .profile .img {
	position: relative;
}

.sec-message .profile figure {
	margin-bottom: 28px;
}

.sec-message .profile .sns {
	position: absolute;
	bottom: -9px;
	right: 0;
}

.sec-message .profile .sns a {
	display: block;
	padding: 9px;
}

.sec-message .profile h3 {
	margin-bottom: 30px;
}

.sec-message .profile h3 b {
	display: block;
	margin-bottom: 14px;
	font-size: 13px;
	letter-spacing: 0.13em;
}

.sec-message .profile h3 strong {
	display: inline-block;
	margin-right: 10px;
	font-size: 19px;
	letter-spacing: 0.15em;
}

.sec-message .profile h3 em {
	display: inline-block;
	color: #AAAAAA;
	font-size: 10px;
	letter-spacing: 0.08em;
	transform-origin: left bottom;
	transform: scale(0.9);
}

.sec-message .profile p {
	font-size: 11px;
	line-height: 1.9;
}

/* .sec-message .mark
------------------------------------*/
.sec-message .mark {
	position: absolute;
	opacity: 0;
}

.sec-message .mark img {
	width: 100%;
	height: auto;
	opacity: 0.1;
}

.sec-message .mark1 { bottom: -30px; right: -52px; width: 60px; }
.sec-message .mark2 { top: -155px; left: 75px; width: 48px; z-index: -1; }
.sec-message .mark3 { bottom: 55px; left: -190px; width: 66px; }
.sec-message .mark4 { top: -70px; right: 32.8%; width: 60px; }
.sec-message .mark5 { top: 15px; right: 6.5%; width: 55px; }


/* .sec-vision
---------------------------------------------------------------------------*/
.sec-vision {
	clear: both;
	width: 1120px;
	margin: 0 auto;
}

.sec-vision p,
.vision .inner1 dd {
	color: #555555;
}

/* .vision
------------------------------------*/
.vision {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-bottom: 160px;
}

.vision .inner1 {
	position: relative;
	width: 678px;
}

.vision .inner1 h2 {
	position: absolute;
	top: -60px;
	left: 0;
}

.vision .inner1 figure {
	margin-left: -10px;
}

.vision .inner1 dl {
	position: absolute;
	top: 828px;
	left: 80px;
}

.vision .inner1 dl > div {
	margin-bottom: 27px;
}

.vision .inner1 dl > div:last-of-type {
	margin-bottom: 0;
}

.vision .inner1 dt {
	margin-bottom: 14px;
	font-size: 17px;
	letter-spacing: 0.06em;
}

.vision .inner1 dt a {
	display: inline-block;
	border-bottom: 1px solid #000000;
}

.vision .inner1 dd {
	font-size: 13px;
	letter-spacing: 0.06em;
}

/* .vision .inner2
------------------------------------*/
.vision .inner2 {
	width: 400px;
	margin-top: 40px;
}

.vision .inner2 figure {
	margin-bottom: 70px;
}

.vision .inner2 h3 {
	margin-bottom: 15px;
	font-size: 21px;
	line-height: 1.7;
	letter-spacing: 0.08em;
}

.vision .inner2 p {
	margin-bottom: 12px;
	text-align: justify;
	line-height: 1.95;
}

/* .vision-sub
------------------------------------*/
.vision-sub {
	position: relative;
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	margin-bottom: 130px;
	padding-left: 155px;
}

.vision-sub h3 {
	position: absolute;
	top: -20px;
	left: 0;
}

.vision-sub h4 {
	font-size: 22px;
	line-height: 1.5;
	letter-spacing: 0.06em;
}

.vision-sub h4 strong {
	display: block;
	margin-bottom: 13px;
	line-height: 1.6;
}

.vision-sub h4 strong:last-of-type {
	margin-bottom: 0;
}

.vision-sub .txt p {
	margin-bottom: 10px;
	text-align: justify;
	line-height: 2;
}

.vision-sub dl.wide > div {
	display: -webkit-box;
	display: flex;
}

.vision-sub dl.wide > div {
	margin-bottom: 45px;
	padding-right: 60px;
}

.vision-sub dl.wide > div:last-of-type {
	margin-bottom: 0;
}

.vision-sub dl.wide dt {
	width: 376px;
	min-width: 376px;
}

.vision-sub dt {
	position: relative;
	box-sizing: border-box;
	padding-left: 50px;
	font-size: 20px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.vision-sub dt i {
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
}

.vision-sub dt i:after {
	display: block;
	content: '';
	position: absolute;
	top: 16px;
	left: 24px;
	background-color: #000000;
	width: 18px;
	height: 1px;
}

.vision-sub dt span {
	display: block;
	margin: 8px 0 0 -50px;
	font-size: 16px;
}

.vision-sub dd p {
	text-align: justify;
	line-height: 2;
}

/* .vision2
------------------------------------*/
.vision2 .txt {
	margin-right: 20px;
}

/* .vision3
------------------------------------*/
.vision3 dl {
	order: 1;
}

.vision3 dt {
	margin-bottom: 16px;
	letter-spacing: 0.06em;
}

.vision3 dt:last-of-type {
	margin-bottom: 0;
}

.vision3 figure {
	order: 2;
	margin-right: 46px;
}

/* .vision4
------------------------------------*/
.vision4 h3 {
	top: -25px;
}

.vision4 .txt {
	order: 1;
	margin-right: 80px;
}

.vision4 .txt p {
	margin-bottom: 17px;
	font-size: 14px;
	line-height: 2.1;
}

.vision4 figure {
	order: 2;
	margin: -10px -5px 0 0;
}


/* .vision5
------------------------------------*/
.vision5 h3 {
	top: -25px;
}


/* media query
---------------------------------------------------------------------------*/
@media (max-width: 1439px) {
	body#about .contents {
		padding-right: 0;
	}
	.sec-message .profile {
		right: 6.5%;
	}
}