@charset "UTF-8";
/*
**  ===================================================================
**  各種設定：var,reset,base-font,break-point
**  ===================================================================
*/
/**
 * Foundation
**/
/*
**  ===================================================================
**  foundation CSS ※サイト全体に共通のスタイル
**  ===================================================================
*/
/*!
     * YUI 3.5.0 - reset.css (http://developer.yahoo.com/yui/3/cssreset/)
     * http://cssreset.com
     * Copyright 2012 Yahoo! Inc. All rights reserved.
     * http://yuilibrary.com/license/
     */
/*
        TODO will need to remove settings on HTML since we can't namespace it.
        TODO with the prefix, should I group by selector or property for weight savings?
    */
html {
  color: #414141;
  background: #FFF;
}

/*
        TODO remove settings on BODY since we can't namespace it.
    */
/*
        TODO test putting a class on HEAD.
            - Fails on FF.
    */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

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

fieldset,
img {
  border: 0;
}

/*
        TODO think about hanlding inheritence differently, maybe letting IE6 fail a bit...
    */
address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal;
}

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before,
q:after {
  content: "";
}

abbr,
acronym {
  border: 0;
  font-variant: normal;
}

/* to preserve line-height and selector appearance */
sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

/*to enable resizing for IE*/
input,
textarea,
select {
  *font-size: 100%;
}

/*because legend doesn't inherit in IE */
legend {
  color: #414141;
}

/* YUI CSS Detection Stamp */
#yui3-css-stamp.cssreset {
  display: none;
}

html {
  font-size: 100%;
  line-height: 1.7;
  font-family: "AvenirLTPro-Roman", sans-serif;
  font-size: 16px;
  letter-spacing: 0;
  color: #414141;
  overflow: hidden;
  opacity: 0;
}
html.active {
  opacity: 1;
  overflow: auto;
  transition: all 0.5s;
}

a {
  transition: opacity 0.3s;
  text-transform: none;
  color: #666;
}
a:hover {
  opacity: 0.6;
}

h1, h2, h3, h4, h5, h6, b, strong {
  font-family: "AvenirLTPro-Roman";
  line-height: 1.5;
}

h1 {
  font-size: 44px;
}

h2 {
  font-size: 38px;
  margin-bottom: 48px;
}
@media only screen and (max-width: 480px) {
  h2 {
    font-size: 24px;
    margin-bottom: 20px;
  }
}

h3 {
  font-size: 32px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 480px) {
  h3 {
    font-size: 24px;
    margin-bottom: 20px;
  }
}

h4 {
  font-size: 24px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 480px) {
  h4 {
    font-size: 16px;
    margin-bottom: 20px;
  }
}

h5 {
  font-size: 16px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 480px) {
  h5 {
    font-size: 16px;
    margin-bottom: 20px;
  }
}

h6 {
  font-size: 16px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 480px) {
  h6 {
    font-size: 16px;
    margin-bottom: 20px;
  }
}

p {
  font-family: "AvenirLTPro-Light";
}
p.justify {
  text-align: justify;
}
p .has-small-font-size {
  font-size: 13px;
  line-height: 28px;
}

#fontplus-trial-banner {
  display: none !important;
}

html.jp {
  font-family: "TsukuGoPr5-R-AvenirNextLTPro-Regular", sans-serif;
}
html.jp h1, html.jp h2, html.jp h3, html.jp h4, html.jp h5, html.jp h6, html.jp b, html.jp strong {
  font-family: "TsukuGoPro-B-AvenirNextLTPro-Medium", sans-serif;
}
html.jp p {
  font-family: "TsukuGoPr5-R-AvenirNextLTPro-Regular", sans-serif;
}

