@charset "utf-8";
body {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 18px;
    margin: 0;
    padding: 0;
    color: #666666;
}
@font-face {
  font-family: '07LogoTypeGothic7';
  src: url('font/07LogoTypeGothic7.ttf') format('truetype');
}
a:hover{
  opacity: 0.7;
}

/*ヘッダー*/
.header-container {
    max-width: 97%;
    height: 100x;
    margin: 0px auto 10px;;
    display: flex;
    padding-top: 12px;
}
.area-logo-top, .area-logo-bottom {
    display: flex;
}
.area-logo-bottom {
  margin-top: -4px;
}
.area-logo-top img {
    margin: 4px 0;
    height: 31px;
}
.area-logo-bottom img {
    height: 33px;
    display: block;
}
.area-nav-header {
    display: flex;
}
.area-logo-header {
  width: 50%;
}
.area-logo-top p {
  font-size: 0.9rem;
  margin-left: 22px;
  color: #363636;
}
.area-logo-top p > span, .area-logo-bottom p > span {
  font-size: 1.2rem;
  margin-left: 10px;
  color: #363636;
}
.area-logo-bottom p {
  font-size: 0.9rem;
  margin-left: 38px;
  color: #363636;
}
.area-logo-right a {
  text-decoration: none;
}
.area-logo-right p {
  padding: 12px 15px 10px 15px;
  margin-right: 15px;
  border: solid 1px #666666;
  font-family: '07LogoTypeGothic7';
  font-size: 1.8rem;
  text-align: center;
  align-items: center;
  color: #666666;
}
.area-logo-right p span {
  display: block;
  font-size: 0.9rem;
  margin-top: 3px;
  color: #666666;
}
.header-nav-list-item {
  display: flex;
  margin-top: 10px;
  margin-left: 50px;
}
.header-nav-list-item > .item {
  font-size: 0.85rem;
  margin-left: 10px;
  font-weight: 600;
}
.header-nav {
  /*display: flex;*/
  flex-wrap: wrap; /* 複数行に対応 */
  justify-content: space-between; /* 左右にスペースを均等に配置 */
}
.header-nav-list-item {
  display: flex;
  flex-wrap: wrap; /* 複数行に対応 */
  width: 100%;
  position: relative;
}
.header-nav-contact-btn {
  position: absolute;
  top: 35px;
  left: 240px;
}

.header-nav-list-item .item {
  margin-right: 20px; /* 項目間のスペース */
}
.header-nav-contact-btn {
  margin-top: 10px; /* 他の項目と間隔を空ける */
  margin-left: auto; /* 右寄せ */
  width: 100%; /* 全体幅を設定 */
  text-align: right; /* テキストを右寄せ */
  margin-right: 10px;
  font-family: '07LogoTypeGothic7', sans-serif;
}

.header-nav-contact-btn {
  background: linear-gradient(to bottom, rgb(136, 208, 207), rgb(39, 39, 213));
  color: white;
  width: 94px;
  height: 24px;
  border: none;
  border-radius: 12px; /* 角を丸くする */
  cursor: pointer;
  font-size: 14px;
  text-align: center;
  line-height: 24px;
  padding: 0;
  margin: 0;
}
.header-nav-contact-btn:hover {
    opacity: 0.8;
}
.header-nav-contact-btn:active {
    opacity: 0.6;
}
.area-top-slider {
  width:1112px;
  margin: 2px auto 0;
}

.slider-img {
  margin: 0 30px;
}

/* お知らせセクション */
.top-news-title {
  width: 136px;
  font-family: '07LogoTypeGothic7';
  font-size: 1.15em;
}
table {
  width: 100%;
  border-collapse: collapse;
}

td {
  padding: 6px;
}

