@charset "utf-8";

.sub-title {padding:80px 0;}

.doc-tit {margin-bottom:40px;}
.doc-tit h3 {position:relative; font-size:22px; color:#2c2c2c; letter-spacing:-.03em; font-weight:500; padding-left:30px;}
.doc-tit h3:before {position:absolute; content:""; top:50%; margin-top:50%; margin-top:-11px; left:0; width:22px; height:22px; background:url('../images/sub/doc-tit.png')50% 50% no-repeat; background-size:contain;}

.table01 {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #a8a8a8;}
.table01 th {padding:12px 15px; border:1px solid #dfdfdf; border-top:0; background:#fafafa; font-size:16px; font-weight:400; color:#2c2c2c;}
.table01 td {padding:12px 15px; border:1px solid #dfdfdf; text-align:center; border-top:0; background:#fff; font-size:16px; color:#505050;}
.table01 tr th:first-child,
.table01 tr td:first-child {border-left:0;}
.table01 tr th:last-child,
.table01 tr td:last-child {border-right:0;}
.table01 tr td.bold {font-weight:500; color:#070a35;}

.greetings .txt {font-size:19px; color:#505050; line-height:1.526em; font-weight:300; letter-spacing:-.04em; margin-top:15px;}
.greetings .sign {display:flex; justify-content:flex-end; align-items:center; font-size:20px; color:#2c2c2c; letter-spacing:-.06em; margin-top:70px; text-align:right;}
.greetings .sign strong {font-weight:700;}
.greetings .sign span {margin-left:20px;}
.greetings-wrap {display:flex; margin-bottom:50px;}
.greetings-wrap .img {width:51%;}
.greetings-wrap .txt-box {position:relative; display:flex; align-items:center; justify-content:center; width:49%; background:#070a35; color:#fff;}
.greetings-wrap .txt-box:before {position:absolute; content:""; width:500px; height:85px; bottom:0; right:0; background:url('../images/sub/gree-txt.png')50% 50% no-repeat; background-size:contain;}
.greetings-wrap .txt-box h3 {font-size:32px; font-weight:700; letter-spacing:-.03em; line-height:1.438em;}

.history-bg {display:flex; align-items:center; justify-content:center; flex-direction:column; background-size:cover; background-position:50% 50%; background-repeat:no-repeat; min-height:360px; color:#fff;}
.history-bg .tit {font-size:16px; font-weight:100; letter-spacing:1em; line-height:1.375em; margin-bottom:10px;}
.history-bg h3 {font-size:32px; font-weight:700; letter-spacing:0; line-height:1.938em;}
.history-bg h3 span {background:#f9cc0d;color:#2c2c2c;}

.history {position:relative;}
.history:before {position:absolute; content:""; width:1px; height:100%; background:#ddd; top:0; left:50%; margin-left:-20px;}
.history h4 {position:relative; display:inline-block; background:#fff; padding:0 50px; font-size:28px; height:73px; line-height:69px; border:3px solid #070a35; border-radius:50px; color:#070a35; letter-spacing:-.03em; font-weight:500; text-align:center;}
.history .group .num {position:relative; margin-top:80px;}
.history .group .num:before {position:absolute; content:""; width:35px; background:#ddd; top:50%; height:1px; right:-35px; margin-top:5px;}
.history .group:nth-child(even) .num:before {right:auto; left:-35px;}
.history .group:nth-child(odd) .num {margin-left:-100px;}
.history .group:nth-child(even) .num {margin-right:-65px;}
.history .group {display:flex; align-items: baseline;}
.history .group .cnt ul li span {display:inline-block; font-size:20px; font-weight:500; letter-spacing:-.03em; line-height:1.3em;}
.history .group:nth-child(even) .cnt ul li span {padding-left:15px;}
.history .group:nth-child(odd) .cnt ul li span {padding-right:15px;}
.history .group .cnt ul li {position:relative; display:flex; padding-left:30px; margin-left:35px;}
.history .group .cnt ul li:before {position:absolute; content:''; width:19px; height:19px; background:url('../images/sub/dot-list.png')50% 50% no-repeat; background-size:contain; top:5px; left:0;}
.history .group:nth-child(even) .cnt ul li {display:flex; flex-direction:row-reverse; padding-right:30px; padding-left:0; margin-right:35px; margin-left:0;}
.history .group:nth-child(even) .cnt ul li:before {right:0; left:auto;}
.history .group:nth-child(even) {flex-direction: row-reverse; margin-right:50%;}
.history .group:nth-child(odd) {margin-left:50%;}

.association-list {margin-bottom:40px;}
.association-list .cnt {padding-left:20px;}
.association-list .doc-tit {margin-bottom:15px;}
.association-list .tt {margin-bottom:10px;}
.association-list h4 {font-size:17px; color:#2c2c2c; margin-bottom:5px; font-weight:500; letter-spacing:-.03em; line-height:1.3em;}
.association-list h5 {position:relative; font-size:20px; color:#070a35; font-weight:500; letter-spacing:-.03em; line-height:1.3em; padding-left:20px; margin-bottom:20px;}
.association-list h5:before {position:absolute; content:""; width:12px; height:4px; background:#070a35; border-radius:5px; top:50%; margin-top:-2px; left:0;}
.association-list ol {margin-bottom:10px;}
.association-list ol li {list-style:none;}

.location {display:flex; margin-top:60px;}
.location .txt-box {position:relative; width:50%; border:1px solid #ddd; padding:30px; min-height:180px;}
.location .txt-box:last-child {border-left:0;}
.location .txt-box .img {position:absolute; bottom:0; right:50px;}
.location .txt-box dl {display:flex;}
.location .txt-box dl dt {font-size:20px; font-weight:500; letter-spacing:-.03em; color:#2c2c2c; margin-right:40px;}
.location .txt-box dl dd {font-size:19px; font-weight:300; line-height:1.526em; color:#505050; letter-spacing:-.03em;}

.information .txt-box {width:calc(100% - 120px); margin:0 auto; margin-bottom:40px; position:relative; display:flex; flex-direction:column; justify-content:center; text-align:center; color:#fff; background:#070a35; margin-top:-90px; padding:50px 10px;}
.information .txt-box.mg {margin-top:-130px;}
.information .txt-box .tit {font-size:18px; font-weight:300; letter-spacing:-.04em;}
.information .txt-box .tit:last-child {margin-top:20px;}
.information .txt-box .tit strong {font-size:20px; font-weight:700;}
.information-list {margin-bottom:40px;}
.information-list .doc-tit {margin-bottom:15px;}
.information-list ul li strong {font-weight:700;}
.information-list ul li .bolds {font-weight:500; color:#070a35;}

.detective ul {display:flex; justify-content:center; margin-left:-30px;}
.detective ul li {display:flex; flex-direction:column; align-items:center; justify-content:center; width:calc(25% - 30px); margin-left:30px; border:1px solid #ddd; min-height:260px; text-align:center;}
.detective ul li .num {font-size:17px; color:#2c2c2c; font-weight:500; letter-spacing:-.03em; line-height:1.3em; padding:15px 0;}
.detective ul li .txt {line-height:1.625em;}

.business-wrap .business-flex {display:flex; align-items:center; padding:100px 0;}
.business-wrap .business-flex .img {width:50%;}
.business-wrap .business-flex .txt-box {width:50%; padding-left:70px;}
.business-wrap .business-flex .txt-box h3 {display:inline-block; padding:0 30px; height:64px; line-height:64px; text-align:center; color:#fff; font-size:26px; font-weight:700; letter-spacing:-.04em; background:#070a35; margin-bottom:25px;}
.business-wrap .business-flex .txt-box .business-list ul li {position:relative; font-size:17px; letter-spacing:-.04em; padding-left:30px; margin-bottom:10px;}
.business-wrap .business-flex .txt-box .business-list ul li:before {position:absolute; content:""; width:15px; height:3px; background:#f9cc0d; top:50%; margin-top:-1.5px; left:0;}
.business-wrap .business-flex .txt-box .business-list ul li strong {position:relative; font-weight:500; color:#070a35; padding-bottom:5px;}
.business-wrap .business-flex .txt-box .business-list ul li strong:before {position:absolute; content:""; width:100%; height:2px; background:#82838f; left:0; bottom:0;}
.business-wrap .business:nth-child(even) .business-flex .txt-box {padding-left:0; line-height:1.471em;}
.business-wrap .business:nth-child(even) .business-flex {flex-direction:row-reverse;}
.business-wrap .business:nth-child(even) {background:#f4f4f4;}


