@charset "UTF-8";
/*
Theme Name: FROGWELL
*/
@import url("./css/destyle.css");
html {
  background: #fff;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", sans-serif;
  font-size: 14px;
  color: #000;
  line-height: 1.5;
  letter-spacing: 0;
}

@media print, screen and (min-width: 768px) {
  html {
    font-size: 15px;
  }
}
@media print, screen and (min-width: 1000px) {
  html {
    font-size: 16px;
  }
}
body {
  margin: 0;
  padding: 0;
  position: relative;
}

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

div {
  box-sizing: border-box;
}

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

a {
  color: #000;
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}
a img:hover {
  opacity: 0.7;
}

p {
  line-height: 1.75;
  margin: 0 0 1em 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;
  letter-spacing: 0;
  margin: 0 0 1em 0;
}

h1 {
  font-size: 36px;
}

h2 {
  font-size: 36px;
}

h3 {
  font-size: 18px;
}

h4 {
  font-size: 16px;
}

h5 {
  font-size: 14px;
}

table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
}
table tr th,
table tr td {
  padding: 0.5em;
}

input[type=email],
input[type=text],
textarea {
  max-width: 100%;
  border: 1px solid #D8D8D8;
  background: #fff;
  padding: 0.4em;
  line-height: 1.5;
  box-sizing: border-box;
  font-size: 16px;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
}

.required {
  color: #FF0000;
}

.image {
  line-height: 1;
  overflow: hidden;
}
.image a img {
  transition: 0.5s all;
}
.image a img:hover {
  transform: scale(1.1, 1.1);
  opacity: 0.7;
}

.pc-only {
  display: none !important;
}

.sp-only {
  display: block !important;
}

@media print, screen and (min-width: 1000px) {
  .pc-only {
    display: block !important;
  }
  .sp-only {
    display: none !important;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.space-between {
  justify-content: space-between;
}

.flex-end {
  justify-content: flex-end;
}

.space-around {
  justify-content: space-around;
}

.center {
  justify-content: center;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-nowrap {
  flex-wrap: nowrap;
}

.text-small {
  font-size: 0.9em;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.mb0 {
  margin-bottom: 0em !important;
}

.mb1 {
  margin-bottom: 1em !important;
}

.mb2 {
  margin-bottom: 2em !important;
}

.mb3 {
  margin-bottom: 3em !important;
}

.mt0 {
  margin-top: 0em !important;
}

.mt1 {
  margin-top: 1em !important;
}

.mt2 {
  margin-top: 2em !important;
}

.mt3 {
  margin-top: 3em !important;
}

.mr1 {
  margin-right: 1em !important;
}

.mr2 {
  margin-right: 2em !important;
}

.ml1 {
  margin-left: 1em !important;
}

.ml2 {
  margin-left: 2em !important;
}

.pt0 {
  padding-top: 0 !important;
}

.pt1 {
  padding-top: 1em !important;
}

.maxW800 {
  max-width: 800px;
  margin: 1em auto !important;
}

.swiper-wrapper {
  align-items: stretch !important;
  box-sizing: border-box !important;
}

.swiper-slide {
  height: auto !important;
}

.textUpSpan {
  display: inline-block;
  letter-spacing: -5px;
}

.block {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

.block-s {
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  padding: 0 20px;
}

.block-m,
.block-m-nm {
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.block-l,
.block-l-nm {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.block-right {
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.block-column-2 {
  max-width: 1000px;
  margin: 0 auto;
}

.innner {
  padding: 0 20px;
}

.block,
.block-s,
.block-m,
.block-l,
.block-right {
  margin: 40px 0;
}

.displayNone {
  display: none !important;
}

@media print, screen and (min-width: 1000px) {
  .block,
  .block-s,
  .block-m,
  .block-l {
    padding: 0;
    margin: 60px auto;
    max-width: 1000px;
  }
  .block-right {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: calc(50% + 600px);
    margin: 60px 0 60px auto;
    padding: 0;
  }
  .block-right .l-contents {
    width: 230px;
  }
  .block-right .r-contents {
    width: calc(100% - 230px);
  }
}
@media print, screen and (min-width: 1100px) {
  .block-m,
  .block-m-nm,
  .block-l,
  .block-l-nm,
  .block-column-2 {
    max-width: 1600px;
    padding: 0 min(10vw, 130px);
  }
  .post-type-archive-report .block-m,
  .post-type-archive-report .block-l-nm,
  .tax-report_category .block-m,
  .tax-report_category .block-l-nm,
  .post-type-archive-seminar .block-m,
  .post-type-archive-seminar .block-l-nm,
  .post-type-archive-blogs .block-m,
  .post-type-archive-blogs .block-l-nm,
  .category-news .block-m,
  .category-news .block-l-nm,
  .tag .block-m,
  .tag .block-l-nm {
    padding: 0 min(0.01vw, 130px);
  }
}
@media print, screen and (min-width: 1200px) {
  .block-l,
  .block-l-nm {
    max-width: 1200px;
    padding: 0;
  }
}
.tag-list {
  color: #DE3636;
  text-decoration: none;
  margin-right: 0.5em;
}
.tag-list:hover {
  text-decoration: underline;
}

.btn1 {
  font-size: 14px;
  line-height: 1;
  background: #DE0024;
  border: 1px solid #DE0024;
  padding: 1em 2em;
  border-radius: 1.5em;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  transition: background-color 0.5s;
}
.btn1:hover {
  background: #fff;
  color: #DE0024;
}

p.btn2 > a,
a.btn2,
span.btn2 {
  position: relative;
  font-size: 14px;
  line-height: 3em;
  background: #DE0024;
  border: 1px solid #DE0024;
  padding: 0em 3em 0 1.5em;
  height: auto;
  border-radius: 1.5em;
  color: #fff !important;
  display: inline-block;
  text-decoration: none;
  vertical-align: middle;
  margin-bottom: 1em;
  transition: background-color 0.5s;
}
p.btn2 > a:hover,
a.btn2:hover,
span.btn2:hover {
  background: #fff;
  color: #DE0024 !important;
  text-decoration: none;
}
p.btn2 > a:hover::after,
a.btn2:hover::after,
span.btn2:hover::after {
  border-bottom: solid 1px #DE0024;
  border-right: solid 1px #DE0024;
}
p.btn2 > a::after,
a.btn2::after,
span.btn2::after {
  position: absolute;
  content: "";
  width: 17px;
  height: 5px;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
  transform: skew(45deg);
  top: 42%;
  right: 1em;
}
p.btn2 > a img,
a.btn2 img,
span.btn2 img {
  vertical-align: middle;
  width: 30px;
  height: auto;
  margin-right: 0.5em;
}
p.btn2 > a input,
a.btn2 input,
span.btn2 input {
  vertical-align: top;
}

.page-container p.btn2 > a,
.page-container a.btn2,
.page-container span.btn2 {
  text-decoration: none;
}
.page-container p.btn2 > a:hover,
.page-container a.btn2:hover,
.page-container span.btn2:hover {
  text-decoration: none;
}

@media print, screen and (min-width: 1000px) {
  .btn1 {
    font-size: 15px;
  }
  p.btn2 > a,
  a.btn2,
  span.btn2 {
    font-size: 18px;
  }
  p.btn2 > a img,
  a.btn2 img,
  span.btn2 img {
    width: 35px;
    height: auto;
  }
}
#loader {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
#loader #loader-logo {
  display: inline-block;
  width: 160px;
  height: auto;
  animation: slide-up 0.5s forwards;
}

@keyframes slide-up {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
#page {
  position: relative;
}

.sns-nav {
  padding: 0.5em 0;
}
.sns-nav p {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0;
}
.sns-nav p a {
  margin: 0 1em;
  display: inline-block;
  vertical-align: top;
}
.sns-nav .twitter img {
  width: 20px;
  height: auto;
}
.sns-nav .facebook img {
  width: 10px;
  height: auto;
}

@media print, screen and (min-width: 1000px) {
  .sns-nav p a {
    margin: 0 0 0 2em;
  }
  .sns-nav .twitter img {
    width: 33px;
    height: auto;
  }
  .sns-nav .facebook img {
    width: 16px;
    height: auto;
  }
}
#header {
  background: #DD0024;
  width: 100%;
  height: 60px;
  position: relative;
}
#header #logo {
  margin-left: 20px;
  height: 60px;
  display: flex;
  align-items: center;
}
#header #logo h1 {
  padding: 0;
  margin: 0;
  line-height: 1;
  padding: 13px 0;
  text-align: left;
  line-height: 1;
  font-size: inherit;
}
#header #logo h1 a {
  display: inline-block;
  color: #000;
  text-decoration: none;
}
#header #logo h1 a:hover {
  text-decoration: none;
}
#header #logo h1 a img {
  width: 166px;
  height: auto;
}

#header.fixed {
  position: fixed;
  z-index: 100;
  top: 0;
  animation: slide-down 0.5s forwards;
}
#header.fixed #g-nav {
  padding-top: 0;
  padding-bottom: 0;
}

