@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Poppins:wght@400;700&family=Titillium+Web:wght@600;700&display=swap');


@media screen and (max-width: 959px) {
  .pc {
    display: none;
  }
}

@media screen and (min-width: 960px){
  .sp {
    display: none;
  }
}

@media screen and (max-width: 599px) {
.sponly {
	display:none;
}
}
@media screen and (max-width: 959px) {
	.pctab {
		display: none;
	}
}


/* ============================
* ヘッダー
* ========================= */

.lp-header {
  margin-bottom: 0;
}

.header {
  width: 100%;
	padding-inline: 28px 24px;
}

.header__inner {
  display: flex;
  align-items: center;
  width: 100%;
  padding-block: 16px;
}

.header__logo img {
  width: 200px;
  vertical-align: top;
}

.header__nav {
  flex-grow: 1;
  max-width: 1150px;
  margin-left: auto;
}

.header__list {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  list-style: none;
}

.header__item a {
  text-decoration: none;
  color: #333;
  font-size: 18px;
  font-weight: 500;
  transition: all 0.3s ease 0s;
}

.header__item a:hover {
  color: #ef7400;
}

.header-btn a {
  position: relative;
  display: inline-block;
  margin-left: 22px;
  padding: 20px 33px 20px 23px;
  background-color: #ef7400;
  border-radius: 99px;
  color: #fff;
  font-weight: 900;
}

.header-btn a:hover {
  opacity: 0.8;
  color: #fff;
}

