@charset "UTF-8";
/*
Theme Name: Twenty Nineteen
Theme URI: https://github.com/WordPress/twentynineteen
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether you’re running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes.
Requires at least: WordPress 4.9.6
Version: 1.2
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: twentynineteen
Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Twenty Nineteen is based on Underscores https://underscores.me/, (C) 2012-2018 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Variables
# Normalize
# Typography
	## Headings
	## Copy
# Elements
	## Lists
	## Tables
# Forms
	## Buttons
	## Fields
# Navigation
	## Links
	## Menus
	## Next & Previous
# Accessibility
# Alignments
# Clearings
# Layout
# Widgets
# Content
	## Archives
	## Posts and pages
	## Comments
# Blocks
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*
 * Chrome renders extra-wide &nbsp; characters for the Hoefler Text font.
 * This results in a jumping cursor when typing in both the Classic and block
 * editors. The following font-face override fixes the issue by manually inserting
 * a custom font that includes just a Hoefler Text space replacement for that
 * character instead.
 */
@font-face {
  font-family: 'NonBreakingSpaceOverride';
  src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff");
}

@font-face {
	font-family: 'siteEnFont';
	src: url(/wp-content/themes/twentynineteen/font/en_font.ttf);
}

/* If we add the border using a regular CSS border, it won't look good on non-retina devices,
 * since its edges can look jagged due to lack of antialiasing. In this case, we are several
 * layers of box-shadow to add the border visually, which will render the border smoother. */
/* Fallback for non-latin fonts */
/* Calculates maximum width for post content */
/* Nested sub-menu padding: 10 levels deep */
/* Normalize */
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Typography */
html {
  font-size: 22px;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #111;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  font-size: 1em;
  line-height: 1.8;
  margin: 0;
  text-rendering: optimizeLegibility;
}

button,
input,
select,
optgroup,
textarea {
  color: #111;
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
  font-weight: 400;
  line-height: 1.8;
  text-rendering: optimizeLegibility;
}

.main-navigation,
.page-description,
.author-description .author-link,
.not-found .page-title,
.error-404 .page-title,
.post-navigation .post-title,
.pagination .nav-links,
.comments-title,
.comment-author .fn,
.no-comments,
.site-title,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.page-title {
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
}

.site-branding,
.main-navigation ul.main-menu > li,
.social-navigation,
.author-description .author-bio,
.nav-links {
  line-height: 1.25;
}

h1 {
  font-size: 2.25em;
}

@media only screen and (min-width: 768px) {
  h1 {
    font-size: 2.8125em;
  }
}

.entry-title,
.not-found .page-title,
.error-404 .page-title,
.has-larger-font-size,
h2 {
  font-size: 1.6875em;
}

@media only screen and (min-width: 768px) {
  .entry-title,
  .not-found .page-title,
  .error-404 .page-title,
  .has-larger-font-size,
  h2 {
    font-size: 2.25em;
  }
}

.has-regular-font-size,
.has-large-font-size,
.comments-title,
h3 {
  font-size: 1.6875em;
}

.site-title,
.site-description,
.main-navigation,
.nav-links,
.page-title,
.page-description,
.comment-author .fn,
.no-comments,
h2.author-title,
p.author-bio,
h4 {
  font-size: 1.125em;
}

.pagination .nav-links,
.comment-content,
h5 {
  font-size: 0.88889em;
}

.entry-meta,
.entry-footer,
.discussion-meta-info,
.site-info,
.has-small-font-size,
.comment-reply-link,
.comment-metadata,
.comment-notes,
.sticky-post,
#cancel-comment-reply-link,
img:after,
h6 {
  font-size: 0.71111em;
}

.site-title,
.page-title {
  font-weight: normal;
}

.page-description,
.page-links a {
  font-weight: bold;
}

.site-description {
  letter-spacing: -0.01em;
}

.post-navigation .post-title,
.entry-title,
.not-found .page-title,
.error-404 .page-title,
.comments-title,
blockquote {
  hyphens: auto;
  word-break: break-word;
}

/* Do not hyphenate entry title on tablet view and bigger. */
@media only screen and (min-width: 768px) {
  .entry-title {
    hyphens: none;
  }
}

p {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote cite {
  font-size: 0.71111em;
  font-style: normal;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
}

pre {
  font-size: 0.88889em;
  font-family: "Courier 10 Pitch", Courier, monospace;
  line-height: 1.8;
  overflow: auto;
}

code,
kbd,
tt,
var {
  font-size: 0.88889em;
  font-family: Menlo, monaco, Consolas, Lucida Console, monospace;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

a:focus {
  text-decoration: underline;
}

/* Arabic */
html[lang="ar"] .site *,
html[lang="ary"] .site *,
html[lang="azb"] .site *,
html[lang="ckb"] .site *,
html[lang="fa-IR"] .site *,
html[lang="haz"] .site *,
html[lang="ps"] .site * {
  font-family: Tahoma, Arial, sans-serif !important;
}

/* Cyrillic */
html[lang="be"] .site *,
html[lang="bg-BG"] .site *,
html[lang="kk"] .site *,
html[lang="mk-MK"] .site *,
html[lang="mn"] .site *,
html[lang="ru-RU"] .site *,
html[lang="sah"] .site *,
html[lang="sr-RS"] .site *,
html[lang="tt-RU"] .site *,
html[lang="uk"] .site * {
  font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, sans-serif !important;
}

/* Chinese (Hong Kong) */
html[lang="zh-HK"] .site * {
  font-family: -apple-system, BlinkMacSystemFont, 'PingFang HK', 'Helvetica Neue', "Microsoft YaHei New", STHeiti Light, sans-serif !important;
}

/* Chinese (Taiwan) */
html[lang="zh-TW"] .site * {
  font-family: -apple-system, BlinkMacSystemFont, 'PingFang TC', 'Helvetica Neue', "Microsoft YaHei New", STHeiti Light, sans-serif !important;
}

/* Chinese (China) */
html[lang="zh-CN"] .site * {
  font-family: -apple-system, BlinkMacSystemFont, 'PingFang SC', 'Helvetica Neue', "Microsoft YaHei New", STHeiti Light, sans-serif !important;
}

/* Devanagari */
html[lang="bn-BD"] .site *,
html[lang="hi-IN"] .site *,
html[lang="mr"] .site *,
html[lang="ne-NP"] .site * {
  font-family: Arial, sans-serif !important;
}

/* Greek */
html[lang="el"] .site * {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

/* Gujarati */
html[lang="gu"] .site * {
  font-family: Arial, sans-serif !important;
}

/* Hebrew */
html[lang="he-IL"] .site * {
  font-family: 'Arial Hebrew', Arial, sans-serif !important;
}

/* Japanese */
html[lang="ja"] .site * {
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", Meiryo, "Helvetica Neue", sans-serif !important;
}

/* Korean */
html[lang="ko-KR"] .site * {
  font-family: 'Apple SD Gothic Neo', 'Malgun Gothic', 'Nanum Gothic', Dotum, sans-serif !important;
}

/* Thai */
html[lang="th"] .site * {
  font-family: 'Sukhumvit Set', 'Helvetica Neue', helvetica, arial, sans-serif !important;
}

/* Vietnamese */
html[lang="vi"] .site * {
  font-family: 'Libre Franklin', sans-serif !important;
}

/* Elements */
html {
  box-sizing: border-box;
}

::-moz-selection {
  background-color: #bfdcea;
}

::selection {
  background-color: #bfdcea;
}

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

body {
  background-color: #fff;
}

a {
  transition: color 110ms ease-in-out;
  color: #0073aa;
}

a:hover,
a:active {
  color: #005177;
  outline: 0;
  text-decoration: none;
}

a:focus {
  outline: thin;
  outline-style: dotted;
  text-decoration: underline;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  margin: 1rem 0;
}

hr {
  background-color: #767676;
  border: 0;
  height: 2px;
}

ul,
ol {
  padding-left: 1rem;
}

ul {
  list-style: disc;
}

ul ul {
  list-style-type: circle;
}

ol {
  list-style: decimal;
}

li {
  line-height: 1.8;
}

li > ul,
li > ol {
  padding-left: 2rem;
}

dt {
  font-weight: bold;
}

dd {
  margin: 0 1rem 1rem;
}

img {
  height: auto;
  max-width: 100%;
  position: relative;
}

figure {
  margin: 0;
}

blockquote {
  border-left: 2px solid #0073aa;
  margin-left: 0;
  padding: 0 0 0 1rem;
}

blockquote > p {
  margin: 0 0 1rem;
}

blockquote cite {
  color: #767676;
}

table {
  margin: 0 0 1rem;
  border-collapse: collapse;
  width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
}

table td,
table th {
  padding: 0.5em;
  border: 1px solid #767676;
  word-break: break-all;
}

/* Forms */
.button,
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  transition: background 150ms ease-in-out;
  background: #0073aa;
  border: none;
  border-radius: 5px;
  box-sizing: border-box;
  color: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 0.88889em;
  font-weight: 700;
  line-height: 1.2;
  outline: none;
  padding: 0.76rem 1rem;
  text-decoration: none;
  vertical-align: bottom;
}

.button:hover,
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  background: #4d4d4d;
  cursor: pointer;
}

.button:visited,
button:visited,
input[type="button"]:visited,
input[type="reset"]:visited,
input[type="submit"]:visited {
  color: #fff;
  text-decoration: none;
}

.button:focus,
button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
  background: #111;
  outline: thin dotted;
  outline-offset: -4px;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  -webkit-backface-visibility: hidden;
  background: #fff;
  border: solid 1px #ccc;
  box-sizing: border-box;
  outline: none;
  padding: 0.36rem 0.66rem;
  -webkit-appearance: none;
  outline-offset: 0;
  border-radius: 0;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  border-color: #0073aa;
  outline: thin solid rgba(0, 115, 170, 0.15);
  outline-offset: -4px;
}

input[type="search"]::-webkit-search-decoration {
  display: none;
}

textarea {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  resize: vertical;
}

form p {
  margin: 1rem 0;
}

/* Navigation */
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
  transition: color 110ms ease-in-out;
  color: #0073aa;
}

a:visited {
  color: #0073aa;
}

a:hover, a:active {
  color: #005177;
  outline: 0;
  text-decoration: none;
}

