/*
	Theme Name: equal
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@600&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@200;400;500;700&display=swap");
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block
}
audio, canvas, progress, video {
  display: inline-block
}
audio:not([controls]) {
  display: none;
  height: 0
}
template, [hidden] {
  display: none
}
*, ::before, ::after {
  background-repeat: no-repeat;
  -webkit-box-sizing: inherit;
  box-sizing: inherit
}
::before, ::after {
  text-decoration: inherit;
  vertical-align: inherit
}
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: default;
  font-family: sans-serif;
  line-height: 1.5;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%
}
body {
  margin: 0
}
h1 {
  font-size: 2em;
  margin: .67em 0
}
code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em
}
hr {
  height: 0;
  overflow: visible
}
nav ol, nav ul {
  list-style: none
}
abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none
}
b, strong {
  font-weight: inherit
}
b, strong {
  font-weight: bolder
}
dfn {
  font-style: italic
}
mark {
  background-color: #ffff00;
  color: #000000
}
progress {
  vertical-align: baseline
}
small {
  font-size: 83.3333%
}
sub, sup {
  font-size: 83.3333%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}
sub {
  bottom: -.25em
}
sup {
  top: -.5em
}
::-moz-selection {
  background-color: #b3d4fc;
  color: #000000;
  text-shadow: none
}
::selection {
  background-color: #b3d4fc;
  color: #000000;
  text-shadow: none
}
audio, canvas, iframe, img, svg, video {
  vertical-align: middle
}
img {
  border-style: none
}
svg {
  fill: currentColor
}
svg:not(:root) {
  overflow: hidden
}
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects
}
a:hover {
  outline-width: 0
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
button, input, select, textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
  font-size: 1em;
  margin: 0
}
button, input {
  overflow: visible
}
button, select {
  text-transform: none
}
button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button
}
::-moz-focus-inner {
  border-style: none;
  padding: 0
}
:-moz-focusring {
  outline: 1px dotted ButtonText
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: .35em .625em .75em
}
legend {
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal
}
textarea {
  overflow: auto;
  resize: vertical
}
[type="checkbox"], [type="radio"] {
  padding: 0
}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}
::-webkit-search-cancel-button, ::-webkit-search-decoration {
  -webkit-appearance: none
}
::-webkit-input-placeholder {
  color: inherit;
  opacity: .54
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}
[aria-busy="true"] {
  cursor: progress
}
[aria-controls] {
  cursor: pointer
}
[aria-disabled] {
  cursor: default
}
a, area, button, input, label, select, textarea, [tabindex] {
  -ms-touch-action: manipulation;
  touch-action: manipulation
}
[hidden][aria-hidden="false"] {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute
}
[hidden][aria-hidden="false"]:focus {
  clip: auto
}
*, *:after, *:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility
}
a, abbr, acronym, address, applet, article, aside, audio, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}
html {
  line-height: 1;
  font-size: 1.21951vw;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  line-break: strict;
  overflow-wrap: break-word
}
@media (max-width: 640px) {
  html {
    font-size: 4.268vw
  }
}
@media (min-width: 1312px) {
  html {
    font-size: 16px
  }
}
body {
  position: relative;
  letter-spacing: 0.03125rem;
  font-weight: 500;
  height: 100%;
  font-style: normal;
  color: #3B4043
}
@media (max-width: 640px) {
  body {
    width: 100%;
    min-width: initial;
    min-width: auto
  }
}
body.fixed {
  height: 100%;
  overflow: hidden
}
ol, ul {
  list-style: none
}
blockquote, q {
  quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
  content: "";
  content: none
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
table td {
  border: none
}
a {
  color: #3B4043;
  text-decoration: none;
  -webkit-transition: .3s;
  transition: .3s
}
a[target="_blank"] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end
}
a[target="_blank"]:after {
  content: '';
  background: url("img/icon-window.svg") no-repeat;
  width: .875rem;
  height: .75rem;
  display: block;
  margin-left: 0.3em
}
a:hover {
  text-decoration: underline
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom
}
a img:hover {
  opacity: 0.7;
  -webkit-transition: .3s;
  transition: .3s
}
strong {
  font-weight: 600;
  color: #111148
}
p {
  line-height: 1.8
}
@media (max-width: 640px) {
  .only-pc {
    display: none
  }
}
.only-sp {
  display: none
}
@media (max-width: 640px) {
  .only-sp {
    display: block
  }
}
.container {
  width: 73.75rem;
  margin: 0 auto;
  padding: 0 1.25rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
@media (max-width: 640px) {
  .container {
    width: 100%
  }
}
.l-container {
  width: 80rem;
  margin: 0 auto;
  padding: 0 1.25rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
@media (max-width: 640px) {
  .l-container {
    width: 100%
  }
}
.m-container {
  width: 63.75rem;
  margin: 0 auto;
  padding: 0 1.25rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
@media (max-width: 640px) {
  .m-container {
    width: 100%
  }
}
.s-container {
  width: 50rem;
  margin: 0 auto;
  padding: 0 1.25rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
@media (max-width: 640px) {
  .s-container {
    width: 100%
  }
}
.box-container {
  width: 56.25rem;
  margin: 0 auto;
  padding: 0 1.25rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
@media (max-width: 640px) {
  .box-container {
    width: 100%
  }
}
.wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 3.75rem auto
}
@media (max-width: 640px) {
  .wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.pager{

  margin-top: 3.75rem;

}
.wp-pagenavi {
	-webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.pager a, .pager span{
  font-size: 1.125rem;
  color: #98A6B5;
  width: 2.5rem;
  height: 2.5rem;
  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
}
.pager a:hover {
  text-decoration: none;
  color: #111148
}
.pager a.prev, .pager a.next {
  width: 3.125rem;
  height: 3.125rem;
  background: #FFF;
  border-radius: .75rem;
  margin: 0 1em
}
.pager a.next {
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1)
}
.cards-3col-square {
  margin: 0 -.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}
@media (max-width: 640px) {
  .cards-3col-square {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0
  }
}
.cards-3col-square a {
  display: block
}
.cards-3col-square a:hover {
  text-decoration: none;
  opacity: 0.7
}
.cards-3col-square .item {
  width: calc(100% / 3 - 1.875rem);
  background: #FFF;
  margin: 0 .9375rem;
	box-shadow: 0px 0px 15px -5px #777777;
}
@media (max-width: 640px) {
  .cards-3col-square .item {
    width: 100%;
    margin: .9375rem 0
  }
}
.cards-3col-square .item .item-image img {
  width: 100%;
  height: 12.5rem;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit:cover;'
}
.cards-3col-square .item .item-text {
  padding: 1.875rem
}
.cards-3col-square .item .item-text h3 {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
  line-height: 1.4;
  color: #111148
}
.cards-3col-square .item .item-text p {
  font-size: .875rem;
  line-height: 1.6
}
.cards-3col-circle {
  margin: 0 -2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}
@media (max-width: 640px) {
  .cards-3col-circle {
    margin: 0 -.625rem
  }
}
.cards-3col-circle a {
  display: block
}
.cards-3col-circle a:hover {
  text-decoration: none;
  opacity: 0.7
}
.cards-3col-circle .item {
  width: calc(100% / 3 - 5rem);
  margin: 1.875rem 2.5rem
}
@media (max-width: 640px) {
  .cards-3col-circle .item {
    width: calc(100% / 2 - 1.25rem);
    margin: 1.25rem .625rem
  }
}
.cards-3col-circle .item .item-image {
  background: #FFF;
  width: 9.6875rem;
  height: 9.6875rem;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  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;
  margin: 0 auto 1.5625rem auto
}
@media (max-width: 640px) {
  .cards-3col-circle .item .item-image {
    width: 8.75rem;
    height: 8.75rem;
    padding: 1.25rem
  }
}
.cards-3col-circle .item .item-text h3 {
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
  line-height: 1.4;
  color: #111148
}
@media (max-width: 640px) {
  .cards-3col-circle .item .item-text h3 {
    font-size: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 2.1875rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}
.cards-3col-circle .item .item-text p {
  font-size: .875rem;
  line-height: 1.6
}
.cards-imgcol {
  border-top: 1px solid #CDD6DD;
  margin-bottom: 3.75rem
}
.cards-imgcol .item {
  padding: 1.875rem 0;
  border-bottom: 1px solid #CDD6DD
}
.cards-imgcol .item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
@media (max-width: 640px) {
  .cards-imgcol .item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.cards-imgcol .item a:hover {
  text-decoration: none;
  opacity: 0.7
}
.cards-imgcol .item .item-image {
  width: 18.75rem;
  margin-right: 1.25rem;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media (max-width: 640px) {
  .cards-imgcol .item .item-image {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1.5625rem
  }
}
.cards-imgcol .item .item-image img {
  width: 100%;
  height: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit:cover;'
}
.cards-imgcol .item .cards__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: .875rem;
  margin-bottom: 1.5625rem
}
.cards-imgcol .item .cards__meta time {
  display: block;
  margin-right: 1em
}
.cards-imgcol .item h3 {
  color: #111148;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: .9375rem;
  font-size: 1.3125rem
}
.btn-1col {
  width: 18.75rem;
  margin: 0 auto
}
@media (max-width: 640px) {
  .btn-1col {
    width: 100%
  }
}
.btn-2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
@media (max-width: 640px) {
  .btn-2col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.btn-2col .btn__blue, .btn-2col .btn__white {
  width: 14.375rem;
  margin: 0 .5em
}
@media (max-width: 640px) {
  .btn-2col .btn__blue, .btn-2col .btn__white {
    margin: .5em 0;
    width: 100%
  }
}
.btn__blue {
  width: 18.75rem;
  height: 5rem;
  font-size: 1.125rem;
  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;
  color: #FFF;
  font-weight: 700;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #111148;
  border: 2px solid #111148;
  -webkit-transition: .3s;
  transition: .3s;
  cursor: pointer
}
@media (max-width: 640px) {
  .btn__blue {
    width: 100%
  }
}
.btn__blue:hover {
  text-decoration: none;
  background: #FFF;
  color: #111148
}
.btn__white {
  width: 18.75rem;
  height: 5rem;
  font-size: 1.125rem;
  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;
  color: #111148;
  font-weight: 700;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #fff;
  border: 2px solid #111148;
  -webkit-transition: .3s;
  transition: .3s;
  cursor: pointer
}
@media (max-width: 640px) {
  .btn__white {
    width: 100%
  }
}
.btn__white:hover {
  text-decoration: none;
  background: #111148;
  color: #fff
}
.btnripple3 {
  position: relative
}
.btnripple3:hover::before {
  content: '';
  position: absolute;
  left: 30%;
  top: 0;
  border: 1px solid #111148;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  opacity: 1;
  -webkit-animation: 1s circleanime2 forwards;
  animation: 1s circleanime2 forwards
}
#particles-js {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: calc(100vh - 6.25rem);
  background: url("img/mv.png") no-repeat center;
  background-size: 100% calc(100vh - 6.25rem)
}
@media (max-width: 640px) {
  #particles-js {
    height: 48vh;
    background-size: cover !important
  }
}
@media (max-width: 640px) {
  .common-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
@media (max-width: 640px) {
  .common-header.top-header {
    height: 48vh
  }
  .common-header.top-header .common-header__nav {
    background: transparent
  }
  .common-header.top-header .common-header__title a {
    color: #fff
  }
}
.common-header .common-header__mv {
  position: relative;
  height: calc(100vh - 6.25rem);
  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
}
@media (max-width: 640px) {
  .common-header .common-header__mv {
    height: 48vh;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%
  }
}
.common-header .common-header__mv .common-header__mv-catch {
  font-weight: 500;
  font-family: "Noto Serif JP", serif, "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 3rem;
  color: #FFF;
  text-align: center;
  position: relative
}
@media (max-width: 640px) {
  .common-header .common-header__mv .common-header__mv-catch {
    font-size: 1.75rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: 700
  }
}
.common-header .common-header__nav {
  background: #FFF;
  z-index: 100;
}
.common-header .common-header__nav.fixed {
  background: #FFF;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
-webkit-box-shadow: 0px 4px 15px -5px #ddd;
  box-shadow: 0px 4px 15px -5px #ddd
}
@media (max-width: 640px) {
  .common-header .common-header__nav.fixed {
    position: static;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: transparent
  }
}
@media (max-width: 640px) {
  .common-header .common-header__nav {
    width: 100%;
    padding: 1.25rem 0
  }
}
.common-header .common-header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.common-header .common-header__title {
  width: 14.6875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-weight: 700;
  color: #111148;
  font-size: .875rem;
  text-align: left;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt"
}
@media (max-width: 640px) {
  .common-header .common-header__title {
    width: 55%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
  }
}
.common-header .common-header__title picture {
  margin-bottom: .625rem;
  display: block
}
.common-header .common-header__title a {
  text-decoration: none;
  color: #111148
}
.global, .common-footer .common-footer__global {
  margin: 0 0 0 auto
}
@media (max-width: 640px) {
  .global, .common-footer .common-footer__global {
    margin: auto;
    -webkit-transition: .3s;
    transition: .3s;
    display: none
  }
}
.global.active, .common-footer .active.common-footer__global {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 200;
  background: rgba(17, 17, 72, 0.9);
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.global .global__nav, .common-footer .common-footer__global .global__nav, .common-footer .common-footer__global .common-footer__global__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media (max-width: 640px) {
  .global .global__nav, .common-footer .common-footer__global .global__nav, .common-footer .common-footer__global .common-footer__global__nav {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.global .global__nav .item.is-splogo, .common-footer .common-footer__global .global__nav .item.is-splogo, .common-footer .common-footer__global .common-footer__global__nav .item.is-splogo {
  margin-bottom: 1.25rem;
  text-align: center
}
.global .global__nav .item.is-splogo img, .common-footer .common-footer__global .global__nav .item.is-splogo img, .common-footer .common-footer__global .common-footer__global__nav .item.is-splogo img {
  width: 80%;
  height: auto;
  margin: auto
}
.global a, .common-footer .common-footer__global a {
  height: 6.25rem;
  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-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  font-size: .875rem;
  font-weight: 600;
  color: #3B4043;
  padding: 0 1.5625rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
@media (max-width: 640px) {
  .global a, .common-footer .common-footer__global a {
    height: auto;
    margin: 1em 0;
    color: #FFF
  }
}
.global a:before, .common-footer .common-footer__global a:before {
  content: '';
  width: 100%;
  height: .3125rem;
  background: #111148;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all .3s;
  transition: all .3s;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: center top;
  transform-origin: center top
}
@media (max-width: 640px) {
  .global a:before, .common-footer .common-footer__global a:before {
    display: none
  }
}
.global a:after, .common-footer .common-footer__global a:after {
  content: '';
  width: 100%;
  height: .3125rem;
  background: #CDD6DD;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom
}
@media (max-width: 640px) {
  .global a:after, .common-footer .common-footer__global a:after {
    display: none
  }
}
.global a span, .common-footer .common-footer__global a span {
  display: block;
  font-family: muli, sans-serif;
  font-weight: 800;
  font-size: 1.125rem;
  margin-bottom: .625rem
}
.global a:hover, .common-footer .common-footer__global a:hover {
  text-decoration: none
}
.global a:hover:before, .common-footer .common-footer__global a:hover:before, .global a:hover:after, .common-footer .common-footer__global a:hover:after {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1)
}
.content-header {
  text-align: center;
  color: #111148;
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 3.75rem;
  line-height: 1.4
}
@media (max-width: 640px) {
  .content-header {
    margin-bottom: 2.8125rem
  }
}
.content-header span {
  display: block;
  font-family: muli, sans-serif;
  font-weight: 800;
  font-size: 1rem;
  margin-bottom: .9375rem
}
.page-header {
  background: url("img/bk-equip.svg") no-repeat center;
  background-size: 120%;
  height: 12.5rem;
  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
}
@media (max-width: 640px) {
  .page-header {
    background-size: 200%;
    height: 10.3125rem
  }
}
.page-header .content-header {
  margin-bottom: 0
}
.navToggle {
  display: none;
  position: fixed;
  top: 1.25rem;
  right: .625rem;
  margin: auto;
  width: 3.125rem;
  height: 3.125rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  z-index: 100000;
  text-align: center;
  background: #111148
}
@media (max-width: 640px) {
  .navToggle {
    display: block;
    z-index: 1000
  }
}
.navToggle.active{
  background: #FFF;
}
.navToggle span {
  display: block;
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  width: 1rem;
  height: .125rem;
  background: #fff;
  border-radius: 50px;
  -webkit-transition: .35s ease-in-out;
  transition: .35s ease-in-out
}
.navToggle.active span{
  background: #111148;
}
.navToggle span:nth-child(1) {
  top: 1.0625rem
}
.navToggle span:nth-child(2) {
  top: 1.5rem;
  left: -.625rem
}
.navToggle span:nth-child(3) {
  top: 1.9375rem
}
.navToggle.active span:nth-child(1) {
  top: 24px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.navToggle.active span:nth-child(2) {
  top: 24px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: 0
}
.navToggle.active span:nth-child(3) {
  top: 24px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.common-footer {
  padding-top: 1.875rem;
  background: #F0F3F5
}
.common-footer .common-footer__inner {
  padding-top: 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
@media (max-width: 640px) {
  .common-footer .common-footer__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.common-footer .common-footer__inner .common-footer__address {
  width: 22.5rem;
  color: #111148;
}
@media (max-width: 640px) {
  .common-footer .common-footer__inner .common-footer__address {
    width: 100%;
    text-align: center
  }
}
.common-footer .common-footer__inner .common-footer__address .logo {
  margin-bottom: .9375rem
}
.common-footer .common-footer__inner .common-footer__address p, .common-footer .common-footer__inner .common-footer__address address {
  line-height: 1.6;
  font-size: .875rem
}
.common-footer .copy {
  text-align: center;
  font-size: .75rem;
  padding: 1.25rem
}
.ourmedia {
  position: relative
}
.ourmedia .content-header {
  padding-top: .9375rem;
  background: #F0F3F5 url("img/bk-equipwave.svg") repeat-x center;
  background-size: cover;
  margin-bottom: 0
}
@media (max-width: 640px) {
  .ourmedia .content-header {
    background-position: right
  }
}
.ourmedia:after {
  content: '';
  background: #F0F3F5 url("img/bk-equipwave.svg") repeat-x center;
  background-size: cover;
  width: 100%;
  height: 4.6875rem;
  display: block
}
@media (max-width: 640px) {
  .ourmedia:after {
    background-position: left
  }
}
.ourmedia .ourmedia__inner {
  background: #FFF;
  padding-top: 2.5rem
}
.ourmedia .ourmedia__colblock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
	padding:.625rem 1.25rem;
}
@media (max-width: 640px) {
  .ourmedia .ourmedia__colblock {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.ourmedia .ourmedia__colblock-image {
  width: 22.5rem;
  margin-right: 2.5rem;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media (max-width: 640px) {
  .ourmedia .ourmedia__colblock-image {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1.5625rem
  }
}
@media (max-width: 640px) {
  .ourmedia .ourmedia__colblock-text {
    width: 100%
  }
}
.ourmedia .ourmedia__colblock-text h3 {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1.25rem
}
.ourmedia .ourmedia__colblock-text p {
  line-height: 1.6
}
.main__block {
  background: #fff
}
.content-block {
  padding-top: 5.625rem;
  padding-bottom: 5.625rem
}
@media (max-width: 640px) {
  .content-block {
    padding-top: 2.8125rem;
    padding-bottom: 2.8125rem
  }
}
.top .top__description {
  -webkit-transition: .3s;
  transition: .3s
}
.top .top__description h1 {
  text-align: center;
  margin-bottom: 1.25rem
}
@media (max-width: 640px) {
  .top .top__description h1 {
    width: 40%;
    margin: 0 auto 1.25rem auto
  }
}
.top .top__description p {
  margin-bottom: 3.75rem
}
.top .top__description-btn {
  width: 11.25rem;
  margin: 0 auto
}
@media (max-width: 640px) {
  .top .top__description-btn {
    width: 100%
  }
}
.top .top__works {
  background: url("img/bk-equip.svg") no-repeat center;
  background-size: 120%
}
@media (max-width: 640px) {
  .top .top__works {
    background-repeat: repeat-y;
    background-size: 100%
  }
}
.top .top__works .cards-3col-square {
  margin-bottom: 6.25rem
}
@media (max-width: 640px) {
  .top .top__works .cards-3col-square {
    margin-bottom: 3.125rem
  }
}
.top .top__works .cards-3col-square a[target="_blank"]:after{
	display:none;
}
.top .top__service {
  background-color: #F0F3F5;
  position: relative;
  background-image: url("img/equip01-white.svg"), url("img/equip02-white.svg");
  background-repeat: no-repeat;
  background-position: top 5.625rem left -3.75rem, bottom 5.625rem right -3.75rem;
  background-size: 25rem 17rem
}
@media (max-width: 640px) {
  .top .top__service {
    background-image: none
  }
}
.top .top__service .cards-3col-circle {
  margin: -1.875rem 0 3.125rem 0
}
.top .top__blog {
  background: #FFF
}
.about .about__description {
  position: relative;
  background: url("img/equip01.svg"), url("img/equip02.svg");
  background-repeat: no-repeat;
  background-position: top 3.75rem left -3.75rem, bottom 1.875rem right -3.75rem;
  background-size: 25rem 17rem
}
@media (max-width: 640px) {
  .about .about__description {
    background: none
  }
}
.about .about__description .about__description-inner {
  position: relative;
  z-index: 1
}
.about .about__description p {
  margin-bottom: 1.875rem
}
.about .about__description p:last-child {
  margin-bottom: 0
}
.about .about__description .logo {
  text-align: center
}
.about .about__concept .about__concept-inner {
  position: relative;
  z-index: 1
}
.about .about__concept p {
  margin-bottom: 1em
}
.about .about__concept p:last-child {
  margin-bottom: 0
}
.about .about__service {
  background: #F0F3F5
}
.about .about__service .cards-3col-circle {
  margin: -1.875rem 0 3.125rem 0
}
.about .about__company {
  position: relative;
  background: url("img/equip02.svg"), url("img/equip01.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: bottom 3.75rem right, top 3.75rem left;
  background-size: 25rem 17rem
}
@media (max-width: 640px) {
  .about .about__company {
    background: none
  }
}
.about .about__ouline {
  width: 100%;
  margin-bottom: 3.75rem;
  border-top: .3125rem solid #111148;
  position: relative;
  z-index: 1
}
.about .about__ouline tr {
  border-bottom: 1px solid #CDD6DD
}
.about .about__ouline th, .about .about__ouline td {
  padding: 1.25rem 0;
  text-align: left;
  font-weight: 600;
  line-height: 1.4;
  font-size: 1rem;
  vertical-align: middle;
}
@media (max-width: 640px) {
  .about .about__ouline th, .about .about__ouline td {
    width: 100%;
    display: block
  }
}
.about .about__ouline th {
  width: 10.25rem;
  color: #707F89;
}
@media (max-width: 640px) {
  .about .about__ouline th{
    padding: 1.25rem 0 0 0;
  }
}
.about .about__ouline td {
  color: #3B4043
}
.service h2 {
  font-size: 1.625rem;
  font-weight: 700;
  padding-bottom: .9375rem;
  margin-bottom: 1.25rem;
  color: #111148;
  position: relative
}
@media (max-width: 640px) {
  .service h2 {
    font-size: 1.375rem
  }
}
.service h2:before {
  content: '';
  background: #111148;
  width: 3.75rem;
  height: .1875rem;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0
}
.service h2:after {
  content: '';
  background: #98A6B5;
  width: calc(100% - 3.75rem);
  height: .1875rem;
  display: block;
  position: absolute;
  bottom: 0;
  left: 3.75rem
}
.service h3 {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 1.25rem
}
@media (max-width: 640px) {
  .service h3 {
    font-size: 1.125rem
  }
}
.service .service__block {
  margin-bottom: 7.5rem
}
@media (max-width: 640px) {
  .service .service__block {
    margin-bottom: 3.25rem
  }
}
.service .service__col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media (max-width: 640px) {
  .service .service__col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.service .service__col .service__col-image {
  width: 26.25rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-left: 3.125rem;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}
@media (max-width: 640px) {
  .service .service__col .service__col-image {
    width: 100%;
    margin-left: 0;
    margin-bottom: 1.875rem;
    -webkit-box-ordinal-group: initial;
    -ms-flex-order: initial;
    order: initial
  }
}
.service .service__col .service__col-text p {
  margin-bottom: 1em
}
.service .service__col .service__col-text small {
  font-size: .75rem
}
.service .service__col .service__col-text .btn-2col {
  margin: 0 0 0 -.5em;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start
}
@media (max-width: 640px) {
  .service .service__col .service__col-text .btn-2col {
    margin: 0
  }
}
.service .service__col .service__col-text a[target="_blank"] {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.works h2 {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1.25rem;
  line-height: 1.4
}
@media (max-width: 640px) {
  .works h2 {
    font-size: 1.375rem
  }
}
.works p {
  margin-bottom: .9375rem;
  line-height: 1.6
}
.works .works__description {
  margin-bottom: 3.75rem
}
.works .works__block {
  background: #FFF;
  margin-bottom: 2.1875rem
}
.works .works__block a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
@media (max-width: 640px) {
  .works .works__block a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.works .works__block a:hover {
  text-decoration: none;
  opacity: 0.7
}
.works .works__block a[target="_blank"]:after {
  display: none
}
.works .works__block .works__block-image {
  width: 26.25rem;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media (max-width: 640px) {
  .works .works__block .works__block-image {
    width: 100%
  }
}
.works .works__block .works__block-image img {
  width: 100%;
  height: 18.75rem;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit:cover;'
}
@media (max-width: 640px) {
  .works .works__block .works__block-image img {
    aspect-ratio: 4/3;
    width: 100%;
    height: 100%
  }
}
.works .works__block .works__block-text {
  padding: 2.1875rem
}
@media (max-width: 640px) {
  .works .works__block .works__block-text {
    padding: 1.25rem
  }
}
.works .works__block .works__tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -.3125rem
}
@media (max-width: 640px) {
  .works .works__block .works__tag {
    gap: .5rem;
    margin: 0
  }
}
.works .works__block .works__tag span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #F0F3F5;
  border: 1px solid #CDD6DD;
  height: 1.875rem;
  padding: 0 .9375rem;
  border-radius: 3.125rem;
  font-size: .75rem;
  margin: 0 .3125rem
}
@media (max-width: 640px) {
  .works .works__block .works__tag span {
    margin: 0;
    padding: 0 .625rem
  }
}
.price h3 {
  font-size: 1.625rem;
  font-weight: 700;
  padding-bottom: 1.25rem;
  margin-bottom: 1.25rem;
  position: relative;
  line-height: 1.4
}
@media (max-width: 640px) {
  .price h3 {
    font-size: 1.25rem
  }
}
.price h3:before {
  content: '';
  background: #111148;
  width: 1.875rem;
  height: .1875rem;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0
}
.price h3:after {
  content: '';
  background: #98A6B5;
  width: 1.875rem;
  height: .1875rem;
  display: block;
  position: absolute;
  bottom: 0;
  left: 1.875rem
}
.price h4 {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: .9375rem
}
@media (max-width: 640px) {
  .price h4 {
    font-size: 1.125rem
  }
}
.price small {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
  font-size: .75rem;
  margin-left: 0.5em
}
@media (max-width: 640px) {
  .price small {
    margin-left: 0
  }
}
.price p {
  margin-bottom: 1em
}
.price .is-attention {
  text-align: right;
  font-size: .75rem;
  margin-top: .625rem
}
.price .price__inner h2.content-header {
  border-top: 3px solid #111148;
  border-bottom: 3px solid #111148;
  padding: 1.25rem 0
}
@media (max-width: 640px) {
  .price .price__inner h2.content-header {
    font-size: 1.375rem;
    padding: .625rem 0
  }
}
.price .price__description {
  text-align: center
}
@media (max-width: 640px) {
  .price .price__description {
    text-align: left
  }
}
.price .price__box {
  margin-top: 4.6875rem
}
.price .price__block {
  margin-top: 3.125rem
}
.price .price__body {
  width: 100%;
  font-weight: 700;
  border-top: 1px solid #98A6B5
}
.price .price__body.is-notop {
  border-top: 0
}
.price .price__body .price__body-total {
  background: #FFF;
  border-bottom: 0;
  padding: 1.25rem
}
@media (max-width: 640px) {
  .price .price__body .price__body-total th, .price .price__body .price__body-total td {
    padding-left: 1.25rem
  }
}
.price .price__body .price__body-period {
  background: #3B4043;
  border-bottom: 0;
  color: #fff;
  padding: 1.25rem
}
@media (max-width: 640px) {
  .price .price__body .price__body-period th, .price .price__body .price__body-period td {
    padding-left: 1.25rem
  }
}
.price .price__body tr {
  border-bottom: 1px solid #CDD6DD
}
.price .price__body th {
  width: 50%;
  text-align: left;
  padding: 1.25rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1.125rem;
  vertical-align: middle
}
@media (max-width: 640px) {
  .price .price__body th {
    width: 100%;
    display: block;
    padding: 1.25rem 0 0 0
  }
}
.price .price__body td {
  padding: 1.25rem;
  text-align: right;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  vertical-align: middle
}
@media (max-width: 640px) {
  .price .price__body td {
    width: 100%;
    display: block;
    text-align: left;
    padding: 1.25rem 0;
    line-height: 1.3
  }
}
.price .price__body-info {
  margin-top: .9375rem;
  margin-bottom: 2.8125rem;
  font-weight: 700
}
.price .price__body-info + .price__body-infosmall {
  margin-top: -2.1875rem
}
.price .price__body-infosmall {
  line-height: 1.5;
  font-size: .875rem
}
.price .price__estimate {
  padding-bottom: 6.25rem
}
.price .price__estimate p {
  margin-bottom: 1em
}
.price .price__estimate h3 {
  font-size: 1.25rem;
  margin-top: 3.75rem
}
.price .price__estimate ul {
  list-style: disc;
  margin-left: 1.5em;
  line-height: 1.8;
  font-weight: bold;
  color: #111148;
  margin-bottom: 1em
}
.price .price__payment {
  padding-bottom: 6.25rem
}
.price .price__payment p {
  margin-bottom: 1em
}
.price .price__payment h3 {
  font-size: 1.25rem;
  margin-top: 3.75rem
}
.inquiry .inquiry__body {
  width: 100%;
  margin-bottom: 1.875rem
}
.inquiry .inquiry__body th {
  width: 14.0625rem;
  padding: 1.875rem 0 1.25rem 0;
  text-align: left;
  font-weight: 700;
  color: #707F89;
  vertical-align: top;
  line-height: 1.4
}
@media (max-width: 640px) {
  .inquiry .inquiry__body th {
    display: block;
    width: 100%;
    padding-bottom: 0;
  }
  .inquiry .inquiry__body th br{
    display: none;
  }
}
.inquiry .inquiry__body td {
  padding: 1.25rem 0;
  vertical-align: top
}
@media (max-width: 640px) {
  .inquiry .inquiry__body td {
    width: 100%;
    display: block;
  }
}
.inquiry .description {
  margin-bottom: 1.875rem;
  text-align: center;
  font-size: 1.25rem
}
.inquiry .complete {
  margin-bottom: 3.75rem;
  text-align: center;
  font-size: 1.25rem
}
.inquiry .inquiry__not {
  line-height: 1.6;
  margin-bottom: 1.875rem;
  list-style: disc;
  margin-left: 1.5em;
  font-size: .875rem
}
.inquiry .inquiry__not li {
  margin-bottom: .5rem
}
.inquiry input[type="text"], .inquiry textarea {
  width: 100%;
  padding: .9375rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #FFF;
  border: 1px solid #CDD6DD
}
.inquiry .inquiry__select {
  overflow: hidden;
  width: 100%;
  background: #FFF;
  border: 1px solid #CDD6DD;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative
}
.inquiry .mw_wp_form_confirm .inquiry__select{
	border:0;
}
.inquiry .inquiry__select:after {
  content: '';
  display: block;
  width: .625rem;
  height: .625rem;
  border-left: 2px solid #98A6B5;
  border-bottom: 2px solid #98A6B5;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: .9375rem;
  right: .9375rem;
  margin: auto;
  pointer-events: none
}
.inquiry .inquiry__select select {
  width: 100%;
  padding: .9375rem;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}
.inquiry .inquiry__privacy {
  border: 1px solid #111148;
  background: #FFF;
  padding: 1.25rem;
  margin-bottom: 3.75rem;
  line-height: 1.6;
  font-size: .9375rem;
  height: 18.75rem;
  overflow-y: scroll
}
.inquiry .inquiry__privacy h3 {
  font-size: 1.125rem;
  font-weight: 700;
  margin-bottom: .9375rem
}
.inquiry .inquiry__privacy p {
  margin-bottom: 1.25rem
}
.inquiry .inquiry__privacy p + ul {
  margin-top: -.625rem
}
.inquiry .inquiry__privacy dl dt {
  font-weight: 700;
  font-size: 1rem
}
.inquiry .inquiry__privacy ul {
  margin-bottom: 1.25rem;
  list-style: disc;
  margin-left: 1.5rem
}
.inquiry small {
  font-size: .875rem
}
.inquiry .privacy-intro {
  text-align: center;
  margin-bottom: 1.25rem
}
.blog {
  padding-bottom: 6.25rem
}
@media (max-width: 640px) {
  .blog {
    padding-bottom: 3.75rem
  }
}
.blog .blog__body {
  width: 48.75rem
}
@media (max-width: 640px) {
  .blog .blog__body {
    width: 100%;
    margin-bottom: 3.75rem
  }
}
.blog .blog__body h2 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #111148;
  margin-bottom: 1.25rem;
  letter-spacing: 2px;
  line-height: 1.4
}
.blog .blog__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: .875rem;
  margin-bottom: 2.8125rem
}
.blog .blog__meta time {
  display: block;
  margin-right: 1em
}
.blog .blog__text {
  margin-bottom: 3.75rem
}
.blog .blog__text p, .blog .blog__text ul, .blog .blog__text ol, .blog .blog__text blockquote, .blog .blog__text table {
  margin-bottom: 1.5rem
}
.blog .blog__text a[target="_blank"]{
	display: -webkit-box;
    display: -ms-flexbox;
    display: inline-flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: center;
}
.blog .blog__text ul {
  line-height: 1.8;
  margin-left: 1.5em;
  list-style-type: disc
}
.blog .blog__text ol {
  line-height: 1.8;
  margin-left: 1.5em;
  list-style: decimal
}
.blog .blog__text blockquote {
  background: #fff;
  padding: .9375rem
}
.blog .blog__text blockquote p:last-child {
  margin-bottom: 0
}
.blog .blog__text table {
  border: 1px solid #000;
  background: #fff
}
.blog .blog__text table th, .blog .blog__text table td {
  text-align: left;
  border: 1px solid #000;
  padding: .9375rem
}
.blog .blog__text table th {
  background: #CDD6DD;
  font-weight: 600
}
.blog .blog__text h3 {
  font-weight: 700;
  font-size: 1.3125rem;
  margin-bottom: .9375rem;
  border-bottom: 2px solid #111148;
	padding-top:1.25rem;
  padding-bottom:.875rem;
  color: #111148
}
.blog .blog__text h4 {
  font-weight: 700;
  font-size: 1.125rem;
  margin-bottom: .9375rem;
  border-bottom: 1px solid #111148;
  padding-bottom: 10px;
  color: #111148
}
.blog .blog__text h5 {
  font-weight: 700;
  margin-bottom: .9375rem;
  border-bottom: 1px dashed #111148;
  padding-bottom: 10px;
  color: #111148
}
.blog .blog__text strong {
  color: #000;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(0%, #a8e2fb));
  background: linear-gradient(transparent 50%, #a8e2fb 0%)
}
.blog .blog__text em {
  color: #000;
  font-weight: 700;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(0%, #fbe5a8));
  background: linear-gradient(transparent 50%, #fbe5a8 0%)
}
.blog .blog__text small {
  font-size: .875rem
}
.blog .blog__text iframe {
  width: 100%;
  height: 24.75rem
}
@media (max-width: 640px) {
  .blog .blog__text iframe {
    height: 11.75rem
  }
}
.sidemenu {
  width: 18.75rem
}
@media (max-width: 640px) {
  .sidemenu {
    width: 100%
  }
}
.sidemenu__sticky {
	position: sticky;
    top: 8rem;
}
@media (max-width: 640px) {
	.sidemenu__sticky {
		position:static;
		top:auto;
	}
}
.sidemenu .sidemenu__box {
  margin-bottom: 3.75rem
}
@media (max-width: 640px) {
  .sidemenu .sidemenu__box {
    margin-bottom: 1.875rem
  }
}
.sidemenu .sidemenu__box .sidemenu__box-list {
  margin-left: 1.5em;
  list-style: disc;
  line-height: 1.8
}
.sidemenu .sidemenu__box .sidemenu__box-col a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.sidemenu .sidemenu__box .sidemenu__box-col a:hover {
  text-decoration: none;
  opacity: 0.7
}
.sidemenu .sidemenu__box .sidemenu__box-col .item {
  margin-bottom: .9375rem
}
.sidemenu .sidemenu__box .sidemenu__box-col .sidemenu__box-col-image {
  width: 6.25rem;
  margin-right: 1.25rem;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.sidemenu .sidemenu__box .sidemenu__box-col .sidemenu__box-col-image img{
	aspect-ratio:4 / 3;
	object-fit:cover;
}
.sidemenu .sidemenu__box .sidemenu__box-col .sidemenu__box-col-text {
  font-size: .75rem
}
.sidemenu h2 {
  font-weight: 700;
  margin-bottom: 1.25rem;
  padding-bottom: .625rem;
  border-bottom: 2px solid #111148
}
.sidemenu h3 {
  font-size: .875rem;
  font-weight: 700;
  margin-bottom: .625rem
}
.sidemenu time {
  display: block;
  margin-bottom: .4375rem
}
.page p{
  margin-bottom: 1.5rem;
}
.page .btn-1col{
  margin-bottom: 1.5rem;
}
.page a[target="_blank"]{
  align-items: center;
}
.ダサいホームページ {
  background: #000 url("img/dasabk.png");
  color: #FFF
}
.ダサいへっだー {
  padding: 1.875rem 0;
  text-align: center
}
.ダサいへっだー h1 {
  font-weight: 700;
  font-size: 3rem;
  margin-bottom: .9375rem;
  background: -webkit-gradient(linear, left top, right top, from(red), color-stop(14.28%, #f80), color-stop(28.56%, #dd0), color-stop(42.85%, #0d0), color-stop(57.14%, #0dd), color-stop(71.42%, blue), color-stop(85.71%, #e0e), to(red)) 0% center/200% auto;
  background: linear-gradient(to right, red 0%, #f80 14.28%, #dd0 28.56%, #0d0 42.85%, #0dd 57.14%, blue 71.42%, #e0e 85.71%, red 100%) 0% center/200% auto;
  background: -moz-linear-gradient(right, red 0%, #f80 14.28%, #dd0 28.56%, #0d0 42.85%, #0dd 57.14%, blue 71.42%, #e0e 85.71%, red 100%) 0% center/200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent
}
.ダサいへっだー .じゃぱに〜ずおんり〜 {
  color: #FFFF00
}
.ダサいへっだー .流れるテキスト {
  overflow: hidden;
  background: #f00;
  padding: 1.25rem;
  margin: 2.5rem 0
}
.ダサいへっだー .流れるテキスト p {
  display: inline-block;
  white-space: nowrap;
  -webkit-animation-name: marquee;
  animation-name: marquee;
  -webkit-animation-duration: 10s;
  animation-duration: 10s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  font-size: 1.5rem
}
.ボデぃ {
  width: 48.75rem;
  margin: 0 auto;
  padding: 0 1.25rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
.最初の文章 {
  margin-bottom: 3.75rem
}
.最初の文章 h2 {
  color: #FFFF00;
  line-height: 1.4;
  font-weight: 700;
  font-size: 2.5rem;
  -webkit-transform: rotate(-5deg);
  transform: rotate(-5deg);
  -webkit-animation: flash 3s linear infinite;
  animation: flash 3s linear infinite
}
.メニュー {
  background: #FFF;
  padding: 1.25rem;
  height: 18.75rem;
  overflow-y: scroll;
  color: #000;
  margin-bottom: 6.25rem
}
.メニュー h2 {
  text-align: center;
  font-size: 2.375rem;
  margin-bottom: 1.875rem;
  font-weight: 700;
  color: #0F0
}
.メニュー h3 {
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  color: #00f;
  margin-bottom: 1.25rem;
  background: -webkit-gradient(linear, left top, right top, from(orange), color-stop(yellow), color-stop(green), color-stop(cyan), color-stop(blue), to(violet));
  background: linear-gradient(to right, orange, yellow, green, cyan, blue, violet);
  background: -moz-linear-gradient(right, orange, yellow, green, cyan, blue, violet);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent
}
.メニュー table {
  border-collapse: separate;
  border: 1px solid #000;
  width: 100%;
  margin-bottom: 1.875rem
}
.メニュー table th, .メニュー table td {
  border: 1px solid #000;
  border-collapse: separate;
  padding: .9375rem
}
.メニュー ul {
  list-style-type: disc;
  margin-left: 1.5em;
  line-height: 1.8
}
.仕事内容 {
  position: relative;
  margin-bottom: 6.25rem
}
.仕事内容 h2 {
  font-size: 3rem;
  color: #ffff00;
  text-align: center;
  margin-bottom: 1.875rem
}
.仕事内容 p {
  font-weight: 700;
  color: #F00
}
.仕事内容 figure {
  position: absolute;
  z-index: -1;
  top: -1.25rem;
  left: -1.25rem
}
.ブログ {
  position: relative;
  margin-bottom: 6.25rem
}
.ブログ h2 {
  font-size: 3rem;
  color: #00f;
  text-align: center;
  margin-bottom: 1.875rem
}
.ブログ p {
  color: #FFFF00;
  font-size: 1.5rem;
  text-align: center
}
.メイン終わり {
  font-size: 3.75rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 6.25rem
}
.メイン本当の終わり {
  margin-bottom: 6.25rem
}
.メイン本当の終わり h2 {
  color: #ffff00;
  text-align: center;
  font-weight: 700;
  font-size: 4rem;
  margin-bottom: 3.75rem
}
.メイン本当の終わり p {
  color: #0f0
}
.メイン本当の本当の終わり {
  font-size: 5rem;
  text-align: center
}
.メイン本当の本当の終わり a {
  color: #00f;
  font-weight: 700
}
.最後 {
  text-align: center;
  padding: 1.875rem 0
}
.点滅 {
  -webkit-animation: flash 3s linear infinite;
  animation: flash 3s linear infinite
}
.隠しページ .隠しページcontainer {
  width: 50rem;
  height: 50rem;
  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;
  line-height: 1.5;
  margin: 0 auto
}
@-webkit-keyframes marquee {
  from {
    margin-left: 100%
  }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
  }
}
@keyframes marquee {
  from {
    margin-left: 100%
  }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
  }
}
@-webkit-keyframes flash {
  0%, 100% {
    opacity: 1
  }
  50% {
    opacity: 0
  }
}
@keyframes flash {
  0%, 100% {
    opacity: 1
  }
  50% {
    opacity: 0
  }
}
.glowAnime span {
  opacity: 0
}
.glowAnime.glow span {
  -webkit-animation: glow_anime_on 1s ease-out forwards;
  animation: glow_anime_on 1s ease-out forwards
}
@-webkit-keyframes glow_anime_on {
  0% {
    opacity: 0;
    text-shadow: 0 0 0 #fff, 0 0 0 #fff
  }
  50% {
    opacity: 1;
    text-shadow: 0 0 10px #fff, 0 0 15px #fff
  }
  100% {
    opacity: 1;
    text-shadow: 0 0 0 #fff, 0 0 0 #fff
  }
}
@keyframes glow_anime_on {
  0% {
    opacity: 0;
    text-shadow: 0 0 0 #fff, 0 0 0 #fff
  }
  50% {
    opacity: 1;
    text-shadow: 0 0 10px #fff, 0 0 15px #fff
  }
  100% {
    opacity: 1;
    text-shadow: 0 0 0 #fff, 0 0 0 #fff
  }
}
@-webkit-keyframes circleanime2 {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0)
  }
  100% {
    -webkit-transform: scale(2);
    transform: scale(2);
    opacity: 0
  }
}
@keyframes circleanime2 {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0)
  }
  100% {
    -webkit-transform: scale(2);
    transform: scale(2);
    opacity: 0
  }
}
@keyframes fade-in {
  0% {
    display: none;
    opacity: 0
  }
  1% {
    display: block;
    opacity: 0
  }
  100% {
    display: block;
    opacity: 1
  }
}
@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0
  }
  1% {
    display: block;
    opacity: 0
  }
  100% {
    display: block;
    opacity: 1
  }
}
.clearfix::after {
  content: "";
  clear: both;
  display: block
}


/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width:320px) {

}
@media only screen and (min-width:480px) {

}
@media only screen and (min-width:768px) {

}
@media only screen and (min-width:1024px) {

}
@media only screen and (min-width:1140px) {

}
@media only screen and (min-width:1280px) {

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {

}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}