@keyframes slide-down {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
#sp-header-nav {
  position: fixed;
  background: #DD0024;
  width: 100%;
  height: calc(100% - 60px);
  overflow: scroll;
  transition: all 0.5s;
  top: 60px;
  left: 100%;
  z-index: 101;
}

@media print, screen and (min-width: 1000px) {
  #header {
    height: auto;
    padding: 0 40px;
  }
  #header .row {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  #header #logo {
    width: 250px;
    margin-left: 0;
    margin-right: auto;
  }
  #header #logo h1 {
    text-align: center;
    padding: 0;
  }
  #header #logo h1 a img {
    width: 280px;
    height: auto;
  }
  #header .menu-btn {
    display: none;
  }
  #header #header-nav {
    overflow: visible;
    position: relative;
    background: none;
    width: calc(100% - 250px);
    height: auto;
    left: auto;
    padding: 30px 0 0;
    margin: 0;
  }
  #header #header-nav .sns-nav {
    display: none;
  }
  #header.fixed #logo {
    width: 250px;
    height: auto;
  }
  #header.fixed #sub-g-nav {
    display: none;
  }
  #header.fixed #header-nav {
    padding: 15px 0;
  }
}
#g-nav,
#sub-g-nav {
  display: none;
}

#g-nav ul li {
  margin-left: 10px;
}

#g-nav ul li a {
  letter-spacing: 0.07em;
}

#g-nav .sub-menu li a {
  font-size: 14px;
}

#sp-g-nav {
  display: block;
  margin: 0;
  margin: 50px 30px 0 30px;
}
#sp-g-nav ul {
  list-style-type: none;
  margin: 0;
  border-bottom: 1px solid #fff;
  padding-bottom: 1em;
}
#sp-g-nav ul li {
  width: 100%;
}
#sp-g-nav ul li a {
  width: 100%;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  line-height: 1;
  padding: 0;
  display: inline-block;
  text-decoration: none;
  border: none;
  padding: 1em 0em;
}
#sp-g-nav ul li a:hover {
  opacity: 0.7;
}
#sp-g-nav ul li .sub-menu {
  display: none;
  padding: 0;
  border: none;
}
#sp-g-nav ul li .sub-menu li {
  width: 100%;
  line-height: 1;
  margin-left: 0;
}
#sp-g-nav ul .menu-item-has-children {
  position: relative;
}
#sp-g-nav ul .menu-item-has-children::before, #sp-g-nav ul .menu-item-has-children::after {
  position: absolute;
  top: 20px;
  right: 0px;
  content: "";
  display: inline-block;
  width: 14px;
  height: 1px;
  background: #fff;
  transform: translateX(-50%);
}
#sp-g-nav ul .menu-item-has-children::after {
  transform: rotate(90deg);
  right: 7px;
}
#sp-g-nav ul .opened::after {
  background: none;
}
#sp-g-nav ul .opened .sub-menu {
  display: block;
}

#sp-sub-g-nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#sp-sub-g-nav ul li a {
  display: inline-block;
  text-decoration: none;
  padding: 1em 2em;
  color: #fff;
  font-size: 12px;
}

@media print, screen and (min-width: 1000px) {
  #g-nav,
  #sub-g-nav {
    display: block;
    margin: 0;
  }
  #g-nav ul,
  #sub-g-nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    list-style-type: none;
    margin: 0;
    border: none;
  }
  #g-nav ul li,
  #sub-g-nav ul li {
    position: relative;
    width: auto;
    margin-left: 30px;
    border: none;
  }
  #g-nav ul li a,
  #sub-g-nav ul li a {
    display: inline-block;
    text-decoration: none;
    color: #fff;
    font-size: 15px;
    letter-spacing: 0;
    padding: 1em 0;
  }
  #g-nav ul li a:hover,
  #sub-g-nav ul li a:hover {
    opacity: 0.7;
  }
  #g-nav ul li .sub-menu,
  #sub-g-nav ul li .sub-menu {
    visibility: hidden;
    opacity: 0;
    background: #333;
    position: absolute;
    justify-content: flex-start;
    top: 2.5em;
    left: 0;
    width: 22em;
    z-index: 8;
    transition: all 0.5s;
  }
  #g-nav ul li .sub-menu li,
  #sub-g-nav ul li .sub-menu li {
    margin-left: 0;
  }
  #g-nav ul li .sub-menu li a,
  #sub-g-nav ul li .sub-menu li a {
    display: block;
    padding: 1em;
  }
  #g-nav ul .opened .sub-menu,
  #sub-g-nav ul .opened .sub-menu {
    visibility: visible;
    opacity: 1;
  }
  #g-nav {
    padding-top: 1.5em;
    padding-bottom: 1.5em;
  }
  #sub-g-nav ul li a {
    font-size: 14px;
    background: #fff;
    color: #DD0024;
    padding: 0.6em 1.5em;
    border-radius: 2.5em;
    font-weight: 500;
    display: flex;
    line-height: 2.4em;
  }
  #sub-g-nav ul li a::before {
    display: inline-block;
    content: "";
    background-image: url(images/icon_mail_r.svg);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: contain;
    width: 40px;
    height: 30px;
  }
  #sp-g-nav,
  #sp-sub-g-nav {
    display: none;
  }
}
#menu-btn-check {
  display: none;
}
#menu-btn-check:checked ~ .menu-btn span {
  background-color: rgba(255, 255, 255, 0);
}
#menu-btn-check:checked ~ .menu-btn span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
  top: 0;
  transform: rotate(-45deg);
}
#menu-btn-check:checked ~ #sp-header-nav {
  left: 0;
}

.menu-btn {
  position: absolute;
  top: 0px;
  right: 0px;
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  z-index: 102;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
  content: "";
  display: block;
  height: 2px;
  width: 23px;
  background-color: #fff;
  position: absolute;
}
.menu-btn span:before {
  bottom: 8px;
}
.menu-btn span:after {
  top: 8px;
}

@media print, screen and (min-width: 1000px) {
  .menu-btn {
    display: none;
  }
}
.under-main {
  margin-bottom: 0;
}

@media print, screen and (min-width: 1000px) {
  .under-main {
    margin-bottom: 0;
  }
}
.medical_salesforce #main,
.maker_salesforce #main,
.tableau #main,
.powerbi #main,
.pardot-consulting #main,
.maker_processing #main,
.master-free-2 #main,
.master #main,
.dpc-data #main,
.case #main,
.master-qa #main {
  height: auto;
  width: 100%;
  background-image: url(images/bg_waveLine.png);
  background-repeat: no-repeat;
  background-position: 90% 160px;
  background-size: 520px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.6);
  background-blend-mode: lighten;
}

@media print, screen and (min-width: 1000px) {
  .medical_salesforce #main,
  .maker_salesforce #main,
  .tableau #main,
  .powerbi #main,
  .pardot-consulting #main,
  .maker_processing #main,
  .master-free-2 #main,
  .master #main,
  .dpc-data #main,
  .case #main,
  .master-qa #main {
    background-size: 1280px;
  }
}
#footer {
  background: #DD0024;
}
#footer .block-l {
  margin: 0 auto;
  padding: 20px 20px 0 20px;
}
#footer #footer-logo {
  width: 100%;
  margin-bottom: 1em;
}
#footer #footer-logo p {
  text-align: center;
  line-height: 1;
  margin: 0;
}
#footer #footer-logo p img {
  width: 166px;
  height: auto;
}
#footer #footer-nav {
  width: 100%;
}
#footer #copy {
  padding: 1em 0;
}
#footer #copy .copyright {
  margin: 0;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  color: #fff;
}

