@charset "utf-8";

.only-desktop {display:block;}
.only-mobile {display:none;}

@media (max-width: 640px) {
	.only-desktop {display:none;}
	.only-mobile {display:block;}
}

.port-st-tit {font-size:80px; line-height:1em;}
.port-st-tit2 {font-size:50px; line-height:1em;}

.port-st-1 {display:flex; justify-content:space-between; align-items:center; overflow:hidden; background:#e8e8e8; padding:150px 8% 30px; min-height:100vh;}
.port-st-1 .cnt {position:relative; flex:1 1 auto; min-width:0; width:1%; margin:0 4% 3% 0; padding-bottom:140px; z-index:2;}
.port-st-1 .cnt h2 {font-size:75px; line-height:1.067em; margin-bottom:40px;}
.port-st-1 .cnt .txt1 {font-size:26px; line-height:1.5em; letter-spacing:-.03em; margin-bottom:10px;}
.port-st-1 .cnt .txt2 {font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}
.port-st-1 .cnt .btn {position:absolute; bottom:0; left:0; display:inline-block; width:160px; text-align:center; color:#686868; font-size:15px; font-weight:500; line-height:48px; letter-spacing:-.03em; border:1px solid #bfbfbf;}
.port-st-1 .cnt .btn:hover {color:#fff; background:#242424; border-color:#242424;}
.port-st-1 .img {position:relative; width:65%; margin-right:-9%;}
.port-st-1 .icon {position:absolute; top:-40px; left:-36px; width:120px; height:120px; background:#fff; border-radius:100%; box-shadow:0 0 15px rgba(0,0,0,.2); z-index:50;}
.port-st-1 .icon img {position:absolute; top:50%; left:50%; width:55%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%);}

.port-st-2 {display:flex; background:#db1415; color:#fff;}
.port-st-2 .img {width:50%; position:relative; overflow:hidden;}
.port-st-2 .img img {position:absolute; top:50%; left:0; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover;}
.port-st-2 .cnt {width:50%; padding:95px 100px; font-size:17px; font-weight:300; line-height:1.765em; letter-spacing:-.03em;}
.port-st-2 .cnt .inner {max-width:510px;}
.port-st-2 .cnt h2 {margin-bottom:40px;}
.port-st-2 .cnt .dl-cnt {margin-top:85px; font-size:18px; line-height:1.389em;}
.port-st-2 .cnt .dl-cnt dl {margin-bottom:23px;}
.port-st-2 .cnt .dl-cnt dl:last-child {margin-bottom:0;}
.port-st-2 .cnt .dl-cnt dt {font-weight:700;}
.port-st-2 .cnt .dl-cnt a {display:inline-block; word-break:break-all;}

.port-st-4 {padding:100px 0; background:#f4f4f4;}
.port-st-4 .group {display:flex; align-items:center; padding:35px 0;}
.port-st-4 .left {width:50%; padding-right:30px;}
.port-st-4 .right {width:50%; padding-left:80px; font-size:40px; line-height:1.25em; color:#bbb;}
.port-st-4 .typo-tit {position:relative; padding-bottom:17px; margin-bottom:17px; border-bottom:1px solid #ddd;}
.port-st-4 .typo-tit h2 {font-size:30px; line-height:1.3em;}
.port-st-4 .typo-tit .lang {position:absolute; top:7px; right:0; font-size:18px; font-weight:500; line-height:1.3em;}
.port-st-4 .typo-st {display:flex; align-items:center;}
.port-st-4 .typo-st .big {width:185px; font-size:140px; line-height:1.15em;}
.port-st-4 .typo-st .small {flex:1 1 auto; min-width:0; width:1%; font-size:32px; line-height:1.5em; letter-spacing:.1em; word-break:break-all;}

.port-st-5 {padding:150px 0;}
.port-st-5 .colors {display:flex; height:180px; margin-top:45px;}
.port-st-5 .colors div {flex:1;}

.port-st-7 {display:flex;}
.port-st-7 div {width:50%;}
.port-st-7 img {width:100%;}

.port-st-8 {padding:150px 0; text-align:center;}
.port-st-8 .title {margin-bottom:50px;}
.port-st-8 .title p {font-size:22px; font-weight:700; line-height:1.3em; letter-spacing:-.03em; margin-top:15px;}
.port-st-8 .image img {border-radius:30px; box-shadow:0 0 40px rgba(0,0,0,.2);}

.port-st-9 .title {margin-bottom:55px;}
.port-st-9 .title .contain {display:flex; justify-content:space-between;}
.port-st-9 .title p {text-align:right; margin-left:40px; margin-top:4px; font-size:17px; line-height:1.765em; letter-spacing:-.03em;}
.port-st-9 .image img {width:100%;}

@media (max-width: 1400px) {
	.port-st-1 {padding:110px 6% 30px;}
	.port-st-1 .cnt {margin:0 4% 0 0; padding-bottom:170px;}

	.port-st-2 .cnt {padding:80px 50px;}
}

@media (max-width: 1024px) {
	.port-st-tit {font-size:50px;}
	.port-st-tit2 {font-size:35px;}

	.port-st-1 {padding:110px 30px 30px;}
	.port-st-1 .cnt {padding-bottom:0;}
	.port-st-1 .cnt h2 {font-size:50px;}
	.port-st-1 .cnt .txt1 {font-size:22px;}
	.port-st-1 .cnt .txt2 {font-size:16px;}
	.port-st-1 .cnt .btn {position:static; margin-top:30px;}
	.port-st-1 .icon {top:-30px; left:-30px; width:100px; height:100px;}

	.port-st-2 .cnt .dl-cnt {margin-top:80px; font-size:16px;} 

	.port-st-4 {padding:70px 0;}
	.port-st-4 .right {padding-left:40px; font-size:32px;}
	.port-st-4 .typo-tit {padding-bottom:15px; margin-bottom:15px;}
	.port-st-4 .typo-tit h2 {font-size:24px;}
	.port-st-4 .typo-tit .lang {font-size:16px;}
	.port-st-4 .typo-st .big {width:130px; font-size:100px;}
	.port-st-4 .typo-st .small {font-size:22px;}

	.port-st-5 {padding:100px 0;}
	.port-st-5 .colors {height:120px; margin-top:35px;}

	.port-st-8 {padding:100px 0;}
	.port-st-8 .title {margin-bottom:40px;}
	.port-st-8 .title p {font-size:19px;}
	.port-st-8 .image img {box-shadow:0 0 20px rgba(0,0,0,.2);}

	.port-st-9 .title {margin-bottom:40px;}
	.port-st-9 .title p {font-size:16px; width:50%;}
	.port-st-9 .title p br {display:none;}
	
}

@media (max-width: 640px) {
	.port-st-tit {font-size:40px;}
	.port-st-tit2 {font-size:25px;}

	.port-st-1 {display:block; padding:80px 15px 20px;}
	.port-st-1 .cnt {width:auto; margin:0 0 75px;}
	.port-st-1 .cnt h2 {font-size:40px; margin-bottom:20px;}
	.port-st-1 .cnt .txt1 {font-size:18px;}
	.port-st-1 .cnt .txt2 {font-size:14px;}
	.port-st-1 .cnt .btn {margin-top:25px; font-size:14px; width:130px; line-height:38px;}
	.port-st-1 .img {width:auto; margin-right:-12%; margin-left:4%;}
	.port-st-1 .icon {top:-15px; left:-15px; width:70px; height:70px;}

	.port-st-2 {display:block;}
	.port-st-2 .img {width:auto; padding-bottom:120%;}
	.port-st-2 .cnt {width:auto; padding:50px 15px; font-size:14px;}
	.port-st-2 .cnt h2 {margin-bottom:20px;}
	.port-st-2 .cnt .dl-cnt {font-size:14px; margin-top:50px;}

	.port-st-4 {padding:30px 0;}
	.port-st-4 .group {display:block; padding:30px 0;}
	.port-st-4 .left {width:auto; padding:0 0 20px;}
	.port-st-4 .right {width:auto; padding-left:0; font-size:22px;}
	.port-st-4 .typo-tit {padding-bottom:12px; margin-bottom:12px;}
	.port-st-4 .typo-tit h2 {font-size:18px;}
	.port-st-4 .typo-tit .lang {top:3px; font-size:13px;}
	.port-st-4 .typo-st .big {width:90px; font-size:70px;}
	.port-st-4 .typo-st .small {font-size:16px;}

	.port-st-5 {padding:60px 0;}
	.port-st-5 .colors {flex-wrap:wrap; height:auto; margin-top:20px;}
	.port-st-5 .colors > div {flex:0 0 auto; width:50%; height:90px;}

	.port-st-6 {padding:60px 0;}
	.port-st-6 .contain {display:block;}
	.port-st-6 h2 {margin-bottom:20px;}

	.port-st-7 {display:block; padding-top:60px;}
	.port-st-7 div {width:100%;}

	.port-st-8 {padding:60px 0; background-position:50% 60% !important;}
	.port-st-8 .title {margin-bottom:25px;}
	.port-st-8 .title p {font-size:15px;}
	.port-st-8 .image {padding:0 30px;}
	.port-st-8 .image img {border-radius:15px; border-width:3px;}

	.port-st-9 .title {margin-bottom:20px;}
	.port-st-9 .title .contain {display:block;}
	.port-st-9 .title p {font-size:14px; width:auto; text-align:left; margin:10px 0 0 0;}


	
}