:root {
  --base-2: #fff;
}

.center{
	text-align : center;
}
.font-m{
	font-size : 120%!important;
}
.sejyutsu-name{
	font-size : 115%!important;
	color : #e88321;
	border-bottom : 1px dotted #e88321;
	padding-bottom : 5px;
	margin-bottom : 15px;
	font-weight : 600!important;
}
.img-p{
	padding : 0 10px;
}

.space-30{
	height : 30px;
}

/* PC表示 / SP非表示 */
.pc {
  display: block;
}

/* SP表示 / PC非表示 */
.sp {
  display: none;
}

/* 899px以下をスマホ扱い */
@media screen and (max-width: 899px) {
  .pc {
    display: none;
  }

  .sp {
    display: block;
  }
}

/* PCで表示、スマホで非表示 */
.br-pc {
  display: block;
}

.br-sp {
  display: none;
}

/* スマホ時（899px以下など自由に調整可能） */
@media screen and (max-width: 899px) {
  .br-pc {
    display: none;
  }

  .br-sp {
    display: block;
  }
}

/***パンクズ***/
.pankudu{
	width : 100%;
	height : 32px;
	line-height : 32px;
	background : #fff;
	color : #fff;
	font-size : 13px;
}
.pankudu-in{
	max-width : 1150px;
	margin : 0  auto;
}
.pankudu,
.pankudu a{
  color:#555151 !important;
  text-decoration:none !important;
}

.pankudu a:hover{
  color:#555151 !important;
  text-decoration:none !important;
}

@media screen and (max-width: 899px) {
.pankudu{
	width : 100%;
	height : 24px;
	line-height : 24px;
	background : #fff;
	color : #555151!important;
	font-size : 12px;
	padding-left : 10px;
	padding-bottom : 5px;
}
}
/*****申込ボタン*****/
.order-btn{
    width: fit-content;
    margin: 15px auto 5px;
}

.order-btn a{
    display: inline-block;
    background: #4D9BC1;
    color: #fff;
    text-decoration: none;
    padding: 7px 40px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 16px;
    transition: 0.3s;
}

.order-btn a:hover{
    opacity: 0.8;
	color : #fff!important;
}

/***ウィジェット（サイトメニュータイトル）**/
.widget-title {
    margin-bottom: 15px!important;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 400;
    text-transform: none;
	background : #2bb7f2;
	color : #fff;
	padding : 5px 10px;
}

/* ウィジェットメニュー */
.widget ol,
.widget ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* 各項目 */
.widget li {
    margin: 0;
    padding: 5px 0;
    border-bottom: 1px dotted #ccc;
}

/* リンク */
.widget li a {
    color: #333;
    text-decoration: none;
    display: block;
    line-height: 1.7;
    transition: 0.3s;
    position: relative;
    padding-left: 16px;
}

/* ▶ マーク */
.widget li a::before {
    content: "▶";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 9px;
    color: #2bb7f2;
}

/* hover */
.widget li a:hover {
    opacity: 0.7;
}

/*** 見出し関連　**/
.top-detail-title{
    font-size:28px!important;
    color:#3cb5eb;
    font-weight:bold;
    border-bottom:3px solid #7ed0ef;
    padding-bottom:0px;
    margin-bottom:20px;
}
.about-school-detail-title{
    font-size:28px!important;
    color:#3cb5eb;
    font-weight:bold;
    border-bottom:3px solid #7ed0ef;
    padding-bottom:0px;
    margin-bottom:20px;
}
.about-mel-detail-title{
    font-size:28px!important;
    color:#333;
	line-height : 38px!important;
	text-align : center;
    font-weight:bold;
    margin-bottom:20px;
}

.top-cource-title{
    font-size:24px!important;
    background:#3cb5eb;
	color : #fff;
    font-weight:bold;
    border:2px solid #7ed0ef;
    padding:10px;
    margin-bottom:20px;
}

/* トップからのリンクボタン */
.syousai-btn-area {
  width: 100%;
  text-align: center;
  margin-top: 15px;
}

.syousai-btn {
  display: inline-flex !important;
  justify-content: center;
  align-items: center;

  border: 2px solid #23a6dd;
  color: #23a6dd !important;

  font-size: 16px;
  font-weight: bold;
  text-decoration: none !important;

  padding: 8px 40px;
  border-radius: 100px;
  background: #fff;

  line-height: 1.4;
  text-align: center;

  transition: 0.3s;
}