body.post-type-archive-post header,
body.single-post header,
body.category header,
body.tag header,
body.page-template-page-policy-php header,
body.page-template-page-ir header,
body:has(.page-desing-contact) header,
body:has(#archive) header,
body:has(#document) header {
  border-bottom: 1px solid #666;
}
body.post-type-archive-post header a,
body.single-post header a,
body.category header a,
body.tag header a,
body.page-template-page-policy-php header a,
body.page-template-page-ir header a,
body:has(.page-desing-contact) header a,
body:has(#archive) header a,
body:has(#document) header a {
  color: #666;
}
body.post-type-archive-post header .header_inner .header_logo h1,
body.single-post header .header_inner .header_logo h1,
body.category header .header_inner .header_logo h1,
body.tag header .header_inner .header_logo h1,
body.page-template-page-policy-php header .header_inner .header_logo h1,
body.page-template-page-ir header .header_inner .header_logo h1,
body:has(.page-desing-contact) header .header_inner .header_logo h1,
body:has(#archive) header .header_inner .header_logo h1,
body:has(#document) header .header_inner .header_logo h1 {
  background: url("../images/synspective_logo_h_light.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
body.post-type-archive-post header .header_inner .contact_btns label,
body.single-post header .header_inner .contact_btns label,
body.category header .header_inner .contact_btns label,
body.tag header .header_inner .contact_btns label,
body.page-template-page-policy-php header .header_inner .contact_btns label,
body.page-template-page-ir header .header_inner .contact_btns label,
body:has(.page-desing-contact) header .header_inner .contact_btns label,
body:has(#archive) header .header_inner .contact_btns label,
body:has(#document) header .header_inner .contact_btns label {
  border: 1px solid #666;
  color: #666;
}
body.post-type-archive-post header .header_inner .contact_btns label svg path,
body.single-post header .header_inner .contact_btns label svg path,
body.category header .header_inner .contact_btns label svg path,
body.tag header .header_inner .contact_btns label svg path,
body.page-template-page-policy-php header .header_inner .contact_btns label svg path,
body.page-template-page-ir header .header_inner .contact_btns label svg path,
body:has(.page-desing-contact) header .header_inner .contact_btns label svg path,
body:has(#archive) header .header_inner .contact_btns label svg path,
body:has(#document) header .header_inner .contact_btns label svg path {
  fill: #666;
}
body.post-type-archive-post header .header_inner .nav_top .language a:after,
body.single-post header .header_inner .nav_top .language a:after,
body.category header .header_inner .nav_top .language a:after,
body.tag header .header_inner .nav_top .language a:after,
body.page-template-page-policy-php header .header_inner .nav_top .language a:after,
body.page-template-page-ir header .header_inner .nav_top .language a:after,
body:has(.page-desing-contact) header .header_inner .nav_top .language a:after,
body:has(#archive) header .header_inner .nav_top .language a:after,
body:has(#document) header .header_inner .nav_top .language a:after {
  content: "";
  width: 1px;
  height: 14px;
  display: block;
  background: #666;
  margin-top: -3px;
}
body.post-type-archive-post header .header_inner .nav_top .language a.jp:after,
body.single-post header .header_inner .nav_top .language a.jp:after,
body.category header .header_inner .nav_top .language a.jp:after,
body.tag header .header_inner .nav_top .language a.jp:after,
body.page-template-page-policy-php header .header_inner .nav_top .language a.jp:after,
body.page-template-page-ir header .header_inner .nav_top .language a.jp:after,
body:has(.page-desing-contact) header .header_inner .nav_top .language a.jp:after,
body:has(#archive) header .header_inner .nav_top .language a.jp:after,
body:has(#document) header .header_inner .nav_top .language a.jp:after {
  display: none;
}
body.post-type-archive-post header .header_inner .navs .menu .sub-menu,
body.single-post header .header_inner .navs .menu .sub-menu,
body.category header .header_inner .navs .menu .sub-menu,
body.tag header .header_inner .navs .menu .sub-menu,
body.page-template-page-policy-php header .header_inner .navs .menu .sub-menu,
body.page-template-page-ir header .header_inner .navs .menu .sub-menu,
body:has(.page-desing-contact) header .header_inner .navs .menu .sub-menu,
body:has(#archive) header .header_inner .navs .menu .sub-menu,
body:has(#document) header .header_inner .navs .menu .sub-menu {
  background: rgba(255, 255, 255, 0.9);
}
@media only screen and (max-width: 960px) {
  body.post-type-archive-post header .menu_btn .desvg line,
body.single-post header .menu_btn .desvg line,
body.category header .menu_btn .desvg line,
body.tag header .menu_btn .desvg line,
body.page-template-page-policy-php header .menu_btn .desvg line,
body.page-template-page-ir header .menu_btn .desvg line,
body:has(.page-desing-contact) header .menu_btn .desvg line,
body:has(#archive) header .menu_btn .desvg line,
body:has(#document) header .menu_btn .desvg line {
    stroke: #0a0a14;
  }
}

header {
  position: fixed;
  top: 0;
  left: 0;
  background: none;
  width: 100%;
  z-index: 100;
  padding: 24px 0 20px;
  color: #fff;
  transition: 0.2s;
  transform: translateY(0%);
}
header.back {
  transform: translateY(-100%);
}
@media only screen and (max-width: 960px) {
  header.back {
    transform: translateY(0%);
  }
}
@media only screen and (max-width: 960px) {
  header {
    height: 56px;
    overflow: hidden;
    padding: 8px 0 0;
  }
  header.active {
    height: 100svh;
    overflow: scroll;
    padding: 8px 0 40px;
  }
}
header a {
  color: #fff;
  text-decoration: none;
}
@media only screen and (max-width: 960px) {
  header a {
    color: #292C2D;
    height: auto;
  }
}
header .header_inner {
  max-width: 1440px;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0 48px;
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: 44px auto;
  grid-column-gap: 0px;
  grid-row-gap: 16px;
}
@media only screen and (max-width: 960px) {
  header .header_inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 0 48px;
    margin-bottom: 104px;
  }
}
@media only screen and (max-width: 480px) {
  header .header_inner {
    padding: 0 20px;
  }
}
header .header_inner .header_logo {
  grid-area: 1/1/2/2;
}
@media only screen and (max-width: 960px) {
  header .header_inner .header_logo {
    order: 1;
  }
}
header .header_inner .header_logo h1 {
  font-size: 10px;
  line-height: 1;
  aspect-ratio: 4382/924;
  height: 42px;
  background: url("../images/synspective_logo_h_dark.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  text-indent: -9999px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .header_logo h1 {
    margin-top: 8px;
    height: 34px;
  }
}
header .header_inner .nav_top {
  grid-area: 1/2/2/3;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media only screen and (max-width: 960px) {
  header .header_inner .nav_top {
    order: 3;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    border-top: 1px solid #CDCDCD;
    padding-top: 24px;
    margin-top: 24px;
    width: 100%;
    padding-left: 12px;
  }
}
header .header_inner .nav_top .menu {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 20px;
  margin-right: 20px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .nav_top .menu {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    margin-top: auto;
    gap: 24px;
  }
}
header .header_inner .nav_top .menu li {
  line-height: 0;
}
header .header_inner .nav_top .menu a {
  font-size: 12px;
  line-height: 18px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .nav_top .menu a {
    font-size: 16px;
  }
}
header .header_inner .nav_top .language {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .nav_top .language {
    margin-top: 36px;
  }
}
header .header_inner .nav_top .language a {
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  line-height: 18px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .nav_top .language a {
    font-size: 16px;
  }
}
header .header_inner .nav_top .language a:after {
  content: "";
  width: 1px;
  height: 14px;
  display: block;
  background: #fff;
  margin-top: -3px;
}
header .header_inner .nav_top .language a.jp:after {
  display: none;
}
header .header_inner .navs {
  grid-area: 2/1/3/2;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 2px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs {
    order: 2;
    flex-direction: column;
    align-items: flex-start;
    border-top: 1px solid #CDCDCD;
    padding-top: 24px;
    margin-top: 24px;
    width: 100%;
  }
}
header .header_inner .navs .menu-menu-1-container {
  height: 100%;
}
header .header_inner .navs .menu {
  display: flex;
  justify-content: flex-start;
  gap: 64px;
  height: 100%;
}
@media only screen and (max-width: 1090px) {
  header .header_inner .navs .menu {
    gap: 32px;
  }
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu {
    flex-direction: column;
    gap: 20px;
  }
}
header .header_inner .navs .menu .current-menu-item {
  display: flex;
  align-items: center;
}
header .header_inner .navs .menu .menu-item-type-custom {
  display: flex;
  align-items: center;
}
header .header_inner .navs .menu .menu-item-object-page {
  display: flex;
  align-items: center;
}
header .header_inner .navs .menu .menu-item-has-children {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu .menu-item-has-children {
    display: block;
  }
}
header .header_inner .navs .menu .sub-menu {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 40px;
  left: -16px;
  width: 326px;
  padding: 14px 18px 10px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 16px;
  pointer-events: none;
  background: rgba(41, 44, 45, 0.9);
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu .sub-menu {
    pointer-events: all;
    opacity: 1;
    width: 100%;
    position: static;
    margin-top: 0px;
    padding: 0 0 0 42px;
    height: 0px;
    overflow: hidden;
    background: none;
  }
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu .sub-menu li {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
}
header .header_inner .navs .menu .sub-menu li a {
  font-size: 16px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu .sub-menu li a {
    margin-left: 12px;
  }
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu .sub-menu li:before {
    content: "";
    width: 12px;
    height: 24px;
    display: block;
    background: url("../images/sub_menu_line.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
}
header .header_inner .navs .menu .menu-item {
  position: relative;
}
header .header_inner .navs .menu .menu-item .sp_toggle_btn {
  display: none;
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu .menu-item .sp_toggle_btn {
    display: block;
    background: url("../images/nav_arrow.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 4px;
    left: 8px;
  }
}
header .header_inner .navs .menu .menu-item a {
  font-size: 20px;
}
@media only screen and (max-width: 960px) {
  header .header_inner .navs .menu .menu-item a {
    font-size: 16px;
    margin-left: 32px;
  }
}
header .header_inner .navs .menu .menu-item:hover .sub-menu {
  opacity: 1;
  pointer-events: all;
}
header .header_inner .navs .menu .menu-item.open .sub-menu {
  margin-top: 24px;
  height: auto;
}
header .header_inner .contact_btns {
  grid-area: 2/2/3/3;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media only screen and (max-width: 960px) {
  header .header_inner .contact_btns.pc {
    visibility: hidden;
    pointer-events: none;
    display: none;
  }
}
header .header_inner .contact_btns.sp {
  visibility: hidden;
  pointer-events: none;
}
@media only screen and (max-width: 960px) {
  header .header_inner .contact_btns.sp {
    visibility: visible;
    pointer-events: all;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 16px 5px;
    border: 1px solid #292C2D;
    margin-left: 12px;
  }
}
@media only screen and (max-width: 960px) {
  header .header_inner .contact_btns {
    order: 4;
    justify-content: flex-start;
    margin-top: 24px;
  }
}
header .header_inner .contact_btns label {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 16px 5px;
  border: 1px solid #fff;
  cursor: pointer;
}
@media only screen and (max-width: 960px) {
  header .header_inner .contact_btns label {
    border: 1px solid #292C2D;
    color: #292C2D;
  }
}
header .header_inner .contact_btns label svg {
  margin-top: -3px;
}
header .header_inner .contact_btns label svg path {
  fill: #fff;
}
@media only screen and (max-width: 960px) {
  header .header_inner .contact_btns label svg path {
    fill: #292C2D;
  }
}
header .header_inner .contact_btns input {
  display: none;
}
header .header_inner .contact_btns .drawer {
  position: fixed;
  top: 0px;
  right: 0;
  width: 100%;
  transition: transform 0.5s;
  height: 100vh;
  overflow: scroll;
  pointer-events: none;
  visibility: hidden;
}
header .header_inner .contact_btns .drawer iframe {
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(100%);
  transition: transform 0.5s;
  z-index: 2;
  max-width: 800px;
  height: 100%;
}
header .header_inner .contact_btns:has(input:checked) .drawer {
  pointer-events: all;
  visibility: visible;
}
header .header_inner .contact_btns:has(input:checked) .drawer iframe {
  transform: translateX(0%);
}
header .header_inner .contact_btns:has(input:checked) .drawer:after {
  content: "";
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
header.black {
  background: #0a0a14;
}
header.black a {
  color: #fff !important;
}
@media only screen and (max-width: 960px) {
  header.black a {
    color: #292C2D !important;
  }
}
header.black .header_inner .header_logo h1 {
  background: url("../images/synspective_logo_h_dark.svg") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center !important;
}
header.black .header_inner .navs .menu .sub-menu {
  background: #292C2D !important;
}
@media only screen and (max-width: 960px) {
  header.black .header_inner .navs .menu .sub-menu {
    background: #fff !important;
  }
}
header.black .header_inner .language a:after {
  background: #fff;
}
@media only screen and (max-width: 960px) {
  header.black .header_inner .language a:after {
    background: #292C2D;
  }
}
header.black .header_inner .contact_btns label {
  border: 1px solid #fff;
  color: #fff !important;
}
header.black .header_inner .contact_btns label svg path {
  fill: #fff !important;
}
@media only screen and (max-width: 960px) {
  header.black .header_inner .contact_btns label svg path {
    fill: #292C2D;
  }
}
header.black .header_inner .contact_btns a {
  border: 1px solid #fff !important;
}
@media only screen and (max-width: 960px) {
  header.black .header_inner .contact_btns a {
    border: 1px solid #000;
  }
}
@media only screen and (max-width: 960px) {
  header.black.active .header_inner .header_logo svg path {
    fill: #292C2D !important;
  }
}
@media only screen and (max-width: 960px) {
  header.black .menu_btn .desvg line {
    stroke: #fff !important;
  }
}
header .menu_btn {
  display: none;
}
@media only screen and (max-width: 960px) {
  header .menu_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    position: absolute;
    right: 48px;
    top: 20px;
  }
  header .menu_btn .desvg line {
    stroke: #fff;
  }
}
@media only screen and (max-width: 480px) {
  header .menu_btn {
    right: 20px;
  }
}
header .menu_close {
  display: none;
}
@media only screen and (max-width: 960px) {
  header .menu_close {
    display: none;
    position: absolute;
    right: 16px;
    top: 20px;
  }
  header .menu_close .desvg line {
    stroke: #292C2D;
  }
}

header.active {
  background: #fff;
}
@media only screen and (max-width: 960px) {
  header.active .menu_btn {
    display: none;
  }
}
@media only screen and (max-width: 960px) {
  header.active .menu_close {
    display: block;
  }
}
@media only screen and (max-width: 960px) {
  header.active .header_inner .header_logo svg path {
    fill: #292C2D !important;
  }
}

html:has(#contact_drawer:checked) {
  overflow: hidden;
  height: 100%;
}

.page-desing-contact {
  padding-top: 120px;
}

#loader-bg {
  display: none;
  position: fixed;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #1B1F53;
  z-index: 1000;
}

#loader {
  display: none;
  width: calc(var(--fluidPx) * 200);
  height: auto;
  text-align: center;
  color: #fff;
  z-index: 1002;
}

#loader svg {
  fill: #fff;
}

body.admin-bar header {
  top: 32px;
}

html.jp header .header_inner .contact_btns label {
  padding: 6px 16px 8px;
}
html.jp header .header_inner .contact_btns label svg {
  margin-top: 0;
}
html.jp header .header_inner .navs {
  margin-top: 0;
}
html.jp header .header_inner .navs .menu .sub-menu {
  top: 44px;
}
@media only screen and (max-width: 960px) {
  html.jp header .header_inner .navs .menu .menu-item .sp_toggle_btn {
    top: 6px;
  }
  html.jp header .header_inner .navs .menu .sub-menu li a {
    margin-top: -4px;
  }
}

body.page-template-page-ir header {
  border-bottom: none;
}

footer#footer {
  max-width: 1440px;
  padding: 32px 48px 0;
  margin: 0 auto;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  footer#footer {
    padding: 20px 20px 0;
  }
}
footer#footer .footer_top {
  border-top: 1px solid #A6ACB1;
  padding-top: 144px;
  width: 100%;
  box-sizing: border-box;
  margin: 80px auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 48px;
  position: relative;
}
@media only screen and (max-width: 748px) {
  footer#footer .footer_top {
    gap: 20px;
    padding-top: 96px;
    margin: 48px auto;
  }
}
footer#footer .footer_top a {
  font-size: 16px;
  line-height: 36px;
  text-decoration: none;
  color: #666;
  font-family: "AvenirLTPro-Light";
}
footer#footer .footer_top .menu-item {
  max-width: calc(25% - 36px);
  min-width: 300px;
  width: 100%;
  margin-bottom: 32px;
}
@media only screen and (max-width: 1440px) {
  footer#footer .footer_top .menu-item {
    max-width: calc(33% - 36px);
  }
}
@media only screen and (max-width: 1090px) {
  footer#footer .footer_top .menu-item {
    max-width: calc(50% - 36px);
  }
}
@media only screen and (max-width: 748px) {
  footer#footer .footer_top .menu-item {
    max-width: 100%;
  }
}
footer#footer .footer_top #sns {
  max-width: calc(25% - 36px);
  min-width: 300px;
}
footer#footer .footer_top #sns .sns_inner {
  display: flex;
  gap: 24px;
  align-items: center;
  justify-content: flex-start;
}
footer#footer .footer_top .sub-menu {
  border-top: 1px solid #CDCDCD;
  padding-top: 16px;
}
footer#footer .footer_top .sub-menu .menu-item {
  width: 100%;
  max-width: 100%;
  margin-bottom: 0;
  line-height: 32px;
  margin-bottom: 12px;
}
footer#footer .footer_top .sub-menu .menu-item a {
  line-height: 2;
}
footer#footer .footer_bottom {
  border-top: 1px solid #CDCDCD;
  width: 100%;
  padding: 32px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 14px;
}
@media only screen and (max-width: 748px) {
  footer#footer .footer_bottom {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
}
footer#footer .footer_bottom .menu-poricy-container {
  padding-right: 32px;
}
footer#footer .footer_bottom .menu-poricy-container ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 32px;
}
@media only screen and (max-width: 748px) {
  footer#footer .footer_bottom .menu-poricy-container ul {
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 24px;
  }
}

