.table-wrap {overflow-x: auto; -webkit-overflow-scrolling: touch;}
.sub-table {width:100%; border-collapse:collapse; border-spacing:0px; line-height:1.75em; letter-spacing:-.05em; border-top: 2px solid #030303;}
.sub-table th {padding:10px 8px; background:#fafafa; border:1px solid #dfdfdf;}
.sub-table thead th {font-weight:500; font-size: 18px;}
.sub-table tbody th {color: #2c2c2c; font-weight: 500;}
.sub-table td {padding:10px 8px; border:1px solid #dfdfdf; color:#505050; text-align:center;}
.sub-table td.left {text-align: left; padding-left: 3.5%;}
.sub-table td.left2 {text-align: left; padding-left: 12px;}
.sub-table td.bg {background: #e3ffe0;}
.sub-table tr th:first-child,
.sub-table tr td:first-child {border-left:0;}
.sub-table tr th:last-child,
.sub-table tr td:last-child {border-right:0;}

.top-imgBox {padding: 20px 10px 35px; margin-bottom: 15px; border: 1px solid #dfdfdf;}

.doc-sec {padding: 95px 0; border-bottom: 1px solid transparent; border-image: url("../images/sub/border.jpg") 1 repeat;}
.doc-sec:first-child {padding-top: 0;}
.doc-sec:last-child {padding-bottom: 0; border-bottom: 0;}
.doc-tit {position: relative; font-weight: 700; font-size: 22px; line-height: 1.5em; letter-spacing: -.03em; color: #242424; padding-left: 30px; margin-bottom: 35px;}	
.doc-tit.ty2 {margin-bottom: 10px;}
.doc-tit:before {content:""; position: absolute; top: 7px; left: 0; width: 20px; height: 20px; background-image:url("../images/sub/bullet.png"); background-position:50% 50%; background-repeat:no-repeat; background-size:contain;}
.doc-cnt {margin-bottom: 45px; color: #505050;}
.doc-cnt:last-child {margin-bottom: 0;}
.doc-cnt-tit {position: relative; color: #f7941e; font-size: 20px; font-weight: 700; line-height: 1.5em; letter-spacing: -.05em; padding-left: 30px; margin-bottom: 15px;}
.doc-cnt-tit:before {content:""; position: absolute; top: 6px; left: 0; width: 20px; height: 20px; border: 6px solid #f7941e; border-radius:100%;}

.definition-list {margin-bottom: 35px;}
.definition-list:last-child {margin-bottom: 0;}
.definition-list dt {display: inline-block; color: #fff; font-size: 18px; font-weight: 400; line-height: 1.5em; letter-spacing: -.05em; background: #88500c; padding: 3px 10px; margin-bottom: 12px;}
.definition-list dd {}
.definition-list .tt {display: inline-block; color: #fff; font-size: 18px; font-weight: 400; line-height: 1.5em; letter-spacing: -.05em; background: #88500c; padding: 3px 10px; margin-bottom: 12px;}

.dot-list > li{position:relative; padding-left:10px; color:#555; font-size: 18px; line-height: 1.444em; margin-bottom: 5px;}
.dot-list > li:last-child{margin-bottom:0;}
.dot-list > li:before{content:""; width:4px; height:4px; border-radius:100%; position:absolute; top:12px; left:0; background:#555;}

.hypen-list {text-align: left;}
.hypen-list > li{font-weight: 400; padding-left: 0.438em; text-indent: -0.438em;}
.hypen-list > li:last-child{margin-bottom: 0;}

.alpha-list > li{padding-left: 1.333em; text-indent: -1.333em;}

.refer-list li {margin-bottom: 5px;}
.refer-list li:last-child {margin-bottom: 0;}

.img-list {display: flex;flex-wrap:wrap; margin: 0 -20px; margin-bottom: -30px;}
.img-list li {width: 50%; padding: 0 20px; margin-bottom: 30px;}
.img-list li p {margin-top: 10px; text-align: center;}

.mgb-list li {margin-bottom: 20px;}
.mgb-list li:last-child {margin-bottom: 0;}

.mgb-list .txt .row {margin-bottom: 15px;}
.mgb-list .txt .row:last-child {margin-bottom: 0;}

.num-indent {padding-left: 1em; text-indent: -1em;}
.indent {padding-left: 1rem;}
.num-indent2 {padding-left: 1.333em; text-indent: -1.333em;}
.num-indent3 {padding-left: 1.278em; text-indent: -1.278em;}

.pl {padding-left: 1em;}

.num-list {}
.num-list > li {position: relative; padding-left: 32px;}
.num-list > li .num {position: absolute; top: 2px;left: 0;color: #fff; line-height: 24px; letter-spacing: -.05em; text-align: center; width: 24px;height: 24px; background: #88500c;}


.txt-orange {color: #f7941e;}
.txt-black {color: #2c2c2c;}
.txt-darkgrey {color: #505050;}
.txt-brown {color: #88500c;}
.txt-medium {font-weight: 500;}

.f-s18 {font-size: 18px; line-height: 1.667em; letter-spacing: -.05em;}
.f-s16 {font-size: 16px;}

.arrow {position: relative; padding-left: 1.188em;}
.arrow:before {content:"→"; color: #505050; position: absolute; top: 0; left: 0;}

.word-break {word-break: break-all;}

/* greetings */
.greetings {display: flex;}
.greetings .img {width: 30.14%;}
.greetings .txt {width: 69.86%; padding-left: 40px;}
.greetings .txt p {font-size: 18px; line-height: 1.667em; letter-spacing: -.05em; margin-bottom: 25px;}
.greetings .txt p.sign {text-align: right; margin-bottom: 0;}
.greetings .txt p.sign img {vertical-align: middle; margin-left: 5px;}

/* career */
.career {display: flex;}
.career .img {width: 290px;}
.career .cnt {}
.career .cnt dl {margin-bottom: 35px;}
.career .cnt dl:last-child {margin-bottom: 0;}
.career .cnt dl dt {position: relative; color: #000; font-size: 20px; font-weight: 500; line-height: 1.3em; letter-spacing: -.05em; margin-bottom: 10px; padding-left: 30px;}
.career .cnt dl dt:before {content:""; position: absolute; top: 3px; left: 0; width: 20px; height: 20px; background-image:url("../images/sub/bullet2.png"); background-position:50% 50%; background-repeat:no-repeat; background-size:contain;}
.career .cnt dl dd {position: relative; color: #797979; padding-left: 10px;}
.career .cnt dl dd:before {content:""; width:4px; height:4px; position:absolute; top:12px; left:0; background:#797979;}

/* history */
.history .banner {display: table; width: 100%; height: 210px; padding: 20px; margin-bottom: 50px; background:no-repeat url("../images/sub/history.jpg") 50% 50%; background-size:cover;}
.history .banner h2 {display: table-cell;vertical-align: middle;text-align: center; color: rgba(255,254,254,.48); font-size: 90px; font-weight: 700; line-height: 1.5em; letter-spacing: .75em;}

.history .cnt {position:relative;}
.history .cnt:before{content:""; position:absolute; left:50%; top:0; width:1px; height:calc(100% - 5px); background: #dfdfdf;}
.history .group{position:relative; width:50%; margin-bottom:55px; display: flex;}
.history .group:after { content:""; position:absolute; top:-1px; width:25px; height:25px; background:#fff; border:8px solid #f7941e; border-radius:100%; }
.history .group:last-child{margin-bottom:0;}
.history .group h3{min-width: 60px; font-size:20px; font-weight:700; line-height:1.3em; letter-spacing:-.05em;}
.history .group ul li{display: flex; color: #505050;}
.history .group ul li .month {min-width: 30px; font-size: 18px; font-weight: 700; line-height: 1.5em; letter-spacing: -.05em; color: #f7941e;}

.history .group:nth-child(even){text-align: right; justify-content: flex-end; padding-right:25px;}
.history .group:nth-child(even):after{right:-12px;}
.history .group:nth-child(even) h3 {order: 2;}
.history .group:nth-child(even) ul li {justify-content: flex-end;}
.history .group:nth-child(even) ul li .month {order: 2;}

.history .group:nth-child(odd) {padding-left:25px; margin-left:50%;}
.history .group:nth-child(odd):after{left:-12px;}

.location .table {display: none;width:100%; line-height:1.75em; letter-spacing:-.05em; border-top: 2px solid #030303;  text-align:center;}
.location .table .col {border-bottom:1px solid #dfdfdf;}
.location .table .col .th {padding:8px; background:#fafafa; border-bottom:1px solid #dfdfdf; font-weight:500;}
.location .table .col .td {padding:8px; color:#505050; }
