@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
*/

/**********   メンバーシップ  メインコンテンツ  **********/
.c-pageTitle {
display:none;
}
/*** 背景画像 ***/
.swell-block-fullWide.has-bg-img {
background-position: 50%;
background-repeat: repeat;
background-size: unset;
}
.swell-block-fullWide.title-img-bg {
background-repeat: no-repeat;
background-size: contain;
}

.mainc-wrap1 {
padding-bottom: 4rem!important;
}
.tokucho {
font-size: clamp(1.5rem, 1.378rem + 0.61vw, 1.875rem);
font-weight:600;
letter-spacing: 2px;
color: #327cb3;
font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.tokucho .has-border -border04 {
padding: 1.5rem;
}
.txt_tokucho {
display: inline-block;
font-size: clamp(1.25rem, 1.159rem + 0.45vw, 1.5rem);
font-weight:600;
padding: 5px 13px 3px;
background: #df8f8b;
color: #fff;
align-items: center;
border-radius: 6px;
letter-spacing: 2px;
margin-bottom:1rem;
}
.mainc-wrap1-in1 {
padding: 6rem 1rem 0;
gap: 2rem !important;
}
.mainc-wrap1-in2 {
padding: 3rem 1rem;
}
.mainc-wrap1-in3 {
padding: 0 1rem ;
}
.mainc-wrap1-in3 .mod-ttl_03 {
font-size: clamp(1.5rem, 1.378rem + 0.61vw, 1.875rem) !important;
}
.mainc-wrap1-in1 p {
padding:0 1rem;
}
.mainc-wrap1-in3in {
gap: 2rem !important;

}
.mainc-wrap2 {
padding: 9rem 0rem 7rem!important;
}
.mainc-wrap2 h2 {
color: #17459B!important;
}
.mainc-wrap2-in1, .mainc-wrap4-in1 {
padding: 0rem 2rem 4rem;
gap: 3em !important;
}
.mainc-wrap2-in2 {
padding: 0rem 2rem 3rem;
}
.mainc-wrap2-in2 h3, .mainc-wrap4-in2 h3 {
margin: 1em 0 .3em;
padding: 0;
}
.mainc-wrap2-in2 h3::before, .mainc-wrap4-in2 h3::before{
background:none;
background-size:none;
}
.mainc-wrap2-in2 h3:nth-of-type(1) { color: #f3aa4a; }
.mainc-wrap2-in2 h3:nth-of-type(2) { color: #e87b5e; }
.mainc-wrap2-in2 h3:nth-of-type(3) { color: #56b4bd; }
.mainc-wrap2-in2 h3:nth-of-type(4) { color: #429dcc; }

.mainc-wrap2-in2 .txt-left h3:nth-of-type(1) { color: #b67976; }
.mainc-wrap2-in2 .txt-left h3:nth-of-type(2) { color: #bb6ea3; }
.mainc-wrap2-in2 .txt-left h3:nth-of-type(3) { color: #8b83a8; }
.mainc-wrap2-in2 .txt-left h3:nth-of-type(4) { color: #47637b; }

.mainc-wrap2-in3 {
    margin: 3rem 3rem;
}
.mainc-wrap2-in3 .has-border.-border04,
.mainc-wrap5 .has-border.-border04 {
border-radius:20px;
background-color: #FFF;
}


@media (max-width: 820px){
.u-obf-cover {
object-position: 60% center;
}
.mainc-wrap1-in1, .mainc-wrap1-in2, .mainc-wrap1-in3,
.mainc-wrap2-in1 {
padding-left: 0;
padding-right: 0;
}

.mainc-wrap1-in1 {
padding: 4rem 0rem 0;
}
.mainc-wrap1-in1 p {
padding:0 0;
}
.mainc-wrap2-in2 {
display: block;
padding:0;
gap: 0 !important;
}
.mainc-wrap1-in2 .has-border.-border04 {
    padding: 1.5rem;
}
.mainc-wrap2-in2 .txt-right,
.mainc-wrap4-in2 .txt-right{
margin-top: 3em!important;		
}
.mainc-wrap2-in2 .txt-right p,
.mainc-wrap2-in2 .txt-left p{
    margin-bottom: 2em!important;
}
.txt_tokucho {
	width: 100%;
	line-height: 1.5;
	padding: 6px 13px 6px;
}
.mainc-wrap2 {
    padding: 6rem 0rem!important;
}
.mainc-wrap2 h2 {
    padding-left: 110px!important;
}
.mainc-wrap2 .two-h2 {
	padding: .1em .5em .1em;	
	}
.mainc-wrap2 .heading-img::after {
    bottom: 0px !important;
    }	
.mainc-wrap2-in1, .mainc-wrap4-in1 {
    padding: 0rem ;
    gap: 2em !important;
}
	.mainc-wrap2-in3 {
    margin: 0;
}
}





.two-h2 {
font-size: clamp(1.875rem, 1.307rem + 2.84vw, 3.438rem)!important;
}
.two-h2 .h-sub {
font-size: .5em;
opacity: .8;
line-height: 1.4;
display: inline-block;
margin-top: 10px;
}
.mainc-wrap2 .two-h2  {
color: #17459B;
text-shadow: 2px 2px 3px #d1fff1;
}

/* 左に画像設定用 */
.heading-img {
  --box-height: 130px;   /* 全体の高さ */
  --img-width: 130px;    /* 画像の横幅（自由に変更可能） */
  --gap: 16px;           /* 画像と文字の間隔 */

  display: flex;
  align-items: center;    /* 文字を縦中央へ */
  min-height: var(--box-height);
  padding-left: calc(var(--img-width) + var(--gap))!important;
  position: relative!important;
  line-height: 1.4!important;
}

/* 左に画像 */
.heading-img::before {
  content: "";
  position: absolute!important;
  left: 0;
  top: 0;
  width: var(--img-width);
  height: var(--box-height);
  background-image: url("https://maf-j.com/wp3/wp-content/uploads/2025/09/admission_step5.webp");
  background-size: contain; 
  background-position: center;
  background-repeat: no-repeat;
}
/*斜線の下線ボーダー（追加部分） */
.heading-img::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 20px;
  width: 100%;
  height: 6px;   /* 斜線の太さ */
  background-image: repeating-linear-gradient(
    -45deg,      /* ← 斜め方向 */
    #a5ceec 0px,
    #a5ceec 4px,
    transparent 4px,
    transparent 8px
  );
z-index: -10;
}
@media (max-width: 820px){
.heading-img {
    --box-height: 90px!important;
    --img-width: 90px!important;
  display: block;
	  line-height: 1!important;
}
.two-h2 .h-sub {
    line-height: 2;
    display: block;
    margin-top: 0;
}
}

@media (max-width: 480px){
.mainc-wrap2 .two-h2 {
padding: .3em 0em .1em;
}
.heading-img::after {
  top: 65px;
	}
	.mainc-wrap2 h2 {
        padding-left: 95px !important;
    }
}


.mainc-wrap3 .__label{
 font-size: 1em!important;	
}

.mainc-wrap4 {
padding: 9rem 0rem 5rem!important;
}
.mainc-wrap4 .two-h2 {
color: #2085b8;
text-shadow: 2px 2px 3px #d1fff1;
}
.mainc-wrap4 .swell-block-step__number .__label{
  font-size: 1.3em;
color: #17459B!important;
}
.mainc-wrap4-in2 .box h3 {
    line-height: 1.2;
}
.mainc-wrap4-in2 .box:nth-of-type(1) h3 { color: #f0a70f; }
.mainc-wrap4-in2 .box:nth-of-type(2) h3 { color: #D34076; }
.mainc-wrap4-in2 .box:nth-of-type(3) h3 { color: #01A6B7; }
.mainc-wrap4-in2 .box:nth-of-type(4) h3 { color: #3081AC; }

.mainc-wrap4-in2 .txt-left .box:nth-of-type(1) h3 { color: #A66C68; }
.mainc-wrap4-in2 .txt-left .box:nth-of-type(2) h3 { color: #B65E99; }
.mainc-wrap4-in2 .txt-left .box:nth-of-type(3) h3 { color: #735494; }
.mainc-wrap4-in2 .txt-left .box:nth-of-type(4) h3 { color: #446181; }

.mainc-wrap2-in2 img,
.mainc-wrap4-in2 img {
margin-bottom:1rem;
padding-right: .5rem;
}
.mainc-wrap4-in2 .box {
height:200px;
}
.mainc-wrap4-in2 .box:nth-of-type(1),
.mainc-wrap4-in2 .txt-left .box:nth-of-type(1) {
    height: 180px;
}

@media (max-width: 820px){
.mainc-wrap4 {
    padding: 6rem 0rem 4rem !important;
}
.mainc-wrap4 .heading-img::after {
  bottom: 0px !important;
 }
.mainc-wrap4-in2 {
display: block;
    margin-top: 4rem;	
	gap:0!important;
}
.mainc-wrap4-in2 .box, .mainc-wrap4-in2 .box:nth-of-type(1), .mainc-wrap4-in2 .txt-left .box:nth-of-type(1) {
    height: 120px;
	margin-bottom: .5rem;
}
}
@media (max-width: 480px){
.mainc-wrap4 .two-h2 .h-sub {
   line-height: 1.5;
   margin-top: 5px;
}
	.mainc-wrap2-in2 img, .mainc-wrap4-in2 img {
	padding-right: 0rem;	
	}
}


/* スタッフ向けセミナー */
.mainc-wrap5 {
padding: 10rem 0rem 9rem!important;
}
.mainc-wrap5 .mod-ttl_02:before {
    width: 60%;	
}
.mainc-wrap5 .mod-ttl_03 {
margin-bottom:2rem;	
}
.mainc-wrap5 .staff-merit figure {
    text-align: center;
    margin: auto;
}
.mainc-wrap5 .staff-merit p {
font-size:clamp(1.25rem, 1.209rem + 0.2vw, 1.375rem);
color: #000;
}
.mainc-wrap5 .staff-merit {
gap: .1rem!important;
margin-bottom: 1em;
}
.mainc-wrap5 .staff-merit img {
max-width:130px;
}
.mainc-wrap5 .c-balloon__text {
    border-radius: 12px;
    max-width: unset;
}
.mainc-wrap5-in1 {
	gap: 2rem!important;
}
.mainc-wrap5-in1 p {
    padding: 0 1rem;
}
.mainc-wrap5-in3 {
margin:3rem 3rem;
}

/* 特別イベント */

.mainc-wrap6 p {
	margin-bottom: 1em;
	padding: 0 1rem;
}
.mainc-wrap6 .swell-block-box-menu__text {
line-height: 1.5;
}
.mainc-wrap6 .box5 {
padding:1rem 2rem;
}
.mainc-wrap6 .box5 .swell-block-box-menu__item {
    margin-bottom: 5px;
    border:none;
}
.mainc-wrap6 .box5 .swell-block-box-menu__link {
    background: #fff;
    border-radius: 20px;
    margin-right: 5px;
}


@media (max-width: 820px){
.mainc-wrap5 {
    padding: 6rem 0rem!important;
}
.mainc-wrap5 .mod-ttl_02:before {
    width: 100%;
}
.mainc-wrap5-in1 {
    margin-bottom: 5rem;
}
.mainc-wrap5-in1 p {
    padding: 0 ;
}
.mainc-wrap5-in3 {
    margin: 0;
}
.mainc-wrap6 p {
    padding: 0;
}
.mainc-wrap6 .box5 {
   padding: 1rem 0 0;
}
}


@media (max-width: 768px){
.mainc-wrap6 .fb-logo {
width: 180px;
text-align: center;
margin: auto;
	}	
}



