html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
strike,
strong,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
textarea,
input,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-style: normal;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none
}

article,
aside,
details,
figcaption,
dialog,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block
}

body {
  line-height: 1
}

b,
strong {
  font-weight: bold
}

ol,
ul {
  list-style: none
}

:focus {
  outline: 0
}

ins {
  text-decoration: none
}

del {
  text-decoration: line-through
}

caption,
th {
  text-align: left
}

small {
  font-size: 80%
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sup {
  top: -0.5em
}

sub {
  bottom: -0.25em
}

blockquote,
q {
  quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

input {
  vertical-align: middle
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
  *overflow: visible
}

button[disabled],
html input[disabled] {
  cursor: default
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400
}

img {
  vertical-align: top
}

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

[class^="icon-"]::before,
[class^="icon-"]::after,
[class*=" icon-"]::before,
[class*=" icon-"]::after {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.icon-help-circle:before {
  content: ""
}

.icon-external-link:before {
  content: ""
}

.icon-home:before {
  content: ""
}

.icon-search:before {
  content: ""
}

.icon-arrow-down:before {
  content: ""
}

.icon-arrow-down-circle:before {
  content: ""
}

.icon-arrow-down-left:before {
  content: ""
}

.icon-arrow-down-right:before {
  content: ""
}

.icon-arrow-left:before {
  content: ""
}

.icon-arrow-left-circle:before {
  content: ""
}

.icon-arrow-right:before {
  content: ""
}

.icon-arrow-right-circle:before {
  content: ""
}

.icon-arrow-up:before {
  content: ""
}

.icon-arrow-up-circle:before {
  content: ""
}

.icon-arrow-up-left:before {
  content: ""
}

.icon-arrow-up-right:before {
  content: ""
}

.icon-chevron-down:before {
  content: ""
}

.icon-chevron-left:before {
  content: ""
}

.icon-chevron-right:before {
  content: ""
}

.icon-chevron-up:before {
  content: ""
}

.icon-menu:before {
  content: ""
}

.icon-more-horizontal:before {
  content: ""
}

.icon-more-vertical:before {
  content: ""
}

.icon-x:before {
  content: ""
}

.icon-user:before {
  content: ""
}

.icon-profile:before {
  content: ""
}

.icon-avatar:before {
  content: ""
}

.icon-person:before {
  content: ""
}

.icon-member:before {
  content: ""
}

.icon-desktop:before {
  content: ""
}

.icon-phone:before {
  content: ""
}

.icon-line:before {
  content: ""
}

.icon-get-pocket:before {
  content: ""
}

.icon-linkedin:before {
  content: ""
}

.icon-linkedin-square:before {
  content: ""
}

.icon-twitter:before {
  content: ""
}

.icon-facebook:before {
  content: ""
}

.icon-facebook-official:before {
  content: ""
}

.icon-envelope-o:before {
  content: ""
}

.icon-print:before {
  content: ""
}

.icon-file-pdf-o:before {
  content: ""
}

.icon-file-word-o:before {
  content: ""
}

.icon-file-excel-o:before {
  content: ""
}

.icon-map-marker:before {
  content: ""
}

.icon-info-circle:before {
  content: ""
}

.icon-automobile:before {
  content: ""
}

.icon-car:before {
  content: ""
}

.icon-subway:before {
  content: ""
}

.icon-caret-down:before {
  content: ""
}

.icon-caret-up:before {
  content: ""
}

.icon-caret-left:before {
  content: ""
}

.icon-caret-right:before {
  content: ""
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

body {
  color: #333;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  line-height: 2;
  overflow-x: hidden
}

body:lang(ja) {
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

body:lang(zh-CN) {
  font-family: -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

input,
button,
select {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit
}

::-webkit-input-placeholder {
  color: rgba(51, 51, 51, 0.25)
}

:-ms-input-placeholder {
  color: rgba(51, 51, 51, 0.25)
}

::-ms-input-placeholder {
  color: rgba(51, 51, 51, 0.25)
}

::placeholder {
  color: rgba(51, 51, 51, 0.25)
}

button {
  margin: 0
}

a,
button {
  color: inherit;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear
}

a {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto
}

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

hr {
  border-color: #e6e9ed
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important
}

br._400 {
  display: none
}

@media (min-width: 400px) {
  br._400 {
    display: block
  }
}

br._480 {
  display: none
}

@media (min-width: 480px) {
  br._480 {
    display: block
  }
}

br._580 {
  display: none
}

@media (min-width: 580px) {
  br._580 {
    display: block
  }
}

br._640 {
  display: none
}

@media (min-width: 640px) {
  br._640 {
    display: block
  }
}

br._768 {
  display: none
}

@media (min-width: 768px) {
  br._768 {
    display: block
  }
}

br._920 {
  display: none
}

@media (min-width: 920px) {
  br._920 {
    display: block
  }
}

br._960 {
  display: none
}

@media (min-width: 960px) {
  br._960 {
    display: block
  }
}

br._1200 {
  display: none
}

@media (min-width: 1200px) {
  br._1200 {
    display: block
  }
}

br._1240 {
  display: none
}

@media (min-width: 1240px) {
  br._1240 {
    display: block
  }
}

br._1320 {
  display: none
}

@media (min-width: 1320px) {
  br._1320 {
    display: block
  }
}

.fl-l {
  float: left
}

.fl-r {
  float: right
}

.clear {
  clear: both
}

.cl-l {
  clear: left
}

.cl-r {
  clear: right
}

.ov-h {
  overflow: hidden
}

.ov-h._768 {
  overflow: visible
}

@media (min-width: 768px) {
  .ov-h._768 {
    overflow: hidden
  }
}

.ov-h._800 {
  overflow: visible
}

@media (min-width: 800px) {
  .ov-h._800 {
    overflow: hidden
  }
}

.ov-h._920 {
  overflow: visible
}

@media (min-width: 920px) {
  .ov-h._920 {
    overflow: hidden
  }
}

.ov-h._1200 {
  overflow: visible
}

@media (min-width: 1200px) {
  .ov-h._1200 {
    overflow: hidden
  }
}

.ov-h._1400 {
  overflow: visible
}

@media (min-width: 1400px) {
  .ov-h._1400 {
    overflow: hidden
  }
}

.nowrap {
  display: inline-block
}

.mt0 {
  margin-top: 0 !important
}

.ml0 {
  margin-left: 0 !important
}

.mr0 {
  margin-right: 0 !important
}

.mb0 {
  margin-bottom: 0 !important
}

.ie {
  display: none;
  display: block\0;
  display: block\9
}

.not-ie {
  display: none\0;
  display: none\9
}

.ie-warning {
  background: #da4453;
  color: #fff;
  margin: 30px 0 20px;
  padding: 10px
}

@media (min-width: 768px) {
  .ie-warning {
    margin: 40px 0 30px;
    padding: 20px
  }
}

@media (min-width: 1200px) {
  .ie-warning {
    margin-top: 60px
  }
}

.ie-warning a {
  text-decoration: underline
}

.ie-warning a:hover {
  text-decoration: none
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@-webkit-keyframes scaleInLtR {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left
  }

  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left
  }
}

@keyframes scaleInLtR {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left
  }

  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left
  }
}

@-webkit-keyframes scaleInRtL {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right
  }

  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    transform-origin: right
  }
}

@keyframes scaleInRtL {
  0% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right
  }

  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    transform-origin: right
  }
}

@-webkit-keyframes scaleOutLtR {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    transform-origin: right
  }

  100% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right
  }
}

@keyframes scaleOutLtR {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    transform-origin: right
  }

  100% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right
  }
}

@-webkit-keyframes scaleOutRtL {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left
  }

  100% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left
  }
}

@keyframes scaleOutRtL {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left
  }

  100% {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left
  }
}

