@charset "UTF-8";

/*
Theme Name: Engress
Description: 日本人へのTOEFL指導歴豊かな講師陣のコーチング型TOEFLスクール
Version: 1.0
Author: Hikaru

*/

.fv {
  background-image: url(image/fv.jpg);
  background-position: center;
  background-size: cover;
  height: 476px;
  text-align: center;
  padding: 102px 20px 80px;
}
.fv h1 {
  font-size: 48px;
  color: #FFFFFF;
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.fv p {
  color: #FFFFFF;
  line-height: 32px;
  padding-top: 12px;
  font-weight: 500;
  letter-spacing: 2px;
}
.fv .fv-button {
  width: 260px;
  height: 60px;
  background-color: #F5A623 !important;
  border-radius: 31px;
  margin: 40px 0 20px;
  font-size: 16px;
  font-weight: bold;
  color: #FFFFFF;
  background: none;
  text-decoration: none !important;
  display: inline-table;
  padding: 21px 0;
}
.fv a {
  display: block;
  font-size: 16px;
  color: #FFFFFF;
  text-decoration: underline;
  width: 96px;
  margin: 0 auto;
  background: none !important;
}

@media (max-width: 520px) {
  .fv .fv-button {
    width: 200px;
  }
  .fv h1 {
    font-size: 35px !important;
  }
  .fv p {
    font-size: 15px !important;
    padding: 20px 0 0 0;
  }
}
.about {
  background-color: #1B224C;
  text-align: center;
  padding: 55px 10px 50px 10px;
}
.about h2 {
  color: #fff;
  padding-bottom: 47px;
}
.about .about-text {
  text-align: center;
  display: inline-flex;
  width: 550px;
  justify-content: space-between;
  padding-bottom: 77px;
}
.about .about-text p {
  color: #fff !important;
  text-align: center;
  line-height: 35px;
  font-size: 18px;
}
.about .about-box {
  width: 900px;
  height: 248px;
  background-color: #fff;
  margin: 0 auto;
}
.about .about-box .about-box-border {
  border: 5px solid #1B224C !important;
  width: 868px;
  height: 225px;
  margin: 12px 16px 13px 16px;
  display: inline-table;
}
.about .about-box .about-box-border h2 {
  color: #1B224C;
  padding: 10px 0 20px;
  line-height: 51px;
}
@media (max-width:375px) {
  .about .about-box .about-box-border h2 {
    padding: 10px 24px 20px;
}
.about-box-border p {
  padding: 20px 8px 30px 8px !important;
}
  
}
.about .about-box .about-box-border h2 span {
  background: linear-gradient(transparent 70%, #F5A623 70%);
}
.about .about-box .about-box-border p {
  font-size: 18px;
  line-height: 31px;
}

@media (max-width: 940px) {
  .about-box {
    width: 93% !important;
    height: auto !important;
  }
  .about-box .about-box-border {
    width: 93% !important;
    height: auto !important;
  }
}
@media (max-width: 680px) {
  .about h2 {
    font-size: 20px;
  }
  .about-text {
    flex-direction: column;
    padding: 0 0 0 0 !important;
    width: auto !important;
    text-align: left !important;
  }
  .about-text p {
    padding: 0 0 30px 0 !important;
  }
  .about-box-border h2 {
    line-height: 30px !important;
  }
  .about-box-border p {
    padding: 20px 20px 30px 20px ;
  }
}
.service {
  padding: 55px 20px 35px 20px;
  margin: 0 auto;
  max-width: 940px;
}
.service h2 {
  padding-bottom: 45px;
  text-align: center;
}
.service .service-box {
  display: flex;
  padding: 0 0 60px 0;
}
.service .service-section {
  width: 90px;
  height: 30px;
  background-color: #F5A623;
  color: #fff;
  padding: 2px 27px;
  font-size: 12px;
}
.service h3 {
  padding: 28px 0 32px;
}
.service p {
  width: 500px;
  font-size: 16px;
  line-height: 25px;
}
.service .service-box-img01 {
  width: 350px;
  margin: 0 0 0 50px;
}
.service .service-box-img02 {
  width: 350px;
  margin: 0 50px 0 0;
}
.service .service-box-img03 {
  width: 349px;
  height: 328px;
  margin: -55px 0 0 50px;
}
.service .service-price {
  background-image: url(image/price.png);
  background-size: cover;
  background-position: center;
  text-align: center;
  padding: 50px 14px 60px 0;
}
.service .service-price h3 {
  color: #fff;
  padding: 0 0 10px 0;
}
.service .service-price .service-price-button {
  width: 200px;
  height: 50px;
  border: 1px solid #fff;
  border-radius: 30px;
  margin: 9px 0px 0 13px;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  display: inline-block;
  padding: 16px 0;
}

@media (max-width: 940px) {
  .service p {
    width: auto;
  }
  .service .service-box {
    flex-direction: column;
    align-items: center;
    padding: 40px 20px 40px 0;
  }
  .service .service-box .service-box-img01 {
    margin: 20px 0 0 50px;
    width: auto;
  }
  .service .service-box .service-box-img03 {
    margin: 20px 0 0 50px;
    width: auto;
  }
  .service .service-box .service-box-img02 {
    margin: 20px 0 0 50px;
    width: auto;
  }
  .service .service-box-2 {
    flex-direction: column-reverse;
  }
}
@media (max-width: 710px) {
  .service h2 {
    font-size: 25px;
    padding: 0 45px 30px 45px;
  }
}
@media (max-width: 470px) {
  .service {
    padding: 55px 0 0 0 !important;
  }
  .service-box {
    padding: 40px 20px 40px 20px !important;
  }
  .service-box img {
    display: none;
  }
  .service-box h3 {
    color: #fff;
  }
  .service-box p {
    color: #fff;
  }
  .service-box-1 {
    background-image: url(image/service-1-black.jpg);
  }
  .service-box-2 {
    background-image: url(image/service02-black.jpg);
  }
  .service-box-3 {
    background-image: url(image/service03-black.jpg);
  }
}
@media(max-width:320px){
  .service h2 {
    padding: 0 30px 30px 30px;
}
}
section {
  background-color: #1B224C;
  padding: 48px 0 0px 0;
}
section h2 {
  color: #fff;
  text-align: center;
}
section .section-wrapper {
  max-width: 940px;
  padding: 118px 20px 58px 20px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
section .section-wrapper .section-box p {
  color: #fff;
  width: 280px;
  line-height: 29px;
  padding: 0 0 6px 0;
}
section .section-wrapper .section-box .section-box-img {
  background-color: #fff;
  width: 280px;
  height: 171px;
  text-align: center;
  padding: 33px 0 0;
}
section .section-wrapper .section-box .section-box-group {
  display: flex;
  padding: 15px 0 10px;
}
section .section-wrapper .section-box .section-box-group .section-box-job {
  width: 100px;
  height: 32px;
  background-color: #fff;
  color: #1B224C;
  padding: 4px 0 0 10px;
}
section .section-wrapper .section-box .section-box-group .section-box-name {
  width: 172px;
  height: 32px;
  background-color: #fff;
  color: #1B224C;
  padding: 4px 0 0 12px;
  margin: 0 0 0 8px;
}
section .section-wrapper .section-box .section-box-score {
  width: 280px;
  height: 32px;
  background-color: #fff;
  color: #1B224C;
  padding: 4px 0 0 13px;
}

@media (max-width: 940px) {
  .section-wrapper {
    flex-direction: column;
    align-items: center;
    padding: 50px 20px 20px 20px !important;
  }
  .section-box {
    margin: 0 0 50px 0;
  }
}
.contents-summary {
  padding: 0 0 65px;
}

.contents-wrapper {
  max-width: 940px;
  padding: 55px 20px 111px 20px;
  margin: 0 auto;
}
.contents-wrapper h2 {
  text-align: center;
  padding: 0 0 37px;
}
.contents-wrapper .summary-box {
  display: flex;
  height: 64px;
  background-color: #F8F8F8;
}
.contents-wrapper .summary-box .summay-number {
  width: 64px;
  height: 64px;
  background-color: #F5A623;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 20px;
}
.contents-wrapper .summary-box .summary-title {
  font-size: 18px;
  font-weight: bold;
  margin: 21px 0 18px 0;
  padding: 0px 20px;
  width: 216px;
  border-right: 1px solid #C3C3C3;
  height: 29px;
}
.contents-wrapper .summary-box .summary-text {
  padding: 20px 0 0 50px;
}

.summary-box:not(:last-child) {
  margin-bottom: 10px;
}

.contents-inform {
  padding: 0 0 83px 0px;
}
.contents-inform h2 {
  padding: 0 0 20px;
}

/*   アコーディオン　　*/
summary::-webkit-details-marker {
  display: none;
}

summary {
  padding: 22px 0 22px 0;
  background: #FFF;
  margin: 0;
  display: flex;
  position: relative;
  border-top: 1px solid #1B224C;
  width: 100%;

}

details:last-child {
  border-bottom: 1px solid #1B224C;
}

.answer {
  background-color: #F8F8F8;
  height: 51px;
  padding: 15px 10px 0 25px;
  margin: 0 0 11px 0;
}

.icon:before {
  content: "";
  background-image: url(image/close.png);
  width: 25px;
  height: 25px;
  position: absolute;
  left: 95%;
  top: 21px;
}

/* 2つ目のアコーディオンのタイトル オープン時 */
details[open] .icon:before {
  content: "";
  background: url(image/open.png);
  width: 25px;
  height: 3px;
  position: absolute;
  top: 30px;
}

.contents-news {
  display: flex;
  justify-content: space-between;
}
.contents-news article {
  width: 48%;
}
.contents-news article h2 {
  text-align: left;
  font-size: 32px;
  padding: 0 0 30px;
}
.contents-news .article-box:not(:last-child) {
  margin: 0 0 25px 0;
}
.contents-news .article-box {
  display: flex;
}
.contents-news .article-box .article-img a {
  width: 78px;
  height: 32px;
  background-color: #1B224C;
  color: #FFF;
  font-size: 12px;
  text-align: center;
  padding: 9px 1px 0px 3px;
  position: absolute;
  z-index: 10;
}
.contents-news .article-box .article-img img {
  width: 150px;
  height: 110px;
  position: relative;
  margin: 0;
}
.contents-news .article-box .article-text {
  width: 260px;
  margin: -4px 0 6px 20px;
  position: relative;
}
.contents-news .article-box .article-text a {
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
  display: block;
  text-align: left;
}
.contents-news .article-box .article-text time {
  font-size: 12px;
  position: absolute;
  bottom: 0;
  display: block;
}

.aside-info {
  width: 45%;
}
.aside-info h2 {
  text-align: left !important;
  font-size: 32px !important;
  padding: 0 0 30px !important;
}
.aside-info p {
  font-size: 12px;
  padding: 0;
  margin: 0;
  background: none;
  color: #1B224C;
  height: auto;
}
.aside-info a {
  text-decoration: underline;
  font-size: 16px;
  display: block;
  margin: 6px 0 55px 0;
  width: auto;
  text-align: left;
}
.aside-info time{
  display: block;
  text-align: left;
  font-size: 12px !important;
}

@media (max-width: 760px) {
  .contents-wrapper {
    padding: 55px 20px 50px 20px;
  }
  .contents-wrapper .summary-box {
    display: block;
    height: auto;
  }
  .contents-wrapper .summary-box .summary-title {
    margin: -60px 0 0 100px !important;
    padding: 0 0 0 0;
    border: none;
  }
  .contents-wrapper .summary-box .summary-text {
    padding: 5px 0 15px 100px !important;
  }
  .contents-wrapper details summary {
    height: auto;
  }
  .contents-wrapper details summary .icon {
    position: absolute;
    left: 92%;
  }
  .contents-wrapper details .question {
    margin: 0 25px 0 0;
  }
  .contents-wrapper details .answer {
    height: auto;
    padding: 15px 10px 15px 25px;
  }
  .contents-wrapper .contents-news {
    flex-direction: column;
    align-items: center;
  }
  .contents-wrapper .contents-news article {
    width: 100%;
    margin: 0 auto;
    display: contents;
  }
  .contents-wrapper .contents-news article h2 {
    text-align: center;
    font-size: 25px !important;
  }
  .contents-wrapper .contents-news .aside-info {
    width: 100%;
    margin: 0 auto;
    display: grid;
    padding: 0 50px 0 50px;
  }
  .contents-wrapper .contents-news .aside-info time {
    font-size: 12px !important;
  }
  .contents-wrapper .contents-news .aside-info h2 {
    padding: 65px 0 30px 0 !important;
    margin: 0 auto;
    font-size: 25px !important;
  }
}
/*  コース・料金　*/
.title-img-1 {
  background-image: url(image/plan.png);
  background-position: center;
  background-size: cover;
  height: 221px;
  text-align: center;
  padding: 87px 0px 0px 12px;
}

.title-footer {
  height: 50px;
  background-color: #F8F8F8;
  display: flex;
  padding: 17px 0 0 195px;
  font-size: 12px;
}
.title-footer a, .title-footer p {
  font-size: 12px;
}
.title-footer :first-child {

  
  padding: 0px 8px 0 0;
}
.title-footer :last-child {
  padding: 0px 0px 0 0px;
}
.current-item{
  text-decoration: underline;
}
@media (max-width: 900px) {
  .title-footer {
    height: auto;
    padding: 17px 50px 17px 50px !important;
    flex-wrap: wrap;
  }
}
/* ブログ */
.title-img-2 {
  background-image: url(image/blog.png);
  background-position: center;
  background-size: cover;
  height: 221px;
  text-align: center;
  padding: 87px 0px 0px 12px;
}

@media (max-width: 820px) {
  .title-img-2 h1, .title-img-3 h1, .title-img-4 h1 {
    font-size: 25px !important;
  }
}
/* お知らせ */
.title-img-3 {
  background-image: url(image/news.png);
  background-position: center;
  background-size: cover;
  height: 221px;
  text-align: center;
  padding: 87px 0px 0px 12px;
}

/* お問い合わせ・資料請求 */
.title-img-4 {
  background-image: url(image/contact.png);
  background-position: center;
  background-size: cover;
  height: 221px;
  text-align: center;
  padding: 87px 0px 0px 12px;
}

header {
  height: 80px;
  display: flex;
  justify-content: space-between;
  background-color: #fff;
  z-index: 99;
}
header .header-left {
  display: flex;
  width: 512px;
}
header .header-left img {
  height: 27px;
  margin-top: 26px;
  margin-left: 16px;
  margin-right: 23px;
}
header .header-left #menu-global {
  display: flex;
  font-size: 16px;
  font-weight: bold;
  list-style: none;
  padding: 30px 0 0 0;
  background-color: #fff;
  height: auto;
}

header .header-right {
  display: flex;
  width: 510px;
  justify-content: space-between;
}
header .header-right .header-right-1 {
  margin: 26px 0 0 26px !important;
  text-align: right;
}
header .header-right .header-right-1 p {
  font-size: 12px;
}
header .header-right .header-right-1 .tell {
  display: flex;
}
header .header-right .header-right-1 .tell img {
  height: 15px;
  margin-top: 2px;
  margin-right: 5px;
}
header .header-right .header-right-1 .tell p {
  font-size: 16px;
  font-weight: bold;
}
header .header-right .header-right-request {
  width: 142px;
  height: 50px;
  text-align: center;
  background-color: #F5A623;
  border-radius: 5px;
  margin-top: 15px;
  padding-top: 15px;
  margin-right: 0 !important;
  margin-left: 10px !important;
}
header .header-right .header-right-request a {
  color: #FFFFFF;
  font-size: 14px;
  font-weight: bold;
}
header .header-right .header-right-inform {
  width: 142px;
  height: 50px;
  text-align: center;
  background-color: #1B224C;
  border-radius: 5px;
  margin-top: 15px;
  padding-top: 15px;
  margin-right: 4% !important;
}
header .header-right .header-right-inform a {
  color: #FFFFFF;
  font-size: 14px;
  font-weight: bold;
}

.hamburger {
  display: none !important;
}

@media (max-width: 1000px) {
  .header-left img {
    width: 60%;
  }
  .header-left nav {
    margin: 0 0 0 -46px;
  }
  .header-left nav a {
    font-size: 14px;
  }
  .header-left #menu-global li {
    padding: 0 0 0 7px !important;
  }
  .header-right {
    width: 470px !important;
  }
  .header-right .header-right-request, .header-right .header-right-inform {
    width: 110px !important;
  }
}
@media (max-width: 850px) {
  .header-right {
    display: none !important;
  }
  .header-left nav {
    display: none !important;
  }
  .header-left img {
    width: auto;
  }
  .hamburger {
    display: initial !important;
  }
  .header--sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    opacity: 1;
    visibility: visible;
    -webkit-animation: slideDown 0.3s ease-in-out;
            animation: slideDown 0.3s ease-in-out;
  }
  @-webkit-keyframes slideDown {
    0% {
      transform: translateY(-100%);
    }
    100% {
      transform: translateY(0%);
    }
  }
  @keyframes slideDown {
    0% {
      transform: translateY(-100%);
    }
    100% {
      transform: translateY(0%);
    }
  }
}
/*　ハンバーガーボタン　*/
.hamburger {
  display: block;
  position: fixed;
  z-index: 99;
  right: 20px;
  top: 18px;
  width: 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}

