@charset "utf-8";

/* 基本設定 */

html {
  font-size: 62.5%;
}

body {
  background-color: #fff;
  font-family: "noto sans jp";
}

.wrapper {
  max-width: 1280px;
  margin: 0 auto;
  font-size: 1.6rem;
  color: rgb(1, 15, 55);
  box-sizing: border-box;
}



/* ヘッダー */

/* ヘッダー全体のflex */
.flex_header {
  display: flex;
  justify-content: space-between;
  text-align: center;
  align-items: center;
}

.menu2 {
  display: none;
}

.site_name h1 a:hover,
.contact a:hover {
  opacity: 70%;
}

.site_name h1 a,
.contact a {
  transition-duration: 0.3s;
}

/* 子要素のwidth設定 */

h1 img {
  width: 250px;
  height: auto;
}

.global_nav {
  width: calc(100% - 250px);
}

/* サイト名 */
.site_name h1 a {
  color: rgb(1, 15, 55);
  font-weight: bolder;
}

/* ナビゲーション */
.flex_nav {
  display: flex;
  justify-content: flex-end;
  gap: 25px;
  align-items: center;
}

.global_nav li a {
  color: rgb(1, 15, 55);
  font-weight: 500;
  transition-duration: 0.3s;
}

li a:hover,
dd a:hover {
  color: #ff3399;
  cursor: pointer;
}

li a,
dd a {
  transition-duration: 0.3s;
}
  

/* 問い合わせ */

.global_nav li.inquiry {
  width: 180px;
  background-color: #ff3399;
  border-radius: 5px;
  box-sizing: border-box;
  padding: 10px 20px 8px;
  color: #fff;
  transition-duration: 0.5s;
}

.global_nav li.inquiry:hover {
  cursor: pointer;
  opacity: 60%;
}

.global_nav li.inquiry a {
  color: #fff;
}

.inquiry a::before {
  content: url("../image/icon_email_white.png");
  vertical-align: middle;
  display: inline-block;
  padding-right: 8px;
}

/* ビジュアルイメージ */
 /* div.slider img {
  width: 100%;
  height: 700px;
} 

.image1 {
object-fit: cover;
object-position: center center;
}

.image2 {
object-fit: cover;
object-position: center center;
}

.image3 {
object-fit: cover;
object-position: center bottom;
} */

.firstview_responsive {
  display: none;
}

/* メイン */

h2 {
  text-align: center;
  margin: 40px auto;
  font-size: bold;
}

.headline {
  margin: 180px auto;
}

.top_bgi1,
.top_bgi2 {
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  margin-top: 100px;
  background-position: center bottom;
  width: 100%;
  height: 600px;
}

.top_bgi1 {
  background-image: url(../image/top6.jpg);
  background-position: center center;
}

.top_bgi2 {
  background-image: url(../image/top8.jpg);
  background-position: center center;
  margin-bottom: 220px;
}

/* リンク */

a {
  color: rgb(1, 15, 55);
}

a:hover {
  cursor: pointer;
}

p.button {
  width: fit-content;
  text-align: center;
  border: 1px solid rgb(1, 15, 55);
  padding: 7px 50px;
  background-color: #fff;
  margin: 20px auto;
  border-radius: 5px;
  transition-duration: 0.3s;
}

p.button::after,
.second ul li a::after,
.flex_start dd.content a::after,
.bold::after {
  content: " >";
}


p.button:hover {
  background-color: #ff3399;
  color: #fff;
  border: none;
  border: 1px solid #fff;
}

p.details {
  margin: 40px auto;
}

/* malta-learningについて */
.position_malta_learning {
  position: relative;
}

.malta_learning_img {
  width: calc(100% / 2);
  height: auto;
  position: absolute;
  top: 0;
  left: 30px;
}

.our_strengths {
  width: calc(100% / 2);
  display: block;
  background-color: rgba(255, 255, 255, 0.973);
  border-radius: 10px;
  box-shadow: 4px 4px 4px 4px #c5edef7c;
  position: absolute;
  top: 20px;
  right: 30px;
  z-index: 1;
}

.our_strengths h3 {
  margin: 20px;
}

.our_strengths p {
  margin: 20px;
}

.our_strengths p.details {
  margin: 40px auto;
}




/* 選ばれる4つの理由 */

.light_blue {
  background-color: #c5edef3d;
  padding: 40px 0 40px;
}

