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

	Site: 
	Type: top styles
	URL: 
	Last Up Date: 
	Version: 1.0
	Author: 

	----------------------------------------------

	Contents

		1.

----------------------------------------------- */
/* --- 1.common --- */
#MainBox img {
  max-width: 100%;
  height: auto;
  width/***/: auto;
	width:revert-layer;
}

/* --- header --- */
#CntBox #s {
  border: 0;
  font-size: 16px;
  padding: 3px;
  border: solid 1px #e6e6e6;
  width: 160px;
}

#CntBox #searchsubmit {
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url(../images/search-btn.png);
  background-color: #fff;
  cursor: pointer;
  border: none;
  text-indent: -9999px;
  margin: 0px 3px 1px 0px;
}

/* --- Pankuzu, Title --- */
#Pankuzu {
  font-size: 12px;
  line-height: 1.6;
  padding: 15px 30px;
}

h1 {
  font-size: 36px;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.3em;
  margin: 0px 0px 50px 0px;
  padding: 0px 50px 20px 50px;
  border-bottom: solid 1px #e6e6e6;
}

h1 span {
  font-size: 14px;
  letter-spacing: 0.5em;
  display: block;
  margin: 0px 10px 10px 0px;
}

/* --- NavigationBox --- */
#NavigationBox {
  background-color: #ffe23b;
  margin: -50px 0px 50px 0px;
}

#NavigationBox ul {
  width: 900px;
  font-size: 0px;
  margin: 0px auto;
  text-align: center;
  padding: 7px 0px 15px 0px;
}

#NavigationBox.Narrow ul {
  width: 600px;
}

/* #NavigationBox.Wide ul {
  width: 1000px;
} */

#NavigationBox ul li {
  display: inline-block;
  font-size: 14px;
  line-height: 1.6;
  vertical-align: middle;
  margin: 0px 15px;
}

#NavigationBox ul li a {
  display: block;
  padding: 10px 5px 0px 0px;
  color: #000;
  text-decoration: none;
  font-size: 16px;
}

@media only screen and (max-width: 767.98px) {
  #NavigationBox ul li a {
    font-size: 14px;
  }
}

#NavigationBox ul li a:hover {
  text-decoration: underline;
}

/* --- CntBox --- */
#CntBox,
#CntBox2 {
  width: 1080px;
  margin: 0px auto 50px auto;
}

#CntBox h2 {
  font-size: 32px;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.2em;
  color: #000;
  background-color: #ffe23b;
  margin: 50px 0px 30px 0px;
  padding: 10px;
}

#CntBox h3 {
  font-size: 20px;
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.1em;
  color: #8c8c8c;
  background-color: #e6e6e6;
  margin: 40px 0px 20px 0px;
  padding: 5px 20px 2px 20px;
}

#CntBox h4 {
  font-size: 20px;
  line-height: 1.6;
  letter-spacing: 0.1em;
  color: #000;
  border-top: solid 3px #ffe23b;
  border-bottom: solid 3px #ffe23b;
  margin: 40px 40px 20px 40px;
  padding: 5px 20px 2px 20px;
}

#CntBox h5 {
  font-size: 18px;
  line-height: 1.6;
  letter-spacing: 0.1em;
  color: #000;
  margin: 40px 40px 20px 40px;
  padding: 3px 0px 1px 24px;
  background: url(../images/bg_h5.png) left center no-repeat;
}

#CntBox h6 {
  font-size: 16px;
  line-height: 1.8;
  margin: 20px 40px 20px 40px;
}

#CntBox p {
  font-size: 14px;
  line-height: 1.8;
  margin: 20px 40px 20px 40px;
}

#CntBox p.LinkBtnBlue a {
  display: inline-block;
  font-weight: bold;
  padding: 3px 15px 3px 15px;
  margin: 0px 10px;
  border: solid 1px #80cee2;
  border-radius: 3px; /* デフォルト */
  -webkit-border-radius: 3px; /* Safari,Google Chrome用 */
  -moz-border-radius: 3px; /* Firefox用 */
}

#CntBox p.LinkBtnRed a {
  display: inline-block;
  font-weight: bold;
  padding: 3px 15px 3px 15px;
  margin: 0px 10px;
  border: solid 1px #ffc0c0;
  border-radius: 3px; /* デフォルト */
  -webkit-border-radius: 3px; /* Safari,Google Chrome用 */
  -moz-border-radius: 3px; /* Firefox用 */
}

