/*!************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./node_modules/ress/dist/ress.min.css ***!
  \************************************************************************************************************************************************************************************************************************************************************/
html {
  -webkit-text-size-adjust: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
  word-break: normal;
}

*, :after, :before {
  background-repeat: no-repeat;
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

:after, :before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  margin: 0;
  padding: 0;
}

hr {
  color: inherit;
  height: 0;
  overflow: visible;
}

details, main {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden] {
  display: none;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline-width: 0;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
}

pre {
  font-size: 1em;
}

b, strong {
  font-weight: bolder;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  text-indent: 0;
}

iframe {
  border-style: none;
}

input {
  border-radius: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

[role=button], [type=button], [type=reset], [type=submit], button {
  cursor: pointer;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

[type=reset], [type=submit], button, html [type=button] {
  -webkit-appearance: button;
}

button, input, select, textarea {
  background-color: transparent;
  border-style: none;
}

a:focus, button:focus, input:focus, select:focus, textarea:focus {
  outline-width: 0;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}

[disabled] {
  cursor: default;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled=true] {
  cursor: default;
}
/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/style.scss ***!
  \********************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* ============================================================
*
* BASE
*
* ============================================================ */
/* ------------------------------------------------------------
* 基本設定
* ------------------------------------------------------------ */
html {
  line-height: 1.75;
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}

body {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  color: #000;
  background: #fff;
  overflow-x: hidden;
}

/* ----- リンクの設定 ----- */
a {
  color: #006dd9;
}
a:active, a:hover {
  text-decoration: none;
}

/* ----- ボタンの設定 ----- */
button {
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* ----- 画像 ----- */
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* ----- lazyloadアニメーション ----- */
.js-lazy-load {
  -webkit-transform: translateY(5px);
          transform: translateY(5px);
  opacity: 0;
  -webkit-transition: opacity 0.4s cubic-bezier(0.5, 0, 0, 1) 0.1s, -webkit-transform 0.5s cubic-bezier(0.5, 0, 0, 1) 0.1s;
  transition: opacity 0.4s cubic-bezier(0.5, 0, 0, 1) 0.1s, -webkit-transform 0.5s cubic-bezier(0.5, 0, 0, 1) 0.1s;
  transition: opacity 0.4s cubic-bezier(0.5, 0, 0, 1) 0.1s, transform 0.5s cubic-bezier(0.5, 0, 0, 1) 0.1s;
  transition: opacity 0.4s cubic-bezier(0.5, 0, 0, 1) 0.1s, transform 0.5s cubic-bezier(0.5, 0, 0, 1) 0.1s, -webkit-transform 0.5s cubic-bezier(0.5, 0, 0, 1) 0.1s;
}

ul li {
  margin-bottom: 8px;
  line-height: 1.5;
}

.acms-entry-unit-full [class*=acms-col-] {
  width: 100%;
}

/* ------------------------------------------------------------
* 限定的なベーススタイル
* ------------------------------------------------------------ */
/* 管理用パーツ
* -------------------------------------------------- */
#adminBox,
.acms-admin-box {
  position: relative;
  z-index: 10;
  margin-bottom: 0;
  border: 0;
}

.acms-admin-edit-info {
  margin: 0;
  border: 0;
}

#js-seo_info {
  background-color: #efefef;
}

/* ============================================================
*
* レイアウト
*
* ============================================================ */
/* ------------------------------------------------------------
* ヘッダー
* ------------------------------------------------------------ */
.ly_header {
  position: relative;
  z-index: 9999;
  background: #fff;
  -webkit-box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.05);
          box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.05);
}
.ly_header.ly_header__top {
  position: absolute;
  top: 0;
  width: 100%;
  background-color: initial;
}

.ly_header_inner {
  padding: 0 10px 0 40px;
  margin-right: auto;
  margin-left: auto;
}

/* ------------------------------------------------------------
* フッター
* ------------------------------------------------------------ */
.ly_footer {
  position: relative;
  padding: 100px 0;
  background-color: #0056b3;
  color: #fff;
}

.ly_footer__home {
  padding: 60px 0 40px;
}

.ly_footer_inner {
  max-width: 1180px;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}

/* ------------------------------------------------------------
* ラッパー
* ------------------------------------------------------------ */
/* ------------------------------------------------------------
* セクション
* ------------------------------------------------------------ */
.ly_sect {
  position: relative;
  padding: 40px 0;
}
.ly_sect > .ly_sect_bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: #fff;
  border-radius: 40px 40px 0 0;
}
.ly_sect.ly_sect__color_primary {
  background-color: #0056b3;
}
.ly_sect.ly_sect__color_primary-light {
  background-color: rgba(0, 86, 179, 0.1);
}
.ly_sect.ly_sect__color_gray-lighter {
  background-color: #ededed;
  margin-top: 40px;
}
.ly_sect.ly_sect__color_gray-light {
  background-color: #e6e6e6;
  margin-top: 40px;
}
.ly_sect.ly_sect_narrowPadding {
  padding: 50px 0;
}
.ly_sect.ly_sect__entry {
  padding-top: 20px;
}

.ly_entry_bgcolor {
  position: relative;
  padding: 40px 0 40px 40px;
  margin-bottom: 40px;
}

.ly_entry_bgcolor::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: calc(50dvw + 410px + 2px);
  height: 100%;
  background-color: #dfeef0;
  z-index: -1;
  border-radius: 20px 0 0 20px;
}

.ly_entry_whcolor {
  background-color: #fff;
  padding: 40px 20px 20px;
  margin-top: 20px;
  border-radius: 15px;
}

.ly_newscontent_outer {
  background-color: rgba(0, 86, 179, 0.1);
  padding: 40px 0;
}

.ly_newscontent_wrapper {
  background-color: #fff;
  padding: 0 80px 40px;
}
/* ------------------------------------------------------------
* コンテンツエリア
* ------------------------------------------------------------ */
.ly_cont {
  max-width: 1180px;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}
.ly_sect .ly_cont {
  position: relative;
}
.ly_cont.ly_cont__large {
  max-width: 1280px;
}

.ly_cont.ly_cont__mdNarrow {
  max-width: 920px;
}

.ly_cont.ly_cont__narrow {
  max-width: 920px;
}

/* ------------------------------------------------------------
* ページのタイトル部分
* ------------------------------------------------------------ */
.ly_title {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom left;
  margin-bottom: 50px;
}
/* ============================================================
*
* モジュール
*
* ============================================================ */
/* ------------------------------------------------------------
* ボタン
* ------------------------------------------------------------ */
/* ボタンのみ */
.el_btn, .el_arrowBtn, .el_arrowBtnLg {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  min-width: 230px;
  max-width: 100%;
  padding: 1em 2em;
  font-size: 1em;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  background-color: #0056b3;
  border-radius: 2em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2);
}
.el_btn.el_btn__viewmore, .el_btn__viewmore.el_arrowBtn, .el_btn__viewmore.el_arrowBtnLg {
  white-space: nowrap;
}
.el_btn.el_btn__viewmore::after, .el_btn__viewmore.el_arrowBtn::after, .el_btn__viewmore.el_arrowBtnLg::after {
  content: "View More";
  font-family: "Josefin Sans", sans-serif;
  font-size: 10px;
  font-weight: normal;
  display: inline-block;
  padding-left: 5em;
}
.el_btn.el_btn__newwindow, .el_btn__newwindow.el_arrowBtn, .el_btn__newwindow.el_arrowBtnLg {
  padding-right: 2.5em;
}
.el_btn.el_btn__newwindow::after, .el_btn__newwindow.el_arrowBtn::after, .el_btn__newwindow.el_arrowBtnLg::after {
  content: "";
  display: block;
  width: 0.7em;
  height: 0.7em;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iX+ODrOOCpOODpOODvF8xIiBkYXRhLW5hbWU9IuODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDEyIDEyIj4KICA8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMjkuOC4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogMi4xLjEgQnVpbGQgMikgIC0tPgogIDxkZWZzPgogICAgPHN0eWxlPgogICAgICAuc3QwIHsKICAgICAgICBmaWxsOiAjZmZmOwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvZGVmcz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNy4zLDB2MS4zaDIuNEwzLjIsNy45bC45LjksNi42LTYuNnYyLjRoMS4zVjBNMTAuNywxMC43SDEuM1YxLjNoNC43VjBIMS4zQy42LDAsMCwuNiwwLDEuM3Y5LjNjMCwuNC4xLjcuNC45LjMuMi42LjQuOS40aDkuM2MuNCwwLC43LS4xLjktLjQuMi0uMy40LS42LjQtLjl2LTQuN2gtMS4zdjQuN1oiLz4KPC9zdmc+);
  background-size: cover;
  background-position: center;
  position: absolute;
  right: 15px;
  top: 18px;
}
.el_btn:visited, .el_arrowBtn:visited, .el_arrowBtnLg:visited {
  color: #fff;
}
.el_btn:active, .el_arrowBtn:active, .el_arrowBtnLg:active, .el_btn:hover, .el_arrowBtn:hover, .el_arrowBtnLg:hover {
  background-color: #003b72;
}
.el_btn.el_btn__white, .el_btn__white.el_arrowBtn, .el_btn__white.el_arrowBtnLg {
  background: #fff;
  color: #000;
}
.el_btn.el_btn__white:hover, .el_btn__white.el_arrowBtn:hover, .el_btn__white.el_arrowBtnLg:hover {
  background: #003b72;
  color: #fff;
}
.el_btn.el_btn__blackbtn, .el_btn__blackbtn.el_arrowBtn, .el_btn__blackbtn.el_arrowBtnLg {
  color: #0056b3;
  border: solid 1px #464646;
  background-color: #464646;
}
.el_btn.el_btn__blackbtn.el_btn.el_btn__arrowRight, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtn, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtnLg {
  position: relative;
  padding: 1em 3em 1em 2em;
}
.el_btn.el_btn__blackbtn.el_btn.el_btn__arrowRight::before, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtn::before, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtnLg::before {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTE0LjIxLDcuMjlsLTQtNGMtLjM5LS4zOS0xLjAyLS4zOS0xLjQxLDBzLS4zOSwxLjAyLDAsMS40MWwyLjI5LDIuMjlIMi41Yy0uNTUsMC0xLC40NS0xLDFzLjQ1LDEsMSwxaDguNTlsLTIuMjksMi4yOWMtLjM5LjM5LS4zOSwxLjAyLDAsMS40MS4yLjIuNDUuMjkuNzEuMjlzLjUxLS4xLjcxLS4yOWw0LTRjLjM5LS4zOS4zOS0xLjAyLDAtMS40MVoiIHN0eWxlPSJzdHJva2Utd2lkdGg6MHB4OyIvPjwvc3ZnPg==) no-repeat 8px/14px 14px #fff;
  background-color: #0056b3;
}
.el_btn.el_btn__blackbtn.el_btn.el_btn__arrowRight:active::before, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtn:active::before, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtnLg:active::before, .el_btn.el_btn__blackbtn.el_btn.el_btn__arrowRight:hover::before, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtn:hover::before, .el_btn__blackbtn.el_btn__arrowRight.el_arrowBtnLg:hover::before {
  background-position: 10px;
}
.el_btn.el_btn__blackbtn.el_btn.el_btn__outerLink::after, .el_btn__blackbtn.el_btn__outerLink.el_arrowBtn::after, .el_btn__blackbtn.el_btn__outerLink.el_arrowBtnLg::after {
  display: inline-block;
  content: "";
  width: 1em;
  height: 1em;
  margin: 0 0 0 8px;
  position: relative;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjkuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Il94MzJfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEyIDUxMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiNGRkZGMUY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05NiwwdjQxNmg0MTZWMEg5NnogTTQ3MiwzNzZIMTM2VjQwaDMzNlYzNzZ6Ii8+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjQwLDQ3MiA0MCwyOTYgNDAsMTM2IDQwLDk2IDAsOTYgMCw1MTIgNDE2LDUxMiA0MTYsNDcyIDM3Niw0NzIgCSIvPgoJPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMzIuOCwzMTIuOCAzNTAuNywxOTUgMzUwLjcsMjc5LjggMzkwLjcsMjc5LjggMzkwLjcsMTI2LjcgMjM3LjYsMTI2LjcgMjM3LjYsMTY2LjcgMzIyLjQsMTY2LjcgCgkJMjA0LjUsMjg0LjUgCSIvPgo8L2c+Cjwvc3ZnPgo=);
}
.el_btn.el_btn__blackbtn.el_btn.el_btn__outerLink:hover, .el_btn__blackbtn.el_btn__outerLink.el_arrowBtn:hover, .el_btn__blackbtn.el_btn__outerLink.el_arrowBtnLg:hover {
  background-color: #0056b3;
  color: #000;
}
.el_btn.el_btn__blackbtn.el_btn.el_btn__outerLink:hover::after, .el_btn__blackbtn.el_btn__outerLink.el_arrowBtn:hover::after, .el_btn__blackbtn.el_btn__outerLink.el_arrowBtnLg:hover::after {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjkuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Il94MzJfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEyIDUxMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiMzMzMzMzM7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05NiwwdjQxNmg0MTZWMEg5NnogTTQ3MiwzNzZIMTM2VjQwaDMzNlYzNzZ6Ii8+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjQwLDQ3MiA0MCwyOTYgNDAsMTM2IDQwLDk2IDAsOTYgMCw1MTIgNDE2LDUxMiA0MTYsNDcyIDM3Niw0NzIgCSIvPgoJPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMzIuOCwzMTIuOCAzNTAuNywxOTUgMzUwLjcsMjc5LjggMzkwLjcsMjc5LjggMzkwLjcsMTI2LjcgMjM3LjYsMTI2LjcgMjM3LjYsMTY2LjcgMzIyLjQsMTY2LjcgCgkJMjA0LjUsMjg0LjUgCSIvPgo8L2c+Cjwvc3ZnPgo=);
}
.el_btn.el_btn__bk, .el_btn__bk.el_arrowBtn, .el_btn__bk.el_arrowBtnLg {
  background-color: #000;
  color: #fff;
}
.el_btn.el_btn__block, .el_btn__block.el_arrowBtn, .el_btn__block.el_arrowBtnLg {
  display: block;
}
.el_btn.el_btn__small, .el_btn__small.el_arrowBtn, .el_btn__small.el_arrowBtnLg {
  min-width: auto;
  padding: 0.5em 1em;
  font-size: 0.8em;
  line-height: 1;
}
.el_btn.el_btn__footerwhite, .el_btn__footerwhite.el_arrowBtn, .el_btn__footerwhite.el_arrowBtnLg {
  background-color: #fff;
  color: #0056b3;
  border-radius: 5px;
  margin-bottom: 20px;
  width: 100%;
  padding-right: 40px;
  position: relative;
}
.el_btn.el_btn__footerwhite:hover, .el_btn__footerwhite.el_arrowBtn:hover, .el_btn__footerwhite.el_arrowBtnLg:hover {
  background-color: #aaa;
}
.el_btn.el_btn__footerwhite::after, .el_btn__footerwhite.el_arrowBtn::after, .el_btn__footerwhite.el_arrowBtnLg::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOSAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEzMDJfMTM4MCkiPgo8cGF0aCBkPSJNMTguMDgxOSAwSDEyLjQyMTVDMTEuOTE1OCAwIDExLjUwMzQgMC4zOTQ4NjggMTEuNTAzNCAwLjg3OTEzOUMxMS41MDM0IDEuMzYzNDEgMTEuOTE1OCAxLjc1ODI4IDEyLjQyMTUgMS43NTgyOEgxNS4yMTg2TDEwLjY2MzEgNi4xMjA0NUMxMC4xMjYzIDYuNjM0NTIgMTAuMTI2MyA3LjQ2ODk2IDEwLjY2MzEgNy45ODMwM0MxMC45MzE2IDguMjQwMDcgMTEuMjg1NiA4LjM3MDQ1IDExLjYzNTcgOC4zNzA0NUMxMS45ODU4IDguMzcwNDUgMTIuMzM5OCA4LjI0Mzc5IDEyLjYwODMgNy45ODMwM0wxNy4xNjM4IDMuNjIwODZWNi4yOTkyNkMxNy4xNjM4IDYuNzgzNTMgMTcuNTc2MSA3LjE3ODM5IDE4LjA4MTkgNy4xNzgzOUMxOC41ODc2IDcuMTc4MzkgMTkgNi43ODM1MyAxOSA2LjI5OTI2VjAuODc5MTM5QzE5IDAuMzk0ODY4IDE4LjU4NzYgMCAxOC4wODE5IDBaIiBmaWxsPSIjMUU1MEEyIi8+CjxwYXRoIGQ9Ik0xNi4xMjkgOS40Mzk0MkMxNS41OTIxIDkuNDM5NDIgMTUuMTU2NCA5Ljg1NjY0IDE1LjE1NjQgMTAuMzcwN1YxNS4yMTM0QzE1LjE1NjQgMTUuNzIgMTQuNzI0NiAxNi4xMzM1IDE0LjE5NTUgMTYuMTMzNUgyLjkwNjAyQzIuMzc2OTUgMTYuMTMzNSAxLjk0NTEzIDE1LjcyIDEuOTQ1MTMgMTUuMjEzNFY0LjQwNjcyQzEuOTQ1MTMgMy45MDAxIDIuMzc2OTUgMy40ODY2MSAyLjkwNjAyIDMuNDg2NjFINy41NzQzMkM4LjExMTE4IDMuNDg2NjEgOC41NDY4OSAzLjA2OTM5IDguNTQ2ODkgMi41NTUzMUM4LjU0Njg5IDIuMDQxMjQgOC4xMTExOCAxLjYyNDAyIDcuNTc0MzIgMS42MjQwMkgyLjkwNjAyQzEuMzAzMjQgMS42MjQwMiAwIDIuODcxOTUgMCA0LjQwNjcyVjE1LjIxMzRDMCAxNi43NDgyIDEuMzAzMjQgMTcuOTk2MSAyLjkwNjAyIDE3Ljk5NjFIMTQuMTkxNkMxNS43OTQ0IDE3Ljk5NjEgMTcuMDk3NyAxNi43NDgyIDE3LjA5NzcgMTUuMjEzNFYxMC4zNzA3QzE3LjA5NzcgOS44NTY2NCAxNi42NjIgOS40Mzk0MiAxNi4xMjUxIDkuNDM5NDJIMTYuMTI5WiIgZmlsbD0iIzFFNTBBMiIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzEzMDJfMTM4MCI+CjxyZWN0IHdpZHRoPSIxOSIgaGVpZ2h0PSIxOCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K);
  background-size: cover;
  background-position: center;
  position: absolute;
  right: 10px;
  top: 15px;
}

/* 大きいボタン */
.el_btn.el_btn__lg, .el_btn__lg.el_arrowBtn, .el_btn__lg.el_arrowBtnLg {
  width: 100%;
  max-width: 1000px;
  padding-top: 1.2em;
  padding-bottom: 1.4em;
  font-size: 1.375em;
  border-width: 3px;
}

.el_arrow {
  display: inline-block;
  width: 40px;
  height: 40px;
  border: 1px solid #0056b3;
  border-radius: 999px;
}
.el_arrow:after {
  content: "";
  display: inline-block;
  background-size: 40%;
  background-position: center;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iX3gzMl8iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTAgNTAiPgogIDwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyOS44LjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiAyLjEuMSBCdWlsZCAyKSAgLS0+CiAgPGRlZnM+CiAgICA8c3R5bGU+CiAgICAgIC5zdDAgewogICAgICAgIGZpbGw6IG5vbmU7CiAgICAgICAgc3Ryb2tlOiAjMDA1NmIzOwogICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDsKICAgICAgICBzdHJva2Utd2lkdGg6IDQuM3B4OwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvZGVmcz4KICA8cG9seWxpbmUgY2xhc3M9InN0MCIgcG9pbnRzPSIxNi4yIDcuMSAzNS4yIDI2IDE2LjkgNDQuMyIvPgo8L3N2Zz4=);
  width: 40px;
  height: 40px;
}
.el_arrow:hover {
  background-color: #0056b3;
}
.el_arrow:hover:after {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iX3gzMl8iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTAgNTAiPgogIDwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyOS44LjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiAyLjEuMSBCdWlsZCAyKSAgLS0+CiAgPGRlZnM+CiAgICA8c3R5bGU+CiAgICAgIC5zdDAgewogICAgICAgIGZpbGw6IG5vbmU7CiAgICAgICAgc3Ryb2tlOiAjZmZmOwogICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDsKICAgICAgICBzdHJva2Utd2lkdGg6IDQuM3B4OwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvZGVmcz4KICA8cG9seWxpbmUgY2xhc3M9InN0MCIgcG9pbnRzPSIxNi4yIDcuMSAzNS4yIDI2IDE2LjkgNDQuMyIvPgo8L3N2Zz4=);
}

/* 矢印あり */
.el_arrowBtn, .el_arrowBtnLg,
.el_btn.el_btn__arrowRight {
  position: relative;
  padding: 1em 4em 1em 2em;
}
.el_arrowBtn::before, .el_arrowBtnLg::before,
.el_btn.el_btn__arrowRight::before {
  position: absolute;
  top: 50%;
  right: 2em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  width: 30px;
  height: 30px;
  content: "";
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iX3gzMl8iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTAgNTAiPgogIDwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyOS44LjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiAyLjEuMSBCdWlsZCAyKSAgLS0+CiAgPGRlZnM+CiAgICA8c3R5bGU+CiAgICAgIC5zdDAgewogICAgICAgIGZpbGw6IG5vbmU7CiAgICAgICAgc3Ryb2tlOiAjZmZmOwogICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDsKICAgICAgICBzdHJva2Utd2lkdGg6IDQuM3B4OwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvZGVmcz4KICA8cG9seWxpbmUgY2xhc3M9InN0MCIgcG9pbnRzPSIxNi4yIDcuOCAzNS4yIDI2LjggMTYuOSA0NSIvPgo8L3N2Zz4=) no-repeat 8px/14px 14px #fff;
  background-color: #fff;
  border-radius: 50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
}
.el_arrowBtn:active::before, .el_arrowBtnLg:active::before, .el_arrowBtn:hover::before, .el_arrowBtnLg:hover::before,
.el_btn.el_btn__arrowRight:active::before,
.el_btn.el_btn__arrowRight:hover::before {
  background-position: 10px;
}

.el_arrowBtnLg {
  width: 100%;
  max-width: 1000px;
  padding-top: 1.2em;
  padding-bottom: 1.4em;
  font-size: 1.375em;
}

/* 色違い */
.el_btn.el_btn__borderWhite, .el_btn__borderWhite.el_arrowBtn, .el_btn__borderWhite.el_arrowBtnLg {
  border-color: #fff !important;
}

/* インラインのリンクボタン
* -------------------------------------------------- */
.el_btnInlineLink {
  position: relative;
  display: inline-block;
  padding: 0 1.7em 0 0;
  color: #000;
  text-decoration: underline;
}
.el_btnInlineLink:visited {
  color: #000;
  text-decoration: underline;
}
.el_btnInlineLink:active, .el_btnInlineLink:hover {
  color: #000;
  text-decoration: none;
}
.el_btnInlineLink:active::before, .el_btnInlineLink:hover::before {
  background-position: center center;
  border-width: 1px;
}

.el_btnInlineLink.el_btnInlineLink__back {
  padding: 0 0 0 0;
}
.el_btnInlineLink.el_btnInlineLink__back::before {
  right: auto;
  left: -0.35em;
}
.el_btnInlineLink.el_btnInlineLink__back:active::before, .el_btnInlineLink.el_btnInlineLink__back:hover::before {
  background-position: center center;
}