@media print, screen and (min-width: 1000px) {
  #footer .block-l {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    padding: 30px 20px 0 20px;
  }
  #footer #footer-logo {
    width: 250px;
    margin-bottom: 0;
    margin-right: 100px;
  }
  #footer #footer-logo p {
    text-align: left;
  }
  #footer #footer-logo p img {
    width: 260px;
    height: auto;
  }
  #footer #footer-nav {
    width: 460px;
  }
  #footer .sns-nav {
    width: 140px;
    padding: 0;
  }
}
#f-nav ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
#f-nav ul li {
  width: 50%;
  line-height: 1;
  margin-bottom: 1em;
}
#f-nav ul li a {
  color: #fff;
  text-decoration: none;
  font-size: 11px;
}
#f-nav ul li a:hover {
  text-decoration: underline;
  color: #fff;
}

@media print, screen and (min-width: 1000px) {
  #f-nav ul li a {
    font-size: 13px;
  }
}
#page-top {
  position: fixed;
  width: 70px;
  height: 70px;
  right: 20px;
  bottom: 20px;
  font-size: 10px;
  z-index: 9;
}
#page-top a {
  background: #232323;
  color: #fff;
  text-align: center;
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  text-decoration: none;
  transition: all 0.5s;
}
#page-top a:hover {
  opacity: 0.7;
}
#page-top img {
  width: 20px;
  height: auto;
}

@media print, screen and (min-width: 1000px) {
  #page-top {
    width: 80px;
    height: 80px;
    right: 60px;
    bottom: 60px;
    font-size: 11px;
  }
  #page-top a {
    width: 80px;
    height: 80px;
  }
  #page-top img {
    width: 30px;
    height: auto;
  }
}
#key-visual {
  width: 100%;
  position: relative;
  overflow: hidden;
  background: #e1e4e6;
  padding-top: 0;
  padding-bottom: 2em;
}
#key-visual #key-visualInner {
  margin: 0 auto;
  max-width: 1600px;
}
#key-visual #key-visualInner::after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  content: "";
  background: -moz-linear-gradient(top, #e1e4e6, #FFF);
  background: -webkit-linear-gradient(top, #e1e4e6, #FFF);
  background: linear-gradient(to bottom, #e1e4e6, #FFF);
  height: 50px;
  width: 100%;
}
#key-visual #key-visualInner #key-movie {
  width: 100%;
  height: auto;
}
#key-visual #key-visualInner #key-movie video {
  width: 100%;
  height: auto;
  outline: none;
  border: none;
  filter: drop-shadow(0px 0px #fff);
}
#key-visual #key-visualInner #key-title1,
#key-visual #key-visualInner #key-title2 {
  position: absolute;
  top: 50px;
  right: 0px;
  text-align: right;
  letter-spacing: 0.25em;
  margin: 0;
  line-height: 1;
}
#key-visual #key-visualInner #key-title1 span,
#key-visual #key-visualInner #key-title2 span {
  font-family: "Lato", sans-serif;
  background: #de0024;
  color: #fff;
  font-size: 20px;
  display: inline-block;
  padding: 0.5em;
  margin-bottom: 0.5em;
}
#key-visual #key-visualInner #key-title1 .sp-only,
#key-visual #key-visualInner #key-title2 .sp-only {
  display: inline-block !important;
}
#key-visual #key-visualInner #key-text {
  margin-top: 2em;
  text-align: center;
  font-size: 12px;
}
#key-visual #key-visualInner #key-text span {
  overflow: hidden;
  background: #de0024;
  color: #fff;
  display: inline-block;
  height: 2.2em;
  padding: 0 1em;
  margin-bottom: 0.1em;
  line-height: 2.2em;
}

@media print, screen and (min-width: 1000px) {
  #key-visual {
    position: relative;
    padding-top: 2em;
  }
  #key-visual #key-visualInner #key-movie {
    width: 85%;
    height: auto;
  }
  #key-visual #key-visualInner #key-movie video {
    width: 100%;
    height: auto;
  }
  #key-visual #key-visualInner #key-title1,
  #key-visual #key-visualInner #key-title2 {
    top: 120px;
    right: 30px;
  }
  #key-visual #key-visualInner #key-title1 span,
  #key-visual #key-visualInner #key-title2 span {
    font-size: 54px;
  }
  #key-visual #key-visualInner #key-title1 .sp-only,
  #key-visual #key-visualInner #key-title2 .sp-only {
    display: none !important;
  }
  #key-visual #key-visualInner #key-title1 span.pc-only,
  #key-visual #key-visualInner #key-title2 span.pc-only {
    display: inline-block !important;
  }
  #key-visual #key-visualInner #key-text {
    text-align: right;
    position: absolute;
    top: 250px;
    right: 30px;
  }
  #key-visual #key-visualInner #key-text span {
    letter-spacing: 0.09em;
    font-size: 18px;
    height: 3em;
    margin-bottom: 0.5em;
    line-height: 3em;
  }
}
.t-l-title {
  text-align: center;
  position: relative;
  padding: 30px 0;
  line-height: 1;
  font-size: 12px;
}
.t-l-title .icon {
  vertical-align: top;
  width: 30px;
  height: auto;
}
.t-l-title .en {
  font-family: "Lato", sans-serif;
  font-size: 30px;
  display: inline-block;
  line-height: 1;
  margin-bottom: 0.5em;
}
.t-l-title .line_t {
  display: inline-block;
  height: 20px;
  width: 1px;
  background: #000;
  position: absolute;
  left: 50%;
  top: 0px;
}
.t-l-title .line_b {
  display: inline-block;
  height: 20px;
  width: 1px;
  background: #000;
  position: absolute;
  left: 50%;
  bottom: 0px;
}

.t-m-title {
  text-align: center;
  line-height: 1;
  padding: 2em 0;
  font-size: 12px;
}
.t-m-title .icon {
  vertical-align: top;
  width: 28px;
  height: auto;
}
.t-m-title .en {
  font-family: "Lato", sans-serif;
  font-size: 24px;
  display: inline-block;
  line-height: 1;
  margin-bottom: 0.5em;
}

#lead-text {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin: -20px auto 0;
  width: 90%;
  z-index: 2;
  position: relative;
}
#lead-text #lead-textInner {
  display: inline-block;
  max-width: max-content;
  padding: 1em 1.5em;
  background: #fff;
  box-shadow: 0 5px 15px 0 rgba(0, 0, 0, 0.3);
}

@media print, screen and (min-width: 1000px) {
  #lead-text {
    font-size: 26px;
    margin-top: -80px;
  }
  #lead-text #lead-textInner {
    box-shadow: 0 10px 25px 0 rgba(0, 0, 0, 0.3);
  }
  .t-l-title {
    padding: 60px 0;
    font-size: 19px;
  }
  .t-l-title .icon {
    width: 42px;
    height: auto;
  }
  .t-l-title .en {
    font-size: 62px;
  }
  .t-l-title .line_t {
    content: "";
    height: 40px;
  }
  .t-l-title .line_b {
    height: 40px;
  }
  .t-m-title {
    text-align: left;
    font-size: 14px;
  }
  .t-m-title .icon {
    width: 34px;
    height: auto;
  }
  .t-m-title .en {
    font-size: 32px;
  }
}
.swiper-container {
  overflow: hidden;
}

.swiper-nav {
  text-align: center;
  margin-top: 1em;
}
.swiper-nav .swiper-pagination-bullets.swiper-pagination-horizontal {
  position: relative;
  bottom: auto;
  left: auto;
  width: auto;
  display: inline-block;
  line-height: 30px;
  vertical-align: top;
}
.swiper-nav .swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet {
  width: 40px;
  height: 2px;
  border-radius: 0;
  margin: 0;
  padding: 0;
  background: #DADADA;
  vertical-align: middle;
}
.swiper-nav .swiper-pagination-bullets.swiper-pagination-horizontal .pagination-bullet-active {
  background: #444444;
}
.swiper-nav .swiper-button-prev,
.swiper-nav .swiper-button-next {
  position: relative;
  left: auto;
  right: auto;
  display: inline-block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 30px;
  background: #000;
  margin: 0 10px;
}
.swiper-nav .swiper-button-prev:hover,
.swiper-nav .swiper-button-next:hover {
  opacity: 0.7;
}
.swiper-nav .swiper-button-prev::after,
.swiper-nav .swiper-button-next::after {
  font-size: 0;
}
.swiper-nav .swiper-button-prev::after {
  position: absolute;
  content: "";
  width: 17px;
  height: 5px;
  border-bottom: solid 1px #fff;
  border-left: solid 1px #fff;
  transform: skew(-45deg);
  top: 42%;
  right: 0px;
}
.swiper-nav .swiper-button-next {
  background: #DD0024;
}
.swiper-nav .swiper-button-next::after {
  position: absolute;
  content: "";
  width: 17px;
  height: 5px;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
  transform: skew(45deg);
  top: 42%;
  left: 0px;
}