#CntBox p.LinkBtnBlue a:hover {
  background-color: #80cee2;
  color: #fff;
}

#CntBox p.LinkBtnRed a:hover {
  background-color: #ffc0c0;
  color: #fff;
}

#CntBox ul,
#CntBox ol {
  margin: 20px 20px 20px 40px;
  font-size: 16px;
}

#CntBox ul li,
#CntBox ol li {
  font-size: inherit;
  line-height: 1.6;
  margin: 0px 0px 10px 0px;
}

#CntBox ul li {
  list-style-type: disc;
}

#CntBox ol li {
  list-style-type: decimal;
}

#CntBox ul.ListBlogIndex {
  margin: 30px 0px;
    text-align: center;
    display: grid;
    grid-template-columns: 2.1fr 1fr;
    grid-template-rows: repeat(3, 1fr);
    grid-gap: 20px 40px;
    padding: 0 20px;
}

#CntBox ul.ListBlogIndex li {
  display: inline-block;
  margin: 0px;
  list-style-type: none;
}
#CntBox ul.ListBlogIndex li:first-child {
	grid-row: span 3;
}

#CntBox ul.ListBlogIndex li a:hover {
  opacity: 0.7;
}

#CntBox ul.ListBlogIndex li a img{
	width:100%;
}


@media only screen and (max-width: 767.98px) {
	#CntBox ul.ListBlogIndex{
		grid-template-columns: none;
		grid-template-rows: repeat(3, 1fr);
		grid-gap: 10px 10px;
		padding:0;
	}
	#CntBox ul.ListBlogIndex li:first-child {
		grid-column: span 3;
	}
}

#CntBox table {
  border-collapse: collapse;
  border: solid 1px #8c8c8c;
  margin: 20px 40px 20px 40px;
}

#CntBox table th,
#CntBox table td {
  font-size: 14px;
  line-height: 1.6;
  padding: 5px 15px;
  border: solid 1px #8c8c8c;
}

#CntBox table th {
  background: #e6e6e6;
}

#CntBox table.NoFrame {
  border: none;
}

#CntBox table.NoFrame th,
#CntBox table.NoFrame td {
  padding: 5px;
  border: none;
  vertical-align: middle;
}

#CntBox table.NoFrame td img {
  max-width: none;
}

#CntBox table.NoFrame th {
  background: none;
}

#CntBox table.NoFrame td h3 {
  margin-top: 0px;
}

#CntBox table.no-frame {
  border: none;
}

#CntBox table.no-frame th,
#CntBox table.no-frame td {
  padding: 5px;
  border: none;
  vertical-align: middle;
}

/* #CntBox table.no-frame td img {
  max-width: none;
} */

#CntBox table.no-frame th {
  background: none;
}

.DispSp {
  display: none;
}

/* --- IndexBox --- */
#IndexBox {
  width: 960px;
  margin: 0px auto 100px auto;
}

ul.list-gakka li {
  float: left;
}

.gk01,
.gk05 {
  margin: 0px 0px 80px 0px;
}

.gk02 {
  margin: 0px 10px 10px 0px;
}

.gk03,
.gk04,
.gk07 {
  margin: 0px 0px 10px 0px;
}

/* --- CategoryBox --- */
#CategoryBox {
  clear: both;
  padding: 100px 0px 0px 0px;
}

.tab {
  overflow: hidden;
  font-size: 0px;
}

.tab li {
  font-size: 14px;
  text-indent: -9999px;
  cursor: pointer;
  display: inline-block;
  width: 24.9%;
  height: 80px;
  border-left: solid 1px #e5e5e5;
}

.tab li:first-child {
  border-left: none;
}

.tab li#tab01 {
  background-image: url(../images/btn_page_cat01.png);
  background-position: center center;
  background-repeat: no-repeat;
}

.tab li#tab02 {
  background-image: url(../images/btn_page_cat02.png);
  background-position: center center;
  background-repeat: no-repeat;
}

.tab li#tab03 {
  background-image: url(../images/btn_page_cat03.png);
  background-position: center center;
  background-repeat: no-repeat;
}