.el_outerLinkbtn {
  position: relative;
  display: inline-block;
  padding: 0.8em 1.5em;
  min-width: 5em;
  font-size: 18px;
  line-height: 1.6;
  color: #0056b3;
  background-color: #333;
  text-align: center;
  border-radius: 100px;
  margin: 1em 10px;
  text-decoration: none;
  font-weight: bold;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  vertical-align: middle;
}
.el_outerLinkbtn::after {
  display: inline-block;
  content: "";
  top: -2px;
  width: 1.5em;
  height: 1.5em;
  position: relative;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjkuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Il94MzJfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEyIDUxMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiNGRkZGMUY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05NiwwdjQxNmg0MTZWMEg5NnogTTQ3MiwzNzZIMTM2VjQwaDMzNlYzNzZ6Ii8+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjQwLDQ3MiA0MCwyOTYgNDAsMTM2IDQwLDk2IDAsOTYgMCw1MTIgNDE2LDUxMiA0MTYsNDcyIDM3Niw0NzIgCSIvPgoJPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMzIuOCwzMTIuOCAzNTAuNywxOTUgMzUwLjcsMjc5LjggMzkwLjcsMjc5LjggMzkwLjcsMTI2LjcgMjM3LjYsMTI2LjcgMjM3LjYsMTY2LjcgMzIyLjQsMTY2LjcgCgkJMjA0LjUsMjg0LjUgCSIvPgo8L2c+Cjwvc3ZnPgo=) no-repeat 5px center/1em 1em;
}
.el_outerLinkbtn:hover {
  background-color: #0056b3;
  color: #333;
}
.el_outerLinkbtn:hover::after {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjkuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Il94MzJfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEyIDUxMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiMzMzMzMzM7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05NiwwdjQxNmg0MTZWMEg5NnogTTQ3MiwzNzZIMTM2VjQwaDMzNlYzNzZ6Ii8+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjQwLDQ3MiA0MCwyOTYgNDAsMTM2IDQwLDk2IDAsOTYgMCw1MTIgNDE2LDUxMiA0MTYsNDcyIDM3Niw0NzIgCSIvPgoJPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMzIuOCwzMTIuOCAzNTAuNywxOTUgMzUwLjcsMjc5LjggMzkwLjcsMjc5LjggMzkwLjcsMTI2LjcgMjM3LjYsMTI2LjcgMjM3LjYsMTY2LjcgMzIyLjQsMTY2LjcgCgkJMjA0LjUsMjg0LjUgCSIvPgo8L2c+Cjwvc3ZnPgo=) no-repeat 5px center/1em 1em;
}
/* ------------------------------------------------------------
* 見出し
* ------------------------------------------------------------ */
/* トップの見出しとカテゴリタイトル
* -------------------------------------------------- */
.el_ttlHeading {
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  color: #000;
  font-weight: normal;
}
.el_ttlHeading::before {
  content: attr(data-en);
  font-size: 85px;
  display: block;
  font-family: "Josefin Sans", sans-serif;
}