#service-slider-thumbs {
  overflow: hidden;
}

#service-thumbs {
  display: none;
}
#service-thumbs .swiper-slide {
  cursor: pointer;
  background: #000;
  border: none;
}
#service-thumbs .swiper-slide:hover {
  color: #fff;
  background: #000;
  opacity: 0.7;
}
#service-thumbs .swiper-slide-thumb-active {
  background: #DE0024;
  border: none;
}
#service-thumbs .swiper-slide-thumb-active:hover {
  color: #fff;
  background: #DE0024;
}

#service-slider .swiper-slide {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#service-slider .swiper-slide .texts h3 {
  position: relative;
  margin-bottom: 1.5em;
}
#service-slider .swiper-slide .texts h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -15px;
  display: inline-block;
  width: 60px;
  height: 5px;
  background-color: #DD0024;
}
#service-slider .swiper-slide .texts a {
  position: relative;
  color: #DF3636;
  display: inline-block;
  border: 1px solid #DF3636;
  padding: 1em 3em 1em 2em;
  text-decoration: none;
  transition: all 0.5s;
}
#service-slider .swiper-slide .texts a::after {
  position: absolute;
  content: "";
  width: 13px;
  height: 5px;
  border-bottom: solid 1px #DF3636;
  border-right: solid 1px #DF3636;
  transform: skew(45deg);
  top: 42%;
  right: 20px;
}
#service-slider .swiper-slide .texts a:hover {
  background: #DF3636;
  color: #fff;
}
#service-slider .swiper-slide .texts a:hover::after {
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
}

@media print, screen and (min-width: 1000px) {
  #service-thumbs {
    /*margin-top: 2em;*/
    display: block;
  }
  #service-thumbs .swiper-slide {
    text-align: center;
  }
  #service-thumbs .btn1 {
    font-size: 14px;
  }
  #service-nav {
    display: none;
  }
  #service-slider .swiper-slide .texts {
    width: 500px;
    padding-left: 1px;
  }
  #service-slider .swiper-slide .texts h3 {
    font-size: 23px;
  }
  #service-slider .swiper-slide .texts p {
    font-size: 14px;
  }
  #service-slider .swiper-slide .texts .link {
    text-align: left;
  }
  #service-slider .swiper-slide .texts .link a {
    font-size: 15px;
  }
  #service-slider .swiper-slide .texts .link a::after {
    position: absolute;
    content: "";
    width: 13px;
    height: 3px;
  }
  #service-slider .swiper-slide .image {
    width: 430px;
  }
}
#news .block-right .l-contents {
  width: 230px;
}
#news .block-right .r-contents {
  width: calc(100% - 230px);
}
#news .news-lists {
  margin-bottom: 0px;
}

.news-lists {
  list-style-type: none;
  margin: 0;
  padding: 0;
  margin-bottom: 60px;
}
.news-lists li {
  padding: 1em 0;
  border-bottom: 1px solid #DADADA;
}
.news-lists li .date {
  display: inline-block;
  margin: 0 0.5em 0.5em 0;
}
.news-lists li .title {
  margin: 0;
}
.news-lists li .title a {
  display: inline-block;
  margin: 0.5em 0;
  text-decoration: none;
  font-size: 15px;
}
.news-lists li .title a:hover {
  opacity: 0.7;
}

@media print, screen and (min-width: 1000px) {
  #news .news-lists {
    margin-bottom: 0;
  }
  #news .block {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #news .block .l-contents {
    width: 230px;
  }
  #news .block .r-contents {
    width: calc(100% - 230px);
  }
  .news-lists {
    margin-bottom: 100px;
  }
  .news-lists li .title a {
    font-size: 20px;
  }
}
.post-categories {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: inline-block;
}
.post-categories li {
  display: inline-block;
  padding: 0;
  border: none;
}
.post-categories a {
  margin: 0 0 0.5em;
  display: inline-block;
  color: #DE3636;
  border: 1px solid #DE3636;
  padding: 0.3em 0.6em;
  text-decoration: none;
  margin-right: 0.5em;
}
.post-categories a:hover {
  text-decoration: none;
  background: #DD0024;
  color: #fff;
  opacity: 1;
}

.post-status-r,
.post-status-g {
  margin: 0 0 0.5em;
  display: inline-block;
  color: #fff;
  background: #DD0024;
  padding: 0.3em 2em;
  text-decoration: none;
}

.post-status-g {
  background: #808183;
}

#link-card-slider .swiper-wrapper {
  padding-bottom: 20px;
}
#link-card-slider .swiper-wrapper .swiper-slide {
  background: linear-gradient(161.79deg, rgba(139, 187, 239, 0.2) 0%, rgba(255, 120, 128, 0.1) 100%);
}
#link-card-slider .swiper-wrapper .swiper-slide a {
  /* padding: 2em; */
  display: block;
  text-decoration: none;
  height: 100%;
  background-image: url(images/bg_waveLine.png);
  background-repeat: no-repeat;
  background-position: 70% -20px;
  background-color: rgba(255, 255, 255, 0.6);
  background-blend-mode: lighten;
}
#link-card-slider .swiper-wrapper .swiper-slide a:hover {
  opacity: 0.7;
}
#link-card-slider .swiper-wrapper .swiper-slide h3 {
  font-size: 28px;
}

#report {
  font-size: 18px;
}
#report .image {
  position: relative;
  border: 1px solid #e9e9e9;
}
#report .image a {
  display: block;
}
#report .category {
  display: inline-block;
  line-height: 1;
  font-size: 14px;
  padding: 0.5em;
  border: 1px solid #DE3636;
  color: #DE3636;
  text-decoration: none;
}
#report .category:hover {
  background: #DE3636;
  color: #fff;
}
#report .title a {
  text-decoration: none;
  color: #727272;
  font-size: 15px;
  font-weight: normal;
}
#report .title a:hover {
  text-decoration: underline;
}
#report .client {
  font-size: 12px;
}

@media print, screen and (min-width: 1000px) {
  #report .category {
    font-size: 16px;
  }
  #report .title {
    font-size: 16px;
  }
  #report .title a {
    font-size: 16px;
  }
  #report .client {
    font-size: 13px;
    position: relative;
    padding-top: 1em;
  }
  #report .client::before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    height: 1px;
    background-color: #999;
  }
}
#blog .image,
#seminar .image {
  position: relative;
}
#blog .image .icon,
#seminar .image .icon {
  display: inline-block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 10px;
  top: 10px;
}
#blog .image .icon img,
#seminar .image .icon img {
  width: 100%;
  height: auto;
}
#blog .date-category .date,
#seminar .date-category .date {
  font-size: 12px;
  margin-right: 1em;
}
#blog .date-category .category,
#seminar .date-category .category {
  display: inline-block;
  line-height: 1;
  font-size: 12px;
  padding: 0.5em;
  border: 1px solid #DE3636;
  color: #DE3636;
  text-decoration: none;
}
#blog .date-category .category:hover,
#seminar .date-category .category:hover {
  background: #DE3636;
  color: #fff;
}
#blog .title,
#seminar .title {
  margin: 0 0 0.5em;
  font-size: 15px;
}

#blog-nav {
  display: none;
}

#seminar-nav {
  display: none;
}

@media print, screen and (min-width: 1000px) {
  #blog .block-right,
  #seminar .block-right {
    width: calc(50% + 500px);
    margin-left: auto;
  }
  #blog .swiper-slide,
  #seminar .swiper-slide {
    max-width: 350px;
    width: 270px;
    padding-right: 40px !important;
  }
  #blog .mrx,
  #seminar .mrx {
    width: 770px;
  }
  #blog .title,
  #seminar .title {
    font-size: 20px;
    font-weight: bold;
    border-bottom: 1px solid #DADADA;
    padding-bottom: 0.5em;
  }
  #blog .title a,
  #seminar .title a {
    text-decoration: none;
  }
  #blog .title a:hover,
  #seminar .title a:hover {
    text-decoration: underline;
  }
  #blog .image,
  #seminar .image {
    position: relative;
  }
  #blog .image .icon,
  #seminar .image .icon {
    width: 60px;
    height: 60px;
  }
  #blog-nav {
    text-align: left;
    display: block;
  }
  #seminar-nav {
    text-align: left;
    display: block;
  }
}
#blog-button-prev,
#seminar-button-prev {
  width: 50px;
  border-radius: 15px 0 0 15px/15px 0 0 15px;
  background: #DD0024;
  margin: 0;
}
#blog-button-prev::after,
#seminar-button-prev::after {
  right: 10px;
}

