@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Rasa');

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/


#header-container {
max-width: inherit;
width: 100%;
}

#header-container-in {
max-width: inherit;
width: auto;
height: 80px;
}
.logo.logo-header.logo-image {
height: 80px !important;
display: flex;
align-items: center;
}
.header-container-in.hlt-top-menu .logo-header {
    max-height: 80px;
}



/* 
* ヘッダーロゴ(テキスト)の反対側に問い合わせボタン表示
*/
div#header-in {
  /* ヘッダーロゴ(テキスト)と問い合わせボタンを横並び */
  flex-direction: row;
}
.header-in .logo-header {
  /* ヘッダーロゴ(テキスト)と問い合わせボタンの位置を両端にする */
  margin-right: auto;
}
.header-contact {
  /* 問い合わせボタンにパディングを追加（見た目を整える） */
  padding: 0 16px;
 white-space: nowrap;
}
.header-contact a {
	display: block;
	margin: 0;
	padding: 0.5em 1.5em;
	text-decoration: none;
	background-color: #F90;
	color: #FFF;
	font-size: 110%;
	text-align: center;
  border-radius: 30px;
	box-shadow: none;
}

.navi-in .has-icon {
  display:none;
}

@media screen and (max-width: 1032px){
.header-contact {
  /* 問い合わせボタンにパディングを追加（見た目を整える） */
	display: none;
}

}

p.head_desc {
display: none;
}

ul.listtop_bt {
display: flex;
justify-content: flex-end;
flex-wrap: wrap;
margin: 0;
padding: 0;
width: 240px;
}
ul.listtop_bt li {
box-sizing: border-box;
display: inline-block;
list-style: none;
margin: 0;
padding: 0;
width: 80px;
text-align: center;
}

ul.listtop_bt li a {
box-sizing: border-box;
flex-flow: column;
display: flex;
align-items: center;
align-content: center;
height: 100%;
margin: 0;
padding: 0 0;
color: #FFF;
background-color: #53afca;
}

ul.listtop_bt li:nth-child(2) a {
background-color: #0e0d5f;
}

ul.listtop_bt li p {
margin-bottom: 0;
font-size: 80%;
}
ul.listtop_bt li i {
display: block;
font-weight: 900;
margin: 4px auto;
margin-top: 8px;
line-height: 1.0;
font-size: 160%;
}
@media screen and (max-width: 1032px){
ul.listtop_bt {
display: none;
}
}
.navi-in > ul li a { 
  width: auto;
  max-width: inherit;
margin-left: 1.5em !important;
padding: 0 0 !important;
}

.navi-in > ul li ul li { 
height: 40px;
margin-left: 0em !important;
}
.navi-in > ul li ul li a { 
margin-left: 0em !important;
padding-left: 1.5em !important;
}
.breadcrumb.sbp-main-before, .breadcrumb.sbp-footer-before, .breadcrumb.pbp-main-before, .breadcrumb.pbp-footer-before {
padding: 0 0;
padding-top: 16px;
}

/* パンくずリストアイコンまとめて非表示(Font Awesome 5)*/
.breadcrumb .fa-home,
.breadcrumb .fa-folder,
.breadcrumb .fa-file
{ display: none; }

.mincho-text {
  font-family: serif;
}

/********* HTML再定義 ****/

html {
	-ms-text-size-adjust: 100%;
  text-box-trim: trim-both;
}
body {
font-size: 62.5%;
font-family: Verdana, "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; color: #595757; line-height: 1.8; text-align: left; outline: 0; vertical-align: baseline; background-color: #FFF;

	line-height: 180%;
	letter-spacing: 0px;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width: 100%;
	min-height: 100%;
	padding: 0;
	margin: 0 auto;
}



@media screen and (min-width: 640px){
.for_sp { display: none !important; }
}

@media only screen and (max-width: 639px) {
.for_pc { display: none !important; }
}

.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
article h2,
article h3,
article h4,
article h5 {
  margin: 0;
  margin-bottom: 0;
  border: none;
  background: none;
  padding: 0;
}

h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  margin-bottom: 0;
line-height: 1.5;
  background: none;
  border: none;
}
ul,
ol,
dl {
  margin: 0;
  padding: 0;
}
p,
.blogPost p {
  margin: 0;
  padding: 0;
	line-height: 180%;
  margin-bottom: 1em;
}
.blogPost p {
margin-bottom: 0;
}
a {
  color: #000;
  text-decoration: none;
}


div table th, 
div table td {
font-size: 1em;
}

.blog_cont p {
margin-bottom: 0;
}


/********* 全体 ***********************************************/


