a[href^='tel:'] {
  color: inherit !important;
  pointer-events: none;
}



header,
#tree,
footer,
main {
  min-width: 1080px;
  font-size: 17px;
}

#tree nav,
#footer {
  width: 960px;
  box-sizing: border-box;
}
.box {
  min-width: 960px;
  max-width: 1280px;
  box-sizing: border-box;
}


#header,
#dh {
  height: 59px;
}

#header > h1,
#header > h1 a,
#header > h1 a > * {
  height: 40px;
  line-height: 40px;
}
#header > h1 {
  width: 212px;

  position: absolute;
  top: 50%;
  left: 2.5%;
  transform: translate3d(0, -50%, 0);
}


#tree nav {
  font-size: 0.85em;
}


footer {
  padding-top: 100px;
}
#footer li:not(:nth-of-type(1)) {
  padding: 2em 1em 0;
}
#footer li > a {
  width: 160px;
}


main {
  padding-bottom: 100px;
}

#navigation {
  margin-top: 100px;
}



.base figcaption { font-size: 0.8em; }

.alignnone {
}
.aligncenter {
  display: block;
}
.alignleft {
  margin-right: 1.5em !important;
}
.alignright {
  margin-left: 1.5em !important;
}
.size-thumbnail {
  max-width: 40%;
}
.size-medium {
  max-width: 70%;
}

.alp:active,
.alp:hover {
  opacity: 0.5;
}

.pcn {
  display: none !important;
}



#home {
  overflow: hidden;
}



#bgi,
#bgi2 {
  top: 50%;
}
#bgi {
  width: 60%;
  max-width: 840px;
}
#bgi2 {
  width: 100%;
  max-width: 1400px;
}

#hcon {
  padding-top: min(30%, 600px);
  padding-bottom: min(15%, 400px);
  padding-bottom: min(12%, 350px);
}
#hcon h1 {
  font-size: max(4vw, 3em);
}

#hrec {
  max-width: 1280px;
  padding-top: 15%;
}
#hrec a {
  width: 36%;
  padding-top: 36%;
}
#hrec a:link,
#hrec a:visited {
  background: #ffffff;
}
#hrec a:active,
#hrec a:hover {
  background: rgba(109, 170, 47, 1);
  color: #ffffff;
}
#hrec a:active p.kc,
#hrec a:hover p.kc {
  color: #ffffff;
}
#hrec a:nth-of-type(2n+1) {
  position: absolute;
  top: 0;
  left: 12%;
}
#hrec a:nth-of-type(2n) {
  margin-right: 12%;
}

#hrec a h1 {
  font-size: min(3.6em, max(4vw, 3em));
}
#hrec a h4 {
  font-size: min(2.1em, max(2vw, 1.5em));
}

#hgro {
  width: 90%;
  max-width: 1080px;
  margin-top: 200px;
}
#hgro h1 {
  font-size: min(3.6em, max(4vw, 3em));
}
#hgro aside {
  font-size: 1.2em;
}
#hgro article {
  width: 22.75%;
  margin-top: 3%;
  margin-left: 3%;
}
#hgro article:nth-of-type(-n+4) {
  margin-top: 0;
}
#hgro article:nth-of-type(4n+1) {
  clear: both;
  margin-left: 0;
}
#bgb {
  min-width: 1080px;
  margin-top: 150px;
}

#hrec > figure:nth-of-type(1) {
  top: -12%;
  right: 10%;
}
#hrec > figure:nth-of-type(2) {
  bottom: -10%;
  left: 8%;
}

#hgro > figure:nth-of-type(1) {
  top: 0;
  left: -5%;
}
#hgro > figure:nth-of-type(2) {
  top: -8%;
  right: 1%;
}
#hgro > figure:nth-of-type(3) {
  bottom: -26%;
  left: 12%;
}
#hgro > figure:nth-of-type(4) {
  right: -15%;
  bottom: 3%;
}