#blog-button-next,
#seminar-button-next {
  width: 50px;
  border-radius: 0 15px 15px 0/0 15px 15px 0;
  margin: 0;
}
#blog-button-next::after,
#seminar-button-next::after {
  left: 10px;
}

@media print, screen and (min-width: 1200px) {
  #blog .block-right,
  #seminar .block-right {
    width: calc(50% + 600px);
  }
  #blog .mrx,
  #seminar .mrx {
    width: 970px;
  }
}
@media print, screen and (min-width: 1310px) {
  #blog .swiper-slide,
  #seminar .swiper-slide {
    width: 350px;
    padding-right: 50px !important;
  }
}
#recruit .r-contents {
  position: relative;
}
#recruit .title {
  position: absolute;
  bottom: 60px;
  left: -5px;
  text-align: left;
  letter-spacing: 0.25em;
  line-height: 1.5;
  color: #fff;
  font-size: 15px;
  z-index: 1;
}
#recruit .title span {
  background: #de0024;
  display: inline-block;
  padding: 0.5em;
  margin-bottom: 0.5em;
}
#recruit .title span#r-TxtSecond {
  font-size: 12px;
  letter-spacing: 0.1em;
}
#recruit .image {
  width: 100%;
  height: auto;
}

@media print, screen and (min-width: 1000px) {
  #recruit .block-right {
    max-width: 1000px;
    margin: 0 auto;
    padding-bottom: 3em;
  }
  #recruit .title {
    bottom: 30px;
    left: -10px;
    font-size: 30px;
  }
  #recruit .title span#r-TxtSecond {
    font-size: 21px;
  }
}
@media print, screen and (min-width: 1200px) {
  #recruit .block-right {
    max-width: 1200px;
    margin: 0 auto;
  }
}
#contact {
  background: #DE0024;
}
#contact .block-l {
  margin: 0 auto;
  padding: 1em;
}
#contact .btns {
  text-align: center;
  margin: 0;
}
#contact .btns .btn2 {
  background: #fff;
  color: #DE0024 !important;
  min-width: 290px;
  padding: 0;
  position: relative;
  font-size: 12px;
}
#contact .btns .btn2:hover {
  border: solid 1px #fff;
  background: #DE0024;
  color: #fff !important;
}
#contact .btns .btn2:hover::after {
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff;
}
#contact .btns .btn2::after {
  border-bottom: solid 1px #DE0024;
  border-right: solid 1px #DE0024;
}
#contact .btns .icon-mail {
  background-image: url(images/icon_mail_r.svg);
  background-repeat: no-repeat;
  background-position: 1em center;
  background-size: 25px auto;
}
#contact .btns .icon-mail:hover {
  background-image: url(images/icon_mail_w.svg);
  background-repeat: no-repeat;
  background-position: 1em center;
  background-size: 25px auto;
}
#contact .btns .icon-hospital {
  background-image: url(images/icon_hospital_r.svg);
  background-repeat: no-repeat;
  background-position: 1em center;
  background-size: 25px auto;
}
#contact .btns .icon-hospital:hover {
  background-image: url(images/icon_hospital_w.svg);
  background-repeat: no-repeat;
  background-position: 1em center;
  background-size: 25px auto;
}
#contact .t-m-title {
  color: #fff;
  margin-bottom: 0;
}
#contact .t-m-title span {
  color: #fff;
}
#contact p {
  color: #fff;
}

@media print, screen and (min-width: 1000px) {
  #contact .block-l {
    margin: 0 auto;
  }
  #contact .btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #contact .btns .btn2 {
    width: 430px;
    font-size: 18px;
  }
  #contact .btns .icon-mail {
    background-size: 30px auto;
  }
  #contact .btns .icon-mail:hover {
    background-size: 30px auto;
  }
  #contact .btns .icon-hospital {
    background-size: 30px auto;
  }
  #contact .btns .icon-hospital:hover {
    background-size: 30px auto;
  }
}
.h-cards {
  margin-bottom: 60px;
}