.hamburger span {
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 6px;
  background: #1B224C;
  transition: 0.3s ease-in-out;
}

.hamburger span:nth-child(1) {
  top: 10px;
}

.hamburger span:nth-child(2) {
  top: 20px;
}

.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top: 16px;
  left: 6px;
  transform: rotate(-45deg);
  background: #1B224C;
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  transform: rotate(45deg);
  background: #1B224C;
}

nav.globalMenuSp {
  position: fixed;
  z-index: 2;
  top: 80px;
  right: 0;
  color: #000;
  background: #fff;
  text-align: center;
  transform: translateX(100%);
  transition: all 0.6s;
  width: 70%;
  height: 100%;
  background-color: #1B224C;
}

nav.globalMenuSp ul {
  background: #1B224C;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  list-style: none;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 15px 0 10px 0;
  width: 100%;
  border-bottom: 1px solid #fff;
}
nav.globalMenuSp ul li ::marker {
  display: none;
}

nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

nav.globalMenuSp ul li:hover {
  background: #ddd;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration: none;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  transform: translateX(0%);
}

.contact {
  padding: 0 0 15px;
}
.contact .contact-img {
  background-image: url(image/contact.png);
  background-position: center;
  background-size: cover;
  height: 256px;
  text-align: center;
  padding: 62px 0 34px 0;
}
.contact .contact-img h2 {
  color: #fff;
  font-size: 32px;
}
.contact .contact-img .contact-button {
  width: 280px;
  height: 50px;
  border-radius: 25px;
  background-color: #F5A623;
  margin: 20px 0 16px 0;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none !important;
  display: inline-block;
  padding: 17px 0;
}
.contact .contact-img a {
  display: block;
  color: #fff;
  text-decoration: underline !important;
}