.el_ttlHeading.el_ttlHeading__line > span {
  position: relative;
}
.el_ttlHeading.el_ttlHeading__line > span::before {
  position: absolute;
  top: 0;
  left: -20px;
  display: block;
  width: 1px;
  height: 25px;
  content: "";
  background-color: #333;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}
.el_ttlHeading.el_ttlHeading__line > span::after {
  position: absolute;
  top: 0;
  right: -20px;
  display: block;
  width: 1px;
  height: 25px;
  content: "";
  background-color: #333;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}

.el_ttlHeading_ja {
  font-size: 20px;
  color: #0056b3;
  font-weight: bold;
}

/* ページタイトル - 小(下層ページ用)
* -------------------------------------------------- */
.el_pageHeading {
  color: #000;
  margin-top: 60px;
}

.el_pageHeading_sub {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  color: #0056b3;
}
.el_pageHeading_sub span {
  position: relative;
  display: inline-block;
  margin: 0 1.5em 0 0;
}
.el_pageHeading_sub span::after {
  position: absolute;
  top: 0.25em;
  right: -1.25em;
  display: block;
  width: 1em;
  height: 1em;
  content: "";
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTEyLDhjMC0uMjYtLjEtLjUxLS4yOS0uNzFMNS43MSwxLjI5Yy0uMzktLjM5LTEuMDItLjM5LTEuNDEsMHMtLjM5LDEuMDIsMCwxLjQxbDUuMjksNS4yOS01LjI5LDUuMjljLS4zOS4zOS0uMzksMS4wMiwwLDEuNDFzMS4wMi4zOSwxLjQxLDBsNi02Yy4yLS4yLjI5LS40NS4yOS0uNzFaIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOjBweDsiLz48L3N2Zz4=) no-repeat center/0.8em 0.8em;
}
.el_pageHeading_sub span:last-child {
  margin: 0;
}
.el_pageHeading_sub span:last-child::after {
  content: none;
}

.el_pageHeading_main {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.3;
  padding-bottom: 10px;
  border-bottom: 1px solid #0056b3;
}
.el_pageHeading_main.el_pageHeading_main__course {
  color: #bd68e4;
}
.el_pageHeading_main > a {
  color: #000;
  text-decoration: none;
}
/* 本文中の見出し
* -------------------------------------------------- */
/* ----- 大見出し ----- */
.el_xlHeading {
  margin-bottom: 1em;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.5;
}
.el_xlHeading span {
  font-size: 0.8em;
}
.el_xlHeading.el_xlHeading__en {
  font-size: 85px;
  font-weight: normal;
  font-family: "Josefin Sans", sans-serif;
}
.el_xlHeading.el_xlHeading__p-color {
  color: #0056b3;
}
.el_xlHeading.el_xlHeading__center {
  text-align: center;
}
.el_xlHeading.el_xlHeading__wh {
  color: #fff;
}
.el_xlHeading.el_xlHeading__year {
  font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 50px;
  margin-top: 1em;
  margin-bottom: 0.2em;
}
.el_xlHeading.el_xlHeading__year span {
  font-size: 0.6em;
}
.el_xlHeading.el_xlHeading__large-en {
  font-size: 16px;
  padding-left: 0.5em;
}
.el_xlHeading.el_xlHeading__large-en::before {
  content: attr(data-en);
  font-size: 80px;
  line-height: 1;
  font-weight: normal;
  display: block;
  font-family: "Josefin Sans", sans-serif;
}
.el_xlHeading.el_xlHeading__large-en.el_xlHeading__large-en__color::before {
  color: #0056b3;
  font-weight: bold;
}
.el_xlHeading.el_xlHeading__ensub::after {
  content: attr(data-en);
  font-size: 14px;
  font-weight: normal;
  display: block;
  font-family: "Josefin Sans", sans-serif;
}

.el_lgHeading {
  margin-bottom: 0.72em;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}
.el_lgHeading.el_lgHeading__en {
  font-family: "Josefin Sans", sans-serif;
}
.el_lgHeading.el_lgHeading__color {
  color: #0056b3;
}

/* サブで英語がある時 */
/* サブで数字がある時 */
/* ----- 中見出し ----- */
.el_mdHeading {
  margin-bottom: 0.72em;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}
.el_mdHeading.el_mdHeading__en {
  font-family: "Josefin Sans", sans-serif;
}
.el_mdHeading.el_mdHeading__color {
  color: #0056b3;
}

/* ----- 小見出し ----- */
.el_smHeading {
  margin-bottom: 0.72em;
  font-size: 16px;
  line-height: 1.5;
}
.el_smHeading.el_smHeading__p-color {
  color: #0056b3;
}

/* ------------------------------------------------------------
* 注釈
* ------------------------------------------------------------ */
.el_note {
  font-size: 12px;
  color: #777;
}

ul.el_note {
  padding-left: 0;
  list-style: none;
}
ul.el_note li {
  padding-left: 1em;
  margin-bottom: 0.5em;
  text-indent: -1em;
}
ul.el_note li:last-child {
  margin-bottom: 0;
}

/* ------------------------------------------------------------
* ラベル
* ------------------------------------------------------------ */
/* ボタンのみ */
.el_label {
  display: inline-block;
  padding: 0.15em 0.5em 0.1em;
  font-size: 1em;
  line-height: 1.3;
  color: #fff;
  background-color: #000;
  border-radius: 5px;
  margin: 0 3px;
  top: -2px;
  position: relative;
}
.el_label.el_label__lg {
  font-size: 1.2em;
}
.el_label.el_label__pink {
  background-color: #ff507a;
}
.el_label.el_label__purple {
  background-color: #bd68e4;
}
.el_label.el_label__green {
  background-color: #6ce0c4;
}
.el_label.el_label__yellow {
  background-color: #ffcc16;
}
.el_label.el_label__gray {
  background-color: #aaa;
}
.el_label.el_label__white {
  background-color: #fff;
}
.el_label.el_label__yellow {
  color: #000;
}
.el_label.el_label__new {
  background-color: #fa4027;
}
.el_label.el_label__small {
  font-size: 0.8em;
}
.el_label.el_label__marginright {
  margin-right: 5px;
}

.el_labelLarge {
  border: 2px solid #aaa;
  background-color: #fff;
  color: #000;
  font-size: 14px;
  line-height: 1.3;
  display: inline-block;
  padding: 5px 10px;
  margin: 0 0 5px;
}
.el_labelLarge.el_labelLarge__gray {
  background-color: #464646;
  color: #fff;
}
.stay .el_labelLarge {
  color: #0056b3;
}
.el_labelLarge:hover {
  color: #0056b3;
}

.el_entryTagLabel {
  list-style: none;
  font-size: 12px;
  display: inline-block;
  padding: 3px 5px;
  border: 2px solid #aaa;
  margin-right: 3px;
  margin-bottom: 5px;
  background-color: #fff;
}
.el_entryTagLabel.current a {
  background-color: #0056b3;
}

/* ------------------------------------------------------------
* フォームの要素
* ------------------------------------------------------------ */
/* ----- テキスト・テキストエリア ----- */
.el_inputText,
.el_inputTextarea {
  padding: 0.75em 1em;
  line-height: 1.5;
  vertical-align: middle;
  background-color: #fff;
  border: solid 1px #ddd;
  border-radius: 10px;
}
.el_inputText:-moz-placeholder-shown:focus, .el_inputTextarea:-moz-placeholder-shown:focus {
  background-color: #fff;
}
.el_inputText:-ms-input-placeholder:focus, .el_inputTextarea:-ms-input-placeholder:focus {
  background-color: #fff;
}
.el_inputText:focus, .el_inputText:placeholder-shown:focus,
.el_inputTextarea:focus,
.el_inputTextarea:placeholder-shown:focus {
  background-color: #fff;
}
.el_inputText::-webkit-input-placeholder, .el_inputTextarea::-webkit-input-placeholder {
  font-size: 14px;
  color: #aaa;
}
.el_inputText::-moz-placeholder, .el_inputTextarea::-moz-placeholder {
  font-size: 14px;
  color: #aaa;
}
.el_inputText:-ms-input-placeholder, .el_inputTextarea:-ms-input-placeholder {
  font-size: 14px;
  color: #aaa;
}
.el_inputText::-ms-input-placeholder, .el_inputTextarea::-ms-input-placeholder {
  font-size: 14px;
  color: #aaa;
}
.el_inputText::placeholder,
.el_inputTextarea::placeholder {
  font-size: 14px;
  color: #aaa;
}
.el_inputText:-moz-placeholder-shown, .el_inputTextarea:-moz-placeholder-shown {
  background-color: #fbfbfb;
}
.el_inputText:-ms-input-placeholder, .el_inputTextarea:-ms-input-placeholder {
  background-color: #fbfbfb;
}
.el_inputText:placeholder-shown,
.el_inputTextarea:placeholder-shown {
  background-color: #fbfbfb;
}

.el_inputTextarea {
  resize: vertical;
}

/* ----- ラジオボタン  ----- */
/* テキストのみ */
.el_inputRadio {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.el_inputRadio input[type=radio] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.el_inputRadio label {
  position: relative;
  display: block;
  padding-right: 0.5em;
  padding-left: 1.5em;
  line-height: 1.3;
  cursor: pointer;
}
.el_inputRadio label::before,
.el_inputRadio label::after {
  position: absolute;
  top: 0.05em;
  left: 0;
  display: block;
  width: 1.2em;
  height: 1.2em;
  content: "";
  background-color: #fff;
  border-radius: 50%;
}
.el_inputRadio label::before {
  border: solid 2px #ddd;
}
.el_inputRadio label::after {
  border: solid 0.45em #ff507a;
  -webkit-transition: 0.15s;
  transition: 0.15s;
  -webkit-transform: scale(0);
          transform: scale(0);
}
.el_inputRadio input:checked + label::after {
  -webkit-transform: scale(1);
          transform: scale(1);
}

/* テキストもボタンに入れる */
.el_inputRadio.el_inputRadio__btn label {
  padding: 0.85em 1em 0.85em 2.2em;
  cursor: pointer;
  background-color: #fbfbfb;
  border: solid 1px #ddd;
  border-radius: 3px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.el_inputRadio.el_inputRadio__btn label::before,
.el_inputRadio.el_inputRadio__btn label::after {
  top: 50%;
  left: 0.5em;
  margin-top: -0.6em;
}
.el_inputRadio.el_inputRadio__btn label::before {
  border: solid 2px #ddd;
}
.el_inputRadio.el_inputRadio__btn label::after {
  background-color: #ff507a;
  border: solid 3px #fff;
  -webkit-transition: 0.15s;
  transition: 0.15s;
  -webkit-transform: scale(0);
          transform: scale(0);
}
.el_inputRadio.el_inputRadio__btn input:checked + label {
  color: #fff;
  background-color: #ff507a;
  border-color: #ff507a;
}
.el_inputRadio.el_inputRadio__btn input:checked + label::after {
  -webkit-transform: scale(1);
          transform: scale(1);
}

/* ----- セレクトボックス  ----- */
.el_select {
  padding: 0.75em 2em 0.75em 1em;
  line-height: 1.5;
  vertical-align: middle;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTExLjQ1LDYuNzFjLS4yOSwwLS41Ny0uMTItLjc3LS4zNmwtMi42OC0zLjItMi42OCwzLjJjLS4zNS40Mi0uOTkuNDgtMS40MS4xMi0uNDItLjM1LS40OC0uOTktLjEyLTEuNDFMNy4yMy45NWMuMzgtLjQ1LDEuMTUtLjQ1LDEuNTMsMGwzLjQ1LDQuMTFjLjM1LjQyLjMsMS4wNS0uMTIsMS40MS0uMTkuMTYtLjQyLjIzLS42NC4yM1oiIHN0eWxlPSJmaWxsOiM3Nzc7IHN0cm9rZS13aWR0aDowcHg7Ii8+PHBhdGggZD0ibTgsMTUuMzljLS4zLDAtLjU4LS4xMy0uNzctLjM2bC0zLjQ1LTQuMTJjLS4zNS0uNDItLjMtMS4wNS4xMi0xLjQxLjQyLS4zNiwxLjA1LS4zLDEuNDEuMTJsMi42OCwzLjIsMi42OC0zLjJjLjM2LS40Mi45OS0uNDgsMS40MS0uMTIuNDIuMzUuNDguOTkuMTIsMS40MWwtMy40NSw0LjEyYy0uMTkuMjMtLjQ3LjM2LS43Ny4zNloiIHN0eWxlPSJmaWxsOiM3Nzc7IHN0cm9rZS13aWR0aDowcHg7Ii8+PC9zdmc+) no-repeat right 0.5em center/1em 1em #fff;
  border: solid 1px #ddd;
  border-radius: 3px;
}

/* ----- チェックボックス   ----- */
/* テキストのみ */
.el_inputCheckbox {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.el_inputCheckbox input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.el_inputCheckbox label {
  position: relative;
  display: block;
  padding-right: 0.5em;
  padding-left: 1.5em;
  line-height: 1.3;
  cursor: pointer;
}
.el_inputCheckbox label::before,
.el_inputCheckbox label::after {
  position: absolute;
  top: 0.05em;
  left: 0;
  display: block;
  width: 1.2em;
  height: 1.2em;
  content: "";
  background-color: #fff;
  border-radius: 50%;
}
.el_inputCheckbox label::before {
  border: solid 2px #ddd;
}
.el_inputCheckbox label::after {
  border: solid 0.45em #ff507a;
  -webkit-transition: 0.15s;
  transition: 0.15s;
  -webkit-transform: scale(0);
          transform: scale(0);
}
.el_inputCheckbox input:checked + label::after {
  -webkit-transform: scale(1);
          transform: scale(1);
}

/* テキストもボタンに入れる */
.el_inputCheckbox.el_inputCheckbox__btn label {
  padding: 0.85em 1em 0.85em 2.2em;
  cursor: pointer;
  background-color: #fbfbfb;
  border: solid 1px #ddd;
  border-radius: 3px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.el_inputCheckbox.el_inputCheckbox__btn label::before,
.el_inputCheckbox.el_inputCheckbox__btn label::after {
  top: 50%;
  left: 0.5em;
  margin-top: -0.6em;
}
.el_inputCheckbox.el_inputCheckbox__btn label::before {
  border: solid 2px #ddd;
}
.el_inputCheckbox.el_inputCheckbox__btn label::after {
  background-color: #ff507a;
  border: solid 3px #fff;
  -webkit-transition: 0.15s;
  transition: 0.15s;
  -webkit-transform: scale(0);
          transform: scale(0);
}
.el_inputCheckbox.el_inputCheckbox__btn input:checked + label {
  color: #fff;
  background-color: #ff507a;
  border-color: #ff507a;
}
.el_inputCheckbox.el_inputCheckbox__btn input:checked + label::after {
  -webkit-transform: scale(1);
          transform: scale(1);
}

/* ------------------------------------------------------------
* テーブル
* ------------------------------------------------------------ */
/* ----- テーブル ----- */
.el_table table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #ddd;
  border-left: 1px solid #ddd;
}
.el_table th,
.el_table td {
  display: block;
  padding: 0.5em 1em;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.el_table.js-scroll-hint th,
.el_table.js-scroll-hint td {
  display: table-cell;
  white-space: nowrap;
}
.el_table.js-scroll-hint table {
  margin: 0;
}
.el_table th {
  font-weight: bold;
  background: #f0f0f0;
}
.el_table td {
  background: #fff;
}
.el_table .entry-custom-table {
  margin-bottom: 2em;
}
/* ------------------------------------------------------------
* リスト
* ------------------------------------------------------------ */
.el_list {
  padding: 0 0 0 2em;
  margin: 0 0 2em;
}
.el_list li {
  margin: 0 0 0.375em;
  line-height: 1.5;
}
.el_list li:last-child {
  margin-bottom: 0;
}

/* ------------------------------------------------------------
* ヘッダーのコンテンツ
* ------------------------------------------------------------ */
.bl_headerContents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
/* ロゴ
* -------------------------------------------------- */
.bl_headerContents_logo {
  padding: 0 70px 0 0;
}
.bl_headerContents_logo a {
  display: block;
}
.bl_headerContents_logo img {
  display: block;
  width: 300px;
  height: auto;
}

/* 右側
* -------------------------------------------------- */
.bl_headerContents_linksSns {
  padding: 0 20px 0 0;
  font-size: 12px;
  line-height: 1.3;
}

.bl_headerContents_linksSns_head,
.bl_headerContents_linksSns_item {
  display: inline-block;
}

.bl_headerContents_linksSns_item::before {
  display: inline-block;
  margin: 0 0.5em;
  content: "/";
}
.bl_headerContents_linksSns_item a {
  color: #000;
  text-decoration: none;
}
.bl_headerContents_linksSns_item a:visited {
  color: #000;
  text-decoration: none;
}
.bl_headerContents_linksSns_item a:focus,
.bl_headerContents_linksSns_item a:active,
.bl_headerContents_linksSns_item a:hover {
  color: #000;
  text-decoration: underline;
}
.bl_headerContents_linksSns_item img {
  width: 1.2em;
  height: 1.2em;
  margin: 0 0.3em 0 0;
}
.bl_headerContents_links {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.bl_headerContents_linkBtn {
  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: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 70px;
  height: 70px;
  border-radius: 9999px;
  margin: 0 0 0 40px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  background-color: #0056b3;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  font-family: "Josefin Sans", sans-serif;
  border: 1px solid #fff;
}
.bl_headerContents_linkBtn:hover {
  background-color: #003b72;
}
.bl_headerContents_linkBtn.bl_headerContents_linkBtn__windowopen .bl_headerContents_linkBtn::before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjkuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Il94MzJfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEyIDUxMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiNGRkZGMUY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05NiwwdjQxNmg0MTZWMEg5NnogTTQ3MiwzNzZIMTM2VjQwaDMzNlYzNzZ6Ii8+Cgk8cG9seWdvbiBjbGFzcz0ic3QwIiBwb2ludHM9IjQwLDQ3MiA0MCwyOTYgNDAsMTM2IDQwLDk2IDAsOTYgMCw1MTIgNDE2LDUxMiA0MTYsNDcyIDM3Niw0NzIgCSIvPgoJPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMzIuOCwzMTIuOCAzNTAuNywxOTUgMzUwLjcsMjc5LjggMzkwLjcsMjc5LjggMzkwLjcsMTI2LjcgMjM3LjYsMTI2LjcgMjM3LjYsMTY2LjcgMzIyLjQsMTY2LjcgCgkJMjA0LjUsMjg0LjUgCSIvPgo8L2c+Cjwvc3ZnPgo=);
}

.bl_headerContents_search {
  padding: 15px 10px 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.bl_search_wrap {
  display: inline-block;
}

.bl_search_container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  border: 1px solid #464646;
  background-color: #fff;
  display: block;
  padding: 3px 10px;
  border-radius: 20px;
  height: 2.3em;
  width: 300px;
  overflow: hidden;
}
.bl_search_container::before {
  position: absolute;
  content: "";
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI3LjkuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9Il94MzJfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNTEyIDUxMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTEyIDUxMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiNGRkZGMUY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00OTUuMyw0MjMuNmMwLDAtNjguNS02MC04NC45LTc2LjNjLTI0LjEtMjMuOS0zMy43LTM1LjUtMjUuMi01NC45YzM3LjItNzUuOCwyNC4zLTE2OS45LTM4LjctMjMyLjkKCQljLTc5LjItNzkuMy0yMDcuNy03OS4zLTI4NywwYy03OS4yLDc5LjMtNzkuMiwyMDcuNywwLDI4N2M2Myw2MywxNTcuMSw3NS44LDIzMi44LDM4LjdjMTkuNS04LjUsMzEsMS4xLDU1LDI1LjIKCQljMTYuNCwxNi40LDc2LjMsODQuOSw3Ni4zLDg0LjljMzEuMSwzMS4xLDU1LDEyLDY5LjQtMi40QzUwNy4yLDQ3OC41LDUyNi40LDQ1NC42LDQ5NS4zLDQyMy42eiBNMjg2LDI4NgoJCWMtNDUuOSw0NS45LTEyMC4zLDQ1LjktMTY2LjIsMGMtNDUuOS00NS45LTQ1LjktMTIwLjMsMC0xNjYuMUMxNjUuNyw3NCwyNDAuMSw3NCwyODYsMTE5LjlDMzMxLjksMTY1LjcsMzMxLjksMjQwLjEsMjg2LDI4NnoiLz4KPC9nPgo8L3N2Zz4K);
  width: 1.2em;
  height: 1.2em;
  right: 19px;
  top: 8px;
  z-index: 6;
  pointer-events: none;
}

.bl_search_container input[type=search] {
  border: none;
  height: 2em;
}

.bl_search_container input[type=search]:focus {
  outline: 0;
}

.bl_search_container input[type=submit] {
  cursor: pointer;
  border: none;
  background: #464646;
  color: #fff;
  position: absolute;
  width: 3.5em;
  height: 3em;
  right: 0px;
  top: -3px;
  outline: none;
}

.bl_headerPageintroduction {
  margin-top: 30px;
}

.bl_headerContents_search.bl_headerContents_search__spmenuinner {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  padding-top: 0;
}
.bl_headerContents_search.bl_headerContents_search__spmenuinner .bl_headerContents_linkBtn {
  font-size: 16px;
  margin-left: 0;
  margin-bottom: 10px;
}
.bl_headerContents_search.bl_headerContents_search__spmenuinner .bl_search_container {
  width: 100%;
  font-size: 18px;
}
.bl_search_wrap.bl_search_wrap__searchresult {
  width: 100%;
  margin-bottom: 40px;
}
.bl_search_wrap.bl_search_wrap__searchresult .bl_search_container {
  width: 100%;
  font-size: 18px;
}

.bl_scrollHeader {
  position: fixed;
  width: 100%;
  top: -500px;
  left: 0;
  z-index: 9999;
  background: #fff;
  -webkit-box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.05);
          box-shadow: 0px 2px 4px 1px rgba(0, 0, 0, 0.05);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.is_scrolled .bl_scrollHeader {
  top: 0;
}
.bl_scrollHeader .bl_headerContents_logo img {
  max-width: 300px;
}

/* ------------------------------------------------------------
* フェードインのメニュー
* ------------------------------------------------------------ */
/* 開閉のボタン
* -------------------------------------------------- */
.bl_menuOpnBtn {
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 10000;
  display: block;
  width: 50px;
  height: 50px;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 5px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_menuOpnBtn.is_opened {
  background: rgba(255, 255, 255, 0);
}
.bl_menuOpnBtn > span, .bl_menuOpnBtn::before, .bl_menuOpnBtn::after {
  position: absolute;
  top: 50%;
  left: 10px;
  display: block;
  width: 30px;
  height: 1px;
  content: "";
  background: #333;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_menuOpnBtn::before {
  -webkit-transform: translateY(-8px);
          transform: translateY(-8px);
}
.bl_menuOpnBtn::after {
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
}
.bl_menuOpnBtn.is_opened span {
  opacity: 0;
}
.bl_menuOpnBtn.is_opened::before {
  -webkit-animation: before-opened 0.5s forwards;
          animation: before-opened 0.5s forwards;
}
.bl_menuOpnBtn.is_closed::before {
  -webkit-animation: before-closed 0.5s forwards;
          animation: before-closed 0.5s forwards;
}
.bl_menuOpnBtn.is_opened::after {
  -webkit-animation: after-on 0.5s forwards;
          animation: after-on 0.5s forwards;
}
.bl_menuOpnBtn.is_closed::after {
  -webkit-animation: after-off 0.5s forwards;
          animation: after-off 0.5s forwards;
}

@-webkit-keyframes before-opened {
  0% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
}

@keyframes before-opened {
  0% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
}
@-webkit-keyframes before-closed {
  0% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
}
@keyframes before-closed {
  0% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
}
@-webkit-keyframes after-on {
  0% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
}
@keyframes after-on {
  0% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
}
@-webkit-keyframes after-off {
  0% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
}
@keyframes after-off {
  0% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
  40% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  60% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  100% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
}
/* メニュー本体
* -------------------------------------------------- */
/* ----- 大枠 ----- */
.bl_menu {
  padding: 5px 10px 30px;
  background: #fff;
}

.bl_menu_contwrapper {
  width: 100%;
  height: 100vh;
  overflow: auto;
  padding: 5px 10px 130px;
  background: #fff;
}

.bl_menu_list {
  margin-bottom: 100px;
}

.bl_menu_item {
  list-style: none;
}
.bl_menu_item.bl_menu_item__first {
  width: 100%;
  border-bottom: 1px solid #ddd;
  margin: 0;
}
.bl_menu_item.bl_menu_item__first a {
  text-decoration: none;
  color: #000;
  font-weight: bold;
  padding: 15px 10px;
  display: inline-block;
}
.bl_menu_item.bl_menu_item__first a::before {
  color: #0056b3;
  content: attr(data-en);
  font-size: 20px;
  display: block;
  font-family: "Josefin Sans", sans-serif;
}
.bl_menu_item.bl_menu_item__first.bl_menu_item__hasSecond a {
  padding-bottom: 5px;
}
.bl_menu_item.bl_menu_item__first.bl_menu_item__hasSecond ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-bottom: 10px;
}
.bl_menu_item.bl_menu_item__first.bl_menu_item__hasSecond ul .bl_menu_item.bl_menu_item__second {
  width: 50%;
  margin: 0;
}
.bl_menu_item.bl_menu_item__first.bl_menu_item__hasSecond ul .bl_menu_item.bl_menu_item__second a {
  padding: 2px 10px;
  font-weight: normal;
  color: #0056b3;
  font-size: 12px;
}
.bl_menu_item.bl_menu_item__first.bl_menu_item__hasSecond ul .bl_menu_item.bl_menu_item__second a::before {
  display: none;
}

/* ----- 見出し ----- */
.bl_menuHead {
  padding: 0 auto 0;
  margin: 0 0;
  text-align: center;
}

/* ロゴ */
.bl_menuHead_logo {
  margin: 0 auto;
  padding: 10px;
}
.bl_menuHead_logo a {
  display: inline-block;
  width: 100%;
  max-width: 200px;
}
.bl_menuHead_logo img {
  background-color: #fff;
  display: inline-block;
  padding: 5px 10px;
}

/* SNSリンク */
.bl_menuHead_sns_link {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin: 0 10px 0 0;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
  border: solid 1px #333;
  border-radius: 50%;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
.bl_menuHead_sns_link:active, .bl_menuHead_sns_link:hover {
  background-color: #333;
}

/* ------------------------------------------------------------
* サイト一覧
* ------------------------------------------------------------ */
/* 全てのリスト */
.bl_sitemapList ul {
  padding: 0;
  margin: 20px 0 0;
  font-size: 12px;
  list-style: none;
}

.bl_sitemapList li {
  padding: 0 0 0 1em;
  margin: 0;
  font-weight: normal;
  line-height: 1.5;
}

.bl_sitemapList a {
  color: #000;
  text-decoration: none;
}
.bl_sitemapList a:visited {
  color: #000;
  text-decoration: none;
}
.bl_sitemapList a:active, .bl_sitemapList a:hover {
  color: #000;
  text-decoration: underline;
}

/* 1階層目のリスト */
.bl_sitemapList > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 10px 5px;
}

.bl_sitemapList li.is_level_1 {
  width: 100%;
  padding: 20px 10px;
  font-size: 1.4em;
  font-weight: bold;
  text-align: center;
}
.bl_sitemapList li.is_level_1 > a {
  color: #333;
}
/* ------------------------------------------------------------
* グローバルナビ
* ------------------------------------------------------------ */
/* ------------------------------
   Global Navigation
   ------------------------------ */
.bl_headerContents {
  min-height: 100px;
}

.bl_globalNav {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.bl_globalNav_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 32px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.bl_globalNav_item {
  margin: 0;
  white-space: nowrap;
  font-size: 14px;
}
.bl_globalNav_item a {
  color: #000;
  font-weight: bold;
  padding: 12px 8px;
  text-decoration: none;
  cursor: pointer;
}
.bl_globalNav_item.bl_globalNav_item__border a {
  border: 1px solid;
  border-radius: 5px;
  padding: 10px 20px;
}

.ly_header__top .bl_globalNav_item a {
  color: #fff;
}
/* ------------------------------
   Mega Menu Overlay
   ------------------------------ */
.bl_megaMenu_overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  z-index: 998;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.bl_megaMenu_overlay.is-active {
  opacity: 1;
  visibility: visible;
}

/* ------------------------------
   Mega Menu (block)
   ------------------------------ */
.bl_megaMenu {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 100%;
  background: #fff;
  -webkit-box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
          box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
  border-radius: 20px;
  padding: 20px 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
  -webkit-transition: opacity 0.22s ease, visibility 0.22s, -webkit-transform 0.22s ease;
  transition: opacity 0.22s ease, visibility 0.22s, -webkit-transform 0.22s ease;
  transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s;
  transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s, -webkit-transform 0.22s ease;
  z-index: 999;
  max-width: 1000px;
}

/* mega menu active state */
.bl_globalNav_item__hasMega.is-active .bl_megaMenu {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* ------------------------------
   Mega Menu Layout
   ------------------------------ */
.bl_megaMenu_left {
  width: 160px;
  border-right: 1px solid #ececec;
  padding: 20px 20px 0 0;
  padding-right: 20px;
  font-family: "Josefin Sans", sans-serif;
}
.bl_megaMenu_left a:hover .bl_megaMenu_left_ttl {
  color: #003b72;
}

.bl_megaMenu_left_ttl {
  font-size: 28px;
  line-height: 1.1;
  color: #0056b3;
  margin-bottom: 5px;
}

.bl_megaMenu_left_sub {
  margin: 0 2px;
  font-size: 16px;
  font-weight: bold;
  color: #000;
}

.bl_megaMenu_right {
  width: calc(100% - 160px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: 20px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

/* ------------------------------
   Card (block)
   ------------------------------ */
.bl__megaMenucard {
  width: 33.33%;
  padding: 0 10px 10px;
  display: block;
  text-decoration: none;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.18s ease, -webkit-box-shadow 0.18s ease;
  transition: -webkit-transform 0.18s ease, -webkit-box-shadow 0.18s ease;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
  transition: transform 0.18s ease, box-shadow 0.18s ease, -webkit-transform 0.18s ease, -webkit-box-shadow 0.18s ease;
}
.bl__megaMenucard:hover .bl__megaMenucard_img {
  -webkit-transform: scale(1.02);
          transform: scale(1.02);
}
.bl__megaMenucard:hover .bl__megaMenucard_ttl {
  color: #003b72;
}

.bl__megaMenucard_img {
  width: 100%;
  display: block;
  border-radius: 10px;
  overflow: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.bl__megaMenucard_ttl {
  display: block;
  padding: 5px 2px 0;
  font-weight: 700;
  color: #0056b3;
  font-family: "Josefin Sans", sans-serif;
  white-space: wrap;
}

.bl__megaMenucard_sub {
  display: block;
  padding: 0 2px;
  font-size: 12px;
  color: #444;
}

/* ------------------------------------------------------------
* トピックパス
* ------------------------------------------------------------ */
.bl_topicpath {
  margin: 0;
  padding: 5px 10px 5px 10px;
  font-size: 12px;
  line-height: 1.3;
  position: relative;
  z-index: 3;
}

.bl_topicpath_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0;
  margin: 0 0 0 -0.5em;
  list-style: none;
}
.bl_topicpath_list.bl_topicpath_list__categoryindex {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 20px;
}
.bl_categoryTitle_cont__news .bl_topicpath_list.bl_topicpath_list__categoryindex {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.bl_topicpath_list::after {
  display: block;
  clear: both;
  content: "";
}
.bl_topicpath_item {
  padding: 5px 0.1em 5px 0.1em;
  opacity: 0.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.bl_topicpath_item::after {
  content: "";
  display: block;
  width: 2em;
  height: 1px;
  margin: 0.5em 10px;
  background-color: #aaa;
}
.bl_categoryTitle:not(.bl_categoryTitle__nokeyimage) .bl_topicpath_list__categoryindex .bl_topicpath_item {
  color: #fff;
  opacity: 0.8;
}
.bl_categoryTitle:not(.bl_categoryTitle__nokeyimage) .bl_topicpath_list__categoryindex .bl_topicpath_item::after {
  background-color: #fff;
}
.bl_topicpath_item:last-child {
  background: transparent;
}
.bl_topicpath_item:last-child::after {
  display: none;
}
.bl_topicpath_item a {
  color: #000;
  text-decoration: none;
}
.bl_categoryTitle:not(.bl_categoryTitle__nokeyimage) .bl_topicpath_list__categoryindex .bl_topicpath_item a {
  color: #fff;
}
.bl_topicpath_item a:hover,
.bl_topicpath_item a:active {
  text-decoration: underline;
}
/* ------------------------------------------------------------
* CTAエリア
* ------------------------------------------------------------ */
.bl_cta {
  position: relative;
  padding: 100px 20px;
  background-image: url(assets/cta_background.jpg);
  background-size: cover;
  background-position: center;
  color: #fff;
}
.bl_cta .el_ttlHeading {
  color: #fff;
}
.bl_cta::after {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  display: block;
  width: 100%;
  height: 100%;
  inset: 0;
  margin: auto;
  z-index: 1;
}

.bl_cta_inner {
  position: relative;
  z-index: 2;
}

.bl_cta_contwrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.bl_cta_telnumber {
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(30px, 10vw, 60px);
  letter-spacing: 0.05em;
}
.bl_cta_telnumber a {
  color: #fff;
  text-decoration: none;
}
.bl_cta_telnumber::before {
  content: "";
  width: 50px;
  height: 50px;
  display: inline-block;
  margin-right: 10px;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iNDYiIHZpZXdCb3g9IjAgMCAzMiA0NiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzExNTZfMjI3MSkiPgo8cGF0aCBkPSJNMjQuOTgzOSAyOS44NTY5TDE4LjIxOTcgMzMuMzAyNEMxNC4xOTUzIDI4LjI1MzEgMTEuMjQ4MSAyMi41NjcgOS40NDczMSAxNi4zODEzTDE2LjIxMTUgMTIuOTM1OEMxNi41MjQ1IDEyLjc3NDYgMTYuNjUwNiAxMi4zOTE4IDE2LjQ4OCAxMi4wODE1TDEwLjQwNjcgMC4zNDY3ODhDMTAuMzI5NCAwLjE5NzY4NiAxMC4xOTUzIDAuMDg0ODUyNCAxMC4wMzI3IDAuMDMyNDY1MkM5Ljg3MDA3IC0wLjAxOTkyMiA5LjY5NTI4IC0wLjAwMzgwMjkxIDkuNTQ0ODcgMC4wNzI3NjNMNi44OTA0IDEuNDI2NzdDNC4zMzc1NSAyLjczNjQ1IDIuOTM5MTggMy45MDUwOSAyLjE4MzA4IDQuNzUxMzRDMS44Mzc1NSA1LjIxNDc3IDEuNTU3MDYgNS42MzM4NyAxLjQ1NTQ0IDUuODM5MzlDMC44MjUzNTcgNi45OTU5MyAwLjQwMjU5MyA4LjI2MTI5IDAuMTk5MzQxIDkuNTk5MThDLTAuMDAzOTExMTMgMTAuOTEyOSAtMC4wNDg2MjY2IDEyLjI5NTEgMC4wNjUxOTQ2IDEzLjcwOTZDMC4wNzMzMjQ2IDEzLjgxODQgMC4wODU1MTk4IDEzLjkzMTIgMC4wOTc3MTQ5IDE0LjA0TDAuMTEzOTc1IDE0LjE4NTFDMC4xMTM5NzUgMTQuMjI5NCAwLjExODA0IDE0LjI3MzcgMC4xMjIxMDUgMTQuMzE0QzAuMTIyMTA1IDE0LjM4NjYgMC4xMzAyMzUgMTQuNDU5MSAwLjEzNDMgMTQuNTMxNkMwLjI2ODQ0NyAxNi4wMTA2IDAuNTM2NzM5IDE3LjQ4OTUgMC45MzEwNDggMTguOTMyMkMxLjE2Mjc2IDE5Ljc4NjUgMS40MzUxMSAyMC42NTY5IDEuNzM1OTMgMjEuNTExMkwxLjc5Mjg0IDIxLjY3NjRDMS44Mzc1NSAyMS44MTM1IDEuODgyMjcgMjEuOTUwNSAxLjkzMTA1IDIyLjA4NzVDMi40MDY2NiAyMy40MzM0IDIuOTE4ODUgMjQuNzIzIDMuNDQ3MzEgMjUuOTE5OEwzLjY1ODY5IDI2LjM4MzJDNC4xMjIxMSAyNy40MTg5IDQuNTgxNDUgMjguMzY1OSA1LjAxMjM1IDI5LjIwMDFMNS4wNjUxOSAyOS4zMDA4TDUuMTI2MTcgMjkuNDI1N0M1LjU2NTE5IDMwLjI2NzkgNi4wODE0NSAzMS4xOTg4IDYuNjcwODkgMzIuMTk4MkM2LjY3MDg5IDMyLjE5ODIgNi42ODcxNSAzMi4yMjI0IDYuNjg3MTUgMzIuMjI2NEw2LjkwNjY2IDMyLjU5NzJDNy41NzczOSAzMy43MTc0IDguMzM3NTUgMzQuODgyMSA5LjE2NjgyIDM2LjA1MDdDOS4yNjAzMiAzNi4xODM3IDkuMzUzODEgMzYuMzEyNiA5LjQ1MTM3IDM2LjQ0MTZMOS41NDg5MyAzNi41NzQ2QzEwLjA3MzMgMzcuMzA0IDEwLjYxOCAzOC4wMTcyIDExLjE3NSAzOC42OTQyQzEyLjEyNjIgMzkuODUwOCAxMy4xODMxIDQwLjkyNjcgMTQuMzE3MiA0MS44OTM5QzE0LjM3MDEgNDEuOTM4MiAxNC40MjcgNDEuOTgyNSAxNC40Nzk4IDQyLjAyNjlDMTQuNTEyMyA0Mi4wNTUxIDE0LjU0ODkgNDIuMDc5MiAxNC41NjkzIDQyLjA5OTRMMTQuNjk5MyA0Mi4yMTIyQzE0Ljc4NDcgNDIuMjg4OCAxNC44NzAxIDQyLjM2MTMgMTQuOTU1NCA0Mi40MzM5QzE2LjA0ODkgNDMuMzQ4NiAxNy4yMDc1IDQ0LjExODMgMTguNDAyNiA0NC43MTg4QzE5LjYyMjEgNDUuMzM1MyAyMC45MDY3IDQ1LjczMDIgMjIuMTk5MyA0NS44OTE0QzIyLjQ3MTcgNDUuOTM1OCAyMi43NCA0NS45NjggMjMuMDA4MyA0NS45OTYyQzIzLjM4NjMgNDYuMDI0NCAyNS4wODE1IDQ2LjA3NjggMjcuMjE5NyA0NC45ODg4TDMxLjY1NDYgNDIuNzI4QzMxLjk3MTcgNDIuNTY2OSAzMi4wOTM3IDQyLjE4NCAzMS45MzEgNDEuODczN0wyNS44NDk3IDMwLjEzOUMyNS42ODcxIDI5LjgyODcgMjUuMzAxIDI5LjcwMzggMjQuOTg4IDI5Ljg2NUwyNC45ODM5IDI5Ljg1NjlaIiBmaWxsPSJ3aGl0ZSIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzExNTZfMjI3MSI+CjxyZWN0IHdpZHRoPSIzMiIgaGVpZ2h0PSI0NiIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K);
  background-position: center;
  background-size: contain;
  position: relative;
  top: 8px;
}
/* ------------------------------------------------------------
* フッターのコンテンツ
* ------------------------------------------------------------ */
.bl_footer_headlink {
  border-bottom: 1px solid #fff;
  padding-bottom: 20px;
  margin-bottom: 80px;
}
.bl_footer_headlink a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #fff;
  font-family: "Josefin Sans", sans-serif;
  font-size: 50px;
  text-decoration: none;
  font-weight: 100;
}
.bl_footer_headlink a::after {
  content: "";
  display: block;
  width: 1.5em;
  height: 1.5em;
  border-radius: 999em;
  border: 1px solid #fff;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjYiIHZpZXdCb3g9IjAgMCAyNyAyNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI1LjkyMDMgMTMuMzEzNkMyNi4zMTA4IDEyLjkyMyAyNi4zMTA4IDEyLjI4OTkgMjUuOTIwMyAxMS44OTkzTDE5LjU1NjMgNS41MzUzOEMxOS4xNjU4IDUuMTQ0ODUgMTguNTMyNiA1LjE0NDg1IDE4LjE0MjEgNS41MzUzOEMxNy43NTE2IDUuOTI1OSAxNy43NTE2IDYuNTU5MDcgMTguMTQyMSA2Ljk0OTU5TDIzLjc5OSAxMi42MDY0TDE4LjE0MjEgMTguMjYzM0MxNy43NTE2IDE4LjY1MzggMTcuNzUxNiAxOS4yODcgMTguMTQyMSAxOS42Nzc1QzE4LjUzMjYgMjAuMDY4IDE5LjE2NTggMjAuMDY4IDE5LjU1NjMgMTkuNjc3NUwyNS45MjAzIDEzLjMxMzZaTTAgMTIuNjA2NFYxMy42MDY0SDI1LjIxMzJWMTIuNjA2NFYxMS42MDY0SDBWMTIuNjA2NFoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
  background-size: 30%;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  vertical-align: middle;
}

.bl_footer_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.bl_footer_corplogo {
  width: 300px;
  padding-right: 50px;
}

.bl_footer_logobtmlink_outer {
  margin-top: 40px;
}

.bl_footerlogoimg {
  width: 100%;
}

.bl_footer_logobtmlink_sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.bl_footer_logobtmlink_sns a {
  display: inline-block;
  width: 60px;
  height: 60px;
  border-radius: 999px;
  border: 1px solid #fff;
  padding: 15px;
  margin: 5px;
}
.bl_footer_logobtmlink_sns a:hover {
  background-color: rgba(255, 255, 255, 0.5);
}

.bl_footernav_wrap {
  width: calc(100% - 300px);
  padding-left: 30px;
}

.bl_footer_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 40px;
  border-bottom: 1px solid #fff;
  padding-bottom: 40px;
}
.bl_footer_nav li {
  margin-bottom: 30px;
  width: 25%;
  list-style: none;
  line-height: 1.2;
}
.bl_footer_nav li a {
  color: #fff;
  text-decoration: none;
}
.bl_footer_nav li ul {
  margin-top: 0.5em;
}
.bl_footer_nav li ul li {
  width: 100%;
  margin: 0 0 5px;
}
.bl_footer_nav li ul li a {
  font-size: 0.8em;
  opacity: 0.7;
}

.bl_footer_companyinfo_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -20px;
}

.bl_footer_companyinfo {
  width: 33.3333333333%;
  padding: 20px;
}
.bl_footer_companyinfo.bl_footer_companyinfo_half {
  width: 50%;
}
.bl_footer_companyinfo .bl_footer_companyadress {
  font-size: 12px;
  opacity: 0.7;
}
.bl_footer_companyinfo .bl_footer_companyadress a {
  color: #fff;
}

.bl_footer_copyright {
  text-align: center;
  font-size: 12px;
  margin: 60px 0 0;
  font-family: "Josefin Sans", sans-serif;
  opacity: 0.7;
}
/* ------------------------------------------------------------
* スライダー
* ------------------------------------------------------------ */
.bl_slider_wrap {
  position: relative;
  padding-top: 80px;
  overflow: hidden;
}

.bl_slider_cont {
  max-width: 1180px;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}

.bl_slider .slick-list {
  overflow: visible;
}

.bl_slider_item {
  padding-right: 7px;
  padding-left: 7px;
}
.slick-slide:nth-child(3n-1) .bl_slider_item {
  padding-top: 20px;
}
.slick-slide:nth-child(3n) .bl_slider_item {
  padding-top: 40px;
}

.bl_slider_img {
  overflow: hidden;
  border-radius: 20px;
}
.bl_slider_img img {
  display: block;
  width: 100%;
  height: auto;
}
/* ------------------------------------------------------------
* サマリー
* ------------------------------------------------------------ */
.bl_summaryList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
  padding: 0;
  list-style: none;
}
.bl_summaryList.bl_summaryList__col2 .bl_summaryItem {
  width: 50%;
}
.bl_summaryList.bl_summaryList__col1 .bl_summaryItem {
  width: 100%;
}

.bl_summaryItem {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  width: 50%;
  margin-bottom: 40px;
}
.bl_summaryItem.bl_summaryItem__col1 {
  width: 100%;
}
.bl_summaryItem_inner {
  display: block;
  margin: 0 auto;
  color: #000;
  text-decoration: none;
}
.bl_summaryItem_inner:visited, .bl_summaryItem_inner:active, .bl_summaryItem_inner:hover {
  color: #000;
  text-decoration: none;
}
.bl_summaryItem_inner.bl_summaryItem_inner__narrow {
  padding: 0 40px;
}

.bl_summaryItem.bl_summaryItem__sideimage .bl_summaryItem_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.bl_summaryItem.bl_summaryItem__sideimage .bl_summaryItem_media {
  width: 40%;
}
.bl_summaryItem.bl_summaryItem__sideimage .bl_summaryItem_info {
  width: 60%;
  display: block;
  padding-left: 20px;
}

.bl_summaryItem_media {
  position: relative;
  width: 100%;
  margin: 0 0 10px;
  overflow: hidden;
  border: 1px solid #eee;
}

.bl_summaryItem_mediaImg img {
  display: block;
  width: 100%;
  height: auto;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.bl_summaryItem_inner:active .bl_summaryItem_mediaImg img, .bl_summaryItem_inner:hover .bl_summaryItem_mediaImg img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.bl_summaryItem_info {
  margin: 0 0 5px;
  font-size: 14px;
  line-height: 1.3;
  color: #aaa;
}
.bl_summaryItem_info.bl_summaryItem_info__large {
  color: #000;
  font-size: 14px;
}

.bl_summaryItem_info_new {
  margin-left: 0.5em;
  color: #fa4027;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.bl_summaryItem_inner:active .bl_summaryItem_info_new, .bl_summaryItem_inner:hover .bl_summaryItem_info_new {
  opacity: 0.7;
}

.bl_summaryItem_title {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.bl_summaryItem_inner:active .bl_summaryItem_title, .bl_summaryItem_inner:hover .bl_summaryItem_title {
  opacity: 0.7;
}

.bl_summaryItem_title_important {
  display: inline-block;
  padding: 0 0.5em;
  margin-right: 0.3em;
  font-size: 0.75em;
  line-height: 1.7;
  color: #fff;
  vertical-align: 2px;
  background-color: #fa4027;
  border-radius: 3px;
}
.bl_summaryItem_title_important::before {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.2em;
  vertical-align: -0.1em;
  content: "";
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTcuMDYsMTAuMDhsLS42Ny02LjMyLS4wNy0yLjc2aDMuMzhsLS4wOSwyLjc2LS42NSw2LjMyaC0xLjlabS45NCw0LjkyYy0xLjA5LDAtMS45Mi0uNzQtMS45Mi0xLjgxcy44My0xLjgzLDEuOTItMS44MywxLjkyLjc4LDEuOTIsMS44My0uODMsMS44MS0xLjkyLDEuODFaIiBzdHlsZT0iZmlsbDojZmE0MDI3OyBzdHJva2Utd2lkdGg6MHB4OyIvPjwvc3ZnPg==) no-repeat center/90% auto #fff;
  border-radius: 50%;
}
/* ------------------------------------------------------------
* エントリー
* ------------------------------------------------------------ */
/* エントリーのタイトル
* -------------------------------------------------- */
.bl_entryHeader {
  margin: 0 0 20px;
}

.bl_entryHeaderInfo {
  margin: 0 0 10px;
  font-size: 16px;
}

.bl_entryHeaderInfo_date {
  margin: 0 0.5em 0 0;
  color: #aaa;
}

.bl_entryHeaderInfo_new {
  margin: 0 0.5em 0 0;
  font-size: 0.8em;
  color: #fa4027;
}

.bl_entryHeaderInfo_important {
  display: inline-block;
  padding: 0 0.5em;
  margin-right: 0.5em;
  font-size: 0.75em;
  line-height: 1.7;
  color: #fff;
  vertical-align: 2px;
  background-color: #fa4027;
  border-radius: 3px;
}
.bl_entryHeaderInfo_important::before {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.2em;
  vertical-align: -0.1em;
  content: "";
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTcuMDYsMTAuMDhsLS42Ny02LjMyLS4wNy0yLjc2aDMuMzhsLS4wOSwyLjc2LS42NSw2LjMyaC0xLjlabS45NCw0LjkyYy0xLjA5LDAtMS45Mi0uNzQtMS45Mi0xLjgxcy44My0xLjgzLDEuOTItMS44MywxLjkyLjc4LDEuOTIsMS44My0uODMsMS44MS0xLjkyLDEuODFaIiBzdHlsZT0iZmlsbDojZmE0MDI3OyBzdHJva2Utd2lkdGg6MHB4OyIvPjwvc3ZnPg==) no-repeat center/90% auto #fff;
  border-radius: 50%;
}

.bl_entryHeaderTitle {
  padding: 0 0 1.33em;
  margin: 0 0 1.33em;
  font-size: 28px;
  line-height: 1.5;
  border-bottom: solid 1px #ddd;
}
/* ユニットのスタイル
* -------------------------------------------------- */
/* ----- 本文 ----- */
.bl_entry {
  word-wrap: break-word;
}
.bl_entry p {
  margin: 0 0 2em;
}

/* ----- 見出し ----- */
.bl_entry h2 {
  margin: 0 10px 0.72em;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.5;
  color: #0056b3;
}
.bl_entry .bl_title_enjp {
  font-size: 28px;
  position: relative;
  color: #0056b3;
}
.bl_entry .bl_title_enjp::after {
  content: attr(data-en);
  font-size: 100px;
  line-height: 0.85;
  display: block;
  font-family: "Josefin Sans", sans-serif;
  color: #f5f5f5;
  position: absolute;
  z-index: -1;
  bottom: -10px;
  width: calc(50dvw + 360px + 2px);
}
.bl_entry h3 {
  margin-bottom: 0.72em;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}
.bl_entry h4 {
  margin-bottom: 0.72em;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
}

/* ----- エントリー内コンテナー ----- */
.entry-container {
  margin: 0 10px;
}

[class^=column-table] .entry-container {
  margin-bottom: 2em;
  overflow-x: auto;
}

[class^=column-table] table {
  margin-bottom: 0;
}

/* ----- テーブル ----- */
.bl_entry table {
  width: 100%;
  border-collapse: collapse;
}
.bl_entry th,
.bl_entry td {
  padding: 0.6em 0.7em;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
  font-size: 12px;
}
.bl_entry .acms-table-responsive th,
.bl_entry .acms-table-responsive td {
  display: table-cell;
  white-space: nowrap;
}
.bl_entry .acms-table-responsive table {
  margin: 0;
}
.bl_entry th {
  font-weight: bold;
  background: #0056b3;
  color: #fff;
}
.bl_entry tr:nth-of-type(odd) {
  background-color: #ededed;
}
.bl_entry .entry-custom-table {
  margin-bottom: 2em;
}
/* ----- リスト ----- */
.bl_entry ul {
  padding: 0 0 0 2em;
  margin: 0 10px 2em;
}
.bl_entry ul li {
  margin: 0 0 0.375em;
  line-height: 1.5;
}
.bl_entry ul li:last-child {
  margin-bottom: 0;
}
.bl_entry ul.el_note {
  padding-left: 0;
  list-style: none;
}
.bl_entry ul.el_note li {
  padding-left: 1em;
  margin-bottom: 0.5em;
  text-indent: -1em;
}

/* ----- 番号付きリスト ----- */
.bl_entry ol {
  padding: 0 0 0 2em;
  margin: 0 10px 2em;
}
.bl_entry ol li {
  margin: 0 0 0.375em;
  line-height: 1.5;
}
.bl_entry ol li:last-child {
  margin-bottom: 0;
}

/* ----- 定義リスト ----- */
.bl_entry dl {
  margin-top: 0;
  margin-bottom: 2em;
  line-height: 1.5;
}
.bl_entry dt {
  margin: 0 0 0.375em;
  font-weight: bold;
  line-height: 1.5;
}
.bl_entry dd {
  margin-bottom: 0.625em;
  margin-left: 0;
  line-height: 1.5;
}
.bl_entry dl.el_horizontal dt {
  float: left;
  width: 10em;
  padding: 1em 1em 1em 1em;
}
.bl_entry dl.el_horizontal dd {
  padding: 1em 1em 1em 11em;
  border-bottom: 1px solid #ddd;
}

/* ----- ユニット ----- */
.bl_entry .caption {
  font-size: 12px;
  color: #aaa;
}

.column-file-auto + .caption {
  margin-left: 10px;
}

[class*=column-media-] a,
[class*=column-image-] a {
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
[class*=column-media-] a:hover,
[class*=column-image-] a:hover {
  opacity: 0.8;
}

/* ----- 引用URL ----- */
.bl_entry .quote {
  padding: 0;
  border: solid 1px #ddd;
}
.bl_entry .quoteLink {
  display: block;
  padding: 15px;
  color: #000;
  text-decoration: none;
  background-color: #fff;
  border: none;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
.bl_entry .quoteLink:visited {
  color: #000;
  text-decoration: none;
}
.bl_entry .quoteLink:hover {
  background-color: #464646;
}
.bl_entry .quoteLink:hover .quoteTitle {
  text-decoration: underline;
}
.bl_entry .quote-maincontents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.bl_entry .quoteTitle-wrap {
  margin: 0 20px 10px 0;
}
.bl_entry .quoteTitle {
  font-size: 16px;
  font-weight: bold;
  color: #000;
  text-align: left;
}
.bl_entry .quoteImageContainer {
  float: none;
  min-width: 100px;
  margin: 0 0 10px;
}
.bl_entry .quoteSiteName {
  margin: 0;
  font-size: 14px;
  text-align: left;
}
.bl_entry .quoteDescription {
  font-size: 12px;
  text-align: left;
}
.bl_entry .caption {
  margin-top: 5px;
  margin-bottom: 10px;
  font-size: 12px;
  line-height: 1;
  color: #777;
}

/* ----- 罫線ユニット ----- */
.unit-separator {
  margin: 0 0 2em;
  border: 0;
  border-top: solid 1px #aaa;
}

/* ----- カードユニット ----- */
.unit-cards {
  margin: 0 10px 2em;
}
.unit-cards ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
  padding: 0;
  margin-bottom: -30px;
  list-style: none;
}
.unit-cards ul li {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-bottom: 30px;
}
.unit-cards ul li:last-child {
  margin-bottom: 30px;
}
.unit-cards h3,
.unit-cards p {
  margin-right: 0;
  margin-left: 0;
}

/* ----- ユニットグループ ----- */
[class*=bl_entryUnit_bg] {
  padding: 20px 10px;
  margin: 0 10px 2em;
  overflow: hidden;
  border-radius: 10px;
}
[class*=bl_entryUnit_bg] *:last-child {
  margin-bottom: 0;
}
[class*=bl_entryUnit_bg] h2,
[class*=bl_entryUnit_bg] h3,
[class*=bl_entryUnit_bg] h4 {
  margin-bottom: 0.5em;
}

.bl_entryUnit_bgGray {
  background-color: #464646;
}

.column-html iframe {
  width: 100% !important;
}

/* WordPressインポート時の調整
* -------------------------------------------------- */
.bl_entry img[class*=wp-image-] {
  margin: 0 10px 20px;
}

/* ----- 定義リスト(カスタムユニット) ----- */
.bl_entry .bl_customDescriptionList .bl_customDescriptionList_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #e6e6e6;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bl_entry .bl_customDescriptionList dt {
  width: 8em;
  margin: 1em 0;
  padding: 0.5em;
  background-color: #e6e6e6;
  text-align: center;
}
.bl_entry .bl_customDescriptionList dd {
  width: calc(100% - 8em);
  padding: 1em;
  margin: 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.bl_entryCategorySearch_wrap {
  margin-bottom: 5px;
}
.bl_entryCategorySearch_wrap span {
  background-color: #0056b3;
  display: inline-block;
  border-radius: 100px;
  margin: 0 3px 3px 0;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1;
  font-weight: bold;
}

.bl_entryCategorySearch {
  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: 0 0 60px;
}

.bl_entryCategoryLabel {
  margin-bottom: 5px;
}
.bl_entryCategoryLabel span {
  background-color: #0056b3;
  display: inline-block;
  border-radius: 100px;
  margin: 0 3px 3px 0;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1;
  font-weight: bold;
}

.bl_entryEmbetunit {
  margin: 0 10px;
}
.bl_entryEmbetunit > iframe {
  width: 100% !important;
}

.bl_title_enjp {
  margin-top: 150px;
}
.bl_title_enjp p {
  display: inline-block;
  margin: 0 10px 5px;
  color: #0056b3;
  font-weight: bold;
  border-bottom: 1px solid;
  font-style: italic;
  font-size: 20px;
}
.acms-grid > .column-group:first-child .bl_title_enjp {
  margin-top: 0;
}

.bl_tagfilter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -40px;
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #aaa;
}
.bl_tagfilter li {
  list-style: none;
  margin-right: 10px;
  margin-bottom: 5px;
}

.bl_entrysidenav_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.bl_entrysidenavlist {
  width: 200px;
  position: sticky;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  top: 200px;
  padding-bottom: 100px;
}

.bl_entrysidenavcont {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: calc(100% - 200px);
  padding: 0 10px;
}
.bl_entrysidenavcont.bl_entrysidenavcont__p-color {
  position: relative;
  padding: 50px 10px 50px 50px;
  margin-bottom: 80px;
}
.bl_entrysidenavcont.bl_entrysidenavcont__p-color::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: calc(50dvw + 360px + 2px);
  height: 100%;
  background-color: #0056b3;
  z-index: -1;
}

.bl_entrysidenavlist {
  list-style: none;
}
.bl_entrysidenavlist li a {
  color: #000;
  font-weight: bold;
  display: inline-block;
  padding: 5px 10px;
  text-decoration: none;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  line-height: 1.2;
}
.bl_entrysidenavlist li a.is-active {
  background-color: #000;
  color: #fff;
}
.bl_officeinfo_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 80px;
}
.bl_officeinfo_wrap p {
  margin: 0;
  font-size: 14px;
}
.bl_officeinfo_wrap .bl_officeinfo_image {
  width: 60%;
}
.bl_officeinfo_wrap .bl_officeinfo_image div {
  margin-bottom: 20px;
}
.bl_officeinfo_wrap .bl_officeinfo_text {
  width: 40%;
  padding: 0 20px;
}
.bl_officeinfo_wrap .bl_officeinfo_title {
  font-size: 24px;
  margin: 0;
}
.bl_officeinfo_wrap .bl_officeinfo_adress {
  margin: 10px 0;
  padding: 0 0 10px;
  border-bottom: 1px dotted #333;
}
.bl_officeinfo_wrap .bl_officeinfo_business {
  margin-bottom: 10px;
}
.bl_officeinfo_wrap .bl_officeinfo_ttl {
  font-weight: bold;
}
.bl_officeinfo_wrap .bl_officeinfo_officialsite {
  margin: 10px 0;
  padding: 10px 0;
  border-top: 1px dotted #333;
}
/* ------------------------------------------------------------
* ページタイトル部分
* ------------------------------------------------------------ */
.bl_pagetitle_ja {
  display: inline-block;
  font-size: 18px;
  line-height: 1.5;
  margin-bottom: 10px;
  font-weight: bold;
  color: #fff;
}
.bl_pagetitle_ja.bl_pagetitle_ja__company {
  font-size: 16px;
  background-color: #0056b3;
  color: #fff;
  padding: 5px 20px;
}
.bl_categoryTitle__nokeyimage .bl_pagetitle_ja {
  color: #0056b3;
}
.bl_pagetitle_ja.bl_pagetitle_ja__news {
  font-size: 16px;
  background-color: #0056b3;
  color: #fff;
  padding: 5px 20px;
}

.bl_pagetitle_en {
  font-family: "Josefin Sans", sans-serif;
  font-size: 110px;
  line-height: 1;
  margin-top: 20px;
  margin-bottom: 0;
  font-weight: bold;
  position: relative;
  color: #fff;
  z-index: 2;
  max-width: 1000px;
}
.bl_pagetitle_en.bl_pagetitle_en__company {
  color: #0056b3;
  font-size: 70px;
}
.bl_pagetitle_en.bl_pagetitle_en__news {
  color: #0056b3;
  font-size: 70px;
}
.bl_categoryTitle__nokeyimage .bl_pagetitle_en {
  color: #0056b3;
}

.bl_pagetitle {
  position: relative;
}

.bl_categoryTitle {
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-attachment: fixed;
  background-position: center;
}

.bl_categoryTitle_inner {
  position: relative;
}
.bl_categoryTitle_inner.bl_categoryTitle_inner__business {
  background-size: cover;
  background-position: top 5% center;
}

.bl_pagetitleimage {
  margin-top: 10px;
}
.bl_pagetitleimage.bl_pagetitleimage__company img {
  border-radius: 20px;
}
.bl_categoryTitleImg {
  margin-bottom: 40px;
  float: right;
  width: 70%;
  height: 300px;
}
.bl_categoryTitleImg > img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  height: 300px;
}