@-webkit-keyframes slideInRtL {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@keyframes slideInRtL {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@-webkit-keyframes moveFadeInBtT {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

@keyframes moveFadeInBtT {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

@-webkit-keyframes moveFadeInLtR {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@keyframes moveFadeInLtR {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@-webkit-keyframes moveFadeInRtL {
  0% {
    opacity: 0;
    -webkit-transform: translateX(30px);
    transform: translateX(30px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@keyframes moveFadeInRtL {
  0% {
    opacity: 0;
    -webkit-transform: translateX(30px);
    transform: translateX(30px)
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@-webkit-keyframes moveInRtL {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

@keyframes moveInRtL {
  0% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

.wipe-in {
  position: relative
}

.wipe-in::before,
.wipe-in::after {
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0
}

.wipe-in::before {
  background: #f5f7fa
}

.wipe-in:not(._standby)::after {
  -webkit-animation: scaleOutLtR .5s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  animation: scaleOutLtR .5s cubic-bezier(0.23, 1, 0.32, 1) 1s both
}

.wipe-in:not(._standby)::before {
  -webkit-animation: scaleOutLtR .5s cubic-bezier(0.23, 1, 0.32, 1) 1.25s both;
  animation: scaleOutLtR .5s cubic-bezier(0.23, 1, 0.32, 1) 1.25s both
}

table,
.table {
  border: 1px solid #e6e9ed;
  margin: 2em 0;
  width: 100%
}

table th,
table td,
.table th,
.table td {
  border: 1px solid #e6e9ed;
  padding: 0.5em 1em
}

.table-bordered {
  border: 1px solid #e6e9ed
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #e6e9ed
}

.table-borderless {
  border: 0
}

.table-borderless th,
.table-borderless td {
  border: 0
}

.table-of-contents {
  border: 2px solid #516ab6;
  color: #eeeeee;
  border-radius: 2px;
  padding: 1.5em;
  position: relative;
}

button,
.button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  border: 0;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)
}

button:hover,
.button:hover {
  background-position: -100%
}

button.button-m,
.button.button-m {
  font-size: 16px;
  min-width: 200px;
  padding: 9px 1em
}

button.button-l,
.button.button-l {
  font-size: 18px;
  padding: 17.4px 1em
}

button.button-block,
.button.button-block {
  display: block;
  width: 100%
}

button.button-cancel,
.button.button-cancel {
  background: #e6e9ed;
  color: #333;
  -webkit-transition: background 0.2s ease-in-out;
  transition: background 0.2s ease-in-out
}

button.button-cancel:hover,
.button.button-cancel:hover {
  background: #dde1e7
}

.wp-block-file .wp-block-file__button {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.wp-block-file .wp-block-file__button:hover {
  background-position: -100%
}

.wp-block-file a.wp-block-file__button:active,
.wp-block-file a.wp-block-file__button:focus,
.wp-block-file a.wp-block-file__button:hover {
  opacity: 1
}

.share-buttons,
.entry-content .share-buttons {
  font-size: 0;
  margin: -5px;
  padding: 0
}

.share-buttons>li,
.entry-content .share-buttons>li {
  display: inline-block;
  margin: 5px
}

.share-buttons>li::before,
.entry-content .share-buttons>li::before {
  content: none
}

.share-buttons button,
.share-buttons a,
.share-buttons a:not(.button):not(.wp-block-file__button),
.entry-content .share-buttons button,
.entry-content .share-buttons a,
.entry-content .share-buttons a:not(.button):not(.wp-block-file__button) {
  background: none;
  border: 1px solid #e6e9ed;
  color: #333;
  display: block;
  height: 40px;
  padding: 0;
  position: relative;
  text-align: center;
  width: 40px
}

.share-buttons button::before,
.share-buttons a::before,
.share-buttons a:not(.button):not(.wp-block-file__button)::before,
.entry-content .share-buttons button::before,
.entry-content .share-buttons a::before,
.entry-content .share-buttons a:not(.button):not(.wp-block-file__button)::before {
  font-size: 20px;
  line-height: 38px
}

.share-buttons button>span,
.share-buttons a>span,
.share-buttons a:not(.button):not(.wp-block-file__button)>span,
.entry-content .share-buttons button>span,
.entry-content .share-buttons a>span,
.entry-content .share-buttons a:not(.button):not(.wp-block-file__button)>span {
  display: none
}

@media screen {

  .share-buttons button:hover,
  .share-buttons a:hover,
  .share-buttons a:not(.button):not(.wp-block-file__button):hover,
  .entry-content .share-buttons button:hover,
  .entry-content .share-buttons a:hover,
  .entry-content .share-buttons a:not(.button):not(.wp-block-file__button):hover {
    border-color: #06b;
    color: #06b;
    text-decoration: none
  }

  .share-buttons button:hover>span,
  .share-buttons a:hover>span,
  .share-buttons a:not(.button):not(.wp-block-file__button):hover>span,
  .entry-content .share-buttons button:hover>span,
  .entry-content .share-buttons a:hover>span,
  .entry-content .share-buttons a:not(.button):not(.wp-block-file__button):hover>span {
    background: #434a54;
    border-radius: 3px;
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
    color: #fff;
    content: attr(data-tooltip);
    display: inline-block;
    font-size: 12px;
    font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1;
    padding: 9px 1em;
    position: absolute;
    bottom: calc(100% + 12px);
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    white-space: nowrap;
    z-index: 3
  }

  .share-buttons button:hover>span::before,
  .share-buttons a:hover>span::before,
  .share-buttons a:not(.button):not(.wp-block-file__button):hover>span::before,
  .entry-content .share-buttons button:hover>span::before,
  .entry-content .share-buttons a:hover>span::before,
  .entry-content .share-buttons a:not(.button):not(.wp-block-file__button):hover>span::before {
    background: #434a54;
    -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
    content: "";
    display: block;
    height: 8px;
    left: calc(50% - 4px);
    position: absolute;
    bottom: -4px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
    width: 8px;
    z-index: 5
  }
}

.entry-content .share-buttons::after {
  content: "";
  display: block;
  margin-bottom: 32px
}

.anchor::before {
  display: block;
  height: 160px;
  margin: 0;
  margin-top: -160px;
  visibility: hidden
}

@media (min-width: 1320px) {
  .anchor::before {
    content: ""
  }
}

.anchor-container {
  position: relative
}

.anchor-container .anchor-index {
  display: none;
  font-size: 14px;
  line-height: 40px;
  position: absolute;
  top: 0;
  z-index: 25
}

@media (min-width: 1320px) {
  .anchor-container .anchor-index {
    display: block;
    margin-top: 160px;
    text-align: right;
    -webkit-transform: translateX(calc(-100% - 80px));
    transform: translateX(calc(-100% - 80px));
    -webkit-transform: translateX(-10079px) \0;
    transform: translateX(-10079px) \0;
    -webkit-transform: translateX(-10079px) \9;
    transform: translateX(-10079px) \9
  }
}

.anchor-container .anchor-index.fixed {
  position: fixed
}

.anchor-container .anchor-index.bottom {
  top: auto;
  bottom: 0
}

.anchor-container .anchor-index>li {
  margin-top: 0
}

.anchor-container .anchor-index>li::before {
  content: none
}

.anchor-container .anchor-index a:not(.button):not(.wp-block-file__button) {
  color: #333;
  display: block;
  padding: 0 1.25em;
  -webkit-transition: none;
  transition: none
}

@media (min-width: 1320px) {
  .anchor-container .anchor-index a:not(.button):not(.wp-block-file__button) {
    width: 9999px
  }
}

.anchor-container .anchor-index a:not(.button):not(.wp-block-file__button):hover {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #06b;
  text-decoration: none
}

.anchor-container .anchor-index .active {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #06b;
  color: #fff;
  font-size: 16px;
  font-weight: bold
}

.anchor-container .anchor-index .active a:not(.button):not(.wp-block-file__button) {
  color: #fff
}

.anchor-container .anchor-index .active a:not(.button):not(.wp-block-file__button):hover {
  color: #fff;
  text-decoration: none
}

.before-anchor-container>:last-child {
  margin-bottom: 0
}

.hamburger {
  position: relative
}

.hamburger::before,
.hamburger::after,
.hamburger .hamburger-inner::before {
  background-color: #333;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 1px;
  left: 0;
  position: absolute;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  width: 15px
}

.hamburger::before {
  margin-top: -5.5px;
  top: 50%
}

.hamburger::after {
  margin-bottom: -5.5px;
  bottom: 50%
}

.hamburger .hamburger-inner {
  padding-left: 15px
}

.hamburger .hamburger-inner::before {
  margin-top: -.5px;
  top: 50%
}

.hamburger .hamburger-text {
  position: relative
}

.hamburger .hamburger-text .hamburger-text-inner {
  display: inline-block
}

.hamburger .hamburger-text::after {
  content: "Close";
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: scaleY(0);
  transform: scaleY(0)
}

@media (hover: hover) {

  .hamburger:hover::before,
  .hamburger:hover::after,
  .hamburger:hover .hamburger-inner::before {
    background-color: #06b
  }
}

.hamburger::before,
.hamburger::after {
  -webkit-transition: margin-top .1s linear .1s, margin-bottom .1s linear .1s, -webkit-transform .1s linear;
  transition: margin-top .1s linear .1s, margin-bottom .1s linear .1s, -webkit-transform .1s linear;
  transition: transform .1s linear, margin-top .1s linear .1s, margin-bottom .1s linear .1s;
  transition: transform .1s linear, margin-top .1s linear .1s, margin-bottom .1s linear .1s, -webkit-transform .1s linear
}

.hamburger .hamburger-inner::before {
  -webkit-transition: opacity 0s linear .1s;
  transition: opacity 0s linear .1s
}

.hamburger .hamburger-text .hamburger-text-inner {
  -webkit-transition: -webkit-transform 0.1s linear 0.1s;
  transition: -webkit-transform 0.1s linear 0.1s;
  transition: transform 0.1s linear 0.1s;
  transition: transform 0.1s linear 0.1s, -webkit-transform 0.1s linear 0.1s
}

.hamburger .hamburger-text::after {
  -webkit-transition: -webkit-transform 0.1s linear;
  transition: -webkit-transform 0.1s linear;
  transition: transform 0.1s linear;
  transition: transform 0.1s linear, -webkit-transform 0.1s linear
}

.hamburger.visible::before,
.hamburger.visible::after {
  -webkit-transition: margin-top .1s linear, margin-bottom .1s linear, -webkit-transform .1s linear .1s;
  transition: margin-top .1s linear, margin-bottom .1s linear, -webkit-transform .1s linear .1s;
  transition: margin-top .1s linear, margin-bottom .1s linear, transform .1s linear .1s;
  transition: margin-top .1s linear, margin-bottom .1s linear, transform .1s linear .1s, -webkit-transform .1s linear .1s
}

.hamburger.visible::before {
  margin-top: -.5px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.hamburger.visible::after {
  margin-bottom: -.5px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.hamburger.visible .hamburger-inner::before {
  opacity: 0
}

.hamburger.visible .hamburger-text .hamburger-text-inner {
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
  -webkit-transition: -webkit-transform 0.1s linear;
  transition: -webkit-transform 0.1s linear;
  transition: transform 0.1s linear;
  transition: transform 0.1s linear, -webkit-transform 0.1s linear
}

.hamburger.visible .hamburger-text::after {
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transition: -webkit-transform 0.1s linear 0.1s;
  transition: -webkit-transform 0.1s linear 0.1s;
  transition: transform 0.1s linear 0.1s;
  transition: transform 0.1s linear 0.1s, -webkit-transform 0.1s linear 0.1s
}

.searchform._minimal .search {
  border: 0
}

.searchform .input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.searchform .search {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  border-radius: 0;
  border: 10px solid #f5f7fa;
  color: #333;
  line-height: 20px;
  padding: 5px;
  padding-right: 50px;
  width: 100%
}

@media (min-width: 480px) {
  .searchform .search {
    padding: 10px;
    padding-right: 60px
  }
}

.searchform input+.submit {
  background: none;
  border: 0;
  color: #333;
  font-size: 0;
  margin-left: -50px;
  padding: 0
}

@media (min-width: 480px) {
  .searchform input+.submit {
    margin-left: -60px
  }
}

.searchform input+.submit::before {
  display: block;
  font-size: 18px;
  width: 50px
}

@media (min-width: 480px) {
  .searchform input+.submit::before {
    font-size: 20px;
    width: 60px
  }
}

.searchform input+.submit.icon-search:hover {
  color: inherit
}

.card .card-title {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.75;
  margin: 1em 0 0.375em;
  text-align: left
}

.card .card-text {
  font-size: 14px
}

.column-1 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 40px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-1 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-2 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 120px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-2 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-3 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 200px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-3 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-4 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 280px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-4 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-5 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 360px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-5 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-6 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 440px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-6 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-7 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 520px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-7 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-8 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 600px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-8 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-9 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 680px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-9 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-10 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 760px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-10 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-11 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 840px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-11 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-12 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-12 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-13 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1000px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-13 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-14 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1080px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-14 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-15 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1160px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-15 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-16 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1240px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-16 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-17 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1320px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-17 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-18 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1400px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-18 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-19 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1480px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-19 {
    padding-left: 40px;
    padding-right: 40px
  }
}

.column-20 {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1560px;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .column-20 {
    padding-left: 40px;
    padding-right: 40px
  }
}

[class*="column-"].centered {
  margin-left: auto;
  margin-right: auto
}

[class*="column-"].no-outside-gutter {
  padding-left: 0;
  padding-right: 0
}

[class*="column-"] .full-width {
  left: 50%;
  margin-left: -50vw;
  position: relative;
  width: 100vw
}

[class*="column-"] .full-width+* {
  clear: both
}

table.career {
  border: 0
}

table.career tr {
  display: block
}

@media (min-width: 640px) {
  table.career tr {
    display: table-row
  }
}

table.career tr:last-child th,
table.career tr:last-child td {
  border-bottom: 0
}

table.career tr:last-child td {
  padding-bottom: 0
}

table.career th,
table.career td {
  border: 0;
  display: block;
  padding: 0
}

@media (min-width: 640px) {

  table.career th,
  table.career td {
    border-bottom: 1px solid #f5f7fa;
    display: table-cell
  }
}

table.career td:first-child {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #aab2bd;
  font-weight: normal
}

@media (min-width: 640px) {
  table.career td:first-child {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
    color: #333;
    padding: 0.5em 1em 0.5em 0;
    width: 13em
  }
}

table.career td {
  padding-bottom: 1em
}

@media (min-width: 640px) {
  table.career td {
    padding: 0.5em 0
  }
}

.post-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  text-align: left
}

.post-list._with-background {
  background: #f5f7fa;
  padding: 6.25vw 6.25vw 18.75vw
}

@media (min-width: 400px) {
  .post-list._with-background {
    padding-bottom: 75px
  }
}

@media (min-width: 640px) {
  .post-list._with-background {
    padding: 40px 40px 75px
  }
}

.post-list._with-background._with-button {
  margin-bottom: -30px
}

.post-list._with-background+.button {
  width: calc(100% - 12.5vw)
}

.post-list._with-background>li {
  font-size: 14px
}

.post-list._with-background>li .post-label {
  font-size: 12px;
  line-height: 18px;
  min-width: 100px
}

.post-list._with-background>li .post-cover {
  max-width: 100px
}

@media (min-width: 768px) {
  .post-list._2-col>li {
    width: calc(50% - 20px)
  }

  .post-list._2-col>li:nth-last-child(2):nth-child(odd) {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0
  }
}

@media (min-width: 640px) {

  .post-list._horizontal>li,
  .post-list._horizontal>li>a:not(.button):not(.wp-block-file__button) {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }

  .post-list._horizontal>li>*,
  .post-list._horizontal>li>a:not(.button):not(.wp-block-file__button)>* {
    width: auto
  }

  .post-list._horizontal>li .post-date,
  .post-list._horizontal>li>a:not(.button):not(.wp-block-file__button) .post-date {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100px
  }

  .post-list._horizontal>li .post-label,
  .post-list._horizontal>li>a:not(.button):not(.wp-block-file__button) .post-label {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 20px
  }

  .post-list._horizontal>li .post-title,
  .post-list._horizontal>li>a:not(.button):not(.wp-block-file__button) .post-title {
    width: calc(100% - 240px)
  }

  .post-list._horizontal>li .post-fields,
  .post-list._horizontal>li>a:not(.button):not(.wp-block-file__button) .post-fields {
    padding-left: 240px;
    width: 100%
  }
}

.post-list+.button {
  display: block;
  margin: auto;
  max-width: 280px;
  min-width: auto;
  width: 100%
}

.post-list>li {
  border-bottom: 1px solid #e6e9ed;
  margin-bottom: 1em;
  padding-bottom: 1em;
  padding-left: 0 !important;
  text-indent: 0 !important;
  width: 100%
}

@media (min-width: 640px) {
  .post-list>li {
    margin-bottom: 1.5em;
    padding-bottom: 1.5em
  }
}

.entry-content .post-list>li::before {
  content: none
}

.post-list>li:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0
}

.post-list>li .post-meta {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.post-list>li,
.post-list>li>a:not(.button):not(.wp-block-file__button) {
  color: inherit;
  display: block
}

.post-list>li[target="_blank"]::after,
.post-list>li>a:not(.button):not(.wp-block-file__button)[target="_blank"]::after {
  content: none
}

.post-list>li[href$=".pdf"]::before,
.post-list>li[href*="download.php?mode=pdf"]::before,
.post-list>li>a:not(.button):not(.wp-block-file__button)[href$=".pdf"]::before,
.post-list>li>a:not(.button):not(.wp-block-file__button)[href*="download.php?mode=pdf"]::before {
  content: none
}

.post-list>li[href$=".pdf"] .post-title::before,
.post-list>li[href*="download.php?mode=pdf"] .post-title::before,
.post-list>li>a:not(.button):not(.wp-block-file__button)[href$=".pdf"] .post-title::before,
.post-list>li>a:not(.button):not(.wp-block-file__button)[href*="download.php?mode=pdf"] .post-title::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "" " "
}

.post-list>li:hover,
.post-list>li>a:not(.button):not(.wp-block-file__button):hover {
  text-decoration: none
}

.post-list>li>*,
.post-list>li>a:not(.button):not(.wp-block-file__button)>* {
  width: 100%
}

.post-list>li .post-date,
.post-list>li .post-label,
.post-list>li>a:not(.button):not(.wp-block-file__button) .post-date,
.post-list>li>a:not(.button):not(.wp-block-file__button) .post-label {
  width: auto
}

.post-list>li>a:not(.button):not(.wp-block-file__button) {
  -ms-flex-item-align: start;
  align-self: flex-start
}

.post-list>li p {
  margin: 0
}

.post-list>li .post-date {
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.post-list>li .post-label {
  border: 1px solid #06b;
  color: #06b;
  float: right;
  font-size: 14px;
  line-height: 24px;
  min-width: 120px;
  text-align: center
}

.post-list>li .post-label._recruit,
.post-list>li .post-label._media {
  border-color: #8cc152;
  color: #8cc152
}

.post-list>li .post-label._probono {
  border-color: #d770ad;
  color: #d770ad
}

.post-list>li .post-label._book {
  border-color: #e9573f;
  color: #e9573f
}

.post-list>li .post-label._open {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  border-color: #16a085;
  color: #16a085
}

.post-list>li .post-label._important {
  border-color: #da4453;
  color: #da4453
}

.post-list>li .post-cover {
  float: right;
  margin: 0;
  margin-left: 1em;
  max-width: 120px;
  padding: 0.5em 0;
  width: 30%
}

.post-list>li .post-cover img {
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  padding: 0
}

.post-list>li .post-professionals span::after {
  content: " / "
}

[lang="ja"] .post-list>li .post-professionals span::after {
  content: " ／ "
}

.post-list>li .post-professionals span:last-of-type::after {
  content: ""
}

.post-list>li .post-subtitle {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #656d78
}

.post-list>li .post-subtitle+.title {
  margin-top: 0
}

.post-list>li .post-title {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  border-bottom: 0;
  font-size: inherit;
  font-weight: bold;
  margin: 0;
  padding: 0
}

.post-list>li>a .post-title {
  color: #06b
}

.post-list>li>a:hover .post-title {
  text-decoration: underline
}

.post-list>li .post-fields {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #656d78
}

.post-list>li .post-fields::before {
  content: "Practic Areas: "
}

[lang="ja"] .post-list>li .post-fields::before {
  content: "分野："
}

.post-list>li .post-fields span::after {
  content: " / "
}

[lang="ja"] .post-list>li .post-fields span::after {
  content: " ／ "
}

.post-list>li .post-fields span:last-of-type::after {
  content: ""
}

.entry-content .professional-list,
.professional-list {
  margin-top: -10px;
  margin-left: -5px;
  margin-right: -5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -20px;
  padding-left: 0
}

@media (min-width: 320px) {

  .entry-content .professional-list,
  .professional-list {
    margin-top: calc(-1.5625vw + -5px)
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list,
  .professional-list {
    margin-top: -20px
  }
}

@media (min-width: 320px) {

  .entry-content .professional-list,
  .professional-list {
    margin-left: calc(-.78125vw + -2.5px)
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list,
  .professional-list {
    margin-left: -10px
  }
}

@media (min-width: 320px) {

  .entry-content .professional-list,
  .professional-list {
    margin-right: calc(-.78125vw + -2.5px)
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list,
  .professional-list {
    margin-right: -10px
  }
}

.entry-content .professional-list>li,
.professional-list>li {
  padding-top: 10px;
  padding-left: 5px;
  padding-right: 5px;
  padding-bottom: 20px;
  text-indent: 0;
  width: 50%
}

@media (min-width: 320px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    padding-top: calc(1.5625vw + 5px)
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    padding-top: 20px
  }
}

@media (min-width: 320px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    padding-left: calc(.78125vw + 2.5px)
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    padding-left: 10px
  }
}

@media (min-width: 320px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    padding-right: calc(.78125vw + 2.5px)
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    padding-right: 10px
  }
}

@media (min-width: 640px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    width: 33.33333%
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list>li,
  .professional-list>li {
    width: 25%
  }
}

.entry-content .professional-list>li+li,
.professional-list>li+li {
  margin-top: 0
}

.entry-content .professional-list>li::before,
.professional-list>li::before {
  content: none
}

.entry-content .professional-list>li>a:not(.button):not(.wp-block-file__button),
.professional-list>li>a:not(.button):not(.wp-block-file__button) {
  display: block;
  color: inherit
}

.entry-content .professional-list>li>a:not(.button):not(.wp-block-file__button):hover,
.professional-list>li>a:not(.button):not(.wp-block-file__button):hover {
  color: #06b;
  text-decoration: none
}

.entry-content .professional-list>li .photo,
.professional-list>li .photo {
  background: #f5f7fa;
  height: 0;
  margin: 0;
  overflow: hidden;
  padding-bottom: 125%
}

.entry-content .professional-list>li .photo>img,
.professional-list>li .photo>img {
  padding: 0
}

.entry-content .professional-list>li .name,
.professional-list>li .name {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: bold;
  line-height: 1.5;
  margin: 0;
  margin-top: 1em
}

.entry-content .professional-list>li .name em,
.professional-list>li .name em {
  font-size: 16px;
  display: inline-block;
  font-size: 18px
}

@media (min-width: 320px) {

  .entry-content .professional-list>li .name em,
  .professional-list>li .name em {
    font-size: calc(.3125vw + 15px)
  }
}

@media (min-width: 960px) {

  .entry-content .professional-list>li .name em,
  .professional-list>li .name em {
    font-size: 18px
  }
}

.entry-content .professional-list>li .name small,
.professional-list>li .name small {
  display: inline-block;
  font-size: 14px
}

.entry-content .professional-list>li .meta,
.professional-list>li .meta {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
  margin-top: 0.25em
}

.post-navigation {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

@media (min-width: 768px) {
  .post-navigation {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media (min-width: 320px) {
  .post-navigation {
    margin-top: calc(12.5vw + 0px)
  }
}

@media (min-width: 768px) {
  .post-navigation {
    margin-top: 96px
  }
}

.post-navigation .button {
  font-size: 16px;
  min-width: 200px;
  padding: 9px 1em;
  min-width: auto
}

@media (min-width: 400px) {
  .post-navigation .button {
    font-size: 18px;
    padding: 17.4px 1em
  }
}

.post-navigation .return {
  margin: 0 50px;
  white-space: nowrap
}

@media (min-width: 400px) {
  .post-navigation .return {
    margin: 0 70px;
    width: 260px
  }
}

.post-navigation .next,
.post-navigation .prev {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 0;
  position: relative;
  width: 40px
}

@media (min-width: 400px) {

  .post-navigation .next,
  .post-navigation .prev {
    width: 60px
  }
}

.post-navigation .next::before,
.post-navigation .prev::before {
  font-size: 22px
}

.post-navigation .next {
  margin-right: -40px
}

@media (min-width: 400px) {
  .post-navigation .next {
    margin-right: -60px
  }
}

.post-navigation .prev {
  margin-left: -40px
}

@media (min-width: 400px) {
  .post-navigation .prev {
    margin-left: -60px
  }
}

.pagination {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-top: 40px
}

@media (min-width: 768px) {
  .pagination {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media (min-width: 320px) {
  .pagination {
    margin-top: calc(12.5vw + 0px)
  }
}

@media (min-width: 768px) {
  .pagination {
    margin-top: 96px
  }
}

.pagination .nav-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.pagination .nav-links>span {
  font-size: 16px;
  line-height: 1.4;
  margin: 5px;
  padding: 9px 0
}

.pagination .nav-links>a,
.pagination .nav-links>.current {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  border: 0;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  font-size: 16px;
  min-width: 200px;
  padding: 9px 1em;
  margin: 5px;
  min-width: 40px;
  padding-left: 0.5em;
  padding-right: 0.5em
}

.pagination .nav-links>a:hover,
.pagination .nav-links>.current:hover {
  background-position: -100%
}

.pagination .nav-links>.current {
  background: #e6e9ed;
  color: #333
}

.pagination .nav-links .next,
.pagination .nav-links .prev {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 0;
  position: relative;
  width: 40px
}

.pagination .nav-links .next::before,
.pagination .nav-links .prev::before {
  font-size: 22px
}

.pagination .nav-links .prev::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ""
}

.pagination .nav-links .next::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ""
}

.entry-footer-nav {
  clear: both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: space-evenly;
  -ms-flex-pack: space-evenly;
  justify-content: space-evenly;
  margin: auto;
  max-width: 760px;
  padding: 20px
}

@media (min-width: 768px) {
  .entry-footer-nav {
    margin-top: 40px
  }
}

.entry-footer-nav .button {
  min-width: 280px;
  margin: 0 20px 20px
}

@media (min-width: 768px) {
  .entry-footer-nav .button {
    min-width: 300px
  }
}

.search-results-container .searchform {
  margin: 40px -10px 20px
}

@media (min-width: 768px) {
  .search-results-container .searchform {
    margin-top: 50px;
    margin-bottom: 30px
  }
}

@media (min-width: 1200px) {
  .search-results-container .searchform {
    margin-top: 60px;
    margin-bottom: 40px
  }
}

.search-results-list>li {
  color: #333
}

.search-results-list>li.noresult {
  padding-top: 15px;
  padding-bottom: 15px
}

.search-results-list>li+li a {
  border-top: 1px solid #e6e9ed
}

.search-results-list>li a {
  display: block;
  padding: 15px 0
}

.search-results-list>li a:hover h1 {
  text-decoration: underline
}

.search-results-list>li h1 {
  color: #06b;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 5px;
  padding: 0
}

.search-results-list>li .post-type {
  color: #656d78;
  font-size: 12px
}

.search-results-list>li .excerpt {
  font-size: 14px;
  line-height: 1.5
}

.search-results-list>li .url {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #aab2bd;
  font-size: 12px;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.5;
  margin-top: 5px
}

.site-header {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Lato", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 50
}

.site-header:lang(zh-CN) {
  font-family: "Lato", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 601px) {
  .admin-bar .site-header {
    top: 46px
  }
}

@media (min-width: 783px) {
  .admin-bar .site-header {
    top: 32px
  }
}

.site-header.compact .logo {
  padding: 5px 10px
}

@media (min-width: 1200px) {
  .site-header.compact .logo {
    padding: 10px 10px
  }
}

.site-header.compact .logo img {
  height: 50px
}

@media (min-width: 1200px) {
  .site-header.compact .logo img {
    height: 60px
  }
}

.site-header.compact .nav-outer {
  padding-right: 8px
}

.site-header .logo {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out
}

@media (min-width: 320px) {
  .site-header .logo {
    padding-top: calc(3.125vw + -5px)
  }
}

@media (min-width: 960px) {
  .site-header .logo {
    padding-top: 25px
  }
}

@media (min-width: 320px) {
  .site-header .logo {
    padding-bottom: calc(3.125vw + -5px)
  }
}

@media (min-width: 960px) {
  .site-header .logo {
    padding-bottom: 25px
  }
}

@media (min-width: 320px) {
  .site-header .logo {
    padding-left: calc(2.34375vw + 2.5px)
  }
}

@media (min-width: 960px) {
  .site-header .logo {
    padding-left: 25px
  }
}

@media (min-width: 320px) {
  .site-header .logo {
    padding-right: calc(2.34375vw + 2.5px)
  }
}

@media (min-width: 960px) {
  .site-header .logo {
    padding-right: 25px
  }
}

.site-header .logo img {
  height: 50px;
  max-width: none;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out
}

@media (min-width: 320px) {
  .site-header .logo img {
    height: calc(3.125vw + 40px)
  }
}

@media (min-width: 960px) {
  .site-header .logo img {
    height: 70px
  }
}

.site-header .nav-outer {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-right: 8px;
  position: relative;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out
}

@media (min-width: 320px) {
  .site-header .nav-outer {
    padding-right: calc(4.018vw - 4.857px)
  }
}

@media (min-width: 1440px) {
  .site-header .nav-outer {
    padding-right: 53px
  }
}

.site-header .nav-outer a,
.site-header .nav-outer button {
  display: inline-block;
  padding: 0 0.5em
}

.site-header .nav-outer a:hover,
.site-header .nav-outer button:hover {
  color: #06b
}

.site-header .nav-outer button {
  background: none;
  border: 0;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  text-transform: inherit
}

.site-header .nav-outer .menu-button {
  display: none;
  background: none;
  border: 0;
  display: block;
  font-size: 15px;
  font-weight: 500;
  height: 40px;
  padding: 0 0.5em;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  z-index: 9
}

@media (min-width: 1200px) {
  .site-header .nav-outer .menu-button {
    display: none
  }
}

.site-header .nav-outer .menu-button::before {
  font-size: 16px;
  margin-right: 0.25em;
  vertical-align: -1px
}

.site-header .nav {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 15px;
  font-weight: bold;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  z-index: 9
}

@media (min-width: 1760px) {
  .site-header .nav {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
  }
}

.site-header .nav .secondary-menu {
  font-weight: normal;
  font-size: 14px
}

@media (min-width: 1760px) {
  .site-header .nav .secondary-menu::before {
    content: "/"
  }

  [lang="ja"] .site-header .nav .secondary-menu::before {
    content: "／"
  }
}

.site-header .nav .main-menu {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}

.site-header .nav .main-menu>li {
  display: inline-block;
  white-space: nowrap
}

.site-header .nav .main-menu>li+li::before {
  content: "/"
}

[lang="ja"] .site-header .nav .main-menu>li+li::before {
  content: "／"
}

.site-header .nav .main-menu>li+li.menu-item-has-children .sub-menu-outer:not(.groups-outer) {
  margin-left: -1em
}

.site-header .nav .main-menu>li[class*=" current-menu"] {
  position: relative
}

.site-header .nav .main-menu>li[class*=" current-menu"]::after {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  bottom: -15px;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out
}

@media (max-width: 1199px) {
  .site-header .nav .main-menu>li[class*=" current-menu"]::after {
    content: none
  }
}

.site-header .nav .main-menu>li+li[class*=" current-menu"]::after {
  margin-left: 0.5em
}

@media (min-width: 1200px) {
  .site-header.compact .nav .main-menu>li[class*=" current-menu"]::after {
    bottom: -8px
  }
}

@media (min-width: 1760px) {
  .site-header.compact .nav .main-menu>li[class*=" current-menu"]::after {
    bottom: -14px
  }
}

@media (min-width: 1200px) and (max-width: 1759px) {
  .site-header .nav .main-menu.secondary-menu>li[class*=" current-menu"]::after {
    font-family: 'kitahamaicon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "";
    bottom: auto;
    top: -15px
  }
}

@media (min-width: 1200px) and (max-width: 1759px) {
  .site-header.compact .nav .main-menu.secondary-menu>li[class*=" current-menu"]::after {
    top: -8px
  }
}

.site-header .nav .menu-item-has-children {
  position: relative
}

@media (min-width: 1200px) {
  .site-header .nav .menu-item-has-children:hover .sub-menu-outer {
    opacity: 1;
    visibility: visible
  }

  .site-header .nav .menu-item-has-children:hover .sub-menu>li,
  .site-header .nav .menu-item-has-children:hover .groups>li {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

.site-header .nav .sub-menu-outer {
  margin-left: -2em;
  min-width: calc(100% + 2.5em);
  opacity: 0;
  padding-top: 15px;
  position: absolute;
  -webkit-transition: opacity 0.25s ease-in-out, visibility 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out, visibility 0.25s ease-in-out;
  visibility: hidden;
  z-index: 9
}

@media (max-width: 1759px) {
  .site-header.compact .nav .sub-menu-outer {
    padding-top: 10px
  }
}

.site-header .nav .groups-outer {
  left: 0;
  margin: 0 auto;
  min-width: auto;
  position: fixed;
  right: 0
}

.site-header .nav .sub-menu,
.site-header .nav .groups-container {
  background: #fff;
  -webkit-box-shadow: 0 15px 50px rgba(0, 0, 0, 0.15);
  box-shadow: 0 15px 50px rgba(0, 0, 0, 0.15)
}

.site-header .nav .sub-menu [class*=" current-menu"],
.site-header .nav .groups-container [class*=" current-menu"] {
  color: #06b
}

.site-header .nav .groups-container {
  padding: 2em 25px 2em 60px
}

.site-header .nav .sub-menu {
  padding: 2em
}

@media (min-width: 1200px) {
  .site-header .nav .sub-menu>li {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-transition: opacity 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s;
    transition: opacity 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s;
    transition: opacity 0.3s ease-in-out 0.1s, transform 0.3s ease-in-out 0.1s;
    transition: opacity 0.3s ease-in-out 0.1s, transform 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s
  }
}

.site-header .nav .sub-menu a {
  display: block;
  padding: 0.5em
}

.site-header .nav .groups {
  font-size: 14px;
  max-height: 50vh;
  padding-right: 35px;
  overflow-y: hidden
}

.site-header .nav .groups>li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1em 0
}

@media (min-width: 1200px) {
  .site-header .nav .groups>li {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-transition: opacity 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s;
    transition: opacity 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s;
    transition: opacity 0.3s ease-in-out 0.1s, transform 0.3s ease-in-out 0.1s;
    transition: opacity 0.3s ease-in-out 0.1s, transform 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s
  }
}

.site-header .nav .groups>li+li {
  border-top: 1px solid #ccd1d9
}

.site-header .nav .groups a {
  padding: 0
}

.site-header .nav .groups .group-name {
  border-right: 1px solid #ccd1d9;
  color: #aab2bd;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 120px
}

.site-header .nav .groups .categories {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-left: 1em;
  white-space: normal
}

.site-header .nav .groups .categories>li {
  display: inline
}

.site-header .nav .groups .categories>li::after {
  content: " / "
}

[lang="ja"] .site-header .nav .groups .categories>li::after {
  content: " ／ "
}

.site-header .nav .groups .categories>li:last-child::after {
  content: ""
}

.site-header .nav .groups .categories>li>a {
  display: inline
}

.site-header .nav .pulldown {
  cursor: default
}

.site-header .nav .pulldown::after {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  margin-left: 0.25em;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out
}

.site-header .nav .sub-menu-toggle {
  display: none
}

.site-header .nav .search {
  font-size: 0
}

.site-header .nav .search::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  font-size: 15px;
  padding: 0.5em
}

.site-header .nav .site-search-container {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  left: 350px;
  height: 120px;
  padding: 20px 40px;
  padding-right: calc(4.018vw + 2.143px);
  position: fixed;
  right: 0;
  top: 0;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  z-index: 9
}

.site-header .nav .site-search-container._minimal .search {
  border: 0
}

.site-header .nav .site-search-container .input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.site-header .nav .site-search-container .search {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  border-radius: 0;
  border: 10px solid #f5f7fa;
  color: #333;
  line-height: 20px;
  padding: 5px;
  padding-right: 50px;
  width: 100%
}

@media (min-width: 480px) {
  .site-header .nav .site-search-container .search {
    padding: 10px;
    padding-right: 60px
  }
}

.site-header .nav .site-search-container input+.submit {
  background: none;
  border: 0;
  color: #333;
  font-size: 0;
  margin-left: -50px;
  padding: 0
}

@media (min-width: 480px) {
  .site-header .nav .site-search-container input+.submit {
    margin-left: -60px
  }
}

.site-header .nav .site-search-container input+.submit::before {
  display: block;
  font-size: 18px;
  width: 50px
}

@media (min-width: 480px) {
  .site-header .nav .site-search-container input+.submit::before {
    font-size: 20px;
    width: 60px
  }
}

.site-header .nav .site-search-container input+.submit.icon-search:hover {
  color: inherit
}

@media (min-width: 601px) {
  .admin-bar .site-header .nav .site-search-container {
    top: 46px
  }
}

@media (min-width: 783px) {
  .admin-bar .site-header .nav .site-search-container {
    top: 32px
  }
}

.site-header .nav .site-search-container:lang(ja) {
  left: 302px
}

@media (min-width: 1440px) {
  .site-header .nav .site-search-container {
    padding-right: 60px
  }
}

.site-header .nav .site-search-container.active {
  -webkit-transform: translateX(0);
  transform: translateX(0)
}

.site-header .nav .site-search-container input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  background: #f5f7fa;
  height: 50px;
  padding: 20px;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  width: 100%
}

.site-header .nav .site-search-container .submit {
  padding: 0;
  font-size: 0
}

.site-header.compact .nav .site-search-container {
  height: 80px
}

.site-header.compact .nav .site-search-container input {
  height: 40px;
  padding: 10px 20px
}

.site-header .nav .site-search-container .search-results {
  left: 40px;
  position: absolute;
  top: 100%;
  z-index: 9
}

.site-header .nav .site-search-container .search-results a {
  padding: 15px 0;
  width: 100%
}

.site-header .nav .site-search-container .search-results a:hover p {
  color: #333
}

.site-header .nav .site-search-container .search-results a:hover .url {
  color: #aab2bd
}

.site-header .nav .site-search-container .search-results h1 {
  font-weight: bold
}

.site-header .nav .site-search-container .search-results p {
  font-weight: normal
}

.site-header .nav .focusout {
  background: #eee;
  bottom: 0;
  display: none;
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: -1
}

.site-header .nav .focusout.active {
  display: block
}

@media (max-width: 1199px) {

  .site-header .nav-outer a,
  .site-header .nav-outer button {
    display: block;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0.5em 1em
  }

  .site-header .nav-outer a:hover,
  .site-header .nav-outer button:hover {
    background: #f5f7fa;
    color: inherit
  }

  .site-header .nav-outer .menu-button:hover {
    background: none
  }
}

@media (max-width: 1199px) and (hover: hover) {
  .site-header .nav-outer .menu-button:hover {
    color: #06b
  }
}

@media (max-width: 1199px) {
  .site-header .nav-outer .fade-screen {
    top: 60px;
    background: #000;
    bottom: 0;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    -webkit-transition: all 0.2s ease-in-out, top 0.25s ease-in-out;
    transition: all 0.2s ease-in-out, top 0.25s ease-in-out;
    visibility: hidden;
    z-index: 98
  }
}

@media (max-width: 1199px) and (min-width: 320px) {
  .site-header .nav-outer .fade-screen {
    top: calc(9.375vw + 30px)
  }
}

@media (max-width: 1199px) and (min-width: 960px) {
  .site-header .nav-outer .fade-screen {
    top: 120px
  }
}

@media (max-width: 1199px) {
  .site-header .nav-outer .fade-screen.visible {
    opacity: 0.5;
    visibility: visible
  }

  .site-header.compact .nav-outer .fade-screen {
    top: 60px
  }

  .site-header .nav {
    top: 60px;
    background: #fff;
    bottom: 0;
    border-top: 1px solid #e6e9ed;
    display: block;
    line-height: 2;
    -webkit-overflow-scrolling: touch;
    overflow-y: auto;
    position: fixed;
    right: 0;
    -webkit-transition: top 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
    transition: top 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out, top 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out, top 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    width: 240px;
    z-index: 99
  }
}

@media (max-width: 1199px) and (min-width: 320px) {
  .site-header .nav {
    top: calc(9.375vw + 30px)
  }
}

@media (max-width: 1199px) and (min-width: 960px) {
  .site-header .nav {
    top: 120px
  }
}

@media (max-width: 1199px) {
  .site-header.compact .nav {
    top: 60px
  }

  .site-header .nav button {
    line-height: 2
  }

  .site-header .nav .secondary-menu {
    font-size: 15px
  }

  .site-header .nav .secondary-menu::before {
    content: ""
  }

  .site-header .nav .secondary-menu>li.hide-on-sp {
    display: none
  }

  .site-header .nav .main-menu {
    display: block
  }

  .site-header .nav .main-menu>li {
    border-bottom: 1px solid #e6e9ed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }

  .site-header .nav .main-menu>li+li::before {
    content: ""
  }

  [lang="ja"] .site-header .nav .main-menu>li+li::before {
    content: ""
  }

  .site-header .nav .main-menu>li+li.menu-item-has-children .sub-menu-outer,
  .site-header .nav .main-menu>li+li.menu-item-has-children .groups-outer {
    margin: 0;
    min-width: auto
  }

  .site-header .nav .main-menu>li+li.menu-item-has-children .sub-menu-outer:not(.groups-outer) {
    margin-left: 0
  }

  .site-header .nav .main-menu>li.menu-item-has-children .sub-menu-outer {
    min-width: auto
  }

  .site-header .nav .sub-menu-outer {
    padding-top: 0;
    width: 100%
  }

  .site-header.compact .nav .sub-menu-outer {
    padding-top: 0
  }

  .site-header .nav .sub-menu,
  .site-header .nav .groups {
    background: rgba(255, 255, 255, 0.1);
    font-weight: normal;
    padding: 0;
    overflow: hidden
  }

  .site-header .nav .sub-menu>li,
  .site-header .nav .groups>li {
    border-top: 1px solid #e6e9ed
  }

  .site-header .nav .sub-menu a,
  .site-header .nav .groups a {
    padding-left: 2em
  }

  .site-header .nav .sub-menu,
  .site-header .nav .groups-container {
    -webkit-box-shadow: none;
    box-shadow: none
  }

  .site-header .nav .close-nav,
  .site-header .nav .sub-menu-toggle {
    background: none;
    border: 0;
    border-left: 1px solid #e6e9ed;
    display: block;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    font-size: 0;
    width: 50px
  }

  .site-header .nav .close-nav::before,
  .site-header .nav .sub-menu-toggle::before {
    font-size: 16px;
    display: inline-block;
    padding: 0;
    -webkit-transition: -webkit-transform 0.25s ease-in-out;
    transition: -webkit-transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out
  }

  .site-header .nav .close-nav.open::before,
  .site-header .nav .sub-menu-toggle.open::before {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
  }

  .site-header .nav .pulldown {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-align: left
  }

  .site-header .nav .pulldown::after {
    margin-right: -1em;
    text-align: center;
    -webkit-transition: -webkit-transform 0.25s ease-in-out;
    transition: -webkit-transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out;
    transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
    width: 50px
  }

  .site-header .nav .pulldown.open::after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
  }

  .site-header .nav .menu-item-has-children .sub-menu-outer {
    display: none;
    opacity: 1;
    margin: 0;
    position: relative;
    -webkit-transform: none;
    transform: none;
    visibility: visible
  }

  .site-header .nav .site-search-container {
    height: auto;
    left: auto;
    padding: 1em;
    position: relative;
    -webkit-transform: none;
    transform: none;
    top: auto
  }

  .site-header .nav .site-search-container:lang(ja) {
    left: auto
  }

  .site-header .nav .site-search-container input {
    height: 40px;
    padding: 10px
  }

  .site-header.compact .nav .site-search-container {
    height: auto
  }

  .site-header.compact .nav .site-search-container input {
    padding: 10px
  }

  .site-header .nav.visible {
    -webkit-transform: translateX(0);
    transform: translateX(0)
  }
}

.breadcrumbs-outer:hover .breadcrumbs.compact {
  -webkit-transform: translateX(0);
  transform: translateX(0)
}

.open-breadcrumbs {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  top: 80px;
  background: #06b;
  border: 0;
  color: #fff;
  display: none;
  font-size: 0;
  padding: 0;
  position: fixed;
  right: 0;
  z-index: 20
}

@media (min-width: 320px) {
  .open-breadcrumbs {
    top: calc(12.5vw + 40px)
  }
}

@media (min-width: 960px) {
  .open-breadcrumbs {
    top: 160px
  }
}

@media (min-width: 768px) {
  .open-breadcrumbs {
    display: block
  }
}

@media (min-width: 601px) {
  .admin-bar .open-breadcrumbs {
    top: 126px
  }
}

@media (min-width: 601px) and (min-width: 320px) {
  .admin-bar .open-breadcrumbs {
    top: calc(12.5vw + 86px)
  }
}

@media (min-width: 601px) and (min-width: 960px) {
  .admin-bar .open-breadcrumbs {
    top: 206px
  }
}

@media (min-width: 783px) {
  .admin-bar .open-breadcrumbs {
    top: 112px
  }
}

@media (min-width: 783px) and (min-width: 320px) {
  .admin-bar .open-breadcrumbs {
    top: calc(12.5vw + 72px)
  }
}

@media (min-width: 783px) and (min-width: 960px) {
  .admin-bar .open-breadcrumbs {
    top: 192px
  }
}

.open-breadcrumbs::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  display: inline-block;
  font-size: 14px;
  line-height: 40px;
  text-align: center;
  width: 40px
}

.breadcrumbs {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  top: 80px;
  background: #06b;
  color: #fff;
  display: none;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  max-width: 50%;
  overflow: hidden;
  padding: 6px 20px;
  position: fixed;
  right: 0;
  text-overflow: ellipsis;
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
  white-space: nowrap;
  z-index: 25
}

@media (min-width: 320px) {
  .breadcrumbs {
    top: calc(12.5vw + 40px)
  }
}

@media (min-width: 960px) {
  .breadcrumbs {
    top: 160px
  }
}

.breadcrumbs:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 768px) {
  .breadcrumbs {
    display: block
  }
}

@media (min-width: 601px) {
  .admin-bar .breadcrumbs {
    top: 126px
  }
}

@media (min-width: 601px) and (min-width: 320px) {
  .admin-bar .breadcrumbs {
    top: calc(12.5vw + 86px)
  }
}

@media (min-width: 601px) and (min-width: 960px) {
  .admin-bar .breadcrumbs {
    top: 206px
  }
}

@media (min-width: 783px) {
  .admin-bar .breadcrumbs {
    top: 112px
  }
}

@media (min-width: 783px) and (min-width: 320px) {
  .admin-bar .breadcrumbs {
    top: calc(12.5vw + 72px)
  }
}

@media (min-width: 783px) and (min-width: 960px) {
  .admin-bar .breadcrumbs {
    top: 192px
  }
}

.breadcrumbs.compact {
  -webkit-transform: translateX(100%);
  transform: translateX(100%)
}

.breadcrumbs span {
  margin-right: 3px
}

.breadcrumbs span+span::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  margin-right: 5px
}

.main {
  padding-top: 60px;
  padding-bottom: 60px;
  overflow: hidden
}

@media (min-width: 320px) {
  .main {
    padding-top: calc(9.375vw + 30px)
  }
}

@media (min-width: 960px) {
  .main {
    padding-top: 120px
  }
}

@media (min-width: 320px) {
  .main {
    padding-bottom: calc(18.75vw + 0px)
  }
}

@media (min-width: 960px) {
  .main {
    padding-bottom: 180px
  }
}

.hero-container-outer {
  position: relative
}

.hero-container {
  margin-right: 15px;
  position: relative;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover
}

@media (min-width: 320px) {
  .hero-container {
    margin-right: calc(4.018% + 2.143px)
  }
}

@media (min-width: 1440px) {
  .hero-container {
    margin-right: 60px
  }
}

.hero-container::after {
  -webkit-animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 0.5s both;
  animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 0.5s both;
  background: #fff;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  z-index: 5
}

.hero-container.medium h1 {
  padding-bottom: 24px;
  padding-top: 24px
}

@media (min-width: 320px) {
  .hero-container.medium h1 {
    padding-bottom: calc(9.75vw + -7.2px)
  }
}

@media (min-width: 1920px) {
  .hero-container.medium h1 {
    padding-bottom: 180px
  }
}

@media (min-width: 320px) {
  .hero-container.medium h1 {
    padding-top: calc(9.75vw + -7.2px)
  }
}

@media (min-width: 1920px) {
  .hero-container.medium h1 {
    padding-top: 180px
  }
}

.hero-container.medium-large h1 {
  padding-bottom: 24px;
  padding-top: 24px
}

@media (min-width: 320px) {
  .hero-container.medium-large h1 {
    padding-bottom: calc(14.125vw + -21.2px)
  }
}

@media (min-width: 1920px) {
  .hero-container.medium-large h1 {
    padding-bottom: 250px
  }
}

@media (min-width: 320px) {
  .hero-container.medium-large h1 {
    padding-top: calc(14.125vw + -21.2px)
  }
}

@media (min-width: 1920px) {
  .hero-container.medium-large h1 {
    padding-top: 250px
  }
}

.hero-container[style^="background-image:"] .overlay,
.hero-container[style*=" background-image:"] .overlay,
.hero-container._has-image .overlay {
  background: rgba(0, 71, 131, 0.4)
}

.hero-container[style^="background-image:"] h1,
.hero-container[style*=" background-image:"] h1,
.hero-container._has-image h1 {
  color: #fff
}

.hero-container .overlay {
  background: #f5f7fa
}

.hero-container .hero {
  width: 100%
}

.hero-container h1 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  color: #333;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 0;
  font-weight: 700;
  line-height: 1;
  padding: 24px 15px;
  padding-right: 7.5px
}

.hero-container h1:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 320px) {
  .hero-container h1 {
    padding: 7.5vw calc(9.375vw - 15px);
    padding-right: calc(4.6875vw - 7.5px)
  }
}

@media (min-width: 800px) {
  .hero-container h1 {
    padding-top: 60px;
    padding-bottom: 60px
  }
}

@media (min-width: 1440px) {
  .hero-container h1 {
    padding-left: 120px;
    padding-right: 60px
  }
}

.hero-container h1 em {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  font-size: 48px;
  margin-right: 20px
}

@media (min-width: 320px) {
  .hero-container h1 em {
    font-size: 15vw
  }
}

@media (min-width: 800px) {
  .hero-container h1 em {
    font-size: 120px
  }
}

.hero-container h1 small {
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  margin-top: 0.5em
}

@media (min-width: 320px) {
  .hero-container h1 small {
    font-size: calc(0.833vw + 13.333px)
  }
}

@media (min-width: 800px) {
  .hero-container h1 small {
    font-size: 20px
  }
}

.site-footer {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #656d78;
  color: #fff;
  font-size: 14px
}

@media (min-width: 960px) {
  .site-footer {
    padding-top: 45px
  }
}

.site-footer .site-footer-nav-container {
  margin: auto;
  max-width: 1040px;
  padding: 0 6.25%
}

@media (min-width: 960px) {
  .site-footer .site-footer-nav-container {
    padding: 0 40px
  }
}

.site-footer .logo,
.site-footer .footer-nav {
  display: none
}

@media (min-width: 960px) {

  .site-footer .logo,
  .site-footer .footer-nav {
    display: block
  }
}

.site-footer .logo {
  text-align: center
}

.site-footer .logo img {
  max-height: 50px;
  max-width: 180px\0;
  max-width: 180px\9
}

.site-footer .footer-nav {
  border-bottom: 1px solid #aab2bd;
  font-weight: bold;
  padding: 35px 0
}

.site-footer .footer-nav button {
  background: none;
  border: 0;
  font-weight: inherit;
  padding: 0
}

.site-footer .footer-nav>ul {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  height: 12em
}

.site-footer .footer-nav>ul>li {
  display: block;
  padding: 0 0.5em;
  position: relative;
  width: 25%
}

.site-footer .footer-nav>ul>li.rowx3 {
  margin-bottom: 4em
}

.site-footer .footer-nav>ul>li a[href]:hover {
  text-decoration: underline
}

.site-footer .footer-nav .menu-item-has-children {
  cursor: default;
  display: inline-block;
  width: auto
}

.site-footer .footer-nav .menu-item-has-children::after {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ""
}

.site-footer .footer-nav .menu-item-has-children:hover .sub-menu {
  opacity: 1;
  visibility: visible
}

.site-footer .footer-nav .menu-item-has-children:hover .sub-menu>li {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

.site-footer .footer-nav .menu-item-has-children .sub-menu {
  background: rgba(255, 255, 255, 0.85);
  color: #333;
  left: 0;
  margin-left: 0.5em;
  opacity: 0;
  padding: 1em 1.5em;
  position: absolute;
  top: 100%;
  -webkit-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
  visibility: hidden;
  white-space: nowrap
}

.site-footer .footer-nav .menu-item-has-children .sub-menu>li {
  opacity: 0;
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-transition: opacity 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s;
  transition: opacity 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s;
  transition: opacity 0.3s ease-in-out 0.1s, transform 0.3s ease-in-out 0.1s;
  transition: opacity 0.3s ease-in-out 0.1s, transform 0.3s ease-in-out 0.1s, -webkit-transform 0.3s ease-in-out 0.1s
}

.site-footer .footer-nav .menu-item-has-children .sub-menu a {
  display: block;
  padding: 0.25em
}

.site-footer .footer-nav .menu-item-has-children .sub-menu a:hover {
  color: #06b
}

.site-footer .offices {
  padding: 35px 0;
  margin: auto
}

@media (min-width: 960px) {
  .site-footer .offices {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

@media (min-width: 960px) {
  .site-footer .offices>li {
    padding: 0 0.5em;
    width: 33.33333%
  }
}

.site-footer .offices>li+li {
  margin-top: 1.75em
}

@media (min-width: 960px) {
  .site-footer .offices>li+li {
    margin-top: 0
  }
}

.site-footer .offices h2 {
  font-weight: bold
}

.site-footer .copyright-outer {
  border-top: 1px solid #aab2bd;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  padding: 20px 6.25%;
  text-align: center
}

h1.entry-title {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.75;
  margin: 3em 0 1.333em
}

@media (min-width: 320px) {
  h1.entry-title {
    font-size: calc(1.78571vw + 18.28571px)
  }
}

@media (min-width: 768px) {
  h1.entry-title {
    font-size: 32px
  }
}

h1.entry-title::first-letter {
  -webkit-font-feature-settings: "halt";
  font-feature-settings: "halt"
}

h1.entry-title::after {
  width: 40px;
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  height: 0;
  margin-top: 0.75em;
  margin-left: -15px
}

@media (min-width: 320px) {
  h1.entry-title::after {
    width: calc(4.46429vw + 25.71429px)
  }
}

@media (min-width: 768px) {
  h1.entry-title::after {
    width: 60px
  }
}

@media (min-width: 768px) {
  h1.entry-title::after {
    margin-left: -20px
  }
}

.entry-content a:not(.button):not(.wp-block-file__button) {
  color: #06b
}

.entry-content a:not(.button):not(.wp-block-file__button):hover {
  text-decoration: underline
}

.entry-content a:not(.button):not(.wp-block-file__button)[target="_blank"]::after {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: " " ""
}

.entry-content a:not(.button):not(.wp-block-file__button)[href$=".pdf"]::before,
.entry-content a:not(.button):not(.wp-block-file__button)[href*="download.php?mode=pdf"]::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: " " ""
}

.entry-content a:not(.button):not(.wp-block-file__button)[href$=".pdf"]::after,
.entry-content a:not(.button):not(.wp-block-file__button)[href*="download.php?mode=pdf"]::after {
  content: none
}

.entry-content a:not(.button):not(.wp-block-file__button)[href$=".docm"]::before,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".docx"]::before,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".doc"]::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "" " "
}

.entry-content a:not(.button):not(.wp-block-file__button)[href$=".docm"]::after,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".docx"]::after,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".doc"]::after {
  content: none
}

.entry-content a:not(.button):not(.wp-block-file__button)[href$=".xlsm"]::before,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".xlsx"]::before,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".xls"]::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "" " "
}

.entry-content a:not(.button):not(.wp-block-file__button)[href$=".xlsm"]::after,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".xlsx"]::after,
.entry-content a:not(.button):not(.wp-block-file__button)[href$=".xls"]::after {
  content: none
}

.entry-content h1 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.75;
  margin: 3em 0 1.333em
}

@media (min-width: 320px) {
  .entry-content h1 {
    font-size: calc(1.78571vw + 18.28571px)
  }
}

@media (min-width: 768px) {
  .entry-content h1 {
    font-size: 32px
  }
}

.entry-content h1::first-letter {
  -webkit-font-feature-settings: "halt";
  font-feature-settings: "halt"
}

.entry-content h1::after {
  width: 40px;
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  height: 0;
  margin-top: 0.75em;
  margin-left: -15px
}

@media (min-width: 320px) {
  .entry-content h1::after {
    width: calc(4.46429vw + 25.71429px)
  }
}

@media (min-width: 768px) {
  .entry-content h1::after {
    width: 60px
  }
}

@media (min-width: 768px) {
  .entry-content h1::after {
    margin-left: -20px
  }
}

.entry-content h2 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 20px;
  font-size: 20px;
  font-weight: bold;
  margin: 3em 0 1.6em;
  position: relative
}

@media (min-width: 320px) {
  .entry-content h2 {
    font-size: calc(1.78571vw + 14.28571px)
  }
}

@media (min-width: 768px) {
  .entry-content h2 {
    font-size: 28px
  }
}

.entry-content h2::before {
  border-left: 2px solid #06b;
  bottom: 0.5em;
  content: "";
  position: absolute;
  left: -15px;
  top: 0.5em
}