#mainvisual {
  margin-top: 0;
  aspect-ratio: 1440/784;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
  min-height: 784px;
  max-width: calc(var(--vw) * 100);
}
@media only screen and (max-width: 480px) {
  #mainvisual {
    height: 100svh;
    min-height: auto;
    aspect-ratio: auto;
  }
}
#mainvisual .slide {
  background-size: cover;
  background-position: center;
  width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: 520px;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  #mainvisual .slide {
    height: 100svh;
    min-height: auto;
    aspect-ratio: auto;
  }
}
#mainvisual .slide .slide_inner {
  max-width: 1440px;
  width: 100%;
  height: 100%;
  padding: 0 48px;
  box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
}
@media only screen and (max-width: 768px) {
  #mainvisual .slide .slide_inner {
    flex-direction: column;
    justify-content: center;
  }
}
@media only screen and (max-width: 480px) {
  #mainvisual .slide .slide_inner {
    padding: 0;
  }
}
#mainvisual .slide .slide_inner .text_block {
  width: 100%;
}
@media only screen and (max-width: 480px) {
  #mainvisual .slide .slide_inner .text_block {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
  }
}
#mainvisual .slide .slide_inner .text_block h1 {
  color: #fcfcfc;
  font-size: 44px;
  margin-bottom: calc(var(--fluidPx) * 20);
  margin-top: 0px;
  font-weight: 400;
  text-shadow: calc(var(--fluidPx) * 0) calc(var(--fluidPx) * 0) calc(var(--fluidPx) * 4) #1B1F53;
  letter-spacing: 0px;
  line-height: 1.5;
}
@media only screen and (max-width: 480px) {
  #mainvisual .slide .slide_inner .text_block h1 {
    font-size: 32px;
  }
}
#mainvisual .slide .slide_inner .text_block p {
  color: #fcfcfc;
  font-size: 20px;
  line-height: 28px;
  font-family: "AvenirLTPro-Light", "TsukuGoPr5-R-AvenirNextLTPro-Regular";
  text-shadow: calc(var(--fluidPx) * 0) calc(var(--fluidPx) * 0) calc(var(--fluidPx) * 4) #1B1F53;
}
#mainvisual .slide .slide_inner .wp-block-buttons {
  margin-bottom: auto;
}
#mainvisual .slide .slide_inner .wp-block-buttons .wp-block-button__link {
  color: #fff;
  border: 1px solid #fff;
  border-radius: 0;
}
#mainvisual .slide .slide_inner .wp-block-buttons .wp-block-button__link:after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 20' fill='none' %3E%3Cline y1='9.5' x2='22' y2='9.5' stroke='%23fff'/%3E%3Cpath d='M14.4272 1L22.2127 9.90158L14.4272 18.8037' stroke='%23fff'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center !important;
  margin-top: -3px;
}
#mainvisual .slide figure {
  position: absolute;
  font-size: 12px;
  color: #fff;
  bottom: 20px;
  right: 20px;
  z-index: 2;
}
#mainvisual .slide .video {
  width: 100%;
  height: 100%;
}
#mainvisual .slide .video .slide-video {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
#mainvisual .slick-list {
  height: 100%;
}
#mainvisual .slick-list .slick-track {
  height: 100%;
}
#mainvisual .slick-next {
  z-index: 5;
  right: 40px;
  z-index: 5;
  width: 24px;
  height: auto;
  aspect-ratio: 47/83;
}
@media only screen and (max-width: 1280px) {
  #mainvisual .slick-next {
    right: 16px;
  }
}
@media only screen and (max-width: 768px) {
  #mainvisual .slick-next {
    right: 8px;
    width: 16px;
  }
}
#mainvisual .slick-next:before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../images/mav_arrow.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: none;
}
#mainvisual .slick-prev {
  z-index: 5;
  left: 40px;
  width: 24px;
  height: auto;
  aspect-ratio: 47/83;
}
@media only screen and (max-width: 1280px) {
  #mainvisual .slick-prev {
    left: 16px;
  }
}
@media only screen and (max-width: 768px) {
  #mainvisual .slick-prev {
    left: 8px;
    width: 16px;
  }
}
#mainvisual .slick-prev:before {
  content: "";
  width: 100%;
  height: 100%;
  background: url("../images/mav_arrow.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: none;
  transform: rotate(180deg);
}
#mainvisual .slick-dots {
  bottom: calc(var(--fluidPx) * 24);
}
#mainvisual .slick-dots li {
  position: relative;
  width: 24px;
  height: 24px;
  background: transparent;
  border-radius: 50%;
  text-align: center;
  overflow: hidden;
  z-index: 1;
}
#mainvisual .slick-dots li.slick-active {
  background: #6fadbd;
}
#mainvisual .slick-dots li.slick-active::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -12px;
  width: 24px;
  height: 24px;
  background: black;
  transform-origin: right 12px;
  z-index: 2;
  animation: rotate-circle-left 15s linear forwards;
}
#mainvisual .slick-dots li.slick-active::after {
  content: "";
  display: block;
  position: absolute;
  top: 0px;
  left: 12px;
  width: 24px;
  height: 24px;
  background: black;
  transform-origin: left 12px;
  z-index: 3;
  animation: rotate-circle-right 15s linear forwards;
}
#mainvisual .slick-dots li.slick-active button {
  position: absolute;
  background: black !important;
  border-radius: 50%;
  z-index: 4;
}
#mainvisual .slick-dots li.slick-active button:before {
  content: "";
  background: #6fadbd;
  position: absolute;
}
#mainvisual .slick-dots li button {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 20px;
  height: 20px;
  padding-top: 7px;
  background: transparent;
  border-radius: 50%;
  z-index: 4;
}
#mainvisual .slick-dots li button:before {
  content: "";
  width: 10px;
  height: 10px;
  background: transparent;
  border: 2px solid #6fadbd;
  position: absolute;
  box-sizing: border-box;
  top: 5px;
  left: 5px;
  border-radius: 50%;
  z-index: 4;
}
#mainvisual .btn_block {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
#mainvisual .btn_block a {
  margin-right: calc(var(--fluidPx) * 48);
}
@keyframes rotate-circle-right {
  0% {
    transform: rotate(0deg);
    background: black;
  }
  50% {
    transform: rotate(180deg);
    background: black;
  }
  50.01% {
    transform: rotate(360deg);
    background: #6fadbd;
  }
  100% {
    transform: rotate(360deg);
    background: #6fadbd;
  }
}
@keyframes rotate-circle-left {
  0% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(180deg);
  }
}
.recent_post_block {
  margin-bottom: 96px;
}
.recent_post_block h2 {
  font-size: 36px;
  color: #414141;
}