.bl_pagetitleImg_img {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 40px;
}

.bl_pagetitleSub {
  margin: 40px 0 0;
}

.ly_title__photo .bl_pagetitle {
  padding-right: 60%;
}

.bl_categoryTitle_cont {
  padding: 200px 10px 180px;
  position: relative;
}
.bl_categoryTitle__nokeyimage .bl_categoryTitle_cont {
  padding: 100px 10px 70px;
}
.bl_categoryTitle_cont.bl_categoryTitle_cont__company {
  padding: 70px 10px 40px;
}
.bl_categoryTitle_cont.bl_categoryTitle_cont__company::before {
  content: "";
  display: block;
  width: 26%;
  background-image: url(assets/titleside_mark.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 2%;
  top: 0;
  aspect-ratio: 1/1;
  z-index: 1;
}
.bl_categoryTitle_cont.bl_categoryTitle_cont__news {
  padding: 70px 10px 40px;
}
.bl_categoryTitle_cont .bl_pagetitle_arrow {
  position: absolute;
  width: 110px;
  height: 110px;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iX3gzMl8iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNTAgNTAiPgogIDwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyOS44LjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiAyLjEuMSBCdWlsZCAyKSAgLS0+CiAgPGRlZnM+CiAgICA8c3R5bGU+CiAgICAgIC5zdDAgewogICAgICAgIGZpbGw6IG5vbmU7CiAgICAgICAgc3Ryb2tlOiAjZmZmOwogICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDsKICAgICAgICBzdHJva2Utd2lkdGg6IDQuM3B4OwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvZGVmcz4KICA8cG9seWxpbmUgY2xhc3M9InN0MCIgcG9pbnRzPSIxNi4yIDcuMSAzNS4yIDI2IDE2LjkgNDQuMyIvPgo8L3N2Zz4=);
  background-size: 20%;
  background-position: center;
  border-radius: 999px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  border: 1px solid #fff;
  background-color: rgba(255, 255, 255, 0.2);
  right: 0;
  bottom: 0;
}
.bl_categoryTitlebtmcont {
  padding: 60px 0;
}

.bl_categoryTitlebtmcopy {
  margin-bottom: 10px;
  position: relative;
  z-index: 2;
}
.bl_categoryTitlebtmcopy span {
  background-color: #0056b3;
  color: #fff;
  font-size: 40px;
  line-height: 1.5;
  margin-bottom: 8px;
  display: inline-block;
  padding: 5px 20px;
}

.bl_categoryTitlebtm_body {
  max-width: 600px;
  color: #fff;
}
/* ------------------------------------------------------------
* ページャー
* ------------------------------------------------------------ */
/* ページ送り
* -------------------------------------------------- */
.bl_pagerList {
  padding: 0;
  margin: 0 -2px;
  text-align: center;
  list-style: none;
}
.bl_pagerList li {
  display: inline-block;
  margin: 2px;
}
.bl_pagerList li.cur > span {
  display: inline-block;
  width: 30px;
  height: 30px;
  font-size: 12px;
  font-weight: bold;
  line-height: 30px;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  background: #333;
  border-radius: 50%;
}

.bl_pagerItem_btn {
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  overflow: hidden;
  font-size: 12px;
  font-weight: bold;
  line-height: 30px;
  color: #000;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  background: #e6e6e6;
  border-radius: 50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_pagerItem_btn:visited {
  color: #000;
  text-decoration: none;
}
.bl_pagerItem_btn:active, .bl_pagerItem_btn:hover {
  color: #fff;
  text-decoration: none;
  background-color: #aaa;
}
.bl_pagerItem_btn.bl_pagerItem_btn__forward, .bl_pagerItem_btn.bl_pagerItem_btn__back {
  background-color: transparent;
}
.bl_pagerItem_btn.bl_pagerItem_btn__forward::before, .bl_pagerItem_btn.bl_pagerItem_btn__forward::after, .bl_pagerItem_btn.bl_pagerItem_btn__back::before, .bl_pagerItem_btn.bl_pagerItem_btn__back::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_pagerItem_btn.bl_pagerItem_btn__forward::after, .bl_pagerItem_btn.bl_pagerItem_btn__back::after {
  opacity: 0;
}
.bl_pagerItem_btn.bl_pagerItem_btn__forward:active::before, .bl_pagerItem_btn.bl_pagerItem_btn__forward:hover::before, .bl_pagerItem_btn.bl_pagerItem_btn__back:active::before, .bl_pagerItem_btn.bl_pagerItem_btn__back:hover::before {
  opacity: 0;
}
.bl_pagerItem_btn.bl_pagerItem_btn__forward:active::after, .bl_pagerItem_btn.bl_pagerItem_btn__forward:hover::after, .bl_pagerItem_btn.bl_pagerItem_btn__back:active::after, .bl_pagerItem_btn.bl_pagerItem_btn__back:hover::after {
  opacity: 1;
}
.bl_pagerItem_btn.bl_pagerItem_btn__forward::before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTEyLDhjMC0uMjYtLjEtLjUxLS4yOS0uNzFMNS43MSwxLjI5Yy0uMzktLjM5LTEuMDItLjM5LTEuNDEsMHMtLjM5LDEuMDIsMCwxLjQxbDUuMjksNS4yOS01LjI5LDUuMjljLS4zOS4zOS0uMzksMS4wMiwwLDEuNDFzMS4wMi4zOSwxLjQxLDBsNi02Yy4yLS4yLjI5LS40NS4yOS0uNzFaIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOjBweDsiLz48L3N2Zz4=);
}
.bl_pagerItem_btn.bl_pagerItem_btn__forward::after {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTEyLDhjMC0uMjYtLjEtLjUxLS4yOS0uNzFMNS43MSwxLjI5Yy0uMzktLjM5LTEuMDItLjM5LTEuNDEsMHMtLjM5LDEuMDIsMCwxLjQxbDUuMjksNS4yOS01LjI5LDUuMjljLS4zOS4zOS0uMzksMS4wMiwwLDEuNDFzMS4wMi4zOSwxLjQxLDBsNi02Yy4yLS4yLjI5LS40NS4yOS0uNzFaIiBzdHlsZT0iZmlsbDojZmZjYzE2OyBzdHJva2Utd2lkdGg6MHB4OyIvPjwvc3ZnPg==);
}
.bl_pagerItem_btn.bl_pagerItem_btn__back::before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTQsOGMwLC4yNi4xLjUxLjI5LjcxbDYsNmMuMzkuMzksMS4wMi4zOSwxLjQxLDBzLjM5LTEuMDIsMC0xLjQxbC01LjI5LTUuMjksNS4yOS01LjI5Yy4zOS0uMzkuMzktMS4wMiwwLTEuNDFzLTEuMDItLjM5LTEuNDEsMGwtNiw2Yy0uMi4yLS4yOS40NS0uMjkuNzFaIiBzdHlsZT0ic3Ryb2tlLXdpZHRoOjBweDsiLz48L3N2Zz4=);
}
.bl_pagerItem_btn.bl_pagerItem_btn__back::after {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTQsOGMwLC4yNi4xLjUxLjI5LjcxbDYsNmMuMzkuMzksMS4wMi4zOSwxLjQxLDBzLjM5LTEuMDIsMC0xLjQxbC01LjI5LTUuMjksNS4yOS01LjI5Yy4zOS0uMzkuMzktMS4wMiwwLTEuNDFzLTEuMDItLjM5LTEuNDEsMGwtNiw2Yy0uMi4yLS4yOS40NS0uMjkuNzFaIiBzdHlsZT0iZmlsbDojZmZjYzE2OyBzdHJva2Utd2lkdGg6MHB4OyIvPjwvc3ZnPg==);
}

/* 前後リンク
* -------------------------------------------------- */
.bl_serialNavi {
  padding: 40px 0 40px;
}

.bl_serialNavi_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  margin: 0;
  font-size: 14px;
  list-style: none;
}

.bl_serialNavi_item {
  width: 33.33%;
}
.bl_serialNavi_item.bl_serialNavi_item__prev {
  text-align: left;
}
.bl_serialNavi_item.bl_serialNavi_item__index {
  text-align: center;
}
.bl_serialNavi_item.bl_serialNavi_item__next {
  text-align: right;
}

.bl_serialNaviItem_btn {
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  overflow: hidden;
  font-size: 0;
  color: #000;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  background: #e6e6e6;
  border-radius: 50%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_serialNaviItem_btn::before, .bl_serialNaviItem_btn::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px auto;
}
.bl_serialNaviItem_btn::before {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_serialNaviItem_btn::after {
  opacity: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.bl_serialNavi_item__prev > .bl_serialNaviItem_btn::before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTEuNzksNy4yOUw1Ljc5LDMuMjljLjM5LS4zOSwxLjAyLS4zOSwxLjQxLDBzLjM5LDEuMDIsMCwxLjQxbC0yLjI5LDIuMjloOC41OWMuNTUsMCwxLC40NSwxLDFzLS40NSwxLTEsMUg0LjkxbDIuMjksMi4yOWMuMzkuMzkuMzksMS4wMiwwLDEuNDEtLjIuMi0uNDUuMjktLjcxLjI5cy0uNTEtLjEtLjcxLS4yOUwxLjc5LDguNzFjLS4zOS0uMzktLjM5LTEuMDIsMC0xLjQxWiIgc3R5bGU9InN0cm9rZS13aWR0aDowcHg7Ii8+PC9zdmc+);
}
.bl_serialNavi_item__prev > .bl_serialNaviItem_btn::after {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTEuNzksNy4yOUw1Ljc5LDMuMjljLjM5LS4zOSwxLjAyLS4zOSwxLjQxLDBzLjM5LDEuMDIsMCwxLjQxbC0yLjI5LDIuMjloOC41OWMuNTUsMCwxLC40NSwxLDFzLS40NSwxLTEsMUg0LjkxbDIuMjksMi4yOWMuMzkuMzkuMzksMS4wMiwwLDEuNDEtLjIuMi0uNDUuMjktLjcxLjI5cy0uNTEtLjEtLjcxLS4yOUwxLjc5LDguNzFjLS4zOS0uMzktLjM5LTEuMDIsMC0xLjQxWiIgc3R5bGU9ImZpbGw6I2ZmZjsgc3Ryb2tlLXdpZHRoOjBweDsiLz48L3N2Zz4=);
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}
.bl_serialNavi_item__next > .bl_serialNaviItem_btn::before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTE0LjIxLDcuMjlsLTQtNGMtLjM5LS4zOS0xLjAyLS4zOS0xLjQxLDBzLS4zOSwxLjAyLDAsMS40MWwyLjI5LDIuMjlIMi41Yy0uNTUsMC0xLC40NS0xLDFzLjQ1LDEsMSwxaDguNTlsLTIuMjksMi4yOWMtLjM5LjM5LS4zOSwxLjAyLDAsMS40MS4yLjIuNDUuMjkuNzEuMjlzLjUxLS4xLjcxLS4yOWw0LTRjLjM5LS4zOS4zOS0xLjAyLDAtMS40MVoiIHN0eWxlPSJzdHJva2Utd2lkdGg6MHB4OyIvPjwvc3ZnPg==);
}
.bl_serialNavi_item__next > .bl_serialNaviItem_btn::after {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0ibTE0LjIxLDcuMjlsLTQtNGMtLjM5LS4zOS0xLjAyLS4zOS0xLjQxLDBzLS4zOSwxLjAyLDAsMS40MWwyLjI5LDIuMjlIMi41Yy0uNTUsMC0xLC40NS0xLDFzLjQ1LDEsMSwxaDguNTlsLTIuMjksMi4yOWMtLjM5LjM5LS4zOSwxLjAyLDAsMS40MS4yLjIuNDUuMjkuNzEuMjlzLjUxLS4xLjcxLS4yOWw0LTRjLjM5LS4zOS4zOS0xLjAyLDAtMS40MVoiIHN0eWxlPSJmaWxsOiNmZmY7IHN0cm9rZS13aWR0aDowcHg7Ii8+PC9zdmc+);
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}
.bl_serialNaviItem_btn:visited {
  color: #000;
  text-decoration: none;
}
.bl_serialNaviItem_btn:active, .bl_serialNaviItem_btn:hover {
  color: #fff;
  text-decoration: none;
  background-color: #0056b3;
}
.bl_serialNaviItem_btn.bl_serialNaviItem_btn__staff {
  position: relative;
  display: inline-block;
  width: auto;
  height: 20px;
  overflow: visible;
  font-size: 14px;
  text-align: center;
  background: initial;
}
.bl_serialNaviItem_btn.bl_serialNaviItem_btn__staff::before, .bl_serialNaviItem_btn.bl_serialNaviItem_btn__staff::after {
  position: relative;
}
.bl_serialNaviItem_btn.bl_serialNaviItem_btn__staff:hover {
  color: #0056b3;
}