.tab li#tab04 {
  background-image: url(../images/btn_page_cat04.png);
  background-position: center center;
  background-repeat: no-repeat;
}

.tab li#tab01:hover {
  background-image: url(../images/btn_page_cat01_ov.png);
}

.tab li#tab02:hover {
  background-image: url(../images/btn_page_cat02_ov.png);
}

.tab li#tab03:hover {
  background-image: url(../images/btn_page_cat03_ov.png);
}

.tab li#tab04:hover {
  background-image: url(../images/btn_page_cat04_ov.png);
}

.tab li#tab01.select {
  background-image: url(../images/btn_page_cat01_ov.png);
}

.tab li#tab02.select {
  background-image: url(../images/btn_page_cat02_ov.png);
}

.tab li#tab03.select {
  background-image: url(../images/btn_page_cat03_ov.png);
}

.tab li#tab04.select {
  background-image: url(../images/btn_page_cat04_ov.png);
}

.content div {
  background-color: #80cee2;
}

.hide {
  display: none;
}

.content div ul {
  font-size: 0px;
  padding: 0px 0px 30px 0px;
}

.content div ul li {
  font-size: 14px;
  display: inline-block;
  width: 30%;
  border: solid 1px #fff;
  margin: 30px 0px 0px 2.5%;
}

.content div ul li a {
  display: block;
  padding: 20px 0px 20px 20px;
  background-image: url(../images/bg_cat_btn_off.png);
  background-position: right bottom;
}

.content div ul li a:hover {
  background-image: url(../images/bg_cat_btn_on.png);
}

.BlogArticle {
  float: left;
  width: 220px;
  /* height: 320px; */
  height: 350px;
  margin: 0px 0px 30px 24px;
  padding: 9px;
  border: solid 1px #ccc;
  background-color: #fff;
  background-image: url(../images/blog_more.png);
  background-position: right bottom;
  background-repeat: no-repeat;
  position: relative;
}

.BlogPhoto {
  text-align: center;
  width: 220px;
  /* height: 150px; */
  height: auto;
  overflow: hidden;
  background: #fff;
  display: table-cell;
  vertical-align: bottom;
}

.BlogPhoto img {
  max-width: 220px !important;
  max-height: 150px;
  width: 100% !important;
  aspect-ratio: 220/150;
  object-fit: cover;
  object-position: center;
}

.BlogDate {
  font-size: 12px;
  margin: 10px 0px;
}

.BlogTitle {
  font-size: 14px;
  line-height: 1.6;
  margin: 10px 0px;
}

.BlogText {
  font-size: 12px;
  line-height: 1.6;
}

.BlogNew {
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 100;
}

/* --- OcBox --- */
#OcBox {
  width: 640px;
  margin: 0px auto;
}

#OcBox h1 {
  font-size: 36px;
  text-align: center;
  line-height: 1;
  letter-spacing: 0em;
  margin: -120px 0px 30px 0px;
  padding: 0px;
  border-bottom: none;
}

#OcBox p {
  font-size: 18px;
  line-height: 1.6;
  color: #000;
  margin: 20px 0px;
}

#OcBox p:first-child {
  margin: 0px;
}

#OcBox p.Text01 {
  text-align: center;
  font-size: 16px;
  color: #ec7985;
  margin: -10px 0px 20px 0px;
}

#OcBox a {
  color: #0071bc;
}

#OcBox .OcProgram {
  margin: 20px 0px 0px 0px;
  padding: 30px 20px 0px 20px;
  background-color: #0071bc;
}

#OcBox .OcProgram h3 {
  clear: both;
  text-align: center;
  font-size: 24px;
  color: #000;
  padding: 8px 20px 5px 20px;
  background-color: #fff;
  border-radius: 30px; /* デフォルト */
  -webkit-border-radius: 30px; /* Safari,Google Chrome用 */
  -moz-border-radius: 30px; /* Firefox用 */
}

#OcBox .OcProgram p {
  color: #fff;
}

#OcBox .OcProgram h3 + p {
  float: left;
  width: 40%;
  margin: 20px 15px 25px 0px;
}

#OcBox .OcPast {
  margin: 0px;
  padding: 20px;
  background-color: #77b5df;
}