@media (min-width: 768px) {
  .entry-content h2::before {
    left: -20px
  }
}

.entry-content h3 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 18px;
  border-bottom: 1px solid #e6e9ed;
  font-size: 18px;
  font-weight: bold;
  margin: 3em 0 2rem
}

@media (min-width: 320px) {
  .entry-content h3 {
    font-size: calc(1.33929vw + 13.71429px)
  }
}

@media (min-width: 768px) {
  .entry-content h3 {
    font-size: 24px
  }
}

.entry-content h4 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 18px;
  font-weight: bold
}

@media (min-width: 320px) {
  .entry-content h4 {
    font-size: calc(.44643vw + 16.57143px)
  }
}

@media (min-width: 768px) {
  .entry-content h4 {
    font-size: 20px
  }
}

.entry-content ol,
.entry-content ul {
  margin-top: 2em;
  margin-bottom: 2em
}

.entry-content ol>li ol,
.entry-content ol>li ul,
.entry-content ul>li ol,
.entry-content ul>li ul {
  margin-top: 0;
  margin-bottom: 0
}

.entry-content ol>li ol li::before,
.entry-content ul>li ol li::before {
  color: #333
}

.entry-content ol>li ul li::before,
.entry-content ul>li ul li::before {
  background: #333
}

.entry-content ol {
  counter-reset: number;
  padding-left: 1em
}

.entry-content ol>li {
  position: relative
}

.entry-content ol>li::before {
  color: #06b;
  counter-increment: number 1;
  content: counter(number) ". ";
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: absolute;
  right: 100%
}

.entry-content ul>li {
  padding-left: 1em;
  text-indent: -1em
}

.entry-content ul>li::before {
  background: #06b;
  content: "";
  display: inline-block;
  height: 4px;
  margin-left: 4px;
  margin-right: 0.5em;
  vertical-align: 0.25em;
  width: 4px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}

.entry-content p,
.entry-content figure {
  margin-top: 2em;
  margin-bottom: 2em
}

.entry-content p img,
.entry-content figure img {
  margin-top: 0;
  margin-bottom: 0
}

.entry-content figure img {
  padding: 0.5em 0
}

.entry-content figcaption {
  color: #aab2bd;
  font-size: 14px;
  text-align: left
}

.entry-content img {
  margin-top: 2em;
  margin-bottom: 2em
}

.entry-content s {
  text-decoration: line-through
}

.entry-content .section {
  position: relative
}

.entry-content .section aside {
  clear: both
}

@media (min-width: 1280px) {
  .entry-content .section aside {
    bottom: 0;
    position: absolute;
    width: 200px
  }

  .entry-content .section aside>:last-child {
    margin-bottom: 0
  }
}

.entry-content .section aside::after {
  clear: both;
  content: "";
  display: block
}

.entry-content .section aside._left {
  padding-right: calc(100vw - 660px)
}

@media (min-width: 768px) {
  .entry-content .section aside._left {
    padding-right: calc(100vw - 680px)
  }
}

@media (min-width: 840px) {
  .entry-content.column-10 .section aside._left {
    padding-right: 160px
  }
}

@media (min-width: 1280px) {
  .entry-content.column-10 .section aside._left {
    padding-right: 0
  }
}

@media (min-width: 1280px) {
  .entry-content .section aside._left {
    right: 100%;
    margin-right: 40px
  }
}

.entry-content .section aside._left figure img {
  float: left;
  margin-right: 16px
}

@media (min-width: 320px) {
  .entry-content .section aside._left figure img {
    margin-right: 5vw
  }
}

@media (min-width: 640px) {
  .entry-content .section aside._left figure img {
    margin-right: 32px
  }
}

@media (min-width: 1280px) {
  .entry-content .section aside._left figure img {
    float: none;
    margin-right: 0
  }
}

.entry-content .section aside._right {
  padding-left: calc(100vw - 660px)
}

@media (min-width: 768px) {
  .entry-content .section aside._right {
    padding-left: calc(100vw - 680px)
  }
}

@media (min-width: 840px) {
  .entry-content.column-10 .section aside._right {
    padding-left: 160px
  }
}

@media (min-width: 1280px) {
  .entry-content.column-10 .section aside._right {
    padding-left: 0
  }
}

@media (min-width: 1280px) {
  .entry-content .section aside._right {
    left: 100%;
    margin-left: 40px
  }
}

.entry-content .section aside._right figure img {
  float: right;
  margin-left: 16px
}

@media (min-width: 320px) {
  .entry-content .section aside._right figure img {
    margin-left: 5vw
  }
}

@media (min-width: 640px) {
  .entry-content .section aside._right figure img {
    margin-left: 32px
  }
}

@media (min-width: 1280px) {
  .entry-content .section aside._right figure img {
    float: none;
    margin-left: 0
  }
}

.entry-content .section aside figure {
  overflow: hidden
}

.entry-content .section aside figure img {
  max-width: 120px
}

@media (min-width: 320px) {
  .entry-content .section aside figure img {
    max-width: calc(25vw + 40px)
  }
}

@media (min-width: 640px) {
  .entry-content .section aside figure img {
    max-width: 200px
  }
}

.entry-content .section aside img {
  max-width: 200px
}

.entry-content .align-center {
  background: #f5f7fa;
  text-align: center
}

@media (min-width: 768px) {
  .entry-content .pull-left {
    float: left;
    margin-right: 40px;
    margin-top: 0
  }

  .entry-content .pull-left[class*="_overflow-"] {
    margin-left: -40px
  }
}

@media (min-width: 1320px) {
  .entry-content .pull-left._overflow-1col {
    margin-left: -40px
  }

  .entry-content .pull-left._overflow-2col {
    margin-left: -80px
  }

  .entry-content .pull-left._overflow-3col {
    margin-left: -120px
  }

  .entry-content .pull-left._overflow-4col {
    margin-left: -160px
  }

  .entry-content .pull-left._overflow-5col {
    margin-left: -200px
  }

  .entry-content .pull-left._overflow-6col {
    margin-left: -240px
  }
}

@media (min-width: 768px) {
  .entry-content .pull-right {
    float: right;
    margin-left: 40px;
    margin-top: 0
  }

  .entry-content .pull-right[class*="_overflow-"] {
    margin-right: -40px
  }
}

@media (min-width: 1320px) {
  .entry-content .pull-right._overflow-1col {
    margin-right: -40px
  }

  .entry-content .pull-right._overflow-2col {
    margin-right: -80px
  }

  .entry-content .pull-right._overflow-3col {
    margin-right: -120px
  }

  .entry-content .pull-right._overflow-4col {
    margin-right: -160px
  }

  .entry-content .pull-right._overflow-5col {
    margin-right: -200px
  }

  .entry-content .pull-right._overflow-6col {
    margin-right: -240px
  }
}

.entry-content .landscape {
  text-align: center
}

@media (min-width: 768px) {
  .entry-content .landscape {
    max-width: 55vw
  }
}

@media (min-width: 1200px) {
  .entry-content .landscape {
    margin-bottom: 60px
  }
}

.entry-content .portrait {
  max-width: 50%
}

@media (min-width: 1200px) {
  .entry-content .portrait {
    margin-bottom: 60px
  }
}

.entry-content .portrait._small {
  max-width: 120px
}

.entry-content .stick-left {
  margin-left: -30px
}

.entry-content .stick-left.float-left {
  float: left;
  margin-right: 30px
}

@media (min-width: 768px) {
  .entry-content .stick-left {
    margin-left: -40px
  }

  .entry-content .stick-left.float-left {
    margin-right: calc(7.246vw - 15.652px)
  }
}

@media (min-width: 1320px) {
  .entry-content .stick-left.float-left {
    margin-right: 80px
  }
}

.entry-content .stick-right {
  margin-right: -30px
}

.entry-content .stick-right.float-right {
  float: right;
  margin-left: 30px
}

@media (min-width: 768px) {
  .entry-content .stick-right {
    margin-right: -40px
  }

  .entry-content .stick-right.float-right {
    margin-left: calc(7.246vw - 15.652px)
  }
}

@media (min-width: 1320px) {
  .entry-content .stick-right.float-right {
    margin-left: 80px
  }
}

@media (min-width: 100px) {
  .column-1 .stick-left {
    margin-left: calc(20px - 50vw)
  }
}

@media (min-width: 120px) {
  .column-1 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 200px) {
  .column-1 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 280px) {
  .column-1 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 360px) {
  .column-1 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 440px) {
  .column-1 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 520px) {
  .column-1 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 600px) {
  .column-1 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 680px) {
  .column-1 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 100px) {
  .column-1 .stick-right {
    margin-right: calc(20px - 50vw)
  }
}

@media (min-width: 120px) {
  .column-1 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 200px) {
  .column-1 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 280px) {
  .column-1 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 360px) {
  .column-1 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 440px) {
  .column-1 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 520px) {
  .column-1 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 600px) {
  .column-1 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 680px) {
  .column-1 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 180px) {
  .column-2 .stick-left {
    margin-left: calc(60px - 50vw)
  }
}

@media (min-width: 200px) {
  .column-2 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 280px) {
  .column-2 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 360px) {
  .column-2 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 440px) {
  .column-2 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 520px) {
  .column-2 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 600px) {
  .column-2 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 680px) {
  .column-2 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 760px) {
  .column-2 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 180px) {
  .column-2 .stick-right {
    margin-right: calc(60px - 50vw)
  }
}

@media (min-width: 200px) {
  .column-2 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 280px) {
  .column-2 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 360px) {
  .column-2 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 440px) {
  .column-2 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 520px) {
  .column-2 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 600px) {
  .column-2 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 680px) {
  .column-2 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 760px) {
  .column-2 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 260px) {
  .column-3 .stick-left {
    margin-left: calc(100px - 50vw)
  }
}

@media (min-width: 280px) {
  .column-3 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 360px) {
  .column-3 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 440px) {
  .column-3 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 520px) {
  .column-3 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 600px) {
  .column-3 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 680px) {
  .column-3 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 760px) {
  .column-3 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 840px) {
  .column-3 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 260px) {
  .column-3 .stick-right {
    margin-right: calc(100px - 50vw)
  }
}

@media (min-width: 280px) {
  .column-3 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 360px) {
  .column-3 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 440px) {
  .column-3 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 520px) {
  .column-3 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 600px) {
  .column-3 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 680px) {
  .column-3 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 760px) {
  .column-3 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 840px) {
  .column-3 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 340px) {
  .column-4 .stick-left {
    margin-left: calc(140px - 50vw)
  }
}

@media (min-width: 360px) {
  .column-4 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 440px) {
  .column-4 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 520px) {
  .column-4 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 600px) {
  .column-4 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 680px) {
  .column-4 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 760px) {
  .column-4 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 840px) {
  .column-4 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 920px) {
  .column-4 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 340px) {
  .column-4 .stick-right {
    margin-right: calc(140px - 50vw)
  }
}

@media (min-width: 360px) {
  .column-4 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 440px) {
  .column-4 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 520px) {
  .column-4 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 600px) {
  .column-4 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 680px) {
  .column-4 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 760px) {
  .column-4 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 840px) {
  .column-4 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 920px) {
  .column-4 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 420px) {
  .column-5 .stick-left {
    margin-left: calc(180px - 50vw)
  }
}

@media (min-width: 440px) {
  .column-5 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 520px) {
  .column-5 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 600px) {
  .column-5 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 680px) {
  .column-5 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 760px) {
  .column-5 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 840px) {
  .column-5 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 920px) {
  .column-5 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1000px) {
  .column-5 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 420px) {
  .column-5 .stick-right {
    margin-right: calc(180px - 50vw)
  }
}

@media (min-width: 440px) {
  .column-5 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 520px) {
  .column-5 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 600px) {
  .column-5 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 680px) {
  .column-5 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 760px) {
  .column-5 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 840px) {
  .column-5 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 920px) {
  .column-5 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1000px) {
  .column-5 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 500px) {
  .column-6 .stick-left {
    margin-left: calc(220px - 50vw)
  }
}

@media (min-width: 520px) {
  .column-6 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 600px) {
  .column-6 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 680px) {
  .column-6 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 760px) {
  .column-6 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 840px) {
  .column-6 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 920px) {
  .column-6 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1000px) {
  .column-6 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1080px) {
  .column-6 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 500px) {
  .column-6 .stick-right {
    margin-right: calc(220px - 50vw)
  }
}

@media (min-width: 520px) {
  .column-6 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 600px) {
  .column-6 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 680px) {
  .column-6 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 760px) {
  .column-6 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 840px) {
  .column-6 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 920px) {
  .column-6 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1000px) {
  .column-6 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1080px) {
  .column-6 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 580px) {
  .column-7 .stick-left {
    margin-left: calc(260px - 50vw)
  }
}

@media (min-width: 600px) {
  .column-7 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 680px) {
  .column-7 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 760px) {
  .column-7 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 840px) {
  .column-7 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 920px) {
  .column-7 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1000px) {
  .column-7 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1080px) {
  .column-7 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1160px) {
  .column-7 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 580px) {
  .column-7 .stick-right {
    margin-right: calc(260px - 50vw)
  }
}

@media (min-width: 600px) {
  .column-7 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 680px) {
  .column-7 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 760px) {
  .column-7 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 840px) {
  .column-7 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 920px) {
  .column-7 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1000px) {
  .column-7 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1080px) {
  .column-7 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1160px) {
  .column-7 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 660px) {
  .column-8 .stick-left {
    margin-left: calc(300px - 50vw)
  }
}

@media (min-width: 680px) {
  .column-8 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 760px) {
  .column-8 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 840px) {
  .column-8 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 920px) {
  .column-8 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1000px) {
  .column-8 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1080px) {
  .column-8 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1160px) {
  .column-8 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1240px) {
  .column-8 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 660px) {
  .column-8 .stick-right {
    margin-right: calc(300px - 50vw)
  }
}

@media (min-width: 680px) {
  .column-8 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 760px) {
  .column-8 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 840px) {
  .column-8 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 920px) {
  .column-8 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1000px) {
  .column-8 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1080px) {
  .column-8 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1160px) {
  .column-8 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1240px) {
  .column-8 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 740px) {
  .column-9 .stick-left {
    margin-left: calc(340px - 50vw)
  }
}

@media (min-width: 760px) {
  .column-9 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 840px) {
  .column-9 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 920px) {
  .column-9 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1000px) {
  .column-9 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1080px) {
  .column-9 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1160px) {
  .column-9 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1240px) {
  .column-9 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1320px) {
  .column-9 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 740px) {
  .column-9 .stick-right {
    margin-right: calc(340px - 50vw)
  }
}

@media (min-width: 760px) {
  .column-9 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 840px) {
  .column-9 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 920px) {
  .column-9 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1000px) {
  .column-9 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1080px) {
  .column-9 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1160px) {
  .column-9 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1240px) {
  .column-9 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1320px) {
  .column-9 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 840px) {
  .column-10 .stick-left {
    margin-left: calc(380px - 50vw)
  }
}

@media (min-width: 840px) {
  .column-10 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 920px) {
  .column-10 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 1000px) {
  .column-10 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1080px) {
  .column-10 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1160px) {
  .column-10 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1240px) {
  .column-10 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1320px) {
  .column-10 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1400px) {
  .column-10 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 840px) {
  .column-10 .stick-right {
    margin-right: calc(380px - 50vw)
  }
}

@media (min-width: 840px) {
  .column-10 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 920px) {
  .column-10 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 1000px) {
  .column-10 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1080px) {
  .column-10 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1160px) {
  .column-10 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1240px) {
  .column-10 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1320px) {
  .column-10 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1400px) {
  .column-10 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 920px) {
  .column-11 .stick-left {
    margin-left: calc(420px - 50vw)
  }
}

@media (min-width: 920px) {
  .column-11 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 1000px) {
  .column-11 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 1080px) {
  .column-11 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1160px) {
  .column-11 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1240px) {
  .column-11 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1320px) {
  .column-11 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1400px) {
  .column-11 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1480px) {
  .column-11 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 920px) {
  .column-11 .stick-right {
    margin-right: calc(420px - 50vw)
  }
}

@media (min-width: 920px) {
  .column-11 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 1000px) {
  .column-11 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 1080px) {
  .column-11 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1160px) {
  .column-11 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1240px) {
  .column-11 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1320px) {
  .column-11 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1400px) {
  .column-11 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1480px) {
  .column-11 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 1000px) {
  .column-12 .stick-left {
    margin-left: calc(460px - 50vw)
  }
}

@media (min-width: 1000px) {
  .column-12 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 1080px) {
  .column-12 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 1160px) {
  .column-12 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1240px) {
  .column-12 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1320px) {
  .column-12 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1400px) {
  .column-12 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1480px) {
  .column-12 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1560px) {
  .column-12 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 1000px) {
  .column-12 .stick-right {
    margin-right: calc(460px - 50vw)
  }
}

@media (min-width: 1000px) {
  .column-12 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 1080px) {
  .column-12 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 1160px) {
  .column-12 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1240px) {
  .column-12 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1320px) {
  .column-12 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1400px) {
  .column-12 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1480px) {
  .column-12 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1560px) {
  .column-12 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 1080px) {
  .column-13 .stick-left {
    margin-left: calc(500px - 50vw)
  }
}

@media (min-width: 1080px) {
  .column-13 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 1160px) {
  .column-13 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 1240px) {
  .column-13 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1320px) {
  .column-13 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1400px) {
  .column-13 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1480px) {
  .column-13 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1560px) {
  .column-13 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1640px) {
  .column-13 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 1080px) {
  .column-13 .stick-right {
    margin-right: calc(500px - 50vw)
  }
}

@media (min-width: 1080px) {
  .column-13 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 1160px) {
  .column-13 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 1240px) {
  .column-13 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1320px) {
  .column-13 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1400px) {
  .column-13 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1480px) {
  .column-13 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1560px) {
  .column-13 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1640px) {
  .column-13 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 1160px) {
  .column-14 .stick-left {
    margin-left: calc(540px - 50vw)
  }
}

@media (min-width: 1160px) {
  .column-14 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 1240px) {
  .column-14 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 1320px) {
  .column-14 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1400px) {
  .column-14 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1480px) {
  .column-14 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1560px) {
  .column-14 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1640px) {
  .column-14 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1720px) {
  .column-14 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 1160px) {
  .column-14 .stick-right {
    margin-right: calc(540px - 50vw)
  }
}

@media (min-width: 1160px) {
  .column-14 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 1240px) {
  .column-14 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 1320px) {
  .column-14 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1400px) {
  .column-14 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1480px) {
  .column-14 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1560px) {
  .column-14 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1640px) {
  .column-14 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1720px) {
  .column-14 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 1240px) {
  .column-15 .stick-left {
    margin-left: calc(580px - 50vw)
  }
}

@media (min-width: 1240px) {
  .column-15 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 1320px) {
  .column-15 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 1400px) {
  .column-15 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1480px) {
  .column-15 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1560px) {
  .column-15 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1640px) {
  .column-15 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1720px) {
  .column-15 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1800px) {
  .column-15 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 1240px) {
  .column-15 .stick-right {
    margin-right: calc(580px - 50vw)
  }
}

@media (min-width: 1240px) {
  .column-15 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 1320px) {
  .column-15 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 1400px) {
  .column-15 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1480px) {
  .column-15 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1560px) {
  .column-15 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1640px) {
  .column-15 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1720px) {
  .column-15 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1800px) {
  .column-15 .stick-right._8 {
    margin-right: -320px
  }
}

@media (min-width: 1320px) {
  .column-16 .stick-left {
    margin-left: calc(620px - 50vw)
  }
}

@media (min-width: 1320px) {
  .column-16 .stick-left._1 {
    margin-left: -40px
  }
}

@media (min-width: 1400px) {
  .column-16 .stick-left._2 {
    margin-left: -80px
  }
}

@media (min-width: 1480px) {
  .column-16 .stick-left._3 {
    margin-left: -120px
  }
}

@media (min-width: 1560px) {
  .column-16 .stick-left._4 {
    margin-left: -160px
  }
}

@media (min-width: 1640px) {
  .column-16 .stick-left._5 {
    margin-left: -200px
  }
}

@media (min-width: 1720px) {
  .column-16 .stick-left._6 {
    margin-left: -240px
  }
}

@media (min-width: 1800px) {
  .column-16 .stick-left._7 {
    margin-left: -280px
  }
}

@media (min-width: 1880px) {
  .column-16 .stick-left._8 {
    margin-left: -320px
  }
}

@media (min-width: 1320px) {
  .column-16 .stick-right {
    margin-right: calc(620px - 50vw)
  }
}

@media (min-width: 1320px) {
  .column-16 .stick-right._1 {
    margin-right: -40px
  }
}

@media (min-width: 1400px) {
  .column-16 .stick-right._2 {
    margin-right: -80px
  }
}

@media (min-width: 1480px) {
  .column-16 .stick-right._3 {
    margin-right: -120px
  }
}

@media (min-width: 1560px) {
  .column-16 .stick-right._4 {
    margin-right: -160px
  }
}

@media (min-width: 1640px) {
  .column-16 .stick-right._5 {
    margin-right: -200px
  }
}

@media (min-width: 1720px) {
  .column-16 .stick-right._6 {
    margin-right: -240px
  }
}

@media (min-width: 1800px) {
  .column-16 .stick-right._7 {
    margin-right: -280px
  }
}

@media (min-width: 1880px) {
  .column-16 .stick-right._8 {
    margin-right: -320px
  }
}

.container-has-sidebar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media (min-width: 1200px) {
  .container-has-sidebar {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 30px;
    padding-right: 30px;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }
}

@media (min-width: 1200px) and (min-width: 768px) {
  .container-has-sidebar {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media (min-width: 1200px) {
  .container-has-sidebar .centered {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin-left: 0;
    margin-right: 0
  }
}

.container-has-sidebar .sidebar {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 360px;
  display: none;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-left: 30px;
  padding-top: 110px;
  padding-right: 0;
  width: 280px
}

@media (min-width: 768px) {
  .container-has-sidebar .sidebar {
    margin-left: 40px
  }
}

@media (min-width: 1200px) {
  .container-has-sidebar .sidebar {
    display: block
  }
}

.container-has-sidebar .sidebar a {
  color: #06b
}

.container-has-sidebar .sidebar a:hover {
  text-decoration: underline
}

.container-has-sidebar .sidebar .widget {
  background: #f5f7fa;
  font-size: 14px;
  padding: 35px 30px 40px
}

.container-has-sidebar .sidebar .widget+.widget {
  margin-top: 20px
}

.container-has-sidebar .sidebar .widget .widget-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px
}

.container-has-sidebar .sidebar .widget ul {
  padding-left: 1.5em
}

.container-has-sidebar .sidebar .widget ul>li {
  text-indent: -1.5em
}

.container-has-sidebar .sidebar .widget ul>li::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  margin-right: 0.5em
}

.container-has-sidebar .sidebar .widget ul>li.current_page_item a {
  color: #333;
  text-decoration: none
}

.blog .hero-container .overlay,
.blog.seminars .hero-container .overlay,
.blog.publications .hero-container .overlay,
.page:not(.home) .hero-container .overlay,
.page:not(.home).seminars .hero-container .overlay,
.page:not(.home).publications .hero-container .overlay,
.archive .hero-container .overlay,
.archive.seminars .hero-container .overlay,
.archive.publications .hero-container .overlay {
  padding-bottom: 15px
}

@media (min-width: 1090px) {

  .blog .hero-container .overlay,
  .blog.seminars .hero-container .overlay,
  .blog.publications .hero-container .overlay,
  .page:not(.home) .hero-container .overlay,
  .page:not(.home).seminars .hero-container .overlay,
  .page:not(.home).publications .hero-container .overlay,
  .archive .hero-container .overlay,
  .archive.seminars .hero-container .overlay,
  .archive.publications .hero-container .overlay {
    padding-bottom: 0
  }
}

.blog .searchform,
.blog .categories-outer,
.blog.seminars .searchform,
.blog.seminars .categories-outer,
.blog.publications .searchform,
.blog.publications .categories-outer,
.page:not(.home) .searchform,
.page:not(.home) .categories-outer,
.page:not(.home).seminars .searchform,
.page:not(.home).seminars .categories-outer,
.page:not(.home).publications .searchform,
.page:not(.home).publications .categories-outer,
.archive .searchform,
.archive .categories-outer,
.archive.seminars .searchform,
.archive.seminars .categories-outer,
.archive.publications .searchform,
.archive.publications .categories-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: -25px;
  position: relative;
  z-index: 5
}

@media (min-width: 480px) {

  .blog .searchform,
  .blog .categories-outer,
  .blog.seminars .searchform,
  .blog.seminars .categories-outer,
  .blog.publications .searchform,
  .blog.publications .categories-outer,
  .page:not(.home) .searchform,
  .page:not(.home) .categories-outer,
  .page:not(.home).seminars .searchform,
  .page:not(.home).seminars .categories-outer,
  .page:not(.home).publications .searchform,
  .page:not(.home).publications .categories-outer,
  .archive .searchform,
  .archive .categories-outer,
  .archive.seminars .searchform,
  .archive.seminars .categories-outer,
  .archive.publications .searchform,
  .archive.publications .categories-outer {
    margin-top: -30px
  }
}

@media (min-width: 1090px) {

  .blog .searchform,
  .blog .categories-outer,
  .blog.seminars .searchform,
  .blog.seminars .categories-outer,
  .blog.publications .searchform,
  .blog.publications .categories-outer,
  .page:not(.home) .searchform,
  .page:not(.home) .categories-outer,
  .page:not(.home).seminars .searchform,
  .page:not(.home).seminars .categories-outer,
  .page:not(.home).publications .searchform,
  .page:not(.home).publications .categories-outer,
  .archive .searchform,
  .archive .categories-outer,
  .archive.seminars .searchform,
  .archive.seminars .categories-outer,
  .archive.publications .searchform,
  .archive.publications .categories-outer {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }
}

.blog .searchform .input-group,
.blog.seminars .searchform .input-group,
.blog.publications .searchform .input-group,
.page:not(.home) .searchform .input-group,
.page:not(.home).seminars .searchform .input-group,
.page:not(.home).publications .searchform .input-group,
.archive .searchform .input-group,
.archive.seminars .searchform .input-group,
.archive.publications .searchform .input-group {
  -webkit-animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  max-width: 440px;
  position: relative;
  width: 100%
}

.blog .searchform .input-group::before,
.blog.seminars .searchform .input-group::before,
.blog.publications .searchform .input-group::before,
.page:not(.home) .searchform .input-group::before,
.page:not(.home).seminars .searchform .input-group::before,
.page:not(.home).publications .searchform .input-group::before,
.archive .searchform .input-group::before,
.archive.seminars .searchform .input-group::before,
.archive.publications .searchform .input-group::before {
  -webkit-animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1.5s both;
  animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1.5s both;
  background: #f5f7fa;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0
}

.blog .searchform .input-group .search-results,
.blog.seminars .searchform .input-group .search-results,
.blog.publications .searchform .input-group .search-results,
.page:not(.home) .searchform .input-group .search-results,
.page:not(.home).seminars .searchform .input-group .search-results,
.page:not(.home).publications .searchform .input-group .search-results,
.archive .searchform .input-group .search-results,
.archive.seminars .searchform .input-group .search-results,
.archive.publications .searchform .input-group .search-results {
  -webkit-box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3);
  left: 0;
  position: absolute;
  top: 100%;
  width: 100%
}

.blog .searchform .input-group .search-results a .excerpt,
.blog.seminars .searchform .input-group .search-results a .excerpt,
.blog.publications .searchform .input-group .search-results a .excerpt,
.page:not(.home) .searchform .input-group .search-results a .excerpt,
.page:not(.home).seminars .searchform .input-group .search-results a .excerpt,
.page:not(.home).publications .searchform .input-group .search-results a .excerpt,
.archive .searchform .input-group .search-results a .excerpt,
.archive.seminars .searchform .input-group .search-results a .excerpt,
.archive.publications .searchform .input-group .search-results a .excerpt {
  color: #333
}

.blog .searchform .input-group .search-results a:hover,
.blog.seminars .searchform .input-group .search-results a:hover,
.blog.publications .searchform .input-group .search-results a:hover,
.page:not(.home) .searchform .input-group .search-results a:hover,
.page:not(.home).seminars .searchform .input-group .search-results a:hover,
.page:not(.home).publications .searchform .input-group .search-results a:hover,
.archive .searchform .input-group .search-results a:hover,
.archive.seminars .searchform .input-group .search-results a:hover,
.archive.publications .searchform .input-group .search-results a:hover {
  text-decoration: none
}

.blog .searchform .input-group .search-results a:hover .excerpt,
.blog .searchform .input-group .search-results a:hover .url,
.blog.seminars .searchform .input-group .search-results a:hover .excerpt,
.blog.seminars .searchform .input-group .search-results a:hover .url,
.blog.publications .searchform .input-group .search-results a:hover .excerpt,
.blog.publications .searchform .input-group .search-results a:hover .url,
.page:not(.home) .searchform .input-group .search-results a:hover .excerpt,
.page:not(.home) .searchform .input-group .search-results a:hover .url,
.page:not(.home).seminars .searchform .input-group .search-results a:hover .excerpt,
.page:not(.home).seminars .searchform .input-group .search-results a:hover .url,
.page:not(.home).publications .searchform .input-group .search-results a:hover .excerpt,
.page:not(.home).publications .searchform .input-group .search-results a:hover .url,
.archive .searchform .input-group .search-results a:hover .excerpt,
.archive .searchform .input-group .search-results a:hover .url,
.archive.seminars .searchform .input-group .search-results a:hover .excerpt,
.archive.seminars .searchform .input-group .search-results a:hover .url,
.archive.publications .searchform .input-group .search-results a:hover .excerpt,
.archive.publications .searchform .input-group .search-results a:hover .url {
  text-decoration: none
}

.blog .categories-outer .categories,
.blog.seminars .categories-outer .categories,
.blog.publications .categories-outer .categories,
.page:not(.home) .categories-outer .categories,
.page:not(.home).seminars .categories-outer .categories,
.page:not(.home).publications .categories-outer .categories,
.archive .categories-outer .categories,
.archive.seminars .categories-outer .categories,
.archive.publications .categories-outer .categories {
  -webkit-animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  background: #f5f7fa;
  padding: 9px 18px
}

@media (min-width: 480px) {

  .blog .categories-outer .categories,
  .blog.seminars .categories-outer .categories,
  .blog.publications .categories-outer .categories,
  .page:not(.home) .categories-outer .categories,
  .page:not(.home).seminars .categories-outer .categories,
  .page:not(.home).publications .categories-outer .categories,
  .archive .categories-outer .categories,
  .archive.seminars .categories-outer .categories,
  .archive.publications .categories-outer .categories {
    padding: 14px 28px
  }
}

.blog .categories-outer .categories::before,
.blog.seminars .categories-outer .categories::before,
.blog.publications .categories-outer .categories::before,
.page:not(.home) .categories-outer .categories::before,
.page:not(.home).seminars .categories-outer .categories::before,
.page:not(.home).publications .categories-outer .categories::before,
.archive .categories-outer .categories::before,
.archive.seminars .categories-outer .categories::before,
.archive.publications .categories-outer .categories::before {
  -webkit-animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1.5s both;
  animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1.5s both;
  background: #f5f7fa;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0
}

.blog .categories-outer .categories>li,
.blog.seminars .categories-outer .categories>li,
.blog.publications .categories-outer .categories>li,
.page:not(.home) .categories-outer .categories>li,
.page:not(.home).seminars .categories-outer .categories>li,
.page:not(.home).publications .categories-outer .categories>li,
.archive .categories-outer .categories>li,
.archive.seminars .categories-outer .categories>li,
.archive.publications .categories-outer .categories>li {
  display: inline-block
}

.blog .categories-outer .categories>li::after,
.blog.seminars .categories-outer .categories>li::after,
.blog.publications .categories-outer .categories>li::after,
.page:not(.home) .categories-outer .categories>li::after,
.page:not(.home).seminars .categories-outer .categories>li::after,
.page:not(.home).publications .categories-outer .categories>li::after,
.archive .categories-outer .categories>li::after,
.archive.seminars .categories-outer .categories>li::after,
.archive.publications .categories-outer .categories>li::after {
  content: " / "
}

[lang="ja"] .blog .categories-outer .categories>li::after,
[lang="ja"] .blog.seminars .categories-outer .categories>li::after,
[lang="ja"] .blog.publications .categories-outer .categories>li::after,
[lang="ja"] .page:not(.home) .categories-outer .categories>li::after,
[lang="ja"] .page:not(.home).seminars .categories-outer .categories>li::after,
[lang="ja"] .page:not(.home).publications .categories-outer .categories>li::after,
[lang="ja"] .archive .categories-outer .categories>li::after,
[lang="ja"] .archive.seminars .categories-outer .categories>li::after,
[lang="ja"] .archive.publications .categories-outer .categories>li::after {
  content: " ／ "
}