/* ------------------------------------------------------------
* フォーム
* ------------------------------------------------------------ */
.bl_form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.bl_formGroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  margin: 0 0 1em;
}

.bl_formLabel {
  width: 100%;
  padding: 0 0 0.3em;
  font-weight: bold;
}

.bl_formLabel_required {
  margin-left: 0.5em;
  font-size: 10px;
  background-color: #f00;
  color: #fff;
  display: inline-block;
  padding: 5px 10px;
  line-height: 1;
  position: relative;
  top: -2px;
}

.bl_formControl {
  width: 100%;
}

.bl_formInput {
  position: relative;
  width: 100%;
}
.bl_formInput > .bl_scheduleItem_cover {
  border-radius: 0;
}

/* ----- エラーテキスト ----- */
.bl_formErrorText {
  font-size: 12px;
  color: #fa4027;
}
.bl_formErrorText .acms-icon {
  padding-right: 0.3em;
  vertical-align: -0.03em;
}

/* ----- プライバシーポリシー ----- */
.bl_formPrivacy {
  padding: 30px 40px;
  margin-top: 10px;
  font-size: 14px;
  color: #000;
  border: solid 1px #ddd;
}
.bl_formPrivacy .bl_formPrivacy_ttl {
  font-weight: bold;
  margin-bottom: 10px;
}

.bl_formPrivacy_agree {
  margin-top: 30px;
  font-size: 16px;
  text-align: center;
}

.bl_formPrivacy-checkbox {
  margin: 20px auto 0;
  text-align: center;
}

/* ----- 送信ボタン ----- */
.bl_formBtn {
  margin-top: 30px;
  text-align: center;
}
.bl_formBtn .el_btn {
  width: 100%;
  max-width: 400px;
}

/* ----- 確認画面のテーブル ----- */
.bl_formConfirm {
  width: 100%;
}

.bl_formConfirm_head {
  display: block;
  padding: 0 10px 0.3em;
  text-align: left;
  border-bottom: solid 1px #ddd;
}

.bl_formConfirm_body {
  display: block;
  padding: 0.5em 10px 2em;
  text-align: left;
}

/* ============================================================
*
* ヘルパー
*
* ============================================================ */
/* ------------------------------------------------------------
* フォントとテキストのスタイル
* ------------------------------------------------------------ */
/* 太字 */
.hp_font_bold {
  font-weight: bold !important;
}

/* 文字揃え */
.hp_txt_left {
  text-align: left !important;
}

.hp_txt_right {
  text-align: right !important;
}

.hp_txt_center {
  text-align: center !important;
}

.hp_txt_justify {
  text-align: justify !important;
  text-justify: inter-ideograph !important;
}
/* 文字間を戻す */
.hp_letter_0 {
  letter-spacing: 0 !important;
}

.hp_color_p-color {
  color: #0056b3 !important;
}

.hp_color_wh {
  color: #fff !important;
}

/* 強調 */
.hp_txt_em {
  font-style: normal !important;
  font-weight: bold !important;
}

/* 重要 */
.hp_txt_strong {
  font-weight: bold !important;
  color: #fa4027 !important;
}

/* 上付き文字 */
.hp_txt_sup {
  color: #777;
}

/* 小文字 */
.hp_txt_small {
  font-size: 0.8em !important;
}

/* ------------------------------------------------------------
* パディングとマージン
* ------------------------------------------------------------ */
.hp_pt__0 {
  padding-top: 0 !important;
}

.hp_mt__0 {
  margin-top: 0 !important;
}

.hp_MT__0 {
  margin-top: 0 !important;
}

.hp_pt__xxs {
  padding-top: 5px !important;
}

.hp_mt__xxs {
  margin-top: 5px !important;
}

.hp_MT__xxs {
  margin-top: -5px !important;
}

.hp_pt__xs {
  padding-top: 10px !important;
}

.hp_mt__xs {
  margin-top: 10px !important;
}

.hp_MT__xs {
  margin-top: -10px !important;
}

.hp_pt__sm {
  padding-top: 20px !important;
}

.hp_mt__sm {
  margin-top: 20px !important;
}

.hp_MT__sm {
  margin-top: -20px !important;
}

.hp_pt__md {
  padding-top: 40px !important;
}

.hp_mt__md {
  margin-top: 40px !important;
}

.hp_MT__md {
  margin-top: -40px !important;
}

.hp_pt__lg {
  padding-top: 60px !important;
}

.hp_mt__lg {
  margin-top: 60px !important;
}

.hp_MT__lg {
  margin-top: -60px !important;
}

.hp_pt__xl {
  padding-top: 80px !important;
}

.hp_mt__xl {
  margin-top: 80px !important;
}

.hp_MT__xl {
  margin-top: -80px !important;
}

.hp_pt__xxl {
  padding-top: 100px !important;
}

.hp_mt__xxl {
  margin-top: 100px !important;
}

.hp_MT__xxl {
  margin-top: -100px !important;
}

.hp_pr__0 {
  padding-right: 0 !important;
}

.hp_mr__0 {
  margin-right: 0 !important;
}

.hp_MR__0 {
  margin-right: 0 !important;
}

.hp_pr__xxs {
  padding-right: 5px !important;
}

.hp_mr__xxs {
  margin-right: 5px !important;
}

.hp_MR__xxs {
  margin-right: -5px !important;
}

.hp_pr__xs {
  padding-right: 10px !important;
}

.hp_mr__xs {
  margin-right: 10px !important;
}

.hp_MR__xs {
  margin-right: -10px !important;
}

.hp_pr__sm {
  padding-right: 20px !important;
}

.hp_mr__sm {
  margin-right: 20px !important;
}

.hp_MR__sm {
  margin-right: -20px !important;
}

.hp_pr__md {
  padding-right: 40px !important;
}

.hp_mr__md {
  margin-right: 40px !important;
}

.hp_MR__md {
  margin-right: -40px !important;
}

.hp_pr__lg {
  padding-right: 60px !important;
}

.hp_mr__lg {
  margin-right: 60px !important;
}

.hp_MR__lg {
  margin-right: -60px !important;
}

.hp_pr__xl {
  padding-right: 80px !important;
}

.hp_mr__xl {
  margin-right: 80px !important;
}

.hp_MR__xl {
  margin-right: -80px !important;
}

.hp_pr__xxl {
  padding-right: 100px !important;
}

.hp_mr__xxl {
  margin-right: 100px !important;
}

.hp_MR__xxl {
  margin-right: -100px !important;
}

.hp_pb__0 {
  padding-bottom: 0 !important;
}

.hp_mb__0 {
  margin-bottom: 0 !important;
}

.hp_MB__0 {
  margin-bottom: 0 !important;
}

.hp_pb__xxs {
  padding-bottom: 5px !important;
}

.hp_mb__xxs {
  margin-bottom: 5px !important;
}

.hp_MB__xxs {
  margin-bottom: -5px !important;
}

.hp_pb__xs {
  padding-bottom: 10px !important;
}

.hp_mb__xs {
  margin-bottom: 10px !important;
}

.hp_MB__xs {
  margin-bottom: -10px !important;
}

.hp_pb__sm {
  padding-bottom: 20px !important;
}

.hp_mb__sm {
  margin-bottom: 20px !important;
}

.hp_MB__sm {
  margin-bottom: -20px !important;
}

.hp_pb__md {
  padding-bottom: 40px !important;
}

.hp_mb__md {
  margin-bottom: 40px !important;
}

.hp_MB__md {
  margin-bottom: -40px !important;
}

.hp_pb__lg {
  padding-bottom: 60px !important;
}

.hp_mb__lg {
  margin-bottom: 60px !important;
}

.hp_MB__lg {
  margin-bottom: -60px !important;
}

.hp_pb__xl {
  padding-bottom: 80px !important;
}

.hp_mb__xl {
  margin-bottom: 80px !important;
}

.hp_MB__xl {
  margin-bottom: -80px !important;
}

.hp_pb__xxl {
  padding-bottom: 100px !important;
}

.hp_mb__xxl {
  margin-bottom: 100px !important;
}

.hp_MB__xxl {
  margin-bottom: -100px !important;
}

.hp_pl__0 {
  padding-left: 0 !important;
}

.hp_ml__0 {
  margin-left: 0 !important;
}

.hp_ML__0 {
  margin-left: 0 !important;
}

.hp_pl__xxs {
  padding-left: 5px !important;
}

.hp_ml__xxs {
  margin-left: 5px !important;
}

.hp_ML__xxs {
  margin-left: -5px !important;
}

.hp_pl__xs {
  padding-left: 10px !important;
}

.hp_ml__xs {
  margin-left: 10px !important;
}

.hp_ML__xs {
  margin-left: -10px !important;
}

.hp_pl__sm {
  padding-left: 20px !important;
}

.hp_ml__sm {
  margin-left: 20px !important;
}

.hp_ML__sm {
  margin-left: -20px !important;
}

.hp_pl__md {
  padding-left: 40px !important;
}

.hp_ml__md {
  margin-left: 40px !important;
}

.hp_ML__md {
  margin-left: -40px !important;
}

.hp_pl__lg {
  padding-left: 60px !important;
}

.hp_ml__lg {
  margin-left: 60px !important;
}

.hp_ML__lg {
  margin-left: -60px !important;
}

.hp_pl__xl {
  padding-left: 80px !important;
}

.hp_ml__xl {
  margin-left: 80px !important;
}

.hp_ML__xl {
  margin-left: -80px !important;
}

.hp_pl__xxl {
  padding-left: 100px !important;
}

.hp_ml__xxl {
  margin-left: 100px !important;
}

.hp_ML__xxl {
  margin-left: -100px !important;
}

/* ------------------------------------------------------------
* ディスプレイ
* ------------------------------------------------------------ */
.hp_block {
  display: block !important;
}

.hp_inline {
  display: inline !important;
}

.hp_inline_block {
  display: inline-block !important;
}

/* 非表示 */

/* 端末別 */

/* ------------------------------------------------------------
* 画像の幅
* ------------------------------------------------------------ */
/* 画像をブロックにする */
.hp_img_block {
  display: block;
  width: 100%;
  height: auto;
}

/* ------------------------------------------------------------
 * Grid（ブレークポイント別 min / max + importantなし）
 * ------------------------------------------------------------ */
/* ------------- min ------------- */

/* ------------- max ------------- */

/* ------------- min ------------- */

/* ------------- max ------------- */

/* ------------- min ------------- */

/* ------------- max ------------- */

/* ------------- min ------------- */

/* ------------- max ------------- */

/* ------------- min ------------- */

/* ------------- max ------------- */

/* ------------- min ------------- */

/* ------------- max ------------- */

/* ------------- min ------------- */

/* ------------- max ------------- */

/* ------------------------------------------------------------
 * Grid Gap Utility
 * ------------------------------------------------------------ */
/* gap サイズ一覧 */
.hp_gap__4 {
  gap: 4px;
}

.hp_gap__8 {
  gap: 8px;
}

.hp_gap__12 {
  gap: 12px;
}

.hp_gap__16 {
  gap: 16px;
}

.hp_gap__24 {
  gap: 24px;
}

.hp_gap__32 {
  gap: 32px;
}

.hp_gap__48 {
  gap: 48px;
}

.hp_gap__64 {
  gap: 64px;
}

/* ============================================================
*
* ユニークグループ
*
* ============================================================ */
/* ------------------------------------------------------------
* メインビジュアル
* ------------------------------------------------------------ */
.un_MV {
  position: relative;
  width: 100%;
  height: 90vh;
  min-height: 600px;
  overflow: hidden;
}

/* 背景動画 */
.un_hero__video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
}

.un_mv_moviewrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.un_mv_moviewrap video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.un_mv_moviewrap::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.5;
  background-color: #000;
  background-image: url(assets/top_mvmark.png);
  background-size: 60%;
  background-position: right 10% bottom 5%;
  z-index: 3;
}
.un_mv_copy_wrap {
  position: absolute;
  width: 60%;
  max-width: 650px;
  bottom: 8%;
  left: 8%;
  z-index: 5;
  padding-bottom: 40px;
}

.un_mv_copy_entext {
  margin-top: 30px;
  color: #fff;
  font-family: "Josefin Sans", sans-serif;
  font-size: 12px;
  line-height: 1.4;
  margin-right: 40px;
}

.un_mv_recbtn_wrap {
  position: absolute;
  right: 5%;
  bottom: 5%;
  z-index: 3;
}

.un_mv_recbtn_link {
  position: relative;
  display: block;
  width: 180px;
  height: 180px;
}
.un_mv_recbtn_link img {
  display: block;
  width: 100%;
  margin: auto;
}

.un_mv_recbtn_animation {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  -webkit-animation: spin 9s linear infinite;
          animation: spin 9s linear infinite;
}

@-webkit-keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.un_topmessage_outer {
  overflow: hidden;
}

.un_topmessage_wrap {
  padding: 100px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  font-size: 15px;
  line-height: 2;
}

.un_topmessage_leftwrap {
  width: 50%;
}

.un_topmessage_rightwrap {
  width: 50%;
  position: relative;
  min-height: 1100px;
}

.un_topmessage_image.un_topmessage_image__image01 {
  position: absolute;
  left: -160px;
  width: 150px;
  margin-top: 30px;
}
.un_topmessage_image.un_topmessage_image__image02 {
  position: absolute;
  margin-top: 60px;
  left: 10px;
  width: 360px;
}
.un_topmessage_image.un_topmessage_image__image03 {
  width: 50dvw;
  margin-bottom: 60px;
}
.un_topmessage_image.un_topmessage_image__image04 {
  position: absolute;
  width: 200px;
  right: -30px;
  margin-top: -20px;
}

.un_topmessage_childlinkcopy {
  font-weight: bold;
  margin-top: 40px;
  font-size: 24px;
  line-height: 2;
}

.un_topmessage_childlinklist ul {
  list-style: none;
  border-top: 1px solid #999;
  margin-top: 40px;
}
.un_topmessage_childlinklist ul li {
  border-bottom: 1px solid #999;
  position: relative;
  margin: 0;
}
.un_topmessage_childlinklist ul li::before {
  position: absolute;
  display: inline-block;
  inset: 0;
  left: 0;
  margin: auto 15px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  content: "▲";
  color: #0056b3;
  font-size: 10px;
  width: 1em;
  height: 1em;
}
.un_topmessage_childlinklist ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 25px 10px 25px 30px;
  color: #0056b3;
  text-decoration: none;
}
.un_topmessage_childlinklist ul li a::after {
  content: "View More";
  font-family: "Josefin Sans", sans-serif;
  font-size: 12px;
  line-height: 2;
}
.un_topmessage_childlinklist ul li a:hover {
  background-color: #e6e6e6;
}
.un_topproducts_grid_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  width: 100%;
  gap: 20px;
  margin-top: 60px;
}

.un_topproducts_grid_item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-size: cover;
  background-position: center;
}

.un_topproducts_grid_item:nth-child(1) {
  background-color: #ff6b6b;
  background-image: url(assets/top_productsimage1.jpg);
}

.un_topproducts_grid_item:nth-child(2) {
  grid-row: span 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 450px;
}

.un_topproducts_grid_item:nth-child(3) {
  background-image: url(assets/top_productsimage3.jpg);
}

.un_topproducts_grid_item:nth-child(4) {
  background-image: url(assets/top_productsimage2.jpg);
}

.un_topproducts_grid_item:nth-child(5) {
  background-image: url(assets/top_productsimage4.jpg);
}
.top-div,
.bottom-div {
  width: 100%;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.top-div {
  padding: 40px;
}

.bottom-div {
  background-image: url(assets/top_productsimage5.jpg);
  background-size: cover;
  background-position: center;
  min-height: 200px;
}

.un_topproducts_btnwrap {
  text-align: center;
  margin: 40px 0 80px;
}

.un_topproducts_linklist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.un_topproducts_linklist ul {
  list-style: none;
}
.un_topproducts_linklist ul li {
  padding: 10px 0;
}
.un_topproducts_linklist ul li::before {
  content: "▲";
  color: #0056b3;
  font-size: 0.7em;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  display: inline-block;
  vertical-align: middle;
}
.un_topproducts_linklist ul li a {
  text-decoration: none;
  font-weight: bold;
  color: #000;
  padding: 10px;
}
.un_topproducts_linklist ul li a:hover {
  color: #0056b3;
}
.un_topproducts_linklist ul li a span {
  font-size: 0.8em;
  font-weight: normal;
}

.un_topnews_slider_wrap {
  background-color: #0056b3;
  padding: 10px 40px;
}

.un_topnews_cont_outer {
  max-width: 100%;
  max-height: 24px;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.un_topnews_slider_inner {
  color: #fff;
  font-size: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.un_topnewsttl {
  font-family: "Josefin Sans", sans-serif;
  white-space: nowrap;
  margin-right: 10px;
}
.un_topnewsttl::before {
  content: "";
  display: inline-block;
  width: 1.8em;
  height: 1.8em;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAMAAABEH1h2AAAAgVBMVEVMaXHDw8N5eXmtra38/Pz6+vqtra0jIyP6+vr+/v5tbW3GxsaxsbHe3t7g4ODy8vLAwMCurq7X19f19fWJiYmPj4/////9/f0EAQEnIB8NCAcXEQ8hGhjw7+9HQUCem5qxr64zLStdV1Z+enlybmyPjIvk5OPe3d3DwcDOzMvV1NNh+moGAAAAFnRSTlMAMBQe0clIA/3hMGpev36eh6tMtn2MnNHhmwAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAA9RJREFUeJydV4m26ioMxaFCHc+5594MQFs7aNX//8C36CDYU7W+LLtU6E42SQhBiHGZr/4elrECUPHy8Hc1F0JIMUWkEIt9hADgnu4Lo/1iggIphfizBOyhvbiB5Z93CqQQGwVqgO00IMSbVwqkFOt4aHegYNYQHBMpxOGJ5UDB4QkBKeYxvgS3CuLFGF6KGaB6hwZHb/YbL8UKJoAbBbAa4j9Aj+ClmE1HuzXOHvHzD9CNA+YBXor4rcubqN2TAmMPly7e79GgTscer/Dg8VMWjqCY6HinD7O78eV76goSo5lKry7uza9e5Xn7KKi1YW2TYGLb++0pdUS4ppn7ujk0q8AQxu3meW4cAUvSdAGoyTDl3vPgfq4a801lGTd9zolZFwAnYkqb0AXzUZsx43AEyMiwZWsVJEzVAA0IrgJunhFPUmfaWHbssR6iAeBLiPGoIcJRa7ZUJNbqwhMMSijgUoj5WIlQoAqyrPURoNDWKF8w1c27H6VYj5q+Gs1MaQIIF+I22VzK38qc2Ad/LbZjPqvIsKGszRhu2SPUp5y0ZTfeyVZ8waMgQs3ETPm522NVxz4jssyGjLf+Jb4HaBdjZ7rEfh/17HM3rNMsSL1vsQvMuidxmUL2eo8TKmuNY585bNK+2MnOxw1VlUEfLhVuYcc+cYuqg6g5waWIoJeUKKu6cD1E89qyD4pNL5GHY+6QbNtwBYKKrUlHUzsKkq4ktvdwPUipWXt3B4qX3nVQE7PpwvUojr3T+pC6TnY+cAipsY9bup/BvGGPqixPx8utTnrHfodpcyKrzzAmJVmdIFSkiYiardDIV5i0Z810GnXRrWWfkrGW2Rruxrdi7fcPpMbkYxsQITcmBTinORutiapuYi1k8LorSfUQqlSSKOf7s9s/Kqmvx0tnEmVY6vCsWZdJfbkcj9mprKqiSNOc2Rht2a3L68R7sfPFyrFn45zTOkhrbYxbrfuwTn8tajMolRlxI9Za04h2K+3UXX55ZD4o1GfNbJ1Ra/M8TYuiqsrT6ZhdLrfbPdiPhVr4Y6LJHL6ez0mSqPBE6WYHf1fdCenVZmT6uvhOVNwdsYF5LOz9DH8t2J1R4QGNTSmeZnx57w8Wn3U2DRoWvjnZf4pXsA+bmwn9xYOgp94oUJ81ZmrQFn60fLfw/99W/moqRYufFvARtHD81bSGXD1p6GX0fgEKlvLZdULsR6r0A3GE/fPbkBSL6IUCRIhGiQtPoLnFPQHHU25y65+xzQ34M5tyEZVCzDe7+F4QG01qt5l/cIsVcr399xPFcRxHP/+262Zo5N3/AGr3DMCsRigLAAAAAElFTkSuQmCC);
  background-size: 90%;
  background-repeat: no-repeat;
  background-color: #fff;
  background-position: center;
  border-radius: 999px;
  vertical-align: middle;
  margin-right: 5px;
  position: relative;
  top: -2px;
}

.un_topnews_contwrapper div::after {
  content: " / ";
  position: relative;
  top: -0.6em;
  margin-left: 5px;
}
.un_topnews_contwrapper a {
  color: #fff;
  display: inline-block;
  margin-left: 5px;
  text-decoration: none;
  white-space: nowrap; /* 横幅のMAXに達しても改行しない */
  overflow: hidden; /* 溢れた部分を隠す */
  text-overflow: ellipsis; /* 「…」と省略 */
}
.un_topnews_contwrapper a span {
  display: inline-block;
  padding-right: 10px;
}
.un_topNews_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 80px;
}

.un_topNews_ttl {
  width: 400px;
}

.un_topNews_listWrap {
  width: calc(100% - 400px);
}

.un_topNews_list {
  list-style: none;
  border-top: 1px solid #aaa;
  margin-bottom: 30px;
}
.un_topNews_list li {
  border-bottom: 1px solid #aaa;
  margin-bottom: 0;
}
.un_topNews_list a {
  color: #000;
  text-decoration: none;
  padding: 15px 10px;
  display: block;
  font-weight: bold;
}
.un_topNews_list a time {
  font-size: 0.8em;
  display: inline-block;
  margin-right: 40px;
  font-weight: normal;
}
.un_topNews_list .un_topNews_listitem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.un_topNews_list .un_topNews_listitem .un_topNews_date {
  width: 4em;
}
.un_topNews_list .un_topNews_listitem .un_topNews_ttl {
  width: calc(100% - 4em);
}
.un_topreclink_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-image: url(assets/recruit_keyimage.jpg);
  background-size: 70%;
  background-position: top left -15%;
  padding: 22vw 5vw 10vw 10vw;
  margin-top: -10vw;
}

.un_topreclinkbox {
  width: 60%;
}

.un_topreclinkbox_inner {
  background-color: #fff;
  position: relative;
  border-radius: 25px;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2);
  padding: 50px;
}
.un_topreclinkbox_inner::after {
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  border: 1px solid #0056b3;
  border-radius: 20px;
  pointer-events: none;
}

.un_topreclinkbox_copy {
  width: 70%;
  padding: 60px;
}
.un_topother_wrap {
  background-color: #0056b3;
  padding: 100px 0;
}