.contact-text {
  padding: 14px 0 0 0;
  text-align: center;
  display: flex;
  margin: 0 auto;
  max-width: 800px;
}
.contact-text p:first-child {
  font-weight: bolder;
  padding: 22px 20px 0 10px;
}
.contact-text a {
  font-size: 36px;
  font-weight: bold;
  padding: 0px 22px 0 0;
}
.contact-text p:last-child {
  padding: 20px 0 0;
}

@media (max-width: 820px) {
  .contact-img button {
    width: 220px !important;
  }
  .contact-text {
    flex-direction: column;
    align-items: center;
    padding: 14px 0 14px 0;
  }
  .contact-text p {
    padding: 0 !important;
  }
  .contact-text a {
    padding: 0;
  }
}
@media (max-width: 520px) {
  .contact-button {
    width: 200px !important;
  }
}
.menu {
  background-color: #1B224C;
  padding: 30px 20px 50px 20px;
  height: 230px;
}
.menu .menu-wrapper {
  max-width: 940px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.menu-left ul {
  display: flex;
  padding: 10px 0 0 0;
  list-style: none !important;
  height: auto;
}
.menu-left li {
  padding: 0;
}
.menu-left a {
  color: #fff;
  padding: 0 20px 0 25px;
  border-right: 1px solid #fff;
}

.menu-right {
  text-align: right;
}
.menu-right .menu-right-img {
  width: 197px;
  height: 58px;
  background-color: #fff;
  display: block;
  text-align: center;
  padding: 16px 0 0 0;
}
.menu-right .menu-right-img img {
  width: 159px;
  height: 31px;
	object-fit: contain;
}
.menu-right .menu-right-tell {
  display: flex;
  color: #fff !important;
  margin: 27px 0 0px 63px;
}
.menu-right .menu-right-tell img {
  width: 10px;
  height: 15px;
  margin: 2px 7px 0 0;
}
.menu-right p {
  color: #fff;
  font-size: 12px;
  padding: 6px 4px 0px 0;
}

@media (max-width: 680px) {
  .menu {
    height: auto;
  }
  .menu-wrapper {
    flex-direction: column;
    align-items: center;
  }
  .menu-wrapper .menu-left ul {
    flex-direction: column;
    align-items: center;
  }
  .menu-wrapper .menu-left ul li {
    padding: 0 0 8px 0;
  }
  .menu-wrapper a {
    padding: 0 0 20px 0 !important;
    border: none !important;
  }
  .menu-right {
    display: flex !important;
    margin: 30px 0 0 0;
  }
  .menu-right .menu-right-img {
    margin: 0 20px 0 0;
    width: 50%;
  }
  .menu-right a {
    margin: 0 !important;
  }
  .menu-right p {
    padding: 30px 0px 0px 0px;
    margin: 3px 0 0 -108px;
  }
}
footer {
  height: 36px;
  max-width: 922px;
  padding: 4px 20px 0 0 !important;
  margin: 0 auto;
  text-align: right;
}

.plice {
  padding: 50px 0 0 8px;
}
.plice .plice-wrapper {
  max-width: 940px;
  padding: 0 20px;
  margin: 0 auto;
}
.plice .plice-wrapper h1 {
  color: #1B224C !important;
  padding: 0 0 54px 0;
  text-align: center;
}
.plice .plice-wrapper p {
  line-height: 26px;
  padding: 0 0 90px 0;
}

.plice-main {
  display: flex;
  margin: 0 116px;
}
.plice-main .plice-box {
  width: 280px;
  height: 90px;
  background-color: #1B224C;
  padding: 31px 0;
  margin: 0 0 40px 0;
}
.plice-main .plice-box p {
  color: #fff;
  font-size: 22px;
  text-align: center;
}
.plice-main img {
  width: 19px;
  height: 19px;
  margin: 36px 40px;
}

.plice-table {
  padding: 0 0 66px 0;
}
.plice-table .plice-table-wrapper {
  display: flex;
  overflow-x: auto !important;
  white-space: nowrap !important;
}

.plan-box {
  width: 220px;
  height: 474px;
  border: 1px solid #1B224C;
  margin: 45px 5px 0 5px;
  text-align: center;
}
.plan-box .plice-plan {
  height: 60px;
  background-color: #1B224C;
  text-align: center;
  color: #fff;
  padding: 15px 0px 0px 0px !important;
}
.plan-box h3 {
  padding: 22px 0px 2px 3px;
}
.plan-box .plice-box-text {
  display: inline-flex !important;
}
.plice-box-text2{
  text-wrap: wrap;
}
.plan-box .plice-box-text :first-child {
  width: 14px;
  height: 9px;
  margin: 18px 3px 0px 2px !important;
}
.plan-box .plice-box-text :last-child {
  padding: 7px 0px 0 10px !important;
  margin: 0 0 6px 0;
}

.plan-box-sale {
  height: 503px !important;
  margin-top: 16px;
}
.plan-box-sale h3 span {
  color: #F5A623;
}

.plice-plan-sale {
  height: 90px !important;
  background-color: #F5A623 !important;
}

.sale-text:last-child {
  padding: 0px 0px 8px 0px !important;
  margin: -8px 0 1px 0 !important;
}

.plice-text-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 20px;
  margin: -55px 0 0 0;
}