.post_col {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .post_col {
    gap: 24px;
  }
}
@media (max-width: 480px) {
  .post_col {
    flex-direction: column;
    justify-content: flex-start;
  }
}
.post_col .thumb {
  width: 31%;
  min-width: 0;
}
.post_col .thumb:nth-child(n+4) {
  margin-top: 48px;
}
@media (max-width: 768px) {
  .post_col .thumb:nth-child(n+4) {
    margin-top: 0;
  }
}
@media only screen and (max-width: 768px) {
  .post_col .thumb {
    width: calc(50% - 12px);
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 480px) {
  .post_col .thumb {
    width: 100%;
  }
}
.post_col .thumb a {
  text-decoration: none;
}
.post_col .thumb .img {
  aspect-ratio: 416/215;
  overflow: hidden;
  margin-bottom: 14px;
  background: #F9F9F9;
}
.post_col .thumb .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.post_col .thumb .title {
  margin-top: 24px;
  margin-bottom: 14px;
  font-size: 16px;
  color: #191919;
  font-family: "AvenirLTPro-Roman";
}
@media only screen and (max-width: 480px) {
  .post_col .thumb .title {
    margin-top: 20px;
    margin-bottom: 10px;
  }
}
.post_col .thumb .meta {
  font-size: 14px;
  color: #7E7E7E;
  font-family: "AvenirLTPro-Roman";
}

.wp-block-heading {
  padding-top: 48px;
}
@media only screen and (max-width: 480px) {
  .wp-block-heading {
    padding-top: 20px;
  }
}

.wp-block-columns {
  padding: 48px 0;
  margin-bottom: 0 !important;
  gap: 48px;
}
@media only screen and (max-width: 480px) {
  .wp-block-columns {
    padding: 20px 0 40px;
    gap: 0;
  }
}
@media (max-width: 781px) {
  .wp-block-columns.wp-block-columns-is-layout-flex {
    flex-basis: 19% !important;
  }
}
@media (max-width: 480px) {
  .wp-block-columns.wp-block-columns-is-layout-flex {
    flex-basis: 100% !important;
  }
}
@media (max-width: 781px) {
  .wp-block-columns.sp-reverse {
    flex-direction: column-reverse;
  }
}
.wp-block-columns .wp-block-heading {
  padding-top: 0;
}
.wp-block-columns h2:first-child, .wp-block-columns h3:first-child, .wp-block-columns h4:first-child, .wp-block-columns h5:first-child, .wp-block-columns h6:first-child {
  margin-top: -0.15em;
}
.wp-block-columns h2:first-child.mt-clear, .wp-block-columns h3:first-child.mt-clear, .wp-block-columns h4:first-child.mt-clear, .wp-block-columns h5:first-child.mt-clear, .wp-block-columns h6:first-child.mt-clear {
  margin-top: 0 !important;
}
@media only screen and (max-width: 480px) {
  .wp-block-columns h2:first-child, .wp-block-columns h3:first-child, .wp-block-columns h4:first-child, .wp-block-columns h5:first-child, .wp-block-columns h6:first-child {
    margin-top: 0;
  }
}
@media only screen and (min-width: 480px) {
  .wp-block-columns h2:only-child, .wp-block-columns h3:only-child, .wp-block-columns h4:only-child, .wp-block-columns h5:only-child, .wp-block-columns h6:only-child {
    margin-bottom: 0;
  }
}
.wp-block-columns p {
  font-size: 16px;
  color: #666;
  margin-bottom: 24px;
}
@media (max-width: 480px) {
  .wp-block-columns:has(.wp-block-column-is-layout-flow) {
    gap: 0px;
  }
}
.wp-block-columns .wp-block-image {
  padding-bottom: 0px;
}
.wp-block-columns .wp-block-image:has(+ p, + h2, + h3, + h4, + h5, + h6, + figure, + .wp-block-buttons) {
  padding-bottom: 24px;
}
@media (max-width: 480px) {
  .wp-block-columns:has(.wp-block-image) {
    gap: 20px;
  }
}
.wp-block-columns ul.circle {
  list-style: disc;
  padding-left: 1em;
}
.wp-block-columns ul.circle li {
  margin-bottom: 0.25em;
}
@media (max-width: 480px) {
  .wp-block-columns.is-not-stacked-on-mobile h2 {
    margin-bottom: 0;
  }
}

.wp-block-video {
  line-height: 0;
}
@media (max-width: 480px) {
  .wp-block-video {
    margin-bottom: 24px;
  }
}
.wp-block-video.video-square {
  aspect-ratio: 1/1;
  overflow: hidden;
}
.wp-block-video.video-square video {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.wp-block-buttons {
  margin-top: 48px;
  margin-bottom: 0px;
  gap: 36px;
}
@media (max-width: 480px) {
  .wp-block-buttons {
    gap: 24px;
  }
}
.wp-block-buttons:has(+ p, + h2, + h3, + h4, + h5, + h6, + figure) {
  margin-bottom: 48px;
}
.wp-block-buttons a {
  font-size: 16px;
  line-height: 1.5;
}
.wp-block-buttons .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 15px 48px 12px;
  border-radius: 0px;
}
@media only screen and (max-width: 768px) {
  .wp-block-buttons .wp-block-button__link {
    padding: 15px 36px 12px;
  }
}
@media only screen and (max-width: 480px) {
  .wp-block-buttons .wp-block-button__link {
    padding: 15px 24px 12px;
  }
}
.wp-block-buttons .wp-block-button__link:after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 20' fill='none' %3E%3Cline y1='9.5' x2='22' y2='9.5' stroke='%23fff'/%3E%3Cpath d='M14.4272 1L22.2127 9.90158L14.4272 18.8037' stroke='%23fff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-top: -3px;
}
.wp-block-buttons .wp-block-button__link.has-background:after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 20' fill='none' %3E%3Cline y1='9.5' x2='22' y2='9.5' stroke='%23fff'/%3E%3Cpath d='M14.4272 1L22.2127 9.90158L14.4272 18.8037' stroke='%23fff'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center !important;
  margin-top: -3px;
}
.wp-block-buttons .wp-block-button__link:not(.has-black-background-color) {
  color: #666;
  background: none;
  border: 1px solid #666;
}
.wp-block-buttons .wp-block-button__link:not(.has-black-background-color):after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 20' fill='none' %3E%3Cline y1='9.5' x2='22' y2='9.5' stroke='%23161616'/%3E%3Cpath d='M14.4272 1L22.2127 9.90158L14.4272 18.8037' stroke='%23161616'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-top: -3px;
}