.blog .categories-outer .categories>li:last-child::after,
.blog.seminars .categories-outer .categories>li:last-child::after,
.blog.publications .categories-outer .categories>li:last-child::after,
.page:not(.home) .categories-outer .categories>li:last-child::after,
.page:not(.home).seminars .categories-outer .categories>li:last-child::after,
.page:not(.home).publications .categories-outer .categories>li:last-child::after,
.archive .categories-outer .categories>li:last-child::after,
.archive.seminars .categories-outer .categories>li:last-child::after,
.archive.publications .categories-outer .categories>li:last-child::after {
  content: none
}

.blog .categories-outer .categories>li.current-cat a,
.blog.seminars .categories-outer .categories>li.current-cat a,
.blog.publications .categories-outer .categories>li.current-cat a,
.page:not(.home) .categories-outer .categories>li.current-cat a,
.page:not(.home).seminars .categories-outer .categories>li.current-cat a,
.page:not(.home).publications .categories-outer .categories>li.current-cat a,
.archive .categories-outer .categories>li.current-cat a,
.archive.seminars .categories-outer .categories>li.current-cat a,
.archive.publications .categories-outer .categories>li.current-cat a {
  color: #000
}

.blog .categories-outer .categories>li.current-cat a:hover,
.blog.seminars .categories-outer .categories>li.current-cat a:hover,
.blog.publications .categories-outer .categories>li.current-cat a:hover,
.page:not(.home) .categories-outer .categories>li.current-cat a:hover,
.page:not(.home).seminars .categories-outer .categories>li.current-cat a:hover,
.page:not(.home).publications .categories-outer .categories>li.current-cat a:hover,
.archive .categories-outer .categories>li.current-cat a:hover,
.archive.seminars .categories-outer .categories>li.current-cat a:hover,
.archive.publications .categories-outer .categories>li.current-cat a:hover {
  text-decoration: none
}

.blog .categories-outer a,
.blog.seminars .categories-outer a,
.blog.publications .categories-outer a,
.page:not(.home) .categories-outer a,
.page:not(.home).seminars .categories-outer a,
.page:not(.home).publications .categories-outer a,
.archive .categories-outer a,
.archive.seminars .categories-outer a,
.archive.publications .categories-outer a {
  color: #06b
}

.blog .categories-outer a:hover,
.blog.seminars .categories-outer a:hover,
.blog.publications .categories-outer a:hover,
.page:not(.home) .categories-outer a:hover,
.page:not(.home).seminars .categories-outer a:hover,
.page:not(.home).publications .categories-outer a:hover,
.archive .categories-outer a:hover,
.archive.seminars .categories-outer a:hover,
.archive.publications .categories-outer a:hover {
  text-decoration: underline
}