.h-card {
  margin: 0 0 40px 0;
}
.h-card .imagestexts {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}
.h-card .imagestexts .bg {
  background: linear-gradient(161.79deg, rgba(139, 187, 239, 0.2) 0%, rgba(255, 120, 128, 0.1) 100%);
  width: 90%;
  height: 90%;
  max-width: 880px;
  position: absolute;
  right: 0;
  top: 50px;
  z-index: 1;
}
.h-card .imagestexts .image {
  width: 100%;
  max-width: 380px;
  z-index: 2;
  margin-bottom: 2em;
  position: relative;
}
.h-card .imagestexts .image .icon {
  display: inline-block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 10px;
  top: 10px;
}
.h-card .imagestexts .image .icon img {
  width: 100%;
  height: auto;
}
.h-card .imagestexts .image img {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.h-card .imagestexts .texts {
  width: 100%;
  max-width: 660px;
  z-index: 2;
  padding-right: 1em;
}
.h-card .imagestexts .texts .title {
  font-size: 18px;
  margin: 0 0 0.5em 0;
}
.h-card .imagestexts .texts .title a {
  text-decoration: none;
}
.h-card .imagestexts .texts .date {
  font-size: 12px;
  padding: 0.3em 0;
}
.h-card .imagestexts .texts .category {
  font-size: 12px;
}
.h-card .imagestexts .texts .category a {
  display: inline-block;
  color: #DF3636;
  padding: 0.5em;
  border: 1px solid #DF3636;
  text-decoration: none;
}
.h-card .imagestexts .texts .category a:hover {
  background: #DF3636;
  color: #fff;
}

@media print, screen and (min-width: 1000px) {
  .h-cards {
    margin-bottom: 100px;
  }
  .h-card {
    margin: 0 0 60px 0;
  }
  .h-card .imagestexts .bg {
    width: 70%;
    height: 90%;
  }
  .h-card .imagestexts .image {
    width: 40%;
    margin-bottom: 0;
  }
  .h-card .imagestexts .image .icon {
    width: 60px;
    height: 60px;
  }
  .h-card .imagestexts .texts {
    width: 60%;
    padding-left: 2em;
  }
  .h-card .imagestexts .texts .title {
    font-size: 24px;
    margin: 0 0 1em 0;
  }
  .h-card .imagestexts .texts .date {
    font-size: 16px;
  }
}
.post-type-archive-report .h-card .image img {
  border: 1px solid #e9e9e9;
}

.single h2 {
  font-size: 22px;
}
.single .page-container ol {
  list-style-position: inside;
}

.single-report .page-container .image,
.single-seminar .page-container .image {
  width: 100%;
}

@media print, screen and (min-width: 1000px) {
  .single h2 {
    font-size: 36px;
  }
  .single-report .page-container .image {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  .single-report .page-container .image img {
    border: 1px solid #e9e9e9;
  }
  .single-seminar .page-container .image,
  .single-blogs .page-container .image {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
.single h2 {
  font-size: 18px;
  margin-bottom: 2em;
}

.single h3 {
  font-size: 18px;
}

.single h4 {
  font-size: 18px;
}

.single .main-title {
  font-size: 22px;
}

.single .bnr_wrap {
  margin-bottom: 30px;
}
.single .bnr_wrap .bnr {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.single .bnr_wrap .bnr + .bnr {
  margin-top: 20px;
}

@media print, screen and (min-width: 1000px) {
  .single .bnr_wrap {
    margin-bottom: 40px;
  }
  .single .bnr_wrap .bnr + .bnr {
    margin-top: 40px;
  }
}
.page-container .style2a {
  background: #f7f7f7;
  padding: 18px 15px 16px !important;
  margin: 0 0 2em 0;
  border-left: 9px solid #4865b2;
  border-bottom: none;
  border-top: none;
  border-right: none;
}

.page-container .style3a {
  padding: 8px 15px 6px !important;
  margin: 0 0 2em 0;
  border-left: 5px solid #2196f3 !important;
  border-bottom: none;
  border-top: none;
  border-right: none;
}

.page-container .style4a {
  padding: 0 !important;
  margin: 0 0 2em 0;
  font-weight: bold;
  border-left: none;
  border-bottom: none;
}

.page-container .style4a::after {
  display: none;
}

.page-container .style5a {
  padding: 0.5em 0.8em 0.3em 1em;
  margin: 0 0 2em 0;
  /*font-size:18px;*/
  background: #f5f5f5;
  -webkit-box-shadow: 0px 2px 0px 0px #f2f2f2;
  box-shadow: 0px 2px 0px 0px #f2f2f2;
}

@media print, screen and (min-width: 1000px) {
  .single h2 {
    font-size: 24px;
    margin-bottom: 2em;
  }
  .single h3 {
    font-size: 24px;
  }
  .single .main-title {
    font-size: 36px;
  }
}
.wp-pagenavi {
  text-align: center;
  margin-bottom: 60px;
}
.wp-pagenavi a,
.wp-pagenavi span {
  padding: 0;
  margin: 0 7px;
  display: inline-block;
  width: 35px;
  height: 35px;
  vertical-align: middle;
  line-height: 35px;
}
.wp-pagenavi a {
  color: #7C8080;
  border: 1px solid #C1C1C1;
}
.wp-pagenavi span.extend {
  border: none;
  margin: 0;
  width: auto;
}
.wp-pagenavi span.current {
  color: #fff;
  border: 1px solid #DF3636;
  background: #DF3636;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  color: #DF3636;
  border: 1px solid #DF3636;
  background: #fff;
}
.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover {
  color: #fff;
  border: 1px solid #DF3636;
  background: #DF3636;
}

@media print, screen and (min-width: 1000px) {
  .wp-pagenavi {
    margin-bottom: 100px;
  }
}
.page-title {
  /*border-bottom: 1px solid #E5E5E5;*/
}
.page-title .block-m {
  margin-top: 0;
  margin-bottom: 0;
}
.page-title h2 {
  font-size: 20px;
  line-height: 1.25;
  margin: 0;
  padding: 1.5em 0;
  display: flex;
  align-items: flex-start;
}
.page-title h2 .icon {
  margin-right: 0.5em;
}
.page-title h2 .icon img {
  width: 21px;
  height: 24px;
}

.breadcrumbs {
  padding: 1em 0;
  color: #A7A7A7;
}
.breadcrumbs .block-m {
  margin-top: 0;
  margin-bottom: 0;
}
.breadcrumbs a,
.breadcrumbs span {
  font-size: 10px;
}
.breadcrumbs a {
  text-decoration: none;
}
.breadcrumbs a:hover {
  text-decoration: underline;
}
.breadcrumbs a span {
  color: #A7A7A7;
}
.breadcrumbs .gt {
  padding: 0 1em;
}
.breadcrumbs span {
  color: #000;
}

@media print, screen and (min-width: 1000px) {
  .page-title .block-m {
    margin-top: 0;
    margin-bottom: 0;
  }
  .page-title h2 {
    font-size: 38px;
    /*align-items: center;*/
  }
  .page-title h2 .icon img {
    width: 42px;
    height: 48px;
  }
  .breadcrumbs a,
  .breadcrumbs span {
    font-size: 12px;
  }
}
.page-container {
  /*
  .icon-graph {
  	&::before {
  		background-image: url("images/icon_graph1.svg");
  	}
  }
  .icon-hospital {
  	&::before {
  		background-image: url("images/icon_hospital1.svg");
  	}
  }
  */
  margin: 0 auto;
  display: block;
}
.page-container .post-categories a {
  color: #DD0024;
  text-decoration: none;
}
.page-container .post-categories a:hover {
  color: #fff;
  text-decoration: none;
}
.page-container a {
  color: #337ab7;
  text-decoration: underline;
}
.page-container a:hover {
  color: #23527c;
  text-decoration: underline;
}
.page-container .blank {
  padding-right: 22px;
  background-image: url(images/icon_blank.svg);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 15px 15px;
}
.page-container p {
  margin-bottom: 2em;
}
.page-container h3 {
  margin: 0 0 2em 0;
  border-left: 1px solid #DE0024;
  font-size: 18px;
  padding-left: 1em;
}
.page-container h4 {
  font-size: 16px;
  position: relative;
  padding-left: 3.5em;
  margin: 1em 0;
}
.page-container h4::after {
  content: "";
  position: absolute;
  background: #DE0024;
  width: 2em;
  height: 2px;
  top: 50%;
  left: 0;
}
.page-container table th,
.page-container table td {
  padding: 2em 1em;
  border: 1px solid #e5e5e5;
  background-color: rgba(255, 255, 255, 0.8);
}
.page-container table th {
  background-color: #DEDEDE;
}
.page-container .n-table {
  table-layout: auto;
}
.page-container .n-table th {
  border-left: none;
  border-right: none;
  background: none;
  width: auto;
}
.page-container .n-table td {
  border-left: none;
  border-right: none;
}
.page-container .bgAnalytics {
  height: auto;
  width: 100%;
  max-width: 1400px;
  background-image: url("images/img-analytics.svg");
  background-repeat: no-repeat;
  background-position: 50% 310px;
  background-size: 690px;
  margin: 0 auto;
  /* 
  table {
  }
  */
}
.page-container ul {
  list-style-type: disc;
  list-style-position: inside;
  margin-bottom: 2em;
}
.page-container ul li {
  margin-bottom: 0.5em;
}
.page-container ol {
  list-style-type: decimal;
  list-style-position: outside;
  margin-bottom: 2em;
}
.page-container ol li {
  margin-bottom: 0.5em;
}
.page-container .table-gray table th,
.page-container .table-gray table td {
  background: #fff;
  border: 1px solid #E5E5E5;
}
.page-container .table-gray table th {
  background-color: #C1C1C1;
}
.page-container .image {
  margin-bottom: 2em;
}
.page-container .icon-graph,
.page-container .icon-hospital {
  padding: 10px 0;
  position: relative;
  /*font-weight: bold;*/
  margin: 0;
  vertical-align: middle;
  padding-top: 120px;
  font-size: 24px;
}
.page-container .icon-graph::before,
.page-container .icon-hospital::before {
  content: "";
  position: absolute;
  left: calc(50% - 50px);
  top: 0;
  width: 100px;
  height: 100px;
  background-repeat: no-repeat;
}
.page-container .serviceLeadTxt {
  padding-top: 10px !important;
  padding-bottom: 20px !important;
}
.page-container .serviceLeadTxt .icon-graph,
.page-container .serviceLeadTxt .icon-hospital {
  background: linear-gradient(161.79deg, rgba(139, 187, 239, 0.2) 0%, rgba(255, 120, 128, 0.1) 100%);
  display: inline-block;
  padding: 0.9em 1.6em;
  line-height: 1.55em;
  font-size: 15px;
}
.page-container .icon-cloud {
  vertical-align: middle;
  margin-bottom: 2em;
  border: none;
}
.page-container .icon-cloud strong {
  display: inline-block;
  font-weight: bold;
  position: relative;
  margin-left: 80px;
  font-weight: normal;
  background: linear-gradient(transparent 60%, rgba(222, 0, 36, 0.2) 60%);
}
.page-container .icon-cloud strong::before {
  content: "";
  position: absolute;
  left: -80px;
  top: calc(50% - 35px);
  width: 70px;
  height: 70px;
  background-image: url("images/icon_cloud1.svg");
  background-repeat: no-repeat;
}
.page-container .inner {
  padding: 40px 20px;
  margin: 0 auto;
}
.page-container .gr-block {
  background: linear-gradient(161.79deg, rgba(139, 187, 239, 0.2) 0%, rgba(255, 120, 128, 0.1) 100%);
}
.page-container .black-block {
  background: #7b8191;
  position: relative;
}
.page-container .black-block::after {
  position: absolute;
  content: "";
  border-top: 30px solid #7b8191;
  border-right: 40px solid transparent;
  border-left: 40px solid transparent;
  bottom: -30px;
  left: calc(50% - 20px);
}
.page-container .black-block ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style-type: none;
  margin-bottom: -2em;
}
.page-container .black-block ul li {
  width: 46%;
  color: #fff;
  position: relative;
  padding-left: 2em;
  padding-right: 1em;
  box-sizing: border-box;
  margin-bottom: 2em;
}
.page-container .black-block ul li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 20px;
  height: 20px;
  background: #fff;
}
.page-container .black-block ul li::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 5px;
  left: 4px;
  width: 25px;
  height: 10px;
  border-left: 3px solid #7386D8;
  border-bottom: 3px solid #7386D8;
  transform: rotate(-45deg);
}
.page-container .black-block h3,
.page-container .black-block h4,
.page-container .black-block p {
  color: #fff;
  border: none;
}
.page-container .blackOther-block {
  background: #79818E;
  color: #fff;
}
.page-container .blackOther-block .boxBlackWrap .wp-block-columns {
  gap: 0 !important;
}
.page-container .blackOther-block .boxBlackWrap .wp-block-columns .wp-block-column {
  background: #687584;
  padding: 0.5em 2em;
  margin-bottom: 2em;
}
.page-container .blackOther-block .boxBlackWrap .wp-block-columns .wp-block-column h4 {
  font-size: 20px;
  margin-bottom: 1.5em;
  padding-bottom: 1em;
  padding-left: 0;
  border-bottom: 1px solid #79818E;
}
.page-container .blackOther-block .boxBlackWrap .wp-block-columns .wp-block-column h4::after {
  display: none;
}
.page-container .blackOther-block .boxBlackWrap .wp-block-columns .wp-block-column ul li {
  font-size: 14px;
}
.page-container .white-block {
  background: #fff;
  position: relative;
}
.page-container .white-block::after {
  position: absolute;
  content: "";
  border-top: 30px solid #fff;
  border-right: 40px solid transparent;
  border-left: 40px solid transparent;
  bottom: -30px;
  left: calc(50% - 20px);
}
.page-container .gray-block {
  background: #F7F7F7;
  position: relative;
}
.page-container .gray-block::after {
  position: absolute;
  content: "";
  border-top: 30px solid #F7F7F7;
  border-right: 40px solid transparent;
  border-left: 40px solid transparent;
  bottom: -30px;
  left: calc(50% - 20px);
}
.page-container .d-gray-block {
  background: #DBDBDB;
}
.page-container .gr-box {
  background: linear-gradient(161.79deg, rgba(139, 187, 239, 0.2) 0%, rgba(255, 120, 128, 0.1) 100%);
  padding: 2em;
  margin: 0 0 1em 0;
}
.page-container ul.gr-box li:last-child {
  margin-bottom: 0;
}
.page-container .border-box {
  border: 1px solid #DEDEDE;
  padding: 2em;
  margin: 0 0 1em 0;
}
.page-container .flow-num {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
.page-container .flow-num li {
  position: relative;
  border: 1px solid #D2D6DB;
  border-radius: 10px;
  list-style: none;
  margin-bottom: 30px;
  padding: 2em 2em 2em 4em;
  counter-increment: li;
  margin-left: 1em;
}
.page-container .flow-num li strong {
  font-size: 1.25em;
  margin-bottom: 1em;
  display: inline-block;
  border-bottom: 7px solid #DF3636;
}
.page-container .flow-num li:last-child::before {
  width: 0;
  height: 0;
}
.page-container .flow-num li::after {
  font-size: 1.25em;
  font-weight: bold;
  content: counter(li, decimal-leading-zero);
  margin-right: 1em;
  background: #DF3636;
  color: #ffffff;
  border-radius: 50%;
  text-align: center;
  width: 3em;
  height: 3em;
  position: absolute;
  left: -1.5em;
  top: 1em;
  line-height: 3em;
}
.page-container .flow-num li::before {
  content: "";
  position: absolute;
  bottom: -31px;
  left: 50%;
  width: 30px;
  height: 30px;
  background: #FCDBE8;
}
.page-container .flow-num.whiteLi li {
  background: #fff;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.2);
}
.page-container .flow-num.whiteLi li::before {
  display: none;
}
.page-container .flow-num.whiteLi li::after {
  background: #fff;
  color: #DF3636;
  border: 1px solid #DF3636;
  top: 0.5em;
}
.page-container .client {
  font-size: 16px;
  font-weight: bold;
  position: relative;
}
.page-container .client::after {
  position: absolute;
  content: "";
  background: #DBDBDB;
  width: 50px;
  height: 1px;
  left: 0;
  top: -0.5em;
}
.page-container .category {
  font-size: 16px;
  display: inline-block;
  line-height: 1;
  padding: 0.5em;
  border: 1px solid #DE3636;
  color: #DE3636;
  text-decoration: none;
}
.page-container img.aligncenter {
  margin: 0 auto;
  display: block;
}

@media print, screen and (min-width: 1000px) {
  .page-container h3 {
    font-size: 24px;
  }
  .page-container h4 {
    font-size: 18px;
  }
  .page-container .icon-graph,
  .page-container .icon-hospital {
    padding: 0;
    /*padding-left: 120px;*/
  }
  .page-container .icon-graph::before,
  .page-container .icon-hospital::before {
    left: 0;
    top: calc(50% - 50px);
    width: 100px;
    height: 100px;
    background-repeat: no-repeat;
  }
  .page-container .serviceLeadTxt .icon-graph,
  .page-container .serviceLeadTxt .icon-hospital {
    line-height: 1.75em;
    font-size: 24px;
  }
  .page-container .inner {
    max-width: 1000px;
    padding: 60px 0;
    margin: 0 auto;
  }
  .page-container .client {
    font-size: 16px;
    font-weight: bold;
  }
  .page-container .category {
    font-size: 18px;
  }
  .page-container .bgAnalytics {
    background-size: contain;
    background-position: center;
  }
  .page-container ul.gr-box {
    margin: 0 0 1em 9em;
  }
  .page-container .blackOther-block .boxBlackWrap .wp-block-columns {
    gap: 2em !important;
  }
}
@media print, screen and (min-width: 1100px) {
  .page-container .inner {
    max-width: 1600px;
    padding-left: min(10vw, 130px);
    padding-right: min(10vw, 130px);
  }
}
@media print, screen and (min-width: 1000px) {
  .block-column-2 {
    display: flex;
  }
  .block-column-2 .block-side {
    width: 270px;
    padding: 0;
  }
  .block-column-2 .block-main {
    flex: 1;
    padding: 0;
  }
}
.select-term {
  display: block;
  line-height: 2em;
}
.select-term .title {
  padding: 0.5em;
}
.select-term .custom-select {
  position: relative;
}
.select-term .custom-select:after {
  width: 8px;
  height: 8px;
  content: "";
  position: absolute;
  right: 8px;
  top: 0px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  transform: rotate(45deg);
}
.select-term .custom-select select {
  border: 1px solid #dfdfdf;
  padding: 1em 1.5em;
}

.list-term {
  display: none;
  flex-flow: column;
}
.list-term .title {
  margin-bottom: 1em;
}
.list-term .title span {
  background: #EFEFEF;
  display: inline-block;
  padding: 1em 2em;
}
.list-term a {
  text-decoration: none;
  display: inline-block;
  margin-bottom: 1em;
}
.list-term .current {
  color: #DF3636;
}

@media print, screen and (min-width: 1000px) {
  .select-term {
    display: none;
  }
  .list-term {
    display: flex;
  }
}
#post-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 1px solid #DEDEDE;
  border-bottom: 1px solid #DEDEDE;
  padding: 2em 0;
}
#post-link .next,
#post-link .prev {
  width: 50%;
  padding: 0 2em;
}
#post-link .next .btn1,
#post-link .prev .btn1 {
  background: #fff;
  color: #DE0024;
  border: 1px solid #DE0024;
}
#post-link .next .btn1:hover,
#post-link .prev .btn1:hover {
  background: #DE0024;
  color: #fff;
}
#post-link .prev {
  position: relative;
}
#post-link .prev::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 1px;
  height: 100%;
  background: #DEDEDE;
}
#post-link .prev .pn {
  text-align: left;
}
#post-link .next .pn {
  text-align: right;
}