.size-full {
  width: 100%;
}
.size-full img {
  width: 100%;
  height: auto;
}

.wp-block-image {
  padding-bottom: 48px;
  margin-bottom: 0;
}
.wp-block-image.size-full {
  width: 100%;
}
.wp-block-image.size-full img {
  width: 100%;
  height: auto;
}
.wp-block-image .wp-element-caption {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 14px;
  color: #888;
  font-style: oblique;
}
.wp-block-image .wp-element-caption em {
  font-style: oblique;
}
.wp-block-image .wp-element-caption strong {
  font-weight: 400;
}
.wp-block-image.thumb {
  aspect-ratio: 19/12;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.wp-block-image.thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.wp-block-image:has(+ .wp-block-columns) {
  margin-bottom: 0;
}

.wp-block-separator {
  color: #A6ACB1;
  margin-bottom: 48px;
  margin-top: 48px;
}

.custom_youtube {
  cursor: pointer;
  margin-bottom: 48px;
}
.custom_youtube img {
  width: 100%;
}

ul.flex-list {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
ul.flex-list:after {
  content: "";
  width: calc(33.3333333333% - 16px);
  height: 0;
  display: block;
}
ul.flex-list li {
  width: calc(33.3333333333% - 16px);
  margin-bottom: 16px;
}

#page .wp-block-cover.content_cover {
  aspect-ratio: auto !important;
  min-height: auto !important;
  max-height: 100% !important;
  padding: 64px 0 !important;
  height: auto;
}
@media (max-width: 480px) {
  #page .wp-block-cover.content_cover {
    padding: 32px 0 !important;
  }
  #page .wp-block-cover.content_cover .wp-block-cover__inner-container {
    padding: 0 20px;
  }
}

.faq_column {
  max-width: 1100px;
  margin: 0 auto;
  color: #1A2356;
  width: 100%;
}

.qanda_block {
  cursor: pointer;
  margin-bottom: 24px;
}
.qanda_block .question {
  background: #F2F2F2;
  padding: 12px 92px 12px 24px;
  font-size: 20px;
  line-height: 36px;
  font-family: "AvenirLTPro-Roman";
  position: relative;
}
@media (max-width: 480px) {
  .qanda_block .question {
    font-size: 18px;
    line-height: 1.7;
    padding: 10px 36px 10px 10px;
  }
}
.qanda_block .question:after {
  content: "";
  width: 30px;
  height: 16px;
  background-image: url("../images/faq_arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  display: block;
  position: absolute;
  top: calc(50% - 8px);
  right: 30px;
}
@media (max-width: 480px) {
  .qanda_block .question:after {
    right: 10px;
    width: 15px;
    height: 8px;
    top: calc(50% - 4px);
  }
}
.qanda_block .answer {
  padding: 24px;
  display: none;
  color: #414141;
}
@media (max-width: 480px) {
  .qanda_block .answer {
    padding: 10px;
  }
}
.qanda_block.active .question:after {
  transform: rotate(180deg);
}
.qanda_block.active .answer {
  display: block;
}

.mb-none {
  margin-bottom: 0 !important;
}

.ls-minus {
  letter-spacing: -0.03em;
}

@media only screen and (max-width: 768px) {
  .block-solution-lineup.is-not-stacked-on-mobile.wp-block-columns {
    flex-wrap: wrap !important;
    gap: 24px;
  }
}
@media (max-width: 768px) {
  .block-solution-lineup .wp-block-column {
    width: calc(50% - 12px);
    flex-basis: calc(50% - 12px) !important;
    flex-grow: 0 !important;
  }
}
@media (max-width: 480px) {
  .block-solution-lineup {
    width: 100%;
    flex-direction: column;
    gap: 24px;
  }
  .block-solution-lineup .wp-block-column {
    width: 100%;
  }
  .block-solution-lineup .wp-block-column .wp-block-image img {
    width: 100%;
  }
}

html.jp .wp-block-buttons .wp-block-button__link {
  padding: 15px 48px 15px;
  border-radius: 0px;
}
@media only screen and (max-width: 768px) {
  html.jp .wp-block-buttons .wp-block-button__link {
    padding: 15px 36px 15px;
  }
}
@media only screen and (max-width: 480px) {
  html.jp .wp-block-buttons .wp-block-button__link {
    padding: 15px 24px 15px;
  }
}
html.jp .page-desing-solutions .sec_inner .wp-block-buttons .wp-block-button__link:after {
  margin-top: 0;
}
html.jp #mainvisual .slide .slide_inner .wp-block-buttons .wp-block-button__link:after {
  margin-top: 0;
}

#page {
  margin-top: 0;
}
#page .wp-block-cover {
  aspect-ratio: 1440/784;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
  width: calc(var(--vw) * 100);
  min-height: 784px;
  max-height: 100svh;
  margin-bottom: 64px;
  padding: 0 48px 48px;
}
#page .wp-block-cover.harf-visual {
  min-height: initial;
  aspect-ratio: auto;
  padding-top: 210px;
  padding-bottom: 96px;
}
@media only screen and (max-width: 960px) {
  #page .wp-block-cover.harf-visual {
    padding-top: 128px;
  }
}
@media only screen and (max-width: 480px) {
  #page .wp-block-cover.harf-visual {
    padding-top: 128px;
    height: auto !important;
  }
}
@media only screen and (max-width: 480px) {
  #page .wp-block-cover {
    height: 100svh;
    min-height: auto;
    aspect-ratio: auto;
    padding: 0 20px 20px;
    margin-bottom: 30px;
    box-sizing: border-box;
  }
}
#page .wp-block-cover .wp-block-cover__inner-container {
  max-width: 1344px;
  box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  color: #fff;
}
@media only screen and (max-width: 480px) {
  #page .wp-block-cover .wp-block-cover__inner-container {
    padding: 0;
    max-width: 100%;
  }
}
#page .wp-block-cover .wp-block-cover__inner-container .page_header {
  margin-top: auto;
  margin-bottom: auto;
}
#page .wp-block-cover .wp-block-cover__inner-container .page_header h1 {
  font-size: 44px;
  line-height: 82px;
  color: #fff;
  letter-spacing: 0;
}
@media only screen and (max-width: 480px) {
  #page .wp-block-cover .wp-block-cover__inner-container .page_header h1 {
    font-size: 36px;
    line-height: 1.5;
  }
}
#page .wp-block-cover .wp-block-cover__inner-container .page_header p {
  line-height: 28px;
  font-family: "AvenirLTPro-Light";
  width: 50%;
}
@media only screen and (max-width: 480px) {
  #page .wp-block-cover .wp-block-cover__inner-container .page_header p {
    width: 100%;
  }
}
#page .wp-block-cover .wp-block-cover__inner-container:has(.wp-block-buttons) .page_header {
  margin-bottom: 0px;
}
#page .wp-block-cover .wp-block-cover__inner-container .wp-block-buttons {
  margin-bottom: auto;
}
#page .wp-block-cover .wp-block-cover__inner-container .wp-block-buttons .wp-block-button__link:not(.has-black-backFground-color) {
  color: #fff;
  border: 1px solid #fff;
  border-radius: 16px;
}
#page .wp-block-cover .wp-block-cover__inner-container .wp-block-buttons .wp-block-button__link:not(.has-black-backFground-color):after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 20' fill='none' %3E%3Cline y1='9.5' x2='22' y2='9.5' stroke='%23fff'/%3E%3Cpath d='M14.4272 1L22.2127 9.90158L14.4272 18.8037' stroke='%23fff'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center !important;
  margin-top: -3px;
}
#page .solutions_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 390px;
}
#page .solutions_icon figure {
  margin: 0;
}
#page .solutions_icon svg {
  width: 140px;
  height: auto;
}
#page .solutions_icon svg path {
  fill: #fff !important;
}