#OcBox .OcPast .Inner {
  padding: 15px;
  border: solid 2px #fff;
  border-radius: 20px; /* デフォルト */
  -webkit-border-radius: 20px; /* Safari,Google Chrome用 */
  -moz-border-radius: 20px; /* Firefox用 */
}

#OcBox .OcPast .Inner h2 {
  text-align: center;
  font-size: 24px;
  color: #000;
}

#OcBox .OcPast .Inner ul {
  width: 100%;
  font-size: 0px;
}

#OcBox .OcPast .Inner ul li {
  display: inline-block;
  width: 46%;
  margin: 10px 2% 0px 2%;
}

#OcBox .OcPast .Inner ul li a {
  display: block;
  text-align: center;
  font-size: 18px;
  color: #000;
  padding: 8px 10px 5px 10px;
  background-color: #fff;
  border-radius: 8px; /* デフォルト */
  -webkit-border-radius: 8px; /* Safari,Google Chrome用 */
  -moz-border-radius: 8px; /* Firefox用 */
}

#OcBox .OcAccess {
  margin: 20px;
  padding: 20px;
  border: solid 2px #0071bc;
  border-radius: 20px; /* デフォルト */
  -webkit-border-radius: 20px; /* Safari,Google Chrome用 */
  -moz-border-radius: 20px; /* Firefox用 */
}

#OcBox .OcAccess p.Text02 {
  font-size: 30px;
}

#OcBox .OcAccess span.Text03 {
  font-size: 18px;
  color: #ec7985;
}

#OcBox h3.Contact {
  font-size: 24px;
  color: #000;
  margin: 40px 0px 20px 0px;
  padding: 0px 0px 5px 0px;
  border-bottom: solid 2px #0071bc;
}

/* --- footer --- */
/* --- erc --- */
#CntBox p.AdmissionBtn {
  font-size: 22px;
  line-height: 1;
  letter-spacing: 0.2em;
  margin: 30px 0px;
  text-align: center;
}

#CntBox p.AdmissionBtn a {
  display: inline-block;
  color: #fff;
  background: url(../images/admissonbtn_bg.png) center left no-repeat #ff6666;
  padding: 17px 30px 15px 80px;
  border-radius: 10px; /* デフォルト */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
}

#CntBox p.AdmissionBtn a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.Container {
  margin: 0 auto;
  padding: 0 20px;
  font-size: 16px;
  font-family: メイリオ;
}

/* --- #Nyushi --- */
#Nyushi {
  max-width: 1080px;
  margin: 0 auto;
}

#Nyushi ul {
  -ms-display: flex;
  -webkit-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 50px 0 0px;
}

#Nyushi ul li {
  padding-bottom: 30px;
  width: 480px;
}

#Nyushi h1 {
  height: 135px;
  font-size: 48px;
  color: #8c8c8c;
  text-align: center;
  line-height: 135px;
  border-bottom: 1px solid #e5e5e5;
}

/* --- #Tokutaisei --- */
#Tokutaisei {
  background-color: #80cee2;
  max-width: 1080px;
  margin: 0 auto;
}

#Tokutaisei > h2 {
  background-color: #ffffff;
  text-align: center;
  padding-bottom: 40px;
}

.ContentBox p {
  line-height: 1.3;
  font-size: 38px;
  letter-spacing: 0.1em;
  color: #ffffff;
  text-align: center;
  padding-top: 50px;
  font-family: "Noto Serif JP", serif;
}

.ContentBox p span {
  font-size: 70px;
}

/*--- .Midashi ---*/
.Midashi {
  padding-bottom: 50px;
}

.Midashi .MidashiText:first-of-type p {
  text-align: center;
}

.Midashi h3 {
  text-align: center;
  padding-top: 100px;
  padding-bottom: 50px;
}

.Midashi h3:first-child {
  padding-top: 60px;
}

.MidashiText {
  max-width: 800px;
  margin: 0 auto;
}

.MidashiText:last-child p {
  text-align: center;
}

.Midashi p {
  color: #ffffff;
  line-height: 2;
  letter-spacing: 0.1em;
  margin: 0 auto;
  padding-bottom: 30px;
}

.Gakka {
  -ms-display: flex;
  -webkit-display: flex;
  display: flex;
  justify-content: space-between;
}

.Midashi .Case {
  padding-bottom: 20px;
  margin-left: 0;
}