.reason {
  margin-top: 660px;
}

.flex_four_reason {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  text-align: center;
}

.each_reason {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.four_reason {
  width: 300px;
}

.reason_icon {
  width: 130px;
  height: 130px;
  padding-top: 20px;
}

p.left {
  text-align: left;
}

.four_reason h3,
.four_reason p.left {
  padding: 10px;
}

.four_reason h3 {
  border-bottom: 1px solid rgb(1, 15, 55);
  font-weight: 500;
}

/* マルタ留学の魅力 */

.recommendation {
  background-image: url(../image/valetta_visualimg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 700px;
  position: relative;
}

.recommendation_wrapper {
  max-width: 1280px;
  background-color: #060d4e88;
  position: absolute;
  top: 360px;
  right: 0;
  left: 0;
  padding: 0 200px;
  box-sizing: border-box;
  transition-duration: 0.7s;
  color: #fff;
  text-shadow: 2px 2px 2px #060d4e;
}

.recommendation_wrapper:hover {
  cursor: pointer;
  background-color: #060d4eb9;
  transform: translateY(-20px);
}

.recommendation_wrapper p.button {
  background-color: #fff;
  text-shadow: none;
  color: #060d4e;
  border: none;
}


/* 語学学校紹介 */

.about_school_flex {
  display: flex;
  flex-wrap: wrap;
  align-content: space-evenly;
  justify-content: space-evenly;
}

.about_school_flex div.first,
.about_school_flex div.second {
  width: 500px;
}

.about_school h3 {
  text-align: center;
  margin: 0 auto 40px;
}

.about_school h3 {
  font-size: 2rem;
  font-weight: bold;
  padding: 30px;
  border-bottom: 1px solid rgb(1, 15, 55);
}

.about_school li {
  font-size: 2rem;
  font-weight: 500;
  padding: 30px;
  text-indent: 4rem;
  border-bottom: 1px dotted rgb(1, 15, 55);
  background-image: url(../image/crown.png);
  background-repeat: no-repeat;
  background-size: 4rem;
  background-position: left center;
}

.school_image {
  margin: 30px auto;
  width: 216px;
}

.school_image img {
  width: 216px;
  height: 108px;
}

.first {
  padding: 20px;
}

/* マルタ情報 */

.school_fees {
  background-image: url(../image/comino_ph.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center bottom;
  width: 100%;
  height: 600px;
  border-radius: 150px 0 150px 0;
  background-attachment: fixed;
}

.school_fees,
.headline {
  position: relative;
}

.school_fees_wrapper {
  max-width: 1280px;
  width: 100%;
  height: 300px;
  background-color: #060d4e6b;
  padding-top: 1px;
  position: absolute;
  top: 155px;
  transition-duration: 0.7s;
}

.school_fees_wrapper:hover,
.column_wrapper:hover {
  background-color: #060d4ea6;
  transform: translateY(-20px);
  font-size: larger;
}


.school_fees h2 {
  color: #fff;
  text-shadow: 3px 3px 5px #000;
  line-height: 300px;
  margin: auto;
}

/* 留学体験記 */
.column {
  background-image: url(../image/ship_ph.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center bottom;
  width: 100%;
  height: 600px;
  border-radius: 150px 0 150px 0;
  background-attachment: fixed;
}

.column, 
.headline {
  position: relative;
}

.column_wrapper {
  max-width: 1280px;
  width: 100%;
  height: 300px;
  background-color: #060d4e6b;
  border-radius: 1px 0 1px 0;
  padding-top: 1px;
  position: absolute;
  top: 155px;
  transition-duration: 0.7s;
}

.column h2 {
  color: #fff;
  text-shadow: 3px 3px 5px #000;
  line-height: 300px;
  margin: auto;
}

.column h2::after,
.school_fees h2::after {
  content: " >";
}

/* お知らせ */

.flex_start {
  display: flex;
  justify-content: center;
  padding: 10px;
  border-bottom: 1px dotted rgb(1, 15, 55);
  width: fit-content;
  margin: 0 auto;
  gap: 20px;
}

.flex_start dt {
  width: 110px;
  text-align: center;
  padding: 5px;
  color: #fff;
  font-weight: 500;
  margin-left: 50px;
}

.flex_start dt.campaign {
  background-color: #ff4af0;
}

.flex_start dt.event {
  background-color: #ffa14a;
}

.flex_start dt.info {
  background-color: #3ff0f7;
}

.flex_start dd.date {
  width: 130px;
  text-align: center;
  padding: 5px;
}

.flex_start dd.content {
  width: 320px;
  padding: 5px;
}

/* フッター */

/* リンク */

.footer_button {
  width: fit-content;
  background-color: #fff;
  border-radius: 5px;
  box-sizing: border-box;
  padding: 12px 30px 10px;
  color: #060d4e;
  transition-duration: 0.5s;
  margin: 50px auto;
}

.footer_button:hover {
  cursor: pointer;
  background-color: #060d4e00;
  color: #fff;
  font-size: bold;
  border: 2px solid #fff;
  box-sizing: border-box;
}

.footer_button a {
  color: #060d4e;
  width: 100%;
  height: 100%;
  display: block;
}

.footer_button a:hover {
  color: #fff;
}

.footer_button::after {
  content: " >";
}

/* お問い合わせ */

.booking {
  color: #fff;
  text-align: center;
}

.base_image1 {
  background-image: url(../image/first_color.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}

.first_color {
  background-color: #061281b0;
  width: 100%;
  height: 400px;
  padding: 50px;
  box-sizing: border-box;
}

/* カウンセリング、無料診断 */

.footer_flex_between {
  display: flex;
  justify-content: space-between;
}

.second_color,
.third_color,
.base_image2,
.base_image3 {
  width: calc(100% / 2);
}

.base_image2 {
  background-image: url(../image/second_color.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}

.second_color {
  background-color: #053022b4;
  width: 100%;
  height: 400px;
  padding: 50px;
  box-sizing: border-box;
}

.base_image3 {
  background-image: url(../image/third_color.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}

.third_color {
  background-color: #300523b4;
  width: 100%;
  height: 400px;
  padding: 50px;
  box-sizing: border-box;
}

/* サイトマップ */

.footer_navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  gap: 60px;
  background-color: #81faf46b;
  padding: 30px;
}

.footer_navi ul {
  margin-top: 10px auto;
  padding-top: 20px auto;
}

.footer_navi li {
  width: 17rem;
  padding: 5px;
}

.footer_navi ul li a.bold {
  font-weight: 500;
}

.footer_navi ul li a.hyphen::before {
  content: "- "
}

/* コンタクト */


.contact {
  text-align: center;
}

small {
  display: block;
  text-align: center;
  margin: 10px 0;
}

/* 学校紹介 */

/* スクールイメージ画像 */

.visualimg_school {
  background-image: url(../image/student.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 60%;
  width: 100%;
  height: 350px;
}

.visualimg_school h1 {
  text-align: center;
  padding-top: 50px;
  text-shadow: 2px 2px 2px #fff;
}

/* スクールメニュー */

.school_menu {
  padding-top: 1px;
  margin-top: 100px;
}

ul.school_navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  align-content: space-between;
  transition-duration: 1s;
  background-color: none;
}

ul.school_navi li {
  width: calc(98% / 3);
  height: 60px;
  border-radius: 5px;
  margin-bottom: 10px;
  line-height: 60px;
  text-align: center;
  font-size: 2rem;
  background-color: none;
  border: 1px solid #060d4e;
  box-sizing: border-box;
}

ul.school_navi li a {
  display: block;
  width: 100%;
  height: 100%;
  transition-duration: 0.3s;
}

ul.school_navi li a:hover {
  color: #fff;
  font-weight: 500;
  box-sizing: border-box;
  text-shadow: 2px 2px 2px rgb(20, 0, 6);
  background-image: url(../image/water.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: left top;
  background-attachment: fixed;
  border: 1px solid rgba(20, 0, 6, 0.356);

}


/* 学校紹介全体 */

.item {
margin: 50px auto;
padding-top: 10px;
}

.school_wrapper h3 {
  padding: 10px 0;
  border-bottom: 1px solid rgb(1, 15, 55);
}

.school p.left {
  padding: 10px 0;
}

.flex_school {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: space-between;
  gap: 30px;
  margin-top: 20px;
}

.school_wrapper img {
  width: 300px;
  height: auto;
  box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.3);
}

.school_wrapper {
  padding: 30px;
  text-align: center;
  margin-bottom: 20px;
  width: 360px;
  box-sizing: border-box;
}

.background_image {
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 180px;
  background-attachment: fixed;
  margin-top: 70px;
}

.background_image h2 {
  margin-left: auto;
  margin-right: auto;
  line-height: 180px;
  text-shadow: 3px 3px 5px #060d4e;
  color: #fff;
  font-size: 3rem;
}

.bgi_1 {
  background-image: url(../image/comino_ph.jpg);
  background-position: center bottom;
}

.bgi_2 {
  background-image: url(../image/contact_page_ph.jpg);
  background-position: center bottom;
}

.bgi_3 {
  background-image: url(../image/ship_ph.jpg);
  background-position: center bottom;
}

.bgi_4 {
  background-image: url(../image/top3.jpg);
  background-position: center bottom;
}

.bgi_5 {
  background-image: url(../image/malta_midium.jpg);
  background-position: center bottom;
}

.bgi_6 {
  background-image: url(../image/valetta_visualimg.jpg);
  background-position: center center;
}

.bgi_7 {
  background-image: url(../image/student.jpg);
  background-position: 50% 65%;
  width: 100%;
  height: 600px;
  margin: 150px auto;
}

.bgi_7 p {
  font-size: 4rem;
  text-shadow: 3px 3px 3px #fff;
  margin: 40px 10px;
  text-align: center;
  font-weight: bold;
}


/* 背景画像なし */

.even, .odd {
  background-color: #ffffff3b;
  box-shadow: 0px 5px 15px #a8aaacb9;
  border-bottom: 2px solid #a8aaacb9;
}

.odd img {
  border-radius: 70% 70% 0 0;
}



/* お問い合わせページ */

/* ファーストビュー（飛行機） */
.contact_visual_img {
  background-image: url(../image/airplane.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100%;
  height: 350px;
}

.contact_visual_img h1 {
  text-align: center;
  padding-top: 150px;
  text-shadow: 2px 2px 2px #fff;
}

.contact_visual_img .box p {
  font-size: 2.2rem;;
  text-align: center;
  padding-top: 20px;
  text-shadow: 2px 2px 2px #fff;
  color: #060d4e;
  font-weight: bold;
}

/* お問い合わせフォーム */

.contact_image {
  background-image: url(../image/contact_page_ph.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding-top: 80px;
  padding-bottom: 80px;
  margin-top: 80px;
  margin-bottom: 80px;
}

.contact_white {
  background-color: #ffffffd8;
  width: 640px;
  height: auto;
  margin: 70px auto 40px;
  padding: 50px 0 20px;
  border-radius: 70px;
  text-align: center;
  font-weight: 550;
}

.contact_white h2 {
  padding: 0;
  margin: 50px auto 0;
}

.contact_white p {
  margin-top: 30px;
  margin-bottom: 70px;
}

span {
  color: red;
}

.box h2,
.box p {
  color: #fff;
  text-shadow: 2px 2px 2px #060d4e;
}

.box h2 {
padding-top: 100px;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"]{
  width: 350px;
  line-height: 4rem;
  font-size: 2rem;
  text-align: center;
}

input[type="submit"] {
  margin: 50px auto 30px;
  padding: 18px 60px;
  border-radius: 150px;
  color: #fff;
  background-color: #ff3399;
  cursor: pointer;
  border: 1px solid #fff;
  font-size: 2rem;
  font-weight: 400;
}

input[type="submit"]:hover{
opacity: 70%;
}


p.underline {
  text-align: center;
  margin: 25px auto 5px;
}


/*===================================
    Media Queries
============================*/
/* --- viewport width 0 ~ 440px --- */
@media screen and (max-width: 440px) {
  .menu2 {
    display: block;
  }

  .global_nav,div.flex_inquiry {
    display: none;
  }

  .flex_header {
    display: initial;
  }

  .site_name h1 {
  text-align: center;
  }

  .headline,
  .top_bgi1,
  .top_bgi2 {
    margin: 50px auto;
  }

  p {
    font-size: 1.5rem;
  }

  .image3 {
    display: none;
  }

  .firstview_responsive {
    display: block;
  }

  img.firstview_responsive {
    width: 100%;
    height: auto;
  }

  /* malta-learningについて */

  .position_malta_learning {
    position: initial;
  }

  .malta_learning_img {
    position: initial;
    width: initial;
    width: 100%;
    height:auto;
    margin: 0 auto;
  }

  .our_strengths {
    width: initial;
    width: 95%;
    display: block;
    background-color: rgba(255, 255, 255, 0.973);
    border-radius: 0 0 10px 10px;
    border: 1px solid #060d4e81;
    position: initial;
    margin: 0 auto;
    text-align: center;
    box-sizing: border-box;
    box-shadow: initial;
  }

/* 当社が選ばれる４つの理由 */

.reason {
  margin-top: 0;
}

/* マルタ留学の魅力 */

h2#margin_responsive {
  margin: 5px auto;
  text-align: center;
}

p#margin_responsive2 {
  margin: 0px auto;
  text-align: center;
}

.recommendation {
  background-image: url(../image/valetta_visualimg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  width: 100%;
  height: 500px;
  position: relative;
}

.recommendation_wrapper {
  width: 100%;
  height: 220px;
  background-color: #060d4e88;
  position: absolute;
  top: 250px;
  right: 0;
  left: 0;
  padding: 10px;
  box-sizing: border-box;
  transition-duration: 0.7s;
  color: #fff;
  text-shadow: 2px 2px 2px #060d4e;
}

/* 語学学校紹介 */

.about_school li {
  font-size: 1.8rem;
  font-weight: 500;
  padding: 30px auto 30px 100px;
  text-indent: 4rem;
  border-bottom: 1px dotted rgb(1, 15, 55);
  background-image: url(../image/crown.png);
  background-repeat: no-repeat;
  background-size: 4rem;
  background-position: 30px center;
  padding-left: 30px;
}

.about_school li a {
  display: block;
  text-align: center;
}



/* お知らせ */

.flex_start {
  display: initial;
  display: block;
  text-align: center;
  margin: 0 auto;
}

.flex_start dt {
  width: 110px;
  text-align: center;
  color: #fff;
  font-weight: 500;
  margin: 0 auto;
}

.flex_start dd.date {
  width: initial;
  text-align: center;
}

/* フッター */

.footer_flex_between {
  display: initial;
  width: 100%;
}

.second_color,
.third_color,
.base_image2,
.base_image3 {
  width: initial;
}

.first_color,
.second_color,
.third_color {
  padding: 20px;
}

.footer_navi {
  gap: 20px;
}

.footer_navi ul {
  margin-top: 5px auto;
  padding-top: 10px auto;
}

/* 学校紹介 */

.school_menu {
  padding-top: 1px;
  margin-top: 50px;
}

ul.school_navi {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  align-content: center;
  transition-duration: 1s;
  background-color: none;
}

ul.school_navi li {
  width: calc(98% / 2);
  height: 4rem;
  border-radius: 5px;
  margin-bottom: 5px;
  line-height: 4rem;
  text-align: center;
  font-size: 1.5rem;
  background-color: none;
  border: 1px solid #060d4e;
  box-sizing: border-box;
}

.item {
  margin: 20px auto;
  padding-top: 1px;
  }

  .flex_school {
    display: initial;
    margin-top: 10px;
  }

  .bgi_7 {
    margin-bottom: 0;
  }

/* お問い合わせフォーム */

.contact_image {
  background-image: url(../image/contact_page_ph.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding-top: 80px;
  padding-bottom: 80px;
  margin-top: 80px;
  margin-bottom: 80px;
}

.contact_white {
  background-color: #ffffffd8;
  width: 300px;
  height: auto;
  margin: 70px auto 40px;
  padding: 50px 0 20px;
  border-radius: 70px;
  text-align: center;
  font-weight: 550;
}

.contact_white h2 {
  padding: 0;
  margin: 50px auto 0;
}

.contact_white p {
  margin-top: 30px;
  margin-bottom: 70px;
  padding:0 30px
}

.box h2,
.box p {
  color: #fff;
  text-shadow: 2px 2px 2px #060d4e;
}

.box h2 {
padding-top: 80px;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"]{
  width: 270px;
  line-height: 3rem;
  font-size: 1.5rem;
  text-align: center;
}

input[type="submit"] {
  margin: 10px auto 10px;
  padding: 12px 40px;
  border-radius: 150px;
  color: #fff;
  background-color: #ff3399;
  cursor: pointer;
  border: 1px solid #fff;
  font-size: 1.5rem;
  font-weight: 400;
}

input[type="submit"]:hover{
opacity: 70%;
}

p.underline {
  text-align: center;
  margin: 25px auto 5px;
}

textarea {
width: 90%;
height: 250px;
border-radius: 20px;
}

label {
  font-size: 13px;
}



}
/*===================================
    Media Queries 終わり
============================*/