a:focus {
  outline: thin dotted;
  text-decoration: underline;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
/** === Main menu === */
.main-navigation {
  display: block;
  margin-top: 0.25rem;
  /* Un-style buttons */
  /*
	 * Sub-menu styles
	 *
	 * :focus-within needs its own selector so other similar
	 * selectors don’t get ignored if a browser doesn’t recognize it
	 */
  /**
	 * Fade-in animation for top-level submenus
	 */
  /**
	 * Off-canvas touch device styles
	 */
}

body.page .main-navigation {
  display: block;
}

.main-navigation > div {
  display: inline;
}

.main-navigation button {
  display: inline-block;
  border: none;
  padding: 0;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  background: transparent;
  color: inherit;
  cursor: pointer;
  transition: background 250ms ease-in-out, transform 150ms ease;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.main-navigation button:hover, .main-navigation button:focus {
  background: transparent;
}

.main-navigation button:focus {
  outline: 1px solid transparent;
  outline-offset: -4px;
}

.main-navigation button:active {
  transform: scale(0.99);
}

.main-navigation .main-menu {
  display: inline-block;
  margin: 0;
  padding: 0;
}

.main-navigation .main-menu > li {
  color: #0073aa;
  display: inline;
  position: relative;
}

.main-navigation .main-menu > li > a {
  font-weight: 700;
  color: #0073aa;
  margin-right: 0.5rem;
}

.main-navigation .main-menu > li > a + svg {
  margin-right: 0.5rem;
}

.main-navigation .main-menu > li > a:hover,
.main-navigation .main-menu > li > a:hover + svg {
  color: #005177;
}

.main-navigation .main-menu > li.menu-item-has-children {
  display: inline-block;
  position: inherit;
}

@media only screen and (min-width: 768px) {
  .main-navigation .main-menu > li.menu-item-has-children {
    position: relative;
  }
}

.main-navigation .main-menu > li.menu-item-has-children > a {
  margin-right: 0.125rem;
}

.main-navigation .main-menu > li.menu-item-has-children > a:after,
.main-navigation .main-menu > li.menu-item-has-children .menu-item-has-children > a:after {
  content: "";
  display: none;
}

.main-navigation .main-menu > li.menu-item-has-children .submenu-expand {
  display: inline-block;
  margin-right: 0.25rem;
  /* Priority+ Menu */
}

.main-navigation .main-menu > li.menu-item-has-children .submenu-expand.main-menu-more-toggle {
  position: relative;
  height: 24px;
  line-height: 1.2;
  width: 24px;
  padding: 0;
  margin-left: 0.5rem;
}

.main-navigation .main-menu > li.menu-item-has-children .submenu-expand.main-menu-more-toggle svg {
  height: 24px;
  width: 24px;
  top: -0.125rem;
  vertical-align: text-bottom;
}

.wp-customizer-unloading .main-navigation .main-menu > li.menu-item-has-children .submenu-expand, .main-navigation .main-menu > li.menu-item-has-children .submenu-expand.is-empty {
  display: none;
}

.main-navigation .main-menu > li.menu-item-has-children .submenu-expand svg {
  position: relative;
  top: 0.2rem;
}

.main-navigation .main-menu > li:last-child > a,
.main-navigation .main-menu > li:last-child.menu-item-has-children .submenu-expand {
  margin-right: 0;
}

.main-navigation .sub-menu {
  background-color: #0073aa;
  color: #fff;
  list-style: none;
  padding-left: 0;
  position: absolute;
  opacity: 0;
  left: -9999px;
  z-index: 99999;
}

@media only screen and (min-width: 768px) {
  .main-navigation .sub-menu {
    width: auto;
    min-width: -moz-max-content;
    min-width: -webkit-max-content;
    min-width: max-content;
  }
}

.main-navigation .sub-menu > li {
  display: block;
  float: none;
  position: relative;
}

.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand {
  display: inline-block;
  position: absolute;
  width: calc( 24px + 1rem);
  right: 0;
  top: calc( .125 * 1rem);
  bottom: 0;
  color: white;
  line-height: 1;
  padding: calc( .5 * 1rem);
}

.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand svg {
  top: 0;
}

.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand {
  margin-right: 0;
}

@media only screen and (min-width: 768px) {
  .main-navigation .sub-menu > li.menu-item-has-children .menu-item-has-children > a:after {
    content: "\203a";
  }
}

.main-navigation .sub-menu > li > a,
.main-navigation .sub-menu > li > .menu-item-link-return {
  color: #fff;
  display: block;
  line-height: 1.2;
  text-shadow: none;
  padding: calc( .5 * 1rem) calc( 24px + 1rem) calc( .5 * 1rem) 1rem;
  white-space: nowrap;
}

.main-navigation .sub-menu > li > a:hover, .main-navigation .sub-menu > li > a:focus,
.main-navigation .sub-menu > li > .menu-item-link-return:hover,
.main-navigation .sub-menu > li > .menu-item-link-return:focus {
  background: #005177;
}

.main-navigation .sub-menu > li > a:hover:after, .main-navigation .sub-menu > li > a:focus:after,
.main-navigation .sub-menu > li > .menu-item-link-return:hover:after,
.main-navigation .sub-menu > li > .menu-item-link-return:focus:after {
  background: #005177;
}

.main-navigation .sub-menu > li > .menu-item-link-return {
  width: 100%;
  font-size: 22px;
  font-weight: normal;
  text-align: left;
}

.main-navigation .sub-menu > li > a:empty {
  display: none;
}

.main-navigation .sub-menu > li.mobile-parent-nav-menu-item {
  display: none;
  font-size: 0.88889em;
  font-weight: normal;
}

.main-navigation .sub-menu > li.mobile-parent-nav-menu-item svg {
  position: relative;
  top: 0.2rem;
  margin-right: calc( .25 * 1rem);
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu {
  display: block;
  left: 0;
  margin-top: 0;
  opacity: 1;
  width: auto;
  min-width: 100%;
  /* Non-mobile position */
  /* Nested sub-menu dashes */
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu {
  display: block;
  left: 0;
  margin-top: 0;
  opacity: 1;
  width: auto;
  min-width: 100%;
  /* Non-mobile position */
  /* Nested sub-menu dashes */
}

@media only screen and (min-width: 768px) {
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu {
    display: block;
    margin-top: 0;
    opacity: 1;
    position: absolute;
    left: 0;
    right: auto;
    top: auto;
    bottom: auto;
    height: auto;
    min-width: -moz-max-content;
    min-width: -webkit-max-content;
    min-width: max-content;
    transform: none;
  }
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu {
    display: block;
    margin-top: 0;
    opacity: 1;
    position: absolute;
    left: 0;
    right: auto;
    top: auto;
    bottom: auto;
    height: auto;
    min-width: -moz-max-content;
    min-width: -webkit-max-content;
    min-width: max-content;
    transform: none;
  }
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu.hidden-links {
  left: 0;
  width: 100%;
  display: table;
  position: absolute;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu.hidden-links {
  left: 0;
  width: 100%;
  display: table;
  position: absolute;
}

@media only screen and (min-width: 768px) {
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu.hidden-links {
    right: 0;
    left: auto;
    display: block;
    width: max-content;
  }
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu.hidden-links {
    right: 0;
    left: auto;
    display: block;
    width: max-content;
  }
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .submenu-expand {
  display: none;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .submenu-expand {
  display: none;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu {
  display: block;
  margin-top: inherit;
  position: relative;
  width: 100%;
  left: 0;
  opacity: 1;
  /* Non-mobile position */
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu {
  display: block;
  margin-top: inherit;
  position: relative;
  width: 100%;
  left: 0;
  opacity: 1;
  /* Non-mobile position */
}

@media only screen and (min-width: 768px) {
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu {
    float: none;
    max-width: 100%;
  }
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu {
    float: none;
    max-width: 100%;
  }
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu {
  counter-reset: submenu;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu {
  counter-reset: submenu;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu > li > a::before {
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
  font-weight: normal;
  content: "– " counters(submenu, "– ", none);
  counter-increment: submenu;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu > li > a::before {
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
  font-weight: normal;
  content: "– " counters(submenu, "– ", none);
  counter-increment: submenu;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu,
.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu,
.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu {
  display: block;
  left: 0;
  margin-top: 0;
  opacity: 1;
  width: auto;
  min-width: 100%;
  /* Non-mobile position */
  /* Nested sub-menu dashes */
}

@media only screen and (min-width: 768px) {
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu,
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu,
  .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu {
    display: block;
    float: none;
    margin-top: 0;
    opacity: 1;
    position: absolute;
    left: 0;
    right: auto;
    top: auto;
    bottom: auto;
    height: auto;
    min-width: -moz-max-content;
    min-width: -webkit-max-content;
    min-width: max-content;
    transform: none;
  }
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu.hidden-links,
.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu.hidden-links,
.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu.hidden-links {
  left: 0;
  width: 100%;
  display: table;
  position: absolute;
}

@media only screen and (min-width: 768px) {
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu.hidden-links,
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu.hidden-links,
  .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu.hidden-links {
    right: 0;
    left: auto;
    display: table;
    width: max-content;
  }
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .submenu-expand,
.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .submenu-expand,
.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .submenu-expand {
  display: none;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu,
.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu,
.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu {
  display: block;
  margin-top: inherit;
  position: relative;
  width: 100%;
  left: 0;
  opacity: 1;
  /* Non-mobile position */
}

@media only screen and (min-width: 768px) {
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu,
  .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu,
  .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu {
    float: none;
    max-width: 100%;
  }
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu,
.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu,
.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu {
  counter-reset: submenu;
}

.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu > li > a::before,
.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu > li > a::before,
.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu > li > a::before {
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
  font-weight: normal;
  content: "– " counters(submenu, "– ", none);
  counter-increment: submenu;
}

.main-navigation .main-menu > .menu-item-has-children:not(.off-canvas):hover > .sub-menu {
  animation: fade_in 0.1s forwards;
}

.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu .submenu-expand .svg-icon {
  transform: rotate(270deg);
}

.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu .sub-menu {
  opacity: 0;
  position: absolute;
  z-index: 0;
  transform: translateX(-100%);
}

.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li:hover,
.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li:focus,
.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li > a:hover,
.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li > a:focus {
  background-color: transparent;
}

.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu > li > a,
.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu > li > .menu-item-link-return {
  white-space: inherit;
}

.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true {
  display: table;
  margin-top: 0;
  opacity: 1;
  padding-left: 0;
  /* Mobile position */
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  position: fixed;
  z-index: 100000;
  /* Make sure appears above mobile admin bar */
  width: 100vw;
  height: 100vh;
  max-width: 100vw;
  transform: translateX(100%);
  animation: slide_in_right 0.3s forwards;
  /* Prevent menu from being blocked by admin bar */
}

.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true > .mobile-parent-nav-menu-item {
  display: block;
}

.admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true {
  top: 46px;
  height: calc( 100vh - 46px);
  /* WP core breakpoint */
}

.admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true .sub-menu.expanded-true {
  top: 0;
}

@media only screen and (min-width: 782px) {
  .admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true {
    top: 32px;
    height: calc( 100vh - 32px);
  }
  .admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true .sub-menu.expanded-true {
    top: 0;
  }
}

.main-navigation .main-menu-more:nth-child(n+3) {
  display: none;
}

/* Menu animation */
@keyframes slide_in_right {
  100% {
    transform: translateX(0%);
  }
}

@keyframes fade_in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* Social menu */
.social-navigation {
  margin-top: calc(1rem / 2);
  text-align: left;
}

.social-navigation ul.social-links-menu {
  content: "";
  display: table;
  table-layout: fixed;
  display: inline-block;
  margin: 0;
  padding: 0;
}

.social-navigation ul.social-links-menu li {
  display: inline-block;
  vertical-align: bottom;
  vertical-align: -webkit-baseline-middle;
  list-style: none;
}

.social-navigation ul.social-links-menu li:nth-child(n+2) {
  margin-left: 0.1em;
}

.social-navigation ul.social-links-menu li a {
  border-bottom: 1px solid transparent;
  display: block;
  color: #111;
  margin-bottom: -1px;
  transition: opacity 110ms ease-in-out;
}

.social-navigation ul.social-links-menu li a:hover, .social-navigation ul.social-links-menu li a:active {
  color: #111;
  opacity: 0.6;
}

.social-navigation ul.social-links-menu li a:focus {
  color: #111;
  opacity: 1;
  border-bottom: 1px solid #111;
}

.social-navigation ul.social-links-menu li a svg {
  display: block;
  width: 32px;
  height: 32px;
  transform: translateZ(0);
}

.social-navigation ul.social-links-menu li a svg#ui-icon-link {
  transform: rotate(-45deg);
}

@media only screen and (min-width: 768px) {
  .site-title + .social-navigation,
  .site-description + .social-navigation {
    margin-top: calc(1rem / 5);
  }
}

/** === Footer menu === */
.footer-navigation {
  display: inline;
}

.footer-navigation > div {
  display: inline;
}

.footer-navigation .footer-menu {
  display: inline;
  padding-left: 0;
}

.footer-navigation .footer-menu li {
  display: inline;
  margin-right: 1rem;
}

/*--------------------------------------------------------------
## Next / Previous
--------------------------------------------------------------*/
/* Next/Previous navigation */
.post-navigation {
  margin: calc(3 * 1rem) 0;
}

@media only screen and (min-width: 768px) {
  .post-navigation {
    margin: calc(3 * 1rem) calc(10% + 60px);
    max-width: calc(6 * (100vw / 12));
  }
}

@media only screen and (min-width: 1168px) {
  .post-navigation {
    margin: calc(3 * 1rem) 0;
    max-width: 100%;
  }
}

.post-navigation .nav-links {
  margin: 0 1rem;
  max-width: 100%;
  display: flex;
  flex-direction: column;
}

@media only screen and (min-width: 768px) {
  .post-navigation .nav-links {
    margin: 0;
  }
}

@media only screen and (min-width: 1168px) {
  .post-navigation .nav-links {
    flex-direction: row;
    margin: 0 calc(10% + 60px);
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

.post-navigation .nav-links a .meta-nav {
  color: #767676;
  user-select: none;
}

.post-navigation .nav-links a .meta-nav:before, .post-navigation .nav-links a .meta-nav:after {
  display: none;
  content: "—";
  width: 2em;
  color: #767676;
  height: 1em;
}

.post-navigation .nav-links a .post-title {
  hyphens: auto;
}

.post-navigation .nav-links a:hover {
  color: #005177;
}

@media only screen and (min-width: 1168px) {
  .post-navigation .nav-links .nav-previous,
  .post-navigation .nav-links .nav-next {
    min-width: calc(50% - 2 * 1rem);
  }
}

.post-navigation .nav-links .nav-previous {
  order: 2;
}

@media only screen and (min-width: 1168px) {
  .post-navigation .nav-links .nav-previous {
    order: 1;
  }
}

.post-navigation .nav-links .nav-previous + .nav-next {
  margin-bottom: 1rem;
}

.post-navigation .nav-links .nav-previous .meta-nav:before {
  display: inline;
}

.post-navigation .nav-links .nav-next {
  order: 1;
}

@media only screen and (min-width: 1168px) {
  .post-navigation .nav-links .nav-next {
    order: 2;
    padding-left: 1rem;
  }
}

.post-navigation .nav-links .nav-next .meta-nav:after {
  display: inline;
}

.pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  padding: 0 calc(.5 * 1rem);
}

.pagination .nav-links > * {
  padding: calc(.5 * 1rem);
}

.pagination .nav-links > *.dots, .pagination .nav-links > *.prev {
  padding-left: 0;
}

.pagination .nav-links > *.dots, .pagination .nav-links > *.next {
  padding-right: 0;
}

.pagination .nav-links a:focus {
  text-decoration: underline;
  outline-offset: -1px;
}

.pagination .nav-links a:focus.prev, .pagination .nav-links a:focus.next {
  text-decoration: none;
}

.pagination .nav-links a:focus.prev .nav-prev-text,
.pagination .nav-links a:focus.prev .nav-next-text, .pagination .nav-links a:focus.next .nav-prev-text,
.pagination .nav-links a:focus.next .nav-next-text {
  text-decoration: underline;
}

.pagination .nav-links .nav-next-text,
.pagination .nav-links .nav-prev-text {
  display: none;
}

@media only screen and (min-width: 768px) {
  .pagination .nav-links {
    margin-left: calc(10% + 60px);
    padding: 0;
  }
  .pagination .nav-links .prev > *,
  .pagination .nav-links .next > * {
    display: inline-block;
    vertical-align: text-bottom;
  }
  .pagination .nav-links > * {
    padding: 1rem;
  }
}

.comment-navigation .nav-links {
  display: flex;
  flex-direction: row;
}

.comment-navigation .nav-previous,
.comment-navigation .nav-next {
  min-width: 50%;
  width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-weight: bold;
}

.comment-navigation .nav-previous .secondary-text,
.comment-navigation .nav-next .secondary-text {
  display: none;
}

@media only screen and (min-width: 768px) {
  .comment-navigation .nav-previous .secondary-text,
  .comment-navigation .nav-next .secondary-text {
    display: inline;
  }
}

.comment-navigation .nav-previous svg,
.comment-navigation .nav-next svg {
  vertical-align: middle;
  position: relative;
  margin: 0 -0.35em;
  top: -1px;
}

.comment-navigation .nav-next {
  text-align: right;
}

/* Accessibility */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}

/* Alignments */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1rem;
}

@media only screen and (min-width: 768px) {
  .alignleft {
    /*rtl:ignore*/
    margin-right: calc(2 * 1rem);
  }
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1rem;
}

@media only screen and (min-width: 768px) {
  .alignright {
    /*rtl:ignore*/
    margin-left: calc(2 * 1rem);
  }
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Clearings */
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
  clear: both;
}

/* Layout */
/** === Layout === */
#page {
  width: 100%;
}

.site-content {
  overflow: hidden;
}

/* Content */
/*--------------------------------------------------------------
## Header
--------------------------------------------------------------*/
.site-header {
  padding: 1em;
}

.site-header.featured-image {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 90vh;
}

.site-header.featured-image .site-branding-container {
  margin-bottom: auto;
}

@media only screen and (min-width: 768px) {
  .site-header {
    margin: 0;
    padding: 3rem 0;
  }
  .site-header.featured-image {
    min-height: 100vh;
    margin-bottom: 3rem;
  }
}

.site-branding {
  color: #767676;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .site-branding {
    margin: 0 calc(10% + 60px);
  }
}

.site-logo {
  position: relative;
  z-index: 999;
  margin-bottom: calc(.66 * 1rem);
}

@media only screen and (min-width: 768px) {
  .site-logo {
    margin-bottom: 0;
    position: absolute;
    right: calc(100% + (1.25 * 1rem));
    top: 4px;
    z-index: 999;
  }
}

.site-logo .custom-logo-link {
  border-radius: 100%;
  box-sizing: content-box;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  display: block;
  width: 50px;
  height: 50px;
  overflow: hidden;
  transition: box-shadow 200ms ease-in-out;
}

.site-logo .custom-logo-link .custom-logo {
  min-height: inherit;
}

.site-logo .custom-logo-link:hover, .site-logo .custom-logo-link:active, .site-logo .custom-logo-link:focus {
  box-shadow: 0 0 0 2px black;
}

@media only screen and (min-width: 768px) {
  .site-logo .custom-logo-link {
    width: 64px;
    height: 64px;
  }
}

.site-title {
  margin: auto;
  display: inline;
  color: #111;
  /* When there is no description set, make sure navigation appears below title. */
}

.site-title a {
  color: #111;
}

.site-title a:link, .site-title a:visited {
  color: #111;
}

.site-title a:hover {
  color: #4a4a4a;
}

.featured-image .site-title {
  margin: 0;
}

@media only screen and (min-width: 768px) {
  .featured-image .site-title {
    display: inline-block;
  }
}

.site-title + .main-navigation {
  display: block;
}

@media only screen and (min-width: 768px) {
  .site-title {
    display: inline;
  }
}

.site-title:not(:empty) + .site-description:not(:empty):before {
  content: "\2014";
  margin: 0 .2em;
}

.site-description {
  display: inline;
  color: #767676;
  font-weight: normal;
  margin: 0;
}

.site-header.featured-image {
  /* Hide overflow for overflowing featured image */
  overflow: hidden;
  /* Need relative positioning to properly align layers. */
  position: relative;
  /* Add text shadow to text, to increase readability. */
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
  /* Set white text color when featured image is set. */
  /* add focus state to social media icons */
  /* Entry header */
  /* Custom Logo Link */
  /* Make sure important elements are above pseudo elements used for effects. */
  /* Set up image filter layer positioning */
  /* Background & Effects */
  /* Shared background settings between pseudo elements. */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  /* The intensity of each blend mode is controlled via layer opacity. */
  /* Second layer: screen. */
  /* Third layer: multiply. */
  /* When image filters are inactive, a black overlay is added. */
  /* Fourth layer: overlay. */
  /* Fifth layer: readability overlay */
}

.site-header.featured-image .site-branding .site-title,
.site-header.featured-image .site-branding .site-description,
.site-header.featured-image .main-navigation a:after,
.site-header.featured-image .main-navigation .main-menu > li.menu-item-has-children:after,
.site-header.featured-image .main-navigation li,
.site-header.featured-image .social-navigation li,
.site-header.featured-image .entry-meta,
.site-header.featured-image .entry-title {
  color: #fff;
}

.site-header.featured-image .main-navigation a,
.site-header.featured-image .main-navigation a + svg,
.site-header.featured-image .social-navigation a,
.site-header.featured-image .site-title a,
.site-header.featured-image .site-featured-image a {
  color: #fff;
  transition: opacity 110ms ease-in-out;
}

.site-header.featured-image .main-navigation a:hover, .site-header.featured-image .main-navigation a:active,
.site-header.featured-image .main-navigation a:hover + svg,
.site-header.featured-image .main-navigation a:active + svg,
.site-header.featured-image .main-navigation a + svg:hover,
.site-header.featured-image .main-navigation a + svg:active,
.site-header.featured-image .main-navigation a + svg:hover + svg,
.site-header.featured-image .main-navigation a + svg:active + svg,
.site-header.featured-image .social-navigation a:hover,
.site-header.featured-image .social-navigation a:active,
.site-header.featured-image .social-navigation a:hover + svg,
.site-header.featured-image .social-navigation a:active + svg,
.site-header.featured-image .site-title a:hover,
.site-header.featured-image .site-title a:active,
.site-header.featured-image .site-title a:hover + svg,
.site-header.featured-image .site-title a:active + svg,
.site-header.featured-image .site-featured-image a:hover,
.site-header.featured-image .site-featured-image a:active,
.site-header.featured-image .site-featured-image a:hover + svg,
.site-header.featured-image .site-featured-image a:active + svg {
  color: #fff;
  opacity: 0.6;
}

.site-header.featured-image .main-navigation a:focus,
.site-header.featured-image .main-navigation a:focus + svg,
.site-header.featured-image .main-navigation a + svg:focus,
.site-header.featured-image .main-navigation a + svg:focus + svg,
.site-header.featured-image .social-navigation a:focus,
.site-header.featured-image .social-navigation a:focus + svg,
.site-header.featured-image .site-title a:focus,
.site-header.featured-image .site-title a:focus + svg,
.site-header.featured-image .site-featured-image a:focus,
.site-header.featured-image .site-featured-image a:focus + svg {
  color: #fff;
}

.site-header.featured-image .main-navigation .sub-menu a {
  opacity: inherit;
}

.site-header.featured-image .social-navigation a:focus {
  color: #fff;
  opacity: 1;
  border-bottom: 1px solid #fff;
}

.site-header.featured-image .social-navigation svg,
.site-header.featured-image .site-featured-image svg {
  /* Use -webkit- only if supporting: Chrome < 54, iOS < 9.3, Android < 4.4.4 */
  -webkit-filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
}

.site-header.featured-image .site-featured-image .post-thumbnail img {
  height: auto;
  left: 50%;
  max-width: 1000%;
  min-height: 100%;
  min-width: 100vw;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: auto;
  z-index: 1;
  /* When image filters are active, make it grayscale to colorize it blue. */
}

@supports (object-fit: cover) {
  .site-header.featured-image .site-featured-image .post-thumbnail img {
    height: 100%;
    left: 0;
    object-fit: cover;
    top: 0;
    transform: none;
    width: 100%;
  }
}

.image-filters-enabled .site-header.featured-image .site-featured-image .post-thumbnail img {
  filter: grayscale(100%);
}

.site-header.featured-image .site-featured-image .entry-header {
  margin-top: calc( 4 * 1rem);
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
  /* Entry meta */
}

@media only screen and (min-width: 768px) {
  .site-header.featured-image .site-featured-image .entry-header {
    margin-left: calc(10% + 60px);
    margin-right: calc(10% + 60px);
  }
}

.site-header.featured-image .site-featured-image .entry-header .entry-title:before {
  background: #fff;
}

.site-header.featured-image .site-featured-image .entry-header .entry-meta {
  font-weight: 500;
}

.site-header.featured-image .site-featured-image .entry-header .entry-meta > span {
  margin-right: 1rem;
  display: inline-block;
}

.site-header.featured-image .site-featured-image .entry-header .entry-meta > span:last-child {
  margin-right: 0;
}

.site-header.featured-image .site-featured-image .entry-header .entry-meta a {
  transition: color 110ms ease-in-out;
  color: currentColor;
}

.site-header.featured-image .site-featured-image .entry-header .entry-meta a:hover {
  text-decoration: none;
}

.site-header.featured-image .site-featured-image .entry-header .entry-meta .svg-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.5em;
}

.site-header.featured-image .site-featured-image .entry-header .entry-meta .discussion-avatar-list {
  display: none;
}

@media only screen and (min-width: 768px) {
  .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta {
    display: flex;
    position: relative;
  }
  .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-title {
    padding-right: calc(1 * (100vw / 12) + 1rem);
  }
  .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta .comment-count {
    position: absolute;
    right: 0;
  }
  .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta .discussion-avatar-list {
    display: block;
    position: absolute;
    bottom: 100%;
  }
}

.site-header.featured-image .custom-logo-link {
  background: #fff;
  box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
}

.site-header.featured-image .custom-logo-link:hover, .site-header.featured-image .custom-logo-link:active, .site-header.featured-image .custom-logo-link:focus {
  box-shadow: 0 0 0 2px white;
}

.site-header.featured-image .site-branding {
  position: relative;
  z-index: 10;
}

.site-header.featured-image .site-featured-image .entry-header {
  position: relative;
  z-index: 9;
}

.site-header.featured-image .site-branding-container:after,
.site-header.featured-image .site-featured-image:before,
.site-header.featured-image .site-featured-image:after, .site-header.featured-image:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  content: "\020";
  width: 100%;
  height: 100%;
}

.image-filters-enabled .site-header.featured-image .site-featured-image:before {
  background: #0073aa;
  mix-blend-mode: screen;
  opacity: 0.1;
}

.site-header.featured-image .site-featured-image:after {
  background: #000;
  mix-blend-mode: multiply;
  opacity: .7;
  /* When image filters are active, a blue overlay is added. */
}

.image-filters-enabled .site-header.featured-image .site-featured-image:after {
  background: #0073aa;
  opacity: .8;
  z-index: 3;
  /* Browsers supporting mix-blend-mode don't need opacity < 1 */
}

@supports (mix-blend-mode: multiply) {
  .image-filters-enabled .site-header.featured-image .site-featured-image:after {
    opacity: 1;
  }
}

.image-filters-enabled .site-header.featured-image .site-branding-container:after {
  background: rgba(0, 0, 0, 0.35);
  mix-blend-mode: overlay;
  opacity: 0.5;
  z-index: 4;
  /* Browsers supporting mix-blend-mode can have a light overlay */
}

@supports (mix-blend-mode: overlay) {
  .image-filters-enabled .site-header.featured-image .site-branding-container:after {
    background: rgba(255, 255, 255, 0.35);
  }
}

.site-header.featured-image:after {
  background: #000;
  /**
		 * Add a transition to the readability overlay, to add a subtle
		 * but smooth effect when resizing the screen.
		 */
  transition: opacity 1200ms ease-in-out;
  opacity: 0.7;
  z-index: 5;
  /* When image filters are active, a blue overlay is added. */
}

.image-filters-enabled .site-header.featured-image:after {
  background: #000e14;
  opacity: 0.38;
}

@media only screen and (min-width: 768px) {
  .image-filters-enabled .site-header.featured-image:after {
    opacity: 0.18;
  }
}

.site-header.featured-image ::-moz-selection {
  background: rgba(255, 255, 255, 0.17);
}

.site-header.featured-image ::selection {
  background: rgba(255, 255, 255, 0.17);
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
  display: block;
}

.sticky-post {
  background: #0073aa;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  line-height: 1;
  padding: .25rem;
  position: absolute;
  text-transform: uppercase;
  top: -1rem;
  z-index: 1;
}

.updated:not(.published) {
  display: none;
}

.page-links {
  clear: both;
  margin: 0 0 calc(1.5 * 1rem);
}

.entry {
  margin-top: calc(6 * 1rem);
}

.entry:first-of-type {
  margin-top: 0;
}

.entry .entry-header {
  margin: calc(3 * 1rem) 1rem 1rem;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .entry .entry-header {
    margin: calc(3 * 1rem) calc(10% + 60px) 1rem;
  }
}

.entry .entry-title {
  margin: 0;
}

.entry .entry-title:before {
  background: #767676;
  content: "\020";
  display: block;
  height: 2px;
  margin: 1rem 0;
  width: 1em;
}

.entry .entry-title a {
  color: inherit;
}

.entry .entry-title a:hover {
  color: #4a4a4a;
}

.entry .entry-meta,
.entry .entry-footer {
  color: #767676;
  font-weight: 500;
}

.entry .entry-meta > span,
.entry .entry-footer > span {
  margin-right: 1rem;
  display: inline-block;
}

.entry .entry-meta > span:last-child,
.entry .entry-footer > span:last-child {
  margin-right: 0;
}

.entry .entry-meta a,
.entry .entry-footer a {
  transition: color 110ms ease-in-out;
  color: currentColor;
}

.entry .entry-meta a:hover,
.entry .entry-footer a:hover {
  text-decoration: none;
  color: #0073aa;
}

.entry .entry-meta .svg-icon,
.entry .entry-footer .svg-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.5em;
}

.entry .entry-meta {
  margin: 1rem 0;
}

.entry .entry-footer {
  margin: calc(2 * 1rem) 1rem 1rem;
}

@media only screen and (min-width: 768px) {
  .entry .entry-footer {
    margin: 1rem calc(10% + 60px) calc(3 * 1rem);
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-footer {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

.entry .post-thumbnail {
  margin: 1rem;
}

@media only screen and (min-width: 768px) {
  .entry .post-thumbnail {
    margin: 1rem calc(10% + 60px);
  }
}

.entry .post-thumbnail:focus {
  outline: none;
}

.entry .post-thumbnail .post-thumbnail-inner {
  display: block;
}

.entry .post-thumbnail .post-thumbnail-inner img {
  position: relative;
  display: block;
  width: 100%;
}

.image-filters-enabled .entry .post-thumbnail {
  position: relative;
  display: block;
}

.image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner {
  filter: grayscale(100%);
}

.image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner:after {
  background: rgba(0, 0, 0, 0.35);
  content: "";
  display: block;
  height: 100%;
  opacity: .5;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 4;
}

@supports (mix-blend-mode: multiply) {
  .image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner:after {
    display: none;
  }
}

.image-filters-enabled .entry .post-thumbnail:before, .image-filters-enabled .entry .post-thumbnail:after {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "\020";
  pointer-events: none;
}

.image-filters-enabled .entry .post-thumbnail:before {
  background: #0073aa;
  mix-blend-mode: screen;
  opacity: 0.1;
  z-index: 2;
}

.image-filters-enabled .entry .post-thumbnail:after {
  background: #0073aa;
  mix-blend-mode: multiply;
  opacity: .8;
  z-index: 3;
  /* Browsers supporting mix-blend-mode don't need opacity < 1 */
}

@supports (mix-blend-mode: multiply) {
  .image-filters-enabled .entry .post-thumbnail:after {
    opacity: 1;
  }
}

.entry .entry-content,
.entry .entry-summary {
  max-width: calc(100% - (2 * 1rem));
  margin: 0 1rem;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content,
  .entry .entry-summary {
    max-width: 80%;
    margin: 0 10%;
    padding: 0 60px;
  }
}

.entry .entry-content p {
  word-wrap: break-word;
}

.entry .entry-content .more-link {
  transition: color 110ms ease-in-out;
  display: inline;
  color: inherit;
}

.entry .entry-content .more-link:after {
  content: "\02192";
  display: inline-block;
  margin-left: 0.5em;
}

.entry .entry-content .more-link:hover {
  color: #0073aa;
  text-decoration: none;
}

.entry .entry-content a {
  text-decoration: underline;
}

.entry .entry-content a.button, .entry .entry-content a:hover {
  text-decoration: none;
}

.entry .entry-content a.button {
  display: inline-block;
}

.entry .entry-content a.button:hover {
  background: #111;
  color: #fff;
  cursor: pointer;
}

.entry .entry-content > iframe[style] {
  margin: 32px 0 !important;
  max-width: 100% !important;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > iframe[style] {
    max-width: calc(8 * (100vw / 12) - 28px) !important;
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content > iframe[style] {
    max-width: calc(6 * (100vw / 12) - 28px) !important;
  }
}

.entry .entry-content .page-links a {
  margin: calc(0.5 * 1rem);
  text-decoration: none;
}

.entry .entry-content .wp-audio-shortcode {
  max-width: calc(100vw - (2 * 1rem));
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-audio-shortcode {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content .wp-audio-shortcode {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

/* Author description */
.author-bio {
  margin: calc(2 * 1rem) 1rem 1rem;
}

@media only screen and (min-width: 768px) {
  .author-bio {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .author-bio {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 768px) {
  .author-bio {
    margin: calc(3 * 1rem) calc(10% + 60px);
  }
}

@media only screen and (min-width: 1168px) {
  .author-bio {
    margin: calc(3 * 1rem) calc(10% + 60px);
  }
}

.author-bio .author-title {
  display: inline;
}

.author-bio .author-title:before {
  background: #767676;
  content: "\020";
  display: block;
  height: 2px;
  margin: 1rem 0;
  width: 1em;
}

.author-bio .author-description {
  display: inline;
  color: #767676;
  font-size: 1.125em;
  line-height: 1.2;
}

.author-bio .author-description .author-link {
  display: inline-block;
}

.author-bio .author-description .author-link:hover {
  color: #005177;
  text-decoration: none;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

.comments-area {
  margin: calc(2 * 1rem) 1rem;
  /* Add extra margin when the comments section is located immediately after the
	 * post itself (this happens on pages).
	 */
}

@media only screen and (min-width: 768px) {
  .comments-area {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .comments-area {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 768px) {
  .comments-area {
    margin: calc(3 * 1rem) calc(10% + 60px);
  }
}

.comments-area > * {
  margin-top: calc(2 * 1rem);
  margin-bottom: calc(2 * 1rem);
}

@media only screen and (min-width: 768px) {
  .comments-area > * {
    margin-top: calc(3 * 1rem);
    margin-bottom: calc(3 * 1rem);
  }
}

.entry + .comments-area {
  margin-top: calc(3 * 1rem);
}

@media only screen and (min-width: 768px) {
  .comments-area .comments-title-wrap {
    align-items: baseline;
    display: flex;
    justify-content: space-between;
  }
}

.comments-area .comments-title-wrap .comments-title {
  margin: 0;
}

.comments-area .comments-title-wrap .comments-title:before {
  background: #767676;
  content: "\020";
  display: block;
  height: 2px;
  margin: 1rem 0;
  width: 1em;
}

@media only screen and (min-width: 768px) {
  .comments-area .comments-title-wrap .comments-title {
    flex: 1 0 calc(3 * (100vw / 12));
  }
}

@media only screen and (min-width: 768px) {
  .comments-area .comments-title-wrap .discussion-meta {
    flex: 0 0 calc(2 * (100vw / 12));
    margin-left: 1rem;
  }
}

#comment {
  max-width: 100%;
  box-sizing: border-box;
}

#respond {
  position: relative;
}

#respond .comment-user-avatar {
  margin: 1rem 0 -1rem;
}

#respond .comment .comment-form {
  padding-left: 0;
}

#respond > small {
  display: block;
  font-size: 22px;
  position: absolute;
  left: calc(1rem + 100%);
  top: calc(-3.5 * 1rem);
  width: calc(100vw / 12);
}

#comments > .comments-title:last-child {
  display: none;
}

.comment-form-flex {
  display: flex;
  flex-direction: column;
}

.comment-form-flex .comments-title {
  display: none;
  margin: 0;
  order: 1;
}

.comment-form-flex #respond {
  order: 2;
}

.comment-form-flex #respond + .comments-title {
  display: block;
}

.comment-list {
  list-style: none;
  padding: 0;
}

.comment-list .children {
  margin: 0;
  padding: 0 0 0 1rem;
}

.comment-list > .comment:first-child {
  margin-top: 0;
}

.comment-list .pingback .comment-body,
.comment-list .trackback .comment-body {
  color: #767676;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 0.71111em;
  font-weight: 500;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.comment-list .pingback .comment-body a:not(.comment-edit-link),
.comment-list .trackback .comment-body a:not(.comment-edit-link) {
  font-weight: bold;
  font-size: 19.55556px;
  line-height: 1.5;
  padding-right: 0.5rem;
  display: block;
}

.comment-list .pingback .comment-body .comment-edit-link,
.comment-list .trackback .comment-body .comment-edit-link {
  color: #767676;
  font-weight: 500;
}

#respond + .comment-reply {
  display: none;
}

.comment-reply .comment-reply-link {
  display: inline-block;
}

.comment {
  list-style: none;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .comment {
    padding-left: calc(.5 * (1rem + calc(100vw / 12 )));
  }
  .comment.depth-1,
  .comment .children {
    padding-left: 0;
  }
  .comment.depth-1 {
    margin-left: calc(3.25 * 1rem);
  }
}

.comment .comment-body {
  margin: calc(2 * 1rem) 0 0;
}

.comment .comment-meta {
  position: relative;
}

.comment .comment-author .avatar {
  float: left;
  margin-right: 1rem;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .comment .comment-author .avatar {
    float: inherit;
    margin-right: inherit;
    position: absolute;
    top: 0;
    right: calc(100% + 1rem);
  }
}

.comment .comment-author .fn {
  position: relative;
  display: block;
}

.comment .comment-author .fn a {
  color: inherit;
}

.comment .comment-author .fn a:hover {
  color: #005177;
}

.comment .comment-author .post-author-badge {
  border-radius: 100%;
  display: block;
  height: 18px;
  position: absolute;
  background: #008fd3;
  right: calc(100% - 2.5rem);
  top: -3px;
  width: 18px;
}

@media only screen and (min-width: 768px) {
  .comment .comment-author .post-author-badge {
    right: calc(100% + 0.75rem);
  }
}

.comment .comment-author .post-author-badge svg {
  width: inherit;
  height: inherit;
  display: block;
  fill: white;
  transform: scale(0.875);
}

.comment .comment-metadata > a,
.comment .comment-metadata .comment-edit-link {
  display: inline;
  font-weight: 500;
  color: #767676;
  vertical-align: baseline;
}

.comment .comment-metadata > a time,
.comment .comment-metadata .comment-edit-link time {
  vertical-align: baseline;
}

.comment .comment-metadata > a:hover,
.comment .comment-metadata .comment-edit-link:hover {
  color: #005177;
  text-decoration: none;
}

.comment .comment-metadata > * {
  display: inline-block;
}

.comment .comment-metadata .edit-link-sep {
  color: #767676;
  margin: 0 0.2em;
  vertical-align: baseline;
}

.comment .comment-metadata .edit-link {
  color: #767676;
}

.comment .comment-metadata .edit-link svg {
  transform: scale(0.8);
  vertical-align: baseline;
  margin-right: 0.1em;
}

.comment .comment-metadata .comment-edit-link {
  position: relative;
  padding-left: 1rem;
  margin-left: -1rem;
  z-index: 1;
}

.comment .comment-metadata .comment-edit-link:hover {
  color: #0073aa;
}

.comment .comment-content {
  margin: 1rem 0;
}

@media only screen and (min-width: 1168px) {
  .comment .comment-content {
    padding-right: 1rem;
  }
}

.comment .comment-content > *:first-child {
  margin-top: 0;
}

.comment .comment-content > *:last-child {
  margin-bottom: 0;
}

.comment .comment-content blockquote {
  margin-left: 0;
}

.comment .comment-content a {
  text-decoration: underline;
}

.comment .comment-content a:hover {
  text-decoration: none;
}

.comment-reply-link,
#cancel-comment-reply-link {
  font-weight: 500;
}

.comment-reply-link:hover,
#cancel-comment-reply-link:hover {
  color: #005177;
}

.discussion-avatar-list {
  content: "";
  display: table;
  table-layout: fixed;
  margin: 0;
  padding: 0;
}

.discussion-avatar-list li {
  position: relative;
  list-style: none;
  margin: 0 -8px 0 0;
  padding: 0;
  float: left;
}

.discussion-avatar-list .comment-user-avatar img {
  height: calc(1.5 * 1rem);
  width: calc(1.5 * 1rem);
}

.discussion-meta .discussion-meta-info {
  margin: 0;
}

.discussion-meta .discussion-meta-info .svg-icon {
  vertical-align: middle;
  fill: currentColor;
  transform: scale(0.6) scaleX(-1) translateY(-0.1em);
  margin-left: -0.25rem;
}

.comment-form .comment-notes,
.comment-form label {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 0.71111em;
  color: #767676;
}

@media only screen and (min-width: 768px) {
  .comment-form .comment-form-author,
  .comment-form .comment-form-email {
    width: calc(50% - 0.5rem);
    float: left;
  }
}

@media only screen and (min-width: 768px) {
  .comment-form .comment-form-email {
    margin-left: 1rem;
  }
}

.comment-form input[name="author"],
.comment-form input[name="email"],
.comment-form input[name="url"] {
  display: block;
  width: 100%;
}

/*--------------------------------------------------------------
## Archives
--------------------------------------------------------------*/
.archive .page-header,
.search .page-header,
.error404 .page-header {
  margin: 1rem 1rem calc(3 * 1rem);
}

@media only screen and (min-width: 768px) {
  .archive .page-header,
  .search .page-header,
  .error404 .page-header {
    margin: 0 calc(10% + 60px) calc(10% + 60px);
  }
}

.archive .page-header .page-title,
.search .page-header .page-title,
.error404 .page-header .page-title {
  color: #767676;
  display: inline;
  letter-spacing: normal;
}

.archive .page-header .page-title:before,
.search .page-header .page-title:before,
.error404 .page-header .page-title:before {
  display: none;
}

.archive .page-header .search-term,
.archive .page-header .page-description,
.search .page-header .search-term,
.search .page-header .page-description,
.error404 .page-header .search-term,
.error404 .page-header .page-description {
  display: inherit;
  clear: both;
}

.archive .page-header .search-term:after,
.archive .page-header .page-description:after,
.search .page-header .search-term:after,
.search .page-header .page-description:after,
.error404 .page-header .search-term:after,
.error404 .page-header .page-description:after {
  content: ".";
  font-weight: bold;
  color: #767676;
}

.archive .page-header .page-description {
  display: block;
  color: #111;
  font-size: 1em;
}

@media only screen and (min-width: 768px) {
  .hfeed .entry .entry-header {
    margin: calc(3 * 1rem) calc(10% + 60px) calc(1rem / 2);
  }
}

/* 404 & Not found */
.error-404.not-found .page-content,
.no-results.not-found .page-content {
  margin: calc(3 * 1rem) 1rem;
}

@media only screen and (min-width: 768px) {
  .error-404.not-found .page-content,
  .no-results.not-found .page-content {
    margin: calc(3 * 1rem) calc(10% + 60px) calc(1rem / 2);
  }
}

.error-404.not-found .search-submit,
.no-results.not-found .search-submit {
  vertical-align: middle;
  margin: 1rem 0;
}

.error-404.not-found .search-field,
.no-results.not-found .search-field {
  width: 100%;
}

/*--------------------------------------------------------------
## Footer
--------------------------------------------------------------*/
/* Site footer */
#colophon .widget-area,
#colophon .site-info {
  margin: calc(2 * 1rem) 1rem;
}

@media only screen and (min-width: 768px) {
  #colophon .widget-area,
  #colophon .site-info {
    margin: calc(3 * 1rem) calc(10% + 60px);
  }
}

#colophon .widget-column {
  display: flex;
  flex-wrap: wrap;
}

#colophon .widget-column .widget {
  width: 100%;
}

@media only screen and (min-width: 1168px) {
  #colophon .widget-column .widget {
    margin-right: calc(3 * 1rem);
    width: calc(50% - (3 * 1rem));
  }
}

#colophon .site-info {
  color: #767676;
}

#colophon .site-info a {
  color: inherit;
}

#colophon .site-info a:hover {
  text-decoration: none;
  color: #0073aa;
}

#colophon .site-info .imprint,
#colophon .site-info .privacy-policy-link {
  margin-right: 1rem;
}

/* Widgets */
.widget {
  margin: 0 0 1rem;
  /* Make sure select elements fit in widgets. */
}

.widget select {
  max-width: 100%;
}

.widget a {
  color: #0073aa;
}

.widget a:hover {
  color: #005177;
}

.widget_archive ul,
.widget_categories ul,
.widget_meta ul,
.widget_nav_menu ul,
.widget_pages ul,
.widget_recent_comments ul,
.widget_recent_entries ul,
.widget_rss ul {
  padding: 0;
  list-style: none;
}

.widget_archive ul li,
.widget_categories ul li,
.widget_meta ul li,
.widget_nav_menu ul li,
.widget_pages ul li,
.widget_recent_comments ul li,
.widget_recent_entries ul li,
.widget_rss ul li {
  color: #767676;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: calc(22px * 1.125);
  font-weight: 700;
  line-height: 1.2;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.widget_archive ul ul,
.widget_categories ul ul,
.widget_meta ul ul,
.widget_nav_menu ul ul,
.widget_pages ul ul,
.widget_recent_comments ul ul,
.widget_recent_entries ul ul,
.widget_rss ul ul {
  counter-reset: submenu;
}

.widget_archive ul ul > li > a::before,
.widget_categories ul ul > li > a::before,
.widget_meta ul ul > li > a::before,
.widget_nav_menu ul ul > li > a::before,
.widget_pages ul ul > li > a::before,
.widget_recent_comments ul ul > li > a::before,
.widget_recent_entries ul ul > li > a::before,
.widget_rss ul ul > li > a::before {
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
  font-weight: normal;
  content: "– " counters(submenu, "– ", none);
  counter-increment: submenu;
}

.widget_tag_cloud .tagcloud {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-weight: 700;
}

.widget_search .search-field {
  width: 100%;
}

@media only screen and (min-width: 600px) {
  .widget_search .search-field {
    width: auto;
  }
}

.widget_search .search-submit {
  display: block;
  margin-top: 1rem;
}

.widget_calendar .calendar_wrap {
  text-align: center;
}

.widget_calendar .calendar_wrap table td,
.widget_calendar .calendar_wrap table th {
  border: none;
}

.widget_calendar .calendar_wrap a {
  text-decoration: underline;
}

/* Blocks */
/* !Block styles */
.entry .entry-content > *,
.entry .entry-summary > * {
  margin: 32px 0;
  max-width: 100%;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *,
  .entry .entry-summary > * {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content > *,
  .entry .entry-summary > * {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *,
  .entry .entry-summary > * {
    margin: 32px 0;
  }
}

.entry .entry-content > * > *:first-child,
.entry .entry-summary > * > *:first-child {
  margin-top: 0;
}

.entry .entry-content > * > *:last-child,
.entry .entry-summary > * > *:last-child {
  margin-bottom: 0;
}

.entry .entry-content > *.alignwide,
.entry .entry-summary > *.alignwide {
  margin-left: auto;
  margin-right: auto;
  clear: both;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *.alignwide,
  .entry .entry-summary > *.alignwide {
    width: 100%;
    max-width: 100%;
  }
}

.entry .entry-content > *.alignfull,
.entry .entry-summary > *.alignfull {
  position: relative;
  left: -1rem;
  width: calc( 100% + (2 * 1rem));
  max-width: calc( 100% + (2 * 1rem));
  clear: both;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *.alignfull,
  .entry .entry-summary > *.alignfull {
    margin-top: calc(2 * 1rem);
    margin-bottom: calc(2 * 1rem);
    left: calc( -12.5% - 75px);
    width: calc( 125% + 150px);
    max-width: calc( 125% + 150px);
  }
}

.entry .entry-content > *.alignleft,
.entry .entry-summary > *.alignleft {
  /*rtl:ignore*/
  float: left;
  max-width: calc(5 * (100vw / 12));
  margin-top: 0;
  margin-left: 0;
  /*rtl:ignore*/
  margin-right: 1rem;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *.alignleft,
  .entry .entry-summary > *.alignleft {
    max-width: calc(4 * (100vw / 12));
    /*rtl:ignore*/
    margin-right: calc(2 * 1rem);
  }
}

.entry .entry-content > *.alignright,
.entry .entry-summary > *.alignright {
  /*rtl:ignore*/
  float: right;
  max-width: calc(5 * (100vw / 12));
  margin-top: 0;
  margin-right: 0;
  /*rtl:ignore*/
  margin-left: 1rem;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *.alignright,
  .entry .entry-summary > *.alignright {
    max-width: calc(4 * (100vw / 12));
    margin-right: 0;
    /*rtl:ignore*/
    margin-left: calc(2 * 1rem);
  }
}

.entry .entry-content > *.aligncenter,
.entry .entry-summary > *.aligncenter {
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *.aligncenter,
  .entry .entry-summary > *.aligncenter {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content > *.aligncenter,
  .entry .entry-summary > *.aligncenter {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content > *.aligncenter,
  .entry .entry-summary > *.aligncenter {
    margin-left: 0;
    margin-right: 0;
  }
}

/*
 * Unset nested content selector styles
 * - Prevents layout styles from cascading too deeply
 * - helps with plugin compatibility
 */
.entry .entry-content .entry-content,
.entry .entry-content .entry-summary,
.entry .entry-content .entry,
.entry .entry-summary .entry-content,
.entry .entry-summary .entry-summary,
.entry .entry-summary .entry {
  margin: inherit;
  max-width: inherit;
  padding: inherit;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .entry-content,
  .entry .entry-content .entry-summary,
  .entry .entry-content .entry,
  .entry .entry-summary .entry-content,
  .entry .entry-summary .entry-summary,
  .entry .entry-summary .entry {
    margin: inherit;
    max-width: inherit;
    padding: inherit;
  }
}

.entry .entry-content p.has-background {
  padding: 20px 30px;
}

.entry .entry-content .wp-block-audio {
  width: 100%;
}

.entry .entry-content .wp-block-audio audio {
  width: 100%;
}

.entry .entry-content .wp-block-audio.alignleft audio,
.entry .entry-content .wp-block-audio.alignright audio {
  max-width: 198px;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-audio.alignleft audio,
  .entry .entry-content .wp-block-audio.alignright audio {
    max-width: 384px;
  }
}

@media only screen and (min-width: 1379px) {
  .entry .entry-content .wp-block-audio.alignleft audio,
  .entry .entry-content .wp-block-audio.alignright audio {
    max-width: 385.44px;
  }
}

.entry .entry-content .wp-block-video video {
  width: 100%;
}

.entry .entry-content .wp-block-button .wp-block-button__link {
  transition: background 150ms ease-in-out;
  border: none;
  font-size: 0.88889em;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  line-height: 1.2;
  box-sizing: border-box;
  font-weight: bold;
  text-decoration: none;
  padding: 0.76rem 1rem;
  outline: none;
  outline: none;
}

.entry .entry-content .wp-block-button .wp-block-button__link:not(.has-background) {
  background-color: #0073aa;
}

.entry .entry-content .wp-block-button .wp-block-button__link:not(.has-text-color) {
  color: white;
}

.entry .entry-content .wp-block-button .wp-block-button__link:hover {
  color: white;
  background: #111;
  cursor: pointer;
}

.entry .entry-content .wp-block-button .wp-block-button__link:focus {
  color: white;
  background: #111;
  outline: thin dotted;
  outline-offset: -4px;
}

.entry .entry-content .wp-block-button:not(.is-style-squared) .wp-block-button__link {
  border-radius: 5px;
}

.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link,
.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus,
.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active {
  transition: all 150ms ease-in-out;
  border-width: 2px;
  border-style: solid;
}

.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background),
.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus:not(.has-background),
.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active:not(.has-background) {
  background: transparent;
}

.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color),
.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus:not(.has-text-color),
.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active:not(.has-text-color) {
  color: #0073aa;
  border-color: currentColor;
}

.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover {
  color: white;
  border-color: #111;
}

.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover:not(.has-background) {
  color: #111;
}

.entry .entry-content .wp-block-archives,
.entry .entry-content .wp-block-categories,
.entry .entry-content .wp-block-latest-posts {
  padding: 0;
  list-style: none;
}

.entry .entry-content .wp-block-archives li,
.entry .entry-content .wp-block-categories li,
.entry .entry-content .wp-block-latest-posts li {
  color: #767676;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: calc(22px * 1.125);
  font-weight: bold;
  line-height: 1.2;
  padding-bottom: 0.75rem;
}

.entry .entry-content .wp-block-archives li.menu-item-has-children, .entry .entry-content .wp-block-archives li:last-child,
.entry .entry-content .wp-block-categories li.menu-item-has-children,
.entry .entry-content .wp-block-categories li:last-child,
.entry .entry-content .wp-block-latest-posts li.menu-item-has-children,
.entry .entry-content .wp-block-latest-posts li:last-child {
  padding-bottom: 0;
}

.entry .entry-content .wp-block-archives li a,
.entry .entry-content .wp-block-categories li a,
.entry .entry-content .wp-block-latest-posts li a {
  text-decoration: none;
}

.entry .entry-content .wp-block-archives.aligncenter,
.entry .entry-content .wp-block-categories.aligncenter {
  text-align: center;
}

.entry .entry-content .wp-block-categories ul {
  padding-top: 0.75rem;
}

.entry .entry-content .wp-block-categories li ul {
  list-style: none;
  padding-left: 0;
}

.entry .entry-content .wp-block-categories ul {
  counter-reset: submenu;
}

.entry .entry-content .wp-block-categories ul > li > a::before {
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
  font-weight: normal;
  content: "– " counters(submenu, "– ", none);
  counter-increment: submenu;
}

.entry .entry-content .wp-block-latest-posts.is-grid li {
  border-top: 2px solid #ccc;
  padding-top: 1rem;
  margin-bottom: 2rem;
}

.entry .entry-content .wp-block-latest-posts.is-grid li a:after {
  content: '';
}

.entry .entry-content .wp-block-latest-posts.is-grid li:last-child {
  margin-bottom: auto;
}

.entry .entry-content .wp-block-latest-posts.is-grid li:last-child a:after {
  content: '';
}

.entry .entry-content .wp-block-preformatted {
  font-size: 0.71111em;
  line-height: 1.8;
  padding: 1rem;
}

.entry .entry-content .wp-block-verse {
  font-family: "NonBreakingSpaceOverride", "Hoefler Text", "Baskerville Old Face", Garamond, "Times New Roman", serif;
  font-size: 22px;
  line-height: 1.8;
}

.entry .entry-content .has-drop-cap:not(:focus):first-letter {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 3.375em;
  line-height: 1;
  font-weight: bold;
  margin: 0 0.25em 0 0;
}

.entry .entry-content .wp-block-pullquote {
  border-color: transparent;
  border-width: 2px;
  padding: 1rem;
}

.entry .entry-content .wp-block-pullquote blockquote {
  color: #111;
  border: none;
  margin-top: calc(4 * 1rem);
  margin-bottom: calc(4.33 * 1rem);
  margin-right: 0;
  padding-left: 0;
}

.entry .entry-content .wp-block-pullquote p {
  font-size: 1.6875em;
  font-style: italic;
  line-height: 1.3;
  margin-bottom: 0.5em;
  margin-top: 0.5em;
}

.entry .entry-content .wp-block-pullquote p em {
  font-style: normal;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-pullquote p {
    font-size: 2.25em;
  }
}

.entry .entry-content .wp-block-pullquote cite {
  display: inline-block;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  line-height: 1.6;
  text-transform: none;
  color: #767676;
  /*
			 * This requires a rem-based font size calculation instead of our normal em-based one,
			 * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs.
			 */
  font-size: calc(1rem / (1.25 * 1.125));
}

.entry .entry-content .wp-block-pullquote.alignleft, .entry .entry-content .wp-block-pullquote.alignright {
  width: 100%;
  padding: 0;
}

.entry .entry-content .wp-block-pullquote.alignleft blockquote, .entry .entry-content .wp-block-pullquote.alignright blockquote {
  margin: 1rem 0;
  padding: 0;
  text-align: left;
  max-width: 100%;
}

.entry .entry-content .wp-block-pullquote.alignleft blockquote p:first-child, .entry .entry-content .wp-block-pullquote.alignright blockquote p:first-child {
  margin-top: 0;
}

.entry .entry-content .wp-block-pullquote.is-style-solid-color {
  background-color: #0073aa;
  padding-left: 0;
  padding-right: 0;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-pullquote.is-style-solid-color {
    padding-left: 10%;
    padding-right: 10%;
  }
}

.entry .entry-content .wp-block-pullquote.is-style-solid-color p {
  font-size: 1.6875em;
  line-height: 1.3;
  margin-bottom: 0.5em;
  margin-top: 0.5em;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-pullquote.is-style-solid-color p {
    font-size: 2.25em;
  }
}

.entry .entry-content .wp-block-pullquote.is-style-solid-color a {
  color: #fff;
}

.entry .entry-content .wp-block-pullquote.is-style-solid-color cite {
  color: inherit;
}

.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote {
  max-width: 100%;
  color: #fff;
  padding-left: 0;
  margin-left: 1rem;
  margin-right: 1rem;
}

.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-text-color p,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-text-color a, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-white-color {
  color: inherit;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote {
    margin-left: 0;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignright, .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignleft {
    padding: 1rem calc(2 * 1rem);
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignfull {
    padding-left: calc(10% + 58px + (2 * 1rem));
    padding-right: calc(10% + 58px + (2 * 1rem));
  }
}

.entry .entry-content .wp-block-quote:not(.is-large), .entry .entry-content .wp-block-quote:not(.is-style-large) {
  border-left: 2px solid #0073aa;
  padding-top: 0;
  padding-bottom: 0;
}

.entry .entry-content .wp-block-quote p {
  font-size: 1em;
  font-style: normal;
  line-height: 1.8;
}

.entry .entry-content .wp-block-quote cite {
  /*
			 * This requires a rem-based font size calculation instead of our normal em-based one,
			 * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs.
			 */
  font-size: calc(1rem / (1.25 * 1.125));
}

.entry .entry-content .wp-block-quote.is-large, .entry .entry-content .wp-block-quote.is-style-large {
  margin: 1rem 0;
  padding: 0;
  border-left: none;
}

.entry .entry-content .wp-block-quote.is-large p, .entry .entry-content .wp-block-quote.is-style-large p {
  font-size: 1.6875em;
  line-height: 1.4;
  font-style: italic;
}

.entry .entry-content .wp-block-quote.is-large cite,
.entry .entry-content .wp-block-quote.is-large footer, .entry .entry-content .wp-block-quote.is-style-large cite,
.entry .entry-content .wp-block-quote.is-style-large footer {
  /*
				 * This requires a rem-based font size calculation instead of our normal em-based one,
				 * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs.
				 */
  font-size: calc(1rem / (1.25 * 1.125));
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-quote.is-large, .entry .entry-content .wp-block-quote.is-style-large {
    margin: 1rem 0;
    padding: 1rem 0;
  }
  .entry .entry-content .wp-block-quote.is-large p, .entry .entry-content .wp-block-quote.is-style-large p {
    font-size: 1.6875em;
  }
}

.entry .entry-content .wp-block-image {
  max-width: 100%;
}

.entry .entry-content .wp-block-image img {
  display: block;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-image .aligncenter {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content .wp-block-image .aligncenter {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-image .aligncenter {
    margin: 0;
    width: calc(8 * (100vw / 12) - 28px);
  }
  .entry .entry-content .wp-block-image .aligncenter img {
    margin: 0 auto;
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content .wp-block-image .aligncenter {
    width: calc(6 * (100vw / 12) - 28px);
  }
  .entry .entry-content .wp-block-image .aligncenter img {
    margin: 0 auto;
  }
}

.entry .entry-content .wp-block-image.alignfull img {
  width: 100vw;
  max-width: calc( 100% + (2 * 1rem));
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-image.alignfull img {
    max-width: calc( 125% + 150px);
    margin-left: auto;
    margin-right: auto;
  }
}

.entry .entry-content .wp-block-cover-image,
.entry .entry-content .wp-block-cover {
  position: relative;
  min-height: 430px;
  padding: 1rem;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-cover-image,
  .entry .entry-content .wp-block-cover {
    padding: 1rem 10%;
  }
}

.entry .entry-content .wp-block-cover-image .wp-block-cover-image-text,
.entry .entry-content .wp-block-cover-image .wp-block-cover-text,
.entry .entry-content .wp-block-cover-image h2,
.entry .entry-content .wp-block-cover .wp-block-cover-image-text,
.entry .entry-content .wp-block-cover .wp-block-cover-text,
.entry .entry-content .wp-block-cover h2 {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-size: 1.6875em;
  font-weight: bold;
  line-height: 1.25;
  padding: 0;
  color: #fff;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover-image .wp-block-cover-text,
  .entry .entry-content .wp-block-cover-image h2,
  .entry .entry-content .wp-block-cover .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover .wp-block-cover-text,
  .entry .entry-content .wp-block-cover h2 {
    font-size: 2.25em;
    max-width: 100%;
  }
}

.entry .entry-content .wp-block-cover-image.alignleft, .entry .entry-content .wp-block-cover-image.alignright,
.entry .entry-content .wp-block-cover.alignleft,
.entry .entry-content .wp-block-cover.alignright {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-cover-image.alignleft, .entry .entry-content .wp-block-cover-image.alignright,
  .entry .entry-content .wp-block-cover.alignleft,
  .entry .entry-content .wp-block-cover.alignright {
    padding: 1rem calc(2 * 1rem);
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text,
  .entry .entry-content .wp-block-cover-image.alignfull h2,
  .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text,
  .entry .entry-content .wp-block-cover.alignfull h2 {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text,
  .entry .entry-content .wp-block-cover-image.alignfull h2,
  .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text,
  .entry .entry-content .wp-block-cover.alignfull h2 {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-cover-image.alignfull,
  .entry .entry-content .wp-block-cover.alignfull {
    padding-left: calc(10% + 58px + (2 * 1rem));
    padding-right: calc(10% + 58px + (2 * 1rem));
  }
  .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text,
  .entry .entry-content .wp-block-cover-image.alignfull h2,
  .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text,
  .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text,
  .entry .entry-content .wp-block-cover.alignfull h2 {
    padding: 0;
  }
}

.entry .entry-content .wp-block-gallery {
  list-style-type: none;
  padding-left: 0;
}

.entry .entry-content .wp-block-gallery .blocks-gallery-image:last-child,
.entry .entry-content .wp-block-gallery .blocks-gallery-item:last-child {
  margin-bottom: 16px;
}

.entry .entry-content .wp-block-gallery figcaption a {
  color: #fff;
}

.entry .entry-content .wp-block-audio figcaption,
.entry .entry-content .wp-block-video figcaption,
.entry .entry-content .wp-block-image figcaption,
.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption,
.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption {
  font-size: 0.71111em;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  line-height: 1.6;
  margin: 0;
  padding: 0.5rem;
  text-align: center;
}

.entry .entry-content .wp-block-separator,
.entry .entry-content hr {
  background-color: #767676;
  border: 0;
  height: 2px;
  margin-bottom: 2rem;
  margin-top: 2rem;
  max-width: 2.25em;
  text-align: left;
  /* Remove duplicate rule-line when a separator
		 * is followed by an H1, or H2 */
}

.entry .entry-content .wp-block-separator.is-style-wide,
.entry .entry-content hr.is-style-wide {
  max-width: 100%;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-separator.is-style-wide,
  .entry .entry-content hr.is-style-wide {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content .wp-block-separator.is-style-wide,
  .entry .entry-content hr.is-style-wide {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

.entry .entry-content .wp-block-separator.is-style-dots,
.entry .entry-content hr.is-style-dots {
  max-width: 100%;
  background-color: inherit;
  border: inherit;
  height: inherit;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-separator.is-style-dots,
  .entry .entry-content hr.is-style-dots {
    max-width: calc(8 * (100vw / 12) - 28px);
  }
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content .wp-block-separator.is-style-dots,
  .entry .entry-content hr.is-style-dots {
    max-width: calc(6 * (100vw / 12) - 28px);
  }
}

.entry .entry-content .wp-block-separator.is-style-dots:before,
.entry .entry-content hr.is-style-dots:before {
  color: #767676;
  font-size: 1.6875em;
  letter-spacing: 0.88889em;
  padding-left: 0.88889em;
}

.entry .entry-content .wp-block-separator + h1:before,
.entry .entry-content .wp-block-separator + h2:before,
.entry .entry-content hr + h1:before,
.entry .entry-content hr + h2:before {
  display: none;
}

.entry .entry-content .wp-block-embed-twitter {
  word-break: break-word;
}

.entry .entry-content .wp-block-table th,
.entry .entry-content .wp-block-table td {
  border-color: #767676;
}

.entry .entry-content .wp-block-file {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
}

.entry .entry-content .wp-block-file .wp-block-file__button {
  display: table;
  transition: background 150ms ease-in-out;
  border: none;
  border-radius: 5px;
  background: #0073aa;
  font-size: 22px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  line-height: 1.2;
  text-decoration: none;
  font-weight: bold;
  padding: 0.75rem 1rem;
  color: #fff;
  margin-left: 0;
  margin-top: calc(0.75 * 1rem);
}

@media only screen and (min-width: 1168px) {
  .entry .entry-content .wp-block-file .wp-block-file__button {
    font-size: 22px;
    padding: 0.875rem 1.5rem;
  }
}

.entry .entry-content .wp-block-file .wp-block-file__button:hover {
  background: #111;
  cursor: pointer;
}

.entry .entry-content .wp-block-file .wp-block-file__button:focus {
  background: #111;
  outline: thin dotted;
  outline-offset: -4px;
}

.entry .entry-content .wp-block-code {
  border-radius: 0;
}

.entry .entry-content .wp-block-code code {
  font-size: 1.125em;
  white-space: pre-wrap;
  word-break: break-word;
}

.entry .entry-content .wp-block-columns.alignfull {
  padding-left: 1rem;
  padding-right: 1rem;
}

@media only screen and (min-width: 600px) {
  .entry .entry-content .wp-block-columns {
    flex-wrap: nowrap;
  }
}

@media only screen and (min-width: 768px) {
  .entry .entry-content .wp-block-columns .wp-block-column > *:first-child {
    margin-top: 0;
  }
  .entry .entry-content .wp-block-columns .wp-block-column > *:last-child {
    margin-bottom: 0;
  }
  .entry .entry-content .wp-block-columns[class*='has-'] > * {
    margin-right: 1rem;
  }
  .entry .entry-content .wp-block-columns[class*='has-'] > *:last-child {
    margin-right: 0;
  }
  .entry .entry-content .wp-block-columns.alignfull,
  .entry .entry-content .wp-block-columns.alignfull .wp-block-column {
    padding-left: calc(2 * 1rem);
    padding-right: calc(2 * 1rem);
  }
}

.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  font-weight: bold;
}

.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta .wp-block-latest-comments__comment-date {
  font-weight: normal;
}

.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment,
.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-date,
.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p {
  font-size: inherit;
}

.entry .entry-content .wp-block-latest-comments.has-dates .wp-block-latest-comments__comment-date {
  font-size: 0.71111em;
}

.entry .entry-content .has-small-font-size {
  font-size: 0.88889em;
}

.entry .entry-content .has-normal-font-size {
  font-size: 1.125em;
}

.entry .entry-content .has-large-font-size {
  font-size: 1.6875em;
}

.entry .entry-content .has-huge-font-size {
  font-size: 2.25em;
}

.entry .entry-content .has-primary-background-color,
.entry .entry-content .has-secondary-background-color,
.entry .entry-content .has-dark-gray-background-color,
.entry .entry-content .has-light-gray-background-color {
  color: #fff;
}

.entry .entry-content .has-primary-background-color p,
.entry .entry-content .has-primary-background-color h1,
.entry .entry-content .has-primary-background-color h2,
.entry .entry-content .has-primary-background-color h3,
.entry .entry-content .has-primary-background-color h4,
.entry .entry-content .has-primary-background-color h5,
.entry .entry-content .has-primary-background-color h6,
.entry .entry-content .has-primary-background-color a,
.entry .entry-content .has-secondary-background-color p,
.entry .entry-content .has-secondary-background-color h1,
.entry .entry-content .has-secondary-background-color h2,
.entry .entry-content .has-secondary-background-color h3,
.entry .entry-content .has-secondary-background-color h4,
.entry .entry-content .has-secondary-background-color h5,
.entry .entry-content .has-secondary-background-color h6,
.entry .entry-content .has-secondary-background-color a,
.entry .entry-content .has-dark-gray-background-color p,
.entry .entry-content .has-dark-gray-background-color h1,
.entry .entry-content .has-dark-gray-background-color h2,
.entry .entry-content .has-dark-gray-background-color h3,
.entry .entry-content .has-dark-gray-background-color h4,
.entry .entry-content .has-dark-gray-background-color h5,
.entry .entry-content .has-dark-gray-background-color h6,
.entry .entry-content .has-dark-gray-background-color a,
.entry .entry-content .has-light-gray-background-color p,
.entry .entry-content .has-light-gray-background-color h1,
.entry .entry-content .has-light-gray-background-color h2,
.entry .entry-content .has-light-gray-background-color h3,
.entry .entry-content .has-light-gray-background-color h4,
.entry .entry-content .has-light-gray-background-color h5,
.entry .entry-content .has-light-gray-background-color h6,
.entry .entry-content .has-light-gray-background-color a {
  color: #fff;
}

.entry .entry-content .has-white-background-color {
  color: #111;
}

.entry .entry-content .has-white-background-color p,
.entry .entry-content .has-white-background-color h1,
.entry .entry-content .has-white-background-color h2,
.entry .entry-content .has-white-background-color h3,
.entry .entry-content .has-white-background-color h4,
.entry .entry-content .has-white-background-color h5,
.entry .entry-content .has-white-background-color h6,
.entry .entry-content .has-white-background-color a {
  color: #111;
}

.entry .entry-content .has-primary-background-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-primary-background-color {
  background-color: #0073aa;
}

.entry .entry-content .has-secondary-background-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-secondary-background-color {
  background-color: #005177;
}

.entry .entry-content .has-dark-gray-background-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-dark-gray-background-color {
  background-color: #111;
}

.entry .entry-content .has-light-gray-background-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-light-gray-background-color {
  background-color: #767676;
}

.entry .entry-content .has-white-background-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-white-background-color {
  background-color: #FFF;
}

.entry .entry-content .has-primary-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color p {
  color: #0073aa;
}

.entry .entry-content .has-secondary-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color p {
  color: #005177;
}

.entry .entry-content .has-dark-gray-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color p {
  color: #111;
}

.entry .entry-content .has-light-gray-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color p {
  color: #767676;
}

.entry .entry-content .has-white-color,
.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-white-color {
  color: #FFF;
}

/* Media */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

embed,
iframe,
object {
  max-width: 100%;
}

.custom-logo-link {
  display: inline-block;
}

.avatar {
  border-radius: 100%;
  display: block;
  height: calc(2.25 * 1rem);
  min-height: inherit;
  width: calc(2.25 * 1rem);
}

svg {
  transition: fill 120ms ease-in-out;
  fill: currentColor;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
  margin-bottom: calc(1.5 * 1rem);
}

@media only screen and (min-width: 768px) {
  .wp-caption.aligncenter {
    position: relative;
    left: calc( calc(8 * (100vw / 12) - 28px) / 2);
    transform: translateX(-50%);
  }
}

@media only screen and (min-width: 1168px) {
  .wp-caption.aligncenter {
    left: calc( calc(6 * (100vw / 12) - 28px) / 2);
  }
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption-text {
  color: #767676;
  font-size: 0.71111em;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  line-height: 1.6;
  margin: 0;
  padding: 0.5rem;
  text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin-bottom: calc(1.5 * 1rem);
}

.gallery-item {
  display: inline-block;
  margin-right: 16px;
  margin-bottom: 16px;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  max-width: calc((100% - 16px * 1) / 2);
}

.gallery-columns-2 .gallery-item:nth-of-type(2n+2) {
  margin-right: 0;
}

.gallery-columns-3 .gallery-item {
  max-width: calc((100% - 16px * 2) / 3);
}

.gallery-columns-3 .gallery-item:nth-of-type(3n+3) {
  margin-right: 0;
}

.gallery-columns-4 .gallery-item {
  max-width: calc((100% - 16px * 3) / 4);
}

.gallery-columns-4 .gallery-item:nth-of-type(4n+4) {
  margin-right: 0;
}

.gallery-columns-5 .gallery-item {
  max-width: calc((100% - 16px * 4) / 5);
}

.gallery-columns-5 .gallery-item:nth-of-type(5n+5) {
  margin-right: 0;
}

.gallery-columns-6 .gallery-item {
  max-width: calc((100% - 16px * 5) / 6);
}

.gallery-columns-6 .gallery-item:nth-of-type(6n+6) {
  margin-right: 0;
}

.gallery-columns-7 .gallery-item {
  max-width: calc((100% - 16px * 6) / 7);
}

.gallery-columns-7 .gallery-item:nth-of-type(7n+7) {
  margin-right: 0;
}

.gallery-columns-8 .gallery-item {
  max-width: calc((100% - 16px * 7) / 8);
}

.gallery-columns-8 .gallery-item:nth-of-type(8n+8) {
  margin-right: 0;
}

.gallery-columns-9 .gallery-item {
  max-width: calc((100% - 16px * 8) / 9);
}

.gallery-columns-9 .gallery-item:nth-of-type(9n+9) {
  margin-right: 0;
}

.gallery-item:last-of-type {
  padding-right: 0;
}

.gallery-caption {
  display: block;
  font-size: 0.71111em;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  line-height: 1.6;
  margin: 0;
  padding: 0.5rem;
}

.gallery-item > div > a {
  display: block;
  line-height: 0;
  box-shadow: 0 0 0 0 transparent;
}

.gallery-item > div > a:focus {
  box-shadow: 0 0 0 2px #0073aa;
}



/**追加CSS**/

/**追加CSS PC**/

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing:    border-box;
  box-sizing:         border-box;
}

html {
  font-size: 100%;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

html,
button,
input,
select,
textarea {
  font-family: 'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
}

body {
color: #4d4d4d;
font-size: 14px;
line-height: 1.4;
margin: 0px;
letter-spacing: .1em;
}

body {
background-color: #FFFFFF;
}

p {
  margin: 0px;
}

a:link {
  color: #004CCA;
}

a:visited {
  color: #6219DB;
}

a:hover {
  color: #048ADE;
  text-decoration: none;
}

a:active {
  color: #048ADE;
  text-decoration: none;
}

img {
  max-width: 100%;
}

ul {
padding: 0px;
list-style: none;
margin:0;
}

h1 {
    margin:0;
}

h2 {
    margin:0;
}

.oh {
    overflow: hidden;
}

.L {
    float: left;
}

.R {
    float: right;
}

.sp {
    display: none;
}

.pr {
  position: relative;
}

#menu {
    display: none;
}

.flex {
  flex-wrap: wrap;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
}
.flex-sb {
  flex-wrap: wrap;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  justify-content: space-between;
}

.wrap {
    width: 980px;
    margin: 0 auto;
    position: relative;
}

.singleFlexSB {
    display: flex;
    justify-content: space-between;
}

.singleContent {
    width: 740px;
}

.singleSidebar {
    width: 240px;
}

.tabContents {
  display: none;
  margin-bottom: 50px;
}
.tabContents.active {
  display: block;
}

section.main_visual {
  position: relative;
  z-index: 2;
  height: 100vh;
}

section.main_visual:before{
  content: "";
  display: block;
  background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #8cc63f 50.5%) no-repeat top left/100% 100%;
  position: absolute;
  left: 0;
  top: 0;
  width: 20%;
  height: 50vh;
  z-index: 10000;
}

section.main_visual:after{
  content: "";
  display: block;
  background: linear-gradient(to bottom right, rgba(255,255,255,0) 50%, #0071bc 50.5%) no-repeat top left/100% 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 25%;
  height: 100%;
  z-index: 10000;
}

section.main_visual .sankaku_acc{
  background: linear-gradient(to bottom left, rgba(255,255,255,0) 50%, rgba(255,255,255,0.5) 50.5%) no-repeat top left/100% 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 15%;
  height: 80%;
  z-index: 8000;
}

section.main_visual .bx-wrapper {
  border: none;
  box-shadow: none;
  margin: 0;
  background: none;
}

main#top_page section.main_visual .wrap {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  height: 100%;
  z-index: 1000;
}

a.btn_recruit {
    display: block;
    position: static;
    width: 185px ;
    height: 45px;
    background-color: #fff;
    margin: 45px auto 0;
    color: #0071bc ;
    font-size: 17px;
    background-image: url(/wp-content/uploads/2020/11/arrow02.svg);
    background-repeat: no-repeat;
    background-size: 5px;
    background-position: right 10px center;
    border-radius: 10px;
    line-height: 45px;
    text-align: center;
    transition: .3s;
}

a.btn_recruit:hover {
    box-shadow: 5px 5px 5px rgba(0,0,0,0.2);
    letter-spacing: 4px;
}

a.btn_recruit {

}

section.main_visual h2 {
  position: absolute;
  right: 50px;
  bottom: 30px;
  z-index: 100000;
}

section.main_visual .bx-wrapper .bx-pager, section.main_visual .bx-wrapper .bx-controls-auto {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 980px;
  text-align: right;
  height: 30px;
  margin-bottom: 50px;
  z-index: 2;
}

section.main_visual .bx-wrapper .bx-pager.bx-default-pager a:hover,
section.main_visual .bx-wrapper .bx-pager.bx-default-pager a.active,
section.main_visual .bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #eb1932;
}

section.main_visual .bx-wrapper .bx-pager.bx-default-pager a {
  background: #fff;
  margin: 0 20px;
  position: relative;
  transition: .3s;
}

section.main_visual .bx-wrapper .bx-pager.bx-default-pager a:after {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  background: #fff;
  position: absolute;
  right: -40px;
  top: 5px;
}

section.main_visual .bx-wrapper .bx-pager .bx-pager-item:last-child a:after {
  display: none;
}

.show {
  opacity: 1!important;
}

.out {
  opacity: 0!important;
}

.outEnd {
  display: none;
}

section.main_visual .slider_image {
  height: 100vh;
  overflow: hidden;
}

section.main_visual .slider_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

header.main_header {
  height: 70px;
  align-items: center;
  background: #fff;
  position: relative;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
}

.home header.main_header .fl_wrap{
  justify-content: flex-end;
}

header.main_header .fl_wrap {
  align-items: center;
}

header.main_header .wrap{
  position: unset;
}

.home header.main_header .headLogo{
  position: absolute;
  left: 50px;
  top: 10px;
}

header.main_header nav ul li {
  padding: 0 40px;
  position: relative;
}

header.main_header nav ul li:before {
  content: "";
  display: block;
  width: 1px;
  height: 20px;
  background: #4d4d4d;
  position: absolute;
  left: 0;
  top: 0;
}

header.main_header nav ul li:last-child::after {
  content: "";
  display: block;
  width: 1px;
  height: 20px;
  background: #4d4d4d;
  position: absolute;
  right: 0;
  top: 0;
}

main#top_page .wrap {
  position: relative;
  z-index: 2;
}

section.top_mission .body_parts {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.body_parts {
  z-index: 1;
}

section.sec_interview {
  position: relative;
  padding-bottom: 60px;
}

section.sec_interview p.title_en{
  position: absolute;
  bottom: 0;
  right: 50px;
  z-index: 4;
}

section.sec_interview .wrap {
  position: relative;
  z-index: 2;
}

section.sec_interview .body_parts.type01 {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  margin-top: -20vw;
}

section.sec_interview .body_parts.type01 img {
  width: 100vw;
  margin-left: auto;
  display: block;
}

section.sec_interview .body_parts.type02 {
  position: absolute;
  right: 0;
  bottom: -25vw;
  width: 15vw;
}

section.sec_photo {
  position: relative;
}

section.sec_photo .body_parts.type01 {
  position: absolute;
  left: 0;
  top: 0;
}

section.sec_photo .wrap {
  position: relative;
  z-index: 2;
}

section.top_mission{
  padding-bottom: 250px;
  position: relative;
}

section.top_mission p.title_en{
  position: absolute;
  right: 50px;
  bottom: 10px;
}

section.top_mission .fl_wrap {
  align-items: center;
}

section.top_mission .textArea {
  width: 440px;
}

section.top_mission .textArea02 {
  width: 440px;
  max-width: 100%;
}

.history_area{
  position: relative;
  padding: 150px 0;
}

.history_area .imageArea02{
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
}

.history_area .imageArea02 img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.top_mission .textArea .title .acc {
  margin-left: 10px;
  margin-bottom: 10px;
}

section.top_mission .title h2 span {
  display: block;
  font-size: 26px;
  margin-bottom: .5em;
  letter-spacing: .1em;
  font-weight: 800;
  line-height: 1.5;
}

section.top_mission .textArea p {
  line-height: 2;
}

section.top_mission .imageArea {
  width: 420px;
  padding-top: 180px;
}

section.top_mission .imageArea .image {
  width: 380px;
  height: 380px;
  border-radius: 100%;
  overflow: hidden;
}

section.top_mission .imageArea .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.top_mission .imageArea .name{
  width: 195px;
  height: 195px;
  background: #0071bc;
  border-radius: 100%;
  color: #fff;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: -50px;
  bottom: -50px;
}

section.top_mission .imageArea .name p {
  text-align: center;
  line-height: 1.5;
}

section.top_mission .imageArea .name p span {
  display: block;
  font-size: 27px;
}

.common_title {
  text-align: center;
  margin-bottom: 50px;
}

.common_title h2 {
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 3px;
}

.common_title h2 span {
  font-size: 16px;
  color: #8cc63f;
  display: inline-block;
}

.common_title h2 img {
  margin-bottom: 5px;
}

p.sec_text {
  width: 400px;
  margin: 0 auto 50px auto;
  line-height: 2.2;
}

section.top_business .common_title h2 img {
  width: 200px;
}

.common_title.acc_right .acc {
  margin-left: 298px;
}

section.top_works .common_title h2 img {
  width: 142px;
}

.common_title.acc_left .acc {
  margin-right: 350px;
}

a.common_more {
  display: block;
  width: 210px;
  line-height: 40px;
  background: #4d4d4d;
  color: #fff;
  text-align: center;
  padding-right: 20px;
  position: relative;
  margin: 0 auto;
  border-radius: 5px;
}

a.common_more:before {
  content: "";
  display: block;
  width: 5px;
  height: 10px;
  background: url(/wp-content/uploads/2020/11/arrow.svg) no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 10px;
  top: calc( 50% - 5px );
}

section.top_business{
  background: url(/wp-content/uploads/2020/11/section_bg01.png) no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 100px;
  padding-bottom: 150px;
  position: relative;
}

section.top_business p.title_en{
  position: absolute;
  left: 50px;
  bottom: -45px;
}

section.top_business p.sec_text{
  width: 600px;
  max-width: 100%;
}

section.top_business ul{
  justify-content: center;
  margin-bottom: 50px;
}

section.top_business ul li{
  width: 210px;
  height: 210px;
}

section.top_business ul li:nth-child(2){
  margin: 0 50px;
}

section.top_business ul li a{
  display: block;
  height: 100%;
  border-radius: 100%;
  position: relative;
  overflow: hidden;
  font-size: 13px;
  color: #fff;
  font-weight: 600;
  text-align: center;
}

section.top_business ul li a span.title{
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 5px 40px 20px 40px;
}

section.top_business ul li.type_a span.title,
section.top_business ul li.type_b span.title{
  background: #8cc63f;
}

section.top_business ul li.type_c span.title{
  background: #0071bc;
}

section.top_business ul li.type_a a{
  background: url(/wp-content/uploads/2020/11/business_icon.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

section.top_business ul li.type_b a{
  background: url(/wp-content/uploads/2020/11/business_icon02.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

section.top_business ul li.type_c a{
  background: url(/wp-content/uploads/2020/11/business_img03.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

section.top_works ul.tab {
  justify-content: center;
  margin-bottom: 50px;
}

section.top_works ul.tab li a {
  width: 110px;
  line-height: 32px;
  display: block;
  background: #fff;
  border: 1px solid #4d4d4d;
  text-align: center;
  color: #4d4d4d;
  margin: 0 4px;
  font-weight: bold;
  font-size: 13px;
  letter-spacing: normal;
}

section.top_works ul.tab li.active a {
  background: #0270bb;
  border: 1px solid #0270bb;
  color: #fff;
}

section.top_works .tabContents .fl_wrap {
  width: calc( 324px * 3 + 6px );
  margin: 0 auto;
}

section.top_works .tabContents .works_box {
  padding: 1px;
}

.home section.top_works .tabContents .works_box:nth-child( n + 7 ) {
  display: none;
}

section.top_works .tabContents .works_box a {
  width: 324px;
  height: 316px;
  position: relative;
  display: block;
}

section.top_works .tabContents .works_box a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

section.top_works .tabContents .works_box a span {
  width: 100%;
  background: rgba(0,0,0,0.9);
  color: #fff;
  font-size: 14px;
  position: absolute;
  left: 0;
  bottom: 0;
  padding: .5em 1em;
  font-weight: bold;
  height: 70px;
  align-items: center;
}

section.top_works {
  position: relative;
  padding: 150px 0 0;
}

section.top_works .body_parts.type01 {
  position: absolute;
  left: 0;
  top: 0;
}

section.top_works .body_parts.type02 {
  position: absolute;
  right: 0;
  top: 0;
  width: 20vw;
}

section.top_recruit {
  position: relative;
  z-index: 2;
  padding: 300px 0 300px 0;
}

section.top_recruit .recruit_btnBig .acc {
  position: absolute;
  left: calc( 50% - 11px );
  top: -22px;
}

section.top_recruit .recruit_btnBig {
  position: relative;
}

section.top_recruit .recruit_btnBig a {
  display: block;
  background: #8cc63f;
  height: 160px;
  text-align: center;
  color: #fff;
  padding-top: 50px;
  position: relative;
}

section.top_recruit .recruit_btnBig a:before {
  content: "";
  display: block;
  width: 261px;
  height: 138px;
  background: url(/wp-content/uploads/2020/11/recruit_img.png) no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  left: -30px;
  top: -135px;
}

section.top_recruit .recruit_btnBig a span {
  display: block;
  margin-top: 5px;
}

section.top_company {
  position: relative;
  padding-bottom: 100px;
}

section.top_company .fl_wrap{
  margin-bottom: 30px;
}

section.top_company .body_parts {
  position: absolute;
  right: 0;
  top: 0;
}

section.top_company table {
  border: 1px solid #ccc;
  margin-bottom: 0;
}

section.top_company table th,
section.top_company table td {
  font-size: 13px;
  color: #000;
  text-align: left;
  border: 1px solid #ccc;
  padding: 1em;
}

section.top_company table th {
  background: #f2f2f2;
}

section.top_company table td {
  background: #fff;
}

section.top_company a.common_more {
  width: 260px;
}

section.top_company .mapArea {
  border: 1px solid #ccc;
  width: 49%;
}

section.top_company .mapArea iframe {
  width: 100%;
  height: 100%;
  display: block;
}

.mainWrap {
  overflow: hidden;
}

.pagetop {
  height: 300px;
  text-align: center;
  padding-top: 150px;
  position: relative;
  z-index: 2;
  margin-top: 5vw;
}

.page-id-107 .copyright:before{
  content: "";
  display: block;
  width: 100%;
  height: 250px;
    background-image: url(/wp-content/uploads/2020/11/section_bg02.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.home .pagetop {
    background-image: url(/wp-content/uploads/2020/11/section_bg02.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.copyright small{
  display: block;
  background: #4d4d4d;
  color: #fff;
  text-align: center;
  line-height: 32px;
  position: relative;
  z-index: 2;
}

.page_main.contact h1 img {
  width: 180px;
}

.page_main {
  height: 330px;
  background-size: cover!important;
  background-position: center!important;
  text-align: center;
  position: relative;
  align-items: flex-end;
  padding-bottom: 30px;
  padding-top: 200px;
}

.page_main.recruit {
  height: 100vh;
  padding-top: 0;
  position: relative;
  padding-top: 70px;
  padding-bottom: 0;
}

.page_main.recruit .bx-viewport{
  height: 100%!important;
}

.recruit_main_slide > div {
  height: calc( 100vh - 70px );
  background-size: cover;
  background-position: center;
}

.page_main.recruit .bx-wrapper {
  border: none;
  box-shadow: none;
  background: none;
  margin: 0;
  height: 100%;
}

.page_main.recruit > .wrap {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 0;
  z-index: 10;
}

.page_main.recruit video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
}

.page_main.recruit .wrap {
  height: 100%;
  padding-top: 120px;
  /* position: relative; */
  z-index: 2;
}

.page_main.recruit .fl_wrap {
  justify-content: flex-end;
  height: 100%;
  align-items: center;
}

.page_main.recruit:after {
    display: block;
    content: "";
    border-top: 485px solid transparent;
    border-left: 193px solid rgba(230,230,230,0.7);
    position: absolute;
    bottom: 0;
    left: 0;
}

.page_main.recruit:before {
  right: 0;
  left: auto;
  z-index: 2;
  display: block;
  width: 55%;
  background: no-repeat center/100% url(/wp-content/uploads/2020/11/recruit_h1_bg.png);
  content: "";
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
}

.page_main.recruit .titleArea {
  position: absolute;
  left: calc(-50vw + 530px);
  top: 85px;
}

.page_main.recruit .titleArea span.top {
    width: 300px;
    display: block;
    font-family: 'siteEnFont' ,sans-serif;
    font-size: 100px;
    line-height: 0;
    margin-bottom: 20px;
}

.page_main.recruit .titleArea span.under {
  width: 390px;
  display: block;
  font-family: 'siteEnFont' ,sans-serif;
}

.page_main.recruit .titleArea span.under img{
  display: block;
}

.page_main.recruit .titleArea span img {
  width: 100%;
}

.page_main.recruit .textArea {
  width: 40%;
  color: #fff;
  text-align: left;
}

.page_main.recruit .textArea h2 span {
  display: block;
  font-size: 16px;
}

.page_main.recruit .textArea h3 {
  font-size: 26px;
  margin: 40px 0;
  font-weight: 800;
  line-height: 1.7;
}

.page_main.recruit .textArea p {
  font-size: 14px;
  line-height: 2;
}

.page_main h1 {
  position: relative;
  z-index: 2;
  color: #fff;
  text-align: left;
}

.page_main h1 span.ja {
  font-size: 16px;
  display: block;
  margin-top: 10px;
    color: #fff;
    letter-spacing: 5px;
}

.page-template-page-business main#main.page-main {
  padding-top: 50px;
  display: block !important;
}

.page-template-page-business{
  background: url(/wp-content/uploads/2020/11/section_bg03.png)no-repeat;
  background-position: -20vw 88%;
  background-size: 120vw;
}

.business_page{
  padding-top: 50px;
}

.business_wrap {
  margin-bottom: 80px;
}

.business_wrap .imageArea {
  width: 460px;
  position: relative;
}

.business_wrap .imageArea:before{
  content: "";
  display: block;
  width: 120px;
  height: 120px;
  position: absolute;
  left: -40px;
  top: -40px;
  z-index: 2;
}

.business_wrap.type_a .imageArea:before{
  background: url(/wp-content/uploads/2020/11/business_icon.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

.business_wrap.type_b .imageArea:before{
  background: url(/wp-content/uploads/2020/11/business_icon02.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

.business_wrap.type_c .imageArea:before{
  background: url(/wp-content/uploads/2020/11/business_img03.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

.business_wrap .textArea {
  width: 480px;
}

.business_wrap .textArea h2 {
  font-size: 26px;
  margin-bottom: 1em;
}


.business_wrap .textArea p {
  font-size: 14px;
  line-height: 2;
}

.sec_history .dl_wrap {
  margin-bottom: 300px;
}

.sec_history dl {
  padding: 1.5em 0;
  border-bottom: 1px solid #ccc;
  margin: 0;
}

.sec_history dl:first-child {
  border-top: 1px solid #ccc;
}

.sec_history dl dt.date {
  width: 12%;
}

.sec_history dl dt.title {
  width: 66%;
}

.sec_history dl dd.type {
  width: 22%;
  margin: 0;
}

section.sec_welfare .fl_wrap {
    justify-content: space-between ;
    width: 780px;
    margin: 0 auto;
}

section.sec_welfare dl {
    width: 350px ;
    margin: 10px 0 60px;
    padding: 0px 0 0 40px;
    position: relative;
}

section.sec_welfare dl span.number{
  position: absolute;
  left: 0px;
  top: -45px;
  width: 84px;
  height: 84px;
  line-height: 60px;
  border: 2px solid #cddee8;
  border-radius: 100%;
  color: #0071bc;
  text-align: center;
  font-size: 25px;
  font-weight: 600;
  z-index: 1;
}

section.sec_welfare dl .textWrap{
  background: #fff;
  padding: 8px;
  position: relative;
  z-index: 2;
}

section.sec_welfare dl dt {
  color: #000;
  margin-bottom: .5em;
  font-weight: 800;
  font-size: 16px;
}

section.sec_welfare dl dd {
    margin: 0;
    font-size: 13px;
    line-height: 24px;
}

section.sec_interview .interview_box .imageArea {
  width: 50%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

section.sec_interview .interview_box .imageArea:before{
  content: "";
  display: block;
  background: linear-gradient(to top right, rgba(255,255,255,0) 50%, #fff 50.5%) no-repeat top left/100% 100%;
  position: absolute;
  left: 0;
  top: 0;
  width: 100vw;
  height: 20px;
  z-index: 3;
}

section.sec_interview .interview_box:nth-child(2n) .imageArea:before{
  background: linear-gradient(to top right, rgba(255,255,255,0) 50%, #fff 50.5%) no-repeat top left/100% 100%;
  left: auto;
  right: 0;
}

section.sec_interview .interview_box:nth-child(2n) .imageArea:after{
  background: linear-gradient(to bottom left, rgba(255,255,255,0) 50%, #fff 50.5%) no-repeat top left/100% 100%;
  left: auto;
  right: 0;
}

section.sec_interview .interview_box .imageArea:after{
  content: "";
  display: block;
  background: linear-gradient(to bottom right, rgba(255,255,255,0) 50%, #fff 50.5%) no-repeat top left/100% 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100vw;
  height: 40px;
  z-index: 3;
}

section.sec_interview .interview_box:nth-child(2n) .imageArea {
  left: auto;
  right: 0;
}

section.sec_interview .interview_box .imageArea img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.sec_interview .interview_box .textArea {
  width: 405px;
  max-width: 100%;
  margin-left: auto;
  position: relative;
}

section.sec_interview .interview_box .nameArea{
  width: 195px;
  height: 195px;
  background: #8cc63f;
  border-radius: 100%;
  color: #fff;
  text-align: center;
  padding: 0 20px;
  padding-top: 50px;
  position: absolute;
  left: -250px;
  top: 0;
}

section.sec_interview .interview_box .nameArea:before{
  content: "";
  display: block;
  width: 140px;
  height: 140px;
  background: url(/wp-content/uploads/2020/11/business_icon02.svg) no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  right: -20px;
  bottom: -95px;
}

section.sec_interview .interview_box:nth-child(3n) .nameArea:before{
  background: url(/wp-content/uploads/2020/11/business_icon04.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

section.sec_interview .interview_box:nth-child(2n) .nameArea{
  left: auto;
  right: -250px;
}

section.sec_interview .interview_box .nameArea p.name{
  font-size: 26px;
}

section.sec_interview .interview_box .nameArea p.info{
  margin-bottom: .5em;
  font-size: 15px;
}

section.sec_interview .interview_box{
  padding: 150px 0;
  position: relative;
  margin-bottom: 50px;
}

section.sec_interview .interview_box:nth-child(2n) .textArea{
  margin-left: 0;
}

section.sec_interview .interview_box:before{
  content: "";
  display: block;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, transparent 0%, transparent 70%, #fff 100%);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}

section.sec_interview .interview_box:nth-child(2n):before{
  background: linear-gradient(to left, transparent 0%, transparent 70%, #fff 100%);
  left: auto;
  right: 0;
}

section.sec_interview .interview_box:after{
  content: "";
  display: block;
  width: 50%;
  height: 100%;
  background: rgb(255,255,255);
  background: linear-gradient(90deg, rgba(255,255,255,0.4318102240896359) 0%, rgba(243,249,236,1) 63%);
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

section.sec_interview .interview_box:nth-child(2n):after{
 right: auto;
 left: 0;
 background: linear-gradient(90deg, rgba(243,249,236,1) 63%, rgba(255,255,255,1) 100%); 
}

section.sec_interview .interview_box .textArea dl:first-child {
  margin-bottom: 2em;
}

section.sec_interview .interview_box .textArea dl dt {
  color: #000;
  font-size: 16px;
  border-bottom: 1px solid #ccc;
  padding-bottom: .5em;
  margin-bottom: .5em;
}

section.sec_interview .interview_box .textArea dl dt,
section.sec_interview .interview_box .textArea dl dd {
  position: relative;
  padding-left: 30px;
}

section.sec_interview .interview_box .textArea dl dd {
  margin: 0;
  font-size: 12px;
}

section.sec_interview .interview_box .textArea dl span {
  color: #8cc63f;
  font-size: 18px;
  font-weight: 600;
  position: absolute;
  left: 0;
  top: 0;
}

section.sec_job dl {
  margin: 0;
}

section.sec_job dl dt {
  background: #e6e6e6;
  border: 1px solid #ccc;
  line-height: 50px;
  text-align: center;
  position: relative;
}

section.sec_job dl dt:before {
  content: "";
  display: block;
  width: 10px;
  height: 5px;
  background: url(/wp-content/uploads/2020/10/arrow-b.svg) no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  right: 10px;
  top: calc( 50% - 5px );
}

section.sec_job dl dt.nowOpen:before {
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
   transform: rotate(180deg);
}

section.sec_job dl dd {
  padding-top: 30px;
}

section.sec_job dl dd table th,
section.sec_job dl dd table td {
  padding: 1em;
  font-size: 12px;
  border: 1px solid #ccc;
}

section.sec_job dl dd table th {
  background: #f2f2f2;
  width: 30%;
}

section.sec_job dl dd table td {
  width: 70%;
}

section.sec_job p.closeBtnHat {
  display: none;
}

section.sec_job a.common_more {
  background: #0071bc;
  width: 100%;
  margin-top: 50px;
}

section.sec_photo ul li a {
  width: 196px;
  height: 196px;
  display: block;
  padding: 1px;
}

section.sec_photo ul li a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.modal {
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999;
    left: 0;
}

.modal__bg {
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
    z-index: 100;
}

.modal__content {
  background: #fff;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 60%;
  min-width: 980px;
  z-index: 100;
  padding: 5px;
  background: rgb(204,204,204);
  background: -moz-linear-gradient(90deg, rgba(204,204,204,1) 0%, rgba(153,153,153,1) 100%);
  background: -webkit-linear-gradient(90deg, rgba(204,204,204,1) 0%, rgba(153,153,153,1) 100%);
  background: linear-gradient(90deg, rgba(204,204,204,1) 0%, rgba(153,153,153,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#cccccc",endColorstr="#999999",GradientType=1);
}

.modal__content .inner {
  background: #fff;
  padding: 40px;
  position: relative;
}

.modal__content .inner:before {
  content: "";
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border: 1px solid #b2b2b2;
  z-index: 10;
}

.modal__content:before,.modal__content:after {
  content: "";
  position: absolute;
  width: 315px;
  height: 315px;
  background-size: cover;
}

.modal__content:before {
    top: 5px;
    left: 5px;
    background-image: url(/wp-content/uploads/2020/10/works_modal_bg_tl.png);
    z-index: 5;
}

.modal__content:after {
    right: 5px;
    bottom: 5px;
    background-image: url(/wp-content/uploads/2020/10/works_modal_bg.png);
}

.modal__content .imageArea {
  width: 40%;
  position: relative;
  z-index: 10;
}

.modal__content .textArea {
  width: 55%;
}

.modal__content .textArea h3 {
  position: relative;
  font-size: 26px;
  margin: 30px 0;
}

.imageOnly .modal__content .imageArea {
  width: 100%;
  height: 400px;
  position: relative;
  overflow: hidden;
  background: #eee;
}

.imageOnly .modal__content .textArea {
  display: none;
}

.imageOnly .modal__content .imageArea img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
}

.modal__content .textArea p.cat {
  margin-bottom: 20px;
  font-size: 12px;
}

.modal__content .textArea p.cat:after {
  content: "/";
}

.modal__content .textArea p.cat:last-child::after {
  display: none;
}

.modal__content .textArea ul li {
  font-size: 12px;
  padding-left: 20px;
  position: relative;
}

.modal__content .textArea ul li:before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background: #4d4d4d;
  position: absolute;
  left: 0;
  top: calc( 50% - 4px );
  border-radius: 1px;
}

a.js-modal-close {
  position: absolute;
  right: 15px;
  top: 15px;
  color: #4d4d4d;
  z-index: 30;
}

.works_page .wrap {
  position: relative;
  z-index: 2;
}

/* ------------------ ( contact お問い合わせ ) ------------------ */
.common_page_top.contact .common_page_h1 h1:before {
  content: 'contact';
}
.common_page_top.reservation .common_page_h1 h1:before {
  content: 'Visit reservation';
}
.c_contents {
  width: 100%
}
/* 中身 */
.c_contents table {
   border-bottom: 1px solid #ededed;
    font-size: 14px;
    line-height: 2;
    margin: auto;
    width: 100%;
    border-collapse: collapse;
}
.c_contents tr {
  border-bottom: 1px solid #bdc8ca;
}

.c_contents th , .c_contents td {
  padding: 20px 10px;
  font-size: 14px;
  border: 1px solid #ccc;
}
.c_contents th {
    width: 30%;
    text-align: left;
    font-weight: normal;
    position: relative;
    color: #000;
    background: #f2f2f2;
}
.c_contents td {
    width: 70%;
}
.mwform-radio-field label {
    display: inline-block;
}

/* 確認、送信ボタン */

.c_btn {
    text-align: center;
    margin: 30px auto;
    width: 200px;
    height: 30px;
    transition: .4s
}
input.sousin {
    font-size: 16px;
    width: 100%;
    border: 1px solid #4d4d4d;
    background-color: #4d4d4d;
    color: #fff;
    font-size: 15px;
    text-align: center;
    text-decoration: none;
    min-width: 88px;
    margin: 0;
    padding:10px 0;
    cursor: pointer;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    transition: .4s
}

/* 必須 */

.c_contents .check:after {
  content: '※';
  color: #fff;
  padding-left: 5px;
}
.c_contents th span {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 12px;
    margin: auto;
    height: 30px;
    padding: 2px 8px 0;
    border-radius: 3px;
    color: #fff;
    background-color: #eb1932;
}
.c_contents th span.ninni {
    background-color: #4d4d4d;
    color: #fff;
}

/* form */
.text_form {
    width: 100%;
}
.mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0px !important;
}
span.mwform-checkbox-field.horizontal-item {
    display: block;
}
.c_contents select {
    height: 30px !important;
    background-color: #fff;
    font-size: 14px;
    border-color: #ccc;
    color: #4d4d4d;
    margin-right: 5px;
}

.moveText span.textWrap {
  position: relative;
  width: 15px;
  height: 25px;
  display: inline-block;
  overflow: hidden;
}

.moveText span.textWrap span {
  position: absolute;
  left: 0;
  top: 20px;
}

.fadein02 {
  opacity : 0;
  transform: translateY(20px);
  transition: all 1s;
}

.contact_page,
.works_page {
  padding-top: 50px;
}

.works_page {
    position: relative;
    padding: 100px 0 0 0;
}

.works_page p.title_en{
  position: absolute;
  left: 50px;
  bottom: 120px;
}

.commonTtl {
  text-align: center;
}

.commonTtl h2 {
  margin-bottom: 1em;
}

.commonTtl p {
  line-height: 1;
}

section.main_visual h2 {
  color: #fff;
  transition: 0.5s;
  text-align: center;
  font-size: 20px;
  letter-spacing: .3em;
  font-weight: 600;
}

section.main_visual h2 span{
  display: block;
  border-bottom: 2px solid;
  margin-bottom: .5em;
}

.works_page section.top_works {
  opacity: 1;
}

.outline dt {
  background: #f2f2f2;
  padding: 10px 15px;
  height: 40px;
}

.outline dl {
  color: #000;
  margin: 0;
}

.outline dt,.outline dd {
  width: 100%;
  border: solid #ccc;
  margin: 0;
  border-width: 0 1px 1px 0;
  font-size: 13px;
}

.outline {
  border: solid #ccc;
  margin: 0;
  border-width: 1px 0px 0px 1px;
  width: 48%;
}

.outline dd {
  background: #fff;
  padding: 10px 15px;
  height: calc(100% - 40px);
}

.worksCatWrap {
  position: relative;
  margin: 0 0 20px;
  font-size: 14px;
}

.worksCatWrap:before {
  content: "";
  position: absolute;
  width: 26px;
  height: 1px;
  left: 0;
  top: -5px;
  background: #4d4d4d;
}

.worksCatWrap:empty:before {
  display: none;
}

.worksContent {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 30px;
}

.modal__content .fl_wrapIn.flex-sb {
  align-items: center;
}

a.js-modal-close p {
  font-family: 'siteEnFont' ,sans-serif;
  font-weight: bold;
  text-align: center;
  font-size: 13px;
  letter-spacing: normal;
  line-height: 1;
}

.morelink {
  padding: 20px;
  text-align: center;
  font-weight: bold;
  position: relative;
  width: 150px;
  margin: 0 auto;
  margin-top: 10px;
  cursor: pointer;
}

.morelink:after {
  content: "";
  width: 7px;
  height: 7px;
  border: solid #4d4d4d;
  border-width: 0 1px 1px 0;
  position: absolute;
  transform: rotate(45deg);
  left: 0;
  right: 0;
  margin: auto;
  bottom: 5px;
}

section.banner_area{
  margin-top: 100px;
}

section.banner_area ul{
  justify-content: space-between;
}

section.banner_area ul.count1,
section.banner_area ul.count3{
  justify-content: center;
}

section.banner_area ul.count1 li,
section.banner_area ul.count3 li{
  margin: 1%;
}

section.banner_area ul li{
  width: 48%;
  margin-bottom: 20px;
}

header.main_header.top_header {
    background: none;
}

.recruit_page .top_business {
    padding-top: 150px;
}

section.sec_welfare {
    padding: 110px 0 270px;
    margin-bottom: 100px;
    position: relative;
}

section.sec_welfare .common_title{
  margin-bottom: 100px;
}

section.sec_welfare:before {
    display: block;
    content: "";
    width: 55%;
    height: 60%;
    background-image: url(/wp-content/uploads/2020/11/section_bg04.png);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}

section.sec_welfare:after {
    display: block;
    content: "";
    width: 47%;
    height: 16%;
    background-image: url(/wp-content/uploads/2020/11/text-welfare.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center left 20px;
    position: absolute;
    bottom: 65px;
    left: 0;
    z-index: -1;
}

section.sec_welfare .common_title h2 span {
    color: #0071bc ;
}

section.sec_job {
    padding: 60px 0 100px;
    background-color: #f2f2f2;
    margin-top: 100px;
}

section.sec_job dl dd table td {
    background-color: #fff;
}

section.sec_job dl dd {
    padding-top: 0 ;
    margin: 0;
}

section.sec_job .common_title h2 span {
    color: #0071bc ;
}

section.sec_photo {
  padding: 100px 0 0 0;
}

.sec_history dl {
    padding: .5em 0 ;
    color: #000;
}

.sec_history dl:last-child{
  align-items: center;
}

.sec_history dl dt.title {
    width: 66%;
    padding: 1em 0;
}

section.business_secRecruit{
  position: relative;
  padding: 100px 0 200px 0;
}

section.business_secRecruit p.title_en{
  position: absolute;
  right: 50px;
  bottom: 0;
}

section.business_secRecruit ul {
  justify-content: center;
}

section.business_secRecruit ul li{
  width: 310px;
  border: 1px solid;
  padding: 20px;
  background: #fff;
}

section.business_secRecruit ul li:nth-child(2){
  margin: 0 15px;
}

section.business_secRecruit ul li .imageArea{
  position: relative;
  width: 100%;
  height: 180px;
  margin-bottom: 1em;
}

section.business_secRecruit ul li .imageArea img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.business_secRecruit ul li .imageArea:before{
  content: "";
  display: block;
  width: 100px;
  height: 100px;
  position: absolute;
  right: -30px;
  bottom: -15px;
  z-index: 2;
}

section.business_secRecruit ul li.type_a .imageArea:before{
  background: url(/wp-content/uploads/2020/11/business_icon.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

section.business_secRecruit ul li.type_b .imageArea:before{
  background: url(/wp-content/uploads/2020/11/business_icon02.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

section.business_secRecruit ul li.type_c .imageArea:before{
  background: url(/wp-content/uploads/2020/11/business_img03.svg) no-repeat;
  background-size: contain;
  background-position: center;
}

section.business_secRecruit ul li .textArea h2{
  font-size: 15px;
  margin-bottom: .5em;
}

header.main_header nav ul li img {
  height: 17px;
}

header.main_header nav ul li img.company {
  width: 70px;
}

section.top_history {
  padding: 200px 0 100px;
}

section.top_history h2 {
  text-align: center;
  font-size: 16px;
  font-weight: normal;
  margin: 0 0 50px;
  letter-spacing: 3px;
}

section.top_history h2 span {
  color: #0071bc;
}

section.top_history .top_history_image {
  margin: 0 0 80px;
}

section.top_history .wrap {
  position: relative;
}

section.top_history .wrap p.history_text {
  position: absolute;
  width: 660px;
  max-width: 50%;
  z-index: -1;
  right: -150px;
  bottom: -95px;
}

a.js-modal-close img {
  display: block;
  margin: 0 auto 5px;
}

/**追加CSS PC END**/


/**追加CSS SP START**/
@media (max-width: 750px) {

    .pc {
    display: none!important;
    }

    .sp {
    display: block!important;
    }

    /*spmenu~*/
    .sp_hd {
        position: absolute;
        width: 100%;
        top: 0;
        z-index: 10000;
    }
    .sp_pr {
        position: relative;
    }
    .slicknav_menu .slicknav_menutxt {
        float: none;
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        font-size: 3vw;
        text-align: center;
    }
    .slicknav_menu .slicknav_icon {
        width: 100%;
        margin: 0;
    }
    .slicknav_menu .slicknav_icon-bar {
        width: 10vw !important;
        height: 3px !important;
    }

    .slicknav_menu .slicknav_icon-bar {
    background: #fff;
    }

    a.slicknav_btn {
        background: #fff;
        border-radius: 0px;
    }
    /*SPMENU kurukuru*/
    a.slicknav_btn.slicknav_open span.slicknav_icon-bar:first-child {
        top: 5px;
        -moz-transform: rotate(405deg);
        -webkit-transform: rotate(405deg);
        -o-transform: rotate(405deg);
        -ms-transform: rotate(405deg);
        transform: rotate(405deg);
        position: absolute;
    }
    a.slicknav_btn.slicknav_open span.slicknav_icon-bar:nth-child(3) {
        top: 0.4px;
        -moz-transform: rotate(-405deg);
        -webkit-transform: rotate(-405deg);
        -o-transform: rotate(-405deg);
        -ms-transform: rotate(-405deg);
        transform: rotate(-405deg);
        position: absolute;
    }
    a.slicknav_btn.slicknav_open span.slicknav_icon-bar:nth-child(2) {
        opacity: 0;
    }
    span.slicknav_icon-bar {
        transition: all 0.5s ease-out;
        -o-transition: all 0.5s ease-out;
        -moz-transition: all 0.5s ease-out;
        -webkit-transition: all 0.5s ease-out;
        -ms-transition: all 0.5s ease-out;
    }
    .slicknav_menu .slicknav_icon {
        width: 100% !important;
        margin: 0 !important;
        float: none !important;
        position: relative;
    }
    /*kokomade*/
    .slicknav_menu .slicknav_menutxt {
        display: none;
    }
    .slicknav_menu {
        background: none;
    }
    a.slicknav_btn {
        margin: 12px 3px 3px 0px;
        padding: 0px 0 0 0px;
        height: 10vw;
        width: auto;
        background: none;
        position: relative;
        z-index: 2;
    }
    .slicknav_menu .slicknav_icon {
        height: 16px !important;
        display: block;
    }
    .slicknav_menu .slicknav_icon:after {
        display: block;
        font-size: 70%;
        color: #fff;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -20px;
        margin: 0 auto;
    }
    .slicknav_nav a {
        color: #333 !important;
        display: inline-block;
        font-weight: bold;
        line-height: 2;
        width: 100%;
        text-align: left;
        margin: 0;
        letter-spacing: normal;
        font-size: 80%;
        border: solid #ccc;
        border-width: 0 0px 1px 0;
        line-height: 30px;
        background-size: 10px;
        background-repeat: no-repeat;
        background-position: right 15px center;
        text-align: center;
        padding-top: 4vw;
    }

    .slicknav_nav a img {
        height: 30px;
    }


    .slicknav_nav a img.contact {
    width: 25%;
    }

    /* .slicknav_nav {
    background: rgba(0,0,0,0.5);
    } */

    /*~spmenu*/
    .sp_hd_logo {
        position: absolute;
        width: 35vw;
        top: 15px;
        left: 15px;
        z-index: 3;
    }

    .page-template-page-recruit .sp_hd_logo{
    display: none;
    }

    .sp_hd_tel {
        position: absolute;
        width: 20px;
        top: 12.5px;
        right: 5px;
    }

    .sp_hd_mail {
        position: absolute;
        width: 20px;
        top: 12.5px;
        right: 5px;
    }

    .wrap {
    max-width: 96%;
    }

    a.btn_recruit {
    width: 20vw;
    top: 20vw;
    }

    section.main_visual h2 {
    width: 50%;
    font-size: 3.5vw;
    right: 5vw;
    bottom: 3vw;
    }

    .slicknav_nav {
    background: rgba(0,0,0,0.6);
    position: absolute;
    left: 0;
    top: 0;
    padding-top: 15vw;
    width: 100%;
    }

    section.main_visual .slider_image {
    height: 100vh;
    }

    section.main_visual .slider_image img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    }

    section.main_visual .bx-wrapper .bx-pager, section.main_visual .bx-wrapper .bx-controls-auto {
    width: 210px;
    margin-bottom: auto;
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    padding: 0;
    margin-right: -20vw;
    margin-bottom: 30vh;
    text-align: center;
    }

    section.main_visual .pc,
    section.main_visual .sp {
    transition: 5s;
    }

    section.top_mission .textArea .title h2 img {
    width: 70%;
    }

    section.top_mission .textArea .title h2 span {
    font-size: 5.2vw;
    margin: 10vw 0;
    letter-spacing: .2em;
    }

    section.top_mission .textArea .title .acc {
    width: 30%;
    }

    section.top_mission .textArea {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10vw;
    order: -1;
    }

    section.top_mission .imageArea {
    width: 100%;
    padding-top: 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    }

    body {
    font-size: 3.4vw;
    }

    section.top_mission .imageArea .image {
    width: 60%;
    height: 59vw;
    }

    section.top_mission .imageArea .name {
    width: 40%;
    height: 39vw;
    left: 0;
    bottom: -10vw;
    }

    section.top_mission .imageArea .name p {
    font-size: 3vw;
    }

    section.top_mission .imageArea .name p span {
    font-size: 5vw;
    }

    .common_title.acc_right .acc {
    margin-left: 49vw;
    }

    section.top_mission {
    padding: 15vw 0;
    }

    section.top_mission:before{
    content: "";
    display: block;
    background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #deeacd 50.5%) no-repeat top left/100% 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 15%;
    height: 5vh;
    z-index: 2;
    }

    section.top_mission .body_parts {
    margin-top: -60vw;
    }

    section.top_business .fl_wrap {
    margin-bottom: 10vw;
    }

    section.top_business .imageArea {
    width: 100%;
    height: 60vw;
    margin: 0 auto 3vw auto;
    }

    section.top_business {
    padding: 15vw 0;
    }

    .common_title.acc_left .acc {
    margin-right: 46vw;
    }

    section.top_works ul.tab {
    justify-content: space-between;
    margin-bottom: 5vw;
    }

    section.top_works ul.tab li {
    width: 49%;
    }

    section.top_works ul.tab li a {
    width: 100%;
    line-height: 8vw;
    margin: 0;
    margin-bottom: 2vw;
    }

    p.sec_text {
    width: 100%;
    margin: 0 auto 10vw auto;
    }

    section.top_works .tabContents .works_box {
    padding: 0;
    width: 50%;
    }

    section.top_works .tabContents .works_box a {
    width: 100%;
    height: 50vw;
    }

    section.top_works .tabContents .fl_wrap {
    width: 100%;
    }

    .tabContents {
    margin-bottom: 10vw;
    }

    section.top_works {
    margin-bottom: -12vw;
    }

    section.top_recruit {
    padding: 45vw 0 20vw 0;
    }

    section.top_company table {
    border: none;
    margin-bottom: 5vw;
    border-bottom: 1px solid #ccc;
    }

    section.top_company table th,
    section.top_company table td {
    display: block;
    border-bottom: none;
    }

    section.top_company .mapArea {
    height: 80vw;
    margin-bottom: 5vw;
    width: 100%;
    }

    section.top_company a.common_more{
    width: 100%;
    }

    .pagetop img {
    width: 30vw;
    }

    .pagetop {
    height: auto;
    padding-top: 20vw;
    padding-bottom: 20vw;
    margin-top: 20vw;
    }

    .body_parts {
    width: 200vw;
    }

    section.top_works .body_parts.type01 {
    top: -190vw;
    left: -80vw;
    }

    section.top_works .body_parts.type02 {
    display: none;
    }

    section.top_works .body_parts.type03 {
    position: absolute;
    left: 0vw;
    top: 50vw;
    -moz-transform: rotate(-180deg);
    -webkit-transform: rotate(-180deg);
    -o-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
    }


    section.top_company .body_parts {
    top: -110vw;
    }

    section.top_recruit .recruit_btnBig .acc {
    position: static;
    margin-right: 45vw;
    display: block;
    }

    section.top_works .tabContents .works_box a span {
    height: 20vw;
    font-size: 3.5vw;
    height: auto;
    }

    .business_wrap .imageArea {
    width: 100%;
    position: relative;
    }

    .business_wrap .imageArea img {
    display: block;
    }

    .business_wrap:nth-child(even) .imageArea {
    order: -1;
    }

    .business_wrap .textArea {
    width: 100%;
    }

    .business_wrap h2 {
    display: block;
    width: 100%;
    background: rgba(0,0,0,0.6);
    color: #fff;
    font-size: 5vw;
    position: absolute;
    left: 0;
    bottom: 0;
    padding: .5em 1em;
    font-weight: bold;
    z-index: 2;
    }

    .business_wrap.type_c h2{
    background: rgb(7 102 195 / 78%);
    }

    .business_wrap.type_a h2,
    .business_wrap.type_b h2{
    background: rgb(116 214 62 / 78%);
    }

    .sec_history dl {
    line-height: 2;
    }

    .sec_history dl dt.date {
    width: 100%;
    }

    .sec_history dl dt.title {
    width: 100%;
    }

    .sec_history dl dd.type {
    width: 100%;
    }

    .messageArea {
    color: #fff;
    text-align: center;
    background: #0071bc ;
    padding: 10vw 8vw 10vw 8vw
    }

    .messageArea:before{
    content: "";
    display: block;
    background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #eaf3dd 50.5%) no-repeat top left/100% 100%;
    position: absolute;
    left: 0;
    bottom: -30vw;
    width: 45%;
    height: 30vw;
    z-index: 2;
    }

    .messageArea h2 span {
    display: block;
    font-size: 16px;
    color: #eb1932;
    }

    .messageArea h3 {
    font-size: 6.4vw;
    margin: 40px 0;
    font-weight: 800;
    line-height: 1.6
    }

    .messageArea p {
    font-size: 3.2vw;
    line-height: 2;
    text-align: left;
    }

    .page_main.recruit .titleArea {
    width: 100%;
    bottom: -.6vw;
    }

    .page_main.recruit .titleArea span.top {
    width: 60%;
    display: block;
    }

    .page_main.recruit .titleArea span.under {
    width: 90%;
    font-size: 35vw;
    line-height: 0.65;
    }

    .page_main.recruit:before {
    display: none;
    }

    .page_main.recruit {
    height: 100vh;
    padding-top: 0;
    }

    .recruit_main_slide > div {
    height: 100vh;
    }

    section.sec_welfare dl {
    width: 100%;
    margin: 0;
    margin-bottom: 5vw;
    }

    section.sec_welfare dl dt {
    color: #4d4d4d;
    font-size: 4vw;
    }

    section.sec_welfare dl dd {
    font-size: 3.5vw;
    }

    section.sec_interview .interview_box .imageArea {
    width: 100%;
    height: 100vw;
    }

    section.sec_job a.common_more {
    line-height: 15vw;
    width: 90%;
    margin-top: 15vw;
    }

    section.sec_job dl dd {
    padding-top: 5vw;
    }

    section.sec_job.fadein02 {
    background: none;
    }

    section.sec_photo ul li a {
    width: 100%;
    height: 100%;
    }

    section.sec_photo .bx-wrapper {
    overflow:hidden;
    width:100%;
    height:100vw;
    box-shadow: none;
    border: none;
    background: none;
    margin-bottom: 0;
    }
    section.sec_photo .bx-viewport {
    overflow:visible!important;
    width: 80vw!important;
    height:100vw;
    margin: 0 auto;
    }
    section.sec_photo ul li {
    width:80vw!important;  /* 画像サイズと同じ（画像をくっつけて表示させる場合） */
    height: 80vw;
    }

    .modal__content {
        width: 90%;
        min-width: unset;
    }

    .modal__content .inner {
    padding: 5vw 8vw;
    }

    .modal__content .imageArea {
    width: 100%;
    margin-bottom: 4vw;
    }

    .modal__content .textArea {
    width: 100%;
    z-index: 9;
    }

    /* ------------------ ( contact お問い合わせ ) ------------------ */
    .c_contents table {
        width: 100%;
    }
    .contact_tex {
        width: 100%;
        margin: 40px auto 10px auto;
    }
    .contact_tex h2 {
        font-size: 14px;
        width: 300px;
        margin: 0 auto;
    }
    .contact_tex p {
        font-size: 12px;
    }

    .c_contents tr {
        display: block;
        border: none;
    }
    .c_contents th , .c_contents td {
    font-size: 13px;
    }
    .c_contents th {
        width: 100%;
        display: block;
        border: 0px;
        padding: 3vw 2vw;
    }
    .c_contents td {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        border: 0;
        padding: 3vw 2vw;
    }
    .c_contents input, textarea {
        width: 100%;
    }
    .c_contents  span.mwform-radio-field.horizontal-item {
        display: block;
        width: 100%;
    }
    .c_contents  span.mwform-radio-field.horizontal-item label {
        display: flex;
    }
    span.mwform-checkbox-field.horizontal-item {
        display: flex;
        width: 100%;
    }
    input[type="checkbox"] , input[type="radio"] {
        width: 20px;
    }
    .commonIconTtl.type02, .commonIconTtl.type03 {
        margin-top: 5vw;
    }
    .c_contents th span {
        height: 25px;
        line-height: 1.6;
        font-size: 13px;
        padding: 2px 10px;
        top: 5px;
    }
    .text_form {
        font-size: 14px;
    }

    .c_contents table {
    border: 1px solid #ccc;
    }

    .page-template-page-business {
    background-position: center;
    }

    .page-template-page-business main#main.page-main {
    background: none;
    }

    .page-template-page-works {
    background: none;
    }

    .page-template-page-recruit main.page-main {
    }

    section.sec_interview .body_parts.type01 {
    position: absolute;
    left: auto;
    bottom: auto;
    margin-top: 0;
    top: 10vw;
    }

    section.sec_interview .body_parts.type01 img {
    width: 150vw;
    margin-left: auto;
    display: block;
    }

    section.sec_interview .body_parts.type02 {
    display: none;
    }

    section.sec_photo .body_parts.type01 {
    left: -45vw;
    top: -30vw;
    }

    section.sec_photo .body_parts.type01 img {
    width: 150vw;
    }

    .commonTtl h2 {
    margin-bottom: 1em;
    font-size: 4.5vw;
    }

    .commonTtl p {
    font-size: 3.2vw;
    line-height: 1.5;
    }

    .modal__content .textArea h3 {
    text-align: center;
    font-size: 20px;
    margin: 20px 0;
    }

    .modal__content .textArea h3:before {
    left: calc( 50% - 13px );
    }

    .worksCatWrap {
    text-align: center;
    justify-content: center;
    font-size: 12px;
    }

    .worksCatWrap:before {
    right: 0;
    margin: auto;
    }

    .modal__content .textArea .catWrap.flex {
    justify-content: center;
    }

    .slicknav_nav a:hover {
    background: none;
    }

    section.main_visual {
    height: 100vh;
    }

    .outline dl {
    width: 100%;
    }

    .page_main h1 span.ja {
        letter-spacing: 2px;
        color: #8cc63f;
    }

    .page_main {
        padding-top: 120px ;
    }

    .page_main:before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    position: absolute;
    left: 0;
    top: 0;
    }

    .common_title h2 {
        letter-spacing: 0;
        font-size: 8vw;
        font-weight: 600;
        line-height: 1.5;
    }

    .common_title h2 span{
    display: block;
    }

    .works_page {
        padding-top: 10vw;
        padding-bottom: 30vw;
    }

    .page_main.recruit:after {
        display: none;
    }

    .recruit_page .top_business {
        padding-top: 50px;
    }

    .page_main.recruit .titleArea {
        left: 0 ;
        top: 0;
        bottom: auto;
        width: 65%;
    }

    .titleArea span.under {
        width: 90% ;
    }

    .page_main.recruit:before {
        display: none ;
    }

    .messageArea h2 {
        width: 90%;
        margin: 0 auto;
    }

    .messageArea h2 span {
        color: #fff ;
    }

    a.btn_recruit {
        font-size: 14px;
        width: 100%;
    }

    a.btn_recruit:hover {
        letter-spacing: 0;
        box-shadow: none;
    }

    section.sec_welfare {
        padding: 20vw 0 20vw;
        position: relative;
        margin-bottom: 0;
    }

    section.sec_welfare:before{
    content: "";
    display: block;
    background: linear-gradient(to top right, rgba(255,255,255,0) 50%, #ddebf5 50.5%) no-repeat top left/100% 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: 35%;
    height: 30vw;
    z-index: 2;
    }

    /*section.sec_welfare .common_title h2 {
        padding: 15px 0;
        background-image: url(/wp-content/uploads/2020/11/text-welfare.svg);
        background-repeat: no-repeat;
        background-size: 200px;
        background-position: center;
    }*/

    section.sec_welfare .fl_wrap {
        width: 100%;
    }

    section.sec_welfare dl {
        width: 100%;
        margin: 0 0 12vw;
        padding: 0;
        padding-left: 12vw;
    }
    section.sec_welfare:after {
        display: none;
    }

    section.sec_job {
        padding: 20vw 0;
        margin-top: 0;
    }

    section.sec_photo {
        padding: 20vw 0 0;
    }

    section.main_visual:before{
    background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #8cc63fe0 50.5%) no-repeat top left/100% 100%;
    width: 65%;
    height: 15vh;
    }

    section.main_visual:after{
    background: linear-gradient(to bottom right, rgba(255,255,255,0) 50%, #0071bced 50.5%) no-repeat top left/100% 100%;
    height: 100%;
    width: 85%;
    height: 18vh;
    }

    section.main_visual .sankaku_acc{
    background: linear-gradient(to top right, rgba(255,255,255,0) 50%, rgba(255,255,255,0.5) 50.5%) no-repeat top left/100% 100%;
    left: auto;
    right: 0;
    bottom: auto;
    top: 0;
    width: 65%;
    height: 15vh;
    }

    .history_area .imageArea02{
    position: static;
    width: 96%;
    height: 65vw;
    margin: 0 auto;
    margin-bottom: 5vw;
    }

    .history_area{
    padding: 20vw 0 0 0;
    }

    section.top_business ul{
    margin-bottom: 10vw;
    }

    section.top_business ul li:nth-child(2){
    margin: 5vw 0;
    }

    section.top_recruit .recruit_btnBig a:before {
    width: 50vw;
    height: 20vw;
    left: 0;
    top: -20vw;
    }

    .outline {
    width: 100%;
    margin-bottom: 10vw;
    }

    .home .pagetop {
        background-size: 200%;
        background-position: center bottom;
        padding-bottom: 50vw;
        height: auto;
    }

    section.top_company{
    padding-bottom: 0;
    }

    section.top_mission p.title_en{
        position: static;
        width: 70%;
        margin-left: auto;
        margin-top: 10vw;
    }

    .page_main h1 {
        text-align: center;
    }

    .business_wrap {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 15vw;
    }

    .business_wrap .imageArea:before{
    width: 25vw;
    height: 25vw;
    left: -6vw;
    top: -6vw;
    }

    .sec_history dl:last-child{
    margin-top: 10vw;
    border: none;
    margin-bottom: 20vw;
    }

    .sec_history dl:last-child dt.date{
    text-align: center;
    color: #8cc63f;
    }

    .page-template-page-works{
    background: url(/wp-content/uploads/2020/11/section_bg03.png)no-repeat;
    background-position: -20vw 94%;
    background-size: 180vw;
    }

    section.sec_welfare dl span.number{
    top: -10vw;
    width: 20vw;
    height: 20vw;
    line-height: 15vw;
    font-size: 5vw;
    }

    section.business_secRecruit p.title_en{
    display: none;
    }

    section.business_secRecruit{
    padding: 15vw 0;
    }

    section.sec_welfare .common_title{
    margin-bottom: 15vw;
    }

    section.sec_interview .interview_box{
    padding: 105vw 0 10vw 0;
    margin-bottom: 50px;
    background: #fafff4;
    }

    section.sec_interview .interview_box .imageArea:before,
    section.sec_interview .interview_box .imageArea:after{
    display: none;
    }

    section.sec_interview .interview_box:after{
    display: none;
    }

    section.sec_interview .interview_box:before,
    section.sec_interview .interview_box:nth-child(2n):before{
    width: 100%;
    height: 100vw;
    left: 0;
    top: 0;
    background: linear-gradient(to bottom, transparent 0%, transparent 70%, #fff 100%);
    }

    section.sec_interview p.title_en{
    display: none;
    }

    section.sec_interview {
    padding-bottom: 0;
    }

    .page-id-107 .copyright:before{
    display: none;
    }

    .common_title{
    margin-bottom: 10vw;
    }

    .interview_wrap {
    padding-top: 0;
    }

    section.sec_interview .interview_box .nameArea{
    width: 35vw;
    height: 35vw;
    padding: 0 2vw;
    padding-top: 10vw;
    left: 5vw;
    top: -100vw;
    }

    section.sec_interview .interview_box .nameArea:before{
    width: 20vw;
    height: 20vw;
    right: -3vw;
    bottom: -12vw;
    }

    section.sec_interview .interview_box:nth-child(2n) .nameArea{
    right: auto;
    left: 0;
    }

    section.sec_interview .interview_box:nth-child(2) .nameArea,
    section.sec_interview .interview_box:nth-child(3) .nameArea{
    right: 0;
    left: auto;
    }

    section.sec_interview .interview_box .nameArea:before{
    right: auto;
    left: -5vw;
    }


    section.sec_interview .interview_box .nameArea p.name{
    font-size: 4.5vw;
    }

    section.sec_interview .interview_box .nameArea p.info{
    font-size: 3.2vw;
    }

    .sec_history .dl_wrap {
    margin-bottom: 0px;
    }

    section.top_history {
        padding: 100px 5vw 50px;
    }
    
    section.top_history h2 span {
        display: block;
        font-size: 13px;
    }
    
    section.top_history h2 img {
        height: 40px;
    }
    
    section.top_history .top_history_image {
        margin-bottom: 40px;
    }

}
/**追加CSS SP END**/