#rtitle {
  padding-top: 80px;
  padding-bottom: 60px;
}
#rtitle h1 {
  font-size: 2em;
}
#rtitle h4 {
  font-size: 1.25em;
}
#rnav {
  margin-bottom: 60px;
  padding-right: 2%;
  padding-left: 2%;
}
#rnav a {
  width: 32%;
  margin-top: 2%;
  margin-left: 2%;
  padding-top: 10%;
}
#rnav a:nth-of-type(-n+3) {
  margin-top: 0;
}
#rnav a:nth-of-type(3n+1) {
  clear: both;
  margin-left: 0;
}
#rcont {
  width: 96%;
  padding: 60px 10% 30px;
}
#rcredit {
  font-size: 1.8em;
}
#rcont .base,
#rcont > table th,
#rcont > table td,
#rsch {
  vertical-align: top;
  padding-top: 2em;
  padding-bottom: 2em;
}
#rcont > table th {
  width: 25%;
  padding-right: 1em;
  white-space: nowrap;
}
#rsch ul li {
  width: 16.66%;
}
#midcareer #rsch ul li {
  width: 20%;
}
#enav {
  padding-top: 100px;
}



.pmain {
  padding-top: max(16.6%, 16.6vw);
}
.pmain h1 {
  font-size: 2em;
}
.pmain h4 {
  font-size: 1.25em;
}
.cbox {
  padding-top: 80px;
}



#career .base {
  text-align: center;
}
#career .base h1 {
  font-size: 1.6em;
}



#job .box > article > h1,
#interview .box article > h1,
#benefits section.box > div > h1 {
  font-size: 1.75em;
}



#job section.box {
  padding: 0 2%;
}
#job .box article {
  min-height: 400px;
  margin-top: 60px;
  padding: 45px 10%;
}
#job .box > article > h1 {
  margin-top: 0.25em;
  margin-bottom: 0.75em;
}
#job .box > article > figure {
  width: 300px;
  height: 400px;

  position: absolute;
  top: 50%;
  transform: translate3d(0, -50%, 0);
}
#job .box > article:nth-of-type(2n+1) h1,
#job .box > article:nth-of-type(2n+1) div {
  padding-right: 350px;
}
#job .box > article:nth-of-type(2n+1) > figure {
  right: 10%;
}
#job .box > article:nth-of-type(2n) h1,
#job .box > article:nth-of-type(2n) div {
  padding-left: 350px;
}
#job .box > article:nth-of-type(2n) > figure {
  left: 10%;
}



#interview section.box {
  padding: 0 2%;
}
#interview section.box > div {
  padding: 0 10% 30px;
}
#interview .box article {
  padding-top: 60px;
  padding-bottom: 60px;
}
#interview .box article > h1 {
  width: fit-content;
}
#interview .box article > div {
  margin-top: 50px;
  position: relative;
}
#interview .box article div > figure {
  width: 300px;
  margin-top: 0.25em;

  position: absolute;
}
#interview .box article .v1 { padding-left: 350px; }
#interview .box article .v1 figure { left: 0; }
#interview .box article .v2 { padding-right: 350px; }
#interview .box article .v2 figure { right: 0; }

#interview section#vsch.box {
  margin-top: -20px;
}
#interview section#vsch.box > div {
  padding-top: 60px;
  padding-bottom: 60px;
}
#vsch > div > h1 {
  font-size: 1.35em;
  text-align: center;
  margin-bottom: 2em;
}



#benefits section.box {
  padding: 0 2%;
}
#benefits section.box > div {
  padding: 60px 10%;
}
#benefits section.box > div > h3 {
  width: fit-content;
  font-size: 1.1em;
}

#benefits section#b2.box {
  margin-top: -20px;
}
#benefits section.box article {
  margin-top: 4em;
  padding-right: 4%;
  padding-left: 4%;
}
#benefits section.box article > h4 {
  font-size: 1.75em;
}
#benefits section.box article aside {
  margin-right: 0.5em;
}

