@charset "utf-8";

.doc-top-txt {margin-bottom:145px; text-align:center; color:#221e1f; font-size:18px; font-weight:300; line-height:1.667em; letter-spacing:-.025em;}
.doc-top-txt strong {font-weight:500; color:#48a8ca;}
.doc-top-txt .highlight {display:inline-block; margin-top:8px; padding:3px 13px; color:#fff; font-weight:400; line-height:1.4em; background:#48a8ca;}
.doc-top-txt.mg {margin-bottom:95px;}

.about-nav {text-align:center; margin-top:35px;}
.about-nav ul {display:flex; flex-wrap:wrap; justify-content:center; align-items:center;}
.about-nav ul li {display:flex; align-items:center;}
.about-nav ul li:before {content:""; width:2px; height:23px; background:#000; margin:0 20px;}
.about-nav ul li:first-child::before {display:none;}
.about-nav ul li a {display:block; color:#221e1f; font-size:20px; line-height:1.4em; letter-spacing:-.025em;}
.about-nav ul li a:hover,
.about-nav ul li.active a {color:#999;}

.about-cnt1 {padding:100px 0 220px; overflow:hidden;}
.about-cnt1 .top-slogan {text-align:center; position:relative; margin-bottom:-60px; z-index:2;}
.about-cnt1 .group {display:flex; align-items:flex-end; margin-bottom:150px;}
.about-cnt1 .group:last-child {margin-bottom:0;}
.about-cnt1 .group .img {width:42%;}
.about-cnt1 .group .cnt {flex:1 1 auto; min-width:0; width:1%;}
.about-cnt1 .group .cnt h3 {color:#221e1f; font-size:34px; font-weight:600; line-height:1.176em; margin-bottom:35px;}
.about-cnt1 .group .cnt p {font-size:17px; font-weight:300; line-height:1.765em;}
.about-cnt1 .group .cnt p strong {color:#49a9cb; font-weight:500;}
.about-cnt1 .group:nth-child(even) .img {margin-right:70px;} 
.about-cnt1 .group:nth-child(odd) .img {order:2; text-align:right; margin-left:70px;}
.about-cnt1 .group:nth-child(odd) .cnt {margin-bottom:9%; text-align:right;}

.about-cnt2 {text-align:center;}
.about-cnt2 .img {margin-bottom:180px;}
.about-cnt2 .txt {background:#231f1f; color:#fff; padding:60px 0; font-size:29px; line-height:1.310em; overflow:hidden;}

.about-cnt3 {padding:110px 0 145px; margin-bottom:250px; text-align:center; background:url("../images/sub/service_keywords_bg.jpg") 50% 50% no-repeat; background-size:cover; overflow:hidden;}
.about-cnt3 .bar {width:2px; height:134px; margin:0 auto; background:#000;}
.about-cnt3 .head {margin:90px 0 100px;}
.about-cnt3 .head h3 {color:#221e1f; font-size:40px; font-weight:500; line-height:1.176em; margin-bottom:17px;}
.about-cnt3 .head p {color:#221e1f; font-size:24px; line-height:1.5em; letter-spacing:-.025em;}
.about-cnt3 .row {display:flex; margin:0 -18px;}
.about-cnt3 .col {flex:1; padding:0 18px;}
.about-cnt3 dl {border:1px solid #231f1f;  height:100%;}
.about-cnt3 dt {height:70px; display:flex; align-items:center; justify-content:center; color:#fff; background:#231f1f; padding:0 5px; font-size:28px; font-weight:500; line-height:1.1em;}
.about-cnt3 dt span {font-size:0.929em}
.about-cnt3 dd {padding:35px 25px; color:#221e1f; font-size:17px; line-height:1.647em; letter-spacing:-.025em;}

.about-cnt4 {margin-bottom:320px;} 
.about-cnt4 .head {text-align:center; margin-bottom:170px;}
.about-cnt4 .head h3 {color:#221e1f; font-size:40px; font-weight:500; line-height:1.176em; margin-bottom:25px;}
.about-cnt4 .head p {color:#221e1f; font-size:24px; line-height:1.5em; letter-spacing:-.025em;}
.about-cnt4 .group {margin-bottom:210px;}
.about-cnt4 .group:last-child {margin-bottom:0;}
.about-cnt4 .group h4 {display:flex; align-items:flex-end; color:#221e1f; font-size:34px; font-weight:600; line-height:1.176em; margin-bottom:28px;}
.about-cnt4 .group h4:after {content:""; width:211px; height:2px; background:#000; margin:0 0 16px 50px;}
.about-cnt4 .group ul {display:flex; flex-wrap:wrap; margin:-17px;}
.about-cnt4 .group ul li {width:25%; padding:17px;}

.about-cnt5 h3 {text-align:center; margin-bottom:100px; color:#221e1f; font-size:40px; font-weight:500; line-height:1.176em;}
.about-cnt5 .row {display:flex; margin:0 -30px;}
.about-cnt5 .col {width:50%; padding:0 30px;}
.about-cnt5 h4 {color:#221e1f; font-size:30px; font-weight:500; line-height:1.176em; margin-bottom:30px;}
.about-cnt5 .addr {position:relative; padding-left:30px; min-height:3.3em; color:#221e1f; font-size:17px; font-weight:500; line-height:1.65em; letter-spacing:-.025em; margin-bottom:10px;}
.about-cnt5 .addr img {position:absolute; top:1px; left:0;}

.manager {max-width:930px; margin:0 auto 140px;}
.manager:last-child {margin-bottom:0;}
.manager h3 {color:#221e1f; font-size:30px; font-weight:500; line-height:1.3em; margin-bottom:50px;}
.manager .row {display:flex; flex-wrap:wrap; margin:-13px -37px}
.manager .col {width:33.3333333%; padding:13px 37px; text-align:center;}
.manager .img {position:relative; margin-bottom:-69px;}
.manager .box {padding:76px 15px 28px; box-shadow:5px 5px 7px 5px rgba(0,0,0,.08); border-radius:30px;}
.manager .box .name {display:inline-block; vertical-align:middle; min-width:98px; padding:4px 20px; color:#fff; font-size:17px; font-weight:500; line-height:1.3em; background:#221e1f; border-radius:15px;}
.manager .box .pos {margin-top:9px; font-size:15px; font-weight:700; line-height:1.4em;}
.manager .box .part {margin-top:2px; font-size:14px; font-weight:400; line-height:1.4em;}
.manager .box .email {font-size:15px; font-weight:300; line-height:1.4em;}

.process {margin-top:130px; padding:0 176px 0 30px; text-align:center;}
.process ol {position:relative;}
.process ol:after {content:""; display:block; clear:both;}
.process ol li {float:left; position:relative; height:363px;}
.process ol li:before {content:""; position:absolute; top:134px; left:0; right:0; height:3px; background:#221e1f;}
.process ol li .box {position:relative; z-index:2; padding:0 10px;}
.process ol li .ico {width:133px; margin:0 auto -2px;}
.process ol li .dot {position:absolute; top:135px; left:50%; width:19px; height:19px; background:#fff; border:3px solid #221e1f; border-radius:100%; transform:translate(-50%,-50%);}
.process ol li .txt-wrap {display:inline-block; text-align:left; vertical-align:top; padding-top:20px; margin-left:10px;}
.process ol li .tit-area {height:70px; display:flex; align-items:center;}
.process ol li .tit-area .num {font-size:32px; font-weight:700; line-height:1em; margin-right:10px;}
.process ol li .tit-area .tit {text-align:center; font-size:20px; font-weight:500; line-height:1.3em; letter-spacing:-.025em;}
.process ol li .txt-area {font-size:15px; font-weight:300; line-height:1.333em; letter-spacing:-.025em;}
.process ol li .point .ico img {animation:fade_ani 3s linear infinite;}
.process ol li .point .dot {width:27px; height:27px; background:#95d9f7; border-width:4px;}

@keyframes fade_ani{
	0% {opacity:1;}
	50% {opacity:.2;}
	100% {opacity:1}
} 

.process ol li.step1 {width:25%;}
.process ol li.step1:before {left:50%;}
.process ol li.step1 .tit-area .tit {margin-top:2px;}

.process ol li.step2 {width:25%;}
.process ol li.step2 .txt-wrap {margin-left:30px;}
.process ol li.step2 .tit-area .tit {margin-top:2px;}

.process ol li.step3 {width:25%;}
.process ol li.step3 .txt-wrap {margin-left:20px;}

.process ol li.step4 {width:25%;}
.process ol li.step4:before {right:50%;}
.process ol li.step4:after {content:""; position:absolute; top:134px; left:40%; width:60%; height:calc(100% + 3px); border:3px solid #221e1f; border-radius:0 800px 800px 0; border-left-color:transparent;}
.process ol li.step4 .txt-wrap {margin-left:40px;}
.process ol li.step4 .tit-area .tit {margin-top:2px;}

.process ol li.step5 {position:absolute; top:134px; left:100%;}
.process ol li.step5:before {display:none;}
.process ol li.step5 .box {position:static; padding:90px 0 0 0;}
.process ol li.step5 .dot {left:0; top:50%;}
.process ol li.step5 .txt-wrap {white-space:nowrap; padding:0; margin:-20px -25px 0 20px;}

.process ol li.step6 {float:right; width:29%; padding-right:8%;}
.process ol li.step6:before {right:50%;}
.process ol li.step6 .txt-area {margin-right:-40px;}

.process ol li.step7 {float:right; width:29%;}

.process ol li.step8 {float:right; width:29%; padding-left:5%;}
.process ol li.step8:before {left:48%;}
.process ol li.step8:after {content:""; position:absolute; top:134px; right:40%; width:60%; height:calc(100% + 3px); border:3px solid #221e1f; border-radius:800px 0 0 800px; border-right-color:transparent;}

.process ol li.step9 {position:absolute; top:498px; right:87%;}
.process ol li.step9:before {display:none;}
.process ol li.step9 .box {position:static; padding:119px 0 0 0;}
.process ol li.step9 .ico {margin:0 -3px 0 0;}
.process ol li.step9 .dot {left:auto; right:-29px; top:50%;}
.process ol li.step9 .txt-wrap {white-space:nowrap; position:absolute; top:250px; left:0; padding:0; margin:0;}
.process ol li.step9 .tit-area {height:64px;}
.process ol li.step9 .txt-area {margin-left:-30px;}

.process ol li.step10 {width:20%; margin-left:18%;}
.process ol li.step10:before {left:50%;}
.process ol li.step10 .txt-area {margin-right:-40px;}

.process ol li.step11 {width:26%;}

.process ol li.step12 {width:24%;}

.process ol li.step13 {width:12%; text-align:right;}
.process ol li.step13 .ico {margin-right:-80px;}
.process ol li.step13 .dot {left:100%;}
.process ol li.step13 .txt-wrap {white-space:nowrap; margin-right:-115px;}

@media (max-width: 1630px) {
	.process ol li.step5 .txt-wrap {white-space:normal; margin-right:-50px;}
}

.frends-nav {text-align:center; margin-top:55px;}
.frends-nav ul {display:flex; justify-content:center;}
.frends-nav ul li {width:145px; border:1px solid #221e1f; border-left:0;}
.frends-nav ul li:first-child {border-left:1px solid #221e1f;}
.frends-nav ul li a {display:block; color:#221e1f; font-size:15px; font-weight:300; line-height:39px; text-align:center;}
.frends-nav ul li.active a {color:#fff; background:#221e1f;}

.mypage-nav {text-align:center; border-bottom:2px solid #221e1f; padding-bottom:24px; margin-bottom:85px;}
.mypage-nav ul {display:flex; flex-wrap:wrap; justify-content:center; align-items:center;}
.mypage-nav ul li {display:flex; align-items:center;}
.mypage-nav ul li:before {content:""; width:2px; height:23px; background:#c9c9c9; margin:0 60px;}
.mypage-nav ul li:first-child::before {display:none;}
.mypage-nav ul li a {display:block; color:#999; font-size:20px; font-weight:500; line-height:1.4em; letter-spacing:-.025em;}
.mypage-nav ul li a:hover,
.mypage-nav ul li.active a {color:#221e1f;}

.catalogue-form {max-width:1025px; border:2px solid #231f20; border-radius:40px; padding:60px 60px 70px; margin:0 auto;}
.catalogue-form .inner {max-width:616px; margin:0 auto;}
.catalogue-form .form table {width:100%; border-collapse:collapse; border-spacing:0px; font-size:17px; line-height:1.5em;}
.catalogue-form .form table th {padding:12px 0; width:84px; text-align:left; font-weight:500;}
.catalogue-form .form table td {padding:12px 0;}
.catalogue-form .input-wrap {display:flex; align-items:center;}
.catalogue-form .check {text-align:center; margin:35px 0 47px; color:#999; font-size:14px; line-height:1.5em; font-weight:300;}
.catalogue-form .btns {text-align:center;}
.catalogue-form .btns .btn-pack {margin:0 10px;}