#companies_slider {
  width: calc(100% - 96px);
  max-width: 1344px;
  margin: 48px auto;
  padding: 48px 0;
  box-sizing: border-box;
  border-top: 1px solid #A6ACB1;
}
@media only screen and (max-width: 768px) {
  #companies_slider {
    padding: 48px 0px;
  }
}
@media only screen and (max-width: 480px) {
  #companies_slider {
    width: calc(100% - 40px);
    margin: 20px auto;
    padding: 20px;
  }
}
#companies_slider h2 {
  padding: 0 !important;
}
#companies_slider .col div {
  border: none;
  padding-bottom: 0;
}
#companies_slider img {
  max-width: 100%;
}
#companies_slider .slick-slider {
  width: calc(100% - 50px);
  margin: calc(var(--fluidPx) * 40) auto 0;
}
#companies_slider .slick-slider .slick-prev, #companies_slider .slick-slider .slick-next {
  width: 24px;
  height: 42px;
}
#companies_slider .slick-slider .slick-prev:before {
  content: "";
  color: #1B1F53;
  width: 24px;
  height: 42px;
  display: block;
  background: url("../images/c_arrow.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
#companies_slider .slick-slider .slick-next:before {
  content: "";
  color: #1B1F53;
  width: 24px;
  height: 42px;
  display: block;
  background: url("../images/c_arrow.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transform: rotate(180deg);
}

.sec_inner {
  padding: 0 48px;
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  .sec_inner {
    padding: 0 20px;
  }
}

.post_articles_links {
  padding: 0 48px;
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
}
@media only screen and (max-width: 480px) {
  .post_articles_links {
    padding: 0 20px;
  }
}
.post_articles_links .articles_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.post_articles_links .articles_header h2 {
  margin-bottom: 0;
}
.post_articles_links .articles_header a {
  color: #666;
  text-decoration: underline;
}
.post_articles_links .articles_header a:before {
  content: "-->";
}
.post_articles_links .post_articles_links_inner {
  width: 100%;
  padding: 96px 0 0;
  margin: 32px auto;
  box-sizing: border-box;
  border-top: 1px solid #A6ACB1;
}
@media only screen and (max-width: 768px) {
  .post_articles_links .post_articles_links_inner {
    padding: 48px 0 0;
  }
}
.post_articles_links .post_articles_links_inner .col3 {
  margin-top: 48px;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .post_articles_links .post_articles_links_inner .col3 {
    gap: 24px;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 480px) {
  .post_articles_links .post_articles_links_inner .col3 {
    flex-direction: column;
    justify-content: flex-start;
    margin-top: 20px;
  }
}
.post_articles_links .post_articles_links_inner .col3 .thumb {
  width: 31%;
  margin-bottom: 48px;
}
@media only screen and (max-width: 768px) {
  .post_articles_links .post_articles_links_inner .col3 .thumb {
    width: calc(50% - 12px);
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 480px) {
  .post_articles_links .post_articles_links_inner .col3 .thumb {
    width: 100%;
    margin-bottom: 20px;
  }
}
.post_articles_links .post_articles_links_inner .col3 a {
  text-decoration: none;
}
.post_articles_links .post_articles_links_inner .col3 .img {
  overflow: hidden;
  aspect-ratio: 19/12;
  display: flex;
  justify-content: center;
  background: #F9F9F9;
}
.post_articles_links .post_articles_links_inner .col3 .img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.post_articles_links .post_articles_links_inner .col3 .title {
  margin-top: 48px;
  margin-bottom: 20px;
  font-size: 16px;
  color: #191919;
  font-family: "AvenirLTPro-Roman";
}
@media only screen and (max-width: 480px) {
  .post_articles_links .post_articles_links_inner .col3 .title {
    margin-top: 20px;
    margin-bottom: 10px;
  }
}
.post_articles_links .post_articles_links_inner .col3 .meta {
  font-size: 16px;
  color: #7E7E7E;
  font-family: "AvenirLTPro-Roman";
}

.news_info {
  display: flex;
  align-items: flex-start;
}
@media only screen and (max-width: 480px) {
  .news_info {
    flex-direction: column;
  }
}
.news_info h2 {
  width: 50%;
  line-height: 1;
}
@media only screen and (max-width: 480px) {
  .news_info h2 {
    width: 100%;
  }
}
.news_info .news_list {
  width: 50%;
}
@media only screen and (max-width: 480px) {
  .news_info .news_list {
    width: 100%;
  }
}
.news_info .news_list dl {
  display: flex;
  align-items: baseline;
  gap: 16px;
}
.news_info .news_list dl dt {
  flex: 0 0 auto;
}
.news_info .news_list dl a {
  text-decoration: none;
}

.satellite_links {
  margin-top: 96px;
  padding: 48px 0;
  box-sizing: border-box;
  border-top: 1px solid #A6ACB1;
}
@media only screen and (max-width: 480px) {
  .satellite_links {
    padding: 30px 0;
  }
}
.satellite_links .back_top_top {
  font-size: 24px;
  color: #fff;
  background: #1a2356;
  font-weight: 500;
  width: 340px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 50px auto 50px;
  transition: all 0.3s;
}
.satellite_links .back_top_top:hover {
  opacity: 0.8;
}
.satellite_links .inner {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.satellite_links .inner .links_wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0 36px;
  width: 100%;
}
@media only screen and (max-width: 480px) {
  .satellite_links .inner .links_wrap {
    gap: 10px;
  }
}
.satellite_links .inner .links_wrap:after {
  content: "";
  width: calc(33.3333333333% - 26.6666666667px);
  height: 0;
  display: block;
}
.satellite_links .inner .links_wrap a {
  width: calc(33.3333333333% - 26.6666666667px);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 40px 0;
  position: relative;
  transform: translateY(20px);
  transition: all 1s;
  text-decoration: none;
}
@media only screen and (max-width: 480px) {
  .satellite_links .inner .links_wrap a {
    width: calc(50% - 5px);
    padding: 20px 0;
  }
}
.satellite_links .inner .links_wrap a:before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  --x-gradient: linear-gradient(90deg, #1a2356 0 40px, transparent 0 calc(100% - 40px), #1a2356 calc(100% - 40px));
  --y-gradient: linear-gradient(#1a2356 0 40px, transparent 0 calc(100% - 40px), #1a2356 calc(100% - 40px));
  background-image: var(--x-gradient), var(--y-gradient), var(--x-gradient), var(--y-gradient);
  background-repeat: no-repeat;
  background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;
  background-position: top, right, bottom, left;
  opacity: 0;
  transform: scale(1.04);
  transition: all 0.5s;
}
.satellite_links .inner .links_wrap a .icon {
  margin-bottom: 24px;
}
.satellite_links .inner .links_wrap a .icon img {
  max-height: 75px;
  width: auto;
  transition: all 0.3s;
}
.satellite_links .inner .links_wrap a p {
  font-size: 24px;
  color: #1a2356;
  font-weight: 500;
  margin: 0 !important;
  line-height: 1;
}
@media only screen and (max-width: 480px) {
  .satellite_links .inner .links_wrap a p {
    font-size: 18px;
  }
}
.satellite_links .inner .links_wrap a:hover:before {
  opacity: 1;
  transform: scale(1);
}
.satellite_links .inner .links_wrap a:hover img {
  transform: scale(1.1);
}
.satellite_links .inner .links_wrap a.current {
  pointer-events: none;
  --x-gradient: linear-gradient(90deg, #bbb 0 40px, transparent 0 calc(100% - 40px), #bbb calc(100% - 40px));
  --y-gradient: linear-gradient(#bbb 0 40px, transparent 0 calc(100% - 40px), #bbb calc(100% - 40px));
  background-image: var(--x-gradient), var(--y-gradient), var(--x-gradient), var(--y-gradient);
  background-repeat: no-repeat;
  background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;
  background-position: top, right, bottom, left;
}
.satellite_links .inner .links_wrap a.current img {
  opacity: 0.4;
}
.satellite_links .inner .links_wrap a.current p {
  color: #bbb;
}

.page-desing-solutions .sec_inner {
  color: #fff;
  background: #0a0a14;
  width: 100%;
  max-width: 100%;
  padding: 0 48px 48px;
}
@media only screen and (max-width: 480px) {
  .page-desing-solutions .sec_inner {
    padding: 0 20px 20px;
  }
}
.page-desing-solutions .sec_inner .post {
  max-width: 1344px;
  width: 100%;
  margin: 0 auto;
}
.page-desing-solutions .sec_inner .solutions-header {
  padding-top: 210px;
  border-bottom: 1px solid #A6ACB1;
}
@media only screen and (max-width: 960px) {
  .page-desing-solutions .sec_inner .solutions-header {
    padding-top: 128px;
  }
}
@media only screen and (max-width: 480px) {
  .page-desing-solutions .sec_inner .solutions-header {
    padding-top: 96px;
  }
}
.page-desing-solutions .sec_inner p {
  color: #fff;
}
.page-desing-solutions .sec_inner .wp-block-buttons .wp-block-button__link {
  color: #fff;
  border: 1px solid #fff;
}
.page-desing-solutions .sec_inner .wp-block-buttons .wp-block-button__link:after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 18px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23 20' fill='none' %3E%3Cline y1='9.5' x2='22' y2='9.5' stroke='%23fff'/%3E%3Cpath d='M14.4272 1L22.2127 9.90158L14.4272 18.8037' stroke='%23fff'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  background-position: center !important;
  margin-top: -3px;
}

body:has(.page-desing-solutions) .post_articles_links_inner {
  border-top: none;
  margin-top: 0;
}

.page-desing-satellite-strix .wp-block-cover {
  background: #000;
}
.page-desing-satellite-strix .wp-block-cover img {
  max-width: 1344px;
  width: calc(100% - 96px);
  margin: 0 auto;
  height: auto;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 480px) {
  .page-desing-satellite-strix .wp-block-cover img {
    width: 100%;
  }
}
.page-desing-satellite-strix .badge .wp-block-image.size-full {
  text-align: center;
}
.page-desing-satellite-strix .badge .wp-block-image.size-full img {
  width: auto;
  max-height: 140px;
}
@media only screen and (max-width: 781px) {
  .page-desing-satellite-strix .badge.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: calc(50% - 24px) !important;
    flex-grow: 0;
  }
}
@media only screen and (max-width: 480px) {
  .page-desing-satellite-strix .badge.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: calc(50% - 10px) !important;
    flex-grow: 0;
  }
}

#page-desing-recruit .wp-block-cover h1 {
  line-height: 52px;
}

.page-desing-recruit#page .wp-block-cover.content_cover.benefits_block {
  padding: 64px 48px !important;
}
@media only screen and (max-width: 480px) {
  .page-desing-recruit#page .wp-block-cover.content_cover.benefits_block {
    padding: 32px 0px !important;
  }
}