td + td {
  padding-left: 30px; /* 列の間に53pxの余白を設定 */
}
.area-news {
  max-width: 90%;
  display: flex;
  margin-top: 40px;
  margin-left: 225px;
  margin-bottom: 120px;
}
.area-news-wrap {
  display: flex;
  position: relative;
}
.area-news-container {
  top: 35px;
}
.news-item-data {
  text-decoration: none;
  color: #363636;
  font-size: 0.9rem;
  position: absolute;
  margin-top: -10px;
}
.data-column {
  width: 110px;
}
.area-news-title a {
  text-decoration: none;
  color: #363636;
  position: absolute;
  top: 45px;
  left: 60px;
  font-family: '07LogoTypeGothic7';
  color: #666666;
}
.area-news-contents {
  margin-top: -10px;
  margin-left: 50px;
  width: 85%;
}
.news-item-contents {
  font-size: 0.8em;
}
.area-news-list {
  display: flex;
  padding: 10px 0;
}
/*開発セクション*/
.area-development-container {
  width: 70%;
  margin: 0 auto;
  display: flex;
}
.development-left-box {
  position: relative;
  width:53%;
  margin-top: -12px;
  margin-left: 50px;

}
.development-left-box h2 {
  font-size: 1.35rem;
  margin-bottom: 2rem;
  color: #666666;
  font-family: '07LogoTypeGothic7';
}
.development-right-box {
  margin-left: auto;
}
.development-right-box img {
  display: block;
  height: 163px;
}
.development-left-box p {
  padding-left: 50px; /* 余白を設けるための調整 */
  margin-top: -6px;
  font-size: 0.9rem;
  line-height: 1.4rem;
  color: #666666;
  width: 95%;
  font-family: '07LogoTypeGothic7';
}
.development-left-box p::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 60px;
  width: 34px;
  height: 1px;
  background-color: black; /* 線の色を指定 */
}
.vaccine {
  margin-top: 70px;
  margin-bottom: 90px;
}

.area-uematsu-logo {
  margin-bottom: 65px;
}
.area-uematsu-logo img {
  height: 27px;
}

/*フッター*/
footer {
  background-color: #fbfafa;
}
.footer-container {
  max-width: 1300px;
  margin: 0 auto;
  padding: 60px 0 36px 60px;
}
.area-footer-flex-box {
  display: flex;
  margin-top: -28px;
}
.footer-osaka-logo img {
  height: 30px;
}
.area-footer-sub-logo {
  display: flex;
  margin-bottom: 20px;
}
.area-footer-sub-logo p {
  font-size: 1.1rem;
  margin-left: 20px;
}
.area-footer-sub-logo p span {
  font-size: 1.2rem;
  padding-left: 15px;
}
.osaka-address {
  font-size: 1.125rem;
  margin-left: 60px;
}
.contact-address {
  display: flex;
  margin-left: 60px;
}
.contact-address p:first-child {
  margin-right: 30px;
}
.footer-tokyo-logo img {
  height: 42px;
  margin-top: -10px;
  margin-left: -42px;
}
.tokyo-address {
  font-size: 1.125rem;
  margin-left: 60px;
}
.tokyo-contact-address {
  display: flex;
}
.tokyo-contact-address p:first-child {
  margin-left: 60px;
}
.tokyo-contact-address p:last-child {
  margin-left: 30px;
}
.ikagakukenkyujo p {
  margin-top: -5px;
  margin-left: -30px;
}
.area-footer-inner-box-right {
  margin-left: 70px;
}
.header-top-hr {
  width: 80%;
  margin: 30px auto;
  color: #CCCCCC;
}
.header-top-hr-sub {
  width: 60%;
  margin: 30px auto;
  color: #CCCCCC;
}
.area-footer-nav {
  width: 42%;
  margin: 0 auto;
}
.footer-nav-list {
  display: flex;
  justify-content: space-between;
}
.footer-nav-list a {
  text-decoration: none;
  font-size: 0.9rem;
  color: #363636;
}
.area-copyright {
  font-size: 1rem;
  display: block;
  text-align: center;
  margin-top: -20px;
}