.eye-catch-wrap {
border: 5px solid #F2F2F2;
}
.eye-catch-wrap img,
.eye-catch-wrap figure {
display: block;
width: 100%;
max-width: inherit;
}
@media screen and (max-width: 640px){
.eye-catch-wrap {
border: 3px solid #F2F2F2;
}
}
.eye-catch {
display: block;
margin: 0 auto;
max-width: 100%;
}
.eye-catch-image {
display: block;
    width: 100%;
    height: auto;
	max-width: none;
    padding: 0;
    margin: 0;
    border: none;
    vertical-align:bottom

}





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

.title {
     position: relative;
	 display: block;
	 margin: 0;
	 }


.title h1,
.title h2,
.title h3 {
padding: 0;
padding-top: 0;
padding-bottom: 0;
margin: 0;
line-height: 1.5;
padding-top: 0;
margin-bottom: 0;
  text-box-trim: trim-both;
	text-decoration: none;
	color: #000;

}



@media screen and (max-width: 1023px) {
.title {
padding-top: 60px;
}
.dammy_head {
padding-top: 60px;
}
}




/********* セクション *************************************************/

.content_section1em {
display: block;
margin-bottom: 1em;
}
.content_section80 {
display: block;
margin-bottom: 64px;
}
.content_section {
display: block;
margin-bottom: 40px;
}
.content_section40 {
display: block;
margin-bottom: 40px;
}
.content_section32 {
display: block;
margin-bottom: 32px;
}
.content_section24 {
display: block;
margin-bottom: 24px;
}
.content_section16 {
display: block;
margin-bottom: 16px;
}
.content_section8 {
display: block;
margin-bottom: 8px;
}
.content_section40map {
display: block;
margin-bottom: 40px;
}

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

.content_section80 {
display: block;
margin-bottom: 32px;
}
.content_section {
margin-bottom: 32px;
}
.content_section40 {
margin-bottom: 32px;
}
.content_section32 {
margin-bottom: 24px;
}
.content_section24 {
margin-bottom: 16px;
}
.content_section16 {
margin-bottom: 8px;
}
.content_section8 {
margin-bottom: 8px;
}
.content_section40map {
margin-bottom: 32px;
}
}


/********* 見出し　*************************************************/


h4.title_main {
	line-height: 110%;
	margin-bottom: 16px;
	border-left: solid 7px #148cc2;
	padding-left: 8px;
	padding-top: 2px;
}
.title_main {
	line-height: 130%;
	margin-bottom: 10px;
}

h5.midashi_normal {
margin-bottom: 8px;
}

.ttl_balloon5 {
  border-bottom: 3px solid #4c9ac0 !important;
  padding: 0.3em !important;
  padding-left: 0 !important;
  padding-top: 0 !important;
  margin-bottom: 16px !important;
  position: relative;
  text-box-trim: trim-start;
}
.ttl_balloon5::before {
  content: '';
  background-color: #fff;
  width: 20px;
  height: 3px;
  position: absolute;
  left: 30px;
  bottom: -3px;
}
.ttl_balloon5::after {
  content: '';
  background-color: #4c9ac0;
  width: 20px;
  height: 3px;
  transform: rotate(50deg);
  position: absolute;
  left: 25px;
  bottom: -10px;
}
.ttl_balloon5 h4 {
margin-bottom: 0;
}
@media only screen and (max-width: 640px) {
.ttl_balloon5 {
  padding: 0.2em !important;
  padding-top: 0 !important;
  padding-left: 0 !important;
  margin-bottom: 16px !important;
}
}

/********* お知らせ*************************************************/


.box_newslist {
display: block;
 border: 2px solid #004DA1;
 padding: 24px;
}
@media screen and (max-width: 640px) {
.box_newslist {
 padding: 16px;
}
}
ul.tag_category {
display: inline-block;
margin: 0;
margin-bottom: 2px;
padding: 0;
}
ul.tag_category li {
list-style: none;
margin: 0;
margin-left: 4px;
padding: 0;
	display: inline-block;
	text-align: center;
	min-width: 6em;
}
ul.tag_category li a {
	display: block;
	padding: 0 1.5em;
	background-color: #148CC2;
	color: #FFF;
	border-radius: 16px;
	text-decoration: none;
}




.flex_news_box {
display: block;
width: auto;
}
.flex_news_box:nth-child(n+2) {
margin-top: 24px;
}
@media screen and (max-width: 640px) {
.flex_news_box {
width: auto;
}
.flex_news_box:nth-child(n+2) {
margin-top: 16px;
}
}

.tag_news {
display: inline-block;
background: #F00;
color: #FFF;
padding: 2px 16px;
  text-box-trim: trim-both;
  margin-bottom: 8px;
  font-weight: bold;

}