@media (max-width: 730px) {
  .plice-main {
    margin: 0;
  }
}
@media (max-width: 820px) {
  .plice-wrapper h1 {
    font-size: 25px !important;
  }
  .plice-box {
    height: 63px !important;
    padding: 20px 0 !important;
  }
  .plice-box p {
    font-size: 15px !important;
  }
  .plice-main img {
    margin: 23px 20px;
  }
}
.blog {
  justify-content: center;
  text-align: center;
}
.blog .blog-wrapper {
  max-width: 940px;
  padding: 50px 20px 10px 20px;
  margin: 0 auto;
}
.blog .blog-wrapper h1 {
  color: #1B224C !important;
  padding: 0 0 53px 0;
}

.blog-box-first {
  margin: 0 !important;
}

.blog-box {
  display: flex;
  justify-content: space-between;
}
.blog-box .blog-img {
  margin: 0 20px 0 0;
}
.blog-box .blog-img .post-categories {
  width: auto;
  height: 32px;
  background-color: #1B224C;
  color: #FFF;
  font-size: 12px;
  text-align: center;
  padding: 8px 3px 0px 3px;
  position: absolute;
  z-index: 10;
  list-style: none;
  display: inline;
}
.blog-box .blog-img .post-categories li {
  padding: 0;
}
.blog-box .blog-img .post-categories a {
  color: #FFF !important;
}
.blog-box .blog-img img {
  width: 240px;
  height: 179px;
  position: relative;
}
.blog-box .post-categories {
  width: 78px;
  height: 32px;
  background-color: #1B224C;
  color: #FFF;
  font-size: 12px;
  text-align: center;
  padding: 5px 1px 13px 3px;
  position: absolute;
  z-index: 10;
  list-style: none;
  display: inline;
}
.blog-box .blog-text {
  width: 610px;
  text-align: left;
  flex-wrap: wrap;
  display: flex;
  flex-direction: column;
}
.blog-box .blog-text time {
  margin: -3px 0 10px 0;
}
.blog-box .blog-text a {
  font-size: 26px;
  font-weight: bold;
  text-decoration: underline;
}
.blog-box .blog-text p {
  padding: 17px 0 0 0;
}