.un_topother_cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.un_topother_cont .un_topother_title {
  width: 300px;
}
.un_topother_cont .un_topother_inner {
  width: calc(100% - 300px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px;
}
.un_topother_cont .un_topother_inner div {
  padding: 0 10px;
}
.un_topother_cont .un_topother_inner a:hover {
  opacity: 0.8;
}
.un_topgroupinfo_wrap {
  background-color: #d6e8ff;
  padding: 100px 0;
}
.un_topgroupinfo_wrap .un_topgroupinfo_inner {
  background-color: #fff;
  padding: 80px 40px;
  border-radius: 40px;
}

.un_topgroupinfo_contwrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 15px;
  line-height: 1.6;
}
.un_topgroupinfo_contwrap .un_topgroupinfo_cont_inner {
  padding: 0 20px;
  width: 33.3333333333%;
}
.un_topgroupinfo_contwrap .un_topgroupinfo_title {
  color: #0056b3;
  font-weight: bold;
  font-size: 20px;
  margin: 10px 0;
}
.un_topgroupinfo_contwrap .un_topgroupinfo_adress {
  font-weight: bold;
  margin-top: 10px;
}
/* ------------------------------------------------------------
* 新着情報
* ------------------------------------------------------------ */
.un_newsindex_wrap {
  margin-bottom: 60px;
}

.un_newsindex_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-decoration: none;
  color: #000;
  border-bottom: 1px solid #ddd;
  padding: 40px 10px;
}
.un_newsindex_inner:first-child {
  padding-top: 0;
  margin-top: -20px;
}
.un_newsindex_inner .un_newsindex_txt {
  width: calc(100% - 300px);
  padding-right: 20px;
}
.un_newsindex_inner .un_newsindex_img {
  width: 300px;
}
.un_newsindex_inner .un_newsindex_date {
  font-family: "Josefin Sans", sans-serif;
  font-size: 12px;
}
.un_newsindex_inner .un_newsindex_ttl {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}
.un_newsindex_inner:hover .un_newsindex_ttl {
  color: #0056b3;
}

.bl_entry__news p {
  margin: 0 10px 1.5em;
  clear: both; /* テキストの開始位置を float の下に強制 */
}
.bl_entry__news .column-media {
  margin: 0 0 20px;
}
.bl_entry__news .column-media img {
  width: 100%;
}

/* ------------------------------------------------------------
* 企業情報
* ------------------------------------------------------------ */
.un_categoryTitleBusiness {
  margin-bottom: 160px;
}

.un_categoryTitleBusiness_inner {
  position: relative;
  height: 400px;
  width: 100%;
  background-size: cover;
  background-position: top 10% center;
}
.un_categoryTitleBusiness_inner::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  inset: 0;
  background-color: rgba(0, 86, 179, 0.4);
  z-index: 1;
  position: absolute;
}

.un_categoryTitle_cont__business {
  text-align: center;
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  top: 370px;
  margin: auto;
  text-align: center;
}
.un_categoryTitle_cont__business .un_pagetitle_ja__business {
  display: inline-block;
  background-color: #0056b3;
  color: #fff;
  padding: 5px 20px;
  border-radius: 999px;
  min-width: 12em;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}

.un_pagetitle_en__business {
  font-family: "Josefin Sans", sans-serif;
  font-size: 50px;
  font-weight: bold;
  color: #0056b3;
}

.un_business_topicpathwrap {
  margin-right: 20px;
}
.un_imageright-edge {
  width: calc(50dvw + 360px + 2px);
  margin-bottom: 40px;
  overflow: hidden;
}
.un_imageright-edge.un_imageright-edge__leftradius {
  border-radius: 999px 0 0 999px;
}
.un_imageright-edge.un_imageright-edge__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -20px 0 -10px;
}
.un_imageright-edge.un_imageright-edge__column img {
  width: 50%;
  display: inline-block;
  padding: 0 10px;
}
.un_imageright-edge img {
  width: 100%;
}

.un_businesscont_wrap {
  font-size: 14px;
}
.un_system_outerlink_wrap {
  background-size: cover;
  background-position: center;
  border-radius: 20px;
  margin: 40px 0;
  position: relative;
  overflow: hidden;
}
.un_system_outerlink_wrap a {
  display: block;
  padding: 80px 40px 60px;
  text-decoration: none;
  color: #fff;
  position: relative;
  z-index: 2;
  font-size: 18px;
  font-weight: bold;
}
.un_system_outerlink_wrap a::before {
  content: attr(data-en);
  font-size: 80px;
  line-height: 1;
  display: block;
  font-weight: bold;
  font-family: "Josefin Sans", sans-serif;
}
.un_system_outerlink_wrap.un_system_outerlink_wrap__commitment {
  background-image: url(assets/system_outerlink_bg01.jpg);
}
.un_system_outerlink_wrap.un_system_outerlink_wrap__kawai {
  background-image: url(assets/system_outerlink_bg02.jpg);
}
.un_system_outerlink_wrap.un_system_outerlink_wrap__philosophy {
  background-image: url(assets/philosophy_btnbgimg.jpg);
}
.un_system_outerlink_wrap::after {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  inset: 0;
  position: absolute;
  background-color: rgba(0, 86, 179, 0.4);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.un_system_outerlink_wrap:hover::after {
  background-color: rgba(0, 86, 179, 0.7);
}
.un_system_outerlink_wrap .un_system_outerlink_viewmore {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjciIGhlaWdodD0iMjYiIHZpZXdCb3g9IjAgMCAyNyAyNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI1LjkyMDMgMTMuMzEzNkMyNi4zMTA4IDEyLjkyMyAyNi4zMTA4IDEyLjI4OTkgMjUuOTIwMyAxMS44OTkzTDE5LjU1NjMgNS41MzUzOEMxOS4xNjU4IDUuMTQ0ODUgMTguNTMyNiA1LjE0NDg1IDE4LjE0MjEgNS41MzUzOEMxNy43NTE2IDUuOTI1OSAxNy43NTE2IDYuNTU5MDcgMTguMTQyMSA2Ljk0OTU5TDIzLjc5OSAxMi42MDY0TDE4LjE0MjEgMTguMjYzM0MxNy43NTE2IDE4LjY1MzggMTcuNzUxNiAxOS4yODcgMTguMTQyMSAxOS42Nzc1QzE4LjUzMjYgMjAuMDY4IDE5LjE2NTggMjAuMDY4IDE5LjU1NjMgMTkuNjc3NUwyNS45MjAzIDEzLjMxMzZaTTAgMTIuNjA2NFYxMy42MDY0SDI1LjIxMzJWMTIuNjA2NFYxMS42MDY0SDBWMTIuNjA2NFoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=);
  background-size: 30%;
  background-position: center;
  width: 70px;
  height: 70px;
  display: block;
  border-radius: 999px;
  background-color: #0056b3;
  border: 1px solid #fff;
  position: absolute;
  right: 20px;
  bottom: 20px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.un_system_outerlink_wrap:hover .un_system_outerlink_viewmore {
  right: 10px;
}
.bl_entry .un_commitmentttl {
  font-size: 36px;
  position: relative;
  margin-top: 100px;
}
.bl_entry .un_commitmentttl::before {
  content: "Commitment points";
  display: inline-block;
  padding: 8px 60px 5px 15px;
  background-color: #0056b3;
  color: #fff;
  font-family: "Josefin Sans", sans-serif;
  font-weight: bold;
  font-size: 18px;
  border-radius: 999px;
  margin-bottom: 15px;
}
.bl_entry .un_commitmentttl::after {
  content: attr(data-commitnumber);
  font-size: 28px;
  display: block;
  position: absolute;
  line-height: 54px;
  width: 55px;
  height: 55px;
  background-color: #fff;
  color: #0056b3;
  border: 3px solid;
  display: block;
  font-weight: bold;
  font-family: "Josefin Sans", sans-serif;
  border-radius: 999px;
  text-align: center;
  top: 5px;
  left: 200px;
}
.bl_entry .un_commitmentttl span {
  display: block;
}

.un_castingscolumncont_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -10px 50px;
}
.un_castingscolumncont_wrap.un_castingscolumncont_wrap__reserve {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.un_castingscolumncont_wrap .un_castingscolumncont_image {
  width: 50%;
  padding: 0 10px;
}
.un_castingscolumncont_wrap .un_castingscolumncont_body {
  width: 50%;
  padding: 0 10px;
}
.un_castingsvoice_wrap {
  background-color: #0056b3;
  padding: 55px 40px 40px;
  border-radius: 20px;
  margin-bottom: 40px;
  position: relative;
}

.un_castingsvoice_ttl {
  display: inline-block;
  background-color: #fff;
  border-radius: 999px;
  border: 3px solid #0056b3;
  position: absolute;
  left: 0;
  right: 0;
  top: -18px;
  width: 15em;
  text-align: center;
  padding: 5px 10px;
  margin: auto;
}

.un_castingsvoice_contwrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.un_castingsvoice_img {
  width: 50%;
  padding: 0 10px;
}
.un_castingsvoice_img img {
  border-radius: 20px;
}

.un_castingsvoice_txt {
  width: 50%;
  padding: 0 10px;
  color: #fff;
  font-size: 15px;
}
.un_supplychainmap_wrap {
  background-image: url(assets/supplychain_map.png);
  background-size: contain;
  background-position: top right;
  aspect-ratio: 3/2;
  margin-bottom: 60px;
}

.un_supplychainmap_cont {
  margin-left: 1em;
  max-width: 400px;
}

.un_supplychainmap_ttl span {
  display: block;
  font-weight: bold;
  color: #0056b3;
  font-size: 28px;
  margin-top: 20px;
}
.un_supplychainmap_ttl span strong {
  display: inline-block;
  vertical-align: middle;
  font-size: 80px;
  margin: 0 5px;
  position: relative;
  top: -0.1em;
  line-height: 1;
}

.bl_entry .un_supplychain_lgttl {
  font-size: 18px;
  margin: 80px 0 20px;
}
.bl_entry .un_supplychain_lgttl::before {
  content: attr(data-en);
  font-size: 85px;
  line-height: 1;
  display: block;
  color: #0056b3;
  font-family: "Josefin Sans", sans-serif;
}

.un_supplychain_logowrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -10px 40px;
}
.un_supplychain_logowrap div {
  width: 33.3333333333%;
  padding: 10px;
}

.un_supplychain_interview_wrap {
  margin-bottom: 80px;
}

.un_supplychain_interview_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
}

.un_supplychain_interview_headimage {
  width: 55%;
}

.un_supplychain_interview_headtext {
  width: 45%;
  padding-left: 20px;
}
.un_supplychain_interview_headtext p {
  margin: 0;
}
.un_supplychain_interview_headtext .un_supplychain_interview_number {
  color: #0056b3;
  font-family: "Josefin Sans", sans-serif;
}
.un_supplychain_interview_headtext .un_supplychain_interview_number span {
  vertical-align: middle;
  font-size: 2em;
  padding-left: 5px;
}
.un_supplychain_interview_headtext .un_supplychain_interview_company {
  font-weight: bold;
  font-size: 20px;
}
.un_supplychain_interview_headtext .un_supplychain_interview_name {
  font-size: 14px;
}
.un_supplychain_interview_headtext .un_supplychain_interview_maincopy {
  border-top: 1px solid #0056b3;
  border-bottom: 1px solid #0056b3;
  padding: 20px 10px;
  font-size: 20px;
  color: #0056b3;
  font-weight: bold;
  margin-top: 20px;
}
.un_supplychain_interview_introduction {
  text-align: center;
  margin: 20px 0;
}

.un_supplychain_interview_index {
  border-top: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
  padding: 30px 20px 30px 10px;
  margin-bottom: 60px;
}
.un_supplychain_interview_index .un_supplychain_interview_index_ttl {
  font-weight: bold;
  font-size: 1.1em;
}
.un_supplychain_interview_index ul {
  margin: 0;
  padding: 0;
}
.un_supplychain_interview_index ul li {
  margin-bottom: 5px;
}

.un_supplychain_interview_bodywrap {
  font-size: 15px;
}
.un_supplychain_interview_bodywrap .un_supplychain_interview_bodyttl {
  margin-top: 60px;
}
.un_supplychain_interview_bodywrap .un_supplychain_interview_bodyname {
  font-weight: bold;
}
.un_businessindex_summary_wrap {
  counter-reset: num;
}

.un_businessindex_summaryItem {
  padding: 60px 0;
  width: 100%;
  background-image: url(assets/business_index_bgmark.png);
  background-size: 450px;
  background-position: left -70px top;
  min-height: 600px;
  counter-increment: num;
}

.un_businessindex_summarybody {
  position: relative;
  max-width: 700px;
  z-index: 2;
  padding-top: 40px;
}
.un_businessindex_summarybody a {
  text-decoration: none;
  color: #000;
}
.un_businessindex_summarybody .un_businessindex_summaryItem_title_en {
  font-family: "Josefin Sans", sans-serif;
  font-size: 70px;
  line-height: 1.2;
  color: #0056b3;
  font-weight: bold;
}
.un_businessindex_summarybody .un_businessindex_summaryItem_title_ja {
  font-size: 24px;
  margin-bottom: 10px;
}
.un_businessindex_summarybody .un_businessindex_summarycopy {
  max-width: 450px;
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 20px;
}
.un_businessindex_summarybody .un_businessindex_summarytext {
  position: relative;
  z-index: 2;
}
.un_businessindex_summarybody::before {
  content: counter(num, decimal-leading-zero);
  position: absolute;
  right: -400px;
  top: -0.5em;
  text-align: center;
  line-height: 1.6em;
  font-family: "Josefin Sans", sans-serif;
  font-size: 160px;
  color: #0056b3;
  z-index: 3;
}

.un_businessindex_summaryItem_mediaImg {
  position: absolute;
  top: 0;
  left: 500px;
  z-index: 1;
  width: 100%;
  max-width: 600px;
}
/* ------------------------------------------------------------
* グループ
* ------------------------------------------------------------ */
.un_groupCompany {
  margin: 20px 0 60px;
}

.un_groupCompany_name {
  color: #0056b3;
  font-size: 24px;
  border-bottom: 1px solid #0056b3;
  padding-bottom: 5px;
  margin-bottom: 10px;
}

.un_groupCompany_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 20px;
}

.un_groupCompany_body {
  width: 50%;
  padding-right: 10px;
}

.un_groupCompany_image {
  width: 50%;
}

.un_groupCompany_map iframe {
  background-color: #EEE;
  width: 100% !important;
  height: 300px !important;
}
/* ------------------------------------------------------------
* カスタムユニット
* ------------------------------------------------------------ */
.bl_entry table.un_executive_tabel {
  border: 0;
  border-bottom: 1px solid #ddd;
}
.bl_entry table.un_executive_tabel th,
.bl_entry table.un_executive_tabel td {
  background-color: initial;
  border: 0px;
  padding: 25px 10px;
}
.bl_entry table.un_executive_tabel th {
  color: #0056b3;
  white-space: nowrap;
}
.bl_entry table.un_executive_tabel td {
  border-top: 1px solid #ddd;
  vertical-align: middle;
}
.bl_entry table.un_executive_tabel .un_executive_image_raw {
  max-width: 330px;
  min-width: 280px;
}
.bl_entry table.un_executive_tabel .un_executive_image_wrap {
  max-width: 300px;
  position: relative;
  margin: auto;
}
.bl_entry table.un_executive_tabel .un_executive_name_overimage {
  position: absolute;
  display: inline-block;
  z-index: 1;
  bottom: 0;
  left: 0;
  font-weight: bold;
  background-color: #fff;
  border-radius: 0 10px 0 0;
  padding: 5px 10px;
}
.bl_entry table.un_executive_tabel .un_executive_name {
  font-weight: bold;
  margin: 0;
  text-align: center;
}

.bl_entry .un_business_company_wrap a {
  color: #000;
  text-decoration: none;
  position: relative;
  display: block;
}
.bl_entry .un_business_company_wrap a::after {
  content: "";
  display: block;
  width: 35px;
  height: 35px;
  border: 1px solid #0056b3;
  border-radius: 35px;
  position: absolute;
  z-index: 2;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOSAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzEzMDJfMTM4MCkiPgo8cGF0aCBkPSJNMTguMDgxOSAwSDEyLjQyMTVDMTEuOTE1OCAwIDExLjUwMzQgMC4zOTQ4NjggMTEuNTAzNCAwLjg3OTEzOUMxMS41MDM0IDEuMzYzNDEgMTEuOTE1OCAxLjc1ODI4IDEyLjQyMTUgMS43NTgyOEgxNS4yMTg2TDEwLjY2MzEgNi4xMjA0NUMxMC4xMjYzIDYuNjM0NTIgMTAuMTI2MyA3LjQ2ODk2IDEwLjY2MzEgNy45ODMwM0MxMC45MzE2IDguMjQwMDcgMTEuMjg1NiA4LjM3MDQ1IDExLjYzNTcgOC4zNzA0NUMxMS45ODU4IDguMzcwNDUgMTIuMzM5OCA4LjI0Mzc5IDEyLjYwODMgNy45ODMwM0wxNy4xNjM4IDMuNjIwODZWNi4yOTkyNkMxNy4xNjM4IDYuNzgzNTMgMTcuNTc2MSA3LjE3ODM5IDE4LjA4MTkgNy4xNzgzOUMxOC41ODc2IDcuMTc4MzkgMTkgNi43ODM1MyAxOSA2LjI5OTI2VjAuODc5MTM5QzE5IDAuMzk0ODY4IDE4LjU4NzYgMCAxOC4wODE5IDBaIiBmaWxsPSIjMUU1MEEyIi8+CjxwYXRoIGQ9Ik0xNi4xMjkgOS40Mzk0MkMxNS41OTIxIDkuNDM5NDIgMTUuMTU2NCA5Ljg1NjY0IDE1LjE1NjQgMTAuMzcwN1YxNS4yMTM0QzE1LjE1NjQgMTUuNzIgMTQuNzI0NiAxNi4xMzM1IDE0LjE5NTUgMTYuMTMzNUgyLjkwNjAyQzIuMzc2OTUgMTYuMTMzNSAxLjk0NTEzIDE1LjcyIDEuOTQ1MTMgMTUuMjEzNFY0LjQwNjcyQzEuOTQ1MTMgMy45MDAxIDIuMzc2OTUgMy40ODY2MSAyLjkwNjAyIDMuNDg2NjFINy41NzQzMkM4LjExMTE4IDMuNDg2NjEgOC41NDY4OSAzLjA2OTM5IDguNTQ2ODkgMi41NTUzMUM4LjU0Njg5IDIuMDQxMjQgOC4xMTExOCAxLjYyNDAyIDcuNTc0MzIgMS42MjQwMkgyLjkwNjAyQzEuMzAzMjQgMS42MjQwMiAwIDIuODcxOTUgMCA0LjQwNjcyVjE1LjIxMzRDMCAxNi43NDgyIDEuMzAzMjQgMTcuOTk2MSAyLjkwNjAyIDE3Ljk5NjFIMTQuMTkxNkMxNS43OTQ0IDE3Ljk5NjEgMTcuMDk3NyAxNi43NDgyIDE3LjA5NzcgMTUuMjEzNFYxMC4zNzA3QzE3LjA5NzcgOS44NTY2NCAxNi42NjIgOS40Mzk0MiAxNi4xMjUxIDkuNDM5NDJIMTYuMTI5WiIgZmlsbD0iIzFFNTBBMiIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzEzMDJfMTM4MCI+CjxyZWN0IHdpZHRoPSIxOSIgaGVpZ2h0PSIxOCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K);
  background-size: 40%;
  background-position: center;
  background-repeat: no-repeat;
}
.bl_entry .un_business_company_wrap a:hover::after {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iX+ODrOOCpOODpOODvF8xIiBkYXRhLW5hbWU9IuODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDEyIDEyIj4KICA8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMjkuOC4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogMi4xLjEgQnVpbGQgMikgIC0tPgogIDxkZWZzPgogICAgPHN0eWxlPgogICAgICAuc3QwIHsKICAgICAgICBmaWxsOiAjZmZmOwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvZGVmcz4KICA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNy4zLDB2MS4zaDIuNEwzLjIsNy45bC45LjksNi42LTYuNnYyLjRoMS4zVjBNMTAuNywxMC43SDEuM1YxLjNoNC43VjBIMS4zQy42LDAsMCwuNiwwLDEuM3Y5LjNjMCwuNC4xLjcuNC45LjMuMi42LjQuOS40aDkuM2MuNCwwLC43LS4xLjktLjQuMi0uMy40LS42LjQtLjl2LTQuN2gtMS4zdjQuN1oiLz4KPC9zdmc+);
  background-color: #0056b3;
}
.bl_entry .un_business_company_wrap a .un_business_company_cont:hover {
  background-color: #e6e6e6;
}
.bl_entry .un_business_company_wrap .un_business_company_cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  background-color: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 0px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0px 10px rgba(0, 0, 0, 0.2);
  margin-bottom: 30px;
  padding: 20px;
}
.bl_entry .un_business_company_wrap .un_business_company_img {
  width: 40%;
  padding: 0 20px;
}
.bl_entry .un_business_company_wrap .un_business_company_info {
  width: calc(60% - 30px);
}
.bl_entry .un_business_company_wrap .un_business_company_info h3 {
  color: #0056b3;
  font-size: 26px;
}
.bl_entry .un_business_company_wrap .un_business_company_info ul {
  margin-bottom: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.bl_entry .un_business_company_wrap .un_business_company_info ul li {
  width: 50%;
  padding: 0;
}

/* ------------------------------------------------------------
* 役員紹介
* ------------------------------------------------------------ */
:root {
  --topbusinesscont_bgheight: 1000px;
  --topbusinesscont_contheight: 700px;
}

.un_topbusiness_wrap {
  background-color: #333;
  /* padding: 80px 0 20px; */
}

.un_topbusiness_cont_wrap {
  position: relative;
}

.un_topbusiness_cont_innerwrap {
  max-width: 1140px;
  margin: auto;
  z-index: 2;
  position: sticky;
  top: 100px;
  height: var(--topbusinesscont_contheight);
  padding: 90px 20px 0;
}

.un_topbusiness_cont_bg_wrap {
  margin-top: calc(var(--topbusinesscont_contheight) * -1);
}

.un_topbusiness_cont_bg {
  background-size: cover;
  background-position: center;
  height: var(--topbusinesscont_bgheight);
  /* opacity: 0.5; */
}

.un_topbusiness_cont_bg::after {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.4);
  display: block;
  width: 100%;
  height: 100%;
  inset: 0;
}

.un_topbusiness_cont_bg.un_topbusiness_cont_bg__bg01 {
  background-image: url(assets/top_businessimage_1.jpg);
}

.un_topbusiness_cont_bg.un_topbusiness_cont_bg__bg02 {
  background-image: url(assets/top_businessimage_2.jpg);
}

.un_topbusiness_cont_bg.un_topbusiness_cont_bg__bg03 {
  background-image: url(assets/top_businessimage_3.jpg);
}

.un_topbusiness_contlink {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  position: absolute;
  top: 220px;
}

.un_topbusiness_contlink.active {
  opacity: 1;
  pointer-events: auto;
}

.un_topbusiness_contlink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.un_topbusiness_cont_image {
  width: 40%;
}