.Midashi .Case img {
  vertical-align: -2px;
  max-width: 100%;
  height: auto;
}

.Case {
  color: #ffffff;
  font-size: 20px;
}

.Case:nth-of-type(2) {
  padding-top: 50px;
}

table {
  border-collapse: separate;
  border-radius: 5px;
  font-size: 20px;
  color: #8c8c8c;
}

table tr:nth-of-type(5) td:last-child,
tr:last-child td:last-child {
  padding-left: 0;
}

.LeftTop {
  border-top-left-radius: 15px;
}

.RightTop {
  border-top-right-radius: 15px;
  line-height: 1.5;
  padding-top: 30px;
}

.LeftBottom {
  border-bottom-left-radius: 15px;
}

.RightBottom {
  border-bottom-right-radius: 15px;
}

td {
  padding: 8px;
  background-color: #ffffff;
}

td span {
  color: #80cee2;
}

.BorderSide {
  border-top: 2px solid #80cee2;
  border-bottom: 2px solid #80cee2;
  padding: 25px 0;
}

.BorderVertical {
  border-right: 2px solid #80cee2;
  padding-right: 10px;
  padding-left: 10px;
  text-align: center;
}

#Kome {
  line-height: 1.5;
  padding-bottom: 30px;
}

#Balloon {
  position: relative;
  margin: 80px 0 0;
  background-color: #ccebf3;
}

#Balloon::before {
  content: "";
  position: absolute;
  top: -60px;
  left: 50%;
  margin-left: -30px;
  border: 30px solid transparent;
  border-bottom: 30px solid #ccebf3;
}

#Balloon p {
  color: #8c8c8c;
  max-width: 950px;
  margin: 0 auto;
  padding: 0 20px;
}

#Balloon p:first-child {
  font-size: 28px;
  text-align: center;
  vertical-align: top;
  line-height: 0;
  letter-spacing: 0.1em;
  padding-top: 50px;
  padding-bottom: 50px;
}

#Balloon p:nth-child(2) {
  line-height: 1.6;
  letter-spacing: 0.1em;
  padding-bottom: 30px;
}

#Balloon p:last-child {
  line-height: 1.6;
  letter-spacing: 0.1em;
  padding-bottom: 30px;
}

#Syutsugan {
  padding-top: 100px;
  text-align: center;
}

#Info {
  font-size: 28px;
  letter-spacing: 0.1em;
  text-align: center;
  padding-bottom: 30px;
  border-bottom: 4px solid #ffffff;
}

.InfoBox {
  -ms-display: flex;
  -webkit-display: flex;
  display: flex;
  justify-content: space-between;
  padding-top: 30px;
}

.InfoLeft {
  width: 46%;
  margin-left: 2%;
}

.InfoRight {
  width: 46%;
  margin-right: 2%;
}

.InfoLeft div,
.InfoRight div {
  padding-bottom: 10px;
  color: #ffffff;
}

.InfoLeft div:last-of-type {
  padding-bottom: 50px;
}

.InfoRight div:last-of-type {
  padding-bottom: 25px;
}

.InfoBox .Venue {
  border: 4px solid #ffffff;
  border-radius: 50px;
  height: 60px;
  line-height: 60px;
  font-size: 20px;
  text-align: center;
  padding-bottom: 0;
  margin-bottom: 30px;
}

.Col1 {
  display: inline-block;
  width: 18%;
  /* border: solid 1px; */
}

.Col2 {
  display: inline-block;
  /* border: solid 1px; */
}

/* --- #trust --- */
.trust-sp {
  display: none;
}

#trust_main p {
  font-size: 16px;
  text-align: center;
  font-family: メイリオ;
  color: #787878;
  line-height: 2;
  letter-spacing: 0.05em;
}

#trust h2 {
  text-align: center;
  margin-bottom: 80px;
}

#trust h2 + p {
  padding-bottom: 40px;
}

#trust p:last-child {
  background-color: #80cee2;
  padding: 40px 0 50px;
}

#trust_main .midashi {
  margin: 100px 0 50px;
  text-align: center;
}

#vision ul {
  text-align: center;
}

#vision ul li {
  list-style: none !important;
}

#vision ul li + li {
  padding-top: 20px;
}

#olicy p:nth-of-type(2) {
  padding-bottom: 50px;
}