.blog-box-wrapper {
  padding: 0 0 106px 0px;
}
.blog-box-wrapper .blog-box {
  margin: 57px 0 -2px 0;
}
.nav-links{
  display: flex;
  justify-content: space-between;
  width: 335px;
  justify-content: space-between;
}
.current{
  width: 50px;
  height: 50px;
  border: 1px solid;
  background-color: #1B224C;
  padding: 15px 0 0 0;
  color: #FFF;
}
.prev{
  display: none !important;
}
.next{
  display: none !important;
}
.dots{
  padding: 16px 0 0 0;
}

.blog-page {
  display: inline-flex;
  text-align: center;
  width: 335px;
  justify-content: space-between;
  margin: 0 0 33px 0;
}
.blog-page .blog-page-first {
  background-color: #1B224C;
  width: 50px;
  height: 50px;
  color: #FFF;
  border: 1px solid #1B224C;
  padding: 15px 0px 0 0;
}
.blog-page a {
  width: 50px;
  height: 50px;
  background-color: #FFF;
  border: 1px solid #1B224C;
  padding: 15px 0px 0 0;
  display: inline-block;
}
.blog-page p {
  width: 50px;
  height: 50px;
  padding: 11px 13px 0 0;
}
.pagerList{
  padding: 0;
}
@media (max-width: 820px) {
  .blog .blog-wrapper h1 {
    font-size: 25px;
  }
  .blog .blog-wrapper .blog-text a {
    font-size: 14px;
  }
}
@media (max-width: 700px) {
  .blog-box {
    flex-direction: column;
    align-items: center;
    margin: 30px 0;
  }
  .blog-img {
    margin: 0 !important;
  }
  .blog-img img {
    width: auto;
    height: auto;
    margin: 0;
  }
  .blog-text {
    width: auto !important;
    flex-wrap: wrap;
    margin: 10px 0 0 0;
  }
}
.news {
  padding: 51px 0 0 0;
}
.news .news-wrapper {
  max-width: 940px;
  padding: 0 20px 46px 20px;
  margin: 0 auto;
  text-align: center;
}
.news .news-wrapper h1 {
  color: #1B224C !important;
  padding: 0 0 35px 0;
}