.pagination-next {
display: none;
}
.left_post,
.right_post {
white-space: nowrap;
}
.entry_title {
background: -moz-linear-gradient#fff, #ddd); background: -webkit-linear-gradient(#fff, #ddd); background: linear-gradient(#fff, #ddd);
display: block;
line-height: 150%;
margin: -24px;
padding: 24px;
line-height: 150%;
margin-bottom: 24px;
}
@media screen and (max-width: 640px) {
.entry_title {
margin: -16px;
padding: 16px;
margin-bottom: 16px;
}
}
.entry_title h3,
.entry_title h4,
.entry_title p {
margin-bottom: 0 !important;
}
p.daytime {
  text-box-trim: trim-start;
margin-bottom: 0;
}



.title_entry {
display: block;
line-height: 150%;
margin-bottom: 16px;
}
.entry_title h3,
.entry_title h4,
.entry_title h5 {
margin-bottom: 0 !important;
color: #004DA1;
}
.title_entry h3,
.title_entry h4,
.title_entry h5 {
color: #004DA1;
}
.title_entry h3 a,
.title_entry h4 a,
.title_entry h5 a {
text-decoration: underline;
color: #004DA1;
}
p.daytime {
font-weight: bold;
  text-box-trim: trim-start;
margin-bottom: 0;
}


.shousai_ryaku h4.title_main {
line-height: 150%;
margin-bottom: 0;
}
.shousai_ryaku {
padding-bottom: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1; /* 任意の行数を指定 */
}
.list_pic {
position: relative;
display: block;
overflow: hidden;
background: #555;
}
.list_pic img {
display: block;
  object-fit: contain;
  width: 100%;
  top: 0%;
  right: 0%;
}
.flex_newslist {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.flex_newslist_pic {
order: 2;
display: block;
flex-flow: column;
width: calc(30% - 4px);
}
.flex_newslist_txt {
order: 1;
display: flex;
flex-flow: column;
width: calc(70% - 4px);
}


.bt_news {
display: inline-block;
line-height: 1.0;
text-box-trim: trim-both;
padding: 0;
margin: 0;
}
.bt_news a {
position: relative;
display: block;
padding-left: 1.2em;
line-height: 150%;
color: #555;
text-decoration: none;
}
.bt_news a:hover {
color: #0194ff;
text-decoration: underline;
}

.bt_news a:before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  content: "\f35a";
  margin: 0;
  margin-left: -1.2em;
  padding: 0;
  color: #0194ff;
  font-weight: 900;
  }



.bt_more {
margin-top: auto;
display: inline-block;
}

.bt_more a {
position: relative;
display: block;
color: #194092;
text-decoration: none;
}

.bt_more a::after {
position: absolute;
left: 3.5em;
top: 0.6em;
content: "";
        margin-left: 4px;
        width: 40px;
        height: 8px;
        border-bottom: 1px solid #194092;
        border-right: 1px solid #194092;
        transform: skew(45deg);
}
.bt_more a:hover::after {
left: 4em;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}


ul.bt_pdf {
  margin: 0;
  padding: 0;
}
ul.bt_pdf li {
  display: inline-block;
  list-style: none;
  margin: 5px;
  padding: 0;
}
ul.bt_pdf li a {
  position: relative;
  display: block;
  padding: 8px 16px;
  min-width: 126px;
  background-color: #fff;
  border: 1px solid #555;
  color: #000;
  text-decoration: none;
  padding-left: 2.5em;
}

ul.bt_pdf li a:before {
  position: absolute;
  top: 50%;
transform: translateY(-50%);
  font-family: "Font Awesome 5 Free";
  content: "\f1c1";
  color: #f00;
  margin-left: -1em;
  font-weight: 900;
}

ul.bt_pdf li a:hover {
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 0.8;
}

/********* サイドバー　*************************************************/
.calendar_wrap,
.wp-block-group {
display: block;
	background: url(../../uploads/2025/04/box_back.png);
	background-size: cover;
	padding: 16px 16px;
	box-shadow: 0 5px 5px rgba(0,0,0,0.2);
	margin: 0;
}

table.wp-calendar-table {
border: none;
background: none;
padding: 0;
margin: 0;
}
table.wp-calendar-table tr {
border: none;
background: none;
padding: 0;
margin: 0;
}
table.wp-calendar-table th,
table.wp-calendar-table td {
border: none;
background: none;
padding: 0;
margin: 0;
}
table.wp-calendar-table th {
}
.widget-sidebar {
}
.widget-sidebar ul {
margin: 0;
padding: 0;
}

.widget-sidebar ul li a {
margin: 0;
margin-bottom: 0;
padding-bottom: 0;
padding: 0;
text-decoration: underline;
}

