@charset "utf-8";

/* CSS Document */
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  line-height: 32px;
  margin: 0;
  -webkit-text-size-adjust: 100%;
}

body * {
  box-sizing: border-box;
}
h1{
	display : none;
}
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width:599px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }
}

/* PCとSPの改行切り替え */
@media screen and (min-width: 1025px) {
  .br-pc {
    display: block;
  }

  .br-sp {
    display: none;
  }
}

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

  .br-sp {
    display: block;
  }
}

.space_m{
	height : 20px;
}
.space_l{
	height : 40px;
}
.clear{
	clear : both;
}
/*ファーストビュー*/
#fv {
  width: 100%;
  margin: 0;
}

.fv-pc {
  width: 100%;
  text-align: center;
  height: auto;
	line-height : 0;
}

.fv-tablet,
.fv-sp {
  display: none;
}

@media only screen and (max-width: 1080px) {
  .fv-tablet {
    width: 100%;
    text-align: center;
    display: block;
  }

  .fv-pc,
  .fv-sp {
    display: none;
  }
}

@media only screen and (max-width: 640px) {
  .fv-sp {
    width: 100%;
    text-align: center;
    height: auto;
    display: block;
  }
	.fv-sp img{
		width : 100%;
		margin : 0;
		padding : 0;
	}
  .fv-pc,
  .fv-tablet {
    display: none;
  }
}
.image_area {
width: 320px;
display: block;
vertical-align: bottom;
}
.image_area2 {
width: 100px;
display: block;
vertical-align: bottom;
}
.image_area3 {
width: 360px;
display: block;
vertical-align: bottom;
}
@media only screen and (min-width: 737px){
.image_right {
float: right;
margin: 0 0 21px 25px;
}
.image_left {
float: left;
margin: 0 25px 30px 0;
}
}
@media only screen and (max-width: 736px){
.image_right {
float: none;
	width:100%;
margin: 10px 0px;
}
.image_left {
float: none;
margin: 25px auto;
}
}
/*装飾関連*/
.center{
	text-align : center;
}
.font-mini{
	font-size : 13px;
}
.font-m{
	font-size : 115%;
}
.font-l{
	font-size : 135%;
}
.font-gentei{
	font-size : 32px;
	font-weight : 900;
	line-height : 42px;
}
.pink{
	color : #ff2768;
}
.yellow{
	color : #fdcb58;
}
.purple{
	color : #3d36b2;
}
.blue{
	color : #0c74b0;
}	
.marker-yellow{
	background : #f9e95f;
}

.main-text p{
	margin-bottom : 25px;
}

