@charset "UTF-8";
@import '//fonts.googleapis.com/css?family=Lato';
@import '//fonts.googleapis.com/earlyaccess/notosansjp.css';
html {
  box-sizing: border-box;
}

*, *::after, *::before {
  box-sizing: inherit;
}

@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/fontawesome-webfont.eot?v=4.7.0");
  src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("../fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Fontello';
  src: url("../fonts/fontello.eot?69728287");
  src: url("../fonts/fontello.eot?69728287#iefix") format("embedded-opentype"), url("../fonts/fontello.woff?69728287") format("woff"), url("../fonts/fontello.ttf?69728287") format("truetype"), url("../fonts/fontello.svg?69728287#fontello") format("svg");
  font-weight: normal;
  font-style: normal;
}

@media screen and (min-width: 1001px) {
  .sp_show {
    display: none !important;
  }
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .sp_show {
    display: none !important;
  }
}

@media screen and (max-width: 640px) {
  .sp_hide {
    display: none !important;
  }
}

p.alignright {
  text-align: right;
}

h1, h2, h3, h4, h5, h6 {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}

li {
  list-style-type: none;
  list-style-position: inside;
}

a {
  text-decoration: none;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}

em {
  font-style: normal;
}

img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

.inner {
  width: 100%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media screen and (max-width: 640px) {
  .inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}

.main h2, footer h2 {
  margin-bottom: 50px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #222;
}

@media screen and (max-width: 640px) {
  .main h2, footer h2 {
    font-size: 1.429rem;
    margin-bottom: 30px;
  }
}

.main h2 small, footer h2 small {
  display: block;
  margin-top: 1.2rem;
  font-size: 0.857rem;
}

.main .lead p, footer .lead p {
  font-size: 1.071rem;
  line-height: 2;
  text-align: center;
}

@media screen and (max-width: 640px) {
  .main .lead p, footer .lead p {
    font-size: 1rem;
  }
}

.bx-wrapper {
  margin: 0 auto;
}

.bx-wrapper .bx-viewport {
  box-shadow: none;
  border: none;
  left: 0;
}

.maps label {
  width: auto;
  display: inline;
}

.maps img {
  max-width: none;
  max-height: none;
}

.wp-pagenavi .pages, .wp-pagenavi .page, .wp-pagenavi .current, .wp-pagenavi .first, .wp-pagenavi .last, .wp-pagenavi .extend {
  display: none;
}

header {
  display: block;
  width: 100%;
  height: auto;
  padding-top: 70px;
}

@media screen and (max-width: 1000px) {
  header {
    padding-top: 48px;
  }
}

header * {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}

header .bar {
  display: block;
  position: fixed;
  z-index: 1002;
  top: 0;
  width: 100%;
  height: 71px;
  background-color: #FFF;
  border-bottom: 1px solid #1F613D;
}

header .bar::after {
  clear: both;
  content: "";
  display: block;
}

@media screen and (max-width: 1000px) {
  header .bar {
    height: 48px;
  }
}

header .bar .logo {
  float: left;
  padding: 9px 0 9px 1.25rem;
}

@media screen and (max-width: 1000px) {
  header .bar .logo {
    padding: 8px 0 8px 10px;
  }
}

header .bar .logo img {
  height: 52px;
}

@media screen and (max-width: 1000px) {
  header .bar .logo img {
    height: 32px;
  }
}

header .bar .sp_menu, header .bar .sp_tel {
  display: none;
}

@media screen and (max-width: 1000px) {
  header .bar .sp_menu {
    float: right;
    display: block;
  }
  header .bar .sp_menu a {
    position: relative;
    display: block;
    width: 48px;
    height: 48px;
    background-color: #1F613D;
  }
  header .bar .sp_menu a:after, header .bar .sp_menu a:before, header .bar .sp_menu a button {
    position: absolute;
    display: block;
    width: 28px;
    height: 2px;
    left: 10px;
    background-color: #FFF;
  }
  header .bar .sp_menu a:before {
    content: "";
    top: 14px;
  }
  header .bar .sp_menu a:after {
    content: "";
    top: 32px;
  }
  header .bar .sp_menu a button {
    top: 23px;
  }
}

header .bar .gnav {
  float: right;
}

@media screen and (max-width: 1000px) {
  header .bar .gnav {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    float: none;
    width: 100%;
    height: 100%;
    min-height: 100%;
    padding-top: 47px;
    background-color: #257449;
  }
}

header .bar .gnav .sp_gnav_close {
  display: none;
}

@media screen and (max-width: 1000px) {
  header .bar .gnav .sp_gnav_close {
    position: fixed;
    display: block;
    top: 14px;
    right: 10px;
    width: 28px;
    height: 28px;
  }
  header .bar .gnav .sp_gnav_close:after, header .bar .gnav .sp_gnav_close:before {
    content: "";
    position: fixed;
    display: block;
    width: 28px;
    height: 2px;
    right: 10px;
    top: 23px;
    background-color: #FFF;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
  }
  header .bar .gnav .sp_gnav_close:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  header .bar .gnav .sp_gnav_close:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

header .bar .gnav ul {
  display: table;
}

@media screen and (max-width: 1000px) {
  header .bar .gnav ul {
    display: block;
    display: block;
  }
  header .bar .gnav ul::after {
    clear: both;
    content: "";
    display: block;
  }
}

header .bar .gnav ul li {
  display: table-cell;
  vertical-align: middle;
}

@media screen and (max-width: 1000px) {
  header .bar .gnav ul li {
    display: block;
    width: 100%;
  }
}

header .bar .gnav ul li a {
  display: block;
  vertical-align: middle;
  height: 70px;
  line-height: 70px;
  font-size: 0.93rem;
  padding: 0 1.25rem;
  font-size: 1rem;
  font-weight: bold;
  color: #000;
  text-align: center;
}

header .bar .gnav ul li a:hover {
  background-color: #E9E9E9;
}

@media screen and (max-width: 1000px) {
  header .bar .gnav ul li a:hover {
    background-color: transparent;
  }
}

header .bar .gnav ul li a.contact {
  background-color: #1F613D;
  color: #FFF;
}

@media screen and (max-width: 1000px) {
  header .bar .gnav ul li a.contact {
    background-color: transparent;
  }
}

header .bar .gnav ul li a.contact:hover {
  background-color: #4f9770;
}

@media screen and (max-width: 1000px) {
  header .bar .gnav ul li a.contact:hover {
    background-color: transparent;
  }
}

@media screen and (max-width: 1000px) {
  header .bar .gnav ul li a {
    height: auto;
    line-height: 1;
    padding: 22px 0;
    font-size: 1rem;
    color: #FFF;
  }
}

header .about {
  display: block;
  height: 2rem;
  line-height: 2rem;
  background-color: #1F613D;
  padding-right: 1.25rem;
  border-bottom: 1px solid #1F613D;
}

header .about::after {
  clear: both;
  content: "";
  display: block;
}

@media screen and (max-width: 1000px) {
  header .about {
    height: auto;
    line-height: 1.4;
    padding: 0.2rem 0.6rem;
  }
}

header .about p {
  float: right;
  font-size: 0.9rem;
  color: #FFF;
}

@media screen and (max-width: 1000px) {
  header .about p {
    font-size: 0.8rem;
  }
}

@media screen and (max-width: 640px) {
  header .about p {
    float: none;
    text-align: center;
  }
}

header .mainvisual {
  z-index: 1000;
}

header .mainvisual .slides img {
  display: block;
  width: auto;
  height: 300px;
  width: auto;
}

@media screen and (max-width: 1000px) {
  header .mainvisual .slides img {
    height: 200px;
  }
}

footer {
  display: block;
  position: relative;
}

footer::after {
  clear: both;
  content: "";
  display: block;
}

footer * {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
}

footer .contact {
  clear: both;
  padding-top: 70px;
  padding-bottom: 70px;
  background-image: url("../images/footer.jpg");
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  footer .contact {
    padding-top: 55px;
    padding-bottom: 50px;
  }
}

@media screen and (max-width: 640px) {
  footer .contact {
    padding-top: 40px;
    padding-bottom: 45px;
  }
}

footer .contact h2 {
  color: #FFF;
}

@media screen and (max-width: 640px) {
  footer .contact h2 {
    margin-bottom: 25px;
  }
}

footer .contact .lead {
  color: #FFF;
}

footer .contact .items {
  display: table;
  margin-left: auto;
  margin-right: auto;
}

footer .contact .items .item {
  display: table-cell;
  vertical-align: middle;
}

footer .contact .items .item .mailform {
  display: block;
  margin: 50px auto 0;
  border: 2px solid #FFF;
  width: 260px;
  height: 50px;
  border-radius: 25px;
  line-height: 48px;
  color: #FFF;
  font-weight: bold;
  text-align: center;
}

@media screen and (max-width: 640px) {
  footer .contact .items .item .mailform {
    margin-top: 30px;
    width: 240px;
    height: 44px;
    line-height: 42px;
  }
}

footer .contact .items .item .mailform:hover {
  background-color: #FFF;
  color: #1F613D;
}

footer .foot {
  padding: 25px 0;
  background-color: #141819;
}

footer .foot .sns {
  display: table;
  margin: 0 auto;
}

footer .foot .sns ul {
  display: table;
}

@media screen and (max-width: 640px) {
  footer .foot .sns ul {
    display: table;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
}

@media screen and (min-width: 641px) {
  footer .foot .sns ul li {
    display: table-cell;
  }
  footer .foot .sns ul li:not(:last-of-type) {
    padding-right: 40px;
  }
}

@media screen and (max-width: 640px) {
  footer .foot .sns ul li {
    display: block;
    margin-bottom: 0.75em;
  }
}

footer .foot .sns ul li a {
  color: #FFF;
  font-size: 0.929rem;
  white-space: nowrap;
}

footer .foot .sns ul li a:hover {
  color: #CCC;
}

footer .foot .sns ul li a:before {
  font-family: "FontAwesome";
  font-size: 1.2rem;
  margin-right: 0.3em;
}

footer .foot .sns ul li a.fb:before {
  content: "\f082";
}

footer .foot .sns ul li a.tw:before {
  content: "\f081";
}

footer .foot .copyright {
  clear: both;
  padding-top: 20px;
  text-align: center;
}

@media screen and (max-width: 640px) {
  footer .foot .copyright {
    text-align: center;
  }
}

footer .foot .copyright p {
  color: #999;
  font-size: 0.857rem;
}

footer .foot .counter {
  clear: both;
  padding-top: 20px;
  text-align: center;
}

@media screen and (max-width: 640px) {
  footer .foot .counter {
    text-align: center;
  }
}

footer .foot .counter img {
  display: block !important;
  margin: 0 auto !important;
  height: 14px !important;
  width: auto !important;
}

.scroll_top {
  position: fixed;
  display: none;
  width: 100%;
  bottom: 30px;
}

@media screen and (max-width: 640px) {
  .scroll_top {
    bottom: 10px;
  }
}

.scroll_top.footer {
  position: absolute;
  top: 0;
  bottom: auto;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.scroll_top a {
  float: right;
  display: block;
  width: 54px;
  height: 54px;
  background-image: url("../images/scroll_top.svg");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: cover;
}

@media screen and (max-width: 640px) {
  .scroll_top a {
    width: 36px;
    height: 36px;
  }
}

.scroll_top a:hover {
  background-image: url("../images/scroll_top_hover.svg");
}

.share_buttons {
  position: fixed;
  right: 0;
  bottom: 0;
  padding: 0.5rem;
  background-color: #FFF;
  border-radius: 0.7rem 0 0 0;
  box-shadow: 0 0 5px rgba(50, 50, 50, 0.7);
}

.share_buttons h3 {
  font-weight: bold;
  font-size: 0.7rem;
  text-align: center;
  margin-bottom: 0.5rem;
  white-space: nowrap;
  width: 2.5rem;
}

@media screen and (max-width: 640px) {
  .share_buttons h3 {
    padding: 0.5rem 0;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 640px) {
  .share_buttons ul {
    margin-top: 0.5rem;
  }
}

.share_buttons li:not(:last-of-type) {
  margin-bottom: 0.5rem;
}

.share_buttons li a {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  text-align: center;
  border-width: 2px;
  border-style: solid;
  white-space: nowrap;
  border-radius: 2px;
}

.share_buttons li a:before {
  display: block;
  vertical-align: middle;
  margin-top: 0.5rem;
  font-size: 1.5rem;
  line-height: 1;
}

.share_buttons li a:hover, .share_buttons li a:hover:before {
  color: #FFF !important;
}

.share_buttons li a.fb {
  color: #365899;
  border-color: #365899;
}

.share_buttons li a.fb:hover {
  background-color: #365899;
}

.share_buttons li a.fb:before {
  font-family: 'FontAwesome';
  content: '\f09a';
}

.share_buttons li a.tw {
  color: #1B95E0;
  border-color: #1B95E0;
}

.share_buttons li a.tw:hover {
  background-color: #1B95E0;
}

.share_buttons li a.tw:before {
  font-family: 'FontAwesome';
  content: '\f099';
}

.share_buttons li a.line {
  color: #00B900;
  border-color: #00B900;
}

.share_buttons li a.line:hover {
  background-color: #00B900;
}

.share_buttons li a.line:before {
  font-family: 'Fontello';
  content: '\e800';
}

.share_buttons li a.hatena {
  color: #008FDE;
  border-color: #008FDE;
}

.share_buttons li a.hatena:hover {
  background-color: #008FDE;
}

.share_buttons li a.hatena:before {
  font-family: 'Fontello';
  content: '\e805';
}

.home .main .readmore {
  display: block;
  margin: 35px auto 0;
  border: 2px solid #1F613D;
  width: 260px;
  height: 50px;
  border-radius: 25px;
  line-height: 48px;
  color: #1F613D;
  font-weight: bold;
  text-align: center;
}

@media screen and (max-width: 640px) {
  .home .main .readmore {
    margin-top: 20px;
    width: 240px;
    height: 44px;
    line-height: 42px;
  }
}

.home .main .readmore:hover {
  background-color: #1F613D;
  color: #FFF;
}

.home .main .readmore.white {
  border: 2px solid #FFF;
  color: #FFF;
}

.home .main .readmore.white:hover {
  background-color: #FFF;
  color: #333;
}

.home .main .half_wrapper {
  clear: both;
  display: table;
  table-layout: fixed;
  width: 100%;
  height: 370px;
}

@media screen and (max-width: 640px) {
  .home .main .half_wrapper {
    display: block;
    height: auto;
  }
}

@media screen and (min-width: 641px) {
  .home .main .half_wrapper:nth-of-type(2) {
    direction: rtl;
  }
}

.home .main .half_wrapper section {
  direction: ltr !important;
  display: table-cell;
  vertical-align: top;
  width: 50%;
  padding-top: 80px;
  padding-bottom: 80px;
  padding-left: 20px;
  padding-right: 20px;
  font-size: 1rem;
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .home .main .half_wrapper section {
    padding-top: 60px;
    padding-bottom: 60px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media screen and (max-width: 640px) {
  .home .main .half_wrapper section {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.home .main .half_wrapper section .inner {
  display: block;
}

.home .main .half_wrapper section .inner::after {
  clear: both;
  content: "";
  display: block;
}

@media screen and (max-width: 640px) {
  .home .main .half_wrapper section {
    display: block;
    width: 100%;
  }
}

.home .main .half_wrapper section.journey {
  background-image: url("../images/home_journey.jpg");
}

.home .main .half_wrapper section.blog {
  background-image: url("../images/home_blog.jpg");
}

.home .main .half_wrapper section.works {
  background-image: url("../images/home_works.jpg");
}

.home .main .half_wrapper section.profile {
  background-image: url("../images/home_profile.jpg");
}

.home .main .journey h2, .home .main .profile h2 {
  color: #FFF;
}

.home .main .journey .icons, .home .main .journey .image, .home .main .profile .icons, .home .main .profile .image {
  margin: 0 auto 20px;
  max-width: 100%;
  width: auto;
  height: auto;
}

.home .main .journey .icons, .home .main .profile .icons {
  max-height: 90px;
}

@media screen and (max-width: 640px) {
  .home .main .journey .icons, .home .main .profile .icons {
    max-height: 60px;
  }
}

.home .main .journey .image, .home .main .profile .image {
  max-height: 200px;
  border-radius: 50%;
}

.home .main .journey p, .home .main .profile p {
  text-align: center;
  line-height: 2;
  color: #FFF;
}

.home .main .blog table, .home .main .works table {
  width: auto;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (max-width: 640px) {
  .home .main .blog table, .home .main .works table {
    float: none;
    width: 100%;
  }
}

.home .main .blog table tr th, .home .main .works table tr th {
  white-space: nowrap;
  vertical-align: top;
  text-align: left;
  padding-right: 1.5rem;
}

@media screen and (max-width: 640px) {
  .home .main .blog table tr th, .home .main .works table tr th {
    display: block;
    padding-right: 0;
  }
}

.home .main .blog table tr th .date, .home .main .works table tr th .date {
  margin: 0;
  color: #000;
  font-weight: 400;
  line-height: 26px;
}

.home .main .blog table tr td, .home .main .works table tr td {
  vertical-align: top;
  line-height: 26px;
  text-align: left;
}

@media screen and (max-width: 640px) {
  .home .main .blog table tr td, .home .main .works table tr td {
    display: block;
    font-size: 1rem;
    line-height: 1.75;
  }
}

.home .main .blog table tr td a, .home .main .works table tr td a {
  color: #000;
  border-bottom: 1px dotted #555;
}

.home .main .blog table tr td a:hover, .home .main .works table tr td a:hover {
  color: #666;
}

.home .main .blog table tr:not(:last-of-type) td, .home .main .works table tr:not(:last-of-type) td {
  padding-bottom: 25px;
}

@media screen and (max-width: 640px) {
  .home .main .blog table tr:not(:last-of-type) td, .home .main .works table tr:not(:last-of-type) td {
    padding-bottom: 10px;
  }
}

.blog .main, .category .main, .tag .main, .date .main,
.archive .main, .post-type-archive-work .main,
.single-post .main, .single-work .main {
  padding-top: 80px;
  padding-bottom: 80px;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .blog .main, .category .main, .tag .main, .date .main,
  .archive .main, .post-type-archive-work .main,
  .single-post .main, .single-work .main {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 640px) {
  .blog .main, .category .main, .tag .main, .date .main,
  .archive .main, .post-type-archive-work .main,
  .single-post .main, .single-work .main {
    padding-top: 30px;
    padding-bottom: 40px;
  }
}

.blog .main .categories, .category .main .categories, .tag .main .categories, .date .main .categories,
.archive .main .categories, .post-type-archive-work .main .categories,
.single-post .main .categories, .single-work .main .categories {
  margin-bottom: 60px;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .blog .main .categories, .category .main .categories, .tag .main .categories, .date .main .categories,
  .archive .main .categories, .post-type-archive-work .main .categories,
  .single-post .main .categories, .single-work .main .categories {
    margin-bottom: 50px;
  }
}

@media screen and (max-width: 640px) {
  .blog .main .categories, .category .main .categories, .tag .main .categories, .date .main .categories,
  .archive .main .categories, .post-type-archive-work .main .categories,
  .single-post .main .categories, .single-work .main .categories {
    margin-bottom: 30px;
  }
}

.blog .main .categories ul, .category .main .categories ul, .tag .main .categories ul, .date .main .categories ul,
.archive .main .categories ul, .post-type-archive-work .main .categories ul,
.single-post .main .categories ul, .single-work .main .categories ul {
  display: table;
  margin: 0 auto;
}

@media screen and (min-width: 641px) {
  .blog .main .categories ul, .category .main .categories ul, .tag .main .categories ul, .date .main .categories ul,
  .archive .main .categories ul, .post-type-archive-work .main .categories ul,
  .single-post .main .categories ul, .single-work .main .categories ul {
    table-layout: fixed;
  }
}

@media screen and (max-width: 640px) {
  .blog .main .categories ul, .category .main .categories ul, .tag .main .categories ul, .date .main .categories ul,
  .archive .main .categories ul, .post-type-archive-work .main .categories ul,
  .single-post .main .categories ul, .single-work .main .categories ul {
    display: block;
    width: 100%;
    margin-bottom: -5%;
  }
  .blog .main .categories ul::after, .category .main .categories ul::after, .tag .main .categories ul::after, .date .main .categories ul::after,
  .archive .main .categories ul::after, .post-type-archive-work .main .categories ul::after,
  .single-post .main .categories ul::after, .single-work .main .categories ul::after {
    clear: both;
    content: "";
    display: block;
  }
}

@media screen and (min-width: 641px) {
  .blog .main .categories ul li, .category .main .categories ul li, .tag .main .categories ul li, .date .main .categories ul li,
  .archive .main .categories ul li, .post-type-archive-work .main .categories ul li,
  .single-post .main .categories ul li, .single-work .main .categories ul li {
    display: table-cell;
  }
}

@media screen and (min-width: 1001px) {
  .blog .main .categories ul li:not(:last-of-type), .category .main .categories ul li:not(:last-of-type), .tag .main .categories ul li:not(:last-of-type), .date .main .categories ul li:not(:last-of-type),
  .archive .main .categories ul li:not(:last-of-type), .post-type-archive-work .main .categories ul li:not(:last-of-type),
  .single-post .main .categories ul li:not(:last-of-type), .single-work .main .categories ul li:not(:last-of-type) {
    padding-right: 40px;
  }
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .blog .main .categories ul li:not(:last-of-type), .category .main .categories ul li:not(:last-of-type), .tag .main .categories ul li:not(:last-of-type), .date .main .categories ul li:not(:last-of-type),
  .archive .main .categories ul li:not(:last-of-type), .post-type-archive-work .main .categories ul li:not(:last-of-type),
  .single-post .main .categories ul li:not(:last-of-type), .single-work .main .categories ul li:not(:last-of-type) {
    padding-right: 25px;
  }
}

@media screen and (max-width: 640px) {
  .blog .main .categories ul li, .category .main .categories ul li, .tag .main .categories ul li, .date .main .categories ul li,
  .archive .main .categories ul li, .post-type-archive-work .main .categories ul li,
  .single-post .main .categories ul li, .single-work .main .categories ul li {
    float: left;
    display: block;
    width: 30%;
    margin-right: 5%;
    margin-bottom: 5%;
  }
  .blog .main .categories ul li:nth-of-type(3n), .category .main .categories ul li:nth-of-type(3n), .tag .main .categories ul li:nth-of-type(3n), .date .main .categories ul li:nth-of-type(3n),
  .archive .main .categories ul li:nth-of-type(3n), .post-type-archive-work .main .categories ul li:nth-of-type(3n),
  .single-post .main .categories ul li:nth-of-type(3n), .single-work .main .categories ul li:nth-of-type(3n) {
    margin-right: 0;
  }
  .blog .main .categories ul li:nth-of-type(3n+1), .category .main .categories ul li:nth-of-type(3n+1), .tag .main .categories ul li:nth-of-type(3n+1), .date .main .categories ul li:nth-of-type(3n+1),
  .archive .main .categories ul li:nth-of-type(3n+1), .post-type-archive-work .main .categories ul li:nth-of-type(3n+1),
  .single-post .main .categories ul li:nth-of-type(3n+1), .single-work .main .categories ul li:nth-of-type(3n+1) {
    clear: both;
  }
}

.blog .main .categories ul li a, .category .main .categories ul li a, .tag .main .categories ul li a, .date .main .categories ul li a,
.archive .main .categories ul li a, .post-type-archive-work .main .categories ul li a,
.single-post .main .categories ul li a, .single-work .main .categories ul li a {
  display: block;
  width: 140px;
  height: 42px;
  line-height: 40px;
  border-radius: 21px;
  border: 1px solid #0A4664;
  background-color: #FFF;
  color: #0A4664;
  font-size: 1rem;
  text-align: center;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .blog .main .categories ul li a, .category .main .categories ul li a, .tag .main .categories ul li a, .date .main .categories ul li a,
  .archive .main .categories ul li a, .post-type-archive-work .main .categories ul li a,
  .single-post .main .categories ul li a, .single-work .main .categories ul li a {
    width: 100px;
  }
}

@media screen and (max-width: 640px) {
  .blog .main .categories ul li a, .category .main .categories ul li a, .tag .main .categories ul li a, .date .main .categories ul li a,
  .archive .main .categories ul li a, .post-type-archive-work .main .categories ul li a,
  .single-post .main .categories ul li a, .single-work .main .categories ul li a {
    width: 100%;
    font-size: 0.857rem;
  }
}

.blog .main .categories ul li a:hover, .category .main .categories ul li a:hover, .tag .main .categories ul li a:hover, .date .main .categories ul li a:hover,
.archive .main .categories ul li a:hover, .post-type-archive-work .main .categories ul li a:hover,
.single-post .main .categories ul li a:hover, .single-work .main .categories ul li a:hover {
  background-color: #0A4664;
  color: #FFF;
}

.blog .main .posts_nav, .category .main .posts_nav, .tag .main .posts_nav, .date .main .posts_nav,
.archive .main .posts_nav, .post-type-archive-work .main .posts_nav,
.single-post .main .posts_nav, .single-work .main .posts_nav {
  display: block;
  padding: 2rem 0;
  border-top: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
}

.blog .main .posts_nav::after, .category .main .posts_nav::after, .tag .main .posts_nav::after, .date .main .posts_nav::after,
.archive .main .posts_nav::after, .post-type-archive-work .main .posts_nav::after,
.single-post .main .posts_nav::after, .single-work .main .posts_nav::after {
  clear: both;
  content: "";
  display: block;
}

.blog .main .posts_nav .previouspostslink, .blog .main .posts_nav .nextpostslink, .category .main .posts_nav .previouspostslink, .category .main .posts_nav .nextpostslink, .tag .main .posts_nav .previouspostslink, .tag .main .posts_nav .nextpostslink, .date .main .posts_nav .previouspostslink, .date .main .posts_nav .nextpostslink,
.archive .main .posts_nav .previouspostslink,
.archive .main .posts_nav .nextpostslink, .post-type-archive-work .main .posts_nav .previouspostslink, .post-type-archive-work .main .posts_nav .nextpostslink,
.single-post .main .posts_nav .previouspostslink,
.single-post .main .posts_nav .nextpostslink, .single-work .main .posts_nav .previouspostslink, .single-work .main .posts_nav .nextpostslink {
  position: relative;
  display: block;
  line-height: 1.4;
  color: #1F613D;
  font-size: 1rem;
  max-width: 48%;
  border-width: 0;
}

.blog .main .posts_nav .previouspostslink:hover, .blog .main .posts_nav .nextpostslink:hover, .category .main .posts_nav .previouspostslink:hover, .category .main .posts_nav .nextpostslink:hover, .tag .main .posts_nav .previouspostslink:hover, .tag .main .posts_nav .nextpostslink:hover, .date .main .posts_nav .previouspostslink:hover, .date .main .posts_nav .nextpostslink:hover,
.archive .main .posts_nav .previouspostslink:hover,
.archive .main .posts_nav .nextpostslink:hover, .post-type-archive-work .main .posts_nav .previouspostslink:hover, .post-type-archive-work .main .posts_nav .nextpostslink:hover,
.single-post .main .posts_nav .previouspostslink:hover,
.single-post .main .posts_nav .nextpostslink:hover, .single-work .main .posts_nav .previouspostslink:hover, .single-work .main .posts_nav .nextpostslink:hover {
  text-decoration: underline;
}

.blog .main .posts_nav .previouspostslink:after, .blog .main .posts_nav .nextpostslink:after, .category .main .posts_nav .previouspostslink:after, .category .main .posts_nav .nextpostslink:after, .tag .main .posts_nav .previouspostslink:after, .tag .main .posts_nav .nextpostslink:after, .date .main .posts_nav .previouspostslink:after, .date .main .posts_nav .nextpostslink:after,
.archive .main .posts_nav .previouspostslink:after,
.archive .main .posts_nav .nextpostslink:after, .post-type-archive-work .main .posts_nav .previouspostslink:after, .post-type-archive-work .main .posts_nav .nextpostslink:after,
.single-post .main .posts_nav .previouspostslink:after,
.single-post .main .posts_nav .nextpostslink:after, .single-work .main .posts_nav .previouspostslink:after, .single-work .main .posts_nav .nextpostslink:after {
  position: absolute;
  display: block;
  top: 0;
}

.blog .main .posts_nav .previouspostslink, .category .main .posts_nav .previouspostslink, .tag .main .posts_nav .previouspostslink, .date .main .posts_nav .previouspostslink,
.archive .main .posts_nav .previouspostslink, .post-type-archive-work .main .posts_nav .previouspostslink,
.single-post .main .posts_nav .previouspostslink, .single-work .main .posts_nav .previouspostslink {
  float: left;
  padding-left: 2em;
}

.blog .main .posts_nav .previouspostslink:after, .category .main .posts_nav .previouspostslink:after, .tag .main .posts_nav .previouspostslink:after, .date .main .posts_nav .previouspostslink:after,
.archive .main .posts_nav .previouspostslink:after, .post-type-archive-work .main .posts_nav .previouspostslink:after,
.single-post .main .posts_nav .previouspostslink:after, .single-work .main .posts_nav .previouspostslink:after {
  content: "\00AB";
  left: 0.8rem;
}

.blog .main .posts_nav .nextpostslink, .category .main .posts_nav .nextpostslink, .tag .main .posts_nav .nextpostslink, .date .main .posts_nav .nextpostslink,
.archive .main .posts_nav .nextpostslink, .post-type-archive-work .main .posts_nav .nextpostslink,
.single-post .main .posts_nav .nextpostslink, .single-work .main .posts_nav .nextpostslink {
  float: right;
  padding-right: 2em;
}

.blog .main .posts_nav .nextpostslink:after, .category .main .posts_nav .nextpostslink:after, .tag .main .posts_nav .nextpostslink:after, .date .main .posts_nav .nextpostslink:after,
.archive .main .posts_nav .nextpostslink:after, .post-type-archive-work .main .posts_nav .nextpostslink:after,
.single-post .main .posts_nav .nextpostslink:after, .single-work .main .posts_nav .nextpostslink:after {
  content: "\00BB";
  right: 0.8rem;
}

.blog .main .categories, .category .main .categories, .tag .main .categories, .post-type-archive-work .main .categories, .date .main .categories, .archive .main .categories {
  margin-bottom: 60px;
}

@media screen and (max-width: 640px) {
  .blog .main .categories, .category .main .categories, .tag .main .categories, .post-type-archive-work .main .categories, .date .main .categories, .archive .main .categories {
    margin-bottom: 30px;
  }
}

.blog .main .entries table, .category .main .entries table, .tag .main .entries table, .post-type-archive-work .main .entries table, .date .main .entries table, .archive .main .entries table {
  width: 100%;
  border-top: 1px solid #E5E5E5;
}

.blog .main .entries table tr th, .category .main .entries table tr th, .tag .main .entries table tr th, .post-type-archive-work .main .entries table tr th, .date .main .entries table tr th, .archive .main .entries table tr th {
  padding: 20px 0;
  border-bottom: 1px solid #E5E5E5;
  white-space: nowrap;
  vertical-align: top;
  text-align: left;
}

@media screen and (max-width: 640px) {
  .blog .main .entries table tr th, .category .main .entries table tr th, .tag .main .entries table tr th, .post-type-archive-work .main .entries table tr th, .date .main .entries table tr th, .archive .main .entries table tr th {
    display: block;
    border-bottom: none;
    padding-bottom: 15px;
  }
}

.blog .main .entries table tr th .date, .category .main .entries table tr th .date, .tag .main .entries table tr th .date, .post-type-archive-work .main .entries table tr th .date, .date .main .entries table tr th .date, .archive .main .entries table tr th .date {
  margin: 0;
  color: #333;
  font-size: 1rem;
  font-weight: 400;
  line-height: 26px;
}

@media screen and (max-width: 640px) {
  .blog .main .entries table tr th .date, .category .main .entries table tr th .date, .tag .main .entries table tr th .date, .post-type-archive-work .main .entries table tr th .date, .date .main .entries table tr th .date, .archive .main .entries table tr th .date {
    line-height: 23px;
  }
}

.blog .main .entries table tr th .category, .category .main .entries table tr th .category, .tag .main .entries table tr th .category, .post-type-archive-work .main .entries table tr th .category, .date .main .entries table tr th .category, .archive .main .entries table tr th .category {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  display: inline-block;
  margin: 0 15px;
  width: 100px;
  height: 26px;
  line-height: 26px;
  font-size: 0.857rem;
  text-align: center;
  background-color: #044463;
  color: #FFF;
}

@media screen and (max-width: 640px) {
  .blog .main .entries table tr th .category, .category .main .entries table tr th .category, .tag .main .entries table tr th .category, .post-type-archive-work .main .entries table tr th .category, .date .main .entries table tr th .category, .archive .main .entries table tr th .category {
    width: 90px;
    height: 23px;
    line-height: 23px;
    font-size: 0.786rem;
  }
}

.blog .main .entries table tr td, .category .main .entries table tr td, .tag .main .entries table tr td, .post-type-archive-work .main .entries table tr td, .date .main .entries table tr td, .archive .main .entries table tr td {
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px solid #E5E5E5;
  vertical-align: top;
  font-size: 1.071rem;
  line-height: 26px;
  text-align: left;
}

@media screen and (max-width: 640px) {
  .blog .main .entries table tr td, .category .main .entries table tr td, .tag .main .entries table tr td, .post-type-archive-work .main .entries table tr td, .date .main .entries table tr td, .archive .main .entries table tr td {
    display: block;
    font-size: 1rem;
    line-height: 1.4;
    padding-top: 0;
  }
}

.blog .main .entries table tr td a, .category .main .entries table tr td a, .tag .main .entries table tr td a, .post-type-archive-work .main .entries table tr td a, .date .main .entries table tr td a, .archive .main .entries table tr td a {
  color: #333;
}

.blog .main .entries table tr td a:hover, .category .main .entries table tr td a:hover, .tag .main .entries table tr td a:hover, .post-type-archive-work .main .entries table tr td a:hover, .date .main .entries table tr td a:hover, .archive .main .entries table tr td a:hover {
  color: #666;
}

.blog .main .posts_nav, .category .main .posts_nav, .tag .main .posts_nav, .post-type-archive-work .main .posts_nav, .date .main .posts_nav, .archive .main .posts_nav {
  margin-top: 60px;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .blog .main .posts_nav, .category .main .posts_nav, .tag .main .posts_nav, .post-type-archive-work .main .posts_nav, .date .main .posts_nav, .archive .main .posts_nav {
    margin-top: 50px;
  }
}

@media screen and (max-width: 640px) {
  .blog .main .posts_nav, .category .main .posts_nav, .tag .main .posts_nav, .post-type-archive-work .main .posts_nav, .date .main .posts_nav, .archive .main .posts_nav {
    margin-top: 40px;
  }
}

.single-post .main .categories, .single-work .main .categories {
  margin-bottom: 60px;
}

@media screen and (max-width: 640px) {
  .single-post .main .categories, .single-work .main .categories {
    margin-bottom: 40px;
  }
}

.single-post .main .entry, .single-work .main .entry {
  clear: both;
}

.single-post .main .entry .inner, .single-work .main .entry .inner {
  width: 100%;
  max-width: 900px;
}

@media screen and (max-width: 1000px) {
  .single-post .main .entry .inner, .single-work .main .entry .inner {
    max-width: 100%;
  }
}

.single-post .main .entry .head, .single-work .main .entry .head {
  padding-bottom: 20px;
  margin-bottom: 25px;
  border-bottom: 1px solid #E5E5E5;
}

.single-post .main .entry .head .meta, .single-work .main .entry .head .meta {
  margin-bottom: 12px;
}

.single-post .main .entry .head .meta .date, .single-work .main .entry .head .meta .date {
  margin: 0;
  color: #333;
  font-size: 1.2rem;
  font-weight: 200;
  line-height: 2;
}

.single-post .main .entry .head .meta .category, .single-work .main .entry .head .meta .category {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  text-align: right;
  font-size: 0.857rem;
  line-height: 2;
}

@media screen and (max-width: 640px) {
  .single-post .main .entry .head .meta .category, .single-work .main .entry .head .meta .category {
    font-size: 0.786rem;
  }
}

.single-post .main .entry .head .meta .category a, .single-work .main .entry .head .meta .category a {
  display: inline-block;
  color: #044463;
}

.single-post .main .entry .head .meta .category a:not(:last-of-type):after, .single-work .main .entry .head .meta .category a:not(:last-of-type):after {
  content: ", ";
}

.single-post .main .entry .head h2, .single-work .main .entry .head h2 {
  color: #333;
  font-size: 1.429rem;
  line-height: 1.4;
  text-align: left;
  margin-bottom: 0;
}

@media screen and (max-width: 640px) {
  .single-post .main .entry .head h2, .single-work .main .entry .head h2 {
    font-size: 1rem;
    line-height: 1.75;
  }
}

.single-post .main .entry .body p, .single-work .main .entry .body p {
  color: #333;
  font-size: 1rem;
  line-height: 2;
}

@media screen and (max-width: 640px) {
  .single-post .main .entry .body p, .single-work .main .entry .body p {
    line-height: 1.6;
  }
}

.single-post .main .entry .body a, .single-work .main .entry .body a {
  color: #1F613D;
  text-decoration: underline;
}

.single-post .main .entry .body a:hover, .single-work .main .entry .body a:hover {
  text-decoration: none;
}

.single-post .main .entry .body p, .single-work .main .entry .body p {
  margin: 1.5rem 0;
}

.single-post .main .entry .body img, .single-post .main .entry .body iframe, .single-work .main .entry .body img, .single-work .main .entry .body iframe {
  display: block;
  margin: 2rem auto;
  width: 100%;
  max-width: 600px;
  border-radius: 2px;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .single-post .main .entry .body img, .single-post .main .entry .body iframe, .single-work .main .entry .body img, .single-work .main .entry .body iframe {
    max-width: 450px;
  }
}

@media screen and (max-width: 640px) {
  .single-post .main .entry .body img, .single-post .main .entry .body iframe, .single-work .main .entry .body img, .single-work .main .entry .body iframe {
    max-width: 300px;
  }
}

.single-post .main .posts_nav, .single-work .main .posts_nav {
  margin-top: 75px;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .single-post .main .posts_nav, .single-work .main .posts_nav {
    margin-top: 50px;
  }
}

@media screen and (max-width: 640px) {
  .single-post .main .posts_nav, .single-work .main .posts_nav {
    margin-top: 40px;
  }
}

.sidebar {
  display: block;
  margin-top: 75px;
}

.sidebar::after {
  clear: both;
  content: "";
  display: block;
}

@media screen and (min-width: 641px) {
  .sidebar {
    margin-bottom: -35px;
  }
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .sidebar {
    margin-top: 50px;
  }
}

@media screen and (max-width: 640px) {
  .sidebar {
    margin-top: 40px;
  }
}

@media screen and (min-width: 641px) {
  .sidebar .widget {
    float: left;
    margin-bottom: 35px;
  }
  .sidebar .widget:nth-of-type(1), .sidebar .widget:nth-of-type(2) {
    width: 48%;
  }
  .sidebar .widget:nth-of-type(1) {
    margin-right: 4%;
  }
  .sidebar .widget:nth-of-type(3), .sidebar .widget:nth-of-type(4), .sidebar .widget:nth-of-type(5) {
    width: 31%;
  }
  .sidebar .widget:nth-of-type(3), .sidebar .widget:nth-of-type(4) {
    margin-right: 3.5%;
  }
  .sidebar .widget:nth-of-type(3) {
    clear: both;
  }
}

@media screen and (max-width: 640px) {
  .sidebar .widget:not(:last-of-type) {
    margin-bottom: 25px;
  }
}

.sidebar .widget h3 {
  margin-bottom: 10px;
}

.sidebar .widget a {
  color: #1F613D;
}

.sidebar .widget a:hover {
  text-decoration: underline;
}

.sidebar .widget .screen-reader-text {
  display: none;
}

.sidebar .widget .select_wrapper {
  position: relative;
}

.sidebar .widget .select_wrapper:after {
  position: absolute;
  content: '';
  display: block;
  right: 1em;
  top: 50%;
  -webkit-transform: translateY(-25%);
  transform: translateY(-25%);
  width: 0;
  height: 0;
  border-width: 8px;
  border-style: solid;
  border-color: #1F613D transparent transparent;
  pointer-events: none;
}

.sidebar .widget select, .sidebar .widget option {
  width: 100%;
  cursor: pointer;
}

.sidebar .widget select {
  border-radius: 2px;
  border: 1px solid #1F613D;
  height: 3em;
  padding: 0 1em;
  text-indent: 0;
}

.sidebar .widget option {
  line-height: 2;
}

.sidebar .widget ul li {
  line-height: 1.25;
  font-size: 0.9rem;
}

.sidebar .widget ul li:not(:last-of-type) {
  margin-bottom: 0.75em;
}

.comments {
  margin-top: 75px;
  padding-top: 2rem;
  border-top: 1px solid #CCC;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .comments {
    margin-top: 50px;
  }
}

@media screen and (max-width: 640px) {
  .comments {
    margin-top: 40px;
  }
}

.comments h3 {
  margin-bottom: 10px;
}

.comments a {
  color: #1F613D;
}

.comments a:hover {
  text-decoration: underline;
}

.comments a.view_comments:hover {
  text-decoration: none;
}

.comments .inner {
  display: block;
  display: none;
}

.comments .inner::after {
  clear: both;
  content: "";
  display: block;
}

.comments .view_comments {
  display: block;
  margin: 10px auto 0;
  width: 18rem;
  height: 2rem;
  height: calc(2rem + 2px);
  line-height: 2;
  border-radius: 1rem;
  background-color: #FFF;
  color: #1F613D;
  border: 1px solid #1F613D;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
  text-align: center;
}

.comments .view_comments:hover {
  opacity: 1;
  background-color: #1F613D;
  color: #FFF;
}

@media screen and (min-width: 641px) {
  .comments .comments_form {
    float: left;
    width: 48%;
    margin-right: 4%;
  }
}

.comments .comments_form .comment-respond .comment-form p input:not(.submit), .comments .comments_form .comment-respond .comment-form p textarea {
  margin-top: 10px;
  padding: 0.5rem;
  width: 100%;
  border: 1px solid #1F613D;
}

.comments .comments_form .comment-respond .comment-form p input:not(.submit):focus, .comments .comments_form .comment-respond .comment-form p textarea:focus {
  background-color: #FCFFE5;
}

.comments .comments_form .comment-respond .comment-form p textarea {
  height: 8rem;
}

.comments .comments_form .comment-respond .comment-form p .submit {
  display: block;
  margin: 10px auto 0;
  width: 7rem;
  height: 2rem;
  height: calc(2rem + 2px);
  line-height: 2;
  border-radius: 1rem;
  background-color: #FFF;
  color: #1F613D;
  border: 1px solid #1F613D;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
  text-align: center;
}

.comments .comments_form .comment-respond .comment-form p .submit:hover {
  opacity: 1;
  background-color: #1F613D;
  color: #FFF;
}

@media screen and (min-width: 641px) {
  .comments .comments_list {
    float: left;
    width: 48%;
  }
}

@media screen and (max-width: 640px) {
  .comments .comments_list {
    margin-top: 40px;
  }
}

.comments .comments_list ul .comment:not(:last-of-type) {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid #CCC;
}

.comments .comments_list ul .comment .comment-body .comment-author {
  display: inline-block;
  margin-right: 1em;
  margin-bottom: 0.5rem;
}

.comments .comments_list ul .comment .comment-body .comment-author .avatar {
  display: none;
}

.comments .comments_list ul .comment .comment-body .comment-author .fn {
  font-style: normal;
}

.comments .comments_list ul .comment .comment-body .comment-author .fn a {
  color: #1F613D;
}

.comments .comments_list ul .comment .comment-body .comment-author .says {
  display: none;
}

.comments .comments_list ul .comment .comment-body .comment-meta {
  display: inline-block;
  font-size: 0.8rem;
  margin-bottom: 0.5rem;
}

.comments .comments_list ul .comment .comment-body .comment-meta a {
  color: #333;
  text-decoration: none;
  pointer-events: none;
}

.comments .comments_list ul .comment .comment-body .comment-meta a:before {
  content: "(";
}

.comments .comments_list ul .comment .comment-body .comment-meta a:after {
  content: ")";
}

.comments .comments_list ul .comment .comment-body .reply {
  display: none;
}

@media screen and (max-width: 1000px) {
  .page:not(.home) .main {
    width: 100%;
    margin: 0 0;
    padding: 40px 20px;
  }
}

@media screen and (min-width: 1001px) {
  .page:not(.home) .main {
    max-width: 1000px;
    margin: 0 auto;
    padding: 80px 0;
  }
}

.page:not(.home) .main h3 {
  font-size: 1.7rem;
  border-bottom: 2px solid #CCC;
  margin: 2rem 0 1.5rem;
}

.page:not(.home) .main h4 {
  font-size: 1.5rem;
  margin: 1.8rem 0 1.4rem;
  padding-left: 10px;
  border-left: 2px solid #CCC;
}

.page:not(.home) .main h5 {
  font-size: 1.2rem;
  margin: 1.5rem 0 1.2rem;
}

.page:not(.home) .main p {
  line-height: 2;
  margin: 1.5rem 0;
}

.page:not(.home) .main a {
  color: #1F613D;
  text-decoration: underline;
}

.page:not(.home) .main a:hover {
  text-decoration: none;
}

.journey_map {
  width: 100%;
  height: 500px;
}

@media screen and (max-width: 640px) {
  .journey_map {
    height: 300px;
  }
}

.page-contact .main .mw_wp_form_confirm .notice, .page-contact .main .mw_wp_form_complete .notice {
  display: none;
}

.page-contact .main .mail {
  width: 100%;
  max-width: 880px;
  margin: 0 auto;
}

.page-contact .main .mail h2 {
  margin-bottom: 40px;
}

.page-contact .main .mail .thanks {
  margin-bottom: 50px;
  font-size: 1.286rem;
  line-height: 2;
  text-align: center;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .page-contact .main .mail .thanks {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .thanks {
    margin-bottom: 30px;
    font-size: 1.143rem;
    line-height: 1.6;
  }
}

.page-contact .main .mail .notice {
  margin-bottom: 50px;
  background-color: #FCFFE5;
  padding: 25px;
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .notice {
    font-size: 0.857rem;
    padding: 20px 15px;
    margin-bottom: 30px;
  }
}

.page-contact .main .mail .notice p {
  color: #333;
  font-size: 1rem;
  line-height: 2;
  margin: 0;
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .notice p {
    line-height: 1.6;
  }
}

.page-contact .main .mail .form .note {
  font-size: 1rem;
  margin-bottom: 15px;
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .form .note {
    margin-bottom: 25px;
  }
}

.page-contact .main .mail .form table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #E5E5E5;
  margin-bottom: 70px;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {
  .page-contact .main .mail .form table {
    margin-bottom: 55px;
  }
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .form table {
    margin-bottom: 40px;
  }
}

.page-contact .main .mail .form table tr.privacy td p {
  margin-bottom: 10px;
}

.page-contact .main .mail .form table tr th {
  padding: 15px 100px 15px 20px;
  font-size: 1rem;
  line-height: 2;
  text-align: left;
  white-space: nowrap;
  vertical-align: middle;
  border-bottom: 1px solid #E5E5E5;
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .form table tr th {
    display: block;
    padding: 15px 0 5px;
    border-bottom: none;
    font-size: 1.071rem;
  }
}

.page-contact .main .mail .form table tr th.vtop {
  vertical-align: top;
}

.page-contact .main .mail .form table tr td {
  padding: 15px 45px 15px 0;
  width: 100%;
  line-height: 2;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #E5E5E5;
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .form table tr td {
    display: block;
    padding: 0 0 20px;
    line-height: 1.64;
  }
}

.page-contact .main .mail .form table tr label {
  cursor: pointer;
}

.page-contact .main .mail .form table tr input[type="text"], .page-contact .main .mail .form table tr input[type="email"], .page-contact .main .mail .form table tr textarea {
  display: block;
  background-color: #F5F5F5;
  width: 100%;
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .form table tr input[type="text"], .page-contact .main .mail .form table tr input[type="email"], .page-contact .main .mail .form table tr textarea {
    padding: 0.4rem;
  }
}

.page-contact .main .mail .form .submit {
  display: table;
  margin: 0 auto;
}

.page-contact .main .mail .form .submit input, .page-contact .main .mail .form .submit a {
  float: left;
  display: block;
  margin: 0 10px;
  width: 290px;
  height: 48px;
  line-height: 46px;
  border-radius: 24px;
  border: 1px solid #1F613D;
  background-color: #FFF;
  color: #1F613D;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
  text-align: center;
}

@media screen and (max-width: 640px) {
  .page-contact .main .mail .form .submit input, .page-contact .main .mail .form .submit a {
    float: none;
    width: 155px;
    height: 38px;
    line-height: 36px;
    border-radius: 18px;
    margin: 0 5px;
  }
  .page-contact .main .mail .form .submit input:not(:last-of-type), .page-contact .main .mail .form .submit a:not(:last-of-type) {
    margin-bottom: 0.5rem;
  }
}

.page-contact .main .mail .form .submit input:hover, .page-contact .main .mail .form .submit a:hover {
  background-color: #1F613D;
  color: #FFF;
}

body, html {
  margin: 0;
  padding: 0;
  font-family: "Lato", "Noto Sans JP", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  background-color: #FFF;
  color: #000;
  font-size: 15px;
  font-weight: 400;
}

body * {
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

/*# sourceMappingURL=style.css.map */