.syousai-btn:hover {
  opacity: 0.7;
  color: #23a6dd !important;
}

@media screen and (max-width: 899px) {
.top-detail-title{
    font-size:24px!important;
    color:#3cb5eb;
    font-weight:bold;
    border-bottom:3px solid #7ed0ef;
    padding-bottom:7px;
    margin:0 10px 20px 10px;
	text-align : center;
}
.about-school-detail-title{
    font-size:22px!important;
    color:#3cb5eb;
    font-weight:bold;
    border-bottom:3px solid #7ed0ef;
    padding-bottom:0px;
    margin:0 0px 20px 0px;
	text-align : center;
}
.about-mel-detail-title{
    font-size:24px!important;
    color:#333;
	line-height : 38px!important;
	text-align : center;
    font-weight:bold;
    margin-bottom:20px;
}
.top-cource-title{
    font-size:24px!important;
    background:#3cb5eb;
	color : #fff;
    font-weight:bold;
    border:2px solid #7ed0ef;
    padding:10px;
    margin:0 20px 15px 20px;
	text-align : center;
}
}
/* =========================
アスメルフォーム
========================= */

.asumeru-form-wrap{
    width:100%;
    padding:10px 20px;
    box-sizing:border-box;
}

/* 全体ボックス */
.asumeru-box{
    max-width:640px;
    margin:0 auto;
    background:#f5fbff;
    padding:40px 30px;
    border-radius:16px;
    text-align:center;
    box-sizing:border-box;
}

/* 入力欄 */
.asumeru-input{
    width:100%;
    height:60px;
    border:1px solid #cfe5f2;
    border-radius:10px;
    padding:0 18px;
    font-size:20px!importantpx;
    box-sizing:border-box;
    background:#fff;
    transition:0.2s;
}

/* フォーカス */
.asumeru-input:focus{
    outline:none;
    border-color:#3cb5eb;
    box-shadow:0 0 0 4px rgba(60,181,235,0.12);
}

/* プレースホルダー */
.asumeru-input::placeholder{
    color:#999;
	font-size : 20px;
}

/* ボタン */
.asumeru-btn{
    width:240px;
    height:54px;
    margin-top:18px;
    border:none;
    border-radius:999px;
    background:#3cb5eb;
    color:#fff;
    font-size:17px;
    font-weight:bold;
    cursor:pointer;
    transition:0.2s;
}

/* hover */
.asumeru-btn:hover{
    opacity:0.85;
}

/* =========================
スマホ
========================= */

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

    .asumeru-form-wrap{
        padding:0px;
    }

    .asumeru-box{
        padding:30px 20px;
        border-radius:12px;
    }

    .asumeru-input{
        height:56px;
        font-size:16px;
    }

    .asumeru-btn{
        width:100%!important;
        height:52px;
        font-size:16px;
    }
/* プレースホルダー */
.asumeru-input::placeholder{
    color:#999;
	font-size : 18px;
}

}

.asumeru-form-area{
    background:#f7fbff;
    padding:30px;
    border-radius:12px;
}

.asumeru-item{
    margin-bottom:20px;
}

.asumeru-label{
    font-size:16px;
    font-weight:bold;
    margin-bottom:8px;
    color:#333;
}

.asumeru-input{
    width:100%;
    height:52px;
    padding:0 15px;
    border:1px solid #ccc;
    border-radius:8px;
    box-sizing:border-box;
    font-size:16px;
    background:#fff;
}

.asumeru-textarea{
    width:100%;
    height:180px;
    padding:15px;
    border:1px solid #ccc;
    border-radius:8px;
    box-sizing:border-box;
    font-size:16px;
    background:#fff;
    resize:vertical;
}

.asumeru-btn{
    width:100%;
    height:58px;
    border:none;
    border-radius:8px;
    background:#3cb5eb;
    color:#fff;
    font-size:18px;
    font-weight:bold;
    cursor:pointer;
}

/********************************
ブログ関連
********************************/

.blog-list{
    display:flex;
    flex-wrap:wrap;
    gap:30px;
}

.blog-card{
    width:calc((100% - 30px) / 2);

    background:#ffffff;

    border:1px solid #dcdcdc;

    border-radius:10px;

    overflow:hidden;

    box-sizing:border-box;

    transition:0.3s;
}

.blog-card:hover{
    transform:translateY(-3px);

    box-shadow:0 5px 15px rgba(0,0,0,0.08);
}

.blog-card a{
    display:block;

    text-decoration:none;
}

