@charset "UTF-8";
/*
---------------------------------------
    subpage
---------------------------------------
*/


body table.border {
}
body table.border th {
    border: solid 1px #ccc;
    background: #eee;
}
body table.border td {
    border: solid 1px #ccc;
    background: #fafafa;
}



/* ▼セクションごと
------------------------------------- */

.bus-catch {
  display: flex;
  align-items: flex-start;
  /*gap: 20px; */
  width: 80%;
  margin:  0 auto;
}

.bus-catch img {
  width: auto;
  max-width: 250px;  /* 画像の最大幅（任意） */
  height: auto;
}

.bus-catch p {
  flex: 1; /* 残りの幅をすべて使う */
  margin: 0;
  padding: 0;
}

/* スマホ：縦並びに変更 */
@media (max-width: 768px) {
  .bus-catch {
    flex-direction: column;
    text-align: left;
    width: 100%;
  }
  .bus-catch img {
    /* max-width: 100%; スマホでは画面幅に合わせる */
  }
  .bus-catch p {
    width: 100%;
  }
}






.ichigo-top {
  display: flex;
  align-items: flex-start;
  /*gap: 20px; */
  width: 80%;
  margin:  0 auto;
}

.ichigo-top img {
  width: auto;
  max-width: 250px;  /* 画像の最大幅（任意） */
  height: auto;
}

.ichigo-top p {
  flex: 1; /* 残りの幅をすべて使う */
  margin: 0;
  padding: 0;
}

/* スマホ：縦並びに変更 */
@media (max-width: 768px) {
  .ichigo-top {
    flex-direction: column;
    text-align: left;
    width: 100%;
  }
  .ichigo-top img {
    /* max-width: 100%; スマホでは画面幅に合わせる */
  }
  .ichigo-top p {
    width: 100%;
  }
}



.english-b1 {
  display: flex;
  align-items: flex-start;
  /*gap: 20px; */
  width: 90%;
  height: 500px;
  margin:  0 auto;
  background: url(/course/img/img_course_english_3.png) no-repeat right top;
}
.english-b1 div {   
    width: 45%;
    padding: 170px 0 50px;
}

.english-b2 {
  display: flex;
  align-items: flex-start;
  /*gap: 20px; */
  width: 100%;
  height: 600px;
  margin:  0 auto;
  background: url(/course/img/img_course_english_4.png) no-repeat left top;
}
.english-b2 div {   
    width: 35%;
    margin-left: 65%;
    padding: 170px 0 0;
}




.faq {
}
.faq h3 {
    padding: 1em;
    font-size: 105%;
    line-height: 1.6;
}
.faq .kiji1 div {
    width: 88%;
    margin:  0 auto 50px;
}





.parents .kiji1 {
    width: 900px;
    margin:  0 auto;
    padding: 2em;
    background: #fff;
	border-radius: 25px;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
    font-size: 2.1rem;
}
.parents .kiji1 .date {
    padding: 0.5em 1em;
    background: #eee;
}
.parents .kiji1 .entry {
}
.parents .kiji1 .title {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: solid 1px #ccc;
    font-size: 2.6rem;
    font-weight: bold;
}

#parents-menu {
    margin-bottom: 30px;
    padding-top: 30px;
    text-align: center;
}
#parents-menu a {
    display: inline-block;
    margin:  0 0.6em;
    padding:  0.2em 1em;
    background: #fff;
}
#parents-menu a:hover {
    background: #408DB1;
    color: #fff;
}
#parents-menu span {
    display: inline-block;
    margin:  0 0.6em;
    padding:  0.2em 1em;
    background: #408DB1;
    color: #fff;
}





/* ▼ t-wrapper
----------------------------------------------------*/

.t-wrapper2 {
	margin: 0 auto 50px;
}
.t-wrapper2 table {
	width:100%;
	border-collapse:collapse;
}
.t-wrapper2 table tr {
}
.t-wrapper2 table th {
	padding:8px;
	border:solid 2px #fff;
	background:#ddd;
    text-align: center;
    font-weight: normal;
}
.t-wrapper2 table td * {
    vertical-align: middle;
}
.t-wrapper2 table td {
	padding:8px;
	text-align:left;
	border:solid 2px #fff;
	background:#fafafa;
}

.t-wrapper2 table img {
	display:inline-block;
}
@media screen and (max-width: 600px) {
	.t-wrapper2 {
		width:96%;
	}
}