.news-box {
  display: flex;
  height: 64px;
  width: 100%;
  border-bottom: 1px solid #D5D5D5;
  padding: 24px 0;
}
.news-box time {
  padding: 0 51px 0 0;
}
.news-box a {
  text-decoration: underline;
}

.news-box-first  {
  border-top: 1px solid #D5D5D5;
}


.wp-pagenavi {
  display: inline-flex;
  text-align: center;
  margin: 76px 0 0px 40px;
}
.pages{
  display: none;
}
.wp-pagenavi span.current {
  font-weight: bold;
  margin: 0 40px 0 0;
  padding: 14px 0 0 0;
  width: 50px;
  height: 50px;
}
.wp-pagenavi a, .wp-pagenavi span {
  text-decoration: none;
  border: 1px solid #BFBFBF;
  padding: 14px 5px;
  margin: 2px;
  width: 50px;
  height: 50px;
  margin: 0px 40px 0 0;
}
.nextpostslink{
  display: none;
}
.previouspostslink{
  display: none;
}
.news-page .news-page-first {
  background-color: #1B224C;
  width: 50px;
  height: 50px;
  color: #FFF;
  border: 1px solid #1B224C;
  padding: 11px 5px 0 0;
}
.news-page a {
  width: 50px;
  height: 50px;
  background-color: #FFF;
  border: 1px solid #1B224C;
  padding: 11px 5px 0 0;
}
.news-page p {
  width: 50px;
  height: 50px;
  padding: 11px 13px 0 0;
}

@media (max-width: 940px) {
  .news-wrapper h1 {
    font-size: 25px;
  }
  .news-box {
    flex-direction: column !important;
    align-items: baseline;
    height: auto;
  }
  .news-box a {
    text-align: left !important;
  }
  .news-box p {
    padding: 0 0 10px 0;
  }
}
.blog-footer {
  height: auto;
  background-color: #F8F8F8;
  display: flex;
  padding: 17px 0 17px 191px;
}
.blog-footer a, .blog-footer p {
  font-size: 12px;

    display: contents;
}
.blog-footer p {
  padding: 0 8px 0 7px;
}
.blog-footer a:not(:last-child) {
  text-decoration: underline;
}

.blog-contents {
  padding: 60px 0 61px 0;
}
.blog-contents .blog-contents-wrapper {
  max-width: 940px;
  padding: 0 20px;
  margin: 0 auto;
  display: flex;
}

article {
  width: 590px;
}
article .blog-contents-title a {
  width: 111px;
  height: 31px;
  background-color: #1B224C;
  color: #fff;
  text-align: center;
  padding: 9px 0 0 0;
  font-size: 12px;
  display: block;
}
article .blog-contents-title h1 {
  color: #1B224C;
  font-size: 28px;
  font-weight: bold;
  padding: 25px 0 22px 0;
}
article img {
  max-width: 100%;
  height: 370px;
  width: 590px;
}
article h2 {
  font-size: 26px;
  padding: 30px 0 22px 0;
}
article h3 {
  font-size: 22px;
  margin: 42px 0 29px 0;
  border-left: 4px solid #1B224C;
  padding: 0 0 0 8px;
  height: 28px;
}

.sns {
  display: flex;
  margin: 0 0 17px 0;
}
.sns .good {
  width: 69px;
  height: 20px;
  background-color: #305097;
  border-radius: 3px;
  padding: 2px 0 0 7px;
  display: flex;
}
.sns .good p {
  font-size: 10px;
  font-weight: bold;
  color: #fff;
  padding: 2px 0 0 0;
}
.sns .good img {
  width: 11px;
  height: 11px;
  margin: 2px 5px 0 0;
}
.sns .share {
  width: 44px;
  height: 20px;
  background-color: #305097;
  border-radius: 3px;
  color: #fff;
  padding: 4px 0 0 7px;
  font-size: 10px !important;
  font-weight: bold;
  margin: 0 4px 0 4px;
}
.sns .twitter {
  display: flex;
  width: 69px;
  height: 20px;
  padding: 3px 0px 0 8px;
  background-color: #00ACED;
  border-radius: 3px;
}
.sns .twitter img {
  width: 11px;
  height: 9px;
  margin: 3px 0 0 0;
}
.sns .twitter p {
  font-size: 10px;
  font-weight: bold;
  color: #fff;
  padding: 1px 0 0 3px;
}
.sns time {
  margin: -2px 0 0 291px;
}

