@charset "UTF-8";

/* ==========================================================================
   simple page Common (共通スタイル)
   ========================================================================== */

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

main {
  flex: 1;
	overflow: visible;
}

.sec {
  position: relative;
}
.sec__inner {
  padding: 40px 0 0;
  width: 1120px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .sec__inner {
    width: 100%;
    padding: 0 4.6875% 0;
  }
}

.sec .c-ttl__1 {
	margin: 0 0 40px;
}
.sec .c-ttl__1 span br.sp {
	display: none;
}
@media screen and (max-width: 768px) {
	.sec .c-ttl__1 span br.sp {
		display: block;
	}
	.sec .c-ttl__1 span {
		width: 100%;
        display: inline-block;
	}
	.c-ttl__1 span:before{
		right: 10px;
	}
	.c-ttl__1 span:after {
		left: 10px;
	}
}

.sec .c-ttl__3 + .c-ttl__2 {
  margin: 50px 0 0;
}

.sec .c-ttl__3{
  margin: 80px 0 30px;
}
@media screen and (max-width: 768px) {
  .sec .c-ttl__3{
    margin: 72px 0 28px;
  }
}

.sec .txt3 {
    font-size: 16px;
    line-height: 1.5;
    margin: 0;
	text-align: center;
}



.sec .c-ttl__2 + .txt1 {
  margin: 20px 0 0;
}
.sec .txt1 + .txt1 {
  margin: 10px 0 0;
}
@media screen and (max-width: 768px) {
  .sec .txt1 + .txt1 {
    margin: 0;
  }
}
.sec .c-ttl__2 + .txt1 em {
	font-style: normal;
	font-weight: bold;
}
.sec .link {
  width: 100%;
  height: 100%;
  font-size: 16px;
  font-weight: 600;
  color: #043D78;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.sec .bnr {
  margin: 30px 0 80px;
  display: block;
  padding: 24px;
  background: #F2F8F9;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}
@media screen and (max-width: 768px) {
  .sec .bnr {
    display: none;
    padding: 24px 0 24px 24px;
  }
}
.sec .bnr:hover {
  background: var(--Green---100, #CAE2E4);
}
.sec .bnr span {
  display: block;
}
.sec .bnr__txtwrap {
  display: block;
  padding: 0 0 0 84px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec .bnr__txtwrap {
    padding: 0 60px 0 0;
  }
}
.sec .bnr__txtwrap:before {
  content: url(../../img/common/tour.svg);
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .sec .bnr__txtwrap:before {
    display: none;
  }
}
.sec .bnr__txtwrap:after {
  content: "";
  position: absolute;
  top: 45%;
  right: 24px;
  width: 15px;
  height: 15px;
  border-top: 3px solid #00727E;
  border-right: 3px solid #00727E;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}
@media screen and (max-width: 768px) {
  .sec .bnr__txtwrap:after {
    right: 35px;
  }
}
.sec .bnr__txt1 {
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .sec .bnr__txt1 {
    font-size: 16px;
  }
}
.sec .bnr__txt2 {
  margin: 5px 0 0;
  font-size: 14px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .sec .bnr__txt2 {
    line-height: 1.5;
    font-size: 12px;
  }
}
.sec .txt1 {
  font-size: 16px;
  line-height: 1.5;
  margin: 30px 0 0;
}
@media screen and (max-width: 768px) {
  .sec .txt1 {
    font-size: 14px;
    margin: 20px 0 0;
  }
}
.sec .txt1 + .c-ttl__2 {
  margin: 50px 0 0;
}
@media screen and (max-width: 768px) {
  .sec .txt1 + .c-ttl__2 {
    margin: 28px 0 0;
  }
}
.sec .normal {
  margin: 20px 0 50px;
}
.sec .normal li {
  font-size: 16px;
  line-height: 1.5;
  position: relative;
  padding: 0 0 0 15px;
}
.sec .normal li:before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #222;
  position: absolute;
  top: 10px;
  left: 4px;
}
.sec .flow {
  margin: 40px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 50px;
}
.sec .flow__item {
  width: 240px;
}
.sec .flow__item__imgbox {
  width: 100%;
}
.sec .flow__item__imgbox img {
  width: 100%;
}
.sec .flow__item__txtbox {
  padding: 15px 0 0;
}
.sec .flow__txt1 {
  font-size: 14px;
  color: #678AAE;
  font-weight: 700;
}
.sec .flow__txt2 {
  margin: 10px 0 0;
  font-size: 20px;
  color: #043D78;
  font-weight: 700;
}
.sec .flow__txt3 {
  font-size: 14px;
  line-height: 1.5;
  border-bottom: 1px dashed #222;
  padding: 10px 0 10px;
}
.sec .flow .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 10px 0 0;
  gap: 0 16px;
}
.sec .flow .row__ttl {
  font-size: 14px;
  width: 60px;
}
.sec .flow .row__txt {
  font-size: 14px;
}
.sec .lists2 {
  margin: 20px 0 50px;
}
.sec .lists2__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 32px;
}
.sec .lists2__list + .lists2__list {
  margin: 10px 0 0;
}
.sec .lists2__list .title {
  font-size: 24px;
  color: #366393;
}
.sec .lists2__list .desc {
  font-size: 18px;
  line-height: 1.5;
}
.sec .popupbox + .popupbox {
  margin: 50px 0 0;
}
.sec .popupbox__ttl {
  font-size: 24px;
  color: #366393;
  font-weight: 700;
}
.sec .popupbox__txt {
  margin: 20px 0 0;
  line-height: 1.5;
  font-size: 16px;
}
.sec .popupbox__list {
  margin: 10px 0 0;
}
.sec .popupbox__list {
  position: relative;
  padding: 0 0 0 15px;
  font-size: 16px;
  line-height: 1.5;
}
.sec .popupbox__list:before {
  width: 4px;
  height: 4px;
  background: #222;
  position: absolute;
  top: 9px;
  left: 5px;
  border-radius: 50%;
  content: "";
}
.sec .popupbox__imgbox {
  width: 500px;
  padding: 48px;
  position: relative;
}
.sec .popupbox__imgbox a {
  display: block;
}
.sec .popupbox__imgbox a:hover {
  opacity: 1;
}
.sec .popupbox__imgbox:before {
  content: url(../../img/common/zoom.svg);
  bottom: 45px;
  right: 48px;
  position: absolute;
  pointer-events: none;
}
.sec .popupbox__imgbox._another {
  width: 580px;
}
.sec .popupbox__imgbox._another2 {
  padding: 0;
}
.sec .popupbox__imgbox._another2:before {
  display: none;
}
.sec .popupbox__imgbox img {
  width: 100%;
}
.sec .popupbox__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 48px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.sec .popupbox__flex._start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.sec .popupbox__flex._another {
  margin: 24px 0 50px;
}
.sec .popupbox__txtbox .txt2 {
  font-size: 24px;
  font-weight: 700;
}
.sec .popupbox__txtbox .txt3 {
  font-size: 18px;
  line-height: 1.5;
}
.sec .popupbox__txtbox .txt3.txt3 {
  margin: 20px 0 0;
}
.sec .popupbox__txtbox ul {
  margin: 20px 0 0;
}
.sec .popupbox__txtbox ul li {
  position: relative;
  padding: 0 0 0 15px;
  font-size: 16px;
  line-height: 1.5;
}
.sec .popupbox__txtbox ul li:before {
  width: 4px;
  height: 4px;
  background: #222;
  position: absolute;
  top: 9px;
  left: 5px;
  border-radius: 50%;
  content: "";
}
.sec .txt2 {
  font-size: 24px;
  font-weight: 700;
}
.sec .flexbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 50px;
  margin: 0 0 50px;
}
.sec .flexbox .listflex {
  width: calc(50% - 25px);
  margin: 24px 0 0;
  counter-reset: list-counter; /* カウンターをリセット */
}
.sec .flexbox .listflex._another {
  counter-reset: list-counter 4; /* カウンターをリセット */
}
.sec .flexbox .listflex__list {
  padding: 0 0 0 40px;
  font-size: 18px;
  line-height: 1.5;
  position: relative;
}
.sec .flexbox .listflex__list + .listflex__list {
  margin: 16px 0 0;
}
.sec .flexbox .listflex__list::before {
  content: counter(list-counter); /* カウンターを使用して番号を表示 */
  counter-increment: list-counter; /* カウンターを増加 */
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold;
  color: #333;
  background: #D28146;
  width: 20px;
  height: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  font-family: "Lexend Deca", serif;
  font-size: 12px;
}
.sec .numlists {
  margin: 15px 0 0;
  counter-reset: list-counter;
}
@media screen and (max-width: 768px) {
  .sec .numlists {
    margin: 20px 0 0;
  }
}
.sec .numlists + .c-ttl__2 {
  margin: 50px 0 0;
}
@media screen and (max-width: 768px) {
  .sec .numlists + .c-ttl__2 {
    margin: 28px 0 0;
  }
}
.sec .numlists__item {
  padding: 0 0 0 25px;
  position: relative;
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .sec .numlists__item {
    font-size: 14px;
  }
}
.sec .numlists__item.numlists__item {
  margin: 10px 0 0;
}
@media screen and (max-width: 768px) {
  .sec .numlists__item.numlists__item {
    margin: 8px 0 0;
  }
}
.sec .numlists__item.numlists__item > a {
  color: #043D78;
}
.sec .numlists__item::before {
  content: counter(list-counter) "."; /* カウンターを使用して番号を表示 */
  counter-increment: list-counter; /* カウンターを増加 */
  position: absolute;
  left: 2px;
  top: 0;
  color: #222;
}
.sec .numlists__item ul {
  margin: 10px 0;
  padding: 0 0 0 20px;
  list-style-type: lower-alpha;
}
.sec .numlists__item ul li {
  line-height: 2;
}
.sec .linktxt {
  color: #043D78;
  font-weight: 700;
  margin: 40px 0 70px;
}
.sec .linktxt a {
  font-size: 16px;
  padding: 0 15px 0 0;
  position: relative;
  display: inline-block;
}
.sec .linktxt a:before {
  position: absolute;
  top: 4px;
  right: 0;
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid #043D78;
  border-right: 1px solid #043D78;
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: center center;
  transform-origin: center center;
}
.sec .tablewrap {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 20px 0 50px;
  border: 1px solid #043D78;
}
@media screen and (max-width: 768px) {
  .sec .tablewrap {
    width: 100%;
    overflow: auto;
    margin: 20px 0 20px;
  }
}
@media screen and (max-width: 768px) {
  .sec .tablewrap._pt1 {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (max-width: 748px) {
  .sec .tablewrap._pt1 {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .sec .tablewrap._pt2 {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (max-width: 733px) {
  .sec .tablewrap._pt2 {
    width: 100%;
  }
}
.sec .tablewrap + .c-ttl__3 {
  margin: 50px 0 0;
}
.sec .tablewrap table {
  width: 100%;
  border-collapse: collapse;
}
@media screen and (max-width: 768px) {
  .sec .tablewrap table {
    width: 676px;
  }
}
.sec .tablewrap table._another {
  width: 920px;
}
.sec .tablewrap table._another td {
  width: 200px;
}
.sec .tablewrap table._another td.another {
  width: 520px;
}
.sec .tablewrap table.another2 td {
  width: 200px;
}
.sec .tablewrap table.another2 td.another {
  width: 520px;
}
.sec .tablewrap table.another3 {
  width: 946px;
}
@media screen and (max-width: 768px) {
  .sec .tablewrap table.another3 {
    width: 100%;
    min-width: 400px;
  }
}
.sec .tablewrap table.another3 td {
  padding: 12px;
  width: 200px;
}

.sec .tablewrap table.another3 tbody td {
  font-size: 14px;
  -moz-text-align-last: left;
}
.sec .tablewrap table.another3 tbody td a {
  text-decoration: underline;
}
.sec .tablewrap table.another3 tbody td a:hover {
  text-decoration: none;
}
.sec .tablewrap table td, .sec .tablewrap table th {
  border: 1px solid #d1d1d1; /* 線の太さと色を設定 */
}
.sec .tablewrap table thead tr td, .sec .tablewrap table thead tr th {
  background: #043D78;
  color: #fff;
  font-size: 18px;
  line-height: 1.3;
  padding: 13px;
  text-align: center;
  vertical-align: middle;
}
.sec .tablewrap table thead tr td:first-of-type, .sec .tablewrap table thead tr th:first-of-type {
  border-left: none;
}
.sec .tablewrap table thead tr td:last-of-type, .sec .tablewrap table thead tr th:last-of-type {
  border-right: 1px solid #043D78;
}
.sec .tablewrap table thead tr:first-of-type td {
  border-top: none;
}
.sec .tablewrap table tbody tr td {
  width: 20%;
  padding: 13px;
  font-size: 18px;
  vertical-align: middle;
  text-align: center;
}
@media screen and (max-width: 768px) {
	.sec .tablewrap table tbody tr td {
	  font-size: 14px;
	}
}
.sec .tablewrap table tbody tr td.bg {
  background: #043D78;
  color: #fff;
  padding: 34px 10px;
}
.sec .tablewrap table tbody tr td:first-of-type {
  border-left: none;
}
.sec .tablewrap table tbody tr td:last-of-type {
  border-bottom: none;
  border-right: none;
}
.sec .tablewrap table tbody tr:last-of-type td {
  border-bottom: none;
  border-right: none;
}
.sec .txt4 {
  font-size: 24px;
  font-weight: 700;
  margin: 50px 0;
}
.sec .txt5 {
  font-size: 24px;
  font-weight: 700;
}
.sec .txt5 + .txt1 {
  margin: 15px 0 0;
}
.sec .btnwrap {
  margin: 20px 0 50px;
}
.sec .txt6 {
  font-size: 16px;
  line-height: 1.5;
}
.sec .txt7 {
  margin: 20px 0 0;
  font-size: 20px;
  line-height: 1.5;
}
.sec .txt7 + .txt1 {
  margin: 10px 0 0;
}
@media screen and (max-width: 768px) {
  .sec .txt7 + .txt1 {
    font-size: 16px;
  }
}
.sec .txt8 {
  margin: 20px 0 0;
  font-size: 20px;
  line-height: 1.5;
	font-weight: bold;
}
.sec .txt8 + .txt1 {
  margin: 10px 0 0;
}
@media screen and (max-width: 768px) {
	.sec .txt8 {
		 margin: 20px 0 0;
		  font-size: 16px;
	}
  .sec .txt8 + .txt1 {
    font-size: 13px;
  }
}

.sec .c-ttl__3._another {
  font-size: 20px;
  padding: 10px;
}
.sec .flexcolomun {
  margin: 50px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #F3F3F3;
  padding: 48px;
  gap: 0 48px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .sec .flexcolomun {
    margin: 20px 0 28px;
    padding: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px 0;
  }
}
.sec .flexcolomun__imgbox {
  width: 400px;
}
@media screen and (max-width: 768px) {
  .sec .flexcolomun__imgbox {
    width: 100%;
  }
}
.sec .flexcolomun__imgbox img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .sec .flexcolomun__imgbox-graph {
    border: 1px solid #222;
    border-right: none;
    width: calc(100% + 20px);
    overflow: auto;
    padding: 20px 0 20px 20px;
    background: #fff;
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
  .sec .flexcolomun__imgbox-graph > img {
    width: inherit;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .sec .flexcolomun__imgbox-graph > img {
    width: 440px;
    padding: 0 20px 0 0;
  }
}
.sec .flexcolomun__txtbox {
  width: calc(100% - 448px);
}
@media screen and (max-width: 768px) {
  .sec .flexcolomun__txtbox {
    width: 100%;
  }
}
.sec .flexcolomun__txtbox .txt1 {
  margin: 0;
}
.sec .flexcolomun__txt1 {
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 10px;
}
@media screen and (max-width: 768px) {
  .sec .flexcolomun__txt1 {
    font-size: 16px;
  }
}
.sec .flexcolomun__txt1:not(:first-of-type) {
  margin: 20px 0 10px;
}
.sec .fleximgbox {
  margin: 50px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 80px;
}
@media screen and (max-width: 768px) {
  .sec .fleximgbox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 28px 0;
    gap: 20px;
  }
}
.sec .fleximgbox__txtbox {
  width: 640px;
}
@media screen and (max-width: 768px) {
  .sec .fleximgbox__txtbox {
    width: 100%;
  }
}
.sec .fleximgbox__imgbox {
  width: calc(100% - 720px);
}
@media screen and (max-width: 768px) {
  .sec .fleximgbox__imgbox {
    width: 100%;
  }
}
.sec .fleximgbox__imgbox img {
  width: 100%;
}
.sec .imgbox {
  margin: 50px 0;
  width: 400px;
}
@media screen and (max-width: 768px) {
  .sec .imgbox {
    margin: 20px 0;
    width: 100%;
  }
}
.sec .imgbox img {
  width: 100%;
}
.sec .txt_attention {
  position: absolute;
  bottom: -300px;
  left: 80px;
  z-index: 2;
  font-size: 14px;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .sec .txt_attention {
    font-size: 12px;
    bottom: -200px;
    left: 20px;
  }
}

/* ==========================================================================
   common 追加
   ========================================================================== */
@media screen and (max-width: 768px) {
	main {
		padding: 100px 0 0;
	}
	.l-header {
		height: 90px;
	}
	.l-header .c-btn-close {
		padding: 0 20px 0 0;
		font-size: 16px;
	}
	.l-header__sp__col1 {
		align-items: center;
	}
	.l-header__sp__col1.maintenance {
		justify-content: center;
	}
	.l-header__sp__box1 {
		padding: 24px;
		width: 30%;
	}
	.l-header__sp__box1 img {
		width: 100%;
		height: auto;
	}
}
@media screen and (max-width: 480px) {
	.l-header__sp__box1 {
		padding: 24px;
		width: 40%;
	}
}
.l-header__inner {
	position: relative;
}
.l-header__inner .c-btn-close {
	padding: 0 40px 0 0;
	font-size: 16px;
}
.l-header__logo {
	width: 280px;
}
.l-header__logo.speaking_logo {
	width: 204px;
}
.l-footer__info {
	border-top: 0;
	padding: 0 0 15px;
}

.l-footer__info_txt {
    color: #222;
    margin: 0;
    font-size: 12px;
	text-align: center;
}
.sec .txt3 {
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .sec .txt3 {
    font-size: 14px;
	  text-align: left;
  }
}
h4.material_h4 {
	font-size: 24px;
  color: #366393;
  font-weight: 700;
	margin:48px 0 20px;
}
@media screen and (max-width: 768px) {
  h4.material_h4 {
    font-size: 18px;
	  margin:24px 0 10px;
  }
}
.info_area {
	margin:80px 0;
}
@media screen and (max-width: 768px) {
	.info_area {
		margin:40px 0;
	}
}
.info_area p.txt01 {
	text-align: center;
	color: #043D78;
	font-weight:bold;
	font-size: 20px;
	margin-bottom:40px;
	line-height:1.6;
}
@media screen and (max-width: 768px) {
	.info_area p.txt01 {
		font-size: 14px;
		margin-bottom:20px;
	}
}
.info_area ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: baseline;
}
@media screen and (max-width: 768px) {
	.info_area ul {
		gap:15px 0;
	}
}
.info_area ul li {
	width: 49%;
	border: 2px solid;
	padding: 36px;
	box-sizing: border-box;
	position: relative;
}
@media screen and (max-width: 768px) {
	.info_area ul li {
		width: 100%;
		padding: 18px;
	}
}


.info_area ul li h3 {
	font-size: 24px;
	font-weight: bold;
	margin: 0 0 20px;
	position: relative;
	padding-left:50px;
}
@media screen and (max-width: 768px) {
	.info_area ul li h3 {
		font-size: 18px;
		margin: 0 0 10px;
	}
}
.info_area ul li.personal {
	border-color: #043D78;
}
.info_area ul li.personal h3 {
	color: #043D78;
}
.info_area ul li.personal h3:before {
	position: absolute;
	content: "";
	width: 36px;
	height: 36px;
	background: url(../../img/materials/material_person_icon.svg) no-repeat center/ cover;
	left: 0;
	top: 0;
	bottom:0;
	margin: auto;
}
.info_area ul li.group {
	border-color: #00727E;
}
.info_area ul li.group h3 {
	color: #00727E;
}
.info_area ul li.group h3:before {
	position: absolute;
	content: "";
	width: 36px;
	height: 36px;
	background: url(../../img/materials/material_group_icon.svg) no-repeat center/ cover;
	left: 0;
	top: 0;
	bottom:0;
	margin: auto;
}
.info_area ul li p {
	font-size: 16px;
	color: #4e4e4e;
	line-height: 1.6;
	margin-bottom: 0px;
}
@media screen and (max-width: 768px) {
	.info_area ul li p {
		font-size: 13px;
		margin-bottom: 10px;
	}
}
.info_area ul li p a {
	color:#043D78;
	text-decoration: underline;
}
.info_area ul li p a:hover {
	text-decoration:none;
}
.info_area ul.list {
	display: block;
	list-style-type: disc;
	padding: 0 0 0 20px;
}
.info_area ul.list li {
	font-size: 16px;
	color: #4e4e4e;
	line-height: 1.6;
	width: auto;
	border: none;
	padding: 0;
}
@media screen and (max-width: 768px) {
	.info_area ul.list li {
		font-size: 13px;
	}
}

.info_area ul.list li a {
	color:#043D78;
	text-decoration: underline;
}
.info_area ul.list li a:hover {
	text-decoration:none;
}
.info_area ul li .box {
	margin: 20px 0;
	background:#F2F5F8;
	padding: 32px;
}
@media screen and (max-width: 768px) {
	.info_area ul li .box {
		margin: 15px 0;
		padding: 20px;
	}
}
.info_area ul li .box h4 {
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 15px;
}
@media screen and (max-width: 768px) {
	.info_area ul li .box h4 {
		font-size: 16px;
	}
}
.info_area ul li .box p {
	font-size: 14px;
	line-height: 1.6;
}
@media screen and (max-width: 768px) {
	.info_area ul li .box p {
		font-size: 13px;
	}
}
.info_area ul li .btn {
	width: 250px;
	margin: 0 0 10px;
}
@media screen and (max-width: 768px) {
	.info_area ul li .btn {
		width: 75%;
		margin: 0 auto;
	}
}
.info_area ul li .btn a {
	width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
	padding: 15px 0;
}
@media screen and (max-width: 768px) {
	.info_area ul li .btn a {
		padding: 10px 12px;
	}
}
.info_area ul li .btn.btn01 a {
	background:#043D78;
	color: #fff;
}
.info_area ul li .btn.btn02 a {
	background:#CAE2E4;
	color: #00727E;
}
.info_area ul li .btn.btn03 a {
	background:#00727E;
	color: #fff;
}
.info_area ul li .btn.btn04 a {
	background:#CBD7E3;
	color: #043D78;
}
@media screen and (min-width: 769px) {
  .info_area ul li .btn a:hover {
    background: -webkit-radial-gradient(50% 50%, 59.3% 59.3%, rgba(255, 255, 255, 0.5) 20%, rgba(203, 215, 227, 0.5) 100%), #FFF;
    background: radial-gradient(59.3% 59.3% at 50% 50%, rgba(255, 255, 255, 0.5) 20%, rgba(203, 215, 227, 0.5) 100%), #FFF;
  }
	.info_area ul li .btn.btn02 a:hover {
    background: #00727E;
  }
	.info_area ul li .btn.btn03 a:hover {
		background: #CAE2E4;
	  }
	.info_area ul li .btn.btn04 a:hover {
    background: #043D78;
  }
  .info_area ul li .btn a:hover > span {
    font-weight: bold;
  }
	.info_area ul li .btn.btn01 a:hover > span {
		color: #043D78;
	}
  .info_area ul li .btn.btn01 a:hover > span:before {
    border-color: #043D78;
  }
	.info_area ul li .btn.btn02 a:hover > span {
		color: #CAE2E4;
	}
  .info_area ul li .btn.btn02 a:hover > span:before {
    border-color: #CAE2E4;
  }
	.info_area ul li .btn.btn03 a:hover > span {
		color: #00727E;
	}
  .info_area ul li .btn.btn03 a:hover > span:before {
    border-color: #00727E;
  }
	.info_area ul li .btn.btn04 a:hover > span {
		color: #fff;
	}
  .info_area ul li .btn.btn04 a:hover > span:before {
    border-color: #fff;
  }
}
.info_area ul li .btn a > span {
  font-size: 16px;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding: 0 15px 0 0;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
	text-align: center;
	line-height: 1.4;
}
@media screen and (max-width: 768px) {
	.info_area ul li .btn a > span {
	  font-size: 14px;
	}
}
.info_area ul li .btn a > span:before {
  content: "";
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  right: -10px;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.info_area ul li .btn.btn02 a > span:before {
  border-bottom: 2px solid #00727E;
  border-right: 2px solid #00727E;
}
.info_area ul li .btn.btn04 a > span:before {
  border-bottom: 2px solid #043D78;
  border-right: 2px solid #043D78;
}
.info_area ul li .btn a > span > span {
  font-weight: 500;
}

/* ==========================================================================
   support
   ========================================================================== */

/* ========== Section Card ========== */
.section-card {
 background: #fff;
 border: 2px solid #043D78;
 margin-bottom: 12px;
 overflow: hidden;
}
 
.section-card__inner {
  padding: 30px;
}
@media screen and (max-width: 768px) {
	.section-card__inner {
	  padding: 20px;
	}
}
 
/* ========== Section title ========== */
.section-card h3.title {
	position: relative;
	font-size: 20px;
	font-weight: 700;
	padding: 0 0 0 25px;
	margin: 0 0 20px;
}
.section-card h3.title br {
	display:none;
}
@media screen and (max-width: 768px) {
	.section-card h3.title br {
		display:inline;
	}
}
.section-card h3.title:before {
	content: "";
	background: url(../../img/common/ico-ttl.svg);
	background-size: cover;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 18px;
	height: 18px;
}
@media screen and (max-width: 768px) {
	.section-card h3.title:before {
		top: 10px;
	}
}
 
    /* ========== FAQ Section ========== */
    .faq-section {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      flex-wrap: wrap;
    }
 
    .faq-section__text {
      flex: 1;
      min-width: 280px;
    }
 
    .faq-section__text p {
      font-size: 16px;
      line-height: 1.8;
    }
@media screen and (max-width: 768px) {
	.faq-section__text p {
      line-height: 1.6;
    }
}
 
    .faq-section__text p::before {
      content: "•";
      margin-right: 6px;
      color: var(--color-text-light);
    }
 
    .btn-faq {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 20px 38px 20px 28px;
      background: #CBD7E3;
      color: #043D78;
      font-size: 16px;
      font-weight: 600;
      text-decoration: none;
      white-space: nowrap;
      cursor: pointer;
		position:relative;
		-webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    }
@media screen and (max-width: 768px) {
	    .btn-faq {
		  display: block;
			width:80%;
			margin:0 auto;
			font-weight:bold;
		}
}
 
    .btn-faq:hover {
      background: #043D78;
      color: #fff;
    }
.btn-faq:before {
    content: "";
    width: 8px;
    height: 8px;
    border-bottom: 2px solid #043D78;
    border-right: 2px solid #043D78;
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
.btn-faq:hover:before {
	border-bottom: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}
    .btn-faq .arrow {
      font-size: 12px;
      color: var(--color-accent);
    }
 
    /* ========== Contact Section ========== */
    .contact-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
      margin-top: 4px;
    }
 
@media screen and (max-width: 768px) {
	    .contact-grid {
		  grid-template-columns: 1fr;
		}
}
    .contact-box {
      background: #F2F5F8;
      padding: 24px 28px;
    }
@media screen and (max-width: 768px) {
	.contact-box {
		text-align:center;
		padding: 24px 0;
	}
}
    .contact-box__label {
      font-size: 18px;
      font-weight: 700;
      margin-bottom: 14px;
    }
@media screen and (max-width: 768px) {
	.contact-box__label {
		text-align:center;
	}	
}
    .contact-box__row {
      display: flex;
      align-items: center;
      gap: 16px;
      flex-wrap: wrap;
    }
@media screen and (max-width: 768px) {
    .contact-box__row {
      justify-content: center;
    }	
}
 
    .btn-form {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 20px 35px 20px 25px;
      background: #043D78;
      color: #fff;
      border: none;
      font-size: 16px;
      font-weight: 600;
      text-decoration: none;
      cursor: pointer;
      transition: background 0.2s;
		position:relative;
    }
@media screen and (max-width: 768px) {
	.btn-form {
		margin: 0 auto;
	}
}
.btn-form:before {
    content: "";
    width: 8px;
    height: 8px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
    .btn-form:hover {
      background: -webkit-radial-gradient(50% 50%, 59.3% 59.3%, rgba(255, 255, 255, 0.5) 20%, rgba(203, 215, 227, 0.5) 100%), #FFF;
    background: radial-gradient(59.3% 59.3% at 50% 50%, rgba(255, 255, 255, 0.5) 20%, rgba(203, 215, 227, 0.5) 100%), #FFF;
		color:#043D78;
    }
.btn-form:hover:before {
	border-bottom: 2px solid #043D78;
    border-right: 2px solid #043D78;
}
 
    .contact-box__note {
      font-size: 16px;
    }
    .contact-box__phone {
      font-size: 28px;
      font-weight: 700;
      color: #043D78;
      letter-spacing: 0.02em;
    }
 
    .contact-box__phone-note {
      font-size: 16px;
      margin-left: 4px;
    }
 
    /* ========== Business Hours ========== */
    .hours-section {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      flex-wrap: wrap;
    }
.hours-section h3.title {
	margin:0;
}
 
    .hours-list {
      list-style: disc;
      padding-left: 20px;
      font-size: 16px;
      line-height: 2;
    }
@media screen and (max-width: 768px) {
.hours-list {
      line-height: 1.6;
    }	
}

/* ==========================================================================
   maintenance
   ========================================================================== */

#maintenance {
	padding: 0px 0 0;
}
.maintenance_header {
	padding:0;
	position: relative;
}
.maintenance_header .l-header__inner {
	justify-content: center;
}

#maintenance .c-ttl__1 {
	font-size: 28px;
	font-weight: bold;
	margin: 0 0 15px;
}
@media screen and (max-width: 768px) {
	#maintenance .c-ttl__1 {
		font-size: 22px;
		margin: 0 0 10px;
	}
}

.maintenance_icon {
	width: 186px;
	max-width: 80%;
	margin: 0 auto 20px;
}
@media screen and (max-width: 768px) {
	.maintenance_icon {
		margin: 0 auto 10px;
		width: 40%;
	}
}
.maintenance_icon img {
	width: 100%;
	height: auto;
}
.maintenance-card{
	margin: 0 0 30px;
}
.maintenance-card p {
	font-size: 16px;
	text-align: center;
	color: #222;
	margin: 0;
}
@media screen and (max-width: 768px) {
	.maintenance-card p {
		font-size: 13px;
		margin: 0 0 10px;
		line-height: 1.4;
	}	
}
.maintenance-card-box {
	width: 400px;
	margin: 20px auto;
	background: #F2F5F8;
	padding: 20px 40px;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.maintenance-card-box {
		width: 95%;
		margin: 10px auto;
		padding: 20px;
	}
}
.maintenance-card-box p {
	font-weight: bold;
	font-size:18px;
	margin: 0;
	line-height: 1.8;
}
@media screen and (max-width: 768px) {
	.maintenance-card-box p {
		font-size:16px;
	}
}
.maintenance-list {
	width: 430px;
	margin: 0 auto;
	list-style: none;
}
@media screen and (max-width: 768px) {
	.maintenance-list {
		width: 95%;
	}
}
.maintenance-list li {
	font-size: 16px;
	color: #4E4E4E;
	text-align: left;
	line-height:1.8;
}
@media screen and (max-width: 768px) {
	.maintenance-list li {
		font-size: 13px;
	}
}

.maintenance-link{
	text-align: center;
	margin: 15px 0 0;
}
.maintenance-link a {
	font-size: 16px;
	font-weight: bold;
	color: #043D78;
	text-decoration:underline;
	position: relative;
}
.maintenance-link a:hover {
	text-decoration:none;
}

.maintenance-link a:before {
    content: "";
    width: 8px;
    height: 8px;
    border-bottom: 2px solid #043D78;
    border-right: 2px solid #043D78;
    position: absolute;
    top: 50%;
    left: -20px;
    -webkit-transform: translate(0, -50%) rotate(-45deg);
    transform: translate(0, -50%) rotate(-45deg);
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

/* ==========================================================================
   speaking
   ========================================================================== */
    .speaking-card {
      border: 2px solid #00727E;
      border-radius: 2px;
      padding: 30px;
      text-align: center;
		width:860px;
		max-width:90%;
		margin: 0 auto;
    }
 
    .btn-speaking {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 16px 40px;
      background: #00727E;
      color: #fff;
      border: none;
      border-radius: 2px;
      font-size: 18px;
      font-weight: 700;
      text-decoration: none;
      cursor: pointer;
      transition: background 0.2s;
      margin-bottom: 32px;
	position: relative;
    }
.btn-speaking:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: center center;
    transform-origin: center center;
    top: 0;
	bottom: 0;
	margin: auto;
    right: 15px;
}

.btn-speaking:hover:before {
	border-top: 2px solid #00727E;
    border-right: 2px solid #00727E;
}
 
.btn-speaking:hover {
	opacity: 1;
    background: radial-gradient(circle, #FFFFFF 0%, #00727E 600%);
	color: #00727E;
}
 
.speaking-card__desc {
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 16px;
}
 
    .speaking-card__note {
      font-size: 15px;
      font-weight: 700;
		color: #dc143c;
    }





/*# sourceMappingURL=p-materials.css.map */