.mw_wp_form dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.mw_wp_form dl dt {
  width: 100%;
  padding: 1em 0;
}
.mw_wp_form dl dd {
  width: 100%;
  padding: 1em 0;
  display: flex;
}
.mw_wp_form dl dd span {
  max-width: 100%;
}
.mw_wp_form dl dd span.text {
  padding: 0.4em 0;
}

.mw_wp_form_confirm dl dd span.text {
  padding: 0;
}

@media print, screen and (min-width: 1000px) {
  .mw_wp_form dl {
    width: 830px;
  }
  .mw_wp_form dl dt {
    width: 290px;
  }
  .mw_wp_form dl dd {
    width: 540px;
  }
}
.vertical-item {
  width: 100%;
}

#wpadminbar {
  position: fixed !important;
}

.has-text-align-center br {
  display: none;
}

@media print, screen and (min-width: 768px) {
  .has-text-align-center br {
    display: inline;
  }
}
.wp-block-columns {
  margin: 0;
}
.wp-block-columns .wp-block-image {
  margin: 0;
}

.wp-block-image {
  margin-bottom: 2em;
}

.wp-block-table thead {
  border: none;
}

.mw_wp_form {
  max-width: 830px;
  margin: 0 auto;
}

#corporation-head {
  background: linear-gradient(to bottom, transparent 0%, transparent 70%, rgb(255, 255, 255)), url(images/bg_work.png);
  background-repeat: repeat;
  padding: 0 0 20px;
  margin-bottom: 40px;
}
#corporation-head .gradationTopToBottom {
  background: linear-gradient(to top, transparent 0%, transparent 70%, rgb(255, 255, 255));
}
#corporation-head h2 {
  font-size: 13px;
  background: #DF3636;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  width: 200px;
  height: 200px;
  border-radius: 100px;
  text-align: center;
  margin: 0 auto;
  line-height: 1;
  margin-bottom: 1em;
}
#corporation-head h2 .en {
  position: relative;
  font-family: "Lato", sans-serif;
  font-size: 30px;
  letter-spacing: 0.1em;
  padding-bottom: 1em;
}
#corporation-head h2 .en::after {
  content: "";
  width: 20px;
  height: 1px;
  position: absolute;
  left: 50%;
  bottom: 0.5em;
  margin-left: -10px;
  background: #fff;
}
#corporation-head h3 {
  font-size: 15px;
  text-align: center;
  border: none;
  padding-left: 0;
}
#corporation-head h3 .l {
  border-bottom: 4px solid #000;
  padding-bottom: 0.05em;
  font-size: 30px;
  letter-spacing: 0.1em;
}
#corporation-head h3 .en {
  font-size: 15px;
  font-family: "Lato", sans-serif;
  line-height: 3em;
}
#corporation-head .c-lists {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#corporation-head .c-lists .c-list {
  width: 100%;
  margin-bottom: 2em;
}
#corporation-head .c-lists .c-list:last-child {
  margin-bottom: 0;
}
#corporation-head .c-lists .c-list h3 {
  position: relative;
  line-height: 1.25;
  font-size: 20px;
  padding-left: 5px;
  text-align: left;
  border: none;
  display: flex;
  align-items: center;
  margin-bottom: 1em;
}
#corporation-head .c-lists .c-list h3.icon-hint::before {
  background-image: url(images/icon_hint_c.svg);
  background-repeat: no-repeat;
  background-size: 30px 43px;
  background-position: center;
  display: inline-block;
  background-repeat: no-repeat;
  content: "";
  width: 30px;
  height: 43px;
  margin-right: 10px;
}
#corporation-head .c-lists .c-list h3.icon-hands::before {
  background-image: url(images/icon_hands_c.svg);
  background-repeat: no-repeat;
  background-size: 54px 36px;
  background-position: center;
  display: inline-block;
  background-repeat: no-repeat;
  content: "";
  width: 54px;
  height: 36px;
  margin-right: 10px;
}
#corporation-head .c-lists .c-list h3.icon-graph {
  padding-top: 0;
}
#corporation-head .c-lists .c-list h3.icon-graph::before {
  position: relative;
  background-image: url(images/icon_graph_c.svg);
  background-repeat: no-repeat;
  background-size: 30px 38px;
  background-position: center;
  display: inline-block;
  background-repeat: no-repeat;
  content: "";
  width: 30px;
  height: 36px;
  margin-right: 10px;
  left: auto;
}
#corporation-head .c-lists .c-list h3.icon-heart::before {
  background-image: url(images/icon_heart_c.svg);
  background-repeat: no-repeat;
  background-size: 30px 28px;
  background-position: center;
  display: inline-block;
  background-repeat: no-repeat;
  content: "";
  width: 30px;
  height: 38px;
  margin-right: 10px;
}
#corporation-head .c-lists .c-list h3 .icon {
  position: absolute;
  left: 0;
}
#corporation-head .c-lists .c-list h3 .icon img {
  padding-right: 0.5em;
  vertical-align: top;
  width: auto;
  height: 28px;
}