.header-btn a::after {
  position: absolute;
  content: "" !important;
  top: 10px;
  right: 20px;
  width: 22px;
  height: 20px;
  background-image: url(/wp-content/uploads/2024/04/header-ashirai.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

@media screen and (max-width: 1279px) {
  .header__list {
    padding-left: 28px;
  }
  .header-btn a {
    margin-left: 8px;
    width: 266px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1208px) {
		.header {
		padding-inline:  16px;
	}
	.header__list {
		gap:6px;
	}
  .header__item a {
    font-size: clamp(6px, 1.2vw, 18px);
  }
  .header-btn a {
    font-size: 16px;
  }
}

@media screen and (max-width: 959px) {

  .header__item a {
    display: none;
  }
  .header-btn a {
    display: block;
    /* font-size: 18px; */
  }
  .header__inner {
    padding-block: 20px;
  }
}

@media screen and (max-width: 599px) {
  .header__logo img {
    width: 150px;
  }
		.header__list {
		gap:0px;
	}
  .header__inner {
    padding-block: 14px;
  }
  .header-btn a {
    display: block;
    width: 181px;
    padding: 10px 20px 10px 18px;
    font-size: 10px;
	 text-align:center;
  }
	
	
  .header-btn a::after {
    position: absolute;
    content: "" !important;
    top: 2px;
    right: 9px;
    width: 17px;
    height: 16px;
  }
}

/* ============================
* fv
* ========================= */

.fv-lp {
  position: relative;
}

.btn-cta-img {
  position: absolute;
  width: calc(561 / 1280 * 100%);
  left: calc(170 / 1440 * 100%);
  bottom: calc(38 / 600 * 100%);
}
.wing {
 position: absolute;
  width: calc(561 / 1280 * 100%);
  left: calc(200 / 1440 * 100%);
  bottom: calc(140 / 600 * 100%);
}


.btn-cta-img img {
  vertical-align: top;
}

.fv-lp h1 {
	  position: absolute;
  width: calc(850 / 1280 * 100%);
  left: calc(73 / 1280 * 100%);
  top: calc(14 / 600 * 100%);
}

.fv-lp img {
  vertical-align: top;
}

@media screen and (max-width: 959px) {
	.fv-lp h1 {
  width: calc(1382 / 1440 * 100%);
  left: calc(51 / 1440 * 100%);
  top: calc(116 / 805 * 100%);
}
}


/* ============================
* メンタライズENGLISHとは？
* ========================= */
.about {
  padding-block: 69px 52px !important;
  text-align: center;
}


.about h2 {
  position: relative;
  display: inline-block;
  font-weight: 900;
}

.about h2::before {
  position: absolute;
  content: "" !important;
  top: 50% ;
  left: -100px ;
  transform: translateY(-50%);
  width: 5px ;
  height: 80px;
  background-color: #FFD600;
}

.about p {
  margin-bottom: 42px;
  font-weight: 500;
}

@media screen and (max-width: 959px) {
  .about {
    padding-block: 48px 32px !important;
    text-align: center;
  }

  .about h2 {
    font-size: 30px !important;
  }
  .about h2::before {
    left: -64px;
    height: 64px;
  }

  .about p span{
    font-size: 18px !important;
  }

  .about p strong span {
    font-size: 24px !important;
  }
}

@media screen and (max-width: 599px) {
  .about {
    padding-block: 32px 32px !important;
    text-align: center;
  }

  .about h2 {
    font-size: 22px !important;
    margin-bottom: 32px;
  }
  .about h2::before {
    left: -22px;
    height: 52px;
  }

  .about p span {
    font-size: 3.8vw !important;
  }

  .about p strong span {
    font-size: 4.8vw !important;
  }
  .about p span {
        font-size: 3.8vw !important;
    }
}

/* ============================
* こんな方におすすめ
* ========================= */

.recommended-for {
  padding-block: 72px 55px !important;
  text-align: center;
}

.recommended-for h2{
  position: relative;
  margin-bottom: 54px;
  display: inline-block;
  font-weight: 900;
}


.recommended-for h2::before, .recommended-for h2::after{
  position: absolute;
  content: "" !important;
  top: 50%;
  transform-origin: bottom;
  width: 5px;
  height: 36px;
  background-color: #EF7400;
}

.recommended-for h2::before {
  left: -22px;
  transform: translateY(-50%) rotate(-30deg);
}

.recommended-for h2::after {
  right: -22px;
  transform: translateY(-50%) rotate(30deg);
}

.recommended-for .swell-block-columns__inner{
  justify-content: center;
  gap: 19px;
}

.recommended-for_card {
  padding: 16px 11px !important;
	width: 220px;
  border: 5px solid #ef7400;
  border-radius: 10px;
}

.recommended-for p {
  position: relative;
  padding-left: 27px;
  font-weight: 500;
  text-align: left;
}

.recommended-for p::before {
  position: absolute;
  content: "" !important;
  top: 3px;
  left: -5px;
  width: 24px;
  height: 24px;
  background-image: url(/wp-content/uploads/2024/04/checkbox.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

@media screen and (min-width: 960px) {
	.recommended-for  .ml-0 {
		margin-left: 0;
	}
}

@media screen and (max-width: 959px) {
  .recommended-for {
    padding-block: 56px 40px !important;
  }
  
  .recommended-for h2 {
    margin-bottom: 48px;
    font-size: 32px !important;
  }
	
 .recommended-for .swell-block-columns {
    width: 600px;
    margin-inline: auto;
 }
}

@media screen and (max-width: 599px) {
  .recommended-for {
    padding-block: 40px 40px !important;
  }

  .recommended-for h2 {
    margin-bottom: 40px;
    font-size: 22px !important;
  }

  .recommended-for h2::before,
  .recommended-for h2::after {
    width: 3px;
    height: 30px;
  }
  .recommended-for h2::before {
    left: -14px;
  }
  
  .recommended-for h2::after {
    right: -14px;
  }
	.recommended-for .swell-block-columns {
		left:0;
	}
	.recommended-for .swell-block-columns__inner {
		margin-inline: auto;
		gap: 12px;
	}

  .recommended-for .swell-block-columns {
    width: auto;
    margin-inline: auto;
  }
	
	.recommended-for .recommended-for_card {
		padding: 0 8px 10px !important;
		width: auto;
	}
	
	.recommended-for .swell-block-column {
		width: 45%;
			  margin-left: 0;
	}

  .recommended-for p {
	  padding-left: 19px;
    font-size: 13px !important;
	  letter-spacing: -1.5px;
  }
	
	.recommended-for p::before  {
		width: 18px;
		height: 18px;
	}
	
}


/* ============================
* メンタライズENGLISHで英語力の変化を感じています
* ========================= */

.change {
  padding-block: 87px 68px !important;
  text-align: center;
}

.change h2 {
  position: relative;
  display: inline-block;
  margin-bottom: 91px;
  line-height: 39px;
  letter-spacing: -0.5px !important;
}

.change h2::before {
  position: absolute;
  content: "" !important;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 983px;
  height: 126px;
  background-image: url(/wp-content/uploads/2024/04/change-h2.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.change .youtube {
  margin-inline: auto;
  width: 454px;
  height: auto;
}

@media screen and (max-width: 959px) {
  .change {
    padding-block: 64px 56px !important;
  }
  
  .change h2 {
    margin-bottom: 72px;
    font-size: 26px !important;
    line-height: 30px;
  }
  .change h2::before {
    top: -8px;
    width: 575px;
    height: 100px;
    background-image: url(/wp-content/uploads/2024/04/features-h2.png);
  }
}


@media screen and (max-width: 599px) {
  .change {
    padding-block: 40px 40px !important;
  }

  .change h2 {
    margin-bottom: 60px;
    font-size: 22px !important;
    line-height: 25px;
  }

  .change h2::before {
    top: -10px;
    width: 360px;
    height: 93px;
    background-image: url(/wp-content/uploads/2024/04/change-h2-sp.png);
  }
}


/* ============================
* なぜ4ケ月で自信を持って英語が話せるようになるのか？
* ========================= */

.why {
  padding-block: 111px 82px !important;
  text-align: center;
}

.why h2 {
  position: relative;
  display: inline-block;
  margin-bottom: 86px;
  line-height: 1;
}

.why h2::before {
  position: absolute;
  content: "" !important;
  top: -24px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 960px;
  height: 176px;
  background-image: url(/wp-content/uploads/2024/04/why-h2.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.why span.swl-inline-color .swl-fz {
  position: relative;
  font-family: "Titillium Web", sans-serif;
  font-weight: 600;
}

.why span.swl-inline-color .swl-fz::before {
  position: absolute;
  content: "" !important;
  top: 17px;
  left: -2px;
  width: 23px;
  height: 23px;
  background-image: url(/wp-content/uploads/2024/04/why-ashirai.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.why .why-img-1 {
  margin-bottom: 49px;
}

.why .why-img-2__wrapper {
  margin-inline: auto;
  max-width: 960px;
  font-weight: 500;
}

.why .why-img-2 {
  margin-bottom: 0;
}

.why .why-img-2__wrapper p strong{
  text-decoration:underline dashed #BBBBBB;
}


@media screen and (max-width: 959px) {
  .why {
    padding-block: 64px 64px !important;
  }

  .why h2 {
    margin-bottom: 64px;
    font-size: 27px !important;
  }

  .why h2::before {
    top: -19px;
    width: 580px;
    height: 140px;
    background-image: url(/wp-content/uploads/2024/04/why-h2-tab.png);
  }

  .why h2 span:nth-child(2) {
    font-size: 18px !important;
  }

  .why span.swl-inline-color .swl-fz {
    font-size: 50px !important;
  }

  .why span.swl-inline-color .swl-fz::before {
    top: 11px;
    left: -6px;
    width: 18px;
    height: 18px;
  }
	
  .why .why-img-1 {
    margin-bottom: 32px;
    width: 70%;
    margin-inline: auto;
  }
  .why .why-img-2__wrapper p {
    font-size: 16px !important;
  } 
}

@media screen and (max-width: 599px) {
  .why {
    padding-block: 40px 40px !important;
  }

  .why h2 {
    margin-bottom: 48px;
    font-size: 17px !important;
  }

  .why h2::before {
    top: -35px;
    width: 360px;
    height: 140px;
    background-image: url(/wp-content/uploads/2024/04/why-h2-tab.png);
  }

  .why h2 span:nth-child(2) {
    font-size: 14px !important;
  }

  .why span.swl-inline-color .swl-fz {
    font-size: 40px !important;
  }

  .why span.swl-inline-color .swl-fz::before {
    top: 10px;
    left: -2px;
    width: 11px;
    height: 11px;
  }

  .why .why-img-1 {
    margin-bottom: 24px;
    width: 90%;
    margin-inline: auto;
  }

  .why .why-img-2__wrapper p {
    font-size: 13px !important;
  }
}


/* ============================
* メンタライズENGLISH3つの特徴
* ========================= */

.features {
  padding-block: 108px 75px !important;
  text-align: center;
}

.features h2 {
  position: relative;
  display: inline-block;
  margin-bottom: 112px;
}

.features h2::before {
  position: absolute;
  content: "" !important;
  top: 6px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 775px;
  height: 128px;
  background-image: url(/wp-content/uploads/2024/04/features-h2.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.features h2 span:first-child {
  font-family: "Titillium Web", sans-serif;
  font-weight: 600 !important;
}

.features h2 span:last-child {
  font-weight: 900;
}


.features__items {
  display: flex;
  gap: 28px;
  justify-content: center;
  padding-left: 0 !important;
}

.features__item {
  position: relative;
  width: 300px;
  padding: 50px 8px;
  border-radius: 10px;
  background-color: #fffcec;
  text-align: center;
  list-style: none;
}

.features__item::after {
  position: absolute;
  border-radius: 99px;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 61px;
  background-color: #6e96d4;
  color: #fff;
  font-size: 40px;
  font-family: "Titillium Web", sans-serif;
  font-weight: bold;
  text-align: center;
}

.features__item:nth-child(1):after {
  content: "1" !important;
}
.features__item:nth-child(2):after {
  content: "2" !important;
}
.features__item:nth-child(3):after {
  content: "3" !important;
}

.features__item ul {
  padding-left: 0;
}

.features__item-title {
  margin-bottom: 50px;
  padding-block: 12px;
  background-color: #ef7400;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  text-align: center;
}

.features__item img {
  width: 300px;
  margin-bottom: 14px;
}

.features__list {
  padding: 8px 2px;
  border: 1px solid #ef7400;
  background-color: #fff;
  list-style: none;
	font-size: 14px;
  font-weight: 700;
}

.features__list:not(:last-child) {
  margin-bottom: 9px;
}

@media screen and (max-width: 959px){
  .features {
    padding-block: 80px 56px !important;
  }
  
  .features h2 {
    margin-bottom: 96px;
    font-size: 30px !important;
  }
  .features h2 span:first-child {
    font-size: 56px !important;
  }
  
  .features h2::before {
    top: 6px;
    width: 575px;
    height: 100px;
  }

  .features__items {
    gap: 16px;
  }

  .features__item-title {
    margin-bottom: 40px;
    padding-block: 10px;
    font-size: 14px;
  }
  .features__list {
    font-size: 12px;
  }
}

@media screen and (max-width: 599px) {
  .features {
    padding-block: 40px 40px !important;
  }

  .features h2 {
    margin-bottom: 60px;
    font-size: 20px !important;
  }
  .features h2 span:first-child {
    font-size: 40px !important;
  }

  .features h2::before {
    top: -8px;
    width: 360px;
    height: 93px;
  }
  

  .features__items {
    flex-direction: column;
    gap: 40px;
    align-items: center;
  }
	
	  .features__item {
		  padding-block:  20px 12px;
    width: 360px;
  }

  .features__item::after {
    width: 30px;
    font-size: 20px;
  }
	
	.features__item  img{
		width: 150px;
	}

  .features__item-title {
    margin-bottom: 6px;
    padding-block: 10px;
    font-size: 12px;
  }
  .features__list {
    font-size: 10.5px;
  }


}


/* ============================
* 他社との料金比較
* ========================= */

.compare {
  padding-block: 86px 89px !important;
  text-align: center;
}

.compare h2 {
  display: inline-block;
  margin-bottom: 63px;
  padding: 20px 64px !important;
  border-radius: 99px !important;
  border: 5px solid #ef7400 !important;
}

.compare {
  padding-block: 86px 89px !important;
  text-align: center;
}

.compare h2 {
  display: inline-block;
  margin-bottom: 63px;
  padding: 16px 64px !important;
  border-radius: 99px !important;
  border: 5px solid #ef7400 !important;
}

.compare .c-scrollHint {
	display: none;
}

@media screen and (max-width: 959px) {
  .compare {
    padding-block: 72px 72px !important;
  }

  .compare h2 {
    padding: 20px 64px !important;
    font-size: 32px !important;
  }
}

@media screen and (max-width: 599px) {
  .compare {
    padding-block: 40px 40px !important;
  }

  .compare h2 {
    padding: 16px 60px !important;
    font-size: 22px !important;
    border: 3px solid #ef7400 !important;
  }
	
	.compare .c-scrollHint {
	display: block;
 }
}



/* ============================
* 無料カウンセリング
* ========================= */

.counseling {
  padding-block: 85px 86px !important;
  text-align: center;
}

.counseling h2 {
  position: relative;
  display: inline-block;
  margin-bottom: 63px;
}

.counseling h2::before {
  position: absolute;
  content: "" !important;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 775px;
  height: 128px;
  background-image: url(/wp-content/uploads/2024/04/features-h2.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}


.counseling p:nth-of-type(1) {
  margin-bottom: 65px;
}
.counseling p:nth-of-type(2) {
  margin-bottom: 0;
}


.counseling__inner {
  position: relative;
  margin-bottom: 67px;
	margin-inline: auto;
  padding: 93px 60px 80px;
  max-width: 960px;
  width: 100%;
  border: 6px solid #FFD600;
  border-radius: 50px;
  background-color: #fff;
  text-align: center;
}

.counseling__inner ol {
  padding-left: 0;
  background-color: #fff;
}

.counseling__inner h3 {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 24px 64px;
  border-radius: 99px;
  background-color: #FFD600;
  color: #1B224C;
  font-size: 22px;
  font-weight: bold;
}

.counseling__inner h3::before {
  content: none;
}

.counseling__item {
  list-style: none;
}

.counseling__item-title {
  display: flex;
  align-items: center;
  color: #EF7400;
}
.counseling__item-title span {
  font-size: 36px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}

.counseling__item-title span:last-of-type {
  font-weight: 400;
  margin-inline: 16px;
}


.counseling__item-title p {
  font-size: 28px;
  font-weight: 700! important;
}

.counseling__card {
  display: flex;
  box-shadow: 3px 1px 10px rgba(0,0,0,0.25);
  filter: blur(4);
}

.counseling__item:not(:last-child) .counseling__card {
  margin-bottom: 53px;
}

.counseling__img-wrapper{
	  flex: 0 0 auto;
	overflow: hidden;
}

.counseling__card img {
	    width: 260px;
    height: 258px;
    object-fit: cover;
	  vertical-align: top;
}

.counseling__item:nth-child(1) img{
	  object-position: 0% 50%;
	transform: scale(1.1);
}

.counseling__item:nth-child(2) img{
	  object-position: 50% 50%;
}

.counseling__card-contents {
	  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
	  flex: 1 1 auto;
}

.counseling__card-contents .inner {
	margin-inline: auto;
	padding: 16px;
}

.counseling__card-contents p {
  font-size: 22px;
  font-weight: 500;
  text-align: left;
}

.cta-btn a{
  position: relative;
  background-color: #EF7400;
  padding: 30px 115px 30px 108px;
  font-weight: 900;
}

.cta-btn a::before,.cta-btn a::after {
  position: absolute;
  content: "" !important;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.cta-btn a::before {
  top: 0;
  left: 0;
  transform: translateY(-50%);
  width: 105px;
  height: 101px;
  background-image: url(/wp-content/uploads/2024/04/cta-icon.png);
}


.cta-btn a::after {
  top: 50%;
  right: 57px;
  width: 45px;
  height: 45px;
  transform: translateY(-50%);
  background-image: url(/wp-content/uploads/2024/04/btn-arrow.png);
}

@media screen and (max-width: 959px) {
  .counseling {
    padding-block: 72px 72px !important;
  }

  .counseling h2 {
    font-size: 32px !important;
  }

  .counseling h2::before {
    top: -13px;
    width: 575px;
    height: 100px;
  }

  .counseling h2 + p {
    font-size: 24px !important;
  }

  .counseling__inner h3 {
    font-size: 22px;
    width: 400px;
  }

  .counseling__inner {
    padding: 93px 40px 48px;
  }

  .counseling__item-title span {
    font-size: 30px;
  }

  .counseling__item-title span:last-of-type {
    margin-inline: 12px;
	 
  }
	
	.counseling__card img {
	    width: 230px;
    height: 230px;
	}

  .counseling__item-title p {
    font-size: 24px;
  }

  .counseling__card-contents p {
    font-size: 17px;
  }

  .cta-copy {
    font-size: 28px !important;
  }
	
  .cta-btn a {
    padding: 20px 80px 20px 100px;
    font-size: 26px !important;
  }

  .cta-btn a::before {
    width: 80px;
    height: 80px;
  }

  .cta-btn a::after {
    right: 34px;
    width: 30px;
    height: 30px;
  }


}
@media screen and (max-width: 599px) {
  .counseling {
    padding-block: 40px 40px !important;
  }

  .counseling h2 {
    margin-bottom: 40px;
    font-size: 22px !important;
  }

  .counseling h2::before {
    top: -22px;
    width: 360px;
    height: 93px;
  }

  .counseling h2 + p {
    font-size: 16px !important;
  }

  .counseling p:nth-of-type(1) {
    margin-bottom: 52px;
  }

  .counseling__inner {
    border-radius: 36px;
    padding: 54px 24px;
  }

  .counseling__inner h3 {
    font-size: 12px;
    width: 200px;
    padding: 12px 12px;
  }
	
/*   .counseling__card {
    flex-direction: column;
  } */
	
/*   .counseling__card-contents {
    padding: 16px;
  } */
	
  .counseling__item-title span {
    font-size: 14px;
  }

  .counseling__item-title span:last-of-type {
    font-size: 14px;
  }

  .counseling__item-title p {
    font-size: 12px !important;
  }
	
  .counseling__card-contents p {
    font-size: 11px;
  }
.cta-copy {
    font-size: 20px !important;
  }

  .cta-btn a {
    padding: 16px 40px 16px 52px;
    font-size: 18px !important;
  }

  .cta-btn a::before {
    width: 48px;
    height: 48px;
  }

  .cta-btn a::after {
    right: 11px;
    width: 22px;
    height: 22px;
  }
	
/*   .counseling__card img {
    width: 100%;
    height: 40vw;
    object-fit: cover;
  } */
	
	.counseling__card img {
		width: 100px;
		height: 100px;
		object-fit: cover;
	}
	
	.counseling__item:nth-child(2) img{
	  object-position: 60% 50%;
}
}

/* ============================
* コースについて
* ========================= */

.course {
  padding-block: 126px 74px !important;
  text-align: center;
}

.course h2 {
  position: relative;
  display: inline-block;
  margin-bottom: 65px;
}

.course h2::before {
  position: absolute;
  content: "" !important;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 775px;
  height: 128px;
  background-image: url(/wp-content/uploads/2024/04/features-h2.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.course p {
  margin-inline: auto;
  max-width: 765px;
  text-align: left;
}

@media screen and (max-width: 959px) {
  .course {
    padding-block: 104px 64px !important;
  }
  
  .course h2 {
    margin-bottom: 65px;
    font-size: 32px !important;
  }
  
  .course h2::before {
    top: -14px;
    width: 575px;
    height: 100px;
  }
  
  .course p {
    font-size: 18px !important;
  }
}

@media screen and (max-width: 599px) {
  .course {
    padding-block: 40px 40px !important;
  }

  .course h2 {
    margin-bottom: 40px;
    font-size: 22px !important;
  }

  .course h2::before {
    top: -23px;
    width: 360px;
    height: 93px;
  }
	
  .course p {
    font-size: 13px !important;
	  padding-inline: 16px;
  }
	
}



/* ============================
* コースの流れ
* ========================= */

.flow {
	text-align: center;
}

.flow h2, .voice h2, .support h2, .faq h2 {
	position: relative !important;
}

.flow h2::after, .voice h2::after, .support h2::after, .faq h2::after {
	position:absolute;
  content: "" !important;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 600px;
	height: 128px;
  background-image: url(/wp-content/uploads/2024/04/h2-600.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.flow__text {
	max-width: 800px !important;
	margin-inline: auto;
	padding: 16px 20px !important;
	border-radius: 99px;
}

.flow-item {
	position: relative;
	max-width: 800px;
	margin-inline: auto;
	margin-top: 88px !important;
	border: 3px solid #000;
	border-radius: 10px;
}

.flow__item-upper p{
	text-align: left;
	font-weight: 500;
}

.flow__item-upper:nth-of-type(2) {
	margin-top: 40px !important;
}

.flow__item-span {
	max-width: 450px;
	margin-left:0;
	padding: 0 0 0 16px !important;
	border-radius: 99px;
}

.flow__item-bottom {
	gap: 24px;
	flex-direction: row !important;
	justify-content: center !important;
	align-items: center;
/* 	margin-top: 32px !important; */
}

.flow__flag {
	position: absolute;
	top: -70px;
	left: -55px;
}

@media screen and (max-width: 959px) {
		.flow h2, .voice h2, .support h2, .faq h2 {
		font-size: 32px !important;
	}
	
	.flow h2::after, .voice h2::after {
  top: -15px;
  width: 500px;
	height: 93px;
	}
	
	.flow__text {
		max-width: 500px !important;
		font-size: 15px !important;
	padding: 8px 16px !important;		
	}
	
	.flow h3 {
		font-size: 18px !important;
	}
	
	.flow-item {
		max-width: 500px;
		padding-inline: 8px!important;
		letter-spacing: -1px;
	}
	
	.flow__item-title {
		font-size: 18px !important;
		text-align: center !important;
	}
	
	.flow__item-text {
		font-size: 14px !important;
	}
	
	.flow__item-span {
		font-size: 14px !important;
	}
	
.flow__item-bottom {
	flex-direction: column !important;
}
	.flow__item-bottom.reverse {
			flex-direction: column-reverse !important;
	}
	.flow__item-bottom .rotate-90 {
		transform: rotate(90deg);
	}
		.flow__item-bottom .rotate--90 {
		transform: rotate(-90deg);
	}
	
		.flow__flag {
	top: -47px;
	left: 2px;
}
	
	.flow__flag img{
	height: 78px !important;
		width: auto !important;
}
}
@media screen and (max-width: 599px) {
		.flow h2, .voice h2, .support h2, .faq h2 {
		font-size: 20px !important;
	}
	
	.flow h2::after, .voice h2::after {
  top: -24px;
  width: 440px;
	height: 93px;
  background-image: url(/wp-content/uploads/2024/04/h2-440.png);
}
}

/* ============================
* 受講者の声
* ========================= */


/*  MetaSlider*/

/* pc, sp共通 */
.metaslider .flex-direction-nav .flex-prev,
.metaslider .flex-direction-nav .flex-next {
    display: block !important;
    opacity: 1 !important;
}

.flex-direction-nav a {
	top: -200px !important;
}

.metaslider .flexslider .flex-direction-nav li a {
	width: 36px !important;
	height: 30px !important;
	right: -48px !important;
	background-image: url(/wp-content/uploads/2024/04/arrow-next-sp.png) !important;
	background-size: contain !important;
	background-position: center !important;
	background-repeat: no-repeat !important
}

.metaslider .flex-direction-nav li a.flex-prev {
	background-image: url(/wp-content/uploads/2024/04/arrow-prev-sp.png) !important;
}


/* pc */
.metaslider.ms-theme-outline .flexslider ul.flex-direction-nav li a::before {
	display:none !important;
}

.voice__contents-pc .metaslider .flexslider .flex-direction-nav li a {
	border: none !important;
	right: -80px !important;
	margin: 0px !important;
}

.voice__contents-pc .metaslider .flex-direction-nav li a.flex-prev {
	left: -80px !important;
}

.voice__contents-pc {
	width: 800px;
	margin-inline: auto;
}

/* sp */
.voice__contents-sp .metaslider .flexslider .flex-direction-nav li a.flex-next {
	right: -48px !important;
}

.voice__contents-sp .metaslider .flex-direction-nav li a.flex-prev {
	left: -48px !important;
}

/* ============================
* 受講者の声
* ========================= */

.media__inner {
	position: relative;
}

.media__inner h2 {
	position: absolute;
	top: calc(134 / 628 * 100%);
	left : 50%;
	transform: translatex(-50%);
	max-width: 450px;
	width: calc(450 / 800 * 100%);
	margin-top: 0 !important;
	background-color: transparent;
}
.media__inner h2::before {
	display: none !important;
}

@media screen and (max-width: 599px) {
		.media__inner h2 {
		min-width: 260px;
				top: calc(120 / 628 * 100%);
	}
}

/* ============================
* コース料金
* ========================= */

.price__inner {
	position: relative;
}

.price__inner h2 {
	position: absolute;
	top: calc(70 / 687 * 100%);
	left : 50%;
	transform: translatex(-50%);
	max-width: 458px;
	width: calc(458 / 800 * 100%);
	margin-top: 0 !important;
	background-color: transparent;
}
.price__inner h2::before {
	display: none !important;
}

@media screen and (max-width: 599px) {
		.price__inner h2 {
		min-width: 260px;
				top: calc(50 / 687 * 100%);
	}
}

/* ============================
* サポート体制
* ========================= */

.support h2::after, .faq h2::after{
  top: -20px;
  width: 800px;
  background-image: url(/wp-content/uploads/2024/04/h2-800.png);
}

.support__inner, .faq__inner {
	max-width: 800px;
	margin-inline: auto;
}

.support [class*=" icon-"]:before, .faq [class*=" icon-"]:before{
	color: #fff !important;
	font-weight: bold;
	font-size: 40px;
}

.support .swell-block-accordion__title, .faq .swell-block-accordion__title {
	padding-right: 32px !important;
	background-color: #FFD600;
	text-align: center;
	font-size: 24px !important;
}

.support .swell-block-accordion__label,  .faq .swell-block-accordion__label{
	padding-inline: 0 !important;
}

.swell-block-accordion__body p {
	font-weight: 500;
}

@media screen and (max-width: 959px) {	
	
			.support h2,  .faq h2{
		font-size: 24px !important;
	}
	
.support h2::after, .faq h2::after  {
  top: -20px;
  width: 600px;
	height: 93px;
}

	.support .swell-block-accordion__title, .faq .swell-block-accordion__title {
			padding-right: 13px !important;
	font-size: 13px !important;
}
	.support [class*=" icon-"]:before,  .faq [class*=" icon-"]:before{
	font-size: 24px;
}

	.swell-block-accordion__body p {
	font-size: 12px;
} 
	
}

@media screen and (max-width: 599px)  {
		.support h2,  .faq h2{
		font-size: 18px !important;
		letter-spacing: -1px !important;
	}
	
.support h2::after, .faq h2::after  {
  top: -24px;
  width: 440px;
	height: 93px;
  background-image: url(/wp-content/uploads/2024/04/h2-440.png);
}
}

/* ============================
* コーチ紹介
* ========================= */

.coach {
	text-align: center;
}

.coach h2 {
	background-color: transparent;
		max-width: 550px;
	width: calc(550 / 1280 * 100%);
	min-width: 250px;
	margin-inline: auto !important;
	padding: 0 !important;
}

.coach h2::before {
	display: none !important;
}

.coach__inner {
	gap: 24px;
	max-width: 800px;
	margin-inline: auto;
	border-radius: 10px;
}

.coach__item {
	flex-direction: row !important;
	justify-content: space-between;
}



.coach__message {
	width: 100% !important;
	max-width: 444px !important;
}

.coach .swell-block-accordion__title {
	padding-block: 6px; 
	border-radius: 10px;
	background-color: #EF7400;
	color: #fff;
	font-size: 17px !important;
	font-weight: bold;
}

.coach .swell-block-accordion__body {
	font-weight: 500;
	background-color: #fff;
	border-radius: 10px;
	font-size: 14px !important;
	text-align: left;
}

.coach .swell-block-accordion__label {
	padding-inline: 0 !important;
}

.coach__video {
	max-width: 800px !important;
	margin-inline: auto !important;
}


@media screen and (max-width: 959px)  {
	.coach__item {
	flex-direction: column !important;
		align-items: center !important;
}
	.coach__inner {
	gap: 32px;
	max-width: 500px;
}
}

@media screen and (max-width: 599px) {
	.coach h2  {
		width: calc(550 / 1280 * 100%);
		min-width: 250px;
	}
}

/* ============================
* よくある質問
* ========================= */


.faq .swell-block-accordion__title {
	padding-left: 78px !important;
	font-size: 20px !important;
   text-align: left;
	position:relative;
}

.faq .swell-block-accordion__title:before,  .faq .swell-block-accordion__body::before {
	position: absolute;
	content: "";

	left:16px;
	width: 50px;
	height: 50px;
	background-size: contain !important;
	background-position: center !important;
	background-repeat: no-repeat !important
}

.faq .swell-block-accordion__title:before {
		top: 50%;
	transform: translatey(-50%);
		background-image: url(/wp-content/uploads/2024/04/faq-q.png) !important;
}

.faq .swell-block-accordion__body {
	padding-block: 24px !important;
	padding-left: 70px !important;
	position:relative;
}

.faq .swell-block-accordion__body::before {
		top: 24px;
	background-image: url(/wp-content/uploads/2024/04/faq-a-1.png) !important;
}

@media screen and (max-width: 959px) {
		.faq .swell-block-accordion__title {
	padding-right: 13px !important;
	font-size: 13px !important;
	padding-left: 50px !important;
}

	.faq .swell-block-accordion__title:before,  .faq .swell-block-accordion__body::before {
	left:8px;
	width: 32px;
	height: 32px;
}
	
.faq .swell-block-accordion__body::before {
		top: 16px;
}
	.faq .swell-block-accordion__body {
	padding-block: 16px !important;
	padding-left: 50px !important;
}
}




/* ============================
* メンタライズENGLISHはこうやって生まれました
* ========================= */

.message-h2-wrapper  {
	max-width: 800px;
	margin-inline: auto;
	position: relative;
}

.message h2 {
	position: absolute;
	bottom: calc(19 / 371 * 100%);
	right: calc(15 / 800 * 100%);
	max-width: 274px;
	width: calc(274 / 800 * 100%);
	padding: 0!important;
	background-color: transparent;
}

.message h2::before {
	display: none !important;
}

.message__contents {
	max-width: 800px;
	margin-inline: auto;
	padding-inline: 18px;
	font-weight: 500;
}


@media screen and (max-width: 959px)  {
.message__contents p:first-child {
	font-size: 20px !important;
}
	.message__contents p:not(:first-child){
		font-size: 14px !important;
	}
}

@media screen and (max-width: 599px) {	
.message__contents {
	padding-inline: 12px;
}
	
	.message__contents p:first-child {
	font-size: 17px !important;
}
	.message__contents p:not(:first-child){
		font-size: 12px !important;
	}
}

/* ============================
* お問い合わせフォーム
* ========================= */

.contact h2{
	max-width: 800px;
	padding-bottom: 14px !important; 
	border-bottom: 1px solid #333 !important;
	margin-inline: auto;
}

.contact__inner {
	max-width: 620px;
	margin-inline: auto;
}

.contact input {
	background-color: #fff;
}

.contact p:nth-of-type(2),
.contact p:nth-of-type(4){
    margin-bottom: 5px;
}

.contact p:nth-of-type(6),
.contact p:nth-of-type(7),
.contact p:nth-of-type(8),
.contact p:nth-of-type(9),
.contact p:nth-of-type(10){
    margin-bottom: 18px;
}

.contact p:nth-of-type(2) input,
.contact p:nth-of-type(4) input,
.contact p:nth-of-type(6) input{
   padding-block: 9px;
	border-color: #333333;
}

.contact p:nth-of-type(7) input,
.contact p:nth-of-type(8) input,
.contact p:nth-of-type(9) input,
.contact p:nth-of-type(10) input{
    width: 100%;
	padding-block: 10px;
	padding-inline: 10px;
	border-color: #333333;
}

.contact input[type="submit"] {
	display: block;
	margin-inline: auto;
	margin-top: 40px;
	padding: 13px 70px;
	border: none;
	border-radius: 5px;
	background-color: #EF7400;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
}

@media screen and (max-width: 959px)  {
	.contact h2, .company h2 {
		font-size: 32px !important;
	}
}

@media screen and (max-width: 599px) {	
	.contact h2, .company h2 {
		font-size: 20px !important;
	}
	
	.contact p:nth-of-type(1),
	.contact p:nth-of-type(3),
	.contact p:nth-of-type(5) {
		font-size: 14px !important;
	}
	.contact p:nth-of-type(2),
.contact p:nth-of-type(4){
    margin-bottom: 0;
}

.contact p:nth-of-type(6),
.contact p:nth-of-type(7),
.contact p:nth-of-type(8),
.contact p:nth-of-type(9),
.contact p:nth-of-type(10){
    margin-bottom: 8px;
}
	
	.contact p:nth-of-type(2) input,
.contact p:nth-of-type(4) input,
.contact p:nth-of-type(6) input,
.contact p:nth-of-type(7) input,
.contact p:nth-of-type(8) input,
.contact p:nth-of-type(9) input,
.contact p:nth-of-type(10) input{
   font-size: 13px !important;
}
	
	.contact p:nth-of-type(2) input,
.contact p:nth-of-type(4) input,
.contact p:nth-of-type(6) input{
   padding-block: 4px;
}

.contact p:nth-of-type(7) input,
.contact p:nth-of-type(8) input,
.contact p:nth-of-type(9) input,
.contact p:nth-of-type(10) input{
	padding-block: 4px;
}
	
.contact p:nth-of-type(11),
	.contact p:nth-of-type(12) {
		font-size: 12px !important;
		letter-spacing: -1px;
	}	
	
	.contact input[type="submit"] {
	margin-top: 24px;
	padding: 8px 70px;
	font-size: 14px;
}
}

/* ============================
* 会社概要
* ========================= */

.company table {
	max-width: 691px;
	margin-inline: auto;
}

.company tbody tr:first-child td{
	border-top: none !important;
}

.company tbody td {
	border-color: #1B224C;
	font-size: 18px;
	font-weight: 500;
}

@media screen and (max-width: 599px) {	
	.company table tr>:first-child:not(.-no1)  {
		min-width: 100px !important;
	}
.company tbody td {
	font-size: 14px;
}
}

/* ============================
* フッター
* ========================= */
.footer {
	padding-block:  24px 146px !important; 
}

.footer__inner {
	max-width: 800px;
	justify-content: space-between;
	margin-inline: auto;
}

.footer a {
	transition: all 0.3s ease 0s;
}

.footer a:hover{
	color: #EF7400;
}

@media screen and (max-width: 599px) {
	
	.footer {
	padding-block:  16px 118px !important; 
}
	
.footer a {
	font-size: 9.5px !important;
}
	
	.footer p {
		font-size: 9.5px !important;
	}
}

/* ============================
* フローCTA
* ========================= */

.cta-float {
/* 	display: none; */
	position: fixed;
	padding-block: 16px !important;
	width:100%;
	left: 0;
	bottom: -100%;
	z-index: 100;
}

.cta-float__inner {
	max-width:500px !important;
	padding-inline: 15px;
	margin-inline: auto;
	left: 0;
}