#b11 > div {
  min-height: 5.4em;
  padding-top: 2em;
  padding-bottom: 2em;
  padding-left: 160px;
  position: relative;
}
#b11 > div h6 {
  width: 130px;
  height: calc(100% - 4em);

  position: absolute;
  top: 2em;
  left: 0;
  overflow: visible;
}
#b11 > div h6:after {
  border-right: solid 65px transparent;
  border-left: solid 65px transparent;

  top: 100%;
  left: 0;
}
#b11 > div h6 span {
  padding-top: 0.5em;
}
#b11 > div:nth-of-type(1) h6:after { border-top: solid 1em rgba(109, 170, 47, 0.7); }
#b11 > div:nth-of-type(2) h6:after { border-top: solid 1em rgba(109, 170, 47, 0.85); }
#b11 > div:nth-of-type(3) h6:after { border-top: solid 1em rgba(109, 170, 47, 1); }

#b12 table {
  margin-top: 2em;
}
#b12 td {
  padding-top: 1.25em;
  padding-bottom: 1.25em;
}
#b12 tr td:nth-child(1) {
  width: 5em;
  text-align: center;
}
#b12 tr td:nth-child(1) {
  padding-right: 1.5em;
  padding-left: 2.5em;
}
#b12 tr td:nth-child(2) {
  padding-right: 2.5em;
}

#b13 > div {
  width: 23.5%;
  margin-top: 2%;
  margin-left: 2%;
  padding-top: calc(23.5% - 2px);
}
#b13 > div:nth-of-type(-n+4) {
  margin-top: 4%;
}
#b13 > div:nth-of-type(4n+1) {
  margin-left: 0;
}

#b21 ul {
  width: 90%;
}
#b21 li {
  width: 25%;
  margin-top: 4%;
}
#b21 h4 {
  font-size: 1.1em;
}

#b22 ul {
  display: flex;
  align-items: center;
  align-items: flex-end;
  margin-top: 40px;
}
#b22 li {
  flex: 1;
}
#b22 ul:nth-of-type(1) { width: 700px; }
#b22 ul:nth-of-type(2) { width: 450px; }
#b22 ul:nth-of-type(3) { width: 450px; }
#b22 li figure,
#b22 li figure > div {
  width: 200px;
}
#b22 li figure {
  height: 100px;
}
#b22 li figure > div,
#b22 ul:nth-of-type(3) li figure,
#b22 ul:nth-of-type(3) li figure > div {
  height: 200px;
}
#b22 li > img {
  width: 120px;
}



#entry .cbox {
  padding: 60px 2% 0;
}
#entry #form .pmain {
  margin-top: 100px;
}
#form caption,
#form th {
  padding-left: 3em;
}
#form tr > * {
  padding-bottom: 2em;
}
#form th {
  width: 9em;
  padding-right: 1em;
  white-space: nowrap;
}
#form tr:first-of-type > * {
  padding-top: 2.5em;
}
#form tr:last-of-type > * {
  padding-bottom: 2.5em;
}
#form td {
  padding-right: 3em;
}
#form input[type='number'] {
  padding-right: 0;
}
.wpcf7-list-item {
  display: inline-block;
}
.wpcf7-list-item:not(:first-child) {
  margin-left: 2.5em;
}
.wpcf7-list-item label {
  padding: 0.25em 0;
}

#recsel .wpcf7-list-item {
  display: inline-block;
  width: calc(100% / 3);
  padding-right: 1px;
  padding-left: 1px;
}
#recsel .wpcf7-list-item.first span {
  border-radius: 0.5em 0 0 0.5em;
}
#recsel .wpcf7-list-item.last span {
  border-radius: 0 0.5em 0.5em 0;
}

div.wpcf7-response-output,
div.wpcf7-display-none,
div.wpcf7-validation-errors {
  line-height: 3em;
}

#entry aside.base {
  padding-right: 3em;
  padding-left: 3em;
}