.blog .searchform.categories-outer,
.blog.seminars .searchform.categories-outer,
.blog.publications .searchform.categories-outer,
.page:not(.home) .searchform.categories-outer,
.page:not(.home).seminars .searchform.categories-outer,
.page:not(.home).publications .searchform.categories-outer,
.archive .searchform.categories-outer,
.archive.seminars .searchform.categories-outer,
.archive.publications .searchform.categories-outer {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

@media (min-width: 1090px) {

  .blog .searchform.categories-outer,
  .blog.seminars .searchform.categories-outer,
  .blog.publications .searchform.categories-outer,
  .page:not(.home) .searchform.categories-outer,
  .page:not(.home).seminars .searchform.categories-outer,
  .page:not(.home).publications .searchform.categories-outer,
  .archive .searchform.categories-outer,
  .archive.seminars .searchform.categories-outer,
  .archive.publications .searchform.categories-outer {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
  }
}

.blog .searchform.categories-outer .categories,
.blog.seminars .searchform.categories-outer .categories,
.blog.publications .searchform.categories-outer .categories,
.page:not(.home) .searchform.categories-outer .categories,
.page:not(.home).seminars .searchform.categories-outer .categories,
.page:not(.home).publications .searchform.categories-outer .categories,
.archive .searchform.categories-outer .categories,
.archive.seminars .searchform.categories-outer .categories,
.archive.publications .searchform.categories-outer .categories {
  max-width: 440px;
  margin-bottom: -10px;
  width: 100%
}

@media (min-width: 1090px) {

  .blog .searchform.categories-outer .categories,
  .blog.seminars .searchform.categories-outer .categories,
  .blog.publications .searchform.categories-outer .categories,
  .page:not(.home) .searchform.categories-outer .categories,
  .page:not(.home).seminars .searchform.categories-outer .categories,
  .page:not(.home).publications .searchform.categories-outer .categories,
  .archive .searchform.categories-outer .categories,
  .archive.seminars .searchform.categories-outer .categories,
  .archive.publications .searchform.categories-outer .categories {
    margin-bottom: 0;
    margin-right: -10px;
    width: auto
  }
}

.blog .post-list,
.blog.seminars .post-list,
.blog.publications .post-list,
.page:not(.home) .post-list,
.page:not(.home).seminars .post-list,
.page:not(.home).publications .post-list,
.archive .post-list,
.archive.seminars .post-list,
.archive.publications .post-list {
  margin-top: 40px
}

@media (min-width: 768px) {

  .blog .post-list,
  .blog.seminars .post-list,
  .blog.publications .post-list,
  .page:not(.home) .post-list,
  .page:not(.home).seminars .post-list,
  .page:not(.home).publications .post-list,
  .archive .post-list,
  .archive.seminars .post-list,
  .archive.publications .post-list {
    margin-top: 60px
  }
}

@media (min-width: 1000px) {

  .blog .post-list,
  .blog.seminars .post-list,
  .blog.publications .post-list,
  .page:not(.home) .post-list,
  .page:not(.home).seminars .post-list,
  .page:not(.home).publications .post-list,
  .archive .post-list,
  .archive.seminars .post-list,
  .archive.publications .post-list {
    margin-top: calc(15vw - 90px)
  }
}

@media (min-width: 1200px) {

  .blog .post-list,
  .blog.seminars .post-list,
  .blog.publications .post-list,
  .page:not(.home) .post-list,
  .page:not(.home).seminars .post-list,
  .page:not(.home).publications .post-list,
  .archive .post-list,
  .archive.seminars .post-list,
  .archive.publications .post-list {
    margin-top: 90px
  }
}

.single-post .hero-container .overlay,
.single-news .hero-container .overlay,
.single-seminar .hero-container .overlay,
.single-publication .hero-container .overlay,
.single-newsletter .hero-container .overlay {
  padding-bottom: 1em
}

@media (min-width: 1090px) {

  .single-post .hero-container .overlay,
  .single-news .hero-container .overlay,
  .single-seminar .hero-container .overlay,
  .single-publication .hero-container .overlay,
  .single-newsletter .hero-container .overlay {
    padding-bottom: 0
  }
}

.single-post .entry-meta,
.single-news .entry-meta,
.single-seminar .entry-meta,
.single-publication .entry-meta,
.single-newsletter .entry-meta {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: -25px;
  position: relative;
  z-index: 5
}

@media (min-width: 768px) {

  .single-post .entry-meta,
  .single-news .entry-meta,
  .single-seminar .entry-meta,
  .single-publication .entry-meta,
  .single-newsletter .entry-meta {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media (min-width: 480px) {

  .single-post .entry-meta,
  .single-news .entry-meta,
  .single-seminar .entry-meta,
  .single-publication .entry-meta,
  .single-newsletter .entry-meta {
    margin-top: -30px
  }
}

@media (min-width: 1090px) {

  .single-post .entry-meta,
  .single-news .entry-meta,
  .single-seminar .entry-meta,
  .single-publication .entry-meta,
  .single-newsletter .entry-meta {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }
}

.single-post .entry-meta .entry-tag,
.single-news .entry-meta .entry-tag,
.single-seminar .entry-meta .entry-tag,
.single-publication .entry-meta .entry-tag,
.single-newsletter .entry-meta .entry-tag {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #06b;
  color: #fff;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  padding: 9px 18px
}

.single-post .entry-meta .entry-tag:lang(zh-CN),
.single-news .entry-meta .entry-tag:lang(zh-CN),
.single-seminar .entry-meta .entry-tag:lang(zh-CN),
.single-publication .entry-meta .entry-tag:lang(zh-CN),
.single-newsletter .entry-meta .entry-tag:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 480px) {

  .single-post .entry-meta .entry-tag,
  .single-news .entry-meta .entry-tag,
  .single-seminar .entry-meta .entry-tag,
  .single-publication .entry-meta .entry-tag,
  .single-newsletter .entry-meta .entry-tag {
    padding: 14px 28px
  }
}

.single-post .entry-meta .entry-tag._recruit,
.single-post .entry-meta .entry-tag._media,
.single-news .entry-meta .entry-tag._recruit,
.single-news .entry-meta .entry-tag._media,
.single-seminar .entry-meta .entry-tag._recruit,
.single-seminar .entry-meta .entry-tag._media,
.single-publication .entry-meta .entry-tag._recruit,
.single-publication .entry-meta .entry-tag._media,
.single-newsletter .entry-meta .entry-tag._recruit,
.single-newsletter .entry-meta .entry-tag._media {
  background: #8cc152
}

.single-post .entry-meta .entry-tag._probono,
.single-news .entry-meta .entry-tag._probono,
.single-seminar .entry-meta .entry-tag._probono,
.single-publication .entry-meta .entry-tag._probono,
.single-newsletter .entry-meta .entry-tag._probono {
  background: #d770ad
}

.single-post .entry-meta .entry-tag._book,
.single-news .entry-meta .entry-tag._book,
.single-seminar .entry-meta .entry-tag._book,
.single-publication .entry-meta .entry-tag._book,
.single-newsletter .entry-meta .entry-tag._book {
  background: #e9573f
}

.single-post .entry-meta .entry-tag._open,
.single-news .entry-meta .entry-tag._open,
.single-seminar .entry-meta .entry-tag._open,
.single-publication .entry-meta .entry-tag._open,
.single-newsletter .entry-meta .entry-tag._open {
  background: #16a085
}

.single-post .entry-meta .entry-tag._closed,
.single-post .entry-meta .entry-tag._important,
.single-news .entry-meta .entry-tag._closed,
.single-news .entry-meta .entry-tag._important,
.single-seminar .entry-meta .entry-tag._closed,
.single-seminar .entry-meta .entry-tag._important,
.single-publication .entry-meta .entry-tag._closed,
.single-publication .entry-meta .entry-tag._important,
.single-newsletter .entry-meta .entry-tag._closed,
.single-newsletter .entry-meta .entry-tag._important {
  background: #da4453
}

.single-post .entry-meta a:hover,
.single-news .entry-meta a:hover,
.single-seminar .entry-meta a:hover,
.single-publication .entry-meta a:hover,
.single-newsletter .entry-meta a:hover {
  text-decoration: underline
}

.single-post .entry-content,
.single-news .entry-content,
.single-seminar .entry-content,
.single-publication .entry-content,
.single-newsletter .entry-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {

  .single-post .entry-content,
  .single-news .entry-content,
  .single-seminar .entry-content,
  .single-publication .entry-content,
  .single-newsletter .entry-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

.info-table th {
  background: #f5f7fa
}

@media (min-width: 360px) {
  .info-table th {
    white-space: nowrap
  }
}

@media (min-width: 768px) {
  .info-table th {
    width: 9em
  }
}

.info-table th,
.info-table td {
  border: 0;
  border-top: 1px solid #e6e9ed;
  border-bottom: 1px solid #e6e9ed
}

.info-table th p:first-child,
.info-table th ul:first-child,
.info-table th ol:first-child,
.info-table td p:first-child,
.info-table td ul:first-child,
.info-table td ol:first-child {
  margin-top: 0
}

.info-table th p:last-child,
.info-table th ul:last-child,
.info-table th ol:last-child,
.info-table td p:last-child,
.info-table td ul:last-child,
.info-table td ol:last-child {
  margin-bottom: 0
}

.publication-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 2em 0
}

@media (min-width: 768px) {
  .publication-info {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
  }
}

.publication-info .cover {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin: 0 0 2em;
  padding: 0;
  max-width: 200px
}

@media (min-width: 768px) {
  .publication-info .cover {
    margin: 0 50px 0 0
  }
}

.publication-info .cover img {
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  padding: 0
}

.publication-info .publication-info-table {
  border: 0;
  margin: 0
}

.publication-info .publication-info-table th,
.publication-info .publication-info-table td {
  border: 0;
  border-top: 1px solid #e6e9ed;
  border-bottom: 1px solid #e6e9ed
}

.publication-info .publication-info-table th p:first-child,
.publication-info .publication-info-table th ul:first-child,
.publication-info .publication-info-table th ol:first-child,
.publication-info .publication-info-table td p:first-child,
.publication-info .publication-info-table td ul:first-child,
.publication-info .publication-info-table td ol:first-child {
  margin-top: 0
}

.publication-info .publication-info-table th p:last-child,
.publication-info .publication-info-table th ul:last-child,
.publication-info .publication-info-table th ol:last-child,
.publication-info .publication-info-table td p:last-child,
.publication-info .publication-info-table td ul:last-child,
.publication-info .publication-info-table td ol:last-child {
  margin-bottom: 0
}

.publication-info .publication-info-table th {
  padding-left: 0;
  white-space: nowrap
}

@media (min-width: 768px) {
  .publication-info .publication-info-table th {
    width: 9em
  }
}

.publication-info .publication-info-table td {
  padding-left: 0;
  padding-right: 0
}

@media (min-width: 480px) {
  .publication-info .publication-info-table td {
    padding-left: 1em
  }
}

@media (min-width: 768px) {
  .publication-info .publication-info-table td {
    padding-right: 1em
  }
}

.page.professionals .page-content,
.archive.professionals .page-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {

  .page.professionals .page-content,
  .archive.professionals .page-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

.page.professionals .professional-search-outer,
.archive.professionals .professional-search-outer {
  background: #f5f7fa;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 30px 0 20px;
  padding: 15px;
  position: relative
}

@media (min-width: 768px) {

  .page.professionals .professional-search-outer,
  .archive.professionals .professional-search-outer {
    margin: 40px 0 30px;
    padding: 30px
  }
}

@media (min-width: 1200px) {

  .page.professionals .professional-search-outer,
  .archive.professionals .professional-search-outer {
    margin-top: 60px
  }
}

.page.professionals .professional-search-outer::before,
.archive.professionals .professional-search-outer::before {
  -webkit-animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  animation: scaleOutLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  background: #fff;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 9
}

.page.professionals .professional-search-outer select,
.archive.professionals .professional-search-outer select {
  background: url(../images/chevron-down.svg) no-repeat right 0.75em center;
  background-size: 16px;
  padding: 0 2.5em 0 1em;
  position: relative
}

.page.professionals .professional-search-outer .item,
.archive.professionals .professional-search-outer .item {
  margin: 5px;
  width: calc(100% - 10px)
}

@media (min-width: 768px) {

  .page.professionals .professional-search-outer .item,
  .archive.professionals .professional-search-outer .item {
    margin: 10px;
    width: calc(100% - 20px)
  }
}

@media (min-width: 1200px) {

  .page.professionals .professional-search-outer .item,
  .archive.professionals .professional-search-outer .item {
    width: calc(20% - 20px)
  }
}

.page.professionals .professional-search-outer .filter,
.archive.professionals .professional-search-outer .filter {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  border: 0;
  border-radius: 0;
  height: 40px
}

@media (min-width: 640px) {

  .page.professionals .professional-search-outer .filter,
  .archive.professionals .professional-search-outer .filter {
    width: calc(50% - 10px)
  }
}

@media (min-width: 768px) {

  .page.professionals .professional-search-outer .filter,
  .archive.professionals .professional-search-outer .filter {
    width: calc(50% - 20px)
  }
}

@media (min-width: 1200px) {

  .page.professionals .professional-search-outer .filter,
  .archive.professionals .professional-search-outer .filter {
    width: calc(20% - 20px)
  }
}

.page.professionals .professional-search-outer .clear-all,
.archive.professionals .professional-search-outer .clear-all {
  min-width: auto
}

.page.professionals .professional-search-outer .search-input-group,
.archive.professionals .professional-search-outer .search-input-group {
  position: relative
}

@media (min-width: 1200px) {

  .page.professionals .professional-search-outer .search-input-group,
  .archive.professionals .professional-search-outer .search-input-group {
    width: calc(100% - 20px)
  }
}

.page.professionals .professional-search-outer .search-input-group .search,
.archive.professionals .professional-search-outer .search-input-group .search {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  border-radius: 0;
  height: 40px;
  padding: 0 40px 0 1em;
  width: 100%
}

@media (min-width: 768px) {

  .page.professionals .professional-search-outer .search-input-group .search,
  .archive.professionals .professional-search-outer .search-input-group .search {
    height: 60px;
    padding-right: 60px
  }
}

.page.professionals .professional-search-outer .search-input-group .submit,
.archive.professionals .professional-search-outer .search-input-group .submit {
  background: none;
  border: 0;
  color: #333;
  font-size: 0;
  height: 40px;
  position: absolute;
  right: 0;
  top: 0;
  width: 40px
}

@media (min-width: 768px) {

  .page.professionals .professional-search-outer .search-input-group .submit,
  .archive.professionals .professional-search-outer .search-input-group .submit {
    height: 60px;
    width: 60px
  }
}

.page.professionals .professional-search-outer .search-input-group .submit::before,
.archive.professionals .professional-search-outer .search-input-group .submit::before {
  font-size: 20px
}

@media (min-width: 768px) {

  .page.professionals .professional-search-outer .search-input-group .submit::before,
  .archive.professionals .professional-search-outer .search-input-group .submit::before {
    font-size: 30px
  }
}

.page.professionals .professional-result,
.archive.professionals .professional-result {
  -webkit-animation: fadeIn 0s linear 0.25s both;
  animation: fadeIn 0s linear 0.25s both;
  border-bottom: 1px solid #e6e9ed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 30px;
  padding-bottom: 10px
}

@media (min-width: 768px) {

  .page.professionals .professional-result,
  .archive.professionals .professional-result {
    margin-bottom: 40px
  }
}

.page.professionals .professional-result::before,
.page.professionals .professional-result::after,
.archive.professionals .professional-result::before,
.archive.professionals .professional-result::after {
  bottom: -1px
}

.page.professionals .professional-result .professional-result-number .number,
.archive.professionals .professional-result .professional-result-number .number {
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px
}

.page.professionals .professional-result .professional-result-sort>span,
.archive.professionals .professional-result .professional-result-sort>span {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #aab2bd;
  cursor: pointer
}

.page.professionals .professional-result .professional-result-sort>span._active,
.archive.professionals .professional-result .professional-result-sort>span._active {
  color: #333
}

.page.professionals .professional-list,
.archive.professionals .professional-list {
  -webkit-animation: fadeIn 0s linear 0.25s both;
  animation: fadeIn 0s linear 0.25s both
}

@media (min-width: 1240px) {

  .page.professionals .professional-list>li,
  .archive.professionals .professional-list>li {
    width: 20%
  }
}

.single-professional .main {
  overflow: visible
}

.single-professional .profile-header-outer {
  background: #f5f7fa;
  margin-bottom: 30px;
  margin-right: 15px;
  padding: 40px 0
}

@media (min-width: 320px) {
  .single-professional .profile-header-outer {
    margin-right: calc(4.018vw + 2.143px)
  }
}

@media (min-width: 768px) {
  .single-professional .profile-header-outer {
    padding: 80px 0 40px
  }
}

@media (min-width: 960px) {
  .single-professional .profile-header-outer {
    margin-bottom: 50px;
    padding-bottom: 60px
  }
}

@media (min-width: 1440px) {
  .single-professional .profile-header-outer {
    margin-right: 60px
  }
}

.single-professional .profile-header-full-width-container {
  margin-right: calc(-4.018vw - 2.143px)
}

@media (min-width: 1440px) {
  .single-professional .profile-header-full-width-container {
    margin-right: -60px
  }
}

.single-professional .profile-header {
  margin: auto;
  max-width: 1000px;
  padding-left: 30px;
  padding-right: calc(4.018vw + 32.143px)
}

@media (min-width: 768px) {
  .single-professional .profile-header {
    padding-left: 40px;
    padding-right: calc(4.018vw + 42.143px)
  }
}

@media (min-width: 1000px) {
  .single-professional .profile-header {
    padding-right: calc(-46.66667vw + 548.66667px)
  }
}

@media (min-width: 1090px) {
  .single-professional .profile-header {
    padding-right: 40px
  }
}

.single-professional .profile-header a {
  color: #06b
}

.single-professional .profile-header a:hover {
  text-decoration: underline
}

.single-professional .profile-photo {
  margin-left: 0px;
  margin-bottom: 1.6em
}

@media (min-width: 1090px) {
  .single-professional .profile-photo {
    margin-left: calc(-45.71429vw + 498.28571px)
  }
}

@media (min-width: 1440px) {
  .single-professional .profile-photo {
    margin-left: -160px
  }
}

@media (min-width: 768px) {
  .single-professional .profile-photo {
    float: left;
    margin-right: 40px;
    margin-bottom: 20px;
    width: 40%
  }
}

@media (min-width: 960px) {
  .single-professional .profile-photo {
    margin-right: 60px;
    margin-bottom: 60px
  }
}

@media (min-width: 1200px) {
  .single-professional .profile-photo {
    margin-right: 80px;
    margin-bottom: 80px
  }
}

.single-professional .profile-name {
  line-height: 1.75;
  margin-bottom: 1em
}

.single-professional .profile-name em {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 24px;
  font-weight: bold
}

@media (min-width: 320px) {
  .single-professional .profile-name em {
    font-size: calc(1.78571vw + 18.28571px)
  }
}

@media (min-width: 768px) {
  .single-professional .profile-name em {
    font-size: 32px
  }
}

.single-professional .profile-name small {
  display: inline-block;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px
}

.single-professional .share-buttons {
  margin-top: 20px
}

@media (min-width: 768px) {
  .single-professional .share-buttons {
    left: -5px;
    margin-left: 0;
    position: relative
  }
}

.single-professional .share-buttons a {
  color: #333
}

.single-professional .share-buttons a:hover {
  text-decoration: none
}

.single-professional .profile-detail-outer {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .single-professional .profile-detail-outer {
    padding-left: 40px;
    padding-right: 40px
  }
}

.single-professional .profile-detail-outer::after {
  content: "";
  display: block;
  clear: both
}

.single-professional .profile-detail {
  overflow: hidden
}

@media (min-width: 768px) {
  .single-professional .profile-detail {
    float: right;
    width: calc(61.6072vw - 87.1428px)
  }
}

@media (min-width: 960px) {
  .single-professional .profile-detail {
    float: none;
    overflow: hidden;
    width: auto
  }
}

.single-professional .profile-detail a {
  color: #06b;
  -webkit-hyphens: manual;
  -ms-hyphens: manual;
  hyphens: manual
}

.single-professional .profile-detail a:hover {
  text-decoration: underline
}

.single-professional .profile-detail>dt {
  font-weight: bold
}

@media (min-width: 480px) {
  .single-professional .profile-detail>dt {
    clear: both;
    float: left
  }
}

@media (min-width: 480px) {
  .single-professional .profile-detail>dd {
    padding-left: 190px
  }

  [lang="ja"] .single-professional .profile-detail>dd {
    padding-left: 140px
  }
}

.single-professional .profile-detail>dd+dt {
  margin-top: 1em
}

@media (min-width: 480px) {
  .single-professional .profile-detail>dd+dt+dd {
    margin-top: 1em
  }
}

.single-professional .actions {
  margin-top: 2em
}

@media (min-width: 768px) {
  .single-professional .actions {
    clear: left;
    float: left;
    margin-top: 0;
    width: calc(38.3928vw - 32.8572px)
  }
}

@media (min-width: 960px) {
  .single-professional .actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    float: none;
    margin-top: 60px;
    width: auto
  }
}

@media (min-width: 1200px) {
  .single-professional .actions {
    margin-top: 80px
  }
}

@media (min-width: 960px) {
  .single-professional .actions>li {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 calc((100% - 80px) / 3);
    flex: 1 0 calc((100% - 80px) / 3)
  }
}

.single-professional .actions>li+li {
  margin-top: 15px
}

@media (min-width: 768px) {
  .single-professional .actions>li+li {
    margin-top: 20px
  }
}

@media (min-width: 960px) {
  .single-professional .actions>li+li {
    margin-top: 0;
    margin-left: 40px
  }
}

.single-professional .actions .button-l {
  display: block;
  min-width: auto;
  font-size: 16px;
  white-space: nowrap;
  width: 100%
}

@media (min-width: 320px) {
  .single-professional .actions .button-l {
    font-size: 5vw
  }
}

@media (min-width: 360px) {
  .single-professional .actions .button-l {
    font-size: 18px
  }
}

@media (min-width: 768px) {
  .single-professional .actions .button-l {
    font-size: calc(2.778vw - 5.333px)
  }
}

@media (min-width: 840px) {
  .single-professional .actions .button-l {
    font-size: 18px
  }
}

.single-professional .actions .button-l::before {
  margin-right: 5px;
  vertical-align: -1px
}

.single-professional .entry-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  clear: both
}

@media (min-width: 768px) {
  .single-professional .entry-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media screen and (min-width: 960px) {
  .single-professional .profile-tab-contents {
    margin-top: 60px;
    position: relative
  }
}

@media screen and (min-width: 1200px) {
  .single-professional .profile-tab-contents {
    margin-top: 80px
  }
}

.single-professional .profile-tabs {
  display: none
}

@media screen and (min-width: 960px) {
  .single-professional .profile-tabs {
    background: #fff;
    border-bottom: 1px solid #e6e9ed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 48px;
    position: -webkit-sticky;
    position: sticky;
    top: 60px;
    z-index: 5
  }
}

@media screen and (min-width: 1200px) {
  .single-professional .profile-tabs {
    top: 80px
  }
}

@media screen and (min-width: 960px) {
  .admin-bar.single-professional .profile-tabs {
    top: 92px
  }
}

@media screen and (min-width: 960px) {
  .admin-bar.single-professional .profile-tabs {
    top: 112px
  }
}

@media screen and (min-width: 960px) {
  .single-professional .profile-tabs .profile-tab {
    display: block
  }
}

@media screen and (min-width: 960px) {
  .single-professional .profile-tab {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: #f5f7fa;
    cursor: pointer;
    display: none;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 16px;
    font-weight: bold;
    margin: 0;
    margin-right: 20px;
    padding: 14px 40px;
    position: relative;
    text-align: center;
    z-index: 3;
    -webkit-transition: background 0.15s ease-in-out;
    transition: background 0.15s ease-in-out
  }

  .single-professional .profile-tab:hover {
    background: #e6e9ed
  }

  .single-professional .profile-tab::before {
    content: none
  }

  .single-professional .profile-tab._active {
    background: #fff;
    border: 1px solid #e6e9ed;
    border-bottom: 0;
    margin-bottom: -1px;
    position: relative;
    z-index: 5
  }
}

@media screen and (min-width: 960px) {
  .single-professional .profile-tab-content {
    display: none
  }

  .single-professional .profile-tab-content._active {
    display: block
  }

  .single-professional .profile-tab-content>:last-child {
    margin-bottom: 0
  }
}

.single-professional .profile-tab-content table {
  border: 0
}

.single-professional .profile-tab-content table tr {
  display: block
}

@media (min-width: 640px) {
  .single-professional .profile-tab-content table tr {
    display: table-row
  }
}

.single-professional .profile-tab-content table tr:last-child th,
.single-professional .profile-tab-content table tr:last-child td {
  border-bottom: 0
}

.single-professional .profile-tab-content table tr:last-child td {
  padding-bottom: 0
}

.single-professional .profile-tab-content table th,
.single-professional .profile-tab-content table td {
  border: 0;
  display: block;
  padding: 0
}

@media (min-width: 640px) {

  .single-professional .profile-tab-content table th,
  .single-professional .profile-tab-content table td {
    border-bottom: 1px solid #f5f7fa;
    display: table-cell
  }
}

.single-professional .profile-tab-content table td:first-child {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #aab2bd;
  font-weight: normal
}

@media (min-width: 640px) {
  .single-professional .profile-tab-content table td:first-child {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
    color: #333;
    padding: 0.5em 1em 0.5em 0;
    width: 13em
  }
}

.single-professional .profile-tab-content table td {
  padding-bottom: 1em
}

@media (min-width: 640px) {
  .single-professional .profile-tab-content table td {
    padding: 0.5em 0
  }
}

@media screen and (min-width: 960px) {
  .single-professional .post-list {
    background: none;
    padding-top: 0;
    padding-left: 0;
    padding-right: 0
  }

  .single-professional .post-list>li {
    font-size: 16px
  }

  .single-professional .post-list>li .post-label {
    font-size: 14px;
    line-height: 24px;
    min-width: 120px
  }

  .single-professional .post-list>li .post-cover {
    max-width: 120px
  }
}

.page.practices .description {
  margin-bottom: 60px;
  margin-top: 60px
}

@media (min-width: 320px) {
  .page.practices .description {
    margin-bottom: calc(4.6875vw + 45px)
  }
}

@media (min-width: 960px) {
  .page.practices .description {
    margin-bottom: 90px
  }
}

@media (min-width: 320px) {
  .page.practices .description {
    margin-top: calc(4.6875vw + 45px)
  }
}

@media (min-width: 960px) {
  .page.practices .description {
    margin-top: 90px
  }
}

@media (max-width: 1319px) {
  .page.practices .description {
    padding-bottom: 40px
  }
}

@media (max-width: 499px) {
  .page.practices .description {
    padding-bottom: 0
  }
}

.page.practices .description p {
  margin: 2em 0
}

@media (max-width: 1319px) {
  .page.practices .anchor-container .anchor-index {
    background: #f5f7fa;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 80px
  }

  .page.practices .anchor-container .anchor-index>li {
    padding-left: 0;
    text-indent: 0
  }
}

@media (max-width: 1199px) {
  .page.practices .anchor-container .anchor-index {
    margin-top: 60px
  }
}

@media (max-width: 499px) {
  .page.practices .anchor-container .anchor-index {
    display: none
  }
}

@media (max-width: 1319px) {
  .page.practices .anchor-container .anchor-index+h1 {
    margin-top: calc(3em + 120px)
  }
}

@media (max-width: 1199px) {
  .page.practices .anchor-container .anchor-index+h1 {
    margin-top: calc(3em + 100px)
  }
}

.page.practices .practice-categories a {
  color: #06b
}

.page.practices .practice-categories a:hover {
  text-decoration: underline
}

.page.practices .practice-category {
  margin-bottom: 60px
}

@media (min-width: 320px) {
  .page.practices .practice-category {
    margin-bottom: calc(8.92857vw + 31.42857px)
  }
}

@media (min-width: 768px) {
  .page.practices .practice-category {
    margin-bottom: 100px
  }
}

.page.practices .practice-category:last-child {
  margin-bottom: 0
}

.page.practices .practice-category::before {
  content: "";
  display: block;
  height: 160px;
  margin-top: -160px;
  visibility: hidden
}

@media (max-width: 1199px) {
  .page.practices .practice-category::before {
    height: 140px;
    margin-top: -140px
  }
}

.page.practices .practice-category-name {
  font-size: 24px;
  font-weight: bold;
  line-height: 40px;
  margin-bottom: 0.75em
}

.page.practices .practice-parents {
  border-bottom: 2px solid #e6e9ed;
  border-top: 2px solid #e6e9ed
}

.page.practices .practice-parents>li {
  padding: 1em 0
}

@media (min-width: 768px) {
  .page.practices .practice-parents>li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

.page.practices .practice-parents>li+li {
  border-top: 1px solid #e6e9ed
}

.page.practices .practice-parent-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-weight: bold;
  margin-right: 30px;
  width: 100%
}

@media (min-width: 768px) {
  .page.practices .practice-parent-name {
    width: 210px
  }
}

@media (min-width: 768px) {
  .page.practices .practice-parent-name.has-practices::after {
    font-family: 'kitahamaicon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "";
    line-height: 2;
    margin-left: 1em
  }
}

.page.practices .practice-parent-name a {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-hyphens: manual;
  -ms-hyphens: manual;
  hyphens: manual
}

.page.practices .show-practices {
  background: none;
  border: 0;
  border-left: 1px solid #e6e9ed;
  color: inherit;
  font-size: 0;
  padding: 0 15px
}

@media (min-width: 768px) {
  .page.practices .show-practices {
    display: none
  }
}

.page.practices .show-practices::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  display: inline-block;
  font-size: 16px;
  -webkit-transition: -webkit-transform 0.2s ease-in-out;
  transition: -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out
}

.page.practices .show-practices.active::before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.page.practices .practices {
  display: none;
  margin-top: 0.25em
}

@media (min-width: 768px) {
  .page.practices .practices {
    display: block !important;
    margin-top: 0
  }
}

.page.practices .practices>li {
  display: inline
}

.page.practices .practices>li::after {
  content: " / "
}

[lang="ja"] .page.practices .practices>li::after {
  content: " ／"
}

.page.practices .practices>li:last-child::after {
  content: none
}

.page.practices .practices a {
  -webkit-hyphens: manual;
  -ms-hyphens: manual;
  hyphens: manual
}

.single-practice .entry-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .single-practice .entry-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

.single-practice .sub-practices {
  border-top: 1px solid #e6e9ed;
  border-bottom: 1px solid #e6e9ed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 60px;
  padding-left: 0
}

.single-practice .sub-practices>li {
  border-bottom: 1px solid #e6e9ed;
  padding: 30px 0;
  text-indent: 0;
  width: 100%
}

@media (min-width: 640px) {
  .single-practice .sub-practices>li {
    width: calc(50% - 30px/2)
  }

  .single-practice .sub-practices>li:nth-child(2n) {
    margin-left: 30px
  }

  .single-practice .sub-practices>li:nth-last-child(2):nth-child(odd) {
    border-bottom: 0
  }
}

@media (min-width: 768px) {
  .single-practice .sub-practices>li {
    width: calc(50% - 40px/2)
  }

  .single-practice .sub-practices>li:nth-child(2n) {
    margin-left: 40px
  }
}

@media (min-width: 960px) {
  .single-practice .sub-practices>li {
    width: calc(33.33333% - 26.66667px)
  }

  .single-practice .sub-practices>li:nth-child(3n+1) {
    margin-left: 0
  }

  .single-practice .sub-practices>li:nth-child(3n+2),
  .single-practice .sub-practices>li:nth-child(3n) {
    margin-left: 40px
  }

  .single-practice .sub-practices>li:nth-last-child(2):nth-child(odd) {
    border-bottom: 1px solid #e6e9ed
  }

  .single-practice .sub-practices>li:nth-last-child(2):nth-child(3n+2),
  .single-practice .sub-practices>li:nth-last-child(3):nth-child(3n+1) {
    border-bottom: 0
  }
}

.single-practice .sub-practices>li:last-child {
  border-bottom: 0
}

.single-practice .sub-practices>li+li {
  margin-top: 0
}

.single-practice .sub-practices>li::before {
  content: none
}

.single-practice .sub-practices>li>a:not(.button):not(.wp-block-file__button) {
  color: inherit;
  height: 100%
}

.single-practice .sub-practices>li>a:not(.button):not(.wp-block-file__button):lang(ja) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.single-practice .sub-practices>li>a:not(.button):not(.wp-block-file__button):hover {
  color: #06b;
  text-decoration: none
}

.single-practice .sub-practices h2::before {
  content: none
}

.single-practice .sub-practices .sub-practice-title {
  font-size: 18px;
  line-height: 1.75;
  margin: 0
}

.single-practice .sub-practices .sub-practice-excerpt {
  font-size: 14px;
  margin: 1em 0 0
}

.single-practice .sub-practices .sub-practice-excerpt::after {
  color: #06b;
  content: " Read More"
}

[lang="ja"] .single-practice .sub-practices .sub-practice-excerpt::after {
  content: "　続きを読む"
}

.page.stories .copy,
.page.stories .description {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {

  .page.stories .copy,
  .page.stories .description {
    padding-left: 40px;
    padding-right: 40px
  }
}

.page.stories .copy {
  font-size: 24px;
  font-weight: bold;
  margin: 3em auto 1em;
  position: relative;
  text-align: center;
  white-space: nowrap
}

@media (min-width: 320px) {
  .page.stories .copy {
    font-size: calc(5vw + 8px)
  }
}

@media (min-width: 480px) {
  .page.stories .copy {
    font-size: 32px
  }
}

.page.stories .copy::after {
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  height: 0;
  margin: 0.5em auto 0;
  width: 40px
}

.page.stories .searchform {
  margin: 40px auto;
  max-width: 520px;
  padding: 0 30px;
  display: none\0;
  display: none\9
}

@media (min-width: 768px) {
  .page.stories .searchform {
    margin: 60px auto;
    padding: 0 40px
  }
}

.page.stories .stories {
  -webkit-animation: fadeIn 0s linear 0.25s both;
  animation: fadeIn 0s linear 0.25s both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: auto;
  margin-top: 40px;
  max-width: 1920px;
  padding: 0 15px
}

@media (min-width: 768px) {
  .page.stories .stories {
    margin-top: 60px;
    padding: 0 20px
  }
}

.page.stories .stories>li {
  padding: 15px
}

@media (min-width: 768px) {
  .page.stories .stories>li {
    width: 50%;
    padding: 20px
  }
}

@media (min-width: 1320px) {
  .page.stories .stories>li {
    width: 33.33333%
  }
}

.page.stories .stories>li a {
  display: block
}

.page.stories .stories>li a figure {
  overflow: hidden
}

.page.stories .stories>li a figure img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page.stories .stories>li a:hover figure img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.page.stories .stories>li .name {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 0.5em
}

.page.stories .stories>li .name em {
  display: block
}

.page.stories .stories>li .name small {
  color: #06b;
  display: block;
  font-weight: 400
}

.page.stories .stories>li .heading {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #656d78;
  font-size: 14px;
  line-height: 1.5;
  margin-top: 0.25em
}

.single-story .story-meta-outer {
  -webkit-animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  background: #f5f7fa;
  font-size: 14px;
  margin: -15px auto 0;
  max-width: 1000px;
  padding: 15px 20px;
  position: relative;
  width: 80%;
  z-index: 9
}

@media (min-width: 320px) {
  .single-story .story-meta-outer {
    margin-top: calc(-3.906% - 2.5px);
    padding: calc(3.125% + 5px) calc(3.125% + 10px)
  }
}

@media (min-width: 768px) {
  .single-story .story-meta-outer {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}

@media (min-width: 960px) {
  .single-story .story-meta-outer {
    margin-top: -40px;
    padding: 35px 40px
  }
}

.single-story .story-meta-outer .story-meta {
  -webkit-animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s both;
  animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s both
}

.single-story .story-meta-outer a:not(.button):not(.wp-block-file__button):hover {
  text-decoration: underline
}

.single-story .story-meta-outer .fullname {
  font-weight: bold
}

.single-story .story-meta-outer .fullname .ja {
  display: inline-block;
  font-size: 18px;
  margin-right: 0.75em
}

.single-story .story-meta-outer .fullname .en {
  display: inline-block
}

.single-story .story-meta-outer .button {
  font-size: 16px;
  min-width: 200px;
  padding: 9px 1em;
  -webkit-animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s both;
  animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s both;
  display: block;
  margin: 15px auto 5px;
  width: 200px
}

@media (min-width: 768px) {
  .single-story .story-meta-outer .button {
    margin: 5px 0 5px 40px
  }
}

@media (min-width: 960px) {
  .single-story .story-meta-outer .button {
    font-size: 18px;
    padding: 17.4px 1em;
    width: 280px
  }
}

.single-story .entry-content h1 {
  margin-bottom: 1.5em
}

.single-story .entry-content h1::after {
  border: 0;
  height: auto;
  margin: 0
}

.single-story .entry-content>h1:first-child {
  position: relative
}

.single-story .entry-content>h1:first-child::after {
  font-size: 60px;
  color: #f5f7fa;
  content: attr(data-name);
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 900;
  line-height: 0.9;
  left: calc(100% + 0.5em);
  position: absolute;
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 0;
  white-space: pre;
  z-index: -1
}

@media (min-width: 320px) {
  .single-story .entry-content>h1:first-child::after {
    font-size: calc(18.75vw + 0px)
  }
}

@media (min-width: 640px) {
  .single-story .entry-content>h1:first-child::after {
    font-size: 120px
  }
}

.single-story .entry-content>h1:first-child._left::after {
  top: -0.5em;
  left: 0.5em
}

.single-story .entry-content h2 {
  font-size: 20px;
  margin-top: 48px;
  margin-bottom: 36px
}

@media (min-width: 320px) {
  .single-story .entry-content h2 {
    font-size: calc(.89286vw + 17.14286px)
  }
}

@media (min-width: 768px) {
  .single-story .entry-content h2 {
    font-size: 24px
  }
}

@media (min-width: 768px) {
  .single-story .entry-content h2 {
    margin-top: calc(4.34783vw + 14.6087px)
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content h2 {
    margin-top: 72px
  }
}

@media (min-width: 768px) {
  .single-story .entry-content h2 {
    margin-bottom: calc(2.17391vw + 19.30435px)
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content h2 {
    margin-bottom: 48px
  }
}

.single-story .entry-content h2::before {
  content: none
}

.single-story .entry-content .row {
  margin-left: -30px;
  margin-right: -30px
}

@media (min-width: 768px) {
  .single-story .entry-content .row {
    margin-left: -40px;
    margin-right: -40px
  }
}

@media (min-width: 1200px) {
  .single-story .entry-content .row {
    left: 50%;
    margin-left: -50vw;
    position: relative;
    width: 100vw
  }

  .single-story .entry-content .row+* {
    clear: both
  }

  .single-story .entry-content .row h1 {
    margin-top: 64px
  }
}

@media (min-width: 1200px) {
  .single-story .entry-content .ovh-1200 {
    overflow: hidden
  }
}

@media (max-width: 767px) {
  .single-story .entry-content .landscape.stick-left.float-left {
    margin-right: 0
  }

  .single-story .entry-content .landscape.stick-left.float-left+* {
    clear: both
  }
}

.single-story .entry-content .landscape._left {
  margin-left: -30px;
  text-align: left
}

@media (min-width: 768px) {
  .single-story .entry-content .landscape._left {
    float: left;
    margin-left: -40px;
    margin-right: calc(7.246vw - 15.652px)
  }
}

@media (min-width: 840px) {
  .single-story .entry-content .landscape._left {
    margin-left: calc(380px - 50vw)
  }
}

@media (min-width: 1200px) {
  .single-story .entry-content .landscape._left {
    margin-left: -40px
  }
}

@media (min-width: 1240px) {
  .single-story .entry-content .landscape._left {
    margin-left: calc(50vw - 660px)
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content .landscape._left {
    margin-left: 0px;
    margin-right: 80px
  }
}

.single-story .entry-content .portrait._left {
  margin-right: 40px;
  float: left;
  margin-right: 30px;
  margin-left: -30px
}

@media (min-width: 768px) {
  .single-story .entry-content .portrait._left {
    margin-right: calc(7.24638vw + -15.65217px)
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content .portrait._left {
    margin-right: 80px
  }
}

@media (min-width: 768px) {
  .single-story .entry-content .portrait._left {
    margin-left: -40px
  }
}

@media (min-width: 1200px) {
  .single-story .entry-content .portrait._left {
    margin-left: 0
  }
}

@media (max-width: 767px) {
  .single-story .entry-content .landscape.stick-right.float-right {
    margin-left: 0
  }

  .single-story .entry-content .landscape.stick-right.float-right+* {
    clear: both
  }
}

.single-story .entry-content .landscape._right {
  margin-right: -30px;
  text-align: right
}

@media (min-width: 768px) {
  .single-story .entry-content .landscape._right {
    float: right;
    margin-right: -40px;
    margin-left: calc(7.246vw - 15.652px)
  }
}

@media (min-width: 840px) {
  .single-story .entry-content .landscape._right {
    margin-right: calc(380px - 50vw)
  }
}

@media (min-width: 1200px) {
  .single-story .entry-content .landscape._right {
    margin-right: -40px
  }
}

@media (min-width: 1240px) {
  .single-story .entry-content .landscape._right {
    margin-right: calc(50vw - 660px)
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content .landscape._right {
    margin-right: 0px;
    margin-left: 80px
  }
}

.single-story .entry-content .portrait._right {
  margin-left: 40px;
  float: right;
  margin-left: 30px;
  margin-right: -30px
}

@media (min-width: 768px) {
  .single-story .entry-content .portrait._right {
    margin-left: calc(7.24638vw + -15.65217px)
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content .portrait._right {
    margin-left: 80px
  }
}

@media (min-width: 768px) {
  .single-story .entry-content .portrait._right {
    margin-right: -40px
  }
}

@media (min-width: 1200px) {
  .single-story .entry-content .portrait._right {
    margin-right: 0
  }
}

.single-story .entry-content .book {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media (min-width: 1280px) {
  .single-story .entry-content .book {
    display: block
  }
}

.single-story .entry-content .book img {
  width: 80px;
  margin-right: 30px
}

@media (min-width: 320px) {
  .single-story .entry-content .book img {
    width: calc(12.5vw + 40px)
  }
}

@media (min-width: 640px) {
  .single-story .entry-content .book img {
    width: 120px
  }
}

@media (min-width: 768px) {
  .single-story .entry-content .book img {
    margin-right: 40px
  }
}

.single-story .entry-content .closing {
  color: #e6e9ed;
  font-size: 7.5vw;
  font-weight: bold;
  line-height: 1.5;
  margin: 1.75rem auto;
  text-align: center;
  white-space: nowrap
}

@media (min-width: 840px) {
  .single-story .entry-content .closing {
    font-size: 63px
  }
}

@media (min-width: 480px) {

  .single-story .entry-content .closing._right,
  .single-story .entry-content .closing[class*=" right--"],
  .single-story .entry-content .closing[class^="right--"] {
    direction: rtl
  }

  .single-story .entry-content .closing._right::before,
  .single-story .entry-content .closing[class*=" right--"]::before,
  .single-story .entry-content .closing[class^="right--"]::before {
    content: "\202a"
  }

  .single-story .entry-content .closing._right::after,
  .single-story .entry-content .closing[class*=" right--"]::after,
  .single-story .entry-content .closing[class^="right--"]::after {
    content: "\202c"
  }
}

@media (min-width: 840px) {

  .single-story .entry-content .closing[class*=" left--"],
  .single-story .entry-content .closing[class^="left--"] {
    margin-left: calc(420px - 50vw)
  }
}

@media (min-width: 920px) {
  .single-story .entry-content .closing.left--1 {
    margin-left: -40px
  }
}

@media (min-width: 1000px) {
  .single-story .entry-content .closing.left--2 {
    margin-left: -80px
  }
}

@media (min-width: 1080px) {
  .single-story .entry-content .closing.left--3 {
    margin-left: -120px
  }
}

@media (min-width: 1160px) {
  .single-story .entry-content .closing.left--4 {
    margin-left: -160px
  }
}

@media (min-width: 1240px) {
  .single-story .entry-content .closing.left--5 {
    margin-left: -200px
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content .closing.left--6 {
    margin-left: -240px
  }
}

@media (min-width: 840px) {

  .single-story .entry-content .closing[class*=" right--"],
  .single-story .entry-content .closing[class^="right--"] {
    margin-right: calc(420px - 50vw)
  }
}

@media (min-width: 920px) {
  .single-story .entry-content .closing.right--1 {
    margin-right: -40px
  }
}

@media (min-width: 1000px) {
  .single-story .entry-content .closing.right--2 {
    margin-right: -80px
  }
}

@media (min-width: 1080px) {
  .single-story .entry-content .closing.right--3 {
    margin-right: -120px
  }
}

@media (min-width: 1160px) {
  .single-story .entry-content .closing.right--4 {
    margin-right: -160px
  }
}

@media (min-width: 1240px) {
  .single-story .entry-content .closing.right--5 {
    margin-right: -200px
  }
}

@media (min-width: 1320px) {
  .single-story .entry-content .closing.right--6 {
    margin-right: -240px
  }
}

.archive.newsletters .newsletter-themes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -10px;
  padding: 0
}

.archive.newsletters .newsletter-themes>li {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 18px;
  font-weight: bold;
  padding: 10px;
  text-indent: 0;
  width: 100%
}

@media (min-width: 640px) {
  .archive.newsletters .newsletter-themes>li {
    width: 50%
  }
}

@media (min-width: 968px) {
  .archive.newsletters .newsletter-themes>li {
    width: 33.33333%
  }
}

.archive.newsletters .newsletter-themes>li+li {
  margin-top: 0
}

.archive.newsletters .newsletter-themes>li::before {
  content: none
}

.archive.newsletters .newsletter-themes>li a {
  border: 1px solid #e6e9ed;
  -webkit-box-shadow: 0 2px 0 #f5f7fa;
  box-shadow: 0 2px 0 #f5f7fa;
  color: #333;
  display: block;
  padding: 1em 1.5em;
  padding-bottom: 4em;
  position: relative
}

.archive.newsletters .newsletter-themes>li a::after {
  background: repeating-linear-gradient(#fff 0, #fff 6px, #f5f7fa 6px, #f5f7fa 12px, #fff 12px, #fff 18px);
  bottom: 1em;
  content: "";
  display: block;
  left: 1.5em;
  position: absolute;
  right: 1.5em;
  top: 3em;
  z-index: -1
}

.archive.newsletters .newsletter-themes>li a:hover {
  color: #06b;
  border-color: #06b;
  text-decoration: none
}

@media (min-width: 1200px) {
  .post-type-archive-newsletter .categories-outer .categories {
    display: none
  }
}

.post-type-archive-newsletter .categories-outer .categories button {
  -webkit-font-smoothing: auto;
  -moz-osx-font-smoothing: auto;
  background: none;
  color: #06b;
  font-weight: normal;
  padding: 0
}

.post-type-archive-newsletter .sidebar .filter-practices>ul {
  padding-left: 0
}

.post-type-archive-newsletter .sidebar .filter-practices>ul>li {
  font-weight: bold;
  text-indent: 0
}

.post-type-archive-newsletter .sidebar .filter-practices>ul>li::before {
  content: none
}

.post-type-archive-newsletter .sidebar .filter-practices>ul>li ul {
  font-weight: normal
}

.post-type-archive-newsletter .sidebar .widget .current>a {
  color: #333
}

.post-type-archive-newsletter .newsletter-list {
  padding: 0
}

.post-type-archive-newsletter .newsletter-list a {
  color: #06b
}

.post-type-archive-newsletter .newsletter-list a:hover {
  text-decoration: underline
}

.post-type-archive-newsletter .newsletter-list .date-subtitle {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #aab2bd
}

.post-type-archive-newsletter .newsletter-list h2 {
  font-weight: bold
}

.post-type-archive-newsletter .newsletter-list .entry-content {
  margin: 2em 0
}

.post-type-archive-newsletter .newsletter-list .post-fields {
  -webkit-font-smoothing: auto;
  -moz-osx-font-smoothing: auto;
  color: #333
}

.post-type-archive-newsletter .newsletter-list .pdf {
  margin-top: 0.75em
}

.post-type-archive-newsletter .newsletter-list .pdf-button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  border: 0;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  font-size: 16px;
  min-width: 200px;
  padding: 9px 1em;
  display: block;
  width: 100%;
  display: block;
  font-weight: bold;
  min-width: auto;
  max-width: 200px;
  text-align: center
}

.post-type-archive-newsletter .newsletter-list .pdf-button:hover {
  background-position: -100%
}

.post-type-archive-newsletter .newsletter-list .pdf-button::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  margin-right: 0.25em
}

.post-type-archive-newsletter .newsletter-list .pdf-button::after {
  content: none
}

.post-type-archive-newsletter .newsletter-list .pdf-button:hover {
  text-decoration: none
}

.archive.post-type-archive-magazine .magazine-list {
  margin-top: 24px
}

@media (min-width: 640px) {
  .archive.post-type-archive-magazine .magazine-list {
    margin-top: calc(19.512vw - 100.878px)
  }
}

@media (min-width: 968px) {
  .archive.post-type-archive-magazine .magazine-list {
    margin-top: 88px
  }
}

.archive.post-type-archive-magazine .magazine-list>li {
  border-bottom: 1px solid #e6e9ed;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-bottom: 0;
  padding: 48px 0;
  width: 100%
}

.archive.post-type-archive-magazine .magazine-list>li:last-child {
  border-bottom: 0;
  padding-bottom: 0
}

@media (min-width: 768px) {
  .archive.post-type-archive-magazine .magazine-list>li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

.archive.post-type-archive-magazine .magazine-list>li .date-subtitle {
  color: #aab2bd;
  font-size: 16px;
  line-height: 1.5
}

.archive.post-type-archive-magazine .magazine-list>li .article-list {
  margin-top: 16px
}

.archive.post-type-archive-magazine .magazine-list>li .article {
  margin-bottom: 16px
}

.archive.post-type-archive-magazine .magazine-list>li .article:last-child {
  margin-bottom: 0
}

@media (min-width: 768px) {
  .archive.post-type-archive-magazine .magazine-list>li .article-title {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

.archive.post-type-archive-magazine .magazine-list>li .article-title .text {
  font-size: 16px;
  font-weight: bold;
  line-height: 2
}

.archive.post-type-archive-magazine .magazine-list>li .article-title .featured {
  background: #da4453;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  height: 26px;
  letter-spacing: 0.2em;
  line-height: 26px;
  min-width: 64px;
  padding: 6px 0.98em 6px 1.18em;
  vertical-align: center
}

.archive.post-type-archive-magazine .magazine-list>li .article-title .featured+.text {
  font-size: 18px
}

@media (min-width: 768px) {
  .archive.post-type-archive-magazine .magazine-list>li .article-title .featured {
    margin-right: 16px;
    padding: 0 0.98em 0 1.18em
  }
}

.archive.post-type-archive-magazine .magazine-list>li .post-professionals a {
  color: #06b
}

.archive.post-type-archive-magazine .magazine-list>li .post-professionals a:hover {
  text-decoration: underline
}

.archive.post-type-archive-magazine .magazine-list>li .media {
  max-width: 200px;
  margin-bottom: 16px
}

@media (min-width: 768px) {
  .archive.post-type-archive-magazine .magazine-list>li .media {
    margin-right: 50px
  }
}

.archive.post-type-archive-magazine .magazine-list>li .media .cover {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-bottom: 16px;
  padding: 0.375em 0
}

@media (min-width: 768px) {
  .archive.post-type-archive-magazine .magazine-list>li .media .cover {
    margin-bottom: 24px
  }
}

.archive.post-type-archive-magazine .magazine-list>li .media .cover img {
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  padding: 0;
  width: 100%
}

.archive.post-type-archive-magazine .magazine-list>li .media .pdf-button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  border: 0;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  font-size: 16px;
  min-width: 200px;
  padding: 9px 1em;
  display: block;
  width: 100%;
  width: 100%
}

.archive.post-type-archive-magazine .magazine-list>li .media .pdf-button:hover {
  background-position: -100%
}

.archive.post-type-archive-magazine .magazine-list>li .media .pdf-button::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  margin-right: 0.25em
}

.page-template-recruit-info .before-anchor-container {
  position: relative;
  z-index: 2
}

.page-template-recruit-info .anchor-container::before {
  content: "";
  display: block;
  height: 1px;
  margin-bottom: -1px
}

@media (max-width: 1319px) {
  .page-template-recruit-info .anchor-container .anchor-index {
    background: #f5f7fa;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 80px
  }

  .page-template-recruit-info .anchor-container .anchor-index>li {
    padding-left: 0;
    text-indent: 0
  }
}

@media (max-width: 1199px) {
  .page-template-recruit-info .anchor-container .anchor-index {
    margin-top: 60px
  }
}

@media (max-width: 1319px) {
  .page-template-recruit-info .anchor-container .anchor-index+h1 {
    margin-top: calc(3em + 120px)
  }
}

@media (max-width: 1199px) {
  .page-template-recruit-info .anchor-container .anchor-index+h1 {
    margin-top: calc(3em + 100px)
  }
}

.recruit-information-section::before {
  display: block;
  height: 76px;
  margin: 0;
  margin-top: -76px;
  visibility: hidden
}

@media (min-width: 1320px) {
  .recruit-information-section::before {
    content: ""
  }
}

.recruit-information-section::before {
  content: ""
}

.page-template-recruit-story .entry-content>h1:first-of-type {
  position: relative
}

@media (min-width: 768px) {
  .page-template-recruit-story .entry-content>h1:first-of-type {
    float: left
  }
}

.page-template-recruit-story .entry-content>h1:first-of-type::before {
  font-size: 80px;
  color: #f5f7fa;
  content: attr(data-name);
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 900;
  line-height: 0.9;
  left: 0.4em;
  position: absolute;
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  top: -0.25em;
  white-space: pre;
  z-index: -1
}

@media (min-width: 320px) {
  .page-template-recruit-story .entry-content>h1:first-of-type::before {
    font-size: calc(12.5vw + 40px)
  }
}

@media (min-width: 640px) {
  .page-template-recruit-story .entry-content>h1:first-of-type::before {
    font-size: 120px
  }
}

@media (min-width: 840px) {
  .page-template-recruit-story .entry-content>h1:first-of-type::before {
    left: calc(0.4em - (50vw - 420px))
  }
}

@media (min-width: 1000px) {
  .page-template-recruit-story .entry-content>h1:first-of-type::before {
    left: -32px
  }
}

@media (min-width: 1200px) {
  .page-template-recruit-story .entry-content>h1:first-of-type::before {
    left: 12px
  }
}

@media (min-width: 1240px) {
  .page-template-recruit-story .entry-content>h1:first-of-type::before {
    left: calc(1252px - 100vw)
  }
}

@media (min-width: 1320px) {
  .page-template-recruit-story .entry-content>h1:first-of-type::before {
    left: -68px
  }
}

.page-template-recruit-story .entry-content>h1:first-of-type br {
  display: none
}

@media (min-width: 400px) {
  .page-template-recruit-story .entry-content>h1:first-of-type br {
    display: block
  }
}

.page-template-recruit-story .entry-content>h1:first-of-type+.associate-avatar {
  text-align: center
}

@media (min-width: 768px) {
  .page-template-recruit-story .entry-content>h1:first-of-type+.associate-avatar {
    float: right;
    margin-top: 110px
  }
}

.page-template-recruit-story .entry-content>h1:first-of-type+.associate-avatar img {
  border-radius: 120px;
  overflow: hidden;
  padding: 0;
  width: 240px
}

.page-template-recruit-story .entry-content>h1:first-of-type+.associate-avatar+.associate-meta {
  font-weight: bold;
  text-align: center
}

@media (min-width: 768px) {
  .page-template-recruit-story .entry-content>h1:first-of-type+.associate-avatar+.associate-meta {
    clear: left;
    text-align: left
  }
}

.page-template-recruit-story .entry-content>h1:first-of-type+.associate-avatar+.associate-meta em {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #aab2bd;
  font-size: 14px;
  font-weight: normal
}

.interviewee {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.interviewee img {
  border-radius: 40px;
  overflow: hidden;
  width: 80px
}

.entry-content .interviewee img {
  padding: 0
}

.interviewee figcaption {
  color: #333;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
  margin-left: 20px
}

.home .hero-container .overlay {
  position: relative
}

.home .hero-container .overlay::before {
  background: rgba(0, 51, 94, 0.25);
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2
}

.home .hero-container .hero {
  background: url(../images/hero.jpg) no-repeat;
  background-size: cover;
  vertical-align: top
}

.home .introduction {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-family: "Lato", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.home .introduction:lang(zh-CN) {
  font-family: "Lato", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

.home .introduction input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  color: #333;
  background: rgba(255, 255, 255, 0.9);
  padding: 10px
}

.home .introduction .copy {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both;
  animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both;
  bottom: 50%;
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  padding: 0 1em;
  position: absolute;
  -webkit-transform: translateX(-30px);
  transform: translateX(-30px);
  white-space: nowrap;
  z-index: 9
}

@media screen and (min-width: 320px) {
  .home .introduction .copy {
    font-size: calc(5.541vw + 4.27px)
  }
}

@media screen and (min-width: 1800px) {
  .home .introduction .copy {
    font-size: 104px
  }
}

[lang="ja"] .home .introduction .copy {
  font-size: 24px
}

@media (min-width: 320px) {
  [lang="ja"] .home .introduction .copy {
    font-size: calc(6.25vw + 4px)
  }
}

@media (min-width: 1600px) {
  [lang="ja"] .home .introduction .copy {
    font-size: 104px
  }
}

.home .introduction .searchform {
  margin-top: 10px;
  -webkit-animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.25s forwards;
  animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.25s forwards;
  opacity: 0;
  padding: 0 24px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateX(-30px);
  transform: translateX(-30px);
  width: 100%;
  z-index: 5
}

@media (min-width: 320px) {
  .home .introduction .searchform {
    margin-top: calc(3.125vw + 0px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform {
    margin-top: 40px
  }
}

@media (min-width: 320px) {
  .home .introduction .searchform {
    padding: 0 calc(6.25vw + 4px)
  }
}

@media (min-width: 1600px) {
  .home .introduction .searchform {
    padding: 0 104px
  }
}

.home .introduction .searchform .search {
  width: 200px;
  padding: 5px;
  padding-right: 40px
}

@media (min-width: 320px) {
  .home .introduction .searchform .search {
    width: calc(25vw + 120px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform .search {
    width: 440px
  }
}

@media (min-width: 320px) {
  .home .introduction .searchform .search {
    padding: calc(1.5625vw + 0px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform .search {
    padding: 20px
  }
}

@media (min-width: 320px) {
  .home .introduction .searchform .search {
    padding-right: calc(3.125vw + 30px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform .search {
    padding-right: 70px
  }
}

.home .introduction .searchform .submit {
  margin-left: -30px
}

@media (min-width: 320px) {
  .home .introduction .searchform .submit {
    margin-left: calc(-3.125vw + -20px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform .submit {
    margin-left: -60px
  }
}

.home .introduction .searchform .submit::before {
  font-size: 18px;
  width: 30px;
  display: block
}

@media (min-width: 320px) {
  .home .introduction .searchform .submit::before {
    font-size: calc(1.25vw + 14px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform .submit::before {
    font-size: 30px
  }
}

@media (min-width: 320px) {
  .home .introduction .searchform .submit::before {
    width: calc(3.125vw + 20px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform .submit::before {
    width: 60px
  }
}

.home .introduction .searchform .search-results {
  width: 200px;
  position: relative;
  z-index: 99
}

@media (min-width: 320px) {
  .home .introduction .searchform .search-results {
    width: calc(25vw + 120px)
  }
}

@media (min-width: 1280px) {
  .home .introduction .searchform .search-results {
    width: 440px
  }
}

.home .introduction .scrolldown {
  -ms-flex-item-align: center;
  align-self: center;
  display: block;
  font-size: 0;
  margin: 0 auto auto;
  text-align: center
}

.home .introduction .scrolldown::before {
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  content: "";
  display: block;
  height: 20px;
  -webkit-transform: rotate(45deg) translateX(-25%) translateY(-25%);
  transform: rotate(45deg) translateX(-25%) translateY(-25%);
  width: 20px
}

@media (min-width: 480px) {
  .home .introduction .scrolldown::before {
    height: 30px;
    width: 30px
  }
}

.home .featured-practices {
  color: #fff;
  display: none;
  margin-top: 10%;
  padding: 0 6.25%
}

@media (min-width: 980px) {
  .home .featured-practices {
    display: block;
    margin-top: 0;
    padding: 0;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 20
  }
}

.home .featured-practices>li {
  display: none;
  margin: auto;
  width: 210px
}

.home .featured-practices>li:nth-child(1) {
  -webkit-animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.5s both;
  animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.5s both
}

.home .featured-practices>li:nth-child(2) {
  -webkit-animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.6s both;
  animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.6s both
}

.home .featured-practices>li:nth-child(3) {
  -webkit-animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.7s both;
  animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.7s both
}

.home .featured-practices>li:nth-child(4) {
  -webkit-animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.8s both;
  animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.8s both
}

.home .featured-practices>li:nth-child(5) {
  -webkit-animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.9s both;
  animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 1.9s both
}

.home .featured-practices>li:nth-child(6) {
  -webkit-animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 2s both;
  animation: moveInRtL 0.5s cubic-bezier(0.23, 1, 0.32, 1) 2s both
}

@media (min-width: 980px) {
  .home .featured-practices>li {
    display: block
  }
}

@media (min-width: 1200px) {
  .home .featured-practices>li {
    width: 240px
  }
}

.home .featured-practices>li.more {
  display: block
}

[lang="ja"] .home .featured-practices>li.more a::after {
  content: "一覧"
}

@media (min-width: 980px) {
  [lang="ja"] .home .featured-practices>li.more a::after {
    content: "をもっと見る"
  }
}

@media (min-width: 980px) {
  .home .featured-practices>li+li {
    margin-top: 10px
  }
}

.home .featured-practices>li:last-child a {
  letter-spacing: 0
}

.home .featured-practices a {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #06b;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  display: block;
  font-weight: bold;
  padding: 5px 10px;
  text-align: center;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)
}

@media (min-width: 640px) {
  .home .featured-practices a {
    padding-top: 10px;
    padding-bottom: 10px
  }
}

@media (min-width: 768px) {
  .home .featured-practices a {
    padding-top: 14px;
    padding-bottom: 14px
  }
}

.home .featured-practices a:hover {
  background-position: 100%
}

.home .below-the-fold {
  background: #fff
}

@media (min-width: 800px) {
  .home .below-the-fold {
    padding-top: 20px
  }
}

.home .below-the-fold .offices a:not(.disabled) figure,
.home .below-the-fold .special a:not(.disabled) figure,
.home .below-the-fold .about a:not(.disabled) figure {
  overflow: hidden
}

.home .below-the-fold .offices a:not(.disabled) figure img,
.home .below-the-fold .special a:not(.disabled) figure img,
.home .below-the-fold .about a:not(.disabled) figure img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.home .below-the-fold .offices a:not(.disabled):hover figure img,
.home .below-the-fold .special a:not(.disabled):hover figure img,
.home .below-the-fold .about a:not(.disabled):hover figure img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.home .below-the-fold .recruit a {
  overflow: hidden
}

.home .below-the-fold .recruit a img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.home .below-the-fold .recruit a:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.home .important-news-outer {
  margin: auto;
  margin-top: 12.5%;
  max-width: 1024px;
  padding: 0 6.25%
}

@media (min-width: 800px) {
  .home .important-news-outer {
    margin-top: 80px
  }
}

.home .important-news {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #da4453;
  color: #fff;
  font-size: 14px;
  padding: 8px 16px
}

@media (min-width: 768px) {
  .home .important-news {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

.home .important-news a:hover {
  text-decoration: underline
}

.home .important-news h1 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  font-weight: bold;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding-bottom: 0.25em;
  margin-bottom: 0.5em
}

@media (min-width: 768px) {
  .home .important-news h1 {
    border: 0;
    margin: 0;
    margin-right: 1em;
    padding: 0;
    padding-right: 1em;
    position: relative
  }

  .home .important-news h1::after {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    bottom: 5px;
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 5px
  }
}

.home .important-news li+li {
  margin-top: 0.25em
}

.home .important-news li .date,
.home .important-news li .title {
  display: inline
}

.home .important-news li .date {
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500
}

.home .important-news li .date:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

.home .important-news li .date::after {
  content: "　";
  margin: 0 -0.25em
}

.home .important-news li .title {
  font-weight: bold
}

.home .section {
  margin-top: 20%;
  position: relative
}

@media (min-width: 800px) {
  .home .section {
    margin-top: 160px
  }
}

.home .section>* {
  position: relative
}

.home .section .section-title {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 1;
  margin: auto;
  margin-bottom: 8vw;
  padding: 0 6.25%
}

.home .section .section-title:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 320px) {
  .home .section .section-title {
    font-size: 15vw
  }
}

@media (min-width: 800px) {
  .home .section .section-title {
    font-size: 120px
  }
}

@media (min-width: 1440px) {
  .home .section .section-title {
    margin-bottom: 115px;
    padding: 0 calc(31.25vw - 360px)
  }
}

.home .section .section-title em {
  margin-right: 20px
}

.home .section .section-title small {
  font-size: 16px;
  padding-top: 3vw;
  padding-bottom: calc(6.042vw - 8.333px)
}

@media (min-width: 320px) {
  .home .section .section-title small {
    font-size: calc(0.833vw + 13.333px)
  }
}

@media (min-width: 800px) {
  .home .section .section-title small {
    font-size: 20px;
    padding-top: 24px;
    padding-bottom: 40px
  }
}

.home .information-center .section-title {
  display: block;
  text-align: center
}

@media (min-width: 480px) {
  .home .information-center .section-title {
    font-size: 72px
  }
}

@media (min-width: 500px) {
  .home .information-center .section-title {
    margin-bottom: 40px
  }
}

.home .information-center .section-title::after {
  padding-top: 0px;
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  margin: calc(-3.125vw + 25px) auto 0;
  max-width: 40px;
  width: 9.375vw
}

@media (min-width: 320px) {
  .home .information-center .section-title::after {
    padding-top: calc(6.25vw + -20px)
  }
}

@media (min-width: 800px) {
  .home .information-center .section-title::after {
    padding-top: 30px
  }
}

@media (min-width: 800px) {
  .home .information-center .section-title::after {
    margin-top: 0
  }
}

[lang="ja"] .home .information-center .section-title::after {
  padding-top: 0
}

.home .information-center .section-title em {
  display: block;
  margin-right: 0
}

.home .information-center .section-title small {
  display: block;
  font-size: 16px
}

@media (min-width: 400px) {
  .home .information-center .section-title small {
    padding-top: 12px
  }
}

.home .section h2 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.75;
  padding: 1em 0 0.375em
}

.home .section p {
  font-size: 14px
}

.home .section.offices {
  margin-top: 15%
}

@media (min-width: 800px) {
  .home .section.offices {
    margin-top: 120px
  }
}

.home .section.offices::before {
  background: #f5f7fa;
  bottom: 300px;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: calc(12.5% + 20px);
  top: 8.5vw
}

@media (min-width: 800px) {
  .home .section.offices::before {
    top: 68px
  }
}

@media (min-width: 1760px) {
  .home .section.offices::before {
    right: 240px
  }
}

.home .section.offices ul {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: auto;
  max-width: 1500px;
  padding: 0 6.25%
}

@media (min-width: 980px) {
  .home .section.offices ul {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    padding: 0
  }
}

.home .section.offices ul>li {
  max-width: 300px;
  min-width: 280px
}

.home .section.offices ul>li+li {
  margin-top: 50px
}

@media (min-width: 980px) {
  .home .section.offices ul>li+li {
    margin-top: 0
  }
}

.home .section.offices ul>li figure {
  max-width: 50vw
}

.home .section.special {
  counter-reset: special
}

.home .section.special::before {
  background: #f5f7fa;
  bottom: 100px;
  content: "";
  display: block;
  left: calc(12.5% + 20px);
  position: absolute;
  right: 0;
  top: 23.5vw
}

@media (min-width: 800px) {
  .home .section.special::before {
    top: 188px
  }
}

@media (min-width: 1200px) {
  .home .section.special::before {
    top: 68px
  }
}

@media (min-width: 1200px) {
  .home .section.special::before {
    bottom: 20%
  }
}

@media (min-width: 1440px) {
  .home .section.special::before {
    left: 200px
  }
}

@media (min-width: 1920px) {
  .home .section.special::before {
    left: calc(50% - 760px)
  }
}

.home .section.special .section-title {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse nowrap;
  flex-flow: row-reverse nowrap;
  text-align: right
}

.home .section.special .section-title em {
  margin-left: 20px;
  margin-right: 0
}

.home .section.special .section-title small {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%
}

@media (min-width: 1200px) {
  .home .section.special .section-title small {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
  }
}

.home .section.special .movie-en {
  max-width: 1920px;
  margin: 0 auto;
  padding: 0 6.25%;
}

@media (min-width: 1024px) {
  .home .section.special .movie-en {
    display: flex;
  }
}

.home .section.special .movie-en__inner {
  position: relative;
  z-index: 1;
}


@media (min-width: 1024px) {
  .home .section.special .movie-en__inner {
    width: 70%;
  }
}

.home .section.special .movie-en__inner iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
}

.home .section.special .caption-en {
  position: relative;
}

@media (min-width: 1024px) {
  .home .section.special .caption-en {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding-left: 40px;
    padding-top: 60px;
    width: 30%;
  }
}

.home .section.special .caption-en::before {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  border-right: 2px solid #06b;
  bottom: 0;
  content: '';
  justify-content: flex-end;
  left: 0;
  line-height: 1;
  padding-right: 10px;
  position: absolute;
  top: -40px;
  width: 40px;
  display: none;
}

@media (min-width: 1024px) {
  .home .section.special .caption-en::before {
    border-right: 0;
    border-bottom: 2px solid #06b;
    bottom: auto;
    display: block;
    font-size: 36px;
    height: 60px;
    left: -60px;
    padding-right: 0;
    right: 0;
    text-align: right;
    top: 0;
    width: auto;
    display: flex;
  }
}

.home .section.special ul {
  max-width: 1920px;
  margin: auto;
  padding: 0 6.25%
}

@media (min-width: 1200px) {
  .home .section.special ul {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    padding: 0
  }
}

.home .section.special ul>li {
  margin: auto
}

@media (min-width: 768px) {
  .home .section.special ul>li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

@media (min-width: 1200px) {
  .home .section.special ul>li {
    margin: 0
  }
}

.home .section.special ul>li+li {
  margin-top: 50px
}

@media (min-width: 320px) {
  .home .section.special ul>li+li {
    margin-top: calc(5.68182vw + 31.81818px)
  }
}

@media (min-width: 1200px) {
  .home .section.special ul>li+li {
    margin-top: 100px
  }
}

@media (min-width: 1200px) {
  .home .section.special ul>li+li {
    margin: 0
  }
}

@media (min-width: 768px) {
  .home .section.special ul>li>a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}

@media (min-width: 768px) {
  .home .section.special ul>li figure {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    max-width: 60%
  }
}

.home .section.special ul>li .caption {
  padding-left: 55px;
  position: relative
}

@media (min-width: 768px) {
  .home .section.special ul>li .caption {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding-left: 40px;
    padding-top: 60px
  }
}

.home .section.special ul>li .caption::before {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  border-right: 2px solid #06b;
  bottom: 0;
  color: #06b;
  counter-increment: special 1;
  content: counter(special);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 30px;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  left: 0;
  line-height: 1;
  padding-right: 10px;
  position: absolute;
  top: -40px;
  width: 40px
}

[lang="zh-CN"] .home .section.special ul>li .caption::before {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 768px) {
  .home .section.special ul>li .caption::before {
    border-right: 0;
    border-bottom: 2px solid #06b;
    bottom: auto;
    content: "0" counter(special);
    display: block;
    font-size: 36px;
    height: 60px;
    left: -60px;
    padding-right: 0;
    right: 0;
    text-align: right;
    top: 0;
    width: auto
  }
}

@media (min-width: 768px) {
  .home .section.special ul>li .caption h2 {
    margin-top: 10px
  }
}

.home .section.special ul>li .caption .commingsoon {
  color: #da4453;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500
}

.home .section.special ul>li .caption .commingsoon:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 768px) {
  .home .section.special ul>li:nth-of-type(9)~li .caption::before {
    content: counter(special)
  }
}

@media (min-width: 1200px) {
  .home .section.special ul .story {
    -ms-flex-item-align: start;
    align-self: flex-start;
    max-width: 50%;
    margin-bottom: 5%;
    padding-right: 6.25%
  }

  :lang(en-US) .home .section.special ul .story {
    margin-bottom: 0
  }
}

@media (min-width: 1600px) {
  .home .section.special ul .story {
    padding-right: 100px
  }
}

@media (min-width: 1200px) {
  .home .section.special ul .story figure {
    max-width: 70%
  }
}

@media (min-width: 1200px) {
  .home .section.special ul .discussion {
    -ms-flex-item-align: start;
    align-self: flex-start;
    max-width: 50%;
    margin-bottom: 5%;
    padding-right: 6.25%
  }
}

@media (min-width: 1600px) {
  .home .section.special ul .discussion {
    padding-right: 100px
  }
}

@media (min-width: 1200px) {
  .home .section.special ul .discussion figure {
    max-width: 70%
  }
}

@media (min-width: 768px) {
  .home .section.special ul :nth-child(2)>a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
  }
}

@media (min-width: 1200px) {
  .home .section.special ul :nth-child(2)>a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
  }
}

@media (min-width: 768px) {
  .home .section.special ul :nth-child(2) .caption {
    padding-left: 0;
    padding-right: 40px;
    padding-top: 60px
  }
}

@media (min-width: 1200px) {
  .home .section.special ul :nth-child(2) .caption {
    padding-left: 40px;
    padding-right: 0
  }
}

@media (min-width: 768px) {
  .home .section.special ul :nth-child(2) .caption::before {
    height: 60px;
    left: 0;
    right: -60px;
    text-align: left
  }
}

@media (min-width: 1200px) {
  .home .section.special ul :nth-child(2) .caption::before {
    left: -60px;
    right: 0;
    text-align: right
  }
}

@media (min-width: 1200px) {
  .home .section.special ul .movie {
    max-width: 50%
  }

  :lang(en-US) .home .section.special ul .movie {
    padding-right: 6.25%
  }
}

@media (min-width: 1200px) {
  :lang(ja) .home .section.special ul .movie>a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
  }
}

.home .section.special ul .movie figure {
  position: relative
}

@media (min-width: 1200px) {
  .home .section.special ul .movie figure {
    max-width: 640px;
    width: 66.67%
  }
}

.home .section.special ul .movie figure::before {
  height: 70px;
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 70px;
  z-index: 5
}

@media (min-width: 1200px) {
  .home .section.special ul .movie .caption {
    max-width: 640px;
    padding-top: 60px
  }

  :lang(ja) .home .section.special ul .movie .caption {
    padding-left: 0;
    padding-right: 40px
  }
}

@media (min-width: 1200px) {
  :lang(ja) .home .section.special ul .movie .caption::before {
    left: 0;
    right: -60px;
    text-align: left
  }
}

@media (min-width: 1200px) {
  .home .section.special ul .magazine {
    max-width: 35%
  }
}

.home .section.special ul .magazine>a {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media (min-width: 768px) {
  .home .section.special ul .magazine>a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
  }
}

.home .section.special ul .magazine figure {
  border: 1px solid #e6e9ed;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  max-width: 350px;
  width: 40%
}

@media (min-width: 1200px) {
  .home .section.special ul .magazine figure {
    width: 50%
  }
}

.home .section.special ul .magazine .caption {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-right: 0;
  padding-left: 10px;
  padding-top: 40px
}

@media (min-width: 375px) {
  .home .section.special ul .magazine .caption {
    padding-left: 20px
  }
}

@media (min-width: 768px) {
  .home .section.special ul .magazine .caption {
    padding-left: 0;
    padding-right: 40px;
    padding-top: 60px
  }
}

.home .section.special ul .magazine .caption::before {
  border-right: 0;
  border-bottom: 2px solid #06b;
  bottom: auto;
  display: block;
  height: 40px;
  left: -40px;
  right: 0;
  text-align: right;
  top: 0;
  width: auto
}

@media (min-width: 768px) {
  .home .section.special ul .magazine .caption::before {
    height: 60px;
    left: 0;
    right: -60px;
    text-align: left
  }
}

@media (min-width: 480px) {
  .home .section.special ul .magazine .caption p {
    display: block
  }
}

.home .section.about::before {
  background: #f5f7fa;
  bottom: 250px;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: calc(6.944% + 37.778px);
  top: 8.5vw
}

@media (min-width: 800px) {
  .home .section.about::before {
    top: 68px
  }
}

@media (min-width: 1760px) {
  .home .section.about::before {
    right: calc(50% - 720px)
  }
}

.home .section.about ul {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: auto;
  max-width: 1920px;
  padding: 0 6.25%
}

@media (min-width: 640px) {
  .home .section.about ul {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding-right: 0
  }
}

.home .section.about ul>li {
  max-width: 420px
}

@media (min-width: 640px) {
  .home .section.about ul>li {
    width: 50%
  }
}

@media (min-width: 1200px) {
  .home .section.about ul>li {
    width: 25%
  }
}

.home .section.about ul>li+li {
  margin-top: 50px
}

@media (min-width: 1200px) {
  .home .section.about ul>li+li {
    margin-top: 0
  }
}

@media (min-width: 640px) {

  .home .section.about ul>li h2,
  .home .section.about ul>li p {
    padding-right: 10%
  }
}

@media (min-width: 640px) {
  .home .section.about ul>li:nth-child(2) {
    margin-top: 0
  }
}

.home .section.recruit::before {
  background: #f5f7fa;
  bottom: 11.71875vw;
  content: "";
  display: block;
  left: 6.25%;
  position: absolute;
  right: 0;
  top: 8.5vw
}

@media (min-width: 800px) {
  .home .section.recruit::before {
    top: 68px
  }
}

@media (min-width: 1536px) {
  .home .section.recruit::before {
    bottom: 180px;
    left: auto;
    width: 1440px
  }
}

@media (min-width: 1680px) {
  .home .section.recruit::before {
    left: 240px;
    width: auto
  }
}

@media (min-width: 1920px) {
  .home .section.recruit::before {
    left: calc(50% - 720px)
  }
}

.home .section.recruit .section-title {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse nowrap;
  flex-flow: row-reverse nowrap;
  text-align: right
}

.home .section.recruit .section-title em {
  margin-left: 20px;
  margin-right: 0
}

.home .section.recruit .section-title small {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%
}

@media (min-width: 1200px) {
  .home .section.recruit .section-title small {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
  }
}

.home .section.recruit figure {
  margin: auto;
  max-width: 1920px;
  padding-right: 6.25%;
  position: relative
}

.home .section.recruit a {
  display: inline-block;
  overflow: hidden;
  position: relative
}

.home .section.recruit h2 {
  font-size: 14px;
  left: 20px;
  color: #fff;
  line-height: 1.5;
  padding: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

@media (min-width: 320px) {
  .home .section.recruit h2 {
    font-size: calc(1.48026vw + 9.26316px)
  }
}

@media (min-width: 1536px) {
  .home .section.recruit h2 {
    font-size: 32px
  }
}

@media (min-width: 320px) {
  .home .section.recruit h2 {
    left: calc(8.22368vw + -6.31579px)
  }
}

@media (min-width: 1536px) {
  .home .section.recruit h2 {
    left: 120px
  }
}

.home .information-center {
  padding: 0 6.25%;
  margin: 20% auto 0;
  max-width: 1440px
}

@media (min-width: 800px) {
  .home .information-center {
    margin-top: 160px
  }
}

@media (min-width: 1200px) {
  .home .information-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}

@media (min-width: 1440px) {
  .home .information-center {
    padding: 0 90px
  }
}

.home .information-center .section {
  margin-top: 60px;
  text-align: center
}

.home .information-center .section::before {
  background: #f5f7fa;
  bottom: 30px;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 8.5vw
}

@media (min-width: 480px) {
  .home .information-center .section::before {
    top: 39px
  }
}

.home .information-center .section:first-child {
  margin-top: 0
}

.home .information-center .section .section-title {
  padding: 0
}

.home .information-center .section .post-list {
  text-align: left;
  padding: 0 6.25vw 12.5vw
}

@media (min-width: 400px) {
  .home .information-center .section .post-list {
    padding-bottom: 50px
  }
}

@media (min-width: 960px) {
  .home .information-center .section .post-list {
    padding: 0 60px 50px
  }
}

.home .information-center .section .post-list>li {
  font-size: 14px
}

.home .information-center .section .post-list>li h2 {
  font-size: inherit;
  padding: 0
}

.home .information-center .section .post-list>li .post-label {
  font-size: 12px;
  line-height: 18px;
  min-width: 100px
}

.home .information-center .section .post-list>li .post-cover {
  max-width: 100px
}

@media (min-width: 640px) {

  .home .information-center .section.news .post-list>li,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }

  .home .information-center .section.news .post-list>li>*,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button)>* {
    width: auto
  }

  .home .information-center .section.news .post-list>li .post-date,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) .post-date {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100px
  }

  .home .information-center .section.news .post-list>li .post-label,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) .post-label {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 20px
  }

  .home .information-center .section.news .post-list>li .post-title,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) .post-title {
    width: calc(100% - 240px)
  }

  .home .information-center .section.news .post-list>li .post-fields,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) .post-fields {
    padding-left: 240px;
    width: 100%
  }
}

@media (min-width: 1200px) {

  .home .information-center .section.news .post-list>li,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) {
    display: block
  }

  .home .information-center .section.news .post-list>li .post-date,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) .post-date {
    width: auto
  }

  .home .information-center .section.news .post-list>li .post-label,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) .post-label {
    margin: 0
  }

  .home .information-center .section.news .post-list>li .post-title,
  .home .information-center .section.news .post-list>li>a:not(.button):not(.wp-block-file__button) .post-title {
    width: auto
  }
}

@media (min-width: 1200px) {

  .home .information-center .section.news,
  .home .information-center .section.newsletters {
    width: 100%
  }

  .home .information-center .section.news .post-list,
  .home .information-center .section.newsletters .post-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 20px;
    padding-right: 20px
  }

  .home .information-center .section.news .post-list>li,
  .home .information-center .section.newsletters .post-list>li {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    border: 0;
    margin-bottom: 0;
    padding: 0 40px !important;
    width: 33.33333%
  }

  .home .information-center .section.news .post-list>li+li,
  .home .information-center .section.newsletters .post-list>li+li {
    border-left: 1px solid #e6e9ed
  }

  .home .information-center .section.seminars,
  .home .information-center .section.publications {
    position: relative;
    width: calc(50% - 60px)
  }

  .home .information-center .section.seminars::after,
  .home .information-center .section.publications::after {
    background: #f5f7fa;
    bottom: 105px;
    -webkit-box-shadow: 0 0 35px 15px #f5f7fa;
    box-shadow: 0 0 35px 15px #f5f7fa;
    content: "";
    display: block;
    position: absolute;
    left: 60px;
    right: 60px;
    height: 5px
  }

  .home .information-center .section.seminars .post-list,
  .home .information-center .section.publications .post-list {
    height: 360px;
    margin-bottom: 50px;
    margin-right: 20px;
    padding-bottom: 0;
    padding-right: 40px;
    overflow-y: scroll
  }

  .home .information-center .section.seminars .post-list>li:last-child,
  .home .information-center .section.publications .post-list>li:last-child {
    margin-bottom: 25px
  }
}

@media (min-width: 960px) {

  .home .information-center .section.seminars .post-list>li,
  .home .information-center .section.publications .post-list>li {
    width: calc(50% - 20px)
  }

  .home .information-center .section.seminars .post-list>li:nth-last-child(2):nth-child(odd),
  .home .information-center .section.publications .post-list>li:nth-last-child(2):nth-child(odd) {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0
  }
}

@media (min-width: 1200px) {

  .home .information-center .section.seminars .post-list>li,
  .home .information-center .section.publications .post-list>li {
    width: 100%
  }

  .home .information-center .section.seminars .post-list>li:nth-last-child(2):nth-child(odd),
  .home .information-center .section.publications .post-list>li:nth-last-child(2):nth-child(odd) {
    border-bottom: 1px solid #e6e9ed;
    margin-bottom: 1em;
    padding-bottom: 1em
  }
}

@media (min-width: 1366px) {
  .home .information-center .section.seminars {
    text-align: left
  }

  .home .information-center .section.seminars .section-title {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    padding-left: 60px
  }

  .home .information-center .section.seminars .section-title em {
    margin-left: -5px
  }

  .home .information-center .section.seminars .section-title::after {
    margin: 0
  }

  .home .information-center .section.seminars .button {
    margin-left: 60px
  }

  .home .information-center .section.publications {
    text-align: right
  }

  .home .information-center .section.publications .section-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    padding-right: 60px
  }

  .home .information-center .section.publications .section-title em {
    margin-right: -5px
  }

  .home .information-center .section.publications .section-title::after {
    margin: 0
  }

  .home .information-center .section.publications .button {
    margin-right: 60px
  }
}

.page.about .hero-container .overlay {
  padding-bottom: 9px
}

@media (min-width: 320px) {
  .page.about .hero-container .overlay {
    padding-bottom: calc(2.3436% + 1.5px)
  }
}

@media (min-width: 960px) {
  .page.about .hero-container .overlay {
    padding-bottom: 24px
  }
}

.page.about .page-content h1,
.page.about .page-content h2,
.page.about .page-content h3,
.page.about .page-content h4 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: bold;
  margin-top: 3em;
  margin-bottom: 1em;
  text-align: center
}

.page.about .page-content h2 {
  font-size: 22px
}

@media (min-width: 320px) {
  .page.about .page-content h2 {
    font-size: calc(1.33929vw + 17.71429px)
  }
}

@media (min-width: 768px) {
  .page.about .page-content h2 {
    font-size: 28px
  }
}

.page.about .page-content h3 {
  font-size: 20px
}

@media (min-width: 320px) {
  .page.about .page-content h3 {
    font-size: calc(.89286vw + 17.14286px)
  }
}

@media (min-width: 768px) {
  .page.about .page-content h3 {
    font-size: 24px
  }
}

.page.about .page-content h4 {
  font-size: 18px
}

.page.about .page-content .firm-profile {
  -webkit-animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  animation: scaleInLtR 0.75s cubic-bezier(0.23, 1, 0.32, 1) 1s both;
  background: #f5f7fa;
  margin: -15px auto 0;
  max-width: 920px;
  padding: 20px 25px 30px;
  position: relative;
  width: 80%;
  z-index: 9
}

@media (min-width: 320px) {
  .page.about .page-content .firm-profile {
    margin-top: calc(-3.906% - 2.5px);
    padding: calc(3.125% + 10px) calc(3.125% + 15px) 30px
  }
}

@media (min-width: 768px) {
  .page.about .page-content .firm-profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}

@media (min-width: 960px) {
  .page.about .page-content .firm-profile {
    margin-top: -40px;
    padding: 35px 40px
  }
}

.page.about .page-content .firm-profile h1 {
  margin: 0;
  text-align: left
}

.page.about .page-content .firm-profile a {
  color: #06b
}

.page.about .page-content .firm-profile a:hover {
  text-decoration: underline
}

.page.about .page-content .firm-profile dl {
  -webkit-animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s both;
  animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s both;
  font-size: 14px
}

@media (min-width: 768px) {
  .page.about .page-content .firm-profile dl {
    padding-right: 30px;
    width: 50%
  }
}

.page.about .page-content .firm-profile dl+dl {
  margin-top: 1em
}

@media (min-width: 768px) {
  .page.about .page-content .firm-profile dl+dl {
    border-left: 1px solid #e6e9ed;
    margin-top: 0;
    padding-left: 30px
  }
}

@media (min-width: 1200px) {
  .page.about .page-content .firm-profile dl+dl dd {
    padding-left: 8em
  }
}

.page.about .page-content .firm-profile dt {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  clear: both;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 700
}

.page.about .page-content .firm-profile dt:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 640px) {
  .page.about .page-content .firm-profile dt {
    float: left
  }
}

@media (min-width: 768px) {
  .page.about .page-content .firm-profile dt {
    float: none
  }
}

@media (min-width: 1200px) {
  .page.about .page-content .firm-profile dt {
    float: left
  }
}

.page.about .page-content .firm-profile dt:lang(ja) {
  float: left
}

@media (max-width: 359px) {
  .page.about .page-content .firm-profile dt.url {
    display: none
  }
}

@media (min-width: 640px) {
  .page.about .page-content .firm-profile dt:nth-child(n+2)+dd {
    margin-top: 1em
  }
}

@media (min-width: 768px) {
  .page.about .page-content .firm-profile dt:nth-child(n+2)+dd {
    margin-top: 0
  }
}

@media (min-width: 1200px) {
  .page.about .page-content .firm-profile dt:nth-child(n+2)+dd {
    margin-top: 1em
  }
}

.page.about .page-content .firm-profile dt:nth-child(n+2)+dd:lang(ja) {
  margin-top: 1em
}

@media (min-width: 640px) {
  .page.about .page-content .firm-profile dd {
    padding-left: 8em
  }
}

@media (min-width: 768px) {
  .page.about .page-content .firm-profile dd {
    padding-left: 0
  }
}

@media (min-width: 1200px) {
  .page.about .page-content .firm-profile dd {
    padding-left: 5.5em
  }
}

.page.about .page-content .firm-profile dd:lang(ja) {
  padding-left: 3em
}

@media (min-width: 400px) {
  .page.about .page-content .firm-profile dd:lang(ja) {
    padding-left: 4em
  }
}

@media (max-width: 359px) {
  .page.about .page-content .firm-profile dd.url {
    padding-left: 0
  }
}

.page.about .page-content .firm-profile dd+dt {
  margin-top: 1em
}

.page.about .page-content .firm-profile [class^="icon-"],
.page.about .page-content .firm-profile [class*=" icon-"] {
  display: inline-block
}

.page.about .page-content .brand-identity {
  font-size: 24px;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

@media (min-width: 320px) {
  .page.about .page-content .brand-identity {
    font-size: calc(3.57143vw + 12.57143px)
  }
}

@media (min-width: 768px) {
  .page.about .page-content .brand-identity {
    font-size: 40px
  }
}

.page.about .page-content .brand-identity:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

.page.about .page-content .brand-identity::after {
  width: 30px;
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  height: 0;
  margin: 0.5em auto 0
}

@media (min-width: 320px) {
  .page.about .page-content .brand-identity::after {
    width: calc(2.23214vw + 22.85714px)
  }
}

@media (min-width: 768px) {
  .page.about .page-content .brand-identity::after {
    width: 40px
  }
}

.page.about .page-content .brand-identity img {
  margin: auto;
  margin-bottom: 15px;
  display: block
}

.page.about .page-content .brand-identity small {
  font-size: 14px;
  color: #06b;
  display: block;
  font-weight: 500
}

@media (min-width: 320px) {
  .page.about .page-content .brand-identity small {
    font-size: calc(.44643vw + 12.57143px)
  }
}

@media (min-width: 768px) {
  .page.about .page-content .brand-identity small {
    font-size: 16px
  }
}

.page.about .page-content .brand-identity em {
  display: block;
  line-height: 1.5;
  padding: 0.5em 0
}

.page.about .page-content .brand-identity em:lang(ja) {
  white-space: nowrap
}

.page.about .page-content .description {
  text-align: center
}

.page.about .page-content .advantages {
  background: #f5f7fa;
  padding: 60px 0;
  margin: 60px 0
}

@media (min-width: 320px) {
  .page.about .page-content .advantages {
    padding: calc(3.125vw + 50px) 0;
    margin: calc(6.25vw + 40px) 0
  }
}

@media (min-width: 960px) {
  .page.about .page-content .advantages {
    padding: 80px 0;
    margin: 100px 0
  }
}

.page.about .page-content .advantages hr {
  margin: 3em 0
}

.page.about .page-content .advantages-title {
  margin-bottom: 1.5em;
  margin-top: 0;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.page.about .page-content .advantages-title:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

.page.about .page-content .advantages-title small {
  font-size: 14px;
  color: #06b;
  display: block;
  font-weight: 500
}

@media (min-width: 320px) {
  .page.about .page-content .advantages-title small {
    font-size: calc(.44643vw + 12.57143px)
  }
}

@media (min-width: 768px) {
  .page.about .page-content .advantages-title small {
    font-size: 16px
  }
}

.page.about .page-content .advantages-title em {
  display: block;
  line-height: 1.5;
  padding: 0.5em 0
}

.page.about .page-content .philosophy-outer,
.page.about .page-content .values-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.page.about .page-content .philosophy {
  text-align: center
}

@media (min-width: 768px) {
  .page.about .page-content .philosophy {
    text-align: left
  }
}

.page.about .page-content .philosophy>li+li {
  margin-top: 1em
}

@media (min-width: 768px) {
  .page.about .page-content .philosophy>li+li {
    margin-top: 0
  }
}

.page.about .page-content .philosophy em {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #06b;
  display: block;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  min-width: 10em;
  white-space: nowrap
}

.page.about .page-content .philosophy em:lang(zh-CN) {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

@media (min-width: 768px) {
  .page.about .page-content .philosophy em {
    display: inline-block;
    margin-right: 1em;
    text-align: right
  }
}

.page.about .page-content .values {
  counter-reset: promise
}

.page.about .page-content .values ::first-letter {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1
}

.page.about .page-content .values>li {
  padding-left: 1.5em;
  position: relative
}

.page.about .page-content .values>li::before {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #06b;
  border-radius: 1em;
  color: #fff;
  counter-increment: promise 1;
  content: counter(promise);
  display: inline-block;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  font-size: 14px;
  height: 16px;
  line-height: 16px;
  left: 0;
  position: absolute;
  text-align: center;
  top: 8px;
  width: 16px
}

[lang="zh-CN"] .page.about .page-content .values>li::before {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Microsoft YaHei", "微软雅黑", sans-serif
}

.page.about .page-content .professional-teams {
  padding: 0 20px
}

@media (min-width: 320px) {
  .page.about .page-content .professional-teams {
    padding: 0 calc(12.5vw - 20px)
  }
}

@media (min-width: 480px) {
  .page.about .page-content .professional-teams {
    padding: 0 40px
  }
}

.page.about .page-content .professional-teams h4 {
  background: #fff;
  border: 1px solid #ccd1d9;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: -1em;
  max-width: 240px;
  position: relative;
  z-index: 2
}

.page.about .page-content .professional-teams p {
  margin: 2em 0
}

.page.about .page-content .teams-outer {
  border: 1px solid #ccd1d9;
  margin: auto;
  max-width: 1200px;
  padding: 55px 15px 35px
}

@media (min-width: 768px) {
  .page.about .page-content .teams-outer {
    padding: 50px 10px 30px
  }
}

.page.about .page-content .teams {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: auto;
  text-align: center
}

.page.about .page-content .teams>li {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #f5f7fa;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1.5;
  margin: 5px;
  padding: 0.5em 0.75em;
  text-align: center;
  width: 255px
}

@media (min-width: 768px) {
  .page.about .page-content .teams>li {
    margin: 10px
  }
}

.page.about .page-content .teams.practice-group {
  max-width: none
}

.page.about .page-content .teams.practice-group>li {
  width: 255px
}

@media (min-width: 1202px) {
  .page.about .page-content .teams.practice-group>li {
    width: 200px
  }
}

.page.about .page-content .teams.workshop>li {
  max-width: 300px
}

@media (min-width: 480px) {
  .page.about .page-content .teams.workshop>li {
    min-width: 255px;
    width: 30%
  }
}

.page.about .page-content .team {
  margin-bottom: 60px;
  margin-top: 60px;
  padding-bottom: 40px;
  background: #f5f7fa;
  padding-left: 15px;
  padding-right: 15px;
  overflow: hidden
}

@media (min-width: 320px) {
  .page.about .page-content .team {
    margin-bottom: calc(9.375vw + 30px)
  }
}

@media (min-width: 960px) {
  .page.about .page-content .team {
    margin-bottom: 120px
  }
}

@media (min-width: 320px) {
  .page.about .page-content .team {
    margin-top: calc(9.375vw + 30px)
  }
}

@media (min-width: 960px) {
  .page.about .page-content .team {
    margin-top: 120px
  }
}

@media (min-width: 320px) {
  .page.about .page-content .team {
    padding-bottom: calc(6.25vw + 20px)
  }
}

@media (min-width: 960px) {
  .page.about .page-content .team {
    padding-bottom: 80px
  }
}

.page.about .page-content .team h3+h4 {
  margin-top: 2em
}

.page.about .page-content .team h4 {
  border: 1px solid #06b;
  color: #06b;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: 240px
}

.page.about .page-content .team figure {
  text-align: center
}

.page.about .page-content .related-contents h2,
.page.about .page-content .offices h2 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.75;
  margin: 1em 0 0.375em;
  text-align: left
}

.page.about .page-content .related-contents p,
.page.about .page-content .offices p {
  font-size: 14px
}

.page.about .page-content .related-contents a,
.page.about .page-content .offices a {
  display: block;
  -webkit-hyphens: manual;
  -ms-hyphens: manual;
  hyphens: manual
}

.page.about .page-content .related-contents {
  margin-top: 80px;
  padding-top: 30px;
  position: relative
}

@media (min-width: 320px) {
  .page.about .page-content .related-contents {
    margin-top: calc(6.25vw + 60px)
  }
}

@media (min-width: 960px) {
  .page.about .page-content .related-contents {
    margin-top: 120px
  }
}

@media (min-width: 320px) {
  .page.about .page-content .related-contents {
    padding-top: calc(4.46429vw + 15.71429px)
  }
}

@media (min-width: 1440px) {
  .page.about .page-content .related-contents {
    padding-top: 80px
  }
}

.page.about .page-content .related-contents::before {
  background: #f5f7fa;
  bottom: 200px;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: calc(6.944% + 37.778px);
  top: 0;
  z-index: -1
}

@media (min-width: 1760px) {
  .page.about .page-content .related-contents::before {
    right: calc(50% - 720px)
  }
}

.page.about .page-content .related-contents ul {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: auto;
  max-width: 1920px;
  padding: 0 6.25%
}

@media (min-width: 640px) {
  .page.about .page-content .related-contents ul {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding-right: 0
  }
}

.page.about .page-content .related-contents ul>li {
  max-width: 420px
}

@media (min-width: 640px) {
  .page.about .page-content .related-contents ul>li {
    width: 50%
  }
}

@media (min-width: 1200px) {
  .page.about .page-content .related-contents ul>li {
    max-width: none;
    width: 33.33333%
  }

  .page.about .page-content .related-contents ul>li:lang(ja) {
    width: 25%
  }
}

@media (min-width: 640px) {
  .page.about .page-content .related-contents ul>li:nth-child(2) {
    margin-top: 0
  }
}

.page.about .page-content .related-contents ul>li+li {
  margin-top: 50px
}

@media (min-width: 1200px) {
  .page.about .page-content .related-contents ul>li+li {
    margin-top: 0
  }
}

.page.about .page-content .related-contents ul>li figure {
  overflow: hidden
}

.page.about .page-content .related-contents ul>li figure img {
  width: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out
}

.page.about .page-content .related-contents ul>li a figure {
  overflow: hidden
}

.page.about .page-content .related-contents ul>li a figure img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page.about .page-content .related-contents ul>li a:hover figure img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

@media (min-width: 640px) {

  .page.about .page-content .related-contents ul>li h2,
  .page.about .page-content .related-contents ul>li p {
    padding-right: 10%
  }
}

.page.about .page-content .offices {
  margin-top: 80px;
  padding-top: 30px;
  position: relative
}

@media (min-width: 320px) {
  .page.about .page-content .offices {
    margin-top: calc(6.25vw + 60px)
  }
}

@media (min-width: 960px) {
  .page.about .page-content .offices {
    margin-top: 120px
  }
}

@media (min-width: 320px) {
  .page.about .page-content .offices {
    padding-top: calc(6.25vw + 10px)
  }
}

@media (min-width: 1440px) {
  .page.about .page-content .offices {
    padding-top: 100px
  }
}

.page.about .page-content .offices::before {
  background: #f5f7fa;
  bottom: 300px;
  content: "";
  display: block;
  left: calc(12.5% + 20px);
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1
}

@media (min-width: 1760px) {
  .page.about .page-content .offices::before {
    left: 240px
  }
}

.page.about .page-content .offices ul {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: auto;
  max-width: 1500px;
  padding: 0 6.25%
}

@media (min-width: 980px) {
  .page.about .page-content .offices ul {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    padding: 0
  }
}

.page.about .page-content .offices ul>li {
  max-width: 300px;
  min-width: 280px
}

.page.about .page-content .offices ul>li+li {
  margin-top: 50px
}

@media (min-width: 980px) {
  .page.about .page-content .offices ul>li+li {
    margin-top: 0
  }
}

.page.about .page-content .offices ul>li a figure {
  overflow: hidden
}

.page.about .page-content .offices ul>li a figure img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page.about .page-content .offices ul>li a:hover figure img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.page.about .page-content .offices ul>li a figure {
  max-width: 50vw
}

.page.message .hero-container {
  margin-bottom: 100px
}

@media (min-width: 1200px) {
  .page.message .hero-container {
    margin-bottom: 0
  }
}

.page.message .hero-container h1 {
  position: absolute;
  left: 0;
  bottom: 50%;
  -webkit-transform: translateY(50%);
  transform: translateY(50%)
}

@media (min-width: 1200px) {
  .page.message .hero-container h1 {
    padding-bottom: 48px;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

.page.message .hero-container .nameplate {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 20px;
  padding-right: 20px;
  background: #f5f7fa;
  font-weight: bold;
  margin-left: 15px;
  margin-right: 10px;
  margin-top: -20px;
  max-width: 360px;
  position: absolute;
  top: 100%
}

@media (min-width: 320px) {
  .page.message .hero-container .nameplate {
    padding-top: calc(1.33929vw + 10.71429px)
  }
}

@media (min-width: 1440px) {
  .page.message .hero-container .nameplate {
    padding-top: 30px
  }
}

@media (min-width: 320px) {
  .page.message .hero-container .nameplate {
    padding-bottom: calc(1.33929vw + 10.71429px)
  }
}

@media (min-width: 1440px) {
  .page.message .hero-container .nameplate {
    padding-bottom: 30px
  }
}

@media (min-width: 320px) {
  .page.message .hero-container .nameplate {
    padding-left: calc(1.78571vw + 14.28571px)
  }
}

@media (min-width: 1440px) {
  .page.message .hero-container .nameplate {
    padding-left: 40px
  }
}

@media (min-width: 320px) {
  .page.message .hero-container .nameplate {
    padding-right: calc(1.78571vw + 14.28571px)
  }
}

@media (min-width: 1440px) {
  .page.message .hero-container .nameplate {
    padding-right: 40px
  }
}

@media (min-width: 320px) {
  .page.message .hero-container .nameplate {
    margin-left: calc(9.375vw - 15px)
  }
}

@media (min-width: 1200px) {
  .page.message .hero-container .nameplate {
    background: rgba(255, 255, 255, 0.8);
    top: 50%;
    margin-top: 0
  }
}

@media (min-width: 1440px) {
  .page.message .hero-container .nameplate {
    margin-left: 120px
  }
}

.page.message .hero-container .nameplate p {
  font-size: 14px
}

.page.message .hero-container .nameplate h2 {
  font-size: 18px;
  font-weight: bold
}

@media (min-width: 320px) {
  .page.message .hero-container .nameplate h2 {
    font-size: calc(.53571vw + 16.28571px)
  }
}

@media (min-width: 1440px) {
  .page.message .hero-container .nameplate h2 {
    font-size: 24px
  }
}

.page.message .entry-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 1px
}

@media (min-width: 768px) {
  .page.message .entry-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

.page.message .entry-content h1 {
  font-size: 20px
}

@media (min-width: 320px) {
  .page.message .entry-content h1 {
    font-size: calc(2.67857vw + 11.42857px)
  }
}

@media (min-width: 768px) {
  .page.message .entry-content h1 {
    font-size: 32px
  }
}

.page.message .entry-content h1 br {
  display: none
}

@media (min-width: 960px) {
  .page.message .entry-content h1 br {
    display: block
  }
}

.page.message .entry-content h2::before {
  content: none
}

@media (min-width: 768px) {
  .page.message .entry-content .img-1 {
    float: right;
    margin-top: 0;
    margin-left: 20px;
    max-width: 50%;
    padding-left: 20px
  }
}

.page.message .entry-content .credit {
  margin-top: 4em;
  text-align: right
}

.page.message .entry-content .credit strong {
  font-size: 18px
}

.page.message .entry-content .brand-identity {
  font-size: 24px;
  clear: both;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-align: center
}

@media (min-width: 320px) {
  .page.message .entry-content .brand-identity {
    font-size: calc(3.57143vw + 12.57143px)
  }
}

@media (min-width: 768px) {
  .page.message .entry-content .brand-identity {
    font-size: 40px
  }
}

.page.message .entry-content .brand-identity::after {
  content: none
}

.page.message .entry-content .brand-identity small {
  font-size: 14px;
  color: #06b;
  display: block;
  font-weight: 500
}

@media (min-width: 320px) {
  .page.message .entry-content .brand-identity small {
    font-size: calc(.44643vw + 12.57143px)
  }
}

@media (min-width: 768px) {
  .page.message .entry-content .brand-identity small {
    font-size: 16px
  }
}

.page.message .entry-content .brand-identity em {
  display: block;
  white-space: nowrap
}

.page.history .hero-container {
  margin-bottom: 100px
}

@media (min-width: 1200px) {
  .page.history .hero-container {
    margin-bottom: 0
  }
}

.page.history .hero-container h1 {
  bottom: 0;
  display: block;
  left: 0;
  position: absolute
}

@media (min-width: 960px) {
  .page.history .hero-container h1 {
    bottom: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transform: translateY(60%);
    transform: translateY(60%)
  }
}

@media (min-width: 1600px) {
  .page.history .hero-container h1 {
    -webkit-transform: translateY(50%);
    transform: translateY(50%)
  }
}

.page.history .hero-container h1 em,
.page.history .hero-container h1 small {
  display: block
}

@media (min-width: 960px) {

  .page.history .hero-container h1 em,
  .page.history .hero-container h1 small {
    display: inline
  }
}

.page.history .main {
  padding-bottom: 0
}

.page.history .entry-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .page.history .entry-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

.page.history .history-title {
  text-align: center
}

.page.history .history-title::after {
  width: 30px;
  margin-left: auto;
  margin-right: auto
}

@media (min-width: 320px) {
  .page.history .history-title::after {
    width: calc(2.23214vw + 22.85714px)
  }
}

@media (min-width: 768px) {
  .page.history .history-title::after {
    width: 40px
  }
}

.page.history .history-lead {
  background: #f5f7fa;
  overflow: hidden;
  margin: 0 -30px 4em;
  padding: 0.5em 30px
}

@media (min-width: 768px) {
  .page.history .history-lead {
    margin: 0 -40px 4em
  }
}

.page.history .history-table {
  padding-bottom: 60px;
  margin-bottom: 0;
  padding-left: 0;
  position: relative
}

@media (min-width: 320px) {
  .page.history .history-table {
    padding-bottom: calc(18.75vw + 0px)
  }
}

@media (min-width: 960px) {
  .page.history .history-table {
    padding-bottom: 180px
  }
}

.page.history .history-table::before {
  content: "";
  border-left: 2px solid #06b;
  bottom: 0;
  display: block;
  left: -10px;
  position: absolute;
  top: 1em;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

@media (min-width: 768px) {
  .page.history .history-table::before {
    left: 140px
  }
}

.page.history .history-table::after {
  font-size: 60px;
  color: #f5f7fa;
  content: "Kitahama History";
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 900;
  line-height: 0.9;
  left: calc(100% + 0.5em);
  position: absolute;
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 1em;
  white-space: pre;
  z-index: -1
}

@media (min-width: 320px) {
  .page.history .history-table::after {
    font-size: calc(18.75vw + 0px)
  }
}

@media (min-width: 640px) {
  .page.history .history-table::after {
    font-size: 120px
  }
}

.page.history .history-table>li {
  margin: 2em 0;
  padding-left: 10px
}

@media (min-width: 768px) {
  .page.history .history-table>li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 0
  }
}

.page.history .history-table>li::before {
  background: #06b;
  border-radius: 10px;
  content: "";
  display: block;
  height: 10px;
  left: -10px;
  top: 1em;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 10px
}

@media (min-width: 768px) {
  .page.history .history-table>li::before {
    left: 140px
  }
}

.page.history .history-table p {
  margin: 0
}

.page.history .history-table p.copy {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #656d78
}

.page.history .history-table img {
  max-height: 316px;
  padding: 0.5em 0;
  width: auto
}

@media (min-width: 768px) {
  .page.history .history-table .yearmonth {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 80px;
    width: 100px
  }
}

.page.history .history-table .year,
.page.history .history-table .month {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: bold
}

@media (min-width: 768px) {

  .page.history .history-table .year,
  .page.history .history-table .month {
    display: inline-block;
    font-weight: normal
  }
}

@media (min-width: 768px) {
  .page.history .history-table .year {
    width: 60px
  }

  .page.history .history-table .year.duplicated {
    display: none
  }

  .page.history .history-table .year.duplicated+.month {
    margin-left: 60px
  }
}

@media (min-width: 768px) {
  .page.history .history-table .month {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: 90px
  }

  .page.history .history-table .month:lang(ja) {
    text-align: right;
    width: 40px
  }
}

.page.locations .hero-container {
  background-image: url(../images/location-hero.svg);
  background-color: #ccd1d9;
  background-size: contain;
  background-position: right center
}

[lang="ja"] .page.locations .hero-container {
  background-image: url(../images/location-hero-ja.svg)
}

@media (min-width: 960px) {
  .page.locations .hero-container {
    background-image: url(../images/location-hero-960.svg)
  }

  [lang="ja"] .page.locations .hero-container {
    background-image: url(../images/location-hero-960-ja.svg)
  }
}

@media (min-width: 1200px) {
  .page.locations .hero-container {
    background-position: right calc(50% - 317px) center
  }
}

.page.locations .hero-container .overlay {
  background: none
}

.page.locations .hero-container h1 {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

@media (min-width: 1000px) {
  .page.locations .hero-container h1 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row
  }
}

.page.locations .entry-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {
  .page.locations .entry-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

.page.locations section::before {
  content: "";
  display: block;
  height: 40px;
  margin-top: -40px;
  visibility: hidden
}

@media (min-width: 1200px) {
  .page.locations section::before {
    height: 60px;
    margin-top: -60px
  }
}

@media (min-width: 960px) {
  .page.locations section {
    clear: both
  }

  .page.locations section .text {
    float: left;
    padding-right: 60px;
    width: 50%
  }

  .page.locations section .text>*:first-child {
    margin-top: 0
  }

  .page.locations section .text>*:last-child {
    margin-bottom: 0
  }
}

.page.locations section h1 {
  position: relative
}

.page.locations section h1::before {
  font-size: 60px;
  color: #f5f7fa;
  content: attr(data-title);
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: absolute;
  right: 0;
  top: 40%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: -1
}

@media (min-width: 320px) {
  .page.locations section h1::before {
    font-size: calc(18.75vw + 0px)
  }
}

@media (min-width: 640px) {
  .page.locations section h1::before {
    font-size: 120px
  }
}

.page.locations .train {
  padding-left: 0
}

.page.locations .address::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ""
}

.page.locations .train>li {
  text-indent: 0
}

.page.locations .train>li::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  background: none;
  height: auto;
  margin: 0;
  -webkit-transform: none;
  transform: none;
  vertical-align: baseline;
  width: auto
}

.page.locations .info::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ""
}

.page.locations .car::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ""
}

.page.locations .address,
.page.locations .train>li,
.page.locations .info,
.page.locations .car {
  padding-left: 1.75em;
  position: relative
}

.page.locations .address::before,
.page.locations .train>li::before,
.page.locations .info::before,
.page.locations .car::before {
  color: #06b;
  left: 0;
  line-height: 2;
  position: absolute
}

.page.locations .map {
  height: 0;
  position: relative;
  padding-bottom: 66.66667%;
  overflow: hidden
}

@media (min-width: 660px) {
  .page.locations .map {
    padding-bottom: 400px
  }
}

@media (min-width: 960px) {
  .page.locations .map {
    float: right;
    max-width: 600px;
    width: calc(50% - 20px)
  }
}

.page.locations .map iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%
}

.page.locations .button-area {
  text-align: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%
}

@media (min-width: 960px) {
  .page.locations .button-area {
    clear: left;
    text-align: left
  }
}

.page.locations .button-area .button {
  width: 100%;
  max-width: 280px;
  margin-top: 40px;
  min-width: auto
}

.page-template-html.discussions .discussions {
  max-width: 1920px;
  margin: auto
}

.page-template-html.discussions .discussions>li {
  margin-top: 60px;
  position: relative
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li {
    margin-top: calc(13.393vw + 17.143px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li {
    margin-top: 120px
  }
}

@media (min-width: 1440px) {
  .page-template-html.discussions .discussions>li {
    margin-top: calc(12.5vw - 60px)
  }
}

@media (min-width: 1920px) {
  .page-template-html.discussions .discussions>li {
    margin-top: 180px
  }
}

.page-template-html.discussions .discussions>li+li {
  margin-top: 120px
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li+li {
    margin-top: calc(8.92857vw + 51.42857px)
  }
}

@media (min-width: 1440px) {
  .page-template-html.discussions .discussions>li+li {
    margin-top: 180px
  }
}

.page-template-html.discussions .discussions>li>a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative
}

.page-template-html.discussions .discussions>li>a figure div {
  overflow: hidden
}

.page-template-html.discussions .discussions>li>a figure div img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page-template-html.discussions .discussions>li>a:hover figure div img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.page-template-html.discussions .discussions>li>a button {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.page-template-html.discussions .discussions>li>a:hover button {
  background-position: -100%
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li>a {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
  }
}

.page-template-html.discussions .discussions>li.osaka>a,
.page-template-html.discussions .discussions>li.fukuoka>a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse
}

.page-template-html.discussions .discussions>li.osaka::before {
  left: 0.8em;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: left top;
  transform-origin: left top;
  top: -0.2em
}

.page-template-html.discussions .discussions>li.osaka figure {
  -webkit-animation: moveFadeInRtL 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both;
  animation: moveFadeInRtL 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both
}

.page-template-html.discussions .discussions>li.tokyo::before {
  right: 0;
  top: -0.4em
}

.page-template-html.discussions .discussions>li.tokyo>a button {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.page-template-html.discussions .discussions>li.tokyo>a:hover button {
  background-position: 100%
}

.page-template-html.discussions .discussions>li.tokyo figure {
  -webkit-animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both;
  animation: moveFadeInLtR 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both
}

.page-template-html.discussions .discussions>li.fukuoka {
  max-width: 1560px;
  margin-left: auto;
  margin-right: auto
}

.page-template-html.discussions .discussions>li.fukuoka::before {
  left: 0px;
  top: -0.4em
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li.fukuoka::before {
    left: calc(-16.66667vw + 200px)
  }
}

@media (min-width: 1920px) {
  .page-template-html.discussions .discussions>li.fukuoka::before {
    left: -120px
  }
}

.page-template-html.discussions .discussions>li.fukuoka figure {
  margin-right: 20px;
  -webkit-animation: moveFadeInRtL 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both;
  animation: moveFadeInRtL 1s cubic-bezier(0.215, 0.61, 0.355, 1) 1s both
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li.fukuoka figure {
    margin-right: calc(4.46429vw + 5.71429px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li.fukuoka figure {
    margin-right: 40px
  }
}

.page-template-html.discussions .discussions>li::before {
  font-size: 180px;
  color: #f5f7fa;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  z-index: -1
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li::before {
    font-size: calc(8.33333vw + 80px)
  }
}

@media (min-width: 1920px) {
  .page-template-html.discussions .discussions>li::before {
    font-size: 240px
  }
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li::before {
    content: attr(data-title)
  }
}

.page-template-html.discussions .discussions>li figure {
  margin-left: 20px;
  position: relative
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li figure {
    margin-left: calc(4.46429vw + 5.71429px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li figure {
    margin-left: 40px
  }
}

.page-template-html.discussions .discussions>li figure._left {
  margin-right: 20px;
  margin-left: 0
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li figure._left {
    margin-right: calc(4.46429vw + 5.71429px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li figure._left {
    margin-right: 40px
  }
}

.page-template-html.discussions .discussions>li figure.shadow-left::after {
  left: -20px;
  left: -20px
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li figure.shadow-left::after {
    left: calc(-4.46429vw + -5.71429px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li figure.shadow-left::after {
    left: -40px
  }
}

.page-template-html.discussions .discussions>li figure::after {
  left: 20px;
  top: 20px;
  background: #f5f7fa;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li figure::after {
    left: calc(4.46429vw + 5.71429px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li figure::after {
    left: 40px
  }
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li figure::after {
    top: calc(4.46429vw + 5.71429px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li figure::after {
    top: 40px
  }
}

.page-template-html.discussions .discussions>li figure img {
  position: relative;
  z-index: 5
}

.page-template-html.discussions .discussions>li .discription {
  margin: auto;
  max-width: 700px;
  padding: 0 30px
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li .discription {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    left: 20px;
    margin: 0;
    max-width: 480px;
    padding: 0 60px;
    position: relative
  }
}

@media (min-width: 1440px) {
  .page-template-html.discussions .discussions>li .discription {
    left: calc(-6.25vw + 110px)
  }
}

@media (min-width: 1760px) {
  .page-template-html.discussions .discussions>li .discription {
    left: 0px
  }
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li .discription._right {
    left: -20px
  }
}

@media (min-width: 1440px) {
  .page-template-html.discussions .discussions>li .discription._right {
    left: calc(6.25vw - 110px)
  }
}

@media (min-width: 1760px) {
  .page-template-html.discussions .discussions>li .discription._right {
    left: 0px
  }
}

.page-template-html.discussions .discussions>li .discription h1 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 24px;
  margin-top: 40px;
  margin-bottom: 15px;
  font-weight: bold
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li .discription h1 {
    font-size: calc(1.78571vw + 18.28571px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li .discription h1 {
    font-size: 32px
  }
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li .discription h1 {
    margin-top: calc(8.92857vw + 11.42857px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li .discription h1 {
    margin-top: 80px
  }
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li .discription h1 {
    margin-bottom: calc(5.58036vw + -2.85714px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li .discription h1 {
    margin-bottom: 40px
  }
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li .discription h1 {
    margin-top: 0
  }
}

.page-template-html.discussions .discussions>li .discription h1::after {
  width: 40px;
  margin-top: 10px;
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  height: 0;
  margin-left: -15px
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li .discription h1::after {
    width: calc(4.46429vw + 25.71429px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li .discription h1::after {
    width: 60px
  }
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li .discription h1::after {
    margin-top: calc(4.46429vw + -4.28571px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li .discription h1::after {
    margin-top: 30px
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li .discription h1::after {
    margin-left: -20px
  }
}

.page-template-html.discussions .discussions>li .discription button {
  margin-top: 20px;
  display: block;
  margin: 20px auto 0;
  max-width: 360px;
  width: 100%
}

@media (min-width: 320px) {
  .page-template-html.discussions .discussions>li .discription button {
    margin-top: calc(8.92857vw + -8.57143px)
  }
}

@media (min-width: 768px) {
  .page-template-html.discussions .discussions>li .discription button {
    margin-top: 60px
  }
}

@media (min-width: 1200px) {
  .page-template-html.discussions .discussions>li .discription button {
    max-width: none;
    padding-right: 180px;
    position: relative;
    width: calc(100% + 180px);
    z-index: 9
  }

  .page-template-html.discussions .discussions>li .discription button._left {
    margin-left: -180px;
    padding-right: 0;
    padding-left: 180px
  }
}

.page-template-discussion .hero-container .overlay {
  background: none
}

.page-template-discussion .hero-container h1 {
  padding-bottom: 40px;
  padding-top: 80px
}

@media (min-width: 320px) {
  .page-template-discussion .hero-container h1 {
    padding-bottom: calc(.625vw + 38px)
  }
}

@media (min-width: 1920px) {
  .page-template-discussion .hero-container h1 {
    padding-bottom: 50px
  }
}

@media (min-width: 320px) {
  .page-template-discussion .hero-container h1 {
    padding-top: calc(31.875vw + -22px)
  }
}

@media (min-width: 1920px) {
  .page-template-discussion .hero-container h1 {
    padding-top: 590px
  }
}

.page-template-discussion .entry-content {
  margin-top: -1px;
  padding-top: 1px
}

.page-template-discussion .entry-content::after {
  clear: both;
  content: "";
  display: block
}

.page-template-discussion .entry-content .attendee-profiles {
  margin: -20px auto 40px;
  padding: 0;
  position: relative;
  max-width: 520px;
  z-index: 5
}

@media (min-width: 1240px) {
  .page-template-discussion .entry-content .attendee-profiles {
    float: right;
    margin-right: -240px;
    margin-left: 40px;
    margin-top: -40px
  }
}

.page-template-discussion .entry-content .attendee-profiles>li {
  background: #f5f7fa;
  padding: 0;
  text-indent: 0
}

.page-template-discussion .entry-content .attendee-profiles>li+li {
  margin-top: 20px
}

.page-template-discussion .entry-content .attendee-profiles>li::before {
  content: none
}

.page-template-discussion .entry-content .attendee-profiles>li>a {
  color: inherit;
  display: block;
  padding: 20px;
  overflow: hidden
}

.page-template-discussion .entry-content .attendee-profiles>li>a:hover {
  background: #06b;
  background: #e6e9ed;
  text-decoration: none
}

.page-template-discussion .entry-content .attendee-profiles>li figure {
  float: left;
  margin: 0;
  margin-right: 20px;
  margin-bottom: 10px;
  width: 60px
}

@media (min-width: 580px) {
  .page-template-discussion .entry-content .attendee-profiles>li figure {
    margin-bottom: 0;
    width: 120px
  }
}

.page-template-discussion .entry-content .attendee-profiles>li figure img {
  padding: 0
}

.page-template-discussion .entry-content .attendee-profiles>li h2 {
  font-size: 16px;
  margin: 0
}

.page-template-discussion .entry-content .attendee-profiles>li h2::before {
  content: none
}

.page-template-discussion .entry-content .attendee-profiles>li h2 small {
  display: block;
  font-size: 14px
}

@media (min-width: 580px) {
  .page-template-discussion .entry-content .attendee-profiles>li h2 small {
    display: inline-block
  }
}

.page-template-discussion .entry-content .attendee-profiles>li p {
  clear: left;
  font-size: 14px;
  margin: 0;
  overflow: hidden
}

@media (min-width: 580px) {
  .page-template-discussion .entry-content .attendee-profiles>li p {
    clear: none
  }
}

@media (min-width: 768px) {
  .page-template-discussion .entry-content .landscape {
    max-width: 450px
  }
}

.page-template-discussion .entry-content .landscape.stick-left.float-left {
  margin-right: 40px;
  margin-bottom: 2em
}

@media (max-width: 767px) {
  .page-template-discussion .entry-content .landscape.stick-left.float-left {
    float: none;
    margin-right: 0
  }
}

@media (min-width: 768px) {
  .page-template-discussion .entry-content .portrait {
    max-width: 300px
  }
}

.page-template-discussion .entry-content .portrait.stick-left.float-left {
  margin-right: 40px;
  margin-bottom: 2em
}

@media (min-width: 768px) {
  .page-template-discussion .entry-content .landscape {
    max-width: 450px
  }
}

.page-template-discussion .entry-content .landscape.stick-right.float-right {
  margin-left: 40px;
  margin-bottom: 2em
}

@media (max-width: 767px) {
  .page-template-discussion .entry-content .landscape.stick-right.float-right {
    float: none;
    margin-left: 0
  }
}

@media (min-width: 768px) {
  .page-template-discussion .entry-content .portrait {
    max-width: 300px
  }
}

.page-template-discussion .entry-content .portrait.stick-right.float-right {
  margin-left: 40px;
  margin-bottom: 2em
}

.page-template-discussion .entry-content h1 {
  position: relative
}

.page-template-discussion .entry-content h1 .number {
  font-size: 90px;
  bottom: 0;
  color: #f5f7fa;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  right: 0;
  text-transform: uppercase;
  z-index: -1
}

@media (min-width: 320px) {
  .page-template-discussion .entry-content h1 .number {
    font-size: calc(6.69643vw + 68.57143px)
  }
}

@media (min-width: 768px) {
  .page-template-discussion .entry-content h1 .number {
    font-size: 120px
  }
}

@media (min-width: 1240px) {
  .page-template-discussion .entry-content h1 .number {
    left: -180px;
    right: auto
  }
}

.page-template-discussion .entry-content h1 .number small {
  display: block;
  font-size: 23.33333%;
  font-weight: 900;
  -webkit-transform: translate(-50%, -50%) rotate(-90deg);
  transform: translate(-50%, -50%) rotate(-90deg);
  position: absolute;
  left: -0.75em;
  top: 50%
}

.page-template-discussion .entry-content figure._w280 {
  max-width: 280px
}

.page-template-discussion .entry-content figure._w300 {
  max-width: 300px
}

.page-template-discussion .entry-content figure._w440 {
  max-width: 440px
}

.page-template-discussion .entry-content figure._w450 {
  max-width: 450px
}

.page-template-discussion .entry-content figure._left {
  float: left;
  margin-right: 40px;
  margin-bottom: 40px;
  margin-top: 0
}

.page-template-discussion .entry-content figure._left._-column-1 {
  margin-left: -80px
}

.page-template-discussion .entry-content figure._left._-column-2 {
  margin-left: -160px
}

.page-template-discussion .entry-content figure._left._-column-3 {
  margin-left: -240px
}

.page-template-discussion .entry-content figure._right {
  float: right;
  margin-left: 40px;
  margin-bottom: 40px;
  margin-top: 0
}

.page-template-discussion .entry-content figure._right._-column-1 {
  margin-right: -80px
}

.page-template-discussion .entry-content figure._right._-column-2 {
  margin-right: -160px
}

.page-template-discussion .entry-content figure._right._-column-3 {
  margin-right: -240px
}

.page-template-discussion .entry-content .clear {
  clear: both
}

.page.recruit:not(.page-template-terms) .hero-container {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: url(../images/hero-recruit.jpg) no-repeat center center;
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: calc((100vw - 15px) / 16 * 9);
  min-height: 56.25vw
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container {
    min-height: calc((100vw - (4.018vw + 2.143px)) / 16 * 9)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container {
    min-height: calc((100vw - 60px) / 16 * 9)
  }
}

.page.recruit:not(.page-template-terms) .hero-container::before {
  background: rgba(0, 71, 131, 0.4);
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0
}

.page.recruit:not(.page-template-terms) .hero-container h1 {
  margin-bottom: 10px;
  padding: 0
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container h1 {
    margin-bottom: calc(2.67857vw + 1.42857px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container h1 {
    margin-bottom: 40px
  }
}

.page.recruit:not(.page-template-terms) .hero-container h2 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container h2 {
    font-size: calc(.71429vw + 21.71429px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container h2 {
    font-size: 32px
  }
}

.page.recruit:not(.page-template-terms) .hero-container h2::after {
  margin-bottom: 20px;
  margin-top: 20px;
  border-bottom: 2px solid #fff;
  content: "";
  display: block;
  height: 0;
  width: 30px
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container h2::after {
    margin-bottom: calc(.89286vw + 17.14286px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container h2::after {
    margin-bottom: 30px
  }
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container h2::after {
    margin-top: calc(.89286vw + 17.14286px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container h2::after {
    margin-top: 30px
  }
}

.page.recruit:not(.page-template-terms) .hero-container p {
  line-height: 28px
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container p {
    line-height: calc(.35714vw + 26.85714px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container p {
    line-height: 32px
  }
}

.page.recruit:not(.page-template-terms) .hero-container .hero-inner {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  padding-bottom: 32px;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 32px;
  color: #fff;
  position: relative
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-bottom: calc(2.5vw + 24px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-bottom: 60px
  }
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-left: calc(9.375vw + -15px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-left: 120px
  }
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-right: calc(9.375vw + -15px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-right: 120px
  }
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-top: calc(2.5vw + 24px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .hero-container .hero-inner {
    padding-top: 60px
  }
}

.page.recruit:not(.page-template-terms) .recruit-informations {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-left: 10px;
  padding-right: 10px
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-informations {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-informations {
    margin-top: calc(4.16667vw + 6.66667px)
  }
}

@media (min-width: 1280px) {
  .page.recruit:not(.page-template-terms) .recruit-informations {
    margin-top: 60px
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-informations {
    padding-left: 20px;
    padding-right: 20px
  }
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-informations {
    padding-left: calc(-5vw + 68px);
    padding-right: calc(-5vw + 68px)
  }
}

@media (min-width: 1360px) {
  .page.recruit:not(.page-template-terms) .recruit-informations {
    padding-left: 0px;
    padding-right: 0px
  }
}

.page.recruit:not(.page-template-terms) .recruit-informations>li {
  padding: 20px;
  max-width: 440px
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-informations>li {
    padding: calc(5vw + -28px)
  }
}

@media (min-width: 1360px) {
  .page.recruit:not(.page-template-terms) .recruit-informations>li {
    padding: 40px
  }
}

@media (min-width: 640px) {
  .page.recruit:not(.page-template-terms) .recruit-informations>li {
    width: 50%
  }
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-informations>li {
    width: 33.33333%
  }
}

.page.recruit:not(.page-template-terms) .recruit-informations>li figure a {
  overflow: hidden;
  display: block;
  vertical-align: top
}

.page.recruit:not(.page-template-terms) .recruit-informations>li figure a img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page.recruit:not(.page-template-terms) .recruit-informations>li figure a:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.page.recruit:not(.page-template-terms) .recruit-informations>li h3 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.75;
  margin: 1em 0 0.375em;
  text-align: left
}

.page.recruit:not(.page-template-terms) .recruit-informations>li p {
  font-size: 14px
}

.page.recruit:not(.page-template-terms) .recruit-informations>li a {
  color: #06b
}

.page.recruit:not(.page-template-terms) .recruit-informations>li a:hover {
  text-decoration: underline
}

.page.recruit:not(.page-template-terms) .recruit-informations>li .freeze {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #aab2bd
}

.page.recruit:not(.page-template-terms) .recruit-news-outer {
  margin-top: 60px;
  padding-bottom: 40px;
  padding-top: 40px;
  background: #f5f7fa;
  font-size: 14px
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-news-outer {
    margin-top: calc(5.35714vw + 42.85714px)
  }
}

@media (min-width: 1440px) {
  .page.recruit:not(.page-template-terms) .recruit-news-outer {
    margin-top: 120px
  }
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-news-outer {
    padding-bottom: calc(4.46429vw + 25.71429px)
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-news-outer {
    padding-bottom: 60px
  }
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-news-outer {
    padding-top: calc(4.46429vw + 25.71429px)
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-news-outer {
    padding-top: 60px
  }
}

.page.recruit:not(.page-template-terms) .recruit-news-outer h3 {
  font-size: 18px;
  font-weight: bold
}

.page.recruit:not(.page-template-terms) .recruit-news-outer a {
  color: #06b
}

.page.recruit:not(.page-template-terms) .recruit-news-outer a:hover {
  text-decoration: underline
}

.page.recruit:not(.page-template-terms) .recruit-news-outer .more {
  -ms-flex-item-align: end;
  align-self: flex-end
}

@media (min-width: 640px) {
  .page.recruit:not(.page-template-terms) .recruit-news-outer .more {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
}

.page.recruit:not(.page-template-terms) .recruit-news-outer .more::after {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: " " ""
}

.page.recruit:not(.page-template-terms) .recruit-news-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

@media (min-width: 640px) {
  .page.recruit:not(.page-template-terms) .recruit-news-inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
}

.page.recruit:not(.page-template-terms) .recruit-news {
  border-top: 1px solid #e6e9ed;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin: 0.75em 0;
  width: 100%
}

@media (min-width: 640px) {
  .page.recruit:not(.page-template-terms) .recruit-news {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3
  }
}

.page.recruit:not(.page-template-terms) .recruit-news>li {
  border-bottom: 1px solid #e6e9ed;
  padding: 0.75em 0
}

@media (min-width: 640px) {
  .page.recruit:not(.page-template-terms) .recruit-news>li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }

  .page.recruit:not(.page-template-terms) .recruit-news>li .date {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100px
  }
}

.page.recruit:not(.page-template-terms) .recruit-section[id] {
  overflow: hidden
}

.page.recruit:not(.page-template-terms) .recruit-section h1 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.75;
  margin: 3.5em 0 1.333em;
  padding: 0 1em;
  text-align: center
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-section h1 {
    font-size: calc(1.78571vw + 18.28571px)
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-section h1 {
    font-size: 32px
  }
}

.page.recruit:not(.page-template-terms) .recruit-section h1::after {
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  height: 0;
  margin: 0.75em auto 0;
  width: 32px
}

.page.recruit:not(.page-template-terms) .recruit-stories {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 10px;
  padding-right: 10px
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-stories {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-stories {
    padding-left: 20px;
    padding-right: 20px
  }
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-stories {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    padding-left: calc(-5vw + 68px);
    padding-right: calc(-5vw + 68px)
  }
}

@media (min-width: 1360px) {
  .page.recruit:not(.page-template-terms) .recruit-stories {
    padding-left: 0px;
    padding-right: 0px
  }
}

.page.recruit:not(.page-template-terms) .recruit-stories>li {
  padding: 20px;
  margin: 0 auto;
  max-width: 440px
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-stories>li {
    padding: calc(5vw + -28px)
  }
}

@media (min-width: 1360px) {
  .page.recruit:not(.page-template-terms) .recruit-stories>li {
    padding: 40px
  }
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-stories>li {
    width: 33.33333%
  }
}

.page.recruit:not(.page-template-terms) .recruit-stories>li>a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%
}

.page.recruit:not(.page-template-terms) .recruit-stories>li>a figure {
  overflow: hidden
}

.page.recruit:not(.page-template-terms) .recruit-stories>li>a figure img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page.recruit:not(.page-template-terms) .recruit-stories>li>a:hover figure img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.page.recruit:not(.page-template-terms) .recruit-stories figure {
  position: relative;
  left: -10px;
  z-index: 2
}

.page.recruit:not(.page-template-terms) .recruit-stories .card-body {
  background: #f5f7fa;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  left: 10px;
  margin-top: -20px;
  padding: 40px 30px 30px;
  position: relative
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-stories .card-body {
    padding: 40px calc(3.125vw + 20px) calc(3.125vw + 20px)
  }
}

@media (min-width: 480px) {
  .page.recruit:not(.page-template-terms) .recruit-stories .card-body {
    padding: 40px 35px 35px
  }
}

.page.recruit:not(.page-template-terms) .recruit-stories .card-body h2 {
  font-weight: bold;
  margin-bottom: 4px
}

.page.recruit:not(.page-template-terms) .recruit-stories .card-body p {
  font-size: 14px
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-system {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}

.page.recruit:not(.page-template-terms) .recruit-system>li {
  padding: 20px;
  margin: 0 auto;
  max-width: 520px
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-system>li {
    padding: calc(5vw + -28px)
  }
}

@media (min-width: 1360px) {
  .page.recruit:not(.page-template-terms) .recruit-system>li {
    padding: 40px
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-system>li {
    margin: 0
  }
}

.page.recruit:not(.page-template-terms) .recruit-system>li a {
  display: block
}

.page.recruit:not(.page-template-terms) .recruit-system>li a h2 {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.page.recruit:not(.page-template-terms) .recruit-system>li a:hover h2 {
  background-position: -100%
}

.page.recruit:not(.page-template-terms) .recruit-system>li h2 {
  color: #fff;
  font-size: 18px;
  margin: 0 40px;
  padding: 22px 0.5em;
  position: relative;
  text-align: center
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-system>li h2 {
    margin: 0 calc(3.125vw + 20px)
  }
}

@media (min-width: 480px) {
  .page.recruit:not(.page-template-terms) .recruit-system>li h2 {
    margin: 0 35px
  }
}

.page.recruit:not(.page-template-terms) .recruit-system>li p {
  background: #f5f7fa;
  font-size: 14px;
  margin-top: -40px;
  padding: 60px 30px 30px
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-system>li p {
    padding: 60px calc(3.125vw + 20px) calc(3.125vw + 20px)
  }
}

@media (min-width: 480px) {
  .page.recruit:not(.page-template-terms) .recruit-system>li p {
    padding: 60px 35px 35px
  }
}

.page.recruit:not(.page-template-terms) .recruit-system>li p::after {
  color: #06b;
  content: " 続きを読む"
}

.page.recruit:not(.page-template-terms) .recruit-interviews {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left: 10px;
  padding-right: 10px
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews {
    padding-left: 40px;
    padding-right: 40px
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews {
    padding-left: 20px;
    padding-right: 20px
  }
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews {
    padding-left: calc(-5vw + 68px);
    padding-right: calc(-5vw + 68px)
  }
}

@media (min-width: 1360px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews {
    padding-left: 0px;
    padding-right: 0px
  }
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li {
  padding: 20px;
  max-width: 440px;
  margin: 0 auto
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews>li {
    padding: calc(5vw + -28px)
  }
}

@media (min-width: 1360px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews>li {
    padding: 40px
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews>li {
    width: 50%
  }
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews>li {
    width: 33.33333%
  }
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li>a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li>a:not(.disabled) figure {
  overflow: hidden
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li>a:not(.disabled) figure img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li>a:not(.disabled):hover figure img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li>a:not(.disabled) h2 {
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li>a:not(.disabled):hover h2 {
  background-position: -100%
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li figure {
  left: -10px;
  position: relative;
  z-index: 2
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li h2 {
  background: #06b;
  color: #fff;
  margin: -30px 0 0;
  padding: 14px 0.5em;
  position: relative;
  text-align: center;
  z-index: 3
}

@media (min-width: 360px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews>li h2 {
    margin-left: 30px;
    margin-right: 30px
  }
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li p {
  background: #f5f7fa;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  font-size: 14px;
  left: 10px;
  margin-top: -50px;
  padding-top: 70px;
  position: relative
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews>li p {
    padding: 70px calc(3.125vw + 20px) calc(3.125vw + 20px)
  }
}

@media (min-width: 480px) {
  .page.recruit:not(.page-template-terms) .recruit-interviews>li p {
    padding: 70px 35px 35px
  }
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li p::after {
  color: #06b;
  content: " 続きを読む"
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li p .comingsoon {
  color: #da4453;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.page.recruit:not(.page-template-terms) .recruit-interviews>li .disabled p::after {
  content: none
}

.page.recruit:not(.page-template-terms) .faq-button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #06b), color-stop(50%, #004a88));
  background-image: linear-gradient(to right, #06b 50%, #004a88 50%);
  background-size: 200% 100%;
  background-position: 0;
  -webkit-transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  border: 0;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  transition: background-position 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  font-size: 18px;
  padding: 17.4px 1em;
  display: block;
  width: 100%;
  margin-top: 30px;
  max-width: 360px;
  margin: 0 20px;
  width: auto
}

.page.recruit:not(.page-template-terms) .faq-button:hover {
  background-position: -100%
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .faq-button {
    margin-top: calc(10.9375vw + -5px)
  }
}

@media (min-width: 960px) {
  .page.recruit:not(.page-template-terms) .faq-button {
    margin-top: 100px
  }
}

@media (min-width: 400px) {
  .page.recruit:not(.page-template-terms) .faq-button {
    margin-left: auto;
    margin-right: auto
  }
}

.page.recruit:not(.page-template-terms) .faq-button::before {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "" " "
}

.page.recruit:not(.page-template-terms) .entry-content {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 1px
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .entry-content {
    padding-left: 40px;
    padding-right: 40px
  }
}

.page.recruit:not(.page-template-terms) .entry-content h1 {
  font-size: 20px
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .entry-content h1 {
    font-size: calc(2.67857vw + 11.42857px)
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .entry-content h1 {
    font-size: 32px
  }
}

.page.recruit:not(.page-template-terms) .entry-content h1 br {
  display: none
}

@media (min-width: 480px) {
  .page.recruit:not(.page-template-terms) .entry-content h1 br {
    display: block
  }
}

.page.recruit:not(.page-template-terms) .entry-content h2::before {
  content: none
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .entry-content .img-1 {
    float: right;
    margin-top: 0;
    margin-left: 20px;
    max-width: 50%;
    padding-left: 20px
  }
}

.page.recruit:not(.page-template-terms) .entry-content .credit {
  margin-top: 4em;
  text-align: right
}

.page.recruit:not(.page-template-terms) .entry-content .credit em {
  font-size: 18px;
  font-weight: bold
}

.page.recruit:not(.page-template-terms) .entry-content .brand-identity {
  font-size: 24px;
  clear: both;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-align: center
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .entry-content .brand-identity {
    font-size: calc(3.57143vw + 12.57143px)
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .entry-content .brand-identity {
    font-size: 40px
  }
}

.page.recruit:not(.page-template-terms) .entry-content .brand-identity::after {
  content: none
}

.page.recruit:not(.page-template-terms) .entry-content .brand-identity small {
  font-size: 14px;
  color: #06b;
  display: block;
  font-weight: 500
}

@media (min-width: 320px) {
  .page.recruit:not(.page-template-terms) .entry-content .brand-identity small {
    font-size: calc(.44643vw + 12.57143px)
  }
}

@media (min-width: 768px) {
  .page.recruit:not(.page-template-terms) .entry-content .brand-identity small {
    font-size: 16px
  }
}

.page.recruit:not(.page-template-terms) .entry-content .brand-identity em {
  display: block;
  white-space: nowrap
}

.faq-list {
  border-top: 1px solid #e6e9ed;
  margin-top: 110px
}

.faq-list.initial>li {
  padding: 0
}

.faq-list.initial .answer {
  display: none
}

.faq-list>li {
  border-bottom: 1px solid #e6e9ed;
  padding: 1em 0;
  -webkit-transition: padding 0.2s ease-in-out;
  transition: padding 0.2s ease-in-out
}

.faq-list>li.open {
  padding: 1em 0
}

.faq-list>li.open .question::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.faq-list p {
  margin: 1em 0
}

.faq-list a {
  color: #06b
}

.faq-list a:hover {
  text-decoration: underline
}

.faq-list .question,
.faq-list .answer {
  padding-left: 1.5em;
  position: relative
}

.faq-list .question .q,
.faq-list .question .a,
.faq-list .answer .q,
.faq-list .answer .a {
  position: absolute;
  left: 0
}

.faq-list .question .q+*,
.faq-list .question .a+*,
.faq-list .answer .q+*,
.faq-list .answer .a+* {
  margin-top: 0
}

.faq-list .question {
  color: #06b;
  cursor: pointer;
  font-weight: bold;
  padding: 1em 1.5em
}

.faq-list .question::after {
  font-family: 'kitahamaicon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "";
  display: inline-block;
  line-height: 2;
  position: absolute;
  right: 0;
  top: 1em;
  -webkit-transition: -webkit-transform 0.2s ease-in-out;
  transition: -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
  width: 1em
}

.faq-list .question:hover {
  text-decoration: underline
}

body.contact {
  overflow: hidden
}

body.contact input:not([type="submit"]):not([type="button"]),
body.contact select,
body.contact textarea,
body.subscription input:not([type="submit"]):not([type="button"]):not([type="radio"]),
body.subscription select,
body.subscription textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  background: #f5f7fa
}

body.contact input:not([type="submit"]):not([type="button"]).wpcf7c-conf,
body.contact select.wpcf7c-conf,
body.contact textarea.wpcf7c-conf,
body.subscription input:not([type="submit"]):not([type="button"]):not([type="radio"]).wpcf7c-conf,
body.subscription select.wpcf7c-conf,
body.subscription textarea.wpcf7c-conf {
  background: none
}

body.contact input:not([type="submit"]):not([type="button"]),
body.subscription input:not([type="submit"]):not([type="button"]):not([type="radio"]) {
  width: 100%;
  padding: 0.25em 0.75em
}

body.contact textarea,
body.subscription textarea {
  padding: 0.75em;
  resize: vertical;
  width: 100%
}

body.contact select,
body.subscription select {
  background-image: url(../images/chevron-down.svg);
  background-repeat: no-repeat;
  background-position: right 0.75em center;
  background-size: 16px;
  padding: 0.25em 2.5em 0.25em 0.75em;
  position: relative;
  width: 100%
}

body.contact .contact-form-note,
body.subscription .contact-form-note {
  border-bottom: 1px solid #e6e9ed;
  font-size: 15px;
  margin-top: 40px;
  padding-bottom: 40px
}

@media (min-width: 768px) {

  body.contact .contact-form-note,
  body.subscription .contact-form-note {
    margin-top: 50px;
    padding-bottom: 50px
  }
}

@media (min-width: 1200px) {

  body.contact .contact-form-note,
  body.subscription .contact-form-note {
    margin-top: 60px;
    padding-bottom: 60px
  }
}

@media (min-width: 768px) {

  body.contact .form-list,
  body.subscription .form-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }

  body.contact .form-list dd,
  body.subscription .form-list dd {
    margin-top: 1em;
    padding-top: 1em;
    width: 66.67%
  }
}

body.contact .form-list dt,
body.subscription .form-list dt {
  font-weight: bold;
  margin-top: 1em;
  margin-bottom: 0.5em;
  padding-top: 1em
}

@media (min-width: 768px) {

  body.contact .form-list dt,
  body.subscription .form-list dt {
    padding-top: 1.25em;
    width: 33.33%
  }
}

body.contact .form-list dt.required::after,
body.subscription .form-list dt.required::after {
  color: #da4453;
  content: " *"
}

body.contact .form-list .name,
body.subscription .form-list .name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

body.contact .form-list .name .wpcf7-form-control-wrap,
body.subscription .form-list .name .wpcf7-form-control-wrap {
  width: calc(50% - 10px)
}

body.contact .form-list .name .wpcf7-form-control-wrap+.wpcf7-form-control-wrap,
body.subscription .form-list .name .wpcf7-form-control-wrap+.wpcf7-form-control-wrap {
  margin-left: 20px
}

body.contact .form-list .prefecture,
body.contact .form-list .postcode,
body.subscription .form-list .prefecture,
body.subscription .form-list .postcode {
  display: block;
  width: calc(50% - 10px)
}

body.contact .form-list .example,
body.subscription .form-list .example {
  color: #aab2bd;
  display: block;
  font-size: 14px;
  margin-top: 0.5em;
  width: 100%
}

body.contact .button-wrap,
body.subscription .button-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-left: -10px;
  margin-right: -10px;
  position: relative
}

body.contact .button-wrap .button,
body.subscription .button-wrap .button {
  margin: 10px
}

body.contact .button-wrap .ajax-loader,
body.subscription .button-wrap .ajax-loader {
  background-color: rgba(255, 255, 255, 0.8);
  background-repeat: no-repeat;
  background-position: center;
  height: 100%;
  position: absolute;
  width: 100%
}

body.contact .wpcf7-not-valid-tip,
body.subscription .wpcf7-not-valid-tip {
  color: #da4453;
  font-size: 14px;
  margin-top: 0.5em
}

.wpcf7 form.sent .wpcf7-response-output,
body.contact .wpcf7-validation-errors,
body.contact .wpcf7-mail-sent-ok,
body.subscription .wpcf7-validation-errors,
body.subscription .wpcf7-mail-sent-ok {
  border: 0;
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  margin-left: 0;
  margin-right: 0;
  padding: 0.5em;
  text-align: center
}

body.contact .wpcf7-validation-errors,
body.subscription .wpcf7-validation-errors {
  background: #da4453
}

.wpcf7 form.sent .wpcf7-response-output,
body.contact .wpcf7-mail-sent-ok,
body.subscription .wpcf7-mail-sent-ok {
  background: #16a085
}

body.contact .custom-wpcf7c-confirmed textarea,
body.subscription .custom-wpcf7c-confirmed textarea {
  resize: none
}

body.contact .custom-wpcf7c-confirmed .example,
body.subscription .custom-wpcf7c-confirmed .example {
  display: none
}

.contact-agreement-outer {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: rgba(238, 238, 238, 0.95);
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  left: 0;
  overflow: auto;
  padding: 0 6px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 9999
}

.contact-agreement-outer::before,
.contact-agreement-outer::after {
  height: 6px;
  content: "";
  display: block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%
}

@media (min-width: 812px) {

  .contact-agreement-outer::before,
  .contact-agreement-outer::after {
    height: calc(16.03774vw + -124.22642px)
  }
}

@media (min-width: 1024px) {

  .contact-agreement-outer::before,
  .contact-agreement-outer::after {
    height: 40px
  }
}

.contact-agreement {
  padding-top: 30px;
  padding-bottom: 30px;
  padding-left: 20px;
  padding-right: 20px;
  background: #fff;
  -webkit-box-shadow: 0 10px 60px -25px;
  box-shadow: 0 10px 60px -25px;
  font-size: 14px;
  max-width: 800px
}

@media (min-width: 320px) {
  .contact-agreement {
    padding-top: calc(2.23214vw + 22.85714px)
  }
}

@media (min-width: 768px) {
  .contact-agreement {
    padding-top: 40px
  }
}

@media (min-width: 320px) {
  .contact-agreement {
    padding-bottom: calc(2.23214vw + 22.85714px)
  }
}

@media (min-width: 768px) {
  .contact-agreement {
    padding-bottom: 40px
  }
}

@media (min-width: 320px) {
  .contact-agreement {
    padding-left: calc(4.46429vw + 5.71429px)
  }
}

@media (min-width: 768px) {
  .contact-agreement {
    padding-left: 40px
  }
}

@media (min-width: 320px) {
  .contact-agreement {
    padding-right: calc(4.46429vw + 5.71429px)
  }
}

@media (min-width: 768px) {
  .contact-agreement {
    padding-right: 40px
  }
}

.contact-agreement :first-child {
  margin-top: 0
}

.button-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.button-group .button {
  margin: 10px;
}


.page.topics .copy,
.page.topics .description {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px
}

@media (min-width: 768px) {

  .page.topics .copy,
  .page.topics .description {
    padding-left: 40px;
    padding-right: 40px
  }
}

.page.topics .copy {
  font-size: 24px;
  font-weight: bold;
  margin: 3em auto 1em;
  position: relative;
  text-align: center;
  white-space: nowrap
}

@media (min-width: 320px) {
  .page.topics .copy {
    font-size: calc(5vw + 8px)
  }
}

@media (min-width: 480px) {
  .page.topics .copy {
    font-size: 32px
  }
}

.page.topics .copy::after {
  border-bottom: 2px solid #06b;
  content: "";
  display: block;
  height: 0;
  margin: 0.5em auto 0;
  width: 40px
}

.page.topics .searchform {
  margin: 40px auto;
  max-width: 520px;
  padding: 0 30px;
  display: none\0;
  display: none\9
}

@media (min-width: 768px) {
  .page.topics .searchform {
    margin: 60px auto;
    padding: 0 40px
  }
}

.page.topics .topics {
  -webkit-animation: fadeIn 0s linear 0.25s both;
  animation: fadeIn 0s linear 0.25s both;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: auto;
  margin-top: 40px;
  max-width: 1920px;
  padding: 0 15px
}

@media (min-width: 768px) {
  .page.topics .topics {
    margin-top: 60px;
    padding: 0 20px
  }
}

.page.topics .topics>li {
  padding: 15px
}

@media (min-width: 768px) {
  .page.topics .topics>li {
    width: 50%;
    padding: 20px
  }
}

@media (min-width: 1320px) {
  .page.topics .topics>li {
    width: 33.33333%
  }
}

.page.topics .topics>li a {
  display: block
}

.page.topics .topics>li a figure {
  overflow: hidden
}

.page.topics .topics>li a figure img {
  -webkit-transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1);
  transition: all 1.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.page.topics .topics>li a:hover figure img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.page.topics .topics>li .name {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 0.5em
}

.page.topics .topics>li .name em {
  display: block
}

.page.topics .topics>li .name small {
  color: #06b;
  display: block;
  font-weight: 400
}

.page.topics .topics>li .heading {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #656d78;
  font-size: 14px;
  line-height: 1.5;
  margin-top: 0.25em
}

/* ----------------------------- */
/* Cross Border Talk */
/* ----------------------------- */

.inline-block {
  display: inline-block;
}

.cross-list {
  overflow-x: hidden;
  margin: 0 auto;
  max-width: 1170px;
}

@media (min-width: 1024px) {
  .cross-list {
    padding: 0 40px;
  }
}

.cross-list__message {
  padding: 30px;
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
}

@media (min-width: 768px) {
  .cross-list__message {
    padding: 40px;
  }
}

@media (min-width: 1024px) {
  .cross-list__message {
    padding: 80px 40px 60px;
  }
}

.cross__br--sp {
  display: block;
}

@media (min-width: 768px) {
  .cross__br--sp {
    display: none;
  }
}

.cross__br--pc {
  display: none;
}

@media (min-width: 768px) {
  .cross__br--pc {
    display: block;
  }
}

@media (min-width: 1024px) {
  .cross-list__contents {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 50px;
  }
}

.cross-sidebar {
  display: none;
}

@media (min-width: 1024px) {
  .cross-sidebar {
    display: flex;
    flex-direction: column;
    gap: 120px;
  }
}

.cross-sidebar__item-title {
  padding: 8px 16px;
  font-size: 24px;
  font-weight: bold;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #06b;
  letter-spacing: 0.05em;
  border-top: 2px solid #06b;
  border-bottom: 2px solid #06b;
}

.cross-sidebar__item-list {
  padding-left: 24px;
}

.cross-sidebar__item-list-item-link {
  padding: 24px 16px 8px;
  display: block;
  border-bottom: 1px solid #000;
  transition: color 0.3s, border-bottom 0.3s;
}

.cross-sidebar__item-list-item-link:hover {
  color: #06b;
  border-bottom: 1px solid #06b;
}

.cross-sidebar__date {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.8;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.cross-sidebar__item-list-item-title {
  font-size: 18px;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

.cross-list__list {
  display: grid;
  gap: 50px;
}

.cross-list__item:not(:first-child) {
  position: relative;
}

.cross-list__item:not(:first-child)::before {
  content: "";
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  width: 90px;
  height: 1px;
  background-color: #000;
}

.cross {
  max-width: 994px;
  margin: 0 auto;
  color: #000;
}

.cross__head {
  display: grid;
  place-items: center;
  padding: 20px 0;
  font-size: 10px;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  border-bottom: 1px solid #000;
  letter-spacing: 0.3em;
}

@media (min-width: 1024px) {
  .cross__head {
    font-size: 10px;
    line-height: 45px;
    padding: 40px 0 13px;
  }
}

.cross__title-wrapper {
  margin-top: 4px;
  padding: 20px 16px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

@media (min-width: 768px) {
  .cross__title-wrapper {
    display: grid;
    grid-template-columns: 140px 1fr;
  }
}

@media (min-width: 1024px) {
  .cross__title-wrapper {
    padding: 16px 0;
    grid-template-columns: 160px 1fr;
  }
}

.cross__title-theme {
  display: none;
}

@media (min-width: 768px) {
  .cross__title-theme {
    display: grid;
    place-items: center;
    font-size: 10px;
    font-weight: bold;
    border-right: 1px solid #000;
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0.3em;
  }
}

@media (min-width: 1024px) {
  .cross__title-theme {
    font-size: 10px;
  }
}

.cross__title {
  font-size: 24px;
  line-height: 40px;
  font-weight: 500;
  display: grid;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  color: #3E3E3E;
}

@media (min-width: 768px) {
  .cross__title {
    padding: 20px 50px;
  }
}

@media (min-width: 1024px) {
  .cross__title {
    font-size: 30px;
    line-height: 50px;
    padding: 20px 54px;
  }
}

.cross__contents {
  padding: 40px 16px;
}

@media (min-width: 768px) {
  .cross__contents {
    padding: 62px 24px;
  }
}

@media (min-width: 1024px) {
  .cross__contents {
    padding: 62px 52px;
  }
}

.cross__read {}

.cross__section {
  margin-top: 40px;
  padding-top: 60px;
  background-image: repeating-linear-gradient(90deg,
      #727171 0,
      #727171 1px,
      transparent 0.25px,
      transparent 16px);
  background-size: 16px 10px;
  background-repeat: repeat-x;
  background-position: top;
  column-count: 1;
  column-gap: 16px;
}

@media (min-width: 768px) {
  .cross__section {
    margin-top: 80px;
    padding-top: 92px;
    column-count: 2;
    column-gap: 24px;
  }
}

@media (min-width: 1024px) {
  .cross__section {
    column-gap: 48px;
  }
}

.cross__section--no-border {
  background-image: none;
  padding-top: 0;
}

.cross__section>* {
  padding-bottom: 16px;
}

@media (min-width: 768px) {
  .cross__section>* {
    padding-bottom: 24px;
  }
}

@media (min-width: 1024px) {
  .cross__section>* {
    padding-bottom: 32px;
  }
}

.cross__text {
  font-size: 16px;
  line-height: 28px;
}

.cross__text--bold {
  font-weight: bold;
}

.cross__heading {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
}

.cross__heading:not(:first-child) {
  margin-top: 16px;
}

@media (min-width: 1024px) {
  .cross__heading {
    font-size: 25px;
    line-height: 36px;
    padding-bottom: 56px;
  }

  .cross__heading:not(:first-child) {
    margin-top: 24px;
  }
}

.cross__profile-wrapper {
  margin-top: 16px;
  padding: 24px 16px 0;
  border-top: 1px solid #000;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}

@media (min-width: 768px) {
  .cross__profile-wrapper {
    padding: 24px 24px 0;
    grid-template-columns: repeat(2, 1fr);
    gap: 48px;
  }
}

@media (min-width: 1024px) {
  .cross__profile-wrapper {
    padding: 40px 24px 0;
    grid-template-columns: repeat(3, 1fr);
    gap: 80px;
  }
}

.cross__profile {
  position: relative;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}

.cross__profile--vol1 {
  grid-row: span 3;
}

.cross__profile:not(:first-of-type) {
  margin-top: 40px;
  padding-top: 24px;
  border-top: 1px solid #000;
}

@media (min-width: 768px) {
  .cross__profile:not(:first-of-type) {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
  }

  .cross__profile:nth-of-type(2n)::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: -24px;
    width: 1px;
    height: 100%;
    background-color: #333;
  }

  .cross__profile:nth-of-type(n + 3)::after {
    display: block;
    content: "";
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% + 48px);
    height: 1px;
    background-color: #333;
  }
}

@media (min-width: 1024px) {
  .cross__profile:nth-of-type(2n)::before {
    display: none;
  }

  .cross__profile:nth-of-type(n + 3)::after {
    display: none;
  }

  .cross__profile:not(:nth-of-type(3n - 2))::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: -40px;
    width: 1px;
    height: 100%;
    background-color: #333;
  }

  .cross__profile:nth-of-type(n + 4)::after {
    display: block;
    content: "";
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% + 80px);
    height: 1px;
    background-color: #333;
  }
}

.cross__profile-inner {
  grid-template-rows: subgrid;
  grid-row: span 3;
}

.cross__profile-head {
  display: grid;
  grid-template-columns: 100px 1fr;
  align-items: center;
  gap: 12px;
}

@media (min-width: 768px) {
  .cross__profile-head {
    grid-template-columns: 92px 1fr;
    gap: 10px;
  }
}



.cross__profile-image {
  width: 100%;
  object-fit: contain;
  object-position: center bottom;
}

.cross__profile-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.cross__profile-info {
  padding-bottom: 16px;
}

.cross__profile-name {
  font-size: 20px;
  font-weight: bold;
  text-align: right;
}

.cross__profile-position {
  font-size: 12px;
  font-weight: bold;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .cross__profile-position {
    /* min-height: 24px; */
  }
}

.cross__profile-content {
  padding: 16px 0;
  border-top: 1px solid #000;
}

.cross__profile-text {
  font-size: 14px;
  line-height: 1.5;
}

.cross__profile-office {
  padding-top: 8px;
  border-top: 1px solid #000;
}

@media (min-width: 768px) {
  .cross__profile-office {
    grid-template-columns: 1fr 120px;
  }
}

.cross__profile-office-text {
  padding-bottom: 8px;
}

.cross__profile-office-name {
  font-size: 22px;
  font-weight: bold;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.2;
}



.cross__profile-office-building {
  font-size: 14px;
  line-height: 1.2;
}

.cross__pagination-wrapper {
  margin-top: 40px;
  padding: 4px 16px;
  display: grid;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  position: relative;
}

@media (min-width: 768px) {
  .cross__pagination-wrapper {
    grid-template-columns: 1fr 1fr;
    padding: 24px 24px;
  }
}

.cross__pagination-wrapper::before,
.cross__pagination-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #333;
}

.cross__pagination-wrapper::before {
  top: 4px;
}

@media (min-width: 768px) {
  .cross__pagination-wrapper::before {
    top: 6px;
  }
}

.cross__pagination-wrapper::after {
  bottom: 4px;
}

@media (min-width: 768px) {
  .cross__pagination-wrapper::after {
    bottom: 6px;
  }
}

.cross__pagination-prev {
  border-bottom: 1px solid #000;
}

@media (min-width: 768px) {
  .cross__pagination-prev {
    border-bottom: none;
    border-right: 1px solid #000;
  }
}

.cross__pagination-link {
  padding: 12px 0;
  display: grid;
  place-items: center;
  font-size: 16px;
  font-weight: bold;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
}

@media (min-width: 768px) {
  .cross__pagination-link {
    padding: 6px 0;
  }
}

.cross__link-back {
  margin-top: 24px;
  display: grid;
  place-items: center;
}

@media (min-width: 768px) {
  .cross__link-back {
    margin-top: 40px;
  }
}

.cross__link-back-link {
  margin: 0 auto;
  width: 200px;
  height: 60px;
  display: grid;
  place-items: center;
  color: #000;
  cursor: pointer;
  outline: 1px solid #000;
}

.cross__link-back-text {
  font-size: 16px;
  font-weight: 500;
  font-family: "Roboto", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}