.quote {
  width: 100%;
  height: 104px;
  background-color: #F8F8F8;
  margin: 50px 0 26px 0;
  display: flex;
}
.quote :first-child {
  font-size: 90px;
  color: #B4B4B4;
  margin: -10px 0 0px 15px;
}
.quote :last-child {
  
  padding: 20px 0 0 18px;
}

.blog-img-2 {
  width: 586px;
  height: 335px;
  margin: 0 !important;
}

ul {
  list-style-image: url(image/list.png);
  padding: 22px 0 52px 16px;
}
ul li {
  padding: 0 0 0 17px;
}

.text-link {
  font-size: 18px;
  text-decoration: underline;
  color: #F5A623;
}

.blog-infomation h3 {
  font-size: 26px;
  border-left: none;
  padding: 0 0;
  margin: 57px 0 41px 0;
}

.infomation-box {
  display: flex;
  justify-content: space-between !important;
  margin: 0 0 30px 0;
}
.infomation-box .infomation-img a {
  width: 80px;
  height: 28px;
  background-color: #1B224C;
  color: #FFF;
  font-size: 12px;
  text-align: center;
  padding: 5px 1px 13px 3px;
  position: absolute;
  z-index: 10;
}
.infomation-box .infomation-img img {
  width: 210px;
  height: 128px;
  position: relative;
  margin: 0;
}
.infomation-box .infomation-text {
  width: 348px;
}
.infomation-box .infomation-text time {
  margin: -4px 0 19px -2px;
  display: block;
}
.infomation-box .infomation-text a {
  font-size: 18px;
  font-weight: bold;
  text-decoration: underline;
  padding: 0;
  margin: 0;
}

.infomation-box-2 {
  margin: 20px 0 26px 0;
}

aside {
  width: 269px;
  margin: 0 0 0 35px;
}
aside p {
  width: 100%;
  height: 63px;
  background-color: #1B224C;
  font-size: 21px;
  color: #FFF;
  padding: 19px 0 0 0;
  margin: 0 0 30px 0;
  text-align: center;
}
aside ul {
  list-style: disc !important;
  padding: 0px 0 0 15px;
}
aside ul li {
  margin: 0;
  padding: 8px 0 8px 0;
}
aside ul li a {
  margin: 0;
}



.aside-box {
  display: flex;
  margin: 0 0 20px 0;
}
.aside-box .aside-image {
  width: 100px ;
  height: 70px ;
}
.aside-box .aside-image img {
  width: 100px ;
  height: 70px;
}
.aside-box a {
  width: 152px;
  margin: 0 !important;
  font-size: 12px;
  text-decoration: underline;
  padding: 0px 0 0 15px;
  line-height: 22px;
  margin: 0;
}

.aside-box-2 {
  padding: 39px 0 39px 0;
}

.aside-title {
  width: 100%;
  height: 63px;
  background-color: #1B224C;
  font-size: 21px;
  color: #FFF;
  padding: 19px 0 0 80px;
  margin: 53px 0 25px 0;
}

@media (max-width: 900px) {
  .blog-footer {
    height: auto;
    padding: 17px 0 17px 50px;
    flex-wrap: wrap;
  }
  .blog-contents .blog-contents-wrapper {
    flex-direction: column;
    align-items: center;
    width: auto;
  }
  .blog-contents .blog-contents-wrapper article {
    width: auto;
  }
  .blog-contents .blog-contents-wrapper aside {
    width: 100%;
    display: flex !important;
    margin: 0;
    justify-content: space-evenly;
    margin: 30px 0 0 0;
  }
  .blog-contents .blog-contents-wrapper aside .aside-2 .aside-title {
    margin: 0 0 30px 0;
    padding: 19px 50px 0 54px;
  }
  .blog-img, .blog-img-2 {
    width: auto;
  }
  .quote :last-child {
    width: auto;
  }
  .sns time {
    margin: 0 0 0 20px !important;
  }
  .infomation-box {
    justify-content: center !important;
  }
  .infomation-box .infomation-text {
    width: 200px;
    margin: 0 0 0 20px;
  }
  .infomation-box .infomation-text a {
    font-size: 14px;
  }
  .blog-infomation h3 {
    text-align: center !important;
  }
}
@media (max-width: 820px) {
  .blog-contents-wrapper aside {
    flex-direction: column;
    align-items: center;
  }
  .blog-contents-wrapper .aside-1 p {
    width: 250px;
    padding: 12px 0 0 0;
    text-align: center;
    height: 50px;
    margin: 0 auto 30px auto;
  }
  .blog-contents-wrapper .aside-2 p {
    width: 250px;
    padding: 12px 0 0 0 !important;
    text-align: center;
    height: 50px;
    margin: 30px auto 30px auto !important;
  }
}
.news-contents {
  padding: 53px 0 58px 0;
}
.news-contents .news-contents-wrapper {
  max-width: 940px;
  padding: 0 20px;
  margin: 0 auto;
}
.news-contents .news-contents-wrapper h2 {
  font-size: 28px;
  line-height: 46px;
}
.news-contents .news-contents-wrapper time {
  text-align: right ;
  padding: 37px 0 0 0 ;
  display: block;
}
.news-contents .news-contents-wrapper h3 {
  font-size: 26px;
  padding: 50px 0 22px 0;
}
.news-contents .news-contents-wrapper h4 {
  font-size: 22px;
  margin: 41px 0 25px 0;
  padding: 0px 0 0px 10px;
  border-left: 4px solid #1B224C;
}
.news-contents .news-contents-wrapper img {
  width: 400px;
  height: 250px;
}
.news-contents .news-contents-wrapper ul {
  list-style-image: url(image/list.png);
  padding: 22px 0 52px 16px;
  margin: 4px 0 0 13px !important;
}
.news-contents .news-contents-wrapper ul li {
  width: 575px;
}