@media print, screen and (min-width: 1000px) {
  #corporation-head {
    padding: 0 0 30px;
    margin-bottom: 60px;
  }
  #corporation-head h2 {
    font-size: 13px;
    width: 200px;
    height: 200px;
  }
  #corporation-head h2 .en {
    font-size: 30px;
  }
  #corporation-head h3 {
    font-size: 30px;
  }
  #corporation-head h3 .l {
    font-size: 50px;
  }
  #corporation-head h3 .en {
    font-size: 20px;
  }
  #corporation-head .c-lists .c-list {
    margin-bottom: 0;
    width: 40%;
  }
  #corporation-head .c-lists .c-list h3 {
    padding-left: 5px;
    font-size: 24px;
    margin-bottom: 0;
    padding-bottom: 1em;
  }
}
#corporation-content h3 {
  font-size: 15px;
}
#corporation-content .t-l-title .en {
  font-size: 28px;
}
#corporation-content #sdgs {
  max-width: 850px;
  margin: 0 auto 3em;
}
#corporation-content #sdgs .icon {
  margin-bottom: 1em;
}
#corporation-content #sdgs .icon img {
  width: 80px;
  height: auto;
  margin-right: 10px;
}

@media print, screen and (min-width: 1000px) {
  #corporation-content h3 {
    font-size: 22px;
  }
  #corporation-content .t-l-title .en {
    font-size: 58px;
  }
  #corporation-content #sdgs {
    padding: 0 min(0.01vw, 130px);
    margin-bottom: 6em;
  }
  #corporation-content #sdgs .icon img {
    width: 150px;
  }
}
.c-card {
  margin: 0 0 40px 0;
}
.c-card .imagestexts {
  padding: 2em;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}
.c-card .imagestexts .bg {
  background: linear-gradient(161.79deg, rgba(255, 120, 128, 0.1) 0%, rgba(139, 187, 239, 0.2) 100%);
  width: 100%;
  height: 100%;
  max-width: 880px;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
}
.c-card .imagestexts .image {
  width: 100%;
  max-width: 380px;
  z-index: 2;
  margin: 0 auto;
  position: relative;
  text-align: center;
}
.c-card .imagestexts .image img {
  width: 100%;
  height: auto;
  overflow: hidden;
}
.c-card .imagestexts .texts {
  width: 100%;
  max-width: 660px;
  z-index: 2;
}
.c-card .imagestexts .texts .title {
  font-size: 14px;
  margin: 0 0 0.5em 0;
  padding-left: 0;
  border: none;
}
.c-card .imagestexts .texts .title a {
  text-decoration: none;
}

@media print, screen and (min-width: 1000px) {
  .c-card {
    margin: 0 0 60px 0;
  }
  .c-card .imagestexts {
    padding: 0;
  }
  .c-card .imagestexts .bg {
    width: 70%;
    height: 70%;
  }
  .c-card .imagestexts .image {
    width: 40%;
    margin-bottom: 0;
  }
  .c-card .imagestexts .texts {
    width: 60%;
    padding-right: 2em;
  }
  .c-card .imagestexts .texts .title {
    font-size: 24px;
    margin: 0 0 1em 0;
  }
  .c-card .imagestexts .texts p {
    padding-left: 2em;
  }
}
.iframe_form {
  height: 1600px;
}
@media print, screen and (min-width: 768px) {
  .iframe_form {
    height: 1800px;
  }
}

.table-of-contents {
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  padding: 0;
  margin: 20px auto 50px;
  border-radius: 5px;
  width: 100%;
  max-width: 600px;
}
.table-of-contents .ttl_toc {
  cursor: pointer;
}
.table-of-contents .ttl_toc p {
  font-size: 1.2em;
  margin: 0;
  padding: 10px 30px;
  font-weight: normal;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.table-of-contents .ttl_toc p::before {
  content: "";
  display: block;
  width: 20px;
  height: 19px;
  background: url(http://frogwell.co.jp/wp-content/uploads/2024/09/icon_toc.png) no-repeat center/contain;
  position: absolute;
  left: -20px;
  top: 50%;
  transform: translateY(-50%);
}
.table-of-contents ul {
  list-style-type: none;
  margin: 0;
  padding: 10px 50px 30px;
  display: none;
}
.table-of-contents ul li {
  margin: 5px 0;
}
.table-of-contents ul li.child {
  padding-left: 20px;
}
.table-of-contents ul li a {
  text-decoration: none;
  color: #0073aa;
}
.table-of-contents ul li a:hover {
  text-decoration: underline;
  color: #005177;
}