/* ▼フォーム系ページ
------------------------------------- */

body.form {
}
body.form h3 {
    font-size: 2.6rem;
}
body.form h4 {
    font-size: 2.4rem;
    background: #eee;
    color: #BD5B28;
}

body.form .kiji1 {
    width: 850px;
    margin:  0 auto;
    padding: 2em;
    background: #fff;
	border-radius: 25px;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
    font-size: 2rem;
}
body.form .kiji1 select {
    background: #fff;
}

.formHeaderError {
    margin-bottom: 1em;
	padding:20px;
	border:solid 2px crimson;
	background:#fff;
	color:crimson;
}
.formHeaderError li {
	margin-left:20px;
	color:crimson;
}


.form-wrapper {
}
.form-wrapper dt {
	width:30%;
	float:left;
	margin-bottom:10px;
	text-align:right;
}
.form-wrapper dd {
	width:65%;
	float:right;
	margin-bottom:10px;
}
.form-wrapper #btnCancel,
.form-wrapper #btnConfirm-label {
	display:none;
}
.form-wrapper .formHeaderMsg {
	margin-bottom:20px;
	color:crimson;
}
table.confirm {
	border-collapse:collapse;
}
table.confirm td,
table.confirm th {
	padding: 8px;
	border-top: dotted 2px #fff;
	border-bottom: dotted 2px #fff;
}

/* 確認画面で隠す */
body#p-kengaku-confirm .hide-on-confirm,
body#p-kengaku-send .hide-on-confirm,
body#p-recruit-confirm .hide-on-confirm,
body#p-recruit-send .hide-on-confirm {
	display:none;
}

@media screen and (max-width: 960px) {
    body.form .kiji1,
    body.form section h3 {
       width: 100%;
       font-size: 4vw;
       padding: 1em;
       background: #eee;
    }
    body.form h4 {
        margin-top: 2em;
        font-size: 4.5vw;
    }    
    .formHeaderError {
        padding:5px;
    }
}








/* -------------- o.w. ------------- */

.zdform dt,
.zdform dd {
	border:none !Important;
}
#btnCancel, #btnReturn, #btnDelete {
	padding:5px !Important;
	font-size:85% !Important;
}
#btnSubmit {
	margin-bottom:30px !Important;
}
.formHeaderMsg {
	text-align:center !Important;
}



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

	.zdform ,
	.zdform dt,
	.zdform dd {
		float:none !important;
		width:100% !important;
		text-align:left !important;
	}
	.zdform dd select,
	.zdform dd input[type="text"],
	.zdform dd textarea {
		width:95% !important;
	}

}

div.description {
	color:#555;
	font-size:85%;
}










/*
#########################################

    レスポンシブ

#########################################
*/


/*  ページごと
------------------------------------------------ */

@media screen and (max-width:960px){
    .english-b1,
    .english-b2{
        display:block;
        width:100%;
        height:auto;
        min-height:0;
        padding-top:0;
        background:none !important;
    }
    .english-b1 div,
    .english-b2 div{
        width:100%;
        margin-left:0;
        padding:0;
    }
    .parents .kiji1,
    body.form .kiji1{
        width:100%;
        padding:1.2em !important;
        font-size:4.2vw;
        border-radius:18px;
        box-sizing:border-box;
    }
    
    .p-admission .kiji1.sp span {
        display: block;
    }
    .p-admission .kiji1.sp span a {
        display: inline-block;
    }
    .p-admission .kiji1.sp span img {
        display: inline-block;
    }    
    .p-admission .kiji1.sp span.col3 img.nth1{ width:calc(100% * 226 / 886); }
    .p-admission .kiji1.sp span.col3 a.nth2{ width:calc(100% * 279 / 886); }
    .p-admission .kiji1.sp span.col3 a.nth3{ width:calc(100% * 381 / 886); }
    .p-admission .kiji1.sp span.col2 a:nth-child(1){ width:calc(100% * 391 / 886); }
    .p-admission .kiji1.sp span.col2 a:nth-child(2){ width:calc(100% * 495 / 886); }
        
    .p-admission-flow .kiji1.sp span {
        display: block;
    }
    .p-admission-flow .kiji1.sp span a {
        display: inline-block;
    }
    .p-admission-flow .kiji1.sp span img {
        display: inline-block;
        width: 50%;
    }       
    
    
    
    
}


