@charset "UTF-8";
* {
  font-weight: inherit;
}

html {
  font-size: 62.5%;
  overflow-y: scroll;
}

body {
  color: #333;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Roboto, "SF UI Display", Meiryo, sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  color: inherit;
  text-decoration: none;
}

a:link {
  -webkit-tap-highlight-color: inherit;
}

img,
button {
  vertical-align: middle;
}

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

.Title--toph1 {
  font-size: 1.4rem;
  margin: 0 auto;
  text-align: center;
  margin-bottom: 12px;
}
.Title--toph1 .inner {
  border: 1px solid #eaeaea;
}
.Title--toph1 span {
  display: inline-block;
  margin: 0 auto;
  font-size: 1.3rem;
  color: #5a5858;
  padding: 2px 4px 2px 8px;
}
.Title--top {
  display: inline-block;
  position: relative;
  width: 100%;
  margin-bottom: 32px;
  text-align: center;
  font-weight: 600;
  font-size: clamp(2.4rem, 10 * (1vw + 1vh) / 2, 3.2rem);
  line-height: 1.4em;
}
.Title--top::after {
  display: inline-block;
  position: absolute;
  bottom: -12px;
  left: 50%;
  width: 60px;
  height: 4px;
  background-color: #005bac;
  content: "";
  transform: translateX(-50%);
}
.Title--topSub {
  position: relative;
  max-width: 773px;
  margin: 0 auto 24px auto;
  padding: 0 24px;
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .Title--topSub {
    font-size: 1.6rem;
    margin: 0 auto 12px auto;
  }
}
.Title--topSub::before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  background: #ccc;
  content: "";
}
.Title--topSub span {
  position: relative;
  padding: 0 1em;
  background: #fff;
  font-weight: 600;
}
.Title--search {
  padding: 16px;
  background: #f6f6f6;
  font-weight: 600;
  font-size: 2.4rem;
  margin-bottom: 32px;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .Title--search {
    padding: 8px 6%;
    font-size: 1.6rem;
  }
}
.Title--side {
  position: relative;
  padding: 0 8px;
  color: #5a5858;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.4em;
}
.Title--side::before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  background: #ccc;
  content: "";
}
.Title--side span {
  position: relative;
  padding: 0 1em;
  background: #fff;
  font-weight: 600;
}
.Title--headline {
  padding: 16px 88px 16px 16px;
  border-radius: 8px;
  background-color: #005bac;
  background-size: 72px;
  color: #fff;
  font-weight: 600;
  font-size: 4rem;
  line-height: 1em;
  position: relative;
  overflow: hidden;
}
.Title--headlineImg {
  position: absolute;
  right: 12px;
  margin: auto;
  top: 0;
  bottom: 0;
  width: 72px;
  height: 48px;
  opacity: 0.5;
}
@media screen and (max-width: 420px) {
  .Title--headlineImg {
    display: none;
  }
}
.Title--headline span {
  z-index: 10;
}
@media screen and (max-width: 540px) {
  .Title--headline {
    padding: 16px 100px 16px 16px;
    font-size: 3.2rem;
  }
}
.Title--title {
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .Title--title {
    padding: 0 6%;
    font-size: 2.4rem;
  }
}
.Title--subTitle {
  padding: 4px;
  border-bottom: 3px solid #005bac;
  font-weight: 600;
  font-size: 2.8rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .Title--subTitle {
    padding: 4px 6%;
    font-size: 2rem;
  }
}
.Title--caption {
  padding: 4px;
  border-left: 8px solid #005bac;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .Title--caption {
    padding: 0 6%;
    font-size: 1.6rem;
  }
}
.Title--normal {
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .Title--normal {
    font-size: 1.4rem;
  }
}

.Btn__login {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #eaeaea;
  color: #333;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
  min-height: 40px;
  max-width: 240px;
}
.Btn__login a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__login:hover {
  color: #333;
  opacity: 0.8;
}
.Btn__login:active {
  color: #333;
  opacity: 0.8;
}
.Btn__login::after {
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 0;
  width: 6px;
  height: 6px;
  margin: auto;
  border: 0;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  content: "";
  transform: rotate(45deg);
}

.Btn__signUp {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  padding: 0 8px;
  column-gap: 8px;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #005bac;
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
}
.Btn__signUp a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__signUp:hover {
  color: #fff;
  opacity: 0.8;
}
.Btn__signUp:active {
  color: #fff;
  opacity: 0.8;
}
.Btn__signUp::before {
  content: "";
}
.Btn__signUp::after {
  content: "";
}

.Btn__primary {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #005bac;
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
  max-width: 400px;
  height: 72px;
  font-size: 2rem;
}
.Btn__primary a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__primary:hover {
  color: #fff;
  opacity: 0.8;
}
.Btn__primary:active {
  color: #fff;
  opacity: 0.8;
}
.Btn__primary::after {
  position: absolute;
  top: 0;
  right: 24px;
  bottom: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  content: "";
  transform: rotate(45deg);
}

.Btn__main {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #333;
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
  height: 64px;
  min-width: 280px;
  max-width: 334px;
  font-size: 1.8rem;
}
.Btn__main a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__main:hover {
  color: #fff;
  opacity: 0.8;
}
.Btn__main:active {
  color: #fff;
  opacity: 0.8;
}
.Btn__main::after {
  position: absolute;
  top: 0;
  right: 24px;
  bottom: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  content: "";
  transform: rotate(45deg);
}

.Btn__settings {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #005bac;
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
  width: 180px;
  height: 48px;
}
.Btn__settings a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__settings:hover {
  color: #fff;
  opacity: 0.8;
}
.Btn__settings:active {
  color: #fff;
  opacity: 0.8;
}

.Btn__secondary {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #fff;
  color: #005bac;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
  text-align: center;
  width: 180px;
  height: 48px;
  border: 1px solid #005bac;
}
.Btn__secondary a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__secondary:hover {
  color: #005bac;
  opacity: 0.8;
}
.Btn__secondary:active {
  color: #005bac;
  opacity: 0.8;
}

.Btn__back {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #eaeaea;
  color: #333;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
  width: 180px;
  height: 48px;
}
.Btn__back a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__back:hover {
  color: #333;
  opacity: 0.8;
}
.Btn__back:active {
  color: #333;
  opacity: 0.8;
}

.Btn__magazine {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 50px;
  background: #005bac;
  color: #fff;
  text-decoration: none;
  font-size: 1.5rem;
  cursor: pointer;
  border-radius: 4px;
  display: inline-flex;
  width: auto;
  height: auto;
  padding: 12px 20px;
  min-width: 280px;
  font-size: 1.6rem;
  line-height: 1.6em;
}
.Btn__magazine a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50px;
  padding: 0 12px;
  width: 100%;
  height: 100%;
}
.Btn__magazine:hover {
  color: #fff;
  opacity: 0.8;
}
.Btn__magazine:active {
  color: #fff;
  opacity: 0.8;
}

.Link__magazine {
  color: #005bac;
  text-decoration: underline;
  font-weight: 600;
}
.Link__magazine:hover {
  color: #005bac;
  opacity: 0.8;
}
.Link__magazine:active {
  color: #005bac;
  opacity: 0.6;
}

.Form__inputText {
  width: 100%;
  max-width: 500px;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 1.6rem;
  appearance: none;
}
.Form__inputText--short {
  width: 120px;
}
.Form__inputText--mail {
  width: 288px;
}
.Form__inputText.error {
  border-color: #ab1811;
  background: #fdf9f9;
}
.Form__inputText.ok {
  border-color: #30ab09;
}
.Form__checkBox {
  display: inline-block;
  overflow: hidden;
  position: relative;
  margin-top: 8px 20px 8px 32px;
  font-size: 1.6rem;
  cursor: pointer;
  appearance: none;
}
.Form__checkBox::before {
  z-index: 3;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  content: "";
}
.Form__checkBox.error::before {
  border: 1px solid #ab1811;
  background: #fdf9f9;
}
.Form__checkBox::after {
  z-index: 1;
  display: block;
  position: absolute;
  top: 10px;
  left: 6px;
  width: 8px;
  height: 12px;
  margin-top: -8px;
  border-right: 3px solid #005bac;
  border-bottom: 3px solid #005bac;
  content: "";
  transform: rotate(45deg);
}
.Form__checkBox input[type=checkbox] {
  z-index: 2;
  display: block;
  position: absolute;
  left: -40px;
  width: 20px;
  height: 20px;
  margin: 0;
  padding: 0;
  outline: none;
  box-shadow: 41px 0 #fff;
  appearance: none;
}
.Form__checkBox input[type=checkbox]:checked {
  box-shadow: none;
}
.Form__selectBox {
  display: flex;
}
.Form__label {
  position: relative;
  width: 100%;
  height: 42px;
  max-width: 180px;
  border: 1px solid #ccc;
  border-radius: 4px;
  appearance: none;
}
.Form__label::after {
  z-index: 1;
  position: absolute;
  top: 20px;
  right: 4px;
  border: 6px solid transparent;
  border-top: 6px solid #ccc;
  content: "";
  pointer-events: none;
}
.Form__label.error {
  border: 1px solid #ab1811;
}
.Form__label.error .Form__select {
  background-color: #fdf9f9;
}
.Form__select {
  width: 100%;
  height: 100%;
  padding: 0 32px 0 8px;
  border: 0;
  border-radius: 4px;
  background-color: #fff;
  font-size: 1.6rem;
  appearance: none;
}
.Form__radio {
  height: 22px;
  margin-right: 24px;
  vertical-align: middle;
  line-height: 22px;
}
.Form__radio label {
  display: inline-block;
  overflow: hidden;
  position: relative;
  padding-left: 20px;
  color: #5a5858;
  text-align: left;
  font-size: 1.6rem;
  cursor: pointer;
}
.Form__radio label::before {
  z-index: 3;
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #eaeaea;
  border-radius: 50%;
  content: "";
}
.Form__radio label::after {
  z-index: 1;
  position: absolute;
  top: 5px;
  left: 3px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #005bac;
  content: "";
}
.Form__radio input[type=radio] {
  z-index: 2;
  position: absolute;
  top: 1px;
  left: -50px;
  width: 24px;
  height: 24px;
  margin: 0;
  padding: 0;
  box-shadow: 45px -1px #fff;
  vertical-align: middle;
  line-height: 24px;
  -moz-appearance: none;
  -webkit-appearance: none;
}
.Form__radio input[type=radio]:checked {
  box-shadow: none;
}
.Form__radio.error label::before {
  border: 1px solid #ab1811;
  background-color: #fdf9f9;
}
.Form__textArea {
  display: block;
  position: relative;
  width: 100%;
  padding: 8px;
  outline: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  font-size: 1.6rem;
  -webkit-appearance: none;
}
.Form__textArea.error {
  border-color: #ab1811;
  background-color: #fdf9f9;
}
.Form__textArea.ok {
  border-color: #30ab09;
}
.Form__required {
  height: 20px;
  padding: 0 4px;
  border-radius: 4px;
  background: #ab1811;
  color: #fff;
  font-size: 1.6rem;
  line-height: 20px;
}

.c-DrawerHamburger {
  position: relative;
  width: 64px;
  height: 64px;
  padding: 0 32px 0 16px;
  outline: none;
  border: none;
  background-color: inherit;
  color: #333;
  text-align: left;
  font-size: 1.5rem;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.c-DrawerHamburger span {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 24px;
  height: 2px;
  margin: auto;
  background-color: #5a5858;
  transform: rotate(0deg);
  pointer-events: none;
}
.c-DrawerHamburger span::before {
  position: absolute;
  top: -16px;
  right: 0;
  bottom: 0;
  left: 0;
  width: 24px;
  height: 2px;
  margin: auto;
  background-color: #5a5858;
  content: "";
  transition: all 0.1s ease-in-out;
  transform: rotate(0deg);
}
.c-DrawerHamburger span::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: -16px;
  left: 0;
  width: 24px;
  height: 2px;
  margin: auto;
  background-color: #5a5858;
  content: "";
  transition: all 0.1s ease-in-out;
  transform: rotate(0deg);
}

.c-DrawerHamburger:active {
  background-color: rgba(0, 0, 0, 0.5);
}

.j-DrawerActiveBody .c-DrawerHamburger {
  background-color: #f6f6f6;
}
.j-DrawerActiveBody .c-DrawerHamburger span {
  background-color: initial;
}
.j-DrawerActiveBody .c-DrawerHamburger span::after {
  bottom: 0;
  transform: rotate(45deg);
}
.j-DrawerActiveBody .c-DrawerHamburger span::before {
  top: 0;
  transform: rotate(-45deg);
}

.c-DrawerOverlay {
  z-index: 100000001;
  overflow: hidden;
  position: fixed;
  right: 0;
  left: 0;
  height: 0;
}

.c-DrawerOverlay:active {
  height: 100%;
}

.j-DrawerActive .c-DrawerOverlay {
  height: 100%;
}

.c-Drawer {
  overflow-y: scroll;
  height: 100%;
  padding: 24px 6% 56px 6%;
  background-color: #f6f6f6;
  transform: translateY(calc(100% - 64px));
}

.j-DrawerActive .c-Drawer {
  overflow-y: scroll;
  padding: 24px 6% 56px 6%;
  transform: translateY(0%);
}

.c-DrawerNav__item {
  border-bottom: 1px solid #5a5858;
}
.c-DrawerNav__item > span {
  display: block;
  padding: 12px 0;
}
.c-DrawerNav__item > a {
  display: block;
  padding: 12px 0;
}

.c-DrawerNavSub {
  margin: 0 0 24px 0;
}
.c-DrawerNavSub__item {
  margin: 8px 0;
}
.c-DrawerNavSub__item a {
  display: block;
  position: relative;
  padding: 8px 32px 8px 16px;
  border-radius: 8px;
  background-color: #fff;
  font-size: 1.5rem;
}
.c-DrawerNavSub__item a::after {
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 0;
  width: 6px;
  height: 6px;
  margin: auto;
  border: 0;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  content: "";
  transform: rotate(45deg);
}
.c-DrawerNavSub__item a span {
  display: block;
  margin-top: 4px;
  color: #5a5858;
  font-size: 1.4rem;
}
.c-DrawerNavSub__item a:hover {
  background-color: #eaeaea;
}
.c-DrawerNavSub__item--logout a {
  display: block;
  padding: 8px 16px;
  border-radius: 8px;
  color: #5a5858;
  font-size: 1.5rem;
}
.c-DrawerNavSub__item--logout a:hover {
  background-color: #eaeaea;
}

.c-DrawerSearch {
  margin: 32px 0;
}

.c-DrawerSite {
  margin: 32px auto 24px auto;
  text-align: center;
  display: flex;
  align-items: center;
  flex-direction: column;
  font-size: 1.3rem;
  color: #5a5858;
}
.c-DrawerSite a {
  width: 120px;
  display: block;
  margin-top: 8px;
}
.c-DrawerSite img {
  width: 120px;
}