@media (max-width: 600px) {
  .news-contents-wrapper li {
    width: auto !important;
  }
}
.inquiry {
  padding: 0 0 86px 0;
}
.inquiry .inquiry-wrapper {
  max-width: 740px;
  padding: 0 20px;
  margin: 0 auto;
}
.inquiry .inquiry-wrapper p {
  padding: 55px 0 45px 0;
}

.inquiry-box label {
  font-size: 16px;
}
.inquiry-box input {
  width: 100%;
  height: 50px;
  border: 0.5px solid #1B224C;
  padding: 0px 0 0 18px;
}

#company {
  margin: 7px 0 17px 0;
}

#name {
  margin: 7px 0 17px 0;
}

#mail {
  margin: 11px 0 14px 0;
}

#tel {
  margin: 6px 0 22px 0;
}

textarea {
  border: 0.5px solid #1B224C;
  width: 100%;
  height: 240px;
  margin: 8px 0 0 0;
  padding: 18px 0 0 18px ;
}

form p {
  padding: 0 0 13px 0 !important;
}
form p span {
  font-weight: bold;
}


.textarea {
  padding: 10px 0 0 0;
}

form a {
  text-align: center;
  padding: 20px 0 0 59px;
  font-size: 16px;
  display: block;
}
form a span {
  color: #F5A623;
  text-decoration: underline;
  margin: 0 0 0 -7px;
}

.example2 label {
  cursor: pointer;
  display: block;
  position: relative;
}

.example2 label::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 1px solid #CCC;
  border-radius: 3px;
  margin: 0px 15px -3px 0px
}

.example2 input {
  display: none;
}

.example2 span {
  display: inline-block;
  position: relative;
  margin: 0;
}

.example2 input:checked + span::before {
  content: "";
  display: block;
  height: 5px;
  width: 10px;
  border-bottom: 3px solid #1B224C;
  border-left: 3px solid #1B224C;
  position: absolute;
  transform: rotate(-45deg);
  left: -30px;
  top: 4px;
  bottom: 18px;
  margin: auto;
}

.example2 input:checked + span::before {
  -webkit-animation: 0.5s example2;
          animation: 0.5s example2;
}

@-webkit-keyframes example2 {
  0% {
    height: 0;
    width: 0;
    top: 5px;
    left: -30px;
  }
  30% {
    height: 5px;
    width: 0;
    top: 5px;
    left: -30px;
  }
  100% {
    height: 5px;
    width: 10px;
    top: 5px;
    left: -30px;
  }
}

@keyframes example2 {
  0% {
    height: 0;
    width: 0;
    top: 5px;
    left: -30px;
  }
  30% {
    height: 5px;
    width: 0;
    top: 5px;
    left: -30px;
  }
  100% {
    height: 5px;
    width: 10px;
    top: 5px;
    left: -30px;
  }
}
.privacy {
  padding: 0;
  margin: 0 -15px 0 11px;
}

.example2 {
  text-align: center;
  padding: 25px 0 30px 0;
}

#submit {
  width: 200px;
  height: 50px;
  background-color: #1B224C;
  color: #FFF;
  margin: 0 auto;
  display: block;
  border-radius: 5px;
  text-align: center;
}

.submit :disabled {
  width: 200px;
  height: 50px;
  background-color: #CCC !important;
  color: #FFF;
  margin: 28px 0 0 276px;
  display: block;
  border-radius: 5px;
}

.false-message {
  display: none;
}

.end-message {
  display: none;
}

@media (max-width: 470px) {
  form a {
    padding: 20px 30px 0 50px;
  }
}

.wpcf7-radio {
  display: grid;
}

.wpcf7-list-item {
  margin: 0 0 13px 0;
}

input[type=radio] {
  accent-color: #1B224C;
  width: 20px;
  height: 20px;
  margin: 0 0px 9px 6px;
}

.wpcf7-list-item-label {
  display: block;
  margin: -32px 0 0 45px;
}


.thanks {
  text-align: center;
  padding: 81px 0 82px 0;
}
.thanks p {
  padding: 0px 0 85px 0;
}
.thanks a {
  text-decoration: underline;
}
.radio-ul{
  list-style: none !important;
  padding: 0;
}
.radio-ul li{
  padding: 0;
}

/*共通部分*/
html {
  font-size: 100%;
}

body {

  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif !important;
  font-weight: 500;
  list-style: none;
  color: #1B224C;
}

h1 {
  color: #fff;
  font-size: 32px;
  font-weight: bold;
}

a {
  text-decoration: none;
  color: #1B224C;
}

h2 {
  color: #1B224C;
  font-size: 36px;
  font-weight: bold;
}

h3 {
  font-size: 26px;
  font-weight: bold;
  color: #1B224C;
}

p {
  font-size: 16px;
}

img {
  max-width: 100%;
  object-fit: cover;
}

@media (max-width: 820px) {
  body {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-family: "Noto Sans JP", sans-serif;
  }
  h1 {
    font-size: 35px;
  }
  h2 {
    font-size: 25px !important;
  }
  h3 {
    font-size: 20px;
  }
  p {
    font-size: 14px;
    font-weight: normal;
  }
  a {
    font-size: 14px;
  }
}
/*# sourceMappingURL=style.css.map */