.page-desing-press-kit-materials .display-none {
  display: none !important;
}

.page-desing-contact .sec_inner {
  padding: 120px 48px;
}
@media only screen and (max-width: 480px) {
  .page-desing-contact .sec_inner {
    padding: 0 5px;
  }
}
.page-desing-contact .sec_inner .wp-block-columns {
  padding: 20px 15px 20px;
}

#page.policy .sec_inner {
  padding-top: 210px;
}
@media only screen and (max-width: 960px) {
  #page.policy .sec_inner {
    padding-top: 128px;
  }
}
@media only screen and (max-width: 480px) {
  #page.policy .sec_inner {
    padding-top: 96px;
  }
}
#page.policy ul {
  list-style: disc;
  margin-left: 1.5em;
}
#page.policy ol {
  list-style: decimal;
  margin-left: 1em;
  margin-bottom: 1em;
  font-family: "AvenirLTPro-Light";
}
#page.policy ol li {
  margin-bottom: 0.5em;
}
#page.policy ol ul {
  list-style: lower-roman;
  margin-left: 1em;
  margin-bottom: 1em;
  margin-top: 0.5em;
}
#page.policy ol ul ul {
  list-style: lower-alpha;
  margin-left: 1em;
  margin-top: 0.5em;
  margin-bottom: 1em;
}
#page.policy ol ol {
  margin-top: 1em;
}
#page.policy ol ol li {
  list-style: upper-roman;
}
#page.policy ol ol li ol {
  margin-top: 1em;
}
#page.policy ol ol li ol li {
  list-style: lower-alpha;
}
#page.policy ol ol li ol li ol li {
  list-style: lower-roman;
}
#page.policy p a {
  word-break: break-all;
}

#page.ir {
  padding-top: 210px;
}
@media only screen and (max-width: 960px) {
  #page.ir {
    padding-top: 128px;
  }
}
@media only screen and (max-width: 480px) {
  #page.ir {
    padding-top: 96px;
  }
}
#page.ir.irtop {
  padding-top: 148px;
}
@media only screen and (max-width: 960px) {
  #page.ir.irtop {
    padding-top: 65px;
  }
}
@media only screen and (max-width: 480px) {
  #page.ir.irtop {
    padding-top: 51px;
  }
}

.archive #archive, .blog #archive {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  margin-top: calc(var(--fluidPx) * 130);
  box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
  .archive #archive, .blog #archive {
    width: 100%;
    box-sizing: border-box;
  }
}
@media only screen and (max-width: 480px) {
  .archive #archive, .blog #archive {
    padding: 0 20px;
    margin-top: calc(var(--fluidPx) * 60);
  }
  .archive #archive .sec_inner, .blog #archive .sec_inner {
    padding: 0;
  }
}
.archive #archive h1, .blog #archive h1 {
  font-size: calc(var(--fluidPx) * 46);
  font-family: "AvenirLTPro-Roman", "TsukuGoPro-B-AvenirNextLTPro-Medium";
  margin: calc(var(--fluidPx) * 96) 0;
  padding-top: 96px;
}

@media only screen and (max-width: 480px) {
  .archive #archive h1, .blog #archive h1 {
    margin-bottom: calc(var(--fluidPx) * 60);
  }
}
.archive #archive .archive_serach, .blog #archive .archive_serach {
  margin-bottom: 48px;
}

.archive #archive .archive_serach form, .blog #archive .archive_serach form {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.archive #archive .archive_serach form:after, .blog #archive .archive_serach form:after {
  content: "";
  width: 31%;
  height: 0px;
  display: block;
}
@media (max-width: 800px) {
  .archive #archive .archive_serach form:after, .blog #archive .archive_serach form:after {
    content: "";
    width: calc(50% - 12px);
    height: 0px;
    display: block;
  }
}
@media (max-width: 480px) {
  .archive #archive .archive_serach form:after, .blog #archive .archive_serach form:after {
    content: "";
    width: 100%;
    height: 0px;
    display: block;
  }
}

.archive #archive .archive_serach #search-box, .blog #archive .archive_serach #search-box {
  position: relative;
}
.archive #archive .archive_serach #search-box:after, .blog #archive .archive_serach #search-box:after {
  content: "";
  width: 31%;
  height: 0;
  display: block;
}

.archive #archive .archive_serach .center, .blog #archive .archive_serach .center {
  display: inline-block;
  width: 31%;
}
@media (max-width: 800px) {
  .archive #archive .archive_serach .center, .blog #archive .archive_serach .center {
    width: calc(50% - 12px);
  }
}
@media (max-width: 480px) {
  .archive #archive .archive_serach .center, .blog #archive .archive_serach .center {
    width: 100%;
    margin-bottom: 24px;
  }
}

.archive #archive .archive_serach .center.year_wrap, .blog #archive .archive_serach .center.year_wrap {
  top: 50%;
  left: 0%;
}

.archive #archive .archive_serach .center.cat_wrap, .blog #archive .archive_serach .center.cat_wrap {
  top: 50%;
  right: 0%;
}

.archive #archive .archive_serach .custom-select-wrapper, .blog #archive .archive_serach .custom-select-wrapper {
  position: relative;
  display: inline-block;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
  width: 100%;
}

.archive #archive .archive_serach .custom-select-wrapper select, .blog #archive .archive_serach .custom-select-wrapper select {
  display: none;
}

.archive #archive .archive_serach .custom-select, .blog #archive .archive_serach .custom-select {
  position: relative;
  display: inline-block;
  width: 100%;
}

.archive #archive .archive_serach .custom-select.opened, .blog #archive .archive_serach .custom-select.opened {
  background: #0a0a14;
  color: #fff;
}

.archive #archive .archive_serach .custom-select.opened .custom-select-trigger, .blog #archive .archive_serach .custom-select.opened .custom-select-trigger {
  color: #fff;
}

.archive #archive .archive_serach .custom-select-trigger, .blog #archive .archive_serach .custom-select-trigger {
  position: relative;
  display: block;
  width: 100%;
  border: 1px solid #191919;
  padding: calc(var(--fluidPx) * 14);
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  color: #191919;
}

.archive #archive .archive_serach .custom-select-trigger:hover, .blog #archive .archive_serach .custom-select-trigger:hover {
  background: #0a0a14;
  color: #fff;
}

.archive #archive .archive_serach .custom-select-trigger:hover:after, .blog #archive .archive_serach .custom-select-trigger:hover:after {
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
}

.archive #archive .archive_serach .custom-select-trigger:after, .blog #archive .archive_serach .custom-select-trigger:after {
  position: absolute;
  display: block;
  content: "";
  width: 10px;
  height: 10px;
  top: 50%;
  right: 25px;
  margin-top: -3px;
  border-bottom: 1px solid #191919;
  border-right: 1px solid #191919;
  transform: rotate(45deg) translateY(-50%);
  transition: all 0.4s ease-in-out;
  transform-origin: 50% 0;
}

.archive #archive .archive_serach .custom-select.opened .custom-select-trigger:after, .blog #archive .archive_serach .custom-select.opened .custom-select-trigger:after {
  margin-top: 3px;
  transform: rotate(-135deg) translateY(-50%);
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
}