area {
  border: none;
  outline: none;
}

#kpi p:nth-of-type(2) {
  padding-bottom: 50px;
}

#kpi p:nth-of-type(4) {
  padding: 50px 0 60px;
}

#kpi a {
  background-image: none;
}

#message {
  margin-top: 100px;
  background-color: #80cee2;
  padding: 100px 0;
}

#message p:nth-of-type(2) {
  padding: 45px 0;
}

@media only screen and (max-width: 767.98px) {
  /* --- 1.common ??????????? --- */
  /* --- header --- */
  /* --- Pankuzu, Title --- */
  h1 {
    font-size: 20px;
    padding: 0px 20px 20px 20px;
  }
  /* --- NavigationBox --- */
  #NavigationBox {
    max-width: 500px;
  }
  #NavigationBox ul {
    padding: 7px 10% 15px 10%;
    text-align: left;
  }
  /* --- CntBox --- */
  #CntBox {
    margin: 0px 0px 50px 0px;
  }
  #CntBox h2 {
    font-size: 18px;
    font-family: inherit;
    margin: 50px 10px 30px 10px;
    font-weight: bold;
    text-align: left;
  }
  #CntBox h3 {
    font-size: 18px;
    margin: 40px 10px 20px 10px;
  }
  #CntBox h4 {
    font-size: 18px;
    margin: 40px 10px 20px 10px;
  }
  #CntBox h5 {
    font-size: 16px;
    margin: 40px 10px 20px 10px;
  }
  #CntBox h6 {
    margin: 20px 10px 20px 10px;
  }
  #CntBox p {
    margin: 20px 10px 20px 10px;
  }
  #CntBox ul, 
  #CntBox ol {
    margin: 20px 0px 20px 20px;
    font-size: 14px;
  }
  table {
    width: 100%;
    max-width: calc(100% - 20px);
  }
  #CntBox table {
    margin: 20px 10px 20px 10px;
  }
  #CntBox table th,