/********************************
アイキャッチ
********************************/

.blog-thumb{
    width:100%;

    aspect-ratio:16 / 9;

    overflow:hidden;

    background:#f5f5f5;
}

.blog-thumb img{
    width:100%;
    height:100%;

    object-fit:cover;

    display:block;
}

/********************************
本文エリア
********************************/

.blog-content{
    padding:20px;

    background:#ffffff;
}

/********************************
日付・カテゴリー
********************************/

.blog-meta{
    display:flex;

    flex-wrap:wrap;

    gap:10px;

    margin-bottom:10px;

    font-size:12px;
}

.blog-date{
    color:#888888;
}

.blog-category a{
    color:#fff;
	background : #333;
    text-decoration:none;
	font-size : 12px!important;
	padding : 0px 8px 3px 8px;
}

/********************************
タイトル
********************************/

.blog-title{
	font-size : 18px!important;
	font-weight : 600;
    margin:0 0 15px;
    line-height:1.5;
}

.blog-title a{
    color:#222222;

    font-size:20px;

    font-weight:600;

    text-decoration:none;
}

/********************************
本文
********************************/

.blog-text{
    font-size:15px;

    line-height:1.9;

    color:#555555;
}

/********************************
ページャー
********************************/

.blog-pager{
    margin-top:50px;

    text-align:center;
}

/********************************
スマホ
********************************/

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

    .blog-list{
        display:block;
    }

    .blog-card{
        width:100%;

        margin-bottom:20px;
    }

    .blog-title a{
        font-size:18px;
    }

}

/********************************
記事詳細
********************************/
.single-title{
    font-size:20px!important;
font-weight : 600;
    line-height:1.5;
    margin-bottom:15px;
	background : #3182CE;
    color:#fff;
	padding : 10px
}


.single-thumb{
    margin-bottom:20px;
}

.single-thumb img{
    width:100%;

    height:auto;

    display:block;
}

.single-meta{
    display:flex;

    flex-wrap:wrap;

    gap:15px;

    margin-bottom:30px;

    font-size:13px;

    color:#888888;
}

.single-category a{
    color:#fff;
background : #333;
	padding : 0px 8px 3px 8px!important;
	font-size : 12px!important;
	border-radius : 10px;
    text-decoration:none;
}

.single-content{
    line-height:2;

    color:#333333;
}

/********************************
スマホ
********************************/

@media screen and (max-width:899px){
.single-title{
    font-size:20px!important;
font-weight : 600;
    line-height:1.5;
    margin-bottom:15px;
	background : #3182CE;
    color:#fff;
	padding : 0 10px
}

}

/********************************
メルマガ内容
********************************/

.mel-naiyou{
    background:#ffffff;

    border:1px solid #dcdcdc;

    border-radius:12px;

    padding:25px;

    box-sizing:border-box;
}

.mel-naiyou ul{
    margin:0;
    padding:0;

    list-style:none;
}

.mel-naiyou li{
    position:relative;
    padding:0 0 18px 38px;
    margin-bottom:18px;
    font-size:18px!important;
font-weight : 600;
    line-height:1.9;
    color:#333333;
    border-bottom:1px dotted #cfcfcf;
}

/********************************
ペンアイコン
********************************/

.mel-naiyou li::before{
    content:"✏";
    position:absolute;
    left:0;
    top:4px;
    width:24px;
    height:24px;
    line-height:24px;
    text-align:center;
    border-radius:50%;
    background:#4da6d6;
    color:#ffffff;
    font-size:13px;
    font-weight:bold;
}

.blog-category span{
    display:inline-block;
    background:#000;
    color:#fff;
    padding:4px 12px;
    border-radius:3px;
    font-size:12px!important;
    line-height:1;
}

/********************************
最後の線削除
********************************/

.mel-naiyou li:last-child{
    margin-bottom:0;

    padding-bottom:0;

    border-bottom:none;
}

/********************************
スマホ
********************************/

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

    .mel-naiyou{
        padding:20px;
    }

    .mel-naiyou li{
        font-size:17px!important;
		font-weight : 600;
        padding-left:34px;
    }

}

/****　カレンダー内全席表示 *******/
 * .seminar-status{
    text-align:center;
    font-size:13px;
    font-weight:bold;
    margin:10px 0;
}

.seminar-status-full{
    text-align:center;
    font-size:18px;
    font-weight:bold;
    color:#ff0000;
    margin:10px 0;
}