.un_topbusiness_cont_body {
  width: 60%;
  padding: 0 20px 0 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.un_topbusiness_cont_number_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  font-size: 14px;
  font-family: "Josefin Sans", sans-serif;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.un_topbusiness_cont_number.un_topbusiness_cont_number__cullent::after {
  content: "";
  display: inline-block;
  width: 30px;
  height: 1px;
  background-color: #fff;
  margin: 0 10px 3px;
}

.un_topbusiness_cont_link_text {
  color: #fff;
  text-decoration: none;
  display: block;
  border-bottom: 1px solid #fff;
  padding: 10px 0;
  margin-top: 20px;
}
.un_topbusiness_cont_link_text .un_topbusiness_cont_link_en {
  font-family: "Josefin Sans", sans-serif;
}
.un_topbusiness_cont_link_text .un_topbusiness_cont_link_title {
  font-size: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.un_topbusiness_cont_link_text .un_topbusiness_cont_link_title::after {
  content: "View More";
  font-family: "Josefin Sans", sans-serif;
  font-size: 12px;
  line-height: 2;
}
/* ------------------------------------------------------------
* 会社概要
* ------------------------------------------------------------ */
.un_company_otherentry_outer {
  background-color: #e6e6e6;
  padding: 100px 0;
}

.un_company_otherentry_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -20px;
}
.un_company_otherentry_wrap a {
  text-decoration: none;
  color: #000;
}
.un_company_otherentry_wrap a:hover .un_company_otherentry_image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.un_company_otherentry_wrap .un_company_otherentry {
  width: 33.3333333333%;
  padding: 20px;
}
.un_company_otherentry_wrap .un_company_otherentry_entitle {
  font-family: "Josefin Sans", sans-serif;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 10px;
}
.un_company_otherentry_wrap .un_company_otherentry_title {
  font-size: 12px;
  font-weight: normal;
}
.un_company_otherentry_wrap .un_company_otherentry_image {
  border-radius: 20px;
  overflow: hidden;
}
.un_company_otherentry_wrap .un_company_otherentry_image img {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.un_historybody {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.un_historybody dt {
  font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
  font-weight: normal;
  font-size: 30px;
  width: 100px;
  color: #0056b3;
  margin-bottom: 20px;
}
.un_historybody dt span {
  font-size: 0.6em;
}
.un_historybody dd {
  margin-bottom: 20px;
  width: calc(100% - 100px);
  padding: 20px;
  background-color: #ededed;
  font-size: 14px;
}

.un_historyimage_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 10px -10px;
}
.un_historyimage_wrap .un_history_image {
  width: 33.3333333333%;
  padding: 10px;
}
.un_historyimage_wrap .un_history_image p {
  margin: 5px 0 10px;
  font-size: 12px;
}
.un_philosophycont_outer {
  background-color: #fff;
  padding: 80px 60px 100px;
  border-radius: 20px;
  margin-bottom: 40px;
}

.un_philosophy_lgtitle {
  color: #0056b3;
  font-size: 18px;
  margin-bottom: 60px;
}
.un_philosophy_lgtitle::before {
  content: attr(data-en);
  font-size: 90px;
  line-height: 80px;
  display: block;
  font-family: "Josefin Sans", sans-serif;
}

.un_philosophy_body {
  font-size: 44px;
  line-height: 1.4;
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
  margin-top: 40px;
}
.un_philosophy_body.un_philosophy_body__mission {
  max-width: 600px;
  margin: 40px auto;
}
.un_philosophy_mvvmovie {
  text-align: center;
  margin: 80px 0;
}
.un_philosophy_mvvmovie .un_philosophy_mvvmovie_title {
  color: #fff;
  font-size: 20px;
}
.un_philosophy_mvvmovie .un_philosophy_mvvmoviebtn {
  max-width: 500px;
  margin: auto;
}
.un_philosophy_statement {
  font-family: serif;
  font-size: 14px;
  line-height: 2.5;
  text-align: center;
}
.un_philosophy_statement p {
  margin-bottom: 1.5em;
}
ul.un_certificationg_wrap {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul.un_certificationg_wrap li {
  padding: 20px 10px;
  border-bottom: 1px solid #e6e6e6;
  font-size: 14px;
}
ul.un_certificationg_wrap .un_certificationg_date {
  display: inline-block;
  background-color: #0056b3;
  padding: 5px 10px;
  border-radius: 999px;
  color: #fff;
  margin-right: 5px;
}
ul.un_certificationg_wrap .un_certificationg_organization {
  color: #0056b3;
  display: inline-block;
}
ul.un_certificationg_wrap .certificationg_body {
  margin-top: 10px;
  font-size: 16px;
}

.un_companyindex_summary_wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  overflow: hidden;
}

.un_companyindex_summaryItem {
  float: left;
  width: 50%;
  padding: 0 40px 60px;
}
.un_companyindex_summaryItem:nth-of-type(2) {
  margin-top: 200px;
}
.un_companyindex_summaryItem:nth-of-type(2n + 3) {
  margin-top: -200px;
}
.un_companyindex_summaryItem a {
  text-decoration: none;
  display: inline-block;
}
.un_companyindex_summaryItem a:hover .el_btn {
  background-color: #003b72;
}
.un_companyindex_summaryItem a:hover .un_companyindex_summaryItem_mediaImg img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

.un_companyindex_summaryItem_mediaImg {
  overflow: hidden;
}
.un_companyindex_summaryItem_mediaImg img {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.un_companyindex_summaryItem_title_en {
  font-family: "Josefin Sans", sans-serif;
  font-size: 36px;
  line-height: 1.4;
  margin-top: 10px;
  color: #0056b3;
}

h3.un_companyindex_summaryItem_title_ja {
  font-size: 16px;
  margin-bottom: 10px;
  text-decoration: none;
  color: #000;
}
/* ------------------------------------------------------------
* サステナビリティ
* ------------------------------------------------------------ */
.un_sustainability_csrbody {
  margin: 40px 0;
}

.un_sustainability_csrimage {
  max-width: 700px;
  margin: auto;
}

.un_sustainability_sdgstitle {
  margin: 80px 0 40px;
  padding: 100px 0;
  background-image: url(assets/sustainability_sdgsimage.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center right;
}
.un_sustainability_sdgs_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -20px 60px;
  font-size: 14px;
}

.un_sustainability_sdgs_body {
  width: 55%;
  padding: 20px;
}

.un_sustainability_sdgs_image_wrap {
  width: 45%;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.un_sustainability_sdgs_image_wrap .un_sustainability_sdgs_image__01 {
  width: 100%;
  padding: 0 5px 5px;
}
.un_sustainability_sdgs_image_wrap .un_sustainability_sdgs_image__02,
.un_sustainability_sdgs_image_wrap .un_sustainability_sdgs_image__03 {
  width: 50%;
  padding: 5px;
}

.un_sustainability_sdgs_innertitle {
  font-size: 20px;
  margin-bottom: 10px;
}
.un_sustainability_sdgs_innertitle span {
  font-size: 0.8em;
}

.un_sustainability_sdgs_icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 20px -5px 20px;
}
.un_sustainability_sdgs_icon img {
  width: 20%;
  display: inline-block;
  padding: 5px;
}
/* ------------------------------------------------------------
* メッセージ
* ------------------------------------------------------------ */
.un_message_ly {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -10px 80px;
  position: relative;
}
.un_message_ly .un_message_body {
  width: 50%;
  padding: 0 10px;
  min-height: 300px;
  margin-bottom: 80px;
}
.un_message_ly .un_message_body p {
  margin-bottom: 1em;
}
.un_message_ly .un_message_image {
  position: absolute;
  padding: 0 10px;
  width: calc(20dvw + 360px + 2px);
}
.un_message_ly.un_message_ly_imageright .un_message_image {
  position: absolute;
  left: 52%;
  width: calc(20dvw + 360px + 2px);
}
.un_message_ly.un_message_ly_imageleft {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.un_message_ly.un_message_ly_imageleft .un_message_image {
  position: absolute;
  left: 0%;
  z-index: -1;
  width: calc(20dvw + 360px + 2px);
}
.un_message_ly.un_message_ly_imagebottom {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.un_message_ly.un_message_ly_imagebottom .un_message_body {
  width: 100%;
  margin-bottom: 20px;
}
.un_message_ly.un_message_ly_imagebottom .un_message_image {
  position: relative;
  margin-top: 20px;
  width: 100%;
}

.un_message_ttlhead {
  background-color: #0056b3;
  display: inline-block;
  padding: 5px 20px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 10px;
}

.un_message_ttl {
  color: #0056b3;
  font-size: 32px;
  line-height: 1.6;
  margin-bottom: 20px;
}
.un_poducts_nav {
  margin: 40px 0;
}
.un_poducts_nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.un_poducts_nav ul li.un_poducts_navitem {
  list-style: none;
  display: block;
  border-left: 2px solid #0056b3;
}
.un_poducts_nav ul li.un_poducts_navitem a {
  padding: 10px 30px;
  color: #0056b3;
  text-decoration: none;
  font-weight: bold;
  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: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
.un_poducts_nav ul li.un_poducts_navitem a span {
  display: block;
  font-size: 0.8em;
}
.un_poducts_nav ul li.un_poducts_navitem:last-child {
  border-right: 2px solid #0056b3;
}

.un_products_contsec {
  background-color: #e6e6e6;
  padding: 60px 0;
}

.un_products_ttl {
  text-align: center;
  font-size: 32px;
  line-height: 1.2;
  padding: 40px 0 10px;
}
.un_products_ttl span {
  font-size: 0.7em;
}

.un_productsitembox_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 20px -20px;
}
.un_productsitembox_wrapper .un_productsitembox_outer {
  width: 33.3333333333%;
  padding: 20px;
}
.un_productsitembox_wrapper .un_productsitembox {
  background: #fff;
  padding: 20px 20px;
  border-radius: 10px;
  -webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.1);
}
.un_productsitembox_wrapper .un_productsitemboxlist_name {
  text-align: center;
  font-size: 20px;
  line-height: 1.5;
  color: #0056b3;
  margin: 0;
}
.un_productsitembox_wrapper .un_productsitemboxlist_op {
  font-size: 16px;
  font-weight: bold;
  color: #0056b3;
  text-align: center;
}
.un_productsitembox_wrapper .un_productsitemboxlist_img {
  margin: 10px 0;
}
.un_productsitembox_wrapper .un_productsitemboxlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 12px;
}
.un_productsitembox_wrapper .un_productsitemboxlist .un_productsitemboxlist_head {
  width: 5em;
  color: #0056b3;
}
.un_productsitembox_wrapper .un_productsitemboxlist .un_productsitemboxlist_head::before {
  content: "□ ";
}
.un_productsitembox_wrapper .un_productsitemboxlist .un_productsitemboxlist_text {
  width: calc(100% - 5em);
  padding-left: 10px;
}
/* ------------------------------------------------------------
* お問い合わせ
* ------------------------------------------------------------ */
.un_contact_telnumberwrap {
  text-align: center;
  margin-top: 40px;
}
.un_contact_telnumberwrap .un_contact_telnumbertitle {
  background-color: #0056b3;
  font-weight: bold;
  display: inline-block;
  padding: 5px 10px;
  color: #fff;
  min-width: 400px;
}
.un_contact_telnumberwrap .un_contact_telnumber {
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(30px, 10vw, 60px);
}
.un_contact_telnumberwrap .un_contact_telnumber::before {
  content: "";
  width: 1em;
  height: 1em;
  display: inline-block;
  margin-right: 5px;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0iX+ODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDYxIDc0Ij4KICA8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMjkuOC4xLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogMi4xLjEgQnVpbGQgMikgIC0tPgogIDxwYXRoIGQ9Ik0xNy45LDQ1YzExLjQsMTguOSwyMy4xLDIwLjIsMjYuNCwxOC4zLjMtLjIuNi0uNC45LS41bC04LjctMTQuNGMtLjMuMi0uNi4zLS45LjUtMi42LDEuNi01LjYtMi40LTkuNC04LjctMy44LTYuNC01LjktMTAuOC0zLjMtMTIuMy4zLS4yLjYtLjMuOS0uNWwtOC43LTE0LjRjLS4zLjItLjUuMy0uOS41LTMuMywxLjktNy42LDEyLjcsMy44LDMxLjZoLS4xWk00OS44LDYwLjFjMS4zLS43LjUtMi4yLS4zLTMuNSwwLDAtNS4yLTguNi01LjktOS43LS42LTEtMS42LTEuNi0yLjQtMS4yLS41LjMtMS42LjgtMywxLjZsOC43LDE0LjRjMS4zLS43LDItMS4yLDIuOC0xLjdoLjFaTTI4LjQsMjQuNWMuNy0uNC43LTEuNiwwLTIuNi0uNi0xLTUuOS05LjctNS45LTkuNy0uOC0xLjMtMS43LTIuNy0zLTItLjguNS0xLjUuOS0yLjgsMS43bDguNywxNC40YzEuNC0uOCwyLjQtMS41LDIuOS0xLjhoMFoiLz4KPC9zdmc+);
  background-position: center;
  background-size: contain;
  position: relative;
  top: 10px;
}

.un_contact_formwrap {
  margin: 40px 0;
  border-radius: 40px;
  background-color: #e6e6e6;
  padding: 60px;
}

.un_mail_step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
  max-width: 600px;
  margin: 0 auto 80px;
  position: relative;
}
.un_mail_step .un_mail_step-item {
  position: relative;
  text-align: center;
  font-weight: bold;
  font-size: 12px;
}
.un_mail_step .un_mail_step-item::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  position: absolute;
  inset: 0;
  bottom: -60px;
  margin: auto;
  background-color: #aaa;
  z-index: 2;
}
.un_mail_step .un_mail_step-item:last-child::before {
  display: none;
}
.un_mail_step .un_mail_step-item.un_mail_step-item-current {
  color: #0056b3;
}
.un_mail_step .un_mail_step-item.un_mail_step-item-current::after {
  background-color: #0056b3;
}
.un_mail_step::after {
  content: "";
  display: block;
  width: calc(100% - 4em);
  height: 4px;
  top: 38px;
  left: 2em;
  position: absolute;
  background-color: #aaa;
}
/* ============================================================
*
* プログラム
*
* ============================================================ */
/* ------------------------------------------------------------
* メニューの開閉
* ------------------------------------------------------------ */
/* スクロールを止める */
body.is_locked {
  position: fixed;
  width: 100%;
  height: 100%;
}

/* メニュー本体 */
.js_menu {
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 9999;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
}
.js_menu.is_opened {
  visibility: visible;
  -webkit-animation: menu-fade-in 0.5s forwards;
          animation: menu-fade-in 0.5s forwards;
}
.js_menu.is_closed {
  visibility: hidden;
  -webkit-animation: menu-fade-out 0.5s forwards;
          animation: menu-fade-out 0.5s forwards;
}

/* カバー */
.js_menu_cover {
  position: fixed;
  top: 0;
  left: 100%;
  z-index: 9998;
  width: 100%;
  height: 100%;
  visibility: hidden;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
}
.js_menu_cover.is_opened {
  visibility: visible;
  -webkit-animation: menu-fade-in 0.5s forwards;
          animation: menu-fade-in 0.5s forwards;
}
.js_menu_cover.is_closed {
  visibility: hidden;
  -webkit-animation: menu-fade-out 0.5s forwards;
          animation: menu-fade-out 0.5s forwards;
}

/* アニメーション */
@-webkit-keyframes menu-fade-in {
  0% {
    left: 0;
    display: none;
    visibility: hidden;
    opacity: 0;
  }
  1% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 0;
  }
  100% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 1;
  }
}
@keyframes menu-fade-in {
  0% {
    left: 0;
    display: none;
    visibility: hidden;
    opacity: 0;
  }
  1% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 0;
  }
  100% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 1;
  }
}
@-webkit-keyframes menu-fade-out {
  0% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 1;
  }
  99% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 0;
  }
  100% {
    left: 100%;
    display: none;
    visibility: hidden;
    opacity: 0;
  }
}
@keyframes menu-fade-out {
  0% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 1;
  }
  99% {
    left: 0;
    display: block;
    visibility: visible;
    opacity: 0;
  }
  100% {
    left: 100%;
    display: none;
    visibility: hidden;
    opacity: 0;
  }
}
/* ------------------------------------------------------------
* メインビジュアルのアニメーション用
* ------------------------------------------------------------ */
/* 背景画像 */
/* ------------------------------------------------------------
* フェードインのアニメーション
* ------------------------------------------------------------ */
body.no-js [class*=js_fade] {
  visibility: visible;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}
body.no-js [class*=js_fade].is-appeared {
  visibility: visible;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
  -webkit-animation: none;
          animation: none;
}

/* フェードイン */
.js_fadeIn {
  visibility: hidden;
  opacity: 0;
}
.js_fadeIn.is_appeared {
  visibility: visible;
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
  -webkit-animation-duration: 0.8s;
          animation-duration: 0.8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.js_fadeIn_item {
  visibility: hidden;
  opacity: 0;
}
.js_fade_group.is_appeared .js_fadeIn_item {
  visibility: visible;
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
  -webkit-animation-duration: 0.8s;
          animation-duration: 0.8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* 下から上にフェードイン */
.js_fadeUp {
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}
.js_fadeUp.is_appeared {
  visibility: visible;
  -webkit-animation-name: fade-up;
          animation-name: fade-up;
  -webkit-animation-duration: 0.8s;
          animation-duration: 0.8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
          animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
}

.js_fadeUp_item {
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}
.js_fade_group.is_appeared .js_fadeUp_item {
  visibility: visible;
  -webkit-animation-name: fade-up;
          animation-name: fade-up;
  -webkit-animation-duration: 0.8s;
          animation-duration: 0.8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
          animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
}

@-webkit-keyframes fade-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fade-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
/* 下から上に大きくなりながらフェードイン */
.js_fadeScaleUp {
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(50px) scale(0.7);
          transform: translateY(50px) scale(0.7);
}
.js_fadeScaleUp.is_appeared {
  visibility: visible;
  -webkit-animation-name: fade-scale-up;
          animation-name: fade-scale-up;
  -webkit-animation-duration: 0.8s;
          animation-duration: 0.8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
          animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
}

.js_fadeScaleUp_item {
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}
.js_fade_group.is_appeared .js_fadeScaleUp_item {
  visibility: visible;
  -webkit-animation-name: fade-scale-up;
          animation-name: fade-scale-up;
  -webkit-animation-duration: 0.8s;
          animation-duration: 0.8s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
          animation-timing-function: cubic-bezier(0.68, -0.6, 0.32, 1.6);
}

@-webkit-keyframes fade-scale-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px) scale(0.9);
            transform: translateY(50px) scale(0.9);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
}

@keyframes fade-scale-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px) scale(0.9);
            transform: translateY(50px) scale(0.9);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
}
/* ディレイを追加する */
.js_delay_0 {
  -webkit-animation-delay: 0s !important;
          animation-delay: 0s !important;
}

.js_delay_1 {
  -webkit-animation-delay: 0.1s !important;
          animation-delay: 0.1s !important;
}

.js_delay_2 {
  -webkit-animation-delay: 0.2s !important;
          animation-delay: 0.2s !important;
}

.js_delay_3 {
  -webkit-animation-delay: 0.3s !important;
          animation-delay: 0.3s !important;
}

.js_delay_4 {
  -webkit-animation-delay: 0.4s !important;
          animation-delay: 0.4s !important;
}

.js_delay_5 {
  -webkit-animation-delay: 0.5s !important;
          animation-delay: 0.5s !important;
}

.js_delay_6 {
  -webkit-animation-delay: 0.6s !important;
          animation-delay: 0.6s !important;
}

.js_delay_7 {
  -webkit-animation-delay: 0.7s !important;
          animation-delay: 0.7s !important;
}

.js_delay_8 {
  -webkit-animation-delay: 0.8s !important;
          animation-delay: 0.8s !important;
}

.js_delay_9 {
  -webkit-animation-delay: 0.9s !important;
          animation-delay: 0.9s !important;
}

.js_delay_10 {
  -webkit-animation-delay: 1s !important;
          animation-delay: 1s !important;
}

.js_delay_11 {
  -webkit-animation-delay: 1.1s !important;
          animation-delay: 1.1s !important;
}

.js_delay_12 {
  -webkit-animation-delay: 1.2s !important;
          animation-delay: 1.2s !important;
}

.js_delay_13 {
  -webkit-animation-delay: 1.3s !important;
          animation-delay: 1.3s !important;
}

.js_delay_14 {
  -webkit-animation-delay: 1.4s !important;
          animation-delay: 1.4s !important;
}

.js_delay_15 {
  -webkit-animation-delay: 1.5s !important;
          animation-delay: 1.5s !important;
}

.js_delay_16 {
  -webkit-animation-delay: 1.6s !important;
          animation-delay: 1.6s !important;
}

.js_delay_17 {
  -webkit-animation-delay: 1.7s !important;
          animation-delay: 1.7s !important;
}

.js_delay_18 {
  -webkit-animation-delay: 1.8s !important;
          animation-delay: 1.8s !important;
}

.js_delay_19 {
  -webkit-animation-delay: 1.9s !important;
          animation-delay: 1.9s !important;
}

.js_delay_20 {
  -webkit-animation-delay: 2s !important;
          animation-delay: 2s !important;
}

/* ------------------------------------------------------------
* スライダー（Slick）
* ------------------------------------------------------------ */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

@media screen and (min-width: 480px){
  .bl_sitemapList li.is_level_1 {
    width: 50%;
  }
  .bl_formInput.bl_formInput__full {
    width: 100%;
  }
  .bl_formInput.bl_formInput__sm {
    max-width: 170px;
  }
  .bl_formInput.bl_formInput__md {
    max-width: 300px;
  }
  .bl_formInput.bl_formInput__lg {
    max-width: 750px;
  }
  .bl_formInput.bl_formInput__100 {
    max-width: 100%;
  }
  .bl_formInput.bl_formInput__75 {
    max-width: 75%;
  }
  .bl_formInput.bl_formInput__50 {
    max-width: 49%;
  }
  .bl_formInput.bl_formInput__25 {
    max-width: 24%;
  }
  .hp_hide_sm_min {
    display: none !important;
  }
  .hp_grid_sm_min__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: auto;
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_min__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_min__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto;
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_min__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: auto;
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_min__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: auto;
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_min__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: auto;
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_min__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    grid-auto-rows: minmax(0, auto);
  }
}

@media screen and (min-width: 480px) and (max-width: 1023px){
  .hp_hide_tablet {
    display: none !important;
  }
}

@media screen and (min-width: 768px){
  .ly_footer__home {
    padding-top: 100px;
  }
  .el_lgHeading {
    font-size: 28px;
  }
  .el_mdHeading {
    font-size: 24px;
  }
  .el_smHeading {
    font-size: 18px;
  }
  .el_table th,
  .el_table td {
    display: table-cell;
    text-align: left;
  }
  .bl_entryHeaderTitle {
    font-size: 32px;
  }
  .bl_entry h2 {
    font-size: 38px;
  }
  .bl_entry h3 {
    font-size: 24px;
  }
  .bl_entry h4 {
    font-size: 20px;
  }
  .bl_entry th,
  .bl_entry td {
    display: table-cell;
    text-align: left;
    font-size: 14px;
  }
  .hp_hide_md_min {
    display: none !important;
  }
  .hp_grid_md_min__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_min__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_min__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_min__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_min__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_min__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_min__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
}