#CntBox table td {
    font-weight: normal;
  }
  .DispPc {
    display: none;
  }
  /* --- IndexBox --- */
  /* --- CategoryBox --- */
  .tab li {
    width: 24.7%;
  }
  .tab li#tab01 {
    background-image: url(../images/btn_cat01.png);
  }
  .tab li#tab02 {
    background-image: url(../images/btn_cat02.png);
  }
  .tab li#tab03 {
    background-image: url(../images/btn_cat03.png);
  }
  .tab li#tab04 {
    background-image: url(../images/btn_cat04.png);
  }
  .tab li#tab01:hover {
    background-image: url(../images/btn_cat01_ov.png);
  }
  .tab li#tab02:hover {
    background-image: url(../images/btn_cat02_ov.png);
  }
  .tab li#tab03:hover {
    background-image: url(../images/btn_cat03_ov.png);
  }
  .tab li#tab04:hover {
    background-image: url(../images/btn_cat04_ov.png);
  }
  .tab li#tab01.select {
    background-image: url(../images/btn_cat01_ov.png);
  }
  .tab li#tab02.select {
    background-image: url(../images/btn_cat02_ov.png);
  }
  .tab li#tab03.select {
    background-image: url(../images/btn_cat03_ov.png);
  }
  .tab li#tab04.select {
    background-image: url(../images/btn_cat04_ov.png);
  }
  .content div ul li {
    width: 46%;
    margin: 10px 0px 0px 2%;
  }
  .content div ul li a {
    padding: 10px 0px 10px 10px;
    background-repeat: no-repeat;
  }
  .content div ul li img {
    width: 90%;
    height: auto;
  }
  /* --- OcBox --- */
  #OcBox {
    max-width: 640px;
  }
  #OcBox h1 {
    margin: -50px 0px 30px 0px;
  }
  #OcBox p {
    font-size: 12px;
    margin: 20px 10px;
  }
  #OcBox p.Text01 {
    font-size: 12px;
    margin: -10px 10px 20px 10px;
  }
  #OcBox .OcProgram h3 {
    font-size: 16px;
  }
  #OcBox .OcPast .Inner h2 {
    font-size: 16px;
  }
  #OcBox .OcPast .Inner ul {
    text-align: center;
  }
  #OcBox .OcPast .Inner ul li {
    width: 100%;
    margin: 10px 0px 0px 0px;
  }
  #OcBox .OcPast .Inner ul li a {
    font-size: 14px;
  }
  #OcBox .OcAccess {
    margin: 10px;
    padding: 10px;
  }
  #OcBox .OcAccess p.Text02 {
    font-size: 14px;
  }
  #OcBox .OcAccess span.Text03 {
    font-size: 12px;
  }
  #OcBox h3.Contact {
    font-size: 16px;
  }
  /* --- footer --- */
  /* --- etc --- */
  #CntBox p.AdmissionBtn {
    font-size: 18px;
  }
  .Container table {
    max-width: 100%;
  }
  /* --- #Nyushi --- */
  #Nyushi ul {
    -ms-display: block;
    -webkit-display: block;
    display: block;
  }
  /* --- #Tokutaisei --- */
  .ContentBox p {
    font-size: 18px;
  }
  .ContentBox p span {
    font-size: 30px;
  }
  /*--- .Midashi ---*/
  .Midashi p {
    padding: 0px 5px 30px 5px;
  }
  #Balloon p:first-child {
    font-size: 18px;
    letter-spacing: 0em;
  }
  .InfoBox {
    -ms-display: block;
    -webkit-display: block;
    display: block;
  }
  .InfoLeft {
    width: 96%;
  }
  .InfoRight {
    width: 96%;
  }
  .Col1 {
    /* border: solid 1px; */
  }
  .Col2 {
    /* border: solid 1px; */
  }
  /* --- #trust --- */
  .trust-pc {
    display: none;
  }
  #trust_main p {
    font-size: 14px;
  }
  #trust h2 {
    margin-bottom: 50px;
  }
  #trust h2 + p {
    padding-bottom: 45px;
  }
  #trust p:last-child {
    padding: 25px 0 30px;
  }
  #trust_main .midashi {
    margin: 50px 0 30px;
  }
  #trust_main #vision #trust-vision {
    margin: 0;
  }
  #vision ul li + li {
    padding-top: 10px;
  }
  #policy p:nth-of-type(2) {
    padding-bottom: 20px;
  }
  #kpi p:nth-of-type(2) {
    padding-bottom: 30px;
  }
  #kpi p:nth-of-type(4) {
    padding: 30px 0 30px;
  }
  #message {
    margin-top: 50px;
    padding: 40px 0 50px;
  }
  #message p:nth-of-type(2) {
    padding: 30px 0;
  }
}


#CntBox table.no-frame tr:has(img) {
  display: flex;
  flex-direction: column-reverse;
}
#CntBox table.no-frame td:has(img) {
  text-align: center;
}
#CntBox table.no-frame tr:has(td:first-child img) {
  flex-direction: column;
}

@media only screen and (max-width: 767.98px) {
  #CntBox table th, #CntBox table td {
    font-weight: normal;
  }
  #CntBox iframe {
    max-width: 100%;
  }
  .trust-sp {
    display: initial;
  }
  #kpi a {
    padding-left: 0;
  }
}

.customize-support__list {
  display: grid;
  grid-gap: 30px;
	padding: 20px 20px 0 20px;
}
.customize-support__list__img {
  width: 100%;
}
.customize-support__list__img img {
  aspect-ratio: 360/240;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: auto;
}
.customize-support__list__ttl , #CntBox h3.customize-support__list__ttl{
  background-color: #FFE100;
  font-size: 1rem;
	margin-top: 0;
	text-align: left;
	padding: 6px 15px 6px 15px;
	letter-spacing: 0.02em;
	line-height: calc( 29 / 20 );
	display: block;
	font-weight: 500;
}

.customize-support__list__txt,#CntBox p.customize-support__list__txt {
  margin: 0;
	margin-top: 15px;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5;
	padding:0;
}

@media screen and (min-width: 768px) {
  .customize-support__list {
    padding: 20px 20px 0 20px;
    grid-gap: 41px 40px;
    grid-template-columns: 1fr 1fr 1fr;
  }
  .customize-support__list__ttl, #CntBox h3.customize-support__list__ttl {
    font-size: 1.25rem;
	  padding: 10px 20px 10px 20px;
  }
  .customize-support__list__txt,#CntBox p.customize-support__list__txt {
    font-size: 1rem;
    margin-top: 20px;
  }
}