.archive #archive .archive_serach .custom-options, .blog #archive .archive_serach .custom-options {
  position: absolute;
  display: block;
  top: 100%;
  left: 0;
  right: 0;
  min-width: 100%;
  border: 1px solid #191919;
  border-bottom: none;
  box-sizing: border-box;
  margin-top: -1px;
  background: #fff;
  transition: all 0.4s ease-in-out;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-15px);
}

.archive #archive .archive_serach .custom-select.opened .custom-options, .blog #archive .archive_serach .custom-select.opened .custom-options {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
  transform: translateY(0);
}

.archive #archive .archive_serach .custom-option, .blog #archive .archive_serach .custom-option {
  position: relative;
  display: block;
  border-bottom: 1px solid #191919;
  font-size: 14px;
  padding: 14px;
  color: #191919;
  cursor: pointer;
  transition: all 0.4s ease-in-out;
}

.archive #archive .archive_serach .custom-option:hover, .archive #archive .archive_serach .custom-option.selection {
  background: #0a0a14;
  color: #fff;
  transition: all 0.4s ease-in-out;
}

.blog #archive .archive_serach .custom-option:hover, .blog #archive .archive_serach .custom-option.selection {
  background: #0a0a14;
  color: #fff;
  transition: all 0.4s ease-in-out;
}

.archive .archive_links_inner, .blog .archive_links_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.archive .archive_links_inner:after, .blog .archive_links_inner:after {
  content: "";
  width: 31%;
  height: 0;
  display: block;
}

.archive .archive_links_inner .thumb, .blog .archive_links_inner .thumb {
  width: 31%;
  margin-bottom: 96px;
}
.archive .archive_links_inner .thumb a, .blog .archive_links_inner .thumb a {
  text-decoration: none;
}

@media only screen and (max-width: 800px) {
  .archive .archive_links_inner .thumb, .blog .archive_links_inner .thumb {
    margin-bottom: 48px;
    width: calc(50% - 12px);
  }
}
@media only screen and (max-width: 480px) {
  .archive .archive_links_inner .thumb, .blog .archive_links_inner .thumb {
    width: 100%;
  }
}
.archive .archive_links_inner .thumb .img, .blog .archive_links_inner .thumb .img {
  overflow: hidden;
  aspect-ratio: 19/12;
  display: flex;
  justify-content: center;
  background: #F9F9F9;
}

@media only screen and (max-width: 480px) {
  .archive .archive_links_inner .thumb .img, .blog .archive_links_inner .thumb .img {
    aspect-ratio: 19/12;
  }
}
.archive .archive_links_inner .thumb .img img, .blog .archive_links_inner .thumb .img img {
  transition: all 0.3s;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.archive .archive_links_inner .title, .blog .archive_links_inner .thumb .title {
  margin-top: 32px;
  margin-bottom: 13px;
  font-size: 16px;
  color: #191919;
  font-family: "AvenirLTPro-Roman", "TsukuGoPro-B-AvenirNextLTPro-Medium";
}
.archive .archive_links_inner .meta, .blog .archive_links_inner .thumb .meta {
  font-size: 14px;
  color: #7E7E7E;
  font-family: "AvenirLTPro-Roman", "TsukuGoPro-B-AvenirNextLTPro-Medium";
}

.archive .archive_links_inner .thumb:hover .img img, .blog .archive_links_inner .thumb:hover .img img {
  transform: scale(1.1);
  transition: all 0.3s;
}

.archive .pager, .blog .pager {
  margin-bottom: 120px;
}

.archive .pager .view-more-button, .blog .pager .view-more-button {
  background: #0a0a14;
  font-size: 16px;
  color: #fff;
  text-decoration: none;
  padding: 14px 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  transition: opacity 0.3s;
  width: 100%;
  box-sizing: content-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  box-sizing: border-box;
}

.archive .pager .view-more-button:hover, .blog .pager .view-more-button:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.archive .pager .view-more-button:after, .blog .pager .view-more-button:after {
  content: "+";
  display: block;
  color: #fff;
  font-size: 16px;
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
}

.content-single {
  max-width: 940px;
  margin: 184px auto 96px;
  padding: 0 32px;
  width: 100%;
  box-sizing: border-box;
}
@media (max-width: 782px) {
  .content-single {
    padding: 0 48px;
    margin: 96px auto 0;
  }
}
@media (max-width: 480px) {
  .content-single {
    padding: 0 20px;
  }
}
.content-single .back_link a {
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 1;
}
.content-single .back_link a:before {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  background: url("../images/arrow_back.svg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-top: -4px;
}
.content-single .post-title {
  font-size: 48px;
  line-height: 1.25;
  font-family: AvenirLTPro-Heavy;
}
.content-single .post-content {
  display: flex;
  align-items: flex-start;
}
@media (max-width: 1160px) {
  .content-single .post-content {
    flex-direction: column;
  }
}
.content-single .post-content .content {
  max-width: 100%;
}
.content-single .post-social-share {
  position: sticky;
  top: 192px;
  margin-right: -94px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  transition: opacity 0.5s;
  opacity: 1;
  width: 94px;
  flex: 0 0 auto;
  padding-top: 4px;
}
@media (max-width: 1160px) {
  .content-single .post-social-share {
    position: static;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
  }
}
.content-single .post-social-share.hidden {
  opacity: 0;
  pointer-events: none;
}
.content-single .post-social-share svg {
  width: 28px;
}
@media (max-width: 782px) {
  .content-single .post-social-share {
    left: 16px;
  }
  .content-single .post-social-share svg {
    width: 16px;
    height: auto;
  }
}
.content-single section {
  margin-top: 0;
}
.content-single section h1, .content-single section h2, .content-single section h3, .content-single section h4, .content-single section h5, .content-single section h6, .content-single section b {
  font-family: AvenirLTPro-Heavy;
}
.content-single section h1 strong, .content-single section h2 strong, .content-single section h3 strong, .content-single section h4 strong, .content-single section h5 strong, .content-single section h6 strong, .content-single section b strong {
  font-family: AvenirLTPro-Heavy;
}
.content-single section h2 {
  font-size: 32px;
  color: #333333;
}
.content-single section h3 {
  font-size: 28px;
  color: #333333;
}
.content-single section p {
  margin-bottom: 32px;
}
.content-single section p img {
  display: block;
  max-width: 100%;
  height: auto;
}
.content-single section p strong {
  color: #333333;
}
.content-single section .wp-caption {
  max-width: 100%;
}
.content-single .back_link {
  margin: 48px 0;
}
.content-single .featured_image {
  width: 100%;
  height: auto;
  margin-bottom: 48px;
}
.content-single .featured_image img {
  width: 100%;
  height: auto;
}
.content-single .post-meta {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 48px;
}
.content-single .post-meta .cat {
  background: #F2F3FE;
  color: #09189A;
  padding: 8px 12px;
  line-height: 1;
}
.content-single .post-title {
  font-size: 42px;
  font-weight: 900;
  color: #222222;
  margin-bottom: 48px;
}
@media (max-width: 782px) {
  .content-single .post-title {
    font-size: 32px;
  }
}
.content-single .tags {
  border-top: 1px solid #CDCED2;
  padding: 32px 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
}
.content-single .tags h4 {
  font-weight: 600;
  margin-bottom: 0;
  margin-right: 8px;
}
.content-single .tags ul {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 16px;
}
.content-single .tags ul li {
  border-bottom: 1px solid #CDCED2;
  line-height: 30px;
  padding: 0 4px;
}
.content-single .tags ul li a {
  text-decoration: none;
  color: #666;
}
.content-single .tags ul li a:before {
  content: "#";
}
.content-single .speaker {
  margin-top: 48px;
}
.content-single .speaker .inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 48px;
  margin-bottom: 24px;
}
.content-single .speaker .inner .small {
  font-size: 12px;
  margin-bottom: 0px;
}
.content-single .speaker .inner .name {
  margin-bottom: 16px;
}
.content-single .speaker .inner .officer {
  margin-bottom: 0;
}
.content-single .speaker .inner .img {
  width: 160px;
}
.content-single .speaker .inner .img img {
  width: 100%;
  height: auto;
}

.post_footer {
  max-width: 940px;
  width: 100%;
  margin: 96px auto;
  padding: 48px 32px 96px;
  box-sizing: border-box;
}
@media (max-width: 782px) {
  .post_footer {
    padding: 48px;
    margin: 40px auto 0;
  }
}
@media (max-width: 480px) {
  .post_footer {
    padding: 48px 20px;
  }
}
.post_footer .post_footer_nav {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media (max-width: 782px) {
  .post_footer .post_footer_nav {
    flex-direction: column;
    gap: 16px;
  }
}
.post_footer .post_footer_nav div {
  width: calc(50% - 48px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
@media (max-width: 782px) {
  .post_footer .post_footer_nav div {
    width: 100%;
  }
}
.post_footer .post_footer_nav div span {
  font-weight: 600;
  font-size: 14px;
  color: #aaa;
}