.j-DrawerActiveBody {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

.c-DrawerShare {
  display: flex;
  justify-content: center;
  margin: -4px auto -4px 0;
}
.c-DrawerShare li {
  margin: 12px;
  padding: 0;
}
.c-DrawerShare img {
  width: 32px;
}
.c-DrawerShare img:hover {
  opacity: 0.7;
}

.c-Header {
  z-index: 10;
  position: sticky;
  top: 29px;
  background: #fff;
  border-bottom: 1px solid #eaeaea;
}
@media screen and (max-width: 768px) {
  .c-Header {
    top: 0;
  }
}
.c-Header__inner {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  min-height: 56px;
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .c-Header__inner {
    padding: 0 0 0 6%;
  }
}
.c-Header__logo {
  margin: 0 32px 0 0;
}
.c-Header__logo a {
  display: flex;
  flex-wrap: wrap-reverse;
}
.c-Header__logo--magazine {
  margin: 4px 8px 4px 0;
}
.c-Header__logo--magazine img {
  width: 184px;
}
@media screen and (max-width: 592px) {
  .c-Header__logo--magazine img {
    width: 164px;
  }
}
.c-Header__signUp--pc {
  margin-left: auto;
  margin-right: 32px;
}
.c-Header__signUp--pc .Btn__signUp {
  width: 144px;
  height: 40px;
  font-size: 1.4rem;
}
.c-Header__signUp--sp {
  display: none;
  margin-left: auto;
  margin-right: 8px;
}
.c-Header__signUp--sp .Btn__signUp {
  width: 86px;
  height: 32px;
  font-size: 1.2rem;
}
.c-Header__search {
  width: 360px;
  margin-left: auto;
}
.c-Header__site {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.c-Header__site span {
  font-size: 13px;
  color: #5a5858;
  padding-right: 8px;
}
.c-Header__site img {
  width: 96px;
}

.c-HeaderDrawer {
  display: none;
}

.j-DrawerActiveBody .c-Header {
  top: 0;
}

@media screen and (max-width: 1024px) {
  .c-Header__nav,
  .c-Header__site,
  .c-Header__search,
  .c-Header__signUp--pc {
    display: none;
  }
  .c-Header__signUp--sp {
    display: block;
  }
  .c-HeaderDrawer {
    display: block;
  }
}
.c-Nav--header {
  z-index: 10;
  position: sticky;
  top: 86px;
  width: 100%;
  border-bottom: 1px solid #eaeaea;
  background: #f6f6f6;
}
.c-Nav__inner {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .c-Nav__inner {
    padding: 0 6%;
  }
}
.c-Nav__share .c-Share li {
  height: 28px;
  width: 28px;
  margin: 0 8px;
}
.c-Nav__drawer {
  display: none;
}

.c-NavList {
  display: flex;
  width: 100%;
  height: clamp(40px, 1vw, 56px);
  max-width: 1000px;
  margin: 0 auto;
  font-size: 1.5rem;
}
.c-NavList__item {
  margin: 0 16px 0 0;
  font-weight: 600;
  position: relative;
}
.c-NavList__item::after {
  position: absolute;
  bottom: 8px;
  left: 0;
  width: 100%;
  height: 3px;
  background: #005bac;
  content: "";
  transition: transform 0.3s;
  transform: scale(0, 1);
  transform-origin: center top;
}
.c-NavList__item:hover .c-NavListSub {
  display: block;
}
.c-NavList__item:hover::after {
  transform: scale(1, 1);
}
.c-NavList__item a {
  padding: 8px 4px 4px 4px;
  display: block;
  height: 100%;
  width: 100%;
}
.c-NavList .active {
  font-weight: 600;
}

.c-NavListSub {
  position: absolute;
  display: none;
  left: 0;
  top: 38px;
  background-color: #fff;
  border: 1px solid #eaeaea;
  font-size: 1.6rem;
}
.c-NavListSub::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 8px;
  width: 0;
  height: 0;
  border-bottom: 10px solid #eaeaea;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  z-index: 1;
}
.c-NavListSub::after {
  content: "";
  position: absolute;
  top: -9px;
  left: 9px;
  width: 0;
  height: 0;
  border-bottom: 9px solid #fff;
  border-right: 9px solid transparent;
  border-left: 9px solid transparent;
  z-index: 2;
}
.c-NavListSub__item {
  width: 100%;
  min-width: 240px;
}
.c-NavListSub__item a {
  padding: 12px;
  font-weight: normal;
}
.c-NavListSub__item a:hover {
  font-weight: 600;
  background-color: #eaeaea;
}

.c-NavListSub__item:not(:first-child) {
  border-top: solid 1px #eaeaea;
}

@media screen and (max-width: 1024px) {
  .c-Nav--drawer {
    display: block;
  }
  .c-Nav--header {
    display: none;
  }
  .c-Nav__drawer {
    display: block;
  }
}
.c-FooterPageTop {
  z-index: 100000;
  position: fixed;
  right: 24px;
  bottom: 100px;
  width: 48px;
  height: 48px;
  background: #eaeaea;
  cursor: pointer;
}
.c-FooterPageTop::before {
  position: absolute;
  top: 40%;
  right: 0;
  left: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  border: 0;
  border-top: solid 2px #ccc;
  border-right: solid 2px #ccc;
  content: "";
  transform: rotate(-45deg);
}
.c-FooterPageTop::after {
  position: absolute;
  top: 54%;
  right: 0;
  left: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  border: 0;
  border-top: solid 2px #ccc;
  border-right: solid 2px #ccc;
  content: "";
  transform: rotate(-45deg);
}

.c-Footer {
  width: 100%;
  padding: 0 20px;
  border-bottom: 1px solid #eaeaea;
  background: #f6f6f6;
}
@media screen and (max-width: 960px) {
  .c-Footer ul:not(:first-child) {
    margin-top: 8px;
  }
}
.c-Footer__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
  padding: 20px 0;
}
.c-Footer__seal {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-left: auto;
}
@media screen and (max-width: 1080px) {
  .c-Footer__seal {
    margin-top: 40px;
    margin-right: auto;
    margin-bottom: 16px;
  }
}
.c-Footer__seal div {
  width: 100px;
  height: 50px;
  margin: 8px;
}
.c-Footer__textBox {
  color: #5a5858;
  text-align: center;
  font-size: 1.3rem;
}

.c-FooterList {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
}
.c-FooterList li {
  padding: 0 8px;
}
.c-FooterList a {
  color: #5a5858;
  text-decoration: none;
  display: block;
  padding: 4px 0;
}
.c-FooterList a:hover {
  color: #5a5858;
  opacity: 0.6;
}
.c-FooterList a:active {
  color: #5a5858;
  opacity: 0.5;
}
.c-FooterList span {
  padding-left: 4px;
}

.c-FooterShare {
  display: flex;
  justify-content: center;
  margin: 4px 0 -4px 0;
}
.c-FooterShare li {
  margin: 12px;
  padding: 0;
}
.c-FooterShare a:hover {
  opacity: 0.7;
}
.c-FooterShare img {
  width: 32px;
}
.c-FooterShare__x {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #000;
}
.c-FooterShare__x a {
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.c-FooterShare__x a:hover {
  opacity: 0.7;
}
.c-FooterShare__x img {
  width: 16px;
}

.k-BankText {
  margin: 0 auto;
  padding: 20px;
  border-bottom: 1px solid #eaeaea;
  text-align: center;
  font-size: 1.3rem;
}

.c-FooterText {
  margin: 0 auto;
  padding: 20px;
  border-bottom: 2px solid #eaeaea;
  text-align: center;
  font-size: 1.3rem;
}

.c-Footer__siteseal {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 24px 0;
  background-color: #fff;
}

.c-Footer__siteseal > div {
  width: 100px;
  height: 50px;
  margin: 5px;
}

.c-Footer__corp {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  max-width: 1040px;
  margin: 0 auto;
  padding: 19px 10px;
}

@media (max-width: 768px) {
  .c-Footer__corp {
    justify-content: center;
  }
}
.c-Footer__corpLogo {
  width: auto;
  height: 18px;
}

.c-Footer__corpLogo:hover {
  opacity: 0.7;
}

.c-Footer__corp ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  margin-left: 20px;
}

@media (max-width: 768px) {
  .c-Footer__corp ul {
    justify-content: center;
    width: 100%;
    margin-top: 20px;
    margin-left: 0;
  }
}
.c-Footer__corp li {
  line-height: 0;
}

.c-Footer__corp li + li {
  margin-left: 10px;
}

.c-Footer__corp li a {
  display: inline-block;
  position: relative;
  line-height: 0;
  opacity: 1;
}

.c-Footer__corp li a img {
  width: auto;
  height: 20px;
}

.c-Footer__corp li a::after {
  z-index: 1;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 22px;
  height: 22px;
  background-color: rgba(255, 255, 255, 0.3);
  content: "";
  transform: translate(-50%, -50%);
}

.c-Footer__corp a:hover::after {
  background-color: rgba(255, 255, 255, 0.6);
}

.gmoGroupFooter_inner {
  margin-right: auto;
  margin-left: auto;
}

.c-CardList {
  list-style: none;
  position: relative;
}
.c-CardList a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  transition: all 300ms 0s ease;
}
.c-CardList a:hover {
  box-shadow: 0 8px 8px rgba(0, 0, 0, 0.1);
  transition: all 300ms 0s ease;
  transform: translateY(-2px);
}
.c-CardList a::before {
  z-index: 10;
  display: block;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  content: "";
  opacity: 0;
  transition: all 300ms 0s ease;
}
.c-CardList a:hover::before {
  visibility: visible;
  opacity: 0.3;
}