/*チェックマークでの箇条書き*/
.nayami-check ul {
	padding-left: 20px;
	font-size : 20px;
	font-weight : 600;
	margin-left : -20px;
}
.nayami-check li {
	list-style: none;
	background: url(https://elp.smarttalk.biz/wp-content/themes/kmi-theme/img/nayami-checkmark.png)  0% 4px no-repeat;
	padding: 5px 0px 5px 38px;
	margin-bottom : 15px;
}

/*オススメチェック箇条書き*/
.osusume-check ul {
	padding-left: 20px;
	font-size : 20px;
	font-weight : 600;
	margin-left : -20px;
}
.osusume-check li {
	list-style: none;
	background: url(https://elp.smarttalk.biz/wp-content/themes/kmi-theme/img/osusume-checkmark.png)  0% 4px no-repeat;
	padding: 5px 0px 5px 46px;
	margin-bottom : 15px;
	border-bottom : 2px dotted #fdcb58;
}

.sign{
	text-align : right;
}

/*よくある質問*/
.faq dt {
    margin-bottom: 1em;
    color: #0d8ad7;
    font-weight: 600;
}

.faq  dt::before,
.faq  dd::before {
    margin-right: .4em;
}

.faq  dt::before {
    content: "Q.";
}

.faq  dd {
    margin: 0 0 2.5em;
    padding: 1em 1.5em;
    background-color: #f0f8ff;
    color: #333333;
}

.faq  dd::before {
    content: "A.";
	color : #cc0000;
	font-weight : 600;
}

/*動く矢印*/
        .arrow-container {
            text-align: center;
            margin-top: 20px;
			margin-bottom : 30px;
        }

        .arrow {
            font-size: 30px; /* 矢印のサイズを少し小さく */
            color: #ff2768; /* 矢印の色を指定 */
            margin: 10px;
            display: inline-block;
            font-weight: bold; /* 矢印を太くする */
            animation: moveDown 1s infinite; /* アニメーションを1秒周期に設定 */
        }

        @keyframes moveDown {
            0%, 100% {
                transform: translateY(0); /* 元の位置 */
            }
            50% {
                transform: translateY(20px); /* 矢印が下に移動する距離 */
            }
        }
.youtube{
position:relative;
padding-bottom: 56.25%;
padding-top:30px;
height:0;
overflow:hidden;
}
.youtube iframe{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}

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

ul.shikaku{
  counter-reset:list;
  list-style-type:none;
  padding:0;
	width : 50%;
}
@media screen and (max-width:767px) {
ul.shikaku{
  counter-reset:list;
  list-style-type:none;
  padding:0;
	width : 90%;
}
}

ul.shikaku li{
  position:relative;
  padding: 0 0 0 20px;
  margin: 7px 0 7px 0px;
  font-weight: bold;
  line-height: 30px;
  border-bottom: dashed 1px #F6A38B;
}
ul.shikaku li:before{
  counter-increment: list;
  content: "";
  display: block;
  position: absolute;
  left: 0px;
  height: 10px;
  width: 10px;
  border-radius: 50%;
  background: #F6A38B;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

/*受講生の感想ボックス*/
.kansou-box{
	padding:3em 2em 2em; /* ボックス内側余白 */
	position:relative; /* 配置(ここを基準に)*/
	border: 1px solid #4190ef;/* ボックスの線 (太さ・種類・色)*/
	background : #fff;
	margin-bottom : 30px;
}
.kansou-box .box-title {
	background-color:#4190ef; /* タイトル背景色 */
	font-size: 1em;/* タイトル文字の大きさ */
	color: #fff ; /* タイトル文字色 */
	padding: 10px 12px;/*タイトルの余白*/
	line-height: 1;/*タイトルの行の高さ*/
	position:absolute;/* 配置(ここを動かす) */
	top: -10px; /*上からの距離*/
	left: 20px; /*左からの距離*/
}
.hanashi-box{
	position: relative;
	background: #fff; /*背景色*/
	padding: 3em 1em 2em; /*内側余白（上・左右・下）*/
	margin-top : 40px;
}

.hanashi-box::before {
	position: absolute;
	content: "";
	width: 95%;
	height: 10px;
	top: 0.5em;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	border-top: dotted 10px #fdcb58; /*ドットの形・大きさ・色*/
}

.minituku-ttl-no{
	background : #4d45d8;
	width : 150px;
	font-weight : 600;
	color : #ffdd55;
	border-radius : 5px;
	padding : 5px 10px;
}
.minituku-ttl{
	font-size : 20px;
	font-weight : 600;
	color : #4d45d8;;
	margin-top : 10px;
	margin-bottom : 10px;
}

/*説明会詳細*/
.s-syousai {
  border-collapse: collapse;
  width: 100%;
	margin : 20px 0 15px;
}
 
.s-syousai th,
.s-syousai td {
  border: 1px solid #555151;  
  padding: 8px;
}
 
.s-syousai th {
  background: #fbe0e8;
  text-align: left;
  width: 25%;
}
 
@media only screen and (max-width: 800px) {
.s-syousai {
  border-collapse: collapse;
  width: 100%;
	margin : 20px 0 15px;
}
 
.s-syousai th,
.s-syousai td {
  border: 0px solid #555151;  
  padding: 8px;
}
 
.s-syousai th {
  background: #fbe0e8;
  text-align: left;
  width: 25%;
}
.s-syousai tr,
.s-syousai th,
.s-syousai td {
    display: block;
    width: auto;
  }
  
.s-syousai tr:first-child {
    border-top: 0px solid #dbe1e8;  
  }
  
.s-syousai th,
.s-syousai td {
    border-top: 1px solid #555151;
  }
}

/*特典部分*/
.tokuten-box {
    margin: 1em 0;
    background: #ffffff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.tokuten-box .box-title {
    background: #cc0000;
    padding: 0px;
    text-align: center;
	line-height : 0;
}
.tokuten-box p {
    padding: 20px;
    margin: 0;
}


/* -- img.bounce -------------------------------------------------------------------------------------------- */

img.bounce {
	-webkit-animation: bounce 1.8s linear infinite;
	animation: bounce 1.8s linear infinite;
}

@-webkit-keyframes bounce {
	0% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
	25% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	40% {
		-webkit-transform: scale( 0.85 );
		transform: scale( 0.85 );
	}
	50% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	60% {
		-webkit-transform: scale( 0.93 );
		transform: scale( 0.93 );
	}
	70% {
		-webkit-transform: scale( 1.03 );
		transform: scale( 1.03 );
	}
	80% {
		-webkit-transform: scale( 0.95 );
		transform: scale( 0.95 );
	}
	90% {
		-webkit-transform: scale( 1.01 );
		transform: scale( 1.01 );
	}
	100% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
}

@keyframes bounce {
	0% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
	25% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	40% {
		-webkit-transform: scale( 0.85 );
		transform: scale( 0.85 );
	}
	50% {
		-webkit-transform: scale( 1.05 );
		transform: scale( 1.05 );
	}
	60% {
		-webkit-transform: scale( 0.93 );
		transform: scale( 0.93 );
	}
	70% {
		-webkit-transform: scale( 1.03 );
		transform: scale( 1.03 );
	}
	80% {
		-webkit-transform: scale( 0.95 );
		transform: scale( 0.95 );
	}
	90% {
		-webkit-transform: scale( 1.01 );
		transform: scale( 1.01 );
	}
	100% {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
	}
}








/* -- responsive ----------------------------------------------------------------------------------------------------------------- */

/* 640pixel start */
@media screen and ( max-width: 640px ){

img.bounce {
	max-width: 100%;
}



}
/* 640pixel end */

#footer{
	width : 100%;
	background : #333;
	color : #fff;
	font-size : 13px;
	text-align : center;
	padding : 10px 0px;
}

#footer{
	width : 100%;
	background : #333;
	color : #fff;
	font-size : 13px;
	text-align : center;
	padding : 10px 0px;
}

/*特定商取引法に基づく表記*/

.tokutei-ttl{
	background : orange;
	color : #fff;
	font-size : 24px;
	padding : 40px 0px;
	text-align : center;
}
.tokutei {
  border-collapse: collapse;
  width: 100%;
}
 
.tokutei th,
.tokutei td {
  border: 1px solid #dbe1e8;  
  padding: 8px;
}
 
.tokutei th {
  background: #f9fafc;
  text-align: left;
  width: 25%;
}
 
@media only screen and (max-width: 800px) {
  .tokutei tr,
  .tokutei th,
  .tokutei td {
    display: block;
    width: auto;
  }
  
  .tokutei tr:first-child {
    border-top: 1px solid #dbe1e8;  
  }
  
  .tokutei th,
  .tokutei td {
    border-top: none;
  }
}

.main-text-policy h2{
	font-size : 22px;
	margin : 40px 0px 20px 0px;
	font-weight : 600;
}
.main-text-policy h3{
	font-size : 20px;
	margin : 20px 0px 20px 0px;
	font-weight : 600;
}
.main-text-policy h4{
	font-size : 18px;
	margin : 20px 0px 20px 0px;
	font-weight : 600;
}
.main-text-policy ul {
    list-style-type: disc; /* ドットを表示 */
    list-style-position: outside; /* ドットをリストの外側に表示 */
    padding-left: 20px; /* リスト全体のインデントを調整 */
	margin : 20px 0px
}

.main-text-policy ul li {
    margin-bottom: 5px; /* 各リスト項目の間隔を調整 */
    padding-left: 5px; /* ドットとテキストの距離を微調整 */
}

footer{
	background : #333;
	color : #fff;
	text-align : center;
	padding : 15px 0px;
	font-size : 13px;
}
.footer_link{
	text-align : center;
	padding : 15px;
}
.footer_link a{
	text-decoration : none;
	color : #fff;
}
.cr a{
	text-decoration : none;
	color : #fff;	
}