@media screen and (min-width: 1024px){
  .ly_footer_inner {
    padding-right: 20px;
    padding-left: 20px;
  }
  .ly_sect {
    padding: 80px;
  }
  .ly_cont {
    padding-right: 20px;
    padding-left: 20px;
  }
  .ly_cont.ly_cont__mdNarrow {
    max-width: 1240px;
  }
  .bl_headerContents_logo {
    padding: 0 20px 0 0;
  }
  .bl_headerContents_links {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .bl_menuOpnBtn {
    top: 30px;
    right: 30px;
    visibility: hidden;
    opacity: 0;
    display: none;
  }
  body.is_scrolled .bl_menuOpnBtn,
  body.is_locked .bl_menuOpnBtn {
    visibility: visible;
    opacity: 1;
  }
  .bl_sitemapList li.is_level_1 {
    width: 33.33%;
  }
  .bl_cta {
    padding: 140px 20px;
  }
  .bl_slider_cont {
    padding-right: 20px;
    padding-left: 20px;
  }
  .slick-slide:nth-child(3n-1) .bl_slider_item {
    padding-top: 40px;
  }
  .slick-slide:nth-child(3n) .bl_slider_item {
    padding-top: 80px;
  }
  .bl_summaryItem {
    width: 33.33%;
  }
  .hp_hide_lg_min {
    display: none !important;
  }
  .hp_hide_pc {
    display: none !important;
  }
  .hp_grid_lg_min__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_min__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_min__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_min__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_min__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_min__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_min__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
}

@media screen and (min-width: 1280px){
  .hp_hide_xl_min {
    display: none !important;
  }
  .hp_grid_xl_min__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_min__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_min__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_min__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_min__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_min__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_min__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
}

@media (max-width: 1380px){
  .bl_globalNav_list {
    gap: 20px;
  }
}

@media (max-width: 1310px){
  .bl_headerContents_linkBtn {
    margin: 0 0 0 20px;
  }
  .bl_globalNav_list {
    font-size: 14px;
    gap: 10px;
  }
}

@media screen and (max-width: 1279px){
  .hp_hide_xl_max {
    display: none !important;
  }
  .hp_grid_xl_max__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_max__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_max__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_max__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_max__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_max__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xl_max__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
}

@media screen and (max-width: 1023px){
  .ly_entry_bgcolor {
    position: relative;
    padding: 30px;
    margin-bottom: 40px 20px;
  }
  .ly_entry_bgcolor::after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #dfeef0;
    z-index: -1;
    border-radius: 20px;
  }
  .ly_entry_whcolor {
    background-color: #fff;
    padding: 40px 20px 20px;
    margin-top: 20px;
    border-radius: 15px;
  }
  .ly_newscontent_outer {
    background-color: rgba(0, 86, 179, 0.1);
    padding: 40px 0;
  }
  .ly_newscontent_wrapper {
    background-color: #fff;
    padding: 40px 80px;
  }
  .bl_headerContents_logo {
    padding: 0;
  }
  .bl_headerContents_links {
    display: none;
  }
  .bl_scrollHeader {
    display: none;
  }
  .bl_gnav {
    display: none;
  }
  .bl_summaryItem_inner.bl_summaryItem_inner__narrow {
    padding: 0 10px;
  }
  .hp_hide_lg_max {
    display: none !important;
  }
  .hp_grid_lg_max__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_max__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_max__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_max__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_max__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_max__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_lg_max__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .un_MV {
    height: 60vh;
  }
  .un_mv_moviewrap {
    position: relative;
  }
  .un_mv_moviewrap video {
    height: 60vh;
    min-height: 600px;
  }
  .un_mv_moviewrap::before {
    background-size: 60%;
    background-position: right -40% bottom 5%;
  }
  .un_topmessage_wrap {
    padding: 50px 0;
    display: block;
  }
  .un_topmessage_leftwrap {
    width: 100%;
  }
  .un_topmessage_rightwrap {
    width: 100%;
    min-height: auto;
  }
  .un_topmessage_image {
    display: none !important;
  }
  .un_topmessage_image.un_topmessage_image__image02 {
    display: block !important;
    position: absolute;
    width: 300px;
    left: 0;
    top: 120px;
  }
  .un_topmessage_left_text01 {
    margin-left: 350px;
  }
  .un_topmessage_left_text02 {
    margin-left: 350px;
  }
  .un_topmessage_left_text03 {
    margin-left: 350px;
    margin-top: 2em;
  }
  .un_topmessage_childlinkcopy {
    margin-top: 30px;
    font-size: 18px;
  }
  .un_topmessage_childlinklist {
    margin-top: 20px;
  }
  .un_topmessage_childlinklist ul li::before {
    content: "▲";
    font-size: 8px;
  }
  .un_topmessage_childlinklist ul li a {
    padding: 15px 10px 15px 30px;
  }
  .un_topmessage_childlinklist ul li a::after {
    font-size: 10px;
  }
  .un_categoryTitleBusiness {
    margin-bottom: 20px;
  }
  .un_categoryTitleBusiness_inner {
    height: auto;
    padding: 60px 0;
  }
  .un_categoryTitle_cont__business {
    top: auto;
    position: relative;
  }
  .un_categoryTitle_cont__business .un_pagetitle_ja__business {
    padding: 5px 20px;
    min-width: auto;
    font-size: 14px;
    margin-bottom: 10px;
  }
  .un_pagetitle_en__business {
    font-size: 20px;
    line-height: 1.4;
    color: #fff;
  }
  .bl_entry .un_business_company_wrap a::after {
    width: 30px;
    height: 30px;
    border-radius: 30px;
    top: auto;
    bottom: 20px;
  }
  .bl_entry .un_business_company_wrap .un_business_company_cont {
    margin-bottom: 30px;
    padding: 20px 20px 20px 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .bl_entry .un_business_company_wrap .un_business_company_img {
    width: 100%;
    padding: 0;
    text-align: center;
    margin-bottom: 20px;
  }
  .bl_entry .un_business_company_wrap .un_business_company_info {
    width: 100%;
  }
  .bl_entry .un_business_company_wrap .un_business_company_info h3 {
    font-size: 22px;
  }
  .bl_entry .un_business_company_wrap .un_business_company_info ul {
    margin-bottom: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .bl_entry .un_business_company_wrap .un_business_company_info ul li {
    width: 100%;
    padding: 0;
  }
}

@media screen and (max-width: 767px){
  html {
    scroll-padding-top: 20px;
  }
  body {
    font-size: 14px;
  }
  .ly_header_inner {
    padding: 0 20px;
    max-width: 1600px;
    margin: auto;
  }
  .ly_footer {
    padding: 50px 0;
  }
  .ly_sect.ly_sect_narrowPadding {
    padding: 30px 0;
  }
  .ly_title {
    margin-bottom: 20px;
  }
  .el_btn, .el_arrowBtn, .el_arrowBtnLg {
    min-width: 150px;
    padding: 0.8em 1.5em;
    font-size: 14px;
  }
  .el_btn.el_btn__viewmore, .el_btn__viewmore.el_arrowBtn, .el_btn__viewmore.el_arrowBtnLg {
    white-space: initial;
  }
  .el_btn.el_btn__viewmore::after, .el_btn__viewmore.el_arrowBtn::after, .el_btn__viewmore.el_arrowBtnLg::after {
    font-size: 9px;
    padding: 5px 1em 0;
    text-align: center;
  }
  .el_btn.el_btn__footerwhite::after, .el_btn__footerwhite.el_arrowBtn::after, .el_btn__footerwhite.el_arrowBtnLg::after {
    top: 11px;
  }
  .el_outerLinkbtn {
    padding: 0.8em 1.5em;
    font-size: 14px;
  }
  .el_ttlHeading {
    font-size: 16px;
  }
  .el_ttlHeading::before {
    font-size: 50px;
  }
  .el_ttlHeading_ja {
    font-size: 18px;
  }
  .el_ttlHeading_ja span {
    letter-spacing: 0;
  }
  .el_ttlHeading_ja span::before, .el_ttlHeading_ja span::after {
    top: 3px;
    width: 30px;
    height: 20px;
  }
  .el_ttlHeading_ja span::before {
    left: -50px;
  }
  .el_ttlHeading_ja span::after {
    right: -50px;
  }
  .el_pageHeading_main {
    font-size: 22px;
  }
  .el_xlHeading {
    font-size: 30px;
  }
  .el_xlHeading.el_xlHeading__year {
    font-size: 38px;
  }
  .el_xlHeading.el_xlHeading__large-en::before {
    content: attr(data-en);
    font-size: 48px;
  }
  .el_xlHeading.el_xlHeading__en {
    font-size: 50px;
  }
  .bl_headerContents_logo img {
    max-width: 220px;
  }
  .bl_headerContents {
    min-height: 70px;
  }
  .bl_topicpath {
    overflow-x: auto;
    word-break: keep-all;
    white-space: nowrap;
  }
  .bl_topicpath_item {
    padding: 5px 0em 5px 0em;
    font-size: 10px;
  }
  .bl_topicpath_item::after {
    width: 1em;
    margin: 0.5em 5px;
  }
  .bl_cta {
    padding: 50px 10px;
  }
  .bl_cta_contwrap {
    display: block;
  }
  .bl_cta_telnumber {
    text-align: center;
    letter-spacing: 0;
  }
  .bl_cta_telnumber a {
    color: #fff;
    text-decoration: none;
  }
  .bl_cta_telnumber::before {
    width: 25px;
    height: 25px;
    top: 3px;
  }
  .bl_footer_headlink {
    padding-bottom: 20px;
    margin-bottom: 60px;
  }
  .bl_footer_headlink a {
    font-size: 30px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .bl_footer_headlink a::after {
    width: 0.8em;
    height: 0.8em;
  }
  .bl_footer_wrap {
    display: block;
  }
  .bl_footer_corplogo {
    width: 100%;
    max-width: 260px;
    margin: auto;
    padding-right: 0;
  }
  .bl_footernav_wrap {
    width: 100%;
    padding-left: 0;
  }
  .bl_footer_nav {
    max-width: 400px;
    margin: 40px auto;
    border-bottom: 1px solid #fff;
    padding-bottom: 20px;
  }
  .bl_footer_nav li {
    margin-bottom: 30px;
    width: 50%;
    list-style: none;
    line-height: 1.2;
  }
  .bl_footer_nav li a {
    color: #fff;
    text-decoration: none;
  }
  .bl_footer_nav li ul {
    margin-top: 0.5em;
  }
  .bl_footer_nav li ul li {
    width: 100%;
    margin: 0 0 5px;
  }
  .bl_footer_nav li ul li a {
    font-size: 0.8em;
    opacity: 0.7;
  }
  .bl_footer_companyinfo_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: 400px;
    margin: 0 auto;
  }
  .bl_footer_companyinfo {
    width: 100%;
    padding: 10px 20px;
  }
  .bl_footer_companyinfo.bl_footer_companyinfo_half {
    width: 100%;
  }
  .bl_footer_companyinfo .bl_footer_companyadress {
    font-size: 12px;
    opacity: 0.7;
  }
  .bl_footer_copyright {
    text-align: center;
    font-size: 12px;
    margin: 60px 0 0;
    font-family: "Josefin Sans", sans-serif;
    opacity: 0.7;
  }
  .bl_summaryList.bl_summaryList__col2 .bl_summaryItem {
    width: 100%;
  }
  .bl_summaryItem {
    width: 100%;
    margin-bottom: 30px;
  }
  .bl_summaryItem.bl_summaryItem__sideimage .bl_summaryItem_media {
    width: 100%;
  }
  .bl_summaryItem.bl_summaryItem__sideimage .bl_summaryItem_info {
    width: 100%;
    padding-left: 0;
  }
  .bl_entry .bl_title_enjp {
    font-size: 24px;
  }
  .bl_entry .bl_title_enjp::after {
    font-size: 40px;
    width: 100%;
    bottom: 20px;
  }
  .bl_entry dl.el_horizontal dt {
    float: none;
    padding: 1em 1em 0;
    text-align: left;
  }
  .bl_entry dl.el_horizontal dd {
    padding: 0 1em 1em;
  }
  .bl_entry .bl_customDescriptionList .bl_customDescriptionList_item {
    display: block;
  }
  .bl_entry .bl_customDescriptionList dt {
    display: inline-block;
    width: auto;
    font-size: 12px;
    margin: 1em 0 0;
    padding: 0.5em 0.8em;
  }
  .bl_entry .bl_customDescriptionList dd {
    display: block;
    width: 100%;
    padding: 0.5em 0 1em;
  }
  .bl_entrysidenav_wrapper {
    display: block;
  }
  .bl_entrysidenavlist {
    display: none;
  }
  .bl_entrysidenavcont {
    width: 100%;
    padding: 0 10px;
  }
  .bl_entrysidenavcont.bl_entrysidenavcont__p-color {
    position: relative;
    padding: 30px 0 30px 20px;
    margin: 0 -20px 0px;
    width: calc(100% + 20px);
  }
  .bl_entrysidenavcont.bl_entrysidenavcont__p-color::after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: calc(100% + 20px);
    height: 100%;
    background-color: #0056b3;
    z-index: -1;
  }
  .bl_officeinfo_wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .bl_officeinfo_wrap p {
    font-size: 12px;
  }
  .bl_officeinfo_wrap .bl_officeinfo_image {
    width: 100%;
  }
  .bl_officeinfo_wrap .bl_officeinfo_image div {
    margin-bottom: 10px;
  }
  .bl_officeinfo_wrap .bl_officeinfo_text {
    width: 100%;
    padding: 0 10px;
  }
  .bl_officeinfo_wrap .bl_officeinfo_title {
    font-size: 20px;
    width: 100%;
  }
  .bl_pagetitle_ja {
    font-size: 16px;
  }
  .bl_pagetitle_ja.bl_pagetitle_ja__company {
    font-size: 14px;
    padding: 3px 15px;
  }
  .bl_pagetitle_en {
    font-size: 40px;
    margin-top: 10px;
    margin-bottom: 0;
  }
  .bl_pagetitle_en.bl_pagetitle_en__company {
    font-size: 40px;
  }
  .bl_pagetitle_en.bl_pagetitle_en__news {
    font-size: 40px;
  }
  .bl_categoryTitle {
    background-attachment: scroll;
    background-position: center;
  }
  .bl_categoryTitle_cont {
    padding: 60px 10px 90px;
    position: relative;
  }
  .bl_categoryTitle_cont .bl_pagetitle_arrow {
    width: 50px;
    height: 50px;
    background-size: 40%;
    right: 0;
    bottom: 10px;
  }
  .bl_categoryTitle__nokeyimage .bl_categoryTitle_cont {
    padding: 50px 10px 20px;
  }
  .bl_categoryTitle_cont.bl_categoryTitle_cont__company {
    padding: 70px 0 40px;
  }
  .bl_categoryTitle_cont.bl_categoryTitle_cont__company::before {
    width: 50%;
    right: -20%;
    top: 0px;
  }
  .bl_categoryTitle_cont.bl_categoryTitle_cont__news {
    padding: 70px 0 40px;
  }
  .bl_categoryTitleImg {
    width: 50%;
    height: 200px;
  }
  .bl_categoryTitleImg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .bl_categoryTitlebtmcont {
    padding: 40px 0;
  }
  .bl_categoryTitlebtmcopy {
    margin-bottom: 10px;
    position: relative;
    z-index: 2;
  }
  .bl_categoryTitlebtmcopy span {
    font-size: 18px;
    margin-bottom: 4px;
    padding: 5px 10px;
  }
  .bl_categoryTitlebtm_body {
    font-size: 12px;
  }
  .bl_serialNavi_item.bl_serialNavi_item__prev {
    width: 10%;
  }
  .bl_serialNavi_item.bl_serialNavi_item__index {
    width: 80%;
  }
  .bl_serialNavi_item.bl_serialNavi_item__next {
    width: 10%;
  }
  .hp_sp_txt_left {
    text-align: left !important;
  }
  .hp_hide_md_max {
    display: none !important;
  }
  .hp_grid_md_max__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_max__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_max__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_max__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_max__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_max__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_md_max__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .un_mv_recbtn_link {
    width: 150px;
    height: 150px;
  }
  .un_topmessage_wrap {
    font-size: 13px;
  }
  .un_topmessage_image.un_topmessage_image__image02 {
    display: block !important;
    position: relative;
    width: 300px;
    margin: 30px auto;
    top: 0;
  }
  .un_topmessage_left_text01 {
    margin-left: 20px;
  }
  .un_topmessage_left_text02 {
    margin-left: 20px;
  }
  .un_topmessage_left_text03 {
    margin-left: 20px;
    margin-top: 2em;
  }
  .un_topproducts_grid_wrap {
    display: block;
  }
  .un_topproducts_grid_item:nth-child(1),
  .un_topproducts_grid_item:nth-child(3),
  .un_topproducts_grid_item:nth-child(4),
  .un_topproducts_grid_item:nth-child(5) {
    display: none;
  }
  .un_topproducts_grid_item:nth-child(2) {
    width: 100%;
    min-width: auto;
  }
  .un_topproducts_btnwrap {
    margin-bottom: 20px;
  }
  .un_topnews_slider_wrap {
    padding: 10px 10px;
  }
  .un_topnews_slider_inner {
    font-size: 12px;
  }
  .un_topNews_wrapper {
    display: block;
  }
  .un_topNews_ttl {
    width: 100%;
  }
  .un_topNews_listWrap {
    width: 100%;
    margin-top: 40px;
  }
  .un_topreclink_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    background-size: 200%;
    background-position: top -20% left 55%;
    padding: 22vw 5vw 10vw 10vw;
    margin-top: -10vw;
  }
  .un_topreclinkbox {
    width: 100%;
  }
  .un_topreclinkbox_copy {
    width: 100%;
    padding: 10px;
  }
  .un_topother_wrap {
    padding: 50px 0;
  }
  .un_topother_cont {
    display: block;
  }
  .un_topother_cont .un_topother_title {
    width: 100%;
  }
  .un_topother_cont .un_topother_inner {
    width: 100%;
    padding: 0;
  }
  .un_topgroupinfo_wrap {
    padding: 50px 10px;
  }
  .un_topgroupinfo_wrap .un_topgroupinfo_inner {
    padding: 40px 20px;
    border-radius: 20px;
  }
  .un_topgroupinfo_contwrap {
    display: block;
    font-size: 14px;
  }
  .un_topgroupinfo_contwrap .un_topgroupinfo_cont_inner {
    padding: 0 20px;
    width: 100%;
    margin-bottom: 30px;
  }
  .un_topgroupinfo_contwrap .un_topgroupinfo_title {
    font-size: 18px;
  }
  .un_imageright-edge {
    width: 100%;
    margin-bottom: 20px;
  }
  .un_imageright-edge.un_imageright-edge__leftradius {
    border-radius: 0;
  }
  .un_system_outerlink_wrap {
    border-radius: 10px;
    margin: 30px 0;
  }
  .un_system_outerlink_wrap a {
    padding: 60px 20px 30px;
    font-size: 14px;
  }
  .un_system_outerlink_wrap a::before {
    font-size: 30px;
  }
  .un_system_outerlink_wrap.un_system_outerlink_wrap__philosophy {
    margin: 0 -20px 0;
  }
  .un_system_outerlink_wrap .un_system_outerlink_viewmore {
    width: 40px;
    height: 40px;
    right: 10px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .un_system_outerlink_wrap:hover .un_system_outerlink_viewmore {
    right: 10px;
  }
  .bl_entry .un_commitmentttl {
    font-size: 24px;
    margin-top: 60px;
  }
  .bl_entry .un_commitmentttl::before {
    padding: 6px 35px 4px 15px;
    font-size: 12px;
    margin-bottom: 15px;
  }
  .bl_entry .un_commitmentttl::after {
    font-size: 18px;
    line-height: 33px;
    width: 34px;
    height: 34px;
    border: 2px solid;
    top: 5px;
    left: 130px;
  }
  .un_castingscolumncont_wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 30px;
  }
  .un_castingscolumncont_wrap.un_castingscolumncont_wrap__reserve {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .un_castingscolumncont_wrap .un_castingscolumncont_image {
    width: 100%;
    margin-bottom: 20px;
  }
  .un_castingscolumncont_wrap .un_castingscolumncont_image img {
    width: 100%;
  }
  .un_castingscolumncont_wrap .un_castingscolumncont_body {
    width: 100%;
    padding: 0 10px;
  }
  .un_castingsvoice_wrap {
    padding: 55px 20px 10px;
    border-radius: 10px;
  }
  .un_castingsvoice_contwrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .un_castingsvoice_img {
    width: 100%;
    max-width: 200px;
    margin: 0 auto 20px;
  }
  .un_castingsvoice_txt {
    width: 100%;
    font-size: 12px;
  }
  .un_supplychain_interview_head {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .un_supplychain_interview_headimage {
    width: 100%;
  }
  .un_supplychain_interview_headtext {
    width: 100%;
    padding-left: 0;
  }
  .un_supplychainmap_wrap {
    background-position: bottom center;
    margin-bottom: 0px;
  }
  .un_supplychainmap_cont {
    margin-left: 0;
    max-width: initial;
    padding-bottom: 40vw;
  }
  .un_supplychainmap_ttl {
    text-align: center;
  }
  .un_supplychainmap_ttl span strong {
    font-size: 60px;
  }
  .bl_entry .un_supplychain_lgttl {
    font-size: 14px;
    margin: 60px 0 10px;
  }
  .bl_entry .un_supplychain_lgttl::before {
    font-size: 50px;
  }
  .un_supplychain_logowrap {
    margin: 0 -5px 40px;
  }
  .un_supplychain_logowrap div {
    width: 50%;
    padding: 5px;
  }
  .un_businessindex_summaryItem {
    padding: 30px 0;
    background-size: 300px;
    background-position: left -40px top;
    min-height: auto;
  }
  .un_businessindex_summarybody {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .un_businessindex_summarybody .un_businessindex_summaryItem_title_en {
    font-size: 26px;
  }
  .un_businessindex_summarybody .un_businessindex_summaryItem_title_ja {
    font-size: 18px;
  }
  .un_businessindex_summarybody .un_businessindex_summarycopy {
    font-size: 12px;
  }
  .un_businessindex_summarybody .un_businessindex_summarytext {
    position: relative;
    z-index: 2;
  }
  .un_businessindex_summarybody::before {
    display: none;
  }
  .un_businessindex_summaryItem_mediaImg {
    position: relative;
    margin-bottom: 30px;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    max-width: 600px;
  }
  .un_groupCompany_body {
    width: 100%;
    padding: 0 10px;
    margin-bottom: 20px;
  }
  .un_groupCompany_image {
    width: 100%;
  }
  .un_topbusiness_contlink {
    display: block;
  }
  .un_topbusiness_cont_image {
    width: 100%;
    margin: auto;
    max-width: 400px;
  }
  .un_topbusiness_cont_body {
    width: 100%;
    padding: 0 20px 0 20px;
    max-width: 400px;
    margin: 15px auto;
  }
  .un_topbusiness_contlink {
    width: calc(100% - 40px);
  }
  .un_topbusiness_cont_link_text {
    margin-top: 10px;
  }
  .un_topbusiness_cont_link_text .un_topbusiness_cont_link_title {
    font-size: 20px;
  }
  .un_topbusiness_cont_link_text .un_topbusiness_cont_link_title::after {
    font-size: 10px;
  }
  .un_company_otherentry_outer {
    padding: 40px 0;
  }
  .un_company_otherentry_wrap {
    margin: 0 -10px;
  }
  .un_company_otherentry_wrap .un_company_otherentry {
    width: 50%;
    padding: 10px;
  }
  .un_company_otherentry_wrap .un_company_otherentry_entitle {
    font-size: 14px;
    margin-top: 10px;
  }
  .un_company_otherentry_wrap .un_company_otherentry_title {
    font-size: 11px;
  }
  .un_company_otherentry_wrap .un_company_otherentry_image {
    border-radius: 10px;
  }
  .un_historybody dt {
    font-size: 20px;
    width: 100%;
    color: #0056b3;
    margin-bottom: 0;
  }
  .un_historybody dd {
    margin-bottom: 10px;
    width: 100%;
    padding: 10px;
    font-size: 12px;
  }
  .un_historyimage_wrap .un_history_image {
    width: 50%;
  }
  .un_historyimage_wrap .un_history_image p {
    font-size: 10px;
    line-height: 1.2;
    margin-bottom: 0;
  }
  .un_philosophycont_outer {
    padding: 40px 20px 50px;
    border-radius: 10px;
    margin-bottom: 20px;
  }
  .un_philosophy_lgtitle {
    font-size: 14px;
    margin-bottom: 40px;
  }
  .un_philosophy_lgtitle::before {
    font-size: 50px;
    line-height: 40px;
  }
  .un_philosophy_body {
    font-size: 24px;
    margin-top: 30px;
  }
  .un_philosophy_mvvmovie {
    margin: 40px 0;
  }
  .un_philosophy_statement {
    font-size: 14px;
    line-height: 2;
    text-align: left;
  }
  .un_philosophy_statement p {
    margin-bottom: 1em;
  }
  .un_companyindex_summaryItem {
    width: 100%;
    padding: 0 10px 40px;
  }
  .un_companyindex_summaryItem:nth-of-type(2) {
    margin-top: 0;
  }
  .un_companyindex_summaryItem:nth-of-type(2n + 3) {
    margin-top: 0;
  }
  .un_companyindex_summaryItem_title_en {
    font-size: 22px;
    margin-top: 10px;
  }
  .un_sustainability_sdgstitle {
    padding: 0 10px;
    background-image: none;
  }
  .un_sustainability_sdgs_inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -20px 30px;
  }
  .un_sustainability_sdgs_body {
    width: 100%;
    padding: 20px 20px 0;
  }
  .un_sustainability_sdgs_image_wrap {
    width: 100%;
    padding: 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .un_message_ly {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 13px;
  }
  .un_message_ly .un_message_body {
    width: 100%;
    margin-bottom: 0;
  }
  .un_message_ly .un_message_image {
    position: relative;
    padding: 0 10px;
    width: 100%;
  }
  .un_message_ly.un_message_ly_imageright .un_message_image {
    position: relative;
    left: 0;
    width: 100%;
  }
  .un_message_ly.un_message_ly_imageleft .un_message_image {
    position: relative;
    width: 100%;
  }
  .un_message_ly.un_message_ly_imagebottom .un_message_image {
    position: relative;
    margin-top: 0;
    width: 100%;
  }
  .un_message_ttl {
    font-size: 20px;
  }
  .un_poducts_nav {
    display: none;
  }
  .un_products_contsec {
    padding: 20px 0;
    margin-top: -20px;
  }
  .un_products_ttl {
    font-size: 20px;
    padding: 20px 0 10px;
  }
  .un_productsitembox_wrapper {
    margin: 10px -5px;
  }
  .un_productsitembox_wrapper .un_productsitembox_outer {
    width: 50%;
    padding: 5px;
  }
  .un_productsitembox_wrapper .un_productsitembox {
    padding: 10px;
    border-radius: 5px;
  }
  .un_productsitembox_wrapper .un_productsitemboxlist_name {
    font-size: 14px;
  }
  .un_productsitembox_wrapper .un_productsitemboxlist_op {
    font-size: 12px;
  }
  .un_productsitembox_wrapper .un_productsitemboxlist {
    font-size: 10px;
  }
  .un_contact_telnumberwrap .un_contact_telnumbertitle {
    min-width: auto;
  }
  .un_contact_formwrap {
    margin: 20px 0;
    border-radius: 20px;
    padding: 40px 20px;
  }
}

@media screen and (max-width: 479px){
  .bl_footer_companyinfo_wrap {
    margin: 0 -20px;
  }
  .hp_hide_sm_max {
    display: none !important;
  }
  .hp_hide_sp {
    display: none !important;
  }
  .hp_grid_sm_max__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_max__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_max__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_max__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_max__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_max__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_sm_max__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .un_mv_moviewrap::before {
    background-size: 90%;
    background-position: right -40% bottom 30%;
  }
  .un_mv_copy_wrap {
    bottom: 35%;
    left: 5%;
  }
  .un_mv_copy_entext {
    display: none;
  }
  .un_mv_recbtn_link {
    width: 130px;
    height: 130px;
  }
}

@media screen and (max-width: 374px){
  .hp_hide_xs_max {
    display: none !important;
  }
  .hp_grid_xs_max__1 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xs_max__2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xs_max__3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xs_max__4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xs_max__5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xs_max__6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
  .hp_grid_xs_max__12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-rows: minmax(0, auto);
  }
}

/*# sourceMappingURL=bundle.min.css.map*/