.c-Card {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  border: 1px solid #eaeaea;
  border-radius: 2px;
  background: #fff;
}
.c-Card figure {
  margin: 0;
}
.c-Card__img {
  overflow: hidden;
  position: relative;
  border-radius: 2px 2px 0 0;
  margin: 0;
}
.c-Card__img::before {
  display: block;
  padding-top: 52.5%;
  content: "";
}
.c-Card__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-Card__category {
  margin-bottom: 4px;
  color: #3f3d56;
  font-weight: 600;
  font-size: 1.8rem;
  display: flex;
}
.c-Card__category img {
  display: inline-block;
  margin-right: 8px;
  filter: invert(21%) sepia(37%) saturate(493%) hue-rotate(206deg) brightness(88%) contrast(85%);
}
.c-Card__title {
  font-weight: 600;
  font-size: 1.8rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.c-Card__text {
  display: -webkit-box;
  overflow: hidden;
  color: #5a5858;
  font-size: 1.8rem;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.c-Card__date {
  margin-top: auto;
  color: #5a5858;
  text-align: right;
  font-size: 1.4rem;
}
.c-Card .postDate {
  font-size: 1.4rem;
}
.c-Card .upDate {
  font-size: 1.4rem;
}
.c-Card .upDate::before {
  display: inline-block;
  content: "\f2f9";
  font-family: FontAwesome;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 900;
  padding-right: 4px;
}

.c-CardListColumn {
  display: flex;
  flex-wrap: wrap;
}
.c-CardListColumn .c-CardList {
  width: 49%;
  margin-bottom: 20px;
}
.c-CardListColumn .c-CardList:not(:nth-child(2n)) {
  margin-right: 2%;
}
@media only screen and (max-width: 870px) {
  .c-CardListColumn .c-CardList {
    width: 100%;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(2n)) {
    margin-right: 0;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  .c-CardListColumn .c-CardList {
    width: 32%;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(2n)) {
    margin-right: 0;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(3n)) {
    margin-right: 2%;
  }
}
@media only screen and (max-width: 700px) {
  .c-CardListColumn .c-CardList {
    width: 49%;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(2n)) {
    margin-right: 2%;
  }
}
@media only screen and (max-width: 414px) {
  .c-CardListColumn .c-CardList {
    width: 100%;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(2n)) {
    margin-right: 0;
  }
  .c-CardListColumn .c-CardList:not(:nth-child(3n)) {
    margin-right: 0;
  }
}
.c-CardListColumn .c-CardList .c-Card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumn .c-CardList .c-Card__img {
  width: 100%;
}
.c-CardListColumn .c-CardList .c-Card__inner {
  display: flex;
  flex: 1 0 0%;
  flex-direction: column;
  height: 100%;
  margin: 16px;
}
.c-CardListColumn .c-CardList .c-Card__inner dl {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumn .c-CardList .c-Card__inner dd {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumn .c-CardList .c-Card__title {
  font-size: 1.8rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.c-CardListColumn .c-CardList .c-Card__text {
  margin-top: 8px;
}
.c-CardListColumn .c-CardList .c-Card__date {
  margin-top: auto;
  padding-top: 16px;
}

.c-CardListColumnParts {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -20px;
}
.c-CardListColumnParts .c-CardList {
  margin-bottom: 20px;
  width: 32%;
}
.c-CardListColumnParts .c-CardList:not(:nth-child(3n)) {
  margin-right: 2%;
}
.c-CardListColumnParts .c-CardList:last-child {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .c-CardListColumnParts .c-CardList {
    width: 48%;
  }
  .c-CardListColumnParts .c-CardList:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .c-CardListColumnParts .c-CardList:not(:nth-child(2n)) {
    margin-right: 2%;
  }
  .c-CardListColumnParts .c-CardList:last-child {
    display: block;
  }
}
@media only screen and (max-width: 640px) {
  .c-CardListColumnParts .c-CardList {
    width: 100%;
  }
  .c-CardListColumnParts .c-CardList:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .c-CardListColumnParts .c-CardList:not(:nth-child(2n)) {
    margin-right: 0%;
  }
  .c-CardListColumnParts .c-CardList:last-child {
    display: none;
  }
}
.c-CardListColumnParts .c-CardList .c-Card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumnParts .c-CardList .c-Card__img {
  width: 100%;
}
.c-CardListColumnParts .c-CardList .c-Card__inner {
  display: flex;
  flex: 1 0 0%;
  flex-direction: column;
  height: 100%;
  margin: 16px;
}
.c-CardListColumnParts .c-CardList .c-Card__inner dl {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumnParts .c-CardList .c-Card__inner dd {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumnParts .c-CardList .c-Card__title {
  font-size: 1.8rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.c-CardListColumnParts .c-CardList .c-Card__text {
  margin-top: 8px;
}
.c-CardListColumnParts .c-CardList .c-Card__date {
  margin-top: auto;
  padding-top: 16px;
}

.c-CardListColumnPartsSide {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -20px;
}
.c-CardListColumnPartsSide .c-CardList {
  margin-bottom: 20px;
  width: 32%;
}
.c-CardListColumnPartsSide .c-CardList:not(:nth-child(3n)) {
  margin-right: 2%;
}
.c-CardListColumnPartsSide .c-CardList:last-child {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .c-CardListColumnPartsSide .c-CardList {
    width: 48%;
  }
  .c-CardListColumnPartsSide .c-CardList:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .c-CardListColumnPartsSide .c-CardList:not(:nth-child(2n)) {
    margin-right: 2%;
  }
  .c-CardListColumnPartsSide .c-CardList:last-child {
    display: block;
  }
}
@media only screen and (max-width: 640px) {
  .c-CardListColumnPartsSide .c-CardList {
    width: 100%;
  }
  .c-CardListColumnPartsSide .c-CardList:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .c-CardListColumnPartsSide .c-CardList:not(:nth-child(2n)) {
    margin-right: 0%;
  }
  .c-CardListColumnPartsSide .c-CardList:last-child {
    display: none;
  }
}
.c-CardListColumnPartsSide .c-CardList .c-Card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumnPartsSide .c-CardList .c-Card__img {
  width: 100%;
}
.c-CardListColumnPartsSide .c-CardList .c-Card__inner {
  display: flex;
  flex: 1 0 0%;
  flex-direction: column;
  height: 100%;
  margin: 16px;
}
.c-CardListColumnPartsSide .c-CardList .c-Card__inner dl {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumnPartsSide .c-CardList .c-Card__inner dd {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListColumnPartsSide .c-CardList .c-Card__title {
  font-size: 1.8rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.c-CardListColumnPartsSide .c-CardList .c-Card__text {
  margin-top: 8px;
}
.c-CardListColumnPartsSide .c-CardList .c-Card__date {
  margin-top: auto;
  padding-top: 16px;
}

.c-CardListRanking {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -20px;
}
@media only screen and (max-width: 768px) {
  .c-CardListRanking {
    flex-wrap: wrap;
    margin: clamp(-4px, 5vw, -12px) 0;
  }
}
.c-CardListRanking .c-CardList {
  margin-bottom: 20px;
  width: 32%;
}
.c-CardListRanking .c-CardList:nth-child(1):before {
  content: "1";
  display: block;
  position: absolute;
  background: #be9a3a;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(1):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #be9a3a;
  border-right: 16px solid #be9a3a;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(2):before {
  content: "2";
  display: block;
  position: absolute;
  background: #5a5858;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(2):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #5a5858;
  border-right: 16px solid #5a5858;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(3):before {
  content: "3";
  display: block;
  position: absolute;
  background: #a9a9a9;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(3):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #a9a9a9;
  border-right: 16px solid #a9a9a9;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(4):before {
  content: "4";
  display: block;
  position: absolute;
  background: #a9a9a9;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(4):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #a9a9a9;
  border-right: 16px solid #a9a9a9;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(5):before {
  content: "5";
  display: block;
  position: absolute;
  background: #a9a9a9;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(5):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid hsl(0, 0%, 66%);
  border-right: 16px solid #a9a9a9;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRanking .c-CardList:nth-child(1) {
  width: 48.4%;
  margin-right: 3.2%;
}
.c-CardListRanking .c-CardList:nth-child(1):before {
  width: 42px;
  height: 42px;
  padding-top: 12px;
}
.c-CardListRanking .c-CardList:nth-child(1):after {
  border-left: 21px solid #be9a3a;
  border-right: 21px solid #be9a3a;
  border-bottom: 10px solid transparent;
  top: 40px;
}
.c-CardListRanking .c-CardList:nth-child(2) {
  width: 48.4%;
}
.c-CardListRanking .c-CardList:nth-child(2):before {
  width: 42px;
  height: 42px;
  padding-top: 12px;
}
.c-CardListRanking .c-CardList:nth-child(2):after {
  border-left: 21px solid #5a5858;
  border-right: 21px solid #5a5858;
  border-bottom: 10px solid transparent;
  top: 40px;
}
.c-CardListRanking .c-CardList:nth-child(3) {
  width: 31%;
  margin-right: 3.5%;
}
.c-CardListRanking .c-CardList:nth-child(4) {
  width: 31%;
  margin-right: 3.5%;
}
.c-CardListRanking .c-CardList:nth-child(5) {
  width: 31%;
}
@media only screen and (max-width: 768px) {
  .c-CardListRanking .c-CardList {
    width: 100%;
    min-width: inherit;
    max-width: inherit;
  }
  .c-CardListRanking .c-CardList:nth-child(1), .c-CardListRanking .c-CardList:nth-child(2), .c-CardListRanking .c-CardList:nth-child(3), .c-CardListRanking .c-CardList:nth-child(4), .c-CardListRanking .c-CardList:nth-child(5) {
    width: 100%;
    margin-right: 0;
  }
}
.c-CardListRanking .c-CardList .c-Card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListRanking .c-CardList .c-Card__img {
  width: 100%;
}
.c-CardListRanking .c-CardList .c-Card__inner {
  display: flex;
  flex: 1 0 0%;
  flex-direction: column;
  height: 100%;
  margin: 16px;
}
.c-CardListRanking .c-CardList .c-Card__inner dl {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListRanking .c-CardList .c-Card__inner dd {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-CardListRanking .c-CardList .c-Card__title {
  font-size: 1.8rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.c-CardListRanking .c-CardList .c-Card__text {
  margin-top: 8px;
}
.c-CardListRanking .c-CardList .c-Card__date {
  margin-top: auto;
  padding-top: 16px;
}

.c-CardListRow {
  margin: clamp(-4px, 5vw, -12px) 0;
}
@media only screen and (max-width: 768px) {
  .c-CardListRow {
    margin: 0;
  }
  .c-CardListRow .c-CardList {
    width: 100%;
    height: 100%;
    min-width: inherit;
    max-width: inherit;
  }
  .c-CardListRow .c-Card {
    display: block;
  }
  .c-CardListRow .c-Card__img {
    width: 100%;
    border-radius: 2px 2px 0 0;
  }
}
.c-CardListRow .c-CardList {
  width: 100%;
  height: 52.5%;
  min-width: 320px;
  max-width: 773px;
  margin: 0 auto;
}
.c-CardListRow .c-CardList:not(:first-child) {
  margin-top: 20px;
}
.c-CardListRow .c-Card {
  display: flex;
  max-width: 773px;
  margin: 0 auto;
}
.c-CardListRow .c-Card__img {
  overflow: hidden;
  position: relative;
  width: 60%;
  min-width: 96px;
  border-radius: 2px 0 0 2px;
}
.c-CardListRow .c-Card__img::before {
  display: block;
  padding-top: 52.5%;
  content: "";
}
.c-CardListRow .c-Card__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-CardListRow .c-Card__inner {
  display: flex;
  flex: 1 0 0%;
  flex-direction: column;
  padding: 16px;
}
.c-CardListRow .c-Card__title {
  font-size: 1.8rem;
  -webkit-line-clamp: 5;
}
.c-CardListRow .c-Card__text {
  margin-top: 12px;
}
.c-CardListRow .c-Card__date {
  margin-top: auto;
  padding-top: 16px;
}
@media only screen and (max-width: 540px) {
  .c-CardListRow .c-Card {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .c-CardListRow .c-Card__img {
    width: 100%;
  }
  .c-CardListRow .c-Card__inner {
    display: flex;
    flex: 1 0 0%;
    flex-direction: column;
    height: 100%;
    margin: 0px;
  }
  .c-CardListRow .c-Card__inner dl {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .c-CardListRow .c-Card__inner dd {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .c-CardListRow .c-Card__title {
    font-size: 1.8rem;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .c-CardListRow .c-Card__text {
    margin-top: 8px;
  }
  .c-CardListRow .c-Card__date {
    margin-top: auto;
    padding-top: 16px;
  }
}

@media only screen and (max-width: 520px) {
  .c-CardListRow--side {
    margin: clamp(-4px, 5vw, -12px) 0;
  }
  .c-CardListRow--side .c-CardList__category,
  .c-CardListRow--side .c-CardList__title {
    display: none;
  }
}
.c-CardListRow--side .c-CardList {
  width: 100%;
  height: 52.5%;
  max-width: 773px;
  margin: 0 auto;
}
.c-CardListRow--side .c-CardList a {
  box-shadow: none;
  transition: initial;
}
.c-CardListRow--side .c-CardList a:hover {
  transform: initial;
}
.c-CardListRow--side .c-CardList:not(:first-child) {
  margin-top: 20px;
}
.c-CardListRow--side .c-CardList:not(:last-child) {
  padding-bottom: 20px;
  border-bottom: 1px dashed #eaeaea;
}
.c-CardListRow--side .c-Card {
  display: flex;
  max-width: 773px;
  border: none;
}
.c-CardListRow--side .c-Card__img {
  overflow: hidden;
  position: relative;
  width: 96px;
  height: 52.5%;
  border-radius: 2px;
}
@media only screen and (max-width: 768px) {
  .c-CardListRow--side .c-Card__img {
    width: 120px;
  }
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--side .c-Card__img {
    width: 96px;
  }
}
.c-CardListRow--side .c-Card__img::before {
  display: block;
  padding-top: 52.5%;
  content: "";
}
.c-CardListRow--side .c-Card__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-CardListRow--side .c-Card__inner {
  padding: 0 0 0 8px;
  min-width: 0;
  overflow: hidden;
  flex: 1 0 0%;
  margin-top: 0;
  line-height: 1.4em;
}
@media only screen and (max-width: 768px) {
  .c-CardListRow--side .c-Card__inner {
    padding: 0 0 0 16px;
    margin-top: 0;
  }
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--side .c-Card__inner {
    padding: 0 0 0 8px;
    margin-top: 0;
  }
}
.c-CardListRow--side .c-Card__title {
  font-size: 1.4rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: initial;
}
@media only screen and (max-width: 768px) {
  .c-CardListRow--side .c-Card__title {
    font-size: 1.8rem;
    -webkit-line-clamp: initial;
  }
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--side .c-Card__title {
    font-size: 1.4rem;
    -webkit-line-clamp: initial;
  }
}
.c-CardListRow--side .c-Card__text {
  margin-top: 12px;
}
.c-CardListRow--side .c-Card__date {
  margin-top: auto;
  padding-top: 16px;
}

@media only screen and (max-width: 520px) {
  .c-CardListRow--sideRanking {
    margin: clamp(-4px, 5vw, -12px) 0;
  }
  .c-CardListRow--sideRanking .c-CardList__category,
  .c-CardListRow--sideRanking .c-CardList__title {
    display: none;
  }
}
.c-CardListRow--sideRanking .c-CardList {
  width: 100%;
  height: 52.5%;
  max-width: 773px;
  margin: 0 auto;
  position: relative;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(1):before {
  content: "1";
  display: block;
  position: absolute;
  background: #be9a3a;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(1):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #be9a3a;
  border-right: 16px solid #be9a3a;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(2):before {
  content: "2";
  display: block;
  position: absolute;
  background: #5a5858;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(2):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #5a5858;
  border-right: 16px solid #5a5858;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(3):before {
  content: "3";
  display: block;
  position: absolute;
  background: #a9a9a9;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(3):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #a9a9a9;
  border-right: 16px solid #a9a9a9;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(4):before {
  content: "4";
  display: block;
  position: absolute;
  background: #a9a9a9;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(4):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid #a9a9a9;
  border-right: 16px solid #a9a9a9;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(5):before {
  content: "5";
  display: block;
  position: absolute;
  background: #a9a9a9;
  color: #fff;
  width: 32px;
  height: 32px;
  text-align: center;
  padding-top: 6px;
  top: -2px;
  left: 8px;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList:nth-child(5):after {
  content: " ";
  display: block;
  position: absolute;
  top: 30px;
  left: 8px;
  border-left: 16px solid hsl(0, 0%, 66%);
  border-right: 16px solid #a9a9a9;
  border-bottom: 10px solid transparent;
  z-index: 2;
}
.c-CardListRow--sideRanking .c-CardList a {
  box-shadow: none;
  transition: initial;
}
.c-CardListRow--sideRanking .c-CardList a:hover {
  transform: initial;
}
.c-CardListRow--sideRanking .c-CardList:not(:first-child) {
  margin-top: 20px;
}
.c-CardListRow--sideRanking .c-CardList:not(:last-child) {
  padding-bottom: 20px;
  border-bottom: 1px dashed #eaeaea;
}
.c-CardListRow--sideRanking .c-Card {
  display: flex;
  max-width: 773px;
  border: none;
}
.c-CardListRow--sideRanking .c-Card__img {
  overflow: hidden;
  position: relative;
  width: 108px;
  height: 52.5%;
  border-radius: 2px;
}
@media only screen and (max-width: 768px) {
  .c-CardListRow--sideRanking .c-Card__img {
    width: 120px;
  }
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--sideRanking .c-Card__img {
    width: 96px;
  }
}
.c-CardListRow--sideRanking .c-Card__img::before {
  display: block;
  padding-top: 52.5%;
  content: "";
}
.c-CardListRow--sideRanking .c-Card__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-CardListRow--sideRanking .c-Card__inner {
  padding: 0 0 0 8px;
  min-width: 0;
  overflow: hidden;
  flex: 1 0 0%;
  margin-top: 0;
  line-height: 1.4em;
}
@media only screen and (max-width: 768px) {
  .c-CardListRow--sideRanking .c-Card__inner {
    padding: 0 0 0 12px;
    margin-top: 0;
  }
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--sideRanking .c-Card__inner {
    padding: 0 0 0 8px;
    margin-top: 0;
  }
}
.c-CardListRow--sideRanking .c-Card__title {
  font-size: 1.4rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: initial;
}
@media only screen and (max-width: 768px) {
  .c-CardListRow--sideRanking .c-Card__title {
    font-size: 1.8rem;
    -webkit-line-clamp: initial;
  }
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--sideRanking .c-Card__title {
    font-size: 1.4rem;
    -webkit-line-clamp: initial;
  }
}
.c-CardListRow--sideRanking .c-Card__text {
  margin-top: 12px;
}
.c-CardListRow--sideRanking .c-Card__date {
  margin-top: auto;
  padding-top: 16px;
}

.c-CardListRow--related-post {
  margin: 0;
}
.c-CardListRow--related-post-title {
  font-size: 1.6rem;
  font-weight: 600;
  color: #005bac;
  padding: 4px 0;
}
.c-CardListRow--related-post .c-CardList {
  margin-top: 0;
}
.c-CardListRow--related-post .c-CardList a {
  box-shadow: none;
  transition: none;
}
.c-CardListRow--related-post .c-CardList a:hover {
  transform: none;
}
.c-CardListRow--related-post .c-Card {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border-radius: 4px;
  padding: 8px;
  border: 2px solid rgba(0, 91, 172, 0.1);
}
.c-CardListRow--related-post .c-Card__img {
  overflow: hidden;
  position: relative;
  width: 64px;
  height: 64px;
  border-radius: 2px;
}
.c-CardListRow--related-post .c-Card__img::before {
  display: block;
  padding-top: 100%;
  content: "";
}
.c-CardListRow--related-post .c-Card__img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-CardListRow--related-post .c-Card__inner {
  display: flex;
  flex: 1 0 0%;
  flex-direction: column;
  padding: 0 0 0 16px;
  margin-top: 0;
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--related-post .c-Card__inner {
    padding: 0 0 0 8px;
  }
}
.c-CardListRow--related-post .c-Card__title {
  font-size: 1.5rem;
  line-height: 1.5em;
  -webkit-line-clamp: initial;
  padding-right: 16px;
}
@media only screen and (max-width: 520px) {
  .c-CardListRow--related-post .c-Card__title {
    font-size: 1.4rem;
  }
}

.c-CardListRow--related-post + .c-CardListRow--related-post {
  margin-top: 4px;
}
.c-CardListRow--related-post + .c-CardListRow--related-post .c-CardListRow--related-post-title {
  display: none;
}

.c-BreadCrumb {
  max-width: 1000px;
  margin: 16px auto 0 auto;
  font-size: 1.4rem;
}
@media screen and (max-width: 1024px) {
  .c-BreadCrumb {
    padding: 0 6%;
  }
}
.c-BreadCrumb li {
  display: inline;
}
.c-BreadCrumb a {
  padding-right: 8px;
  color: #5a5858;
}
.c-BreadCrumb a::after {
  display: inline-block;
  padding-left: 8px;
  content: ">";
}

.c-CategoryWrap {
  display: flex;
  flex-wrap: wrap;
  margin: clamp(-2px, 5vw, -8px) 0;
}

.c-CategoryList {
  width: 49%;
  margin: clamp(2px, 5vw, 8px) 0;
  background: #f6f6f6;
  border-radius: 4px;
  padding: 20px;
}
.c-CategoryList:not(:nth-child(2n)) {
  margin-right: 2%;
}
@media only screen and (max-width: 480px) {
  .c-CategoryList {
    width: 100%;
  }
  .c-CategoryList:not(:nth-child(2n)) {
    margin-right: 0;
  }
}

.c-Category {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.c-Category__title {
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
}
.c-Category__img {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.c-Category__img figure {
  text-align: center;
}
.c-Category__img svg {
  width: 100px;
}
.c-Category__text {
  margin-top: 12px;
  line-height: 1.8em;
  font-size: 1.6rem;
  letter-spacing: 0;
}
.c-Category__btn {
  display: flex;
  justify-content: center;
  padding-top: 16px;
  margin-top: auto;
}

.c-Accordion__title {
  position: relative;
}

.c-Accordion__plus {
  display: block;
  position: relative;
  top: 0;
  right: 0;
  cursor: pointer;
}

.c-Accordion__plus::before {
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  width: 15px;
  height: 2px;
  margin: auto;
  border-radius: 1px;
  background: #5a5858;
  content: "";
  transition: all 0.3s ease-in-out;
  transform: rotate(90deg);
}

.c-Accordion__plus::after {
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  width: 15px;
  height: 2px;
  margin: auto;
  border-radius: 1px;
  background: #5a5858;
  content: "";
  transition: all 0.3s ease-in-out;
}

.c-Accordion__plus.open::before {
  transform: rotate(180deg);
}

.c-Accordion__plus.open::after {
  opacity: 0;
}

.c-Accordion__text {
  display: none;
}

:root {
  --swiper-theme-color: #005bac;
  --swiper-pagination-color: #005bac;
}

.c-Slider {
  position: relative;
  padding: 24px 8px 36px 8px;
  max-width: 1000px;
  overflow: hidden;
  margin: 0 auto;
}
@media screen and (max-width: 1000px) {
  .c-Slider {
    padding-top: 8px;
  }
}
.c-Slider .swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: initial;
  list-style: none;
  padding: 0;
  z-index: 1;
}
.c-Slider .swiper-wrapper {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
  margin: 0 auto;
}
.c-Slider .c-SliderInnerWrap {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
}
.c-Slider .c-SliderInnerWrap figure {
  overflow: hidden;
  position: relative;
  width: 100%;
  margin: 0;
  max-width: 480px;
  max-height: 252px;
}
.c-Slider .c-SliderInnerWrap figure:before {
  display: block;
  padding-top: 52.5%;
  content: "";
}
.c-Slider .c-SliderInnerWrap figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-Slider .c-SliderInnerWrap:before {
  position: absolute;
  display: block;
  padding-top: 52.5%;
  content: "";
}
.c-Slider .swiper-button-next {
  z-index: 1;
  position: absolute;
  background: rgba(255, 255, 255, 0.7) url(../img/arrow-right.png) center center no-repeat;
  background-size: 15px 26px;
  outline: none;
  right: 0;
}
.c-Slider .swiper-button-prev {
  z-index: 1;
  position: absolute;
  background: rgba(255, 255, 255, 0.7) url(../img/arrow-left.png) center center no-repeat;
  background-size: 15px 26px;
  outline: none;
  left: 0;
}
.c-Slider .swiper-pagination {
  z-index: 1;
}

.c-SliderInner {
  background-color: #fff;
  padding: 16px;
  flex: 1 0 0%;
  display: flex;
  align-items: center;
}
.c-SliderInner__box {
  margin-bottom: 24px;
}
@media screen and (max-width: 821px) {
  .c-SliderInner__box {
    margin-bottom: 0px;
  }
}
.c-SliderInner__category {
  font-size: 2rem;
  display: inline-flex;
  padding: 2px 8px;
  margin-bottom: 10px;
  font-weight: 600;
}
.c-SliderInner__category img {
  margin-right: 8px;
}
.c-SliderInner__title {
  font-size: 2.2rem;
  line-height: 1.4em;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  font-weight: 600;
  padding-left: 8px;
}

@media screen and (max-width: 721px) {
  .c-Slider {
    padding: 0;
  }
  .c-Slider .swiper-wrapper {
    width: 100%;
    height: 100%;
  }
  .c-Slider .swiper-slide {
    width: 100%;
    height: 100%;
  }
  .c-Slider .swiper-button-next {
    top: 24vw;
  }
  .c-Slider .swiper-button-prev {
    top: 24vw;
  }
  .c-Slider .swiper-pagination-horizontal {
    display: none;
  }
  .c-Slider .c-SliderInnerWrap {
    width: 100%;
    height: 100%;
    position: relative;
    box-shadow: none;
  }
  .c-Slider .c-SliderInnerWrap figure {
    overflow: hidden;
    position: absolute;
    width: 100%;
    max-width: 100%;
    height: auto;
    z-index: -1;
    box-shadow: none;
  }
  .c-Slider .c-SliderInnerWrap figure:before {
    display: block;
    padding-top: 52.5%;
    content: "";
  }
  .c-Slider .c-SliderInnerWrap figure img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .c-Slider .c-SliderInnerWrap:before {
    display: block;
    padding-top: 52.5%;
    content: "";
  }
  .c-SliderInner {
    margin: 32vw auto 0 auto;
    background-color: rgba(255, 255, 255, 0.9);
    border: 1px solid #5a5858;
    width: 90%;
    padding: 16px;
    flex: none;
  }
  .c-SliderInner__box {
    margin-top: 0;
  }
  .c-SliderInner__category {
    font-size: 1.6rem;
    display: inline-flex;
    padding: 2px 8px;
    margin-bottom: 10px;
    font-weight: 600;
  }
  .c-SliderInner__category img {
    margin-right: 8px;
  }
  .c-SliderInner__title {
    font-size: 2rem;
    line-height: 1.4em;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    font-weight: 600;
  }
}
.c-NewsList {
  max-width: 800px;
  margin: 24px auto;
}
.c-NewsList li {
  margin-bottom: 8px;
}
.c-NewsList li dl {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px dotted #eaeaea;
  padding: 8px 0;
}
.c-NewsList li dl dt {
  font-weight: 600;
  font-size: 1.6rem;
  min-width: 120px;
  padding-bottom: 4px;
}
.c-NewsList li dl dd {
  font-size: 1.6rem;
  padding-bottom: 4px;
}

.c-Share {
  display: flex;
  justify-content: center;
  margin: -4px 0;
}
.c-Share li {
  margin: 12px;
  padding: 0;
}
.c-Share a:hover {
  opacity: 0.7;
}
.c-Share img {
  width: 32px;
}
.c-Share__x {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #000;
}
.c-Share__x a {
  display: block;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-Share__x a:hover {
  opacity: 0.7;
}
.c-Share__x img {
  width: 16px;
}

.c-Author {
  margin: 32px 0 64px 0;
}
.c-Author__title {
  font-size: 2rem;
  font-weight: bold;
}
.c-Author__inner {
  border: 2px solid #eaeaea;
  margin: 12px 0 24px 0;
  padding: 20px;
  display: grid;
  grid-template-columns: 124px 1fr;
  gap: 20px;
}
@media (max-width: 840px) and (min-width: 768px) {
  .c-Author__inner {
    grid-template-columns: 1fr;
    grid-template-rows: 124px auto;
  }
}
@media screen and (max-width: 520px) {
  .c-Author__inner {
    grid-template-columns: 1fr;
    grid-template-rows: 124px auto;
  }
}
.c-Author__innerCompany {
  border: 2px solid #eaeaea;
  margin: 12px 0 24px 0;
  padding: 20px;
}
@media (max-width: 840px) and (min-width: 768px) {
  .c-Author__img {
    margin: 0 auto;
  }
}
@media screen and (max-width: 520px) {
  .c-Author__img {
    margin: 0 auto;
  }
}
.c-Author__img a {
  display: block;
  position: relative;
  border-radius: 50%;
  width: 124px;
  height: 124px;
  overflow: hidden;
}
.c-Author__img a:hover {
  opacity: 0.6;
}
.c-Author__img a::before {
  position: relative;
  content: "";
  display: block;
  padding-top: 100%;
}
.c-Author__img a img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.c-Author__imageCompany img.gmo-cybersecurity {
  max-height: 18px;
}
.c-Author__imageCompany img.gmo-globalsign {
  max-height: 28px;
}
.c-Author__name {
  font-size: 1.8rem;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.c-Author__name a:hover {
  opacity: 0.6;
}
.c-Author__nameCompany {
  font-size: 1.2rem;
  color: #999;
}
.c-Author__nameCompany a:hover {
  opacity: 0.6;
}
.c-Author__text {
  margin-top: 8px;
  font-size: 1.6rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-height: 1.8em;
}
.c-Author__text a:hover {
  opacity: 0.6;
}
.c-Author__textCompany {
  margin-top: 16px;
  font-size: 1.6rem;
  line-height: 1.8em;
}
.c-Author__textCompany a {
  color: #005bac;
}
.c-Author__textCompany a:hover {
  opacity: 0.6;
}
.c-Author__snsList {
  margin: 16px 0 4px 0;
}
.c-Author__snsList ul {
  display: flex;
  flex-wrap: wrap;
  margin: -2px 0;
}
.c-Author__snsList li {
  margin: 4px 0;
}
.c-Author__snsList li:not(:last-child) {
  margin-right: 16px;
}
.c-Author__snsList a {
  display: block;
  font-size: 1.4rem;
}
.c-Author__snsList a img {
  width: 24px;
  height: 24px;
}
.c-Author__snsList a:hover {
  opacity: 0.8;
}
.c-Author .X-twitter a {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #000;
  border-radius: 50%;
  font-size: 1.4rem;
  width: 24px;
  height: 24px;
}
.c-Author .X-twitter a img {
  width: 14px;
  height: 14px;
}
.c-Author .X-twitter a:hover {
  opacity: 0.8;
}

.c-AuthorCode {
  font-size: 1.4rem;
}
.c-AuthorCode a {
  color: #005bac;
}
.c-AuthorCode a:hover {
  opacity: 0.8;
}

.p-Piller .c-AuthorCode {
  margin-left: 20px;
}

.c-PageNation .new-pagenation {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin: 48px auto;
}
.c-PageNation a {
  display: block;
  padding: 8px 12px;
  border: 1px solid #ccc;
  margin: 2px;
}
.c-PageNation a:hover {
  background: #f6f6f6;
}
.c-PageNation span {
  display: block;
  padding: 8px 12px;
  border: 1px solid #ccc;
  margin: 2px;
}
.c-PageNation span.current {
  background: #f6f6f6;
}

.c-Tag ul {
  display: flex;
  flex-wrap: wrap;
  margin: -4px;
}
.c-Tag li {
  margin: 4px;
}
.c-Tag li a {
  display: block;
  padding: 8px 24px;
  border: 1px solid #ccc;
  background-color: #f6f6f6;
  border-radius: 24px;
}
.c-Tag li a:hover {
  opacity: 0.6;
}

.c-TagLabel ul {
  display: flex;
  flex-wrap: wrap;
  margin: -8px;
}
.c-TagLabel li {
  margin: 8px;
  font-size: 1.4rem;
}
.c-TagLabel li a {
  display: block;
  padding: 4px 24px;
  border: 1px solid #ccc;
  background-color: #f6f6f6;
  border-radius: 24px;
}
.c-TagLabel li a:hover {
  opacity: 0.6;
}

.c-Registration {
  background: rgba(0, 91, 172, 0.1);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 24px;
}
.c-Registration__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.c-Registration__btnComment {
  display: inline-block;
  align-self: center;
  position: relative;
  margin-bottom: 12px;
  color: #005bac;
  text-align: center;
  font-weight: 600;
  font-size: 1.6rem;
}
.c-Registration__btnComment::before {
  display: block;
  position: absolute;
  top: 8px;
  left: 40px;
  width: 2px;
  height: 16px;
  background: #005bac;
  content: "";
  transform: rotate(-30deg);
}
.c-Registration__btnComment::after {
  display: block;
  position: absolute;
  top: 8px;
  right: 40px;
  width: 2px;
  height: 16px;
  background: #005bac;
  content: "";
  transform: rotate(30deg);
}
.c-Registration__btnComment span {
  font-weight: 600;
  font-size: 2rem;
}
.c-Registration__btn .Btn__signUp {
  width: 400px;
  height: 72px;
  font-size: 2.4rem;
}
@media screen and (max-width: 424px) {
  .c-Registration__btn .Btn__signUp {
    min-width: 280px;
    width: 100%;
    height: 56px;
    font-size: 1.8rem;
  }
}

.c-Banner {
  display: none;
  position: fixed;
  justify-content: center;
  align-items: center;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 10px;
  text-align: center;
  z-index: 100000000;
}
.c-Banner__pc {
  margin: 0 auto;
  width: auto;
}
.c-Banner__pc img {
  max-height: 64px;
}
.c-Banner__sp {
  display: none;
}
@media only screen and (max-width: 480px) {
  .c-Banner__pc {
    display: none;
  }
  .c-Banner__sp {
    display: block;
  }
  .c-Banner__sp img {
    max-width: 300px;
  }
}
.c-Banner__closeBtn {
  position: absolute;
  top: -32px;
  left: 32px;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  padding: 0;
  border: none;
  color: #5a5858;
  background-color: #f6f6f6;
  font-size: 1.8rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
}
.c-Banner__closeBtn::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 16px;
  height: 2px;
  margin: auto;
  background-color: #5a5858;
  content: "";
  transition: all 0.1s ease-in-out;
  transform: rotate(45deg);
}
.c-Banner__closeBtn::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 16px;
  height: 2px;
  margin: auto;
  background-color: #5a5858;
  content: "";
  transition: all 0.1s ease-in-out;
  transform: rotate(135deg);
}

.c-ConversionFeature {
  border: 3px double #005bac;
  padding: 24px 0;
}
.c-ConversionFeature__logo {
  display: flex;
  justify-content: center;
}
.c-ConversionFeature .br {
  display: inline-block;
}
.c-ConversionFeature > h2.c-ConversionFeature__title {
  margin: 20px 16px 24px 16px;
  padding: 0;
  border: none;
  min-height: auto;
  background: transparent;
  font-size: 1.8rem;
  display: block;
  text-align: center;
}
.c-ConversionFeature__feature {
  display: grid;
  max-width: 768px;
  margin: 0 16px;
  grid-template-columns: repeat(auto-fit, minmax(195px, 1fr));
  gap: 8px;
}
@media screen and (max-width: 742px) {
  .c-ConversionFeature__feature {
    margin: 0 16px;
    grid-template-columns: 1fr;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .c-ConversionFeature__feature {
    margin: 0 16px;
    grid-template-columns: 1fr;
  }
}
.c-ConversionFeature__feature li {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  position: relative;
  width: 194px;
  height: 194px;
  border-radius: 97px;
  background: #f8f8f8;
}
@media screen and (max-width: 742px) {
  .c-ConversionFeature__feature li {
    justify-content: flex-start;
    width: 100%;
    height: auto;
    border-radius: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .c-ConversionFeature__feature li {
    justify-content: flex-start;
    width: 100%;
    height: auto;
    border-radius: 8px;
  }
}
.c-ConversionFeature__feature li::before {
  position: absolute;
  right: 0;
  bottom: 0;
  border-bottom: 120px solid #fbfbfb;
  border-left: 240px solid transparent;
  content: "";
}
.c-ConversionFeature__feature dl {
  z-index: 1;
  max-width: 194px;
}
@media screen and (max-width: 742px) {
  .c-ConversionFeature__feature dl {
    display: flex;
    flex-direction: row-reverse;
    max-width: 100%;
    padding: 16px;
    text-align: left;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .c-ConversionFeature__feature dl {
    display: flex;
    flex-direction: row-reverse;
    max-width: 100%;
    padding: 16px;
    text-align: left;
  }
}
.c-ConversionFeature__feature dt {
  text-align: center;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.6em;
  margin: 0 8px;
}
@media screen and (max-width: 742px) {
  .c-ConversionFeature__feature dt {
    flex: 1 0 0;
    align-self: center;
    margin-left: 20px;
    text-align: left;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 742px) and (max-width: 768px) {
  .c-ConversionFeature__feature dt .br::after {
    content: none;
    white-space: normal;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .c-ConversionFeature__feature dt {
    flex: 1 0 0;
    align-self: center;
    margin-left: 20px;
    text-align: left;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (max-width: 768px) {
  .c-ConversionFeature__feature dt .br::after {
    content: none;
    white-space: normal;
  }
}
.c-ConversionFeature__feature dt .mark {
  background: linear-gradient(transparent 60%, #ffec00 60%);
  font-weight: 600;
}
.c-ConversionFeature__feature dt .br {
  font-weight: 600;
}
.c-ConversionFeature__feature dt .br::after {
  content: "\a";
  white-space: pre;
}
.c-ConversionFeature__feature dd {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 66px;
  margin-top: 16px;
  margin-bottom: 16px;
}
@media screen and (max-width: 742px) {
  .c-ConversionFeature__feature dd {
    width: 64px;
    margin: 0;
  }
  .c-ConversionFeature__feature dd img {
    width: 64px;
    height: 36px;
    object-fit: contain;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .c-ConversionFeature__feature dd {
    width: 64px;
    margin: 0;
  }
  .c-ConversionFeature__feature dd img {
    width: 64px;
    height: 36px;
    object-fit: contain;
  }
}
.c-ConversionFeature .br {
  display: inline-block;
}
.c-ConversionFeature__textBox {
  padding: 16px 16px 24px 16px;
  text-align: center;
}
@media screen and (max-width: 742px) {
  .c-ConversionFeature__textBox {
    text-align: left;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .c-ConversionFeature__textBox {
    text-align: left;
  }
}
.c-ConversionFeature__text > .em {
  background: linear-gradient(transparent 60%, #ffec00 60%);
  font-weight: 600;
}
.c-ConversionFeature__button {
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-ConversionHero {
  background-color: #f6f6f6;
  padding: 24px;
}
.c-ConversionHero__logo {
  display: flex;
  justify-content: center;
}
.c-ConversionHero .br {
  display: inline-block;
}
.c-ConversionHero > h2.c-ConversionHero__title {
  margin: 20px 0 0 0;
  padding: 0;
  border: none;
  min-height: auto;
  background: transparent;
  font-size: 1.8rem;
  display: block;
  text-align: center;
}
.c-ConversionHero__textBox {
  padding: 16px 0 24px 200px;
  background-image: url(https://kigyo.gmo/common/img/kigyo/top.svg);
  background-position: -30px center;
  background-repeat: no-repeat;
  background-size: 220px auto;
}
@media screen and (max-width: 480px) {
  .c-ConversionHero__textBox {
    padding: 16px 0 148px 0px;
    background-position: center bottom;
    background-size: 160px auto;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  .c-ConversionHero__textBox {
    padding: 16px 0 148px 0px;
    background-position: center bottom;
    background-size: 160px auto;
  }
}
.c-ConversionHero__text > .em {
  background: linear-gradient(transparent 60%, #ffec00 60%);
  font-weight: 600;
}
.c-ConversionHero__link {
  color: #005bac;
  text-decoration: none;
  display: block;
  margin-top: 16px;
  position: relative;
  padding-left: 16px;
}
.c-ConversionHero__link:hover {
  color: #005bac;
  opacity: 0.8;
}
.c-ConversionHero__link:active {
  color: #005bac;
  opacity: 0.6;
}
.c-ConversionHero__link::before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  left: 2px;
  box-sizing: border-box;
  width: 6px;
  height: 6px;
  border: 6px solid transparent;
  border-left: 6px solid #005bac;
}
.c-ConversionHero__link::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.c-ConversionText {
  background: rgba(0, 91, 172, 0.1);
  padding: 24px 6%;
}
.c-ConversionText > h2.c-ConversionText__title {
  margin: 0;
  padding: 0;
  border: none;
  min-height: auto;
  background: transparent;
  font-size: 1.8rem;
  color: #005bac;
  display: block;
}
.c-ConversionText .br {
  display: inline-block;
}
.c-ConversionText__textBox {
  padding: 16px 0 24px 0;
}
.c-ConversionText__text > .em {
  background: linear-gradient(transparent 60%, #ffec00 60%);
  font-weight: 600;
}
.c-ConversionText__button {
  margin-top: 0px;
}

.s-Single .c-ConversionFeature .em, .s-Single .c-ConversionHero .em, .s-Single .c-ConversionText .em {
  background-color: transparent;
}

.s-Single .c-ConversionFeature p, .s-Single .c-ConversionHero p, .s-Single .c-ConversionText p {
  margin-top: 0;
}

.s-Single .c-ConversionFeature div, .s-Single .c-ConversionHero div, .s-Single .c-ConversionText div {
  margin-top: 0;
}

.c-ServiceLogoContent {
  padding: 0 20px;
}
.c-ServiceLogoContent .c-ServiceLogo {
  display: grid;
  width: 100%;
  margin: 16px auto 32px auto;
  grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  gap: 16px;
}
.c-ServiceLogoContent .c-ServiceLogo li a,
.c-ServiceLogoContent .c-ServiceLogo li picture {
  display: flex;
  align-self: center;
  justify-content: center;
  overflow: hidden;
  width: 100%;
  height: 56px;
}
.c-ServiceLogoContent .c-ServiceLogo li a:hover,
.c-ServiceLogoContent .c-ServiceLogo li picture:hover {
  opacity: 0.6;
}
.c-ServiceLogoContent .c-ServiceLogo img {
  align-self: center;
  width: 80%;
  height: auto;
}

.c-CVSignUp {
  background: rgba(0, 91, 172, 0.1);
  padding: 24px;
}
.c-CVSignUp__title {
  font-weight: bold;
  font-size: 14px;
  padding: 0;
  margin: 0;
  line-height: 1.7em;
  margin-bottom: 16px;
}
.c-CVSignUp__text {
  padding: 0;
  margin: 12px 0;
  font-size: 14px;
  line-height: 1.7em;
}
.c-CVSignUp__text a, .c-CVSignUp__title a {
  color: #005bac;
  font-weight: bold;
}
.c-CVSignUp__text a:hover {
  text-decoration: underline;
}
.c-CVSignUp__btnBox {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin: 0 auto;
}
.c-CVSignUp__btnComment {
  display: inline-block;
  align-self: center;
  text-align: center;
  position: relative;
  padding: 0;
  margin: 0 auto 4px auto;
  color: #005bac;
  text-align: center;
  font-weight: 600;
  font-size: 14px;
}
.c-CVSignUp__btnComment::before {
  display: block;
  position: absolute;
  top: 8px;
  left: -8px;
  width: 2px;
  height: 16px;
  background: #005bac;
  content: "";
  transform: rotate(-30deg);
}
.c-CVSignUp__btnComment::after {
  display: block;
  position: absolute;
  top: 8px;
  right: -8px;
  width: 2px;
  height: 16px;
  background: #005bac;
  content: "";
  transform: rotate(30deg);
}
.c-CVSignUp__btnComment span {
  font-weight: 600;
  font-size: 14px;
}
.c-CVSignUp__btn {
  margin: 0 auto;
}
.c-CVSignUp__btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0 20px;
  border: 0;
  border-radius: 50px;
  background: #005bac;
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s 0s ease;
  min-width: 240px;
  height: 48px;
  font-size: 16px;
}
@media screen and (max-width: 560px) {
  .c-CVSignUp__btn a {
    font-size: 14px;
    width: 100%;
  }
}

.s-Single .c-CVSignUp p + p,
.s-Single .c-CVSignUp div + p,
.s-Single .c-CVSignUp div + div,
.s-Single .c-CVSignUp p + div {
  margin-top: 0;
}

.c-Disclaimer {
  margin: 32px 0 64px 0;
  font-size: 1.3rem;
  line-height: 1.5em;
}
.c-Disclaimer li + li {
  margin-top: 4px;
}
.c-Disclaimer a {
  color: #005bac;
}
.c-Disclaimer a:hover {
  color: rgba(0, 91, 172, 0.6);
}
.c-Disclaimer .em {
  font-style: normal;
  background-color: rgba(247, 206, 25, 0.3);
  font-weight: 600;
}
.c-Disclaimer .em a {
  color: #005bac;
  border-bottom: 1px solid #005bac;
}
.c-Disclaimer .em a:hover {
  color: rgba(0, 91, 172, 0.8);
  border-bottom: 1px solid rgba(0, 91, 172, 0.8);
}

.s-Single .c-Disclaimer p + p {
  margin-top: 4px;
}

.p-Piller {
  font-size: 1.6rem;
  line-height: 1.8em;
  word-break: break-all;
}
@media screen and (max-width: 540px) {
  .p-Piller {
    font-size: 1.7rem;
  }
}
.p-Piller__inner {
  max-width: 840px;
  margin: 0 auto;
}
.p-Piller img {
  height: auto;
}
.p-Piller .thumbnail {
  margin-top: 24px;
  width: 100%;
  position: relative;
}
.p-Piller .thumbnail::before {
  display: block;
  padding-top: 52.5%;
  content: "";
}
.p-Piller .thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-Piller .postBox {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 32px 0 24px 0;
}
@media screen and (max-width: 540px) {
  .p-Piller .postBox {
    margin: 32px 0;
  }
}
.p-Piller .postBox.right {
  margin: 0 32px 0 auto;
}
@media screen and (max-width: 540px) {
  .p-Piller .postBox.right {
    margin: 0 0 0 auto;
  }
}
.p-Piller .boxDate {
  padding-right: 8px;
  margin-left: 20px;
}
@media screen and (max-width: 540px) {
  .p-Piller .boxDate {
    margin-left: 0;
  }
}
.p-Piller .boxDate .postDate {
  font-size: 1.6rem;
}
.p-Piller .boxDate .upDate {
  font-size: 1.6rem;
}
.p-Piller .boxDate .upDate::before {
  display: inline-block;
  content: "\f2f9";
  font-family: FontAwesome;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 900;
  padding-right: 4px;
}
.p-Piller .postShare {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 8px 0;
}
.p-Piller .postShare li {
  margin: 4px 0;
}
.p-Piller .postShare li:not(:last-child) {
  margin-right: 8px;
}
.p-Piller .postShare.right {
  margin-left: auto;
  margin-right: 32px;
}
@media screen and (max-width: 540px) {
  .p-Piller .postShare.right {
    margin-right: 0;
  }
}
.p-Piller .postShare.center {
  margin-left: auto;
  margin-right: auto;
}
.p-Piller .postShare .sns-link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  height: 40px;
  width: 140px;
  border-radius: 20px;
  transition: 0.3s;
  line-height: 1.5;
  font-size: 14px;
  text-indent: 0;
}
@media screen and (max-width: 540px) {
  .p-Piller .postShare .sns-link {
    width: 120px;
  }
}
.p-Piller .postShare .sns-link.tw {
  background-color: #000;
}
.p-Piller .postShare .sns-link.tw img {
  display: inline-block;
  width: 16px;
  margin-right: 6px;
}
.p-Piller .postShare .sns-link.fb {
  background-color: #1877f2;
}
.p-Piller .postShare .sns-link.fb img {
  display: inline-block;
  width: 16px;
  margin-right: 6px;
}
.p-Piller .postShare .sns-link.line {
  background-color: #4cc764;
}
.p-Piller .postShare .sns-link.line img {
  display: inline-block;
  width: 24px;
  margin-right: 4px;
}
.p-Piller .description {
  margin: 24px;
  padding: 24px 48px;
  position: relative;
  font-size: 1.6rem;
}
@media screen and (max-width: 800px) {
  .p-Piller .description {
    padding: 24px;
  }
}
@media screen and (max-width: 540px) {
  .p-Piller .description {
    margin: 24px 0;
    padding: 24px;
  }
}
.p-Piller .description:before, .p-Piller .description:after {
  position: absolute;
  top: 0;
  content: " ";
  width: 24px;
  height: 100%;
  display: inline-block;
  box-sizing: border-box;
}
.p-Piller .description:before {
  border-left: 3px double #eaeaea;
  border-top: 3px double #eaeaea;
  border-bottom: 3px double #eaeaea;
  left: 0;
}
.p-Piller .description:after {
  border-top: 3px double #eaeaea;
  border-right: 3px double #eaeaea;
  border-bottom: 3px double #eaeaea;
  right: 0;
}
.p-Piller h1 {
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.4em;
  margin: 24px 16px 20px 16px;
}
@media screen and (max-width: 540px) {
  .p-Piller h1 {
    margin: 24px 0 20px 0;
  }
}
.p-Piller h2 {
  display: flex;
  align-items: center;
  margin-top: 48px;
  margin-bottom: 32px;
  min-height: 56px;
  border-bottom: 3px solid #005bac;
  font-weight: 600;
  font-size: 2.8rem;
  line-height: 1.4em;
  padding: 8px 0 8px 88px;
  background-image: url("/wp-content/themes/media-template-kigyo/img/title_main.svg");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 80px;
}
@media screen and (max-width: 540px) {
  .p-Piller h2 {
    margin-top: 32px;
    margin-bottom: 24px;
  }
}
.p-Piller h3 {
  margin-top: 48px;
  margin-bottom: 32px;
  padding: 0 0 0 12px;
  border-left: 6px solid #005bac;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .p-Piller h3 {
    margin-top: 32px;
    margin-bottom: 24px;
  }
}
.p-Piller h4 {
  margin-top: 32px;
  margin-bottom: 24px;
  font-weight: 600;
  font-size: 2.8rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .p-Piller h4 {
    margin-top: 24px;
    margin-bottom: 16px;
    font-size: 1.8rem;
    line-height: 1.4em;
  }
}
@media screen and (max-width: 540px) {
  .p-Piller h4 {
    margin-top: 24px;
    margin-bottom: 16px;
  }
}
.p-Piller .time {
  font-size: 1.4rem;
}
.p-Piller .f-listaccordion {
  background: #f6f6f6;
  margin: 32px 0;
}
@media screen and (max-width: 540px) {
  .p-Piller .f-listaccordion {
    margin: 24px 0;
  }
}
.p-Piller .f-listaccordion div {
  font-weight: 600;
  font-size: 1.8rem;
  padding: 16px 24px 16px 48px;
  cursor: pointer;
  position: relative;
}
.p-Piller .f-listaccordion div::before {
  position: absolute;
  top: 6px;
  bottom: 0;
  left: 24px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 7px;
  height: 7px;
  border: 7px solid transparent;
  border-top: 7px solid #5a5858;
}
.p-Piller .f-listaccordion div .close::before {
  top: -1px;
  left: 32px;
  border: 7px solid transparent;
  border-left: 7px solid #5a5858;
}
.p-Piller .f-listaccordion ol {
  padding: 0 24px 24px 24px;
  counter-reset: number;
  list-style: none;
}
.p-Piller .f-listaccordion ol .m_headline {
  font-size: 1.6rem;
  font-weight: 600;
  border-bottom: 1px solid #eaeaea;
  padding: 8px;
}
.p-Piller .f-listaccordion ol .m_headline::before {
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero) ".";
  padding-right: 7px;
}
.p-Piller .f-listaccordion ol .m_headline a {
  color: #333;
}
.p-Piller .f-listaccordion ol .m_headline a:hover {
  color: #5a5858;
}
.p-Piller .f-listaccordion ol .s_headline {
  font-size: 1.6rem;
  padding: 8px;
  margin-left: 2rem;
  border-bottom: 1px solid #eaeaea;
}
.p-Piller .f-listaccordion ol .s_headline a:hover {
  color: #5a5858;
}
.p-Piller .qoute {
  background: #f6f6f6;
  border-radius: 4px;
  padding: 20px;
  margin: 16px 0;
  line-height: 1.8em;
}
.p-Piller .qoute a {
  color: #005bac;
}
.p-Piller .qoute a:hover {
  color: rgba(0, 91, 172, 0.6);
}
.p-Piller .em {
  font-style: normal;
  background-color: rgba(247, 206, 25, 0.3);
  font-weight: 600;
}
.p-Piller .em a {
  color: #005bac;
  border-bottom: 1px solid #005bac;
}
.p-Piller .em a:hover {
  color: rgba(0, 91, 172, 0.8);
  border-bottom: 1px solid rgba(0, 91, 172, 0.8);
}
.p-Piller .bold {
  font-weight: 600;
}
.p-Piller .blockquote {
  position: relative;
  padding: 10px 15px 10px 60px;
  box-sizing: border-box;
  background: rgba(0, 91, 172, 0.1);
  color: #5a5858;
}
.p-Piller .blockquote::before {
  display: inline-block;
  position: absolute;
  left: 16px;
  margin: auto;
  content: "\f10d";
  font-family: FontAwesome;
  color: rgba(0, 91, 172, 0.6);
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
}
.p-Piller .blockquote a {
  color: #005bac;
  font-weight: 600;
  color: #005bac;
}
.p-Piller .blockquote a:hover {
  color: rgba(0, 91, 172, 0.6);
}
.p-Piller .dl {
  margin: 24px 0;
}
.p-Piller .dl dt {
  font-weight: 600;
  margin-bottom: 8px;
}
.p-Piller .dl-service {
  border: 2px solid #eaeaea;
  margin: 24px 0;
  display: grid;
  grid-template-columns: 200px 1fr;
  grid-gap: 20px;
}
@media screen and (max-width: 540px) {
  .p-Piller .dl-service {
    display: block;
  }
}
.p-Piller .dl-service .title {
  grid-area: 1/1/2/3;
  font-size: 1.4rem;
  font-weight: 600;
  background: #f6f6f6;
  padding: 4px 16px;
}
.p-Piller .dl-service .title span {
  font-weight: normal;
  font-size: 1.3rem;
  color: #5a5858;
  display: inline-block;
  padding-right: 8px;
}
.p-Piller .dl-service .logo {
  grid-area: 2/1/3/2;
  position: relative;
  width: 164px;
  height: 104px;
  background: #fff;
  border: 1px solid #eaeaea;
  margin: 0 0 20px 20px;
}
@media screen and (max-width: 540px) {
  .p-Piller .dl-service .logo {
    margin: 20px auto;
  }
}
.p-Piller .dl-service .logo:before {
  display: block;
  position: absolute;
  padding-top: 100%;
  content: "";
}
.p-Piller .dl-service .logo a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 120px;
  height: 60px;
  margin: auto;
  inset: 0;
}
.p-Piller .dl-service .logo a:after {
  z-index: 10;
  display: block;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  content: "";
  opacity: 0;
  transition: all 0.3s 0s ease;
}
.p-Piller .dl-service .logo a img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-Piller .dl-service .text {
  font-size: 1.4rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-height: 1.8em;
  margin: 0 20px 20px 0;
  grid-area: 2/2/3/3;
}
@media screen and (max-width: 540px) {
  .p-Piller .dl-service .text {
    margin: 20px;
  }
}
.p-Piller .box {
  position: relative;
  box-sizing: border-box;
  background: rgba(4, 91, 172, 0.1);
  padding: 16px 24px 16px 16px;
}
.p-Piller .box2 {
  padding: 16px;
  border: 3px double rgba(4, 91, 172, 0.1);
}
.p-Piller .list {
  margin: -12px 0;
  position: relative;
  padding: 8px 16px;
}
@media screen and (max-width: 520px) {
  .p-Piller .list {
    padding: 8px 2px 8px 8px;
  }
}
.p-Piller .list li {
  line-height: 2em;
  margin: 12px 0;
  position: relative;
  padding-left: 16px;
}
.p-Piller .list li:before {
  content: "";
  position: absolute;
  margin: auto;
  top: 0.7em;
  left: 0;
  width: 8px;
  height: 8px;
  background-color: #005bac;
  border-radius: 50%;
}
.p-Piller .list em {
  color: #005bac;
  font-style: normal;
  font-weight: 600;
}
.p-Piller .list a {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.p-Piller .list a:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
.p-Piller .list-ol {
  margin: -12px 0;
  position: relative;
  padding: 8px 16px;
  counter-reset: number;
  list-style: none;
}
@media screen and (max-width: 520px) {
  .p-Piller .list-ol {
    padding: 8px 0;
  }
}
.p-Piller .list-ol li {
  line-height: 1.8em;
  margin: 12px 0 12px 2.2em;
  position: relative;
  text-indent: -2.2em;
}
.p-Piller .list-ol li::before {
  color: #005bac;
  font-weight: 600;
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero) ".";
  padding-right: 7px;
}
.p-Piller .list-ol em {
  color: #005bac;
  font-style: normal;
  font-weight: 600;
}
.p-Piller .list-ol a {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.p-Piller .list-ol a:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
@media screen and (max-width: 768px) {
  .p-Piller .table {
    overflow-x: scroll;
  }
  .p-Piller .table::-webkit-scrollbar {
    height: 5px;
  }
  .p-Piller .table::-webkit-scrollbar-track {
    background: #eaeaea;
  }
  .p-Piller .table::-webkit-scrollbar-thumb {
    background: #ccc;
  }
}
.p-Piller .table table {
  margin-bottom: 5px;
  width: 100%;
  padding: 0;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
@media screen and (max-width: 768px) {
  .p-Piller .table table {
    white-space: nowrap;
  }
}
.p-Piller .table table th {
  padding: 8px 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background: #f6f6f6 0% 0% no-repeat padding-box;
  vertical-align: middle;
  text-align: left;
  font-weight: bold;
  font-weight: 600;
  font-size: 1.6rem;
}
.p-Piller .table table td {
  padding: 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
  font-size: 1.6rem;
}
.p-Piller .productText {
  margin-top: 32px;
}
.p-Piller .external {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.p-Piller .external::after {
  display: inline-block;
  margin-left: 4px;
  content: "\f08e";
  font-family: FontAwesome;
  color: #005bac;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
}
.p-Piller .external:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
.p-Piller p + p,
.p-Piller div + p,
.p-Piller div + div,
.p-Piller p + div {
  margin-top: 16px;
}

.c-Special {
  margin-bottom: 48px;
}
.c-Special p {
  margin: 24px 0;
  padding: 0;
}
.c-Special ul {
  margin: 0;
  padding: 0;
}
.c-Special ul li {
  margin: 4px 0;
  padding: 0;
}
.c-Special h1 {
  padding: 16px;
  margin: 0;
  border-radius: 8px;
  background: rgba(0, 91, 172, 0.1);
  color: #005bac;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1em;
  position: relative;
  overflow: hidden;
}
.c-Special h2 {
  margin-top: 48px;
  margin-bottom: 32px;
  padding: 0 0 0 12px;
  border-left: 6px solid #005bac;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.4em;
}
.c-Special h3 {
  margin-top: 48px;
  margin-bottom: 32px;
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 1.4em;
}
.c-Special .qoute {
  background: #f6f6f6;
  border-radius: 4px;
  padding: 20px;
  margin: 16px 0;
  line-height: 1.8em;
}
.c-Special .qoute a {
  color: #005bac;
}
.c-Special .qoute a:hover {
  color: rgba(0, 91, 172, 0.6);
}
.c-Special .em {
  font-style: normal;
  background-color: rgba(247, 206, 25, 0.3);
  font-weight: 600;
}
.c-Special .em a {
  color: #005bac;
  border-bottom: 1px solid #005bac;
}
.c-Special .em a:hover {
  color: rgba(0, 91, 172, 0.8);
  border-bottom: 1px solid rgba(0, 91, 172, 0.8);
}
.c-Special .bold {
  font-weight: 600;
}
.c-Special .blockquote {
  position: relative;
  padding: 10px 15px 10px 60px;
  box-sizing: border-box;
  background: rgba(0, 91, 172, 0.1);
  color: #5a5858;
}
.c-Special .blockquote::before {
  display: inline-block;
  position: absolute;
  left: 16px;
  margin: auto;
  content: "\f10d";
  font-family: FontAwesome;
  color: rgba(0, 91, 172, 0.6);
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
}
.c-Special .blockquote a {
  color: #005bac;
  font-weight: 600;
  color: #005bac;
}
.c-Special .blockquote a:hover {
  color: rgba(0, 91, 172, 0.6);
}
.c-Special .dl {
  margin: 24px 0;
}
.c-Special .dl dt {
  font-weight: 600;
  margin-bottom: 8px;
}
.c-Special .c-Author__text,
.c-Special .c-Author__name {
  -webkit-line-clamp: inherit;
}

.a-ArchiveAuthor .blogDescription {
  margin: 24px 0;
  padding: 24px;
  position: relative;
}
.a-ArchiveAuthor .blogDescription:before, .a-ArchiveAuthor .blogDescription:after {
  position: absolute;
  top: 0;
  content: " ";
  width: 24px;
  height: 100%;
  display: inline-block;
  box-sizing: border-box;
}
.a-ArchiveAuthor .blogDescription:before {
  border-left: 3px double #eaeaea;
  border-top: 3px double #eaeaea;
  border-bottom: 3px double #eaeaea;
  left: 0;
}
.a-ArchiveAuthor .blogDescription:after {
  border-top: 3px double #eaeaea;
  border-right: 3px double #eaeaea;
  border-bottom: 3px double #eaeaea;
  right: 0;
}
.a-ArchiveAuthor h1 {
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.4em;
}
.a-ArchiveAuthor .authorList {
  display: grid;
  justify-content: space-between;
  grid-template-columns: repeat(auto-fit, minmax(164px, 1fr));
  grid-auto-rows: 1fr;
  grid-gap: 20px 3%;
  margin: 32px 0;
}
@media screen and (max-width: 540px) {
  .a-ArchiveAuthor .authorList {
    margin: 24px 0;
  }
}
.a-ArchiveAuthor .authorList dl {
  text-align: center;
  position: relative;
}
.a-ArchiveAuthor .authorList dl:hover {
  visibility: visible;
  opacity: 0.6;
}
.a-ArchiveAuthor .authorList dl a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.a-ArchiveAuthor .authorList dl dt {
  width: 124px;
  height: 124px;
}
.a-ArchiveAuthor .authorList dl .img {
  display: block;
  position: relative;
  margin: 0 auto;
  border-radius: 50%;
  width: 124px;
  height: 124px;
  overflow: hidden;
}
.a-ArchiveAuthor .authorList dl .img::before {
  position: relative;
  content: "";
  display: block;
  padding-top: 100%;
}
.a-ArchiveAuthor .authorList dl .img img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.a-ArchiveAuthor .authorList .inner .title {
  margin-top: 12px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-height: 1.8em;
}
.a-ArchiveAuthor .authorList .inner .text {
  margin-top: 4px;
  font-size: 1.6rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.8em;
}

.a-ArchiveNews h1 {
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.4em;
}
.a-ArchiveNews .newsList a:hover {
  visibility: visible;
  opacity: 0.6;
}
.a-ArchiveNews .newsList dl {
  position: relative;
  border-bottom: 1px dotted #eaeaea;
  padding: 20px 0;
}
.a-ArchiveNews .newsList dl .date {
  font-size: 1.5rem;
  font-weight: 600;
}
.a-ArchiveNews .newsList dl .title {
  font-size: 1.8rem;
  font-weight: 600;
  margin: 8px 0 12px 0;
  line-height: 1.4em;
}
.a-ArchiveNews .newsList dl .text {
  font-size: 1.6rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.8em;
}

.s-Single {
  font-size: 1.6rem;
  line-height: 1.8em;
  word-break: break-all;
}
@media screen and (max-width: 540px) {
  .s-Single {
    font-size: 1.7rem;
  }
}
.s-Single img {
  height: auto;
}
.s-Single .category {
  margin-bottom: 24px;
  color: #3f3d56;
  font-weight: 600;
  font-size: 2.4rem;
}
.s-Single .category::before {
  content: "■";
  display: inline-block;
  padding-right: 4px;
}
.s-Single__inner {
  max-width: 840px;
  margin: 0 auto;
}
.s-Single .thumbnail {
  margin-top: 24px;
  width: 100%;
  position: relative;
}
.s-Single .thumbnail::before {
  display: block;
  padding-top: 52.5%;
  content: "";
}
.s-Single .thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.s-Single .postBox {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 32px 0;
}
.s-Single .postBox.right {
  margin: 0 32px 0 auto;
}
@media screen and (max-width: 540px) {
  .s-Single .postBox.right {
    margin: 0 0 0 auto;
  }
}
.s-Single .boxDate {
  padding-right: 8px;
}
.s-Single .boxDate .postDate {
  font-size: 1.6rem;
}
.s-Single .boxDate .upDate {
  font-size: 1.6rem;
}
.s-Single .boxDate .upDate::before {
  display: inline-block;
  content: "\f2f9";
  font-family: FontAwesome;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 900;
  padding-right: 4px;
}
.s-Single .postShare {
  list-style: none;
  display: flex;
  justify-content: content;
  flex-wrap: wrap;
  margin: 8px 0;
}
.s-Single .postShare li {
  margin: 4px 0;
}
.s-Single .postShare li:not(:last-child) {
  margin-right: 8px;
}
.s-Single .postShare.right {
  margin-left: auto;
}
.s-Single .postShare.center {
  margin-left: auto;
  margin-right: auto;
}
.s-Single .postShare .sns-link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  height: 40px;
  width: 120px;
  border-radius: 20px;
  transition: 0.3s;
  line-height: 1.5;
  font-size: 14px;
  text-indent: 0;
}
@media screen and (max-width: 540px) {
  .s-Single .postShare .sns-link {
    width: 120px;
  }
}
.s-Single .postShare .sns-link.tw {
  background-color: #000;
}
.s-Single .postShare .sns-link.tw img {
  display: inline-block;
  width: 16px;
  margin-right: 6px;
}
.s-Single .postShare .sns-link.fb {
  background-color: #1877f2;
}
.s-Single .postShare .sns-link.fb img {
  display: inline-block;
  width: 16px;
  margin-right: 6px;
}
.s-Single .postShare .sns-link.line {
  background-color: #4cc764;
}
.s-Single .postShare .sns-link.line img {
  display: inline-block;
  width: 24px;
  margin-right: 4px;
}
.s-Single .description {
  margin: 24px;
  padding: 24px 48px;
  position: relative;
  font-size: 1.6rem;
}
@media screen and (max-width: 800px) {
  .s-Single .description {
    padding: 24px;
  }
}
@media screen and (max-width: 540px) {
  .s-Single .description {
    margin: 24px 0;
    padding: 24px;
  }
}
.s-Single .description:before, .s-Single .description:after {
  position: absolute;
  top: 0;
  content: " ";
  width: 24px;
  height: 100%;
  display: inline-block;
  box-sizing: border-box;
}
.s-Single .description:before {
  border-left: 3px double #eaeaea;
  border-top: 3px double #eaeaea;
  border-bottom: 3px double #eaeaea;
  left: 0;
}
.s-Single .description:after {
  border-top: 3px double #eaeaea;
  border-right: 3px double #eaeaea;
  border-bottom: 3px double #eaeaea;
  right: 0;
}
.s-Single h1 {
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.4em;
  margin: 24px 0 20px 0;
}
.s-Single h2 {
  display: flex;
  align-items: center;
  margin-top: 48px;
  margin-bottom: 32px;
  min-height: 56px;
  border-bottom: 3px solid #005bac;
  font-weight: 600;
  font-size: 2.8rem;
  line-height: 1.4em;
  padding: 8px 0 8px 88px;
  background-image: url("/wp-content/themes/media-template-kigyo/img/title_main.svg");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 80px;
}
@media screen and (max-width: 540px) {
  .s-Single h2 {
    margin-top: 32px;
    margin-bottom: 24px;
  }
}
.s-Single .indexarea--interview h3 {
  font-size: 2.4rem;
}
.s-Single h3 {
  margin-top: 48px;
  margin-bottom: 32px;
  padding: 0 0 0 12px;
  border-left: 6px solid #005bac;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .s-Single h3 {
    margin-top: 32px;
    margin-bottom: 24px;
  }
}
.s-Single .indexarea--interview h3 {
  padding: 0;
  color: #005bac;
  font-size: 1.8rem;
  border: none;
}
.s-Single h4 {
  margin-top: 32px;
  margin-bottom: 24px;
  font-weight: 600;
  font-size: 2.8rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .s-Single h4 {
    margin-top: 24px;
    margin-bottom: 16px;
    font-size: 1.8rem;
    line-height: 1.4em;
  }
}
@media screen and (max-width: 540px) {
  .s-Single h4 {
    margin-top: 24px;
    margin-bottom: 16px;
  }
}
.s-Single .time {
  font-size: 1.4rem;
}
.s-Single .f-listaccordion {
  background: #f6f6f6;
  margin: 32px 0;
}
@media screen and (max-width: 540px) {
  .s-Single .f-listaccordion {
    margin: 24px 0;
  }
}
.s-Single .f-listaccordion div {
  font-weight: 600;
  font-size: 1.8rem;
  padding: 16px 24px 16px 48px;
  cursor: pointer;
  position: relative;
}
.s-Single .f-listaccordion div::before {
  position: absolute;
  top: 6px;
  bottom: 0;
  left: 24px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 7px;
  height: 7px;
  border: 7px solid transparent;
  border-top: 7px solid #5a5858;
}
.s-Single .f-listaccordion div .close::before {
  top: -1px;
  left: 32px;
  border: 7px solid transparent;
  border-left: 7px solid #5a5858;
}
.s-Single .f-listaccordion ol {
  padding: 0 24px 24px 24px;
  counter-reset: number;
  list-style: none;
}
.s-Single .f-listaccordion ol .m_headline {
  font-size: 1.6rem;
  font-weight: 600;
  border-bottom: 1px solid #eaeaea;
  padding: 8px;
}
.s-Single .f-listaccordion ol .m_headline::before {
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero) ".";
  padding-right: 7px;
}
.s-Single .f-listaccordion ol .m_headline a {
  color: #333;
}
.s-Single .f-listaccordion ol .m_headline a:hover {
  color: #5a5858;
}
.s-Single .f-listaccordion ol .s_headline {
  font-size: 1.6rem;
  padding: 8px;
  margin-left: 2rem;
  border-bottom: 1px solid #eaeaea;
}
.s-Single .f-listaccordion ol .s_headline a:hover {
  color: #5a5858;
}
.s-Single .qoute {
  background: #f6f6f6;
  border-radius: 4px;
  padding: 20px;
  margin: 16px 0;
  line-height: 1.8em;
}
.s-Single .qoute a {
  color: #005bac;
}
.s-Single .qoute a:hover {
  color: rgba(0, 91, 172, 0.6);
}
.s-Single .em {
  font-style: normal;
  background-color: rgba(247, 206, 25, 0.3);
  font-weight: 600;
}
.s-Single .em a {
  color: #005bac;
  border-bottom: 1px solid #005bac;
}
.s-Single .em a:hover {
  color: rgba(0, 91, 172, 0.8);
  border-bottom: 1px solid rgba(0, 91, 172, 0.8);
}
.s-Single .bold {
  font-weight: 600;
}
.s-Single .blockquote {
  position: relative;
  padding: 10px 15px 10px 60px;
  box-sizing: border-box;
  background: rgba(0, 91, 172, 0.1);
  color: #5a5858;
}
.s-Single .blockquote::before {
  display: inline-block;
  position: absolute;
  left: 16px;
  margin: auto;
  content: "\f10d";
  font-family: FontAwesome;
  color: rgba(0, 91, 172, 0.6);
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
}
.s-Single .blockquote a {
  color: #005bac;
  font-weight: 600;
  color: #005bac;
}
.s-Single .blockquote a:hover {
  color: rgba(0, 91, 172, 0.6);
}
.s-Single .dl {
  margin: 24px 0;
}
.s-Single .dl dt {
  font-weight: 600;
  margin-bottom: 8px;
}
.s-Single .dl-service {
  border: 2px solid #eaeaea;
  margin: 24px 0;
  display: grid;
  grid-template-columns: 200px 1fr;
  grid-gap: 20px;
}
@media screen and (max-width: 540px) {
  .s-Single .dl-service {
    display: block;
  }
}
.s-Single .dl-service .title {
  grid-area: 1/1/2/3;
  font-size: 1.4rem;
  font-weight: 600;
  background: #f6f6f6;
  padding: 4px 16px;
}
.s-Single .dl-service .title span {
  font-weight: normal;
  font-size: 1.3rem;
  color: #5a5858;
  display: inline-block;
  padding-right: 8px;
}
.s-Single .dl-service .logo {
  grid-area: 2/1/3/2;
  position: relative;
  width: 164px;
  height: 104px;
  background: #fff;
  border: 1px solid #eaeaea;
  margin: 0 0 20px 20px;
}
@media screen and (max-width: 540px) {
  .s-Single .dl-service .logo {
    margin: 20px auto;
  }
}
.s-Single .dl-service .logo:before {
  display: block;
  position: absolute;
  padding-top: 100%;
  content: "";
}
.s-Single .dl-service .logo a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 120px;
  height: 60px;
  margin: auto;
  inset: 0;
}
.s-Single .dl-service .logo a:after {
  z-index: 10;
  display: block;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  content: "";
  opacity: 0;
  transition: all 0.3s 0s ease;
}
.s-Single .dl-service .logo a img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.s-Single .dl-service .text {
  font-size: 1.4rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-height: 1.8em;
  margin: 0 20px 20px 0;
  grid-area: 2/2/3/3;
}
@media screen and (max-width: 540px) {
  .s-Single .dl-service .text {
    margin: 20px;
  }
}
.s-Single .box {
  position: relative;
  box-sizing: border-box;
  background: rgba(4, 91, 172, 0.1);
  padding: 16px 24px 16px 16px;
}
.s-Single .box2 {
  padding: 16px;
  border: 3px double rgba(4, 91, 172, 0.1);
}
.s-Single .list {
  margin: -12px 0;
  position: relative;
  padding: 8px 16px;
}
@media screen and (max-width: 520px) {
  .s-Single .list {
    padding: 8px 2px 8px 8px;
  }
}
.s-Single .list li {
  line-height: 2em;
  margin: 12px 0;
  position: relative;
  padding-left: 16px;
}
.s-Single .list li:before {
  content: "";
  position: absolute;
  margin: auto;
  top: 0.7em;
  left: 0;
  width: 8px;
  height: 8px;
  background-color: #005bac;
  border-radius: 50%;
}
.s-Single .list em {
  color: #005bac;
  font-style: normal;
  font-weight: 600;
}
.s-Single .list a {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.s-Single .list a:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
.s-Single .list-ol {
  margin: -12px 0;
  position: relative;
  padding: 8px 16px;
  counter-reset: number;
  list-style: none;
}
@media screen and (max-width: 520px) {
  .s-Single .list-ol {
    padding: 8px 0;
  }
}
.s-Single .list-ol li {
  line-height: 1.8em;
  margin: 12px 0 12px 2.2em;
  position: relative;
  text-indent: -2.2em;
}
.s-Single .list-ol li::before {
  color: #005bac;
  font-weight: 600;
  counter-increment: number 1;
  content: counter(number, decimal-leading-zero) ".";
  padding-right: 7px;
}
.s-Single .list-ol em {
  color: #005bac;
  font-style: normal;
  font-weight: 600;
}
.s-Single .list-ol a {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.s-Single .list-ol a:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
@media screen and (max-width: 768px) {
  .s-Single .table {
    overflow-x: scroll;
  }
  .s-Single .table::-webkit-scrollbar {
    height: 5px;
  }
  .s-Single .table::-webkit-scrollbar-track {
    background: #eaeaea;
  }
  .s-Single .table::-webkit-scrollbar-thumb {
    background: #ccc;
  }
}
.s-Single .table table {
  margin-bottom: 5px;
  width: 100%;
  padding: 0;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
@media screen and (max-width: 768px) {
  .s-Single .table table {
    white-space: nowrap;
  }
}
.s-Single .table table th {
  padding: 8px 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background: #f6f6f6 0% 0% no-repeat padding-box;
  vertical-align: middle;
  text-align: left;
  font-weight: bold;
  font-weight: 600;
  font-size: 1.6rem;
}
.s-Single .table table td {
  padding: 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
  font-size: 1.6rem;
}
.s-Single .productText {
  margin-top: 32px;
}
.s-Single .external {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.s-Single .external::after {
  margin-left: 4px;
  content: "\f08e";
  font-family: FontAwesome;
  color: #005bac;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
}
.s-Single .external:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
.s-Single p + p,
.s-Single div + p,
.s-Single div + div,
.s-Single p + div {
  margin-top: 16px;
}

.s-SingleAuthor {
  font-size: 1.6rem;
  line-height: 1.8em;
}
.s-SingleAuthor .date {
  margin-bottom: 24px;
}
.s-SingleAuthor .upDate {
  font-size: 1.4rem;
}
.s-SingleAuthor .upDate::before {
  display: inline-block;
  content: "\f2f9";
  font-family: FontAwesome;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 900;
  padding-right: 4px;
}
.s-SingleAuthor .postDate {
  font-size: 1.4rem;
}
.s-SingleAuthor .section {
  margin: 32px 0;
}
.s-SingleAuthor .thumbnail,
.s-SingleAuthor .img {
  width: 280px;
  height: 280px;
  overflow: hidden;
  margin: 32px auto 48px auto;
  border-radius: 50%;
}
.s-SingleAuthor .thumbnail img,
.s-SingleAuthor .img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.s-SingleAuthor h1 {
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.4em;
}
.s-SingleAuthor h2 {
  display: flex;
  align-items: center;
  margin-top: 48px;
  margin-bottom: 32px;
  min-height: 56px;
  border-bottom: 3px solid #005bac;
  font-weight: 600;
  font-size: 2.8rem;
  line-height: 1.4em;
  padding: 8px 0 8px 88px;
  background-image: url("/wp-content/themes/media-template-kigyo/img/title_main.svg");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 80px;
}
.s-SingleAuthor h3 {
  margin-top: 48px;
  margin-bottom: 32px;
  padding: 0 0 0 12px;
  border-left: 6px solid #005bac;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .s-SingleAuthor h3 {
    margin-top: 32px;
  }
}
.s-SingleAuthor .box {
  position: relative;
  box-sizing: border-box;
  background: rgba(4, 91, 172, 0.1);
  padding: 16px;
  margin: 24px 0;
}
.s-SingleAuthor .box2 {
  margin: 24px 0;
  padding: 16px;
  border: 3px double rgba(4, 91, 172, 0.1);
}
.s-SingleAuthor .dl {
  margin: 24px 0;
}
.s-SingleAuthor .dl dt {
  font-weight: 600;
  margin-bottom: 8px;
}
@media screen and (max-width: 768px) {
  .s-SingleAuthor .table {
    overflow-x: scroll;
  }
  .s-SingleAuthor .table::-webkit-scrollbar {
    height: 5px;
  }
  .s-SingleAuthor .table::-webkit-scrollbar-track {
    background: #eaeaea;
  }
  .s-SingleAuthor .table::-webkit-scrollbar-thumb {
    background: #ccc;
  }
}
.s-SingleAuthor .table table {
  margin-bottom: 5px;
  width: 100%;
  padding: 0;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
@media screen and (max-width: 768px) {
  .s-SingleAuthor .table table {
    white-space: nowrap;
  }
}
.s-SingleAuthor .table table th {
  padding: 8px 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background: #f6f6f6 0% 0% no-repeat padding-box;
  vertical-align: middle;
  text-align: left;
  font-weight: bold;
  font-weight: 600;
  font-size: 1.6rem;
}
.s-SingleAuthor .table table td {
  padding: 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
  font-size: 1.6rem;
}
.s-SingleAuthor .list {
  margin: -4px 0;
  position: relative;
  padding: 8px 16px;
}
.s-SingleAuthor .list li {
  line-height: 2em;
  margin: 4px 0;
  position: relative;
  padding-left: 16px;
}
.s-SingleAuthor .list li:before {
  content: "";
  position: absolute;
  margin: auto;
  top: 0.7em;
  left: 0;
  width: 8px;
  height: 8px;
  background-color: #005bac;
  border-radius: 50%;
}
.s-SingleAuthor .list em {
  color: #005bac;
  font-style: normal;
  font-weight: 600;
}
.s-SingleAuthor .list a {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.s-SingleAuthor .list a:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
.s-SingleAuthor .list span {
  display: inline-block;
}
.s-SingleAuthor .dl-service {
  border: 2px solid #eaeaea;
  margin: 24px 0;
  display: grid;
  grid-template-columns: 200px 1fr;
  grid-gap: 20px;
}
@media screen and (max-width: 540px) {
  .s-SingleAuthor .dl-service {
    display: block;
  }
}
.s-SingleAuthor .dl-service .title {
  grid-area: 1/1/2/3;
  font-size: 1.4rem;
  font-weight: 600;
  background: #f6f6f6;
  padding: 4px 16px;
}
.s-SingleAuthor .dl-service .title span {
  font-weight: normal;
  font-size: 1.3rem;
  color: #5a5858;
  display: inline-block;
  padding-right: 8px;
}
.s-SingleAuthor .dl-service .logo {
  grid-area: 2/1/3/2;
  position: relative;
  width: 164px;
  height: 104px;
  background: #fff;
  border: 1px solid #eaeaea;
  margin: 0 0 20px 20px;
}
@media screen and (max-width: 540px) {
  .s-SingleAuthor .dl-service .logo {
    margin: 20px auto;
  }
}
.s-SingleAuthor .dl-service .logo:before {
  display: block;
  position: absolute;
  padding-top: 100%;
  content: "";
}
.s-SingleAuthor .dl-service .logo a {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 120px;
  height: 60px;
  margin: auto;
  inset: 0;
}
.s-SingleAuthor .dl-service .logo a:after {
  z-index: 10;
  display: block;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  content: "";
  opacity: 0;
  transition: all 0.3s 0s ease;
}
.s-SingleAuthor .dl-service .logo a img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.s-SingleAuthor .dl-service .text {
  font-size: 1.6rem;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-height: 1.8em;
  margin: 0 20px 20px 0;
  grid-area: 2/2/3/3;
}
@media screen and (max-width: 540px) {
  .s-SingleAuthor .dl-service .text {
    margin: 20px;
  }
}
.s-SingleAuthor .external {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.s-SingleAuthor .external::after {
  display: inline-block;
  margin-left: 4px;
  content: "\f08e";
  font-family: FontAwesome;
  color: #005bac;
  font-size: 12px;
  line-height: 1;
  font-weight: 900;
}
.s-SingleAuthor .external:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
.s-SingleAuthor p + p, .s-SingleAuthor div + p, .s-SingleAuthor div + div, .s-SingleAuthor p + div {
  margin-top: 16px;
}

.s-SingleNews {
  margin: 16px 0;
  line-height: 1.8em;
  font-size: 1.5rem;
}
@media screen and (max-width: 540px) {
  .s-SingleNews {
    margin-top: 8px;
    font-size: 1.4rem;
    line-height: 1.8em;
  }
}
.s-SingleNews .date {
  margin: 24px 0;
}
.s-SingleNews .upDate {
  font-size: 1.4rem;
}
.s-SingleNews .upDate::before {
  display: inline-block;
  content: "\f2f9";
  font-family: FontAwesome;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 900;
  padding-right: 4px;
}
.s-SingleNews .postDate {
  font-size: 1.4rem;
}
.s-SingleNews .section {
  margin: 32px;
}
.s-SingleNews .thumbnail,
.s-SingleNews .img {
  width: 280px;
  height: 280px;
  overflow: hidden;
  margin: 32px auto 48px auto;
  border-radius: 50%;
}
.s-SingleNews .thumbnail img,
.s-SingleNews .img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.s-SingleNews h1 {
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.8em;
}
.s-SingleNews h2 {
  display: flex;
  align-items: center;
  margin-top: 48px;
  margin-bottom: 32px;
  min-height: 56px;
  border-bottom: 3px solid #005bac;
  font-weight: 600;
  font-size: 2.8rem;
  line-height: 1.4em;
  padding: 8px 0 8px 88px;
  background-image: url("/wp-content/themes/media-template-kigyo/img/title_main.svg");
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 80px;
}
.s-SingleNews h3 {
  margin-top: 48px;
  margin-bottom: 32px;
  padding: 0 0 0 12px;
  border-left: 6px solid #005bac;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.4em;
}
@media screen and (max-width: 540px) {
  .s-SingleNews h3 {
    margin-top: 32px;
  }
}
.s-SingleNews .box {
  position: relative;
  box-sizing: border-box;
  background: rgba(4, 91, 172, 0.1);
  padding: 16px 24px 16px 16px;
}
.s-SingleNews .list {
  margin: -4px 0;
  position: relative;
}
.s-SingleNews .list li {
  line-height: 2em;
  margin: 4px 0 4px 1em;
  text-indent: -1em;
}
.s-SingleNews .list li:before {
  content: "・";
  color: #005bac;
}
.s-SingleNews .list em {
  color: #005bac;
  font-style: normal;
  font-weight: 600;
}
.s-SingleNews .list a {
  color: #005bac;
  font-weight: 600;
  border-bottom: 1px solid #005bac;
}
.s-SingleNews .list a:hover {
  color: rgba(0, 91, 172, 0.6);
  border-bottom: 1px solid rgba(0, 91, 172, 0.6);
}
.s-SingleNews .list span {
  color: #5a5858;
}
.s-SingleNews p + p, .s-SingleNews div + p, .s-SingleNews div + div, .s-SingleNews p + div {
  margin-top: 16px;
}

.l-Layout__wrapper {
  display: flex;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding-bottom: 48px;
  word-wrap: break-word;
}
@media screen and (max-width: 1024px) {
  .l-Layout__wrapper {
    padding: 0 6% 64px 6%;
  }
}
@media screen and (max-width: 768px) {
  .l-Layout__wrapper {
    display: block;
    width: 100%;
  }
}
.l-Layout__main {
  width: 100%;
  flex: 1 0 0%;
  margin-top: 24px;
  min-height: 300px;
  min-width: 260px;
}
.l-Layout__sub {
  width: 300px;
  margin: 24px 0 0 60px;
}
@media screen and (max-width: 768px) {
  .l-Layout__sub {
    width: 100%;
    margin-left: inherit;
  }
}
.l-Layout__inner {
  min-width: 714px;
  min-height: 400px;
  max-width: 1000px;
  margin: 0 auto;
  padding: 40px 0 64px 0;
}
@media screen and (max-width: 768px) {
  .l-Layout__inner {
    min-width: 100%;
  }
}
.l-Layout__content {
  margin: 20px 0;
}
.l-Layout__textArea {
  width: 720px;
}
.l-Layout__sectionBtn {
  display: flex;
  justify-content: center;
  margin: 32px 0 48px 0;
}
.l-Layout__banner--pc {
  margin: 0 auto;
  max-width: 728px;
  margin-bottom: 48px;
}
.l-Layout__banner--sp {
  display: none;
}
.l-Layout__bottom {
  color: #5a5858;
  padding: 4px 6%;
}
.l-Layout__bottom h1 {
  text-align: center;
  font-size: 1.6rem;
}
@media screen and (max-width: 540px) {
  .l-Layout__banner--pc {
    display: none;
  }
  .l-Layout__banner--sp {
    display: block;
    max-width: 300px;
    margin: 0 auto 48px auto;
  }
  .l-Layout__inner {
    min-height: 300px;
    max-width: 1000px;
    margin: 0 auto;
    padding: 40px 0 64px 0;
  }
  .l-Layout__wrapper {
    padding-bottom: 32px;
  }
}

.l-LayoutSection + .l-LayoutSection {
  margin-top: 56px;
}

.l-LayoutText {
  margin: 20px 0;
  font-size: 1.6rem;
}
.l-LayoutText a {
  color: #005bac;
  text-decoration: none;
}
.l-LayoutText a:hover {
  color: #005bac;
  opacity: 0.8;
}
.l-LayoutText a:active {
  color: #005bac;
  opacity: 0.6;
}

.l-LayoutBtn {
  display: flex;
  justify-content: center;
  margin: 32px 0 56px 0;
}
@media screen and (max-width: 540px) {
  .l-LayoutBtn {
    margin: 20px 0 48px 0;
  }
}
.l-LayoutBtn--left {
  display: flex;
  margin: 20px -8px;
}
.l-LayoutBtn__inner {
  margin: 0 8px;
}

.l-LayoutSub {
  margin-bottom: 40px;
}
.l-LayoutSub dt {
  margin-bottom: 20px;
}
.l-LayoutSub dd {
  margin: 0;
  padding: 0;
}
.l-LayoutSub .archiveLink a {
  border: 1px solid #eaeaea;
  background: #f6f6f6;
  display: block;
  padding: 8px;
  text-align: center;
}
.l-LayoutSub .archiveLink a:hover {
  opacity: 0.6;
}

.c-InputBox {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  width: 100%;
  margin: 20px auto;
  padding: 10px;
  border: 1px solid #eaeaea;
}
.c-InputBox__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 240px;
  height: 48px;
  margin: 10px 20px 10px 10px;
  padding: 0 16px;
  background: #f6f6f6;
  font-weight: 600;
  font-size: 1.6rem;
}
.c-InputBox__data {
  align-self: center;
  width: calc(100% - 300px);
  margin: 10px 10px 10px 20px;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.c-InputBox__data .c-Form__inputText,
.c-InputBox__data .c-Form__selectBox {
  margin: 4px 0;
}
.c-InputBox__dataText {
  word-wrap: break-word;
  font-size: 1.6rem;
  overflow-wrap: break-word;
}
.c-InputBox__dataText--unit {
  padding: 0 16px 0 4px;
}
.c-InputBox__dataText.space {
  padding-right: 200px;
}
.c-InputBox__errorText {
  margin-top: 4px;
  color: #ab1811;
  word-wrap: break-word;
  font-size: 1.6rem;
  overflow-wrap: break-word;
}
.c-InputBox__errorText.space {
  padding-right: 200px;
}
.c-InputBox__box {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.c-InputBox__box .c-Form__radio + .c-Form__radio {
  margin-left: 48px;
}
.c-InputBox__btn {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 164px;
}
.c-InputBox__btn .c-Btn__settings {
  padding: 0 36px;
  text-align: center;
}

.c-InputBoxSub {
  display: flex;
}
.c-InputBoxSub__title {
  width: 32px;
  padding: 14px 0 0 0;
  font-weight: 600;
}
.c-InputBoxSub__data {
  flex: 1 0 0%;
  padding-right: 16px;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.c-Table {
  width: 100%;
  margin-top: 24px;
  padding: 0;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
.c-Table__title {
  width: 853px;
  height: 56px;
  padding: 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background: #f6f6f6 0% 0% no-repeat padding-box;
  vertical-align: middle;
  text-align: left;
  font-weight: bold;
  font-weight: 600;
  font-size: 1.6rem;
}
.c-Table__date {
  width: 148px;
  height: 56px;
  padding: 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  background: #f6f6f6 0% 0% no-repeat padding-box;
  vertical-align: middle;
  text-align: left;
  font-weight: 600;
  font-size: 1.6rem;
}
.c-Table td {
  height: 56px;
  padding: 12px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
  font-size: 1.6rem;
}

.c-SearchForm {
  width: 100%;
  font-size: 1.6rem;
}
.c-SearchForm form {
  position: relative;
  border-radius: 16px;
  background: #fff;
  height: 32px;
  line-height: 30px;
  border: 1px solid #eaeaea;
}
.c-SearchForm input {
  border: none;
  width: 100%;
  height: 30px;
  border-radius: 16px;
  padding: 0 0 0 16px;
}
.c-SearchForm button {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4px;
  border: 0;
  background: none;
}
.c-SearchForm--page {
  margin-bottom: 24px;
}
.c-SearchForm--page form {
  position: relative;
  border-radius: 24px;
  background: #fff;
  height: 48px;
  border: 1px solid #eaeaea;
}
.c-SearchForm--page input {
  border: none;
  width: 100%;
  height: 46px;
  border-radius: 32px;
  padding: 0 0 0 16px;
}
.c-SearchForm--page button {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4px;
  border: 0;
  background: none;
}