@media screen and (max-width: 640px) {
table.wp-calendar-table {
width: 100%;
}

table.wp-calendar-table th,
table.wp-calendar-table td {
font-size: 100%;
}
.widget-sidebar {
font-size: 100%;
}
}


.wp-block-search__label {
display: none !important;
}
.wp-block-search__input {
height: 1em!important;
width: 100% !important;
padding: 1em !important;
}

.wp-block-search__button.wp-element-button {
padding: 0 0.5em;
height: inherit;
clear: both;
}


select,
textarea,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"] {
box-sizing: border-box;
  display: inline-block;
  margin: 4px 0;
  width: auto;
  min-width: inherit;
  border-radius: 0;
}
select {
padding: 8px;
}
textarea {
  display: block;
}



.titleListArea_nav { text-align: right; margin: 24px 0; clear: both; }
.titleListArea_nav li { display: inline; margin: 0; margin-left: 3%; }
.titleListArea_nav li a { color: #0068B6; text-decoration: underline; }


@media only screen and (max-width: 640px) {
.titleListArea_nav { text-align: right; margin: 3% 2% 5% 0; clear: both; }
.titleListArea_nav li { display: inline; margin-left: 3%; }
.titleListArea_nav li a { color: #0068B6; text-decoration: underline; }
}
/********* 見出し　*************************************************/


.ttl_balloon5 {
  border-bottom: 3px solid #4c9ac0 !important;
  padding: 0.3em !important;
  padding-left: 0 !important;
  padding-top: 0 !important;
  margin-bottom: 16px !important;
  position: relative;
  text-box-trim: trim-start;
}
.ttl_balloon5::before {
  content: '';
  background-color: #fff;
  width: 20px;
  height: 3px;
  position: absolute;
  left: 30px;
  bottom: -3px;
}
.ttl_balloon5::after {
  content: '';
  background-color: #4c9ac0;
  width: 20px;
  height: 3px;
  transform: rotate(50deg);
  position: absolute;
  left: 25px;
  bottom: -10px;
}
.ttl_balloon5 h4 {
margin-bottom: 0;
}
@media only screen and (max-width: 640px) {
.ttl_balloon5 {
  padding: 0.2em !important;
  padding-top: 0 !important;
  padding-left: 0 !important;
  margin-bottom: 16px !important;
}
}

/********* パスワードページ　*************************************************/
.post-password-message {
  display: none;
}
/* パスワードフォーム全体の横幅を1/2にして中央寄せ */
.post-password-form {
  width: 50%;
  margin: 0 auto;
}

/* パスワード入力欄のスタイル */
.post-password-form input[type="password"] {
  padding: 10px;
  border-radius: 5px;
  border: 1px solid #ccc;
  box-sizing: border-box;
  width: 50%;
}

/* 送信ボタンのスタイル */
.post-password-form input[type="submit"] {
  background-color: #0073aa;
  color: #fff;
  border: none;
  border-radius: 5px;
  text-align: center;
  align-items: center;
  align-content: center;
  cursor: pointer;
  width: 10%;
}
.bt_sub {
display: inline-block;
text-align: center;
margin: 0;
margin-left: 8px;
padding: 0;
}
@media screen and (max-width: 640px) {
  .post-password-form {
    width: 90%;
  }
}

/********* キャンパス　*************************************************/
.grid_campus_main {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 24px;
}
.grid_campus_main_pic {
    grid-column: span 6 / span 6;
}
.grid_campus_main_txt {
    grid-column: span 6 / span 6;
}
@media screen and (max-width: 640px) {
.grid_campus_main {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
.grid_campus_main_pic {
    grid-column: span 12 / span 12;
}
.grid_campus_main_txt {
    grid-column: span 12 / span 12;
}
}

.flex_campus_main_txt {
display: flex;
flex-flow: column;
height: 100%;
justify-content: space-between;
}
.flex_campus_main_txt_desc {
display: block;
margin-bottom: 24px;
}
.flex_campus_main_txt_add {
display: block;
margin-top: auto;
}
@media screen and (max-width: 640px) {
.flex_campus_main_txt {
display: flex;
flex-flow: column;
justify-content: space-between;
}
.flex_campus_main_txt_desc {
margin-bottom: 16px;
}
.flex_campus_main_txt_add {
}
}

.campus_main_pic {
display: flex;
position: relative;
height: 100%;
border: 2px solid #0074C1;
padding: 16px;
box-sizing: border-box;
align-items: center;
}
.campus_main_pic02 {
display: block;
height: 100%;
border: 2px solid #0074C1;
padding: 16px;
box-sizing: border-box;
}
.campus_main_pic .imagecenter00,
.campus_main_pic02 .imagecenter00 {
width: 100%;
}
@media screen and (max-width: 640px) {
.campus_main_pic,
.campus_main_pic02{
padding: 16px;
}
}

table.table_campus_add {
table-layout: fixed;
width: 100%;
margin: 0;
padding: 0;
background: none;
border: 1px solid #000;
border-collapse: collapse;
}

table.table_campus_add tr {
margin: 0;
padding: 0;
background: none;
border: none
}
table.table_campus_add th,
table.table_campus_add td {
margin: 0;
padding: 8px;
background: none;;
border: 1px solid #000;
border-collapse: collapse;
text-align: left;
}
table.table_campus_add th {
width: 8em;
text-align: center;
background-color: #DCDCDD;
}

.grid_compus_teacher {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 16px;
	margin-bottom: 16px;
} 
.grid_compus_teacher_pic {
    grid-column: span 4 / span 4;
}

.grid_compus_teacher_txt {
    grid-column: span 8 / span 8;
    grid-column-start: 5;
}

ul.list_bt_campus {
display: flex;
 justify-content: space-between;
 flex-flow: column;
 flex-wrap: wrap;
 margin: 0;
 padding: 0;
}

ul.list_bt_campus li {
display: block;
text-align: center;
 margin: 0;
 padding: 0;
}
ul.list_bt_campus li:nth-child(n+2) {
margin-top: 16px;
}



.campusmap {
position: relative;
display: block;
width: 100%;
  padding-bottom: 34.15%;
  height: 0;
overflow: hidden;
}
.campusmap iframe {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100%;
}
@media only screen and (max-width: 640px) {
.campusmap {
  padding-bottom: 56.25%;
  height: 0;
}
}

.box_campus_shoukai {
display: block;
padding-bottom: 24px;
margin-bottom: 24px;
border-bottom: 1px solid #CCC;
}
@media only screen and (max-width: 640px) {
.box_campus_shoukai {
padding-bottom: 16px;
margin-bottom: 16px;
}
}

.grid_campusshoukai {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
}
.grid_campusshoukai_pic {
    grid-column: span 3 / span 3;
}
.grid_campusshoukai_txt {
    grid-column: span 9 / span 9;
    grid-column-start: 4;
}

.grid_campusshoukai_pic img {
width: 100%;
}
@media only screen and (max-width: 640px) {
.grid_campusshoukai {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
.grid_campusshoukai_pic {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
}
.grid_campusshoukai_txt {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 2;
}
}


/********* table　*************************************************/

/*-- kyouikukeikaku --*/
table.gDayoriAppl { margin: 0 auto; padding: 0; border: 2px solid #004DA1; width: 100%; background-color: none; }
.gDayoriAppl .gDayoriAppl_topTr { margin: 0 auto; padding: 0; background-color: #0081BA; font-weight: bold; color: #FFFFFF; text-align: left; }
.gDayoriAppl .gDayoriAppl_topTr .gDayoriAppl_topTd1 { border-right: 1px solid #FFFFFF; width: calc(100% / 3); }
.gDayoriAppl .gDayoriAppl_topTr .gDayoriAppl_topTd1R { border-right: 1px solid #FFFFFF; width: calc(100% / 3); }
.gDayoriAppl tr td { vertical-align: middle; padding: 8px; border: 1px solid #717071; text-align: center; height: auto; }
.gDayoriAppl tr td ul { list-style: none; padding: 0 0; margin; 0 0; margin-bottom: 0; }
.gDayoriAppl tr td ul li { list-style: none; margin; 0 0; padding: 0.4em 0; margin-bottom: 0; line-height: 1.0; }
.gDayoriAppl tr .td_gDayoriApplL30 { vertical-align: top; }
.gDayoriAppl tr .td_gDayoriApplC { vertical-align: top; }
.gDayoriAppl tr .td_gDayoriApplL30R { vertical-align: top; }


/*-- certificate --*/
.certCont { padding: 2% 3% 2% 4%; }
.certAppl { margin: 0; border: 2px solid #004DA1; width: 100%; }
.certAppl .certAppl_topTr { background-color: #0081BA; font-weight: bold; color: #FFFFFF; text-align: center; }
.certAppl .certAppl_topTr .certAppl_topTd1 { border-right: 1px solid #FFFFFF; width: 30%; }
.certAppl .certAppl_topTr .certAppl_topTd1R { border-right: 1px solid #FFFFFF; width: 30%; }
.certAppl tr td { vertical-align: middle; padding: 8px; border: 1px solid #717071; }
.certStepTitle { margin-top: 5%; }
.certStepTitle img { max-width: 300px; }
.certStep { list-style-type: decimal; margin-left: 6%; margin-top: 2%; margin-bottom: 5%; }
.certStep .certStepDL { margin: 2% 0; }
.certStep .certStepDL img { max-width: 476px;}
.certStep li { margin-bottom: 1%; }
.certStep2 li { list-style: none; position: relative; margin-left: 3%; margin-bottom: 0; }
.certStep2 li .li_num { position: absolute; top: 0; left: -1.8em; }
.certAppl .certAppl_topTr .certAppl_topTd2 { border-right: 1px solid #FFFFFF; width: 10%; }
.certAppl .certAppl_topTr .td_certTop2R { width: 40%; }
.certAppl tr .td_certL30_2 { width: 40%; text-align: center; }
.certAppl tr .td_certC { text-align: center; }
.certAppl tr .td_certC2 { text-align: center; width: 12%; }



.sp_scroll {
  margin-bottom: 0!important;
}
@media screen and (max-width: 640px) {
  .sp_scroll {
    overflow-x: scroll;
  }
  }
  
.sp_scrollimg {
display: block;
	max-width: 100%;
	margin: 0;
  }
@media screen and (max-width: 640px) {
.sp_scroll table, .sp_scrollimg {
    width: 100%;
	min-width: 720px !important;
	margin: 0;
}
}

p.sp_scrolltxt,
p.sp_scrolltxt640 {
display: none;
}
.yazirusi {
display: none;
}
@media only screen and (max-width: 640px) {
p.sp_scrolltxt {
display: flex;
align-items: center;
justify-content: space-between;
position: relative;
  color: #0081BA;
}
}



ul.stud_Login_bt {
margin: 0;
padding: 0;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
ul.stud_Login_bt li {
list-style: none;
margin: 0;
padding: 0;
    grid-column: span 1 / span 1;
}

ul.stud_Login_bt li a {
display: block;
padding: 4px 8px;
border: 1px solid #000;
}
@media only screen and (max-width: 640px) {
ul.stud_Login_bt {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 8px;
}
}



/********* grid　*************************************************/



.cc_grid_half {
display: grid;
grid-template-columns: repeat(12, 1fr);
gap: 24px;
}
.cc_grid_txt {
grid-column: span 6 / span 6;
}
.cc_grid_pic {
grid-column: span 6 / span 6;
    grid-column-start: 7;
}
.cc_grid_helfbox{
grid-column: span 6 / span 6;
}
.cc_grid_helfbox_only{
grid-column: span 6 / span 6;
}
.cc_grid_helfbox_only .imagecenter00 {
width: 100%;
}
.cc_grid_helf01 {
grid-column: span 6 / span 6;
}
.cc_grid_helf02 {
grid-column: span 6 / span 6;
    grid-column-start: 7;
}
.cc_grid_helf_news {
grid-column: span 6 / span 6;
	order: 1;
}
.cc_grid_helf_topcont {
grid-column: span 6 / span 6;
    grid-column-start: 7;
	order: 2;
}

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

.cc_grid_half {
display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    gap: 16px;
}
.cc_grid_txt {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 2;
}
.cc_grid_pic {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 1;
}
.cc_grid_helfbox {
    grid-column: span 12 / span 12;
}
.cc_grid_helf01 {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 1;
}
.cc_grid_helf02 {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 2;
}
.cc_grid_helf_news {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 2;
	order: 1;
}
.cc_grid_helf_topcont {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 1;
	order: 2;
}
}

.cc_grid_txt h4 {
  text-box-trim: trim-start;
}


.box_manager {
display: block;
padding-bottom: 24px;
border-bottom: 1px solid #CCC;
}

@media screen and (max-width: 640px){
.box_manager {
padding-bottom: 24px;
}
}


.cc_grid_3_2 {
display: grid;
grid-template-columns: repeat(12, 1fr);
    gap: 16px;
}

.cc_grid_3_2_pic {
    grid-column: span 4 / span 4;
    grid-column-start: 9;
}

.cc_grid_3_2_txt {
    grid-column: span 8 / span 8;
}


@media screen and (max-width: 640px){
.cc_grid_3_2 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
  grid-template-rows: auto;
    gap: 16px;
}
.cc_grid_3_2_pic {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
    grid-row-start: 1;
}

.cc_grid_3_2_txt {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
    grid-row-start: 2;
}
}


.float_img_half_right {
display: block;
float: right;
max-width: calc(100% / 2 - 16px);
margin: 0;
margin-left: 24px;
margin-bottom: 16px;
}
@media screen and (max-width: 640px){
.float_img_half_right {
display: block;
float: none;
max-width: 100%;
margin: 0 auto;
margin-left: auto;
margin-bottom: 16px;
}
}


/********* grid　*************************************************/

.grid_half {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 24px;
}
.grid_half_box {
    grid-column: span 6 / span 6;
}
.grid_half_box.borderblue {
border: 2px solid #0067A1;
padding: 24px;
}
@media only screen and (max-width: 640px) {
.grid_half {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
.grid_half_box {
    grid-column: span 12 / span 12;
}
.grid_half_box.borderblue {
border: 2px solid #0067A1;
padding: 16px;
}
}


.grid_three_menu {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 24px;
}
.grid_three_box {
    grid-column: span 4 / span 4;
}
.grid_three_box .imagecenter00 {
width: 100%;
}
.grid_three_kouka_box {
    grid-column: span 4 / span 4;
}

@media only screen and (max-width: 640px) {
.grid_three_menu {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
} 
.grid_three_box {
    grid-column: span 6 / span 6;
}
.grid_three_kouka_box {
    grid-column: span 12 / span 12;
}
}


.grid_four_one_three {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
}
.gridbox_four_one {
    grid-column: span 3 / span 3;
}
.gridbox_four_three {
    grid-column: span 9 / span 9;
    grid-column-start: 4;
}
@media only screen and (max-width: 640px) {
.grid_four_one_three {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
.gridbox_four_one {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
}
.gridbox_four_three {
    grid-column: span 12 / span 12;
    grid-row-start: 2;
}
}

.grid_three_one {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
}
    
.gridbox_three_one_one {
    grid-column: span 4 / span 4;
}
.gridbox_three_one_three {
    grid-column: span 8 / span 8;
    grid-column-start: 5;
}

.gridbox_three_one_one_r {
    grid-column: span 4 / span 4;
    grid-column-start: 9;
}
.gridbox_three_one_three_l {
    grid-column: span 8 / span 8;
}



@media only screen and (max-width: 640px) {
.grid_three_one {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
.gridbox_three_one_one {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
}
.gridbox_three_one_three {
    grid-column: span 12 / span 12;
    grid-row-start: 2;
}

.gridbox_three_one_one_r {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
    grid-row-start: 2;
}
.gridbox_three_one_three_l {
    grid-column: span 12 / span 12;
}
}


.grid_sns04 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
}
    
.grid_sns04box {
    grid-column: span 3 / span 3;
}
@media only screen and (max-width: 640px) {
.grid_sns04 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}   
.grid_sns04box {
    grid-column: span 6 / span 6;
}
}




.grid_voice {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
} 
.grid_voice_pic {
    grid-column: span 3 / span 3;
}
.grid_voice_pic .imagecenter00{
width: 100%;
}
.grid_voice_name {
    grid-column: span 9 / span 9;
    grid-column-start: 4;
}
@media only screen and (max-width: 640px) {
.grid_voice {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
} 
.grid_voice_pic {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
}
.grid_voice_name {
    grid-column: span 12 / span 12;
    grid-row-start: 2;
}
}

.grid_kamoku {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
}
    
.grid_kamoku01 {
    grid-column: span 6 / span 6;
}

.grid_kamoku02 {
    grid-column: span 4 / span 4;
    grid-column-start: 7;
}
@media only screen and (max-width: 640px) {
.grid_kamoku {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
    
.grid_kamoku01 {
    grid-column: span 12 / span 12;
}

.grid_kamoku02 {
    grid-column: span 12 / span 12;
    grid-column-start: 1;
}
}
  



.grid_5_2 {
    display: grid;
    grid-template-columns: repeat(10, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
} 
.grid_5_2_box {
    grid-column: span 2 / span 2;
}
@media only screen and (max-width: 640px) {
.grid_5_2 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
} 
.grid_5_2_box {
    grid-column: span 6 / span 6;
}
}

.grid_3_3 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
}
.grid_3_3box {
    grid-column: span 4 / span 4;
}

@media only screen and (max-width: 640px) {
.grid_3_3 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}
.grid_3_3box {
    grid-column: span 12 / span 12;
}

}


.grid_3_2 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 24px;
}
.grid_3_2box01 {
    grid-column: span 4 / span 4;
}
.grid_3_2box02 {
    grid-column: span 8 / span 8;
    grid-column-start: 5;
}
@media only screen and (max-width: 640px) {
.grid_3_2 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(auto, 1fr);
    gap: 16px;
}   
.grid_3_2box01 {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
}
.grid_3_2box02 {
    grid-column: span 12 / span 12;
    grid-row-start: 2;
}
}


.grid_bt_3_2 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 24px;
}
    
.grid_bt_3_2_01 {
    grid-column: span 12 / span 12;
}

.grid_bt_3_2_02 {
    grid-column: span 6 / span 6;
    grid-row-start: 2;
}

.grid_bt_3_2_03 {
    grid-column: span 6 / span 6;
    grid-column-start: 7;
    grid-row-start: 2;
}
@media only screen and (max-width: 640px) {
.grid_bt_3_2 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 16px;
}
}



.grid_threepic {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 16px;
}
    
.grid_threepic001 {
    grid-column: span 4 / span 4;
}

.grid_threepic002 {
    grid-column: span 4 / span 4;
    grid-column-start: 5;
}

.grid_threepic003 {
    grid-column: span 4 / span 4;
    grid-column-start: 9;
}
@media only screen and (max-width: 640px) {
 .grid_threepic {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: 8px;
}
.grid_threepic001 {
    grid-column: span 8 / span 8;
    grid-column-start: 3;
}

.grid_threepic002 {
    grid-column: span 8 / span 8;
    grid-column-start: 3;
    grid-row-start: 2;
}

.grid_threepic003 {
    grid-column: span 8 / span 8;
    grid-column-start: 3;
    grid-row-start: 3;
}
}

.grid_features {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 16px;
}
    
.grid_features_pic {
    grid-column: span 4 / span 4;
}

.grid_features_txt {
    grid-column: span 8 / span 8;
    grid-column-start: 5;
}
@media only screen and (max-width: 640px) {
.grid_features {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 8px;
}
    
.grid_features_pic {
    grid-column: span 6 / span 6;
    grid-column-start: 4;
}

.grid_features_txt {
    grid-column: span 12 / span 12;
    grid-row-start: 2;
}
}

table.timeTable {
margin: 0;
padding: 0;
margin-bottom: 0;
padding-bottom: 0;
text-align: center;
}


.headline,
.headline_green {
  width: 100%;
  padding: 8px 30px;
  margin-bottom: 0;
line-height: 1.2;
  background: linear-gradient(
    to right,
    #0d3c61 0px,      /* 左端濃い青 */
    #0d3c61 12px,     /* 12pxまでは同じ色 */
    #2b77b6 12px,     /* そこから徐々に薄い青に */
    #1a5e99 100%
  );
  color: #fff;
  font-weight: bold;
  border-radius: 8px;
  box-sizing: border-box;
}
.headline_green {
  background: linear-gradient(
    to right,
    #075148 0px,      /* 左端濃い青 */
    #075148 12px,     /* 12pxまでは同じ色 */
    #0c8575 12px,     /* そこから徐々に薄い青に */
    #00665f 100%
  );
}
.headline h2,
.headline_green h2 {
line-height: 1.2;
margin: 0;
margin-bottom: 0;
padding: 0;
  color: #fff;
}
@media only screen and (max-width: 640px) {
.headline,
.headline_green {
  width: 100%;
  padding: 8px 16px;
/*  font-size: 18px;*/
}
}


.segeoui {
    font-family: 'Segoe UI';
	font-weight: 400;
}




ul.top_news {
	margin: 0;
	padding: 0;
	border-top: 1px dotted #CCC;
}
ul.top_news li {
	display: block;
	list-style: none;
	margin: 0;
	padding: 8px 8px;
	border-bottom: 1px dotted #CCC;
}
ul.top_news li p {
	clear: both;
	margin: 0;
	padding: 0;
}
ul.top_news li p span {
}
ul.top_news li p a {
	margin: 0;
	padding: 0;
	display: block;
	color: #000;
	text-decoration: none;
}


ul.top_news li p a:hover {
	text-decoration: underline;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

@media screen and (max-width: 640px){
ul.top_news {
	margin-bottom: 0;
}
}

table.table_top_news {
	table-layout: fixed;
	width: 100%;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
}
table.table_top_news tr, table.table_top_news th, table.table_top_news td {
	margin: 0;
	padding: 0;
	border: none;
	background: none;
}
table.table_top_news th, table.table_top_news td {
	border-collapse: collapse;
	border: none;
	background: none;
	font-weight: normal;
	margin: 0;
	padding: 0;
}
table.table_top_news th {
	color: #555;
	width: 20%;
}

@media screen and (max-width: 640px){
table.table_top_news th {
	display: block;
	margin-bottom: 8px;
}
table.table_top_news td {
	display: block;
	margin-bottom: 0;
}
table.table_top_news th {
	width: auto;
}
table.table_top_news td {
	line-height: 130%;
}
}

.tag_news {
	display: inline-block;
	margin: 0 8px;
	font-size: 80%;
	width: 7.5em;
	text-align: center;
	line-height: 100%;
}
.tag_news a {
	display: block;
	padding: 4px 0;
	background-color: #CCC;
	color: #FFF;
	text-decoration: none;
}
#tag_news a {
	background-color: #3B5FF7;
}
#tag_press a {
	background-color: #4FBA70;
}
#tag_media a {
	background-color: #F00;
}

.tag_news a:hover {
	box-shadow: 0 0 3px rgba(0,0,0,0.5);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}




