@charset "utf-8";

/*ここでは
	aboutページ
	などを記述します
*/

/*--------------JACについて--------------*/
.page_about {
}

.page_about .flex_double {
}
.page_about .flex_double .dl_list2 {
  flex-basis: 44%;
}
.page_about .flex_double .dl_list2:last-child {
  flex-basis: 52%;
  margin-left: auto;
}

.logo_area {
}

.logo_area .logo_img {
  text-align: center;
}
.logo_area .logo_img img {
  width: 50%;
}
.logo_area .logo_img h3 {
  display: block;
  color: #363b43;
  font-size: 2em;
  margin-top: 2.5em;
  margin-bottom: 2.6em;
}
.logo_area .flex_double > div {
  flex-basis: 46.5%;
}
.logo_area .flex_double > div p {
  font-size: 1.13em;
}
.logo_area .flex_double > div ul {
  font-size: 1.05em;
  display: block;
  padding: 1em;
}
.logo_area .flex_double > div ul li {
  position: relative;
  padding: 0.5em 0;
  padding-left: 3em;
}
.logo_area .flex_double > div ul li::before {
  position: absolute;
  content: "●";
  left: 0;
  top: 0;
  font-size: 2em;
  margin-right: 10px;
  line-height: 1;
}

.logo_area li.j::before {
  color: #82cf00;
}
.logo_area li.a::before {
  color: #00c0ff;
}
.logo_area li.c::before {
  color: #ff8f00;
}

ul.access {
  padding: 0 1.5em;
  font-size: 1.1em;
  margin-bottom: 2em;
}
ul.access li {
  padding-left: 2.3em;
  margin-bottom: 15px;
}
ul.access li.build {
  background: url(../../../shared/img/icon/icon_building.png) no-repeat left 2px / auto 1.3em;
}
ul.access li.train {
  background: url(../../../shared/img/icon/icon_train.png) no-repeat left top / auto 1.3em;
}
ul.access li.tel {
  background: url(../../../shared/img/icon/icon_tel.png) no-repeat left top / auto 1.3em;
}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (max-width: 680px) {
  .logo_area .logo_img img {
    width: 70%;
  }
  .logo_area .logo_img h3 {
    font-size: 1.6em;
    margin-top: 1.7em;
    margin-bottom: 1.5em;
  }

  .logo_area .flex_double > div ul {
    font-size: 1em;
    padding: 0.5em 0;
  }

  .logo_area .flex_double > div ul li {
    padding: 0 0;
    padding-left: 2.3em;
    margin-bottom: 0.5em;
  }
  .logo_area .flex_double > div ul li::before {
    font-size: 1.5em;
  }

  ul.access {
    padding: 0 0;
    font-size: 1em;
    margin-bottom: 2.5em;
  }

  .page_about table.res_gray td {
    border: none;
  }
}
@media screen and (max-width: 414px) {
  .logo_area .logo_img h3 {
    font-size: 1.4em;
    margin-top: 1.5em;
  }
  .logo_area .flex_double > div p {
    font-size: 1em;
  }
}
@media screen and (max-width: 375px) {
  .logo_area .logo_img img {
    width: 65%;
  }
  .logo_area .logo_img h3 {
    font-size: 1.2em;
  }
}

/*--------------事業計画・決算--------------*/
.page_report {
}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (max-width: 680px) {
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {
}

/*--------------賛助会員--------------*/
.page_supporting_member {
}
.page_supporting_member .h3_title {
  margin-bottom: 0.25em;
}

.bggray {
  display: inline-block;
  padding: 0.3em 1em 0.3em 0.3em;
  background: #f2f2f2;
}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (max-width: 680px) {
  .page_supporting_member .page_box {
    /*padding-left: 0;
		padding-right: 0;*/
  }

  .page_supporting_member .bggray {
    display: block;
  }
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {
}

/*--------------正会員・賛助会員一覧--------------*/
.page_regular_member {
}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 990px) {
}
@media screen and (min-width: 681px) {
  .box_contents {
    padding-top: 2em;
    padding-left: 2em;
    padding-right: 2em;
  }
  .box_contents_supporting {
    padding-left: 2em;
    padding-right: 2em;
  }
}
@media screen and (max-width: 680px) {
  .box_contents {
    padding-top: 2em;
  }
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {
}

h3.box_contents_title {
  font-size: 1.55em;
  font-weight: 500;
  line-height: 1.3;
  padding-bottom: 10px;
}

@media screen and (min-width: 828px) {
  .contents_flex {
    display: flex;
    gap: 3%;
  }

  .box_contents_left,
  .box_contents_right {
    width: 50%;
  }

  li.contents {
    flex-basis: 100%;
  }
}

@media screen and (max-width: 821px) {
  a.arrow_b.pdf_back {
    left: 5px;
  }
}

.box_contents_left,
.box_contents_right {
  padding-bottom: 2em;
}

h2.member_title {
  border-left: 9px solid #64d9ff;
  font-size: 1.8em;
  padding-left: 0.9em;
  letter-spacing: 1px;
}

/*--------------JACの事業活動のご紹介--------------*/
.page_activities {
}

.about_slide {
  /*高さを合わせるためだけのdiv*/
  /*margin: 10px 0 2em;*/
  height: auto !important;
  position: relative;
  width: calc(100% + 75px + 75px);
  overflow: hidden;
  /*left: 0;*/
  left: -75px;
}

.about_slide_box {
  /*position: absolute;*/
  position: relative;
  /*width: 1140px;*/
  overflow: hidden;
  /*left: 0;*/
}
.about_slide .case_list {
  padding: 20px 50px;
  height: auto !important;
}
.about_slide .slick-list {
  overflow: inherit !important;
  /*padding: 20px 50px;*/
}

.about_slide .slick-prev {
  left: 7%;
}
.about_slide .slick-next {
  right: 7%;
}

.about_slide .case_list li {
  margin: 0 15px;
}
.about_slide .case_list li a {
  padding: 7% 20px 9%;
}

.youtube_link-lists {
  padding-left: 0;
  margin-left: -0.3em;
}
.youtube_link-lists li {
  padding-left: 20px !important;
  position: relative;
  margin-top: 0.3em;
  margin-bottom: 0 !important;
  text-align: left;
  font-size: 14px;
  text-indent: 0 !important;
}
.youtube_link-lists li:before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  background: url("../../../shared/img/icon/b_arrow_r.svg") no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 0.2em;
}

@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1200px) {
  .about_slide_box {
    width: 100%;
  }
}
@media screen and (max-width: 990px) {
  .about_slide {
    width: calc(100% + 50px + 50px);
    left: -50px;
  }
}
@media screen and (max-width: 680px) {
  .about_slide {
    width: 100vw;
    left: -1.5em;
  }
  .about_slide .case_list {
    padding: 20px 10px;
  }

  table.res_gray2 td {
    border: none;
  }
}
@media screen and (max-width: 414px) {
}
@media screen and (max-width: 375px) {
}


.about_slide .slick-slide {
  position: relative;
}
.about_slide .new-mark {
  position: absolute;
  width: 40px;
  top: 0;
  left: 0px;
}

/* 翻訳時調整 */
.translated-ltr .page_box .visionista_logo-subtitle {
  white-space: normal;
}
.dl_box dt {
  width: 8em;
}
@media screen and (max-width: 767px) {
  .page_box .visionista_logo {
    align-items: flex-start;
  }
  .dl_box dt {
    width: auto;
  }
}

.access_index {
  margin-bottom: 24px;
}

.access_index_inner {
  display: flex;
  gap: 0 32px;
  justify-content: space-between;
  @media screen and (max-width: 700px) {
    flex-direction: column;
  }
}

.access_index_article_notes {
  position: relative;
  font-size: 16px;
  padding-left: 16px;
  margin-left: 24px;
  margin-bottom: 0;
  margin-top: 10px;
  @media screen and (max-width: 700px) {
    margin-left: 0;
    font-size: 14px;
    margin-bottom: 5px;
    line-height: 1.5em;
  }
}
.access_index_article_notes + .access_index_article_notes {
  margin-top: 0;
}

.access_index_article_notes::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}

.access_index_inner ul.access {
  margin-top: 40px;
  padding-right: 0;
  @media screen and (max-width: 768px) {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
.access_index_inner ul.access li {
  padding-left: 1.6em;
  @media screen and (max-width: 700px) {
  }
}
.access_index_img {
    width: 37.37%;
    @media screen and (max-width: 700px) {
    width: 100%;
  }
}
.access_index_img_up {
  display: flex;
  gap: 0 6px;
  @media screen and (max-width: 700px) {
    margin-top: 12px;
  }
}

.access_index_img_up img {
  min-width: 0;
  flex: 1;
}

.access_index_img_down {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-top: 10px;
  gap: 10px 0;
  @media screen and (max-width: 700px) {
    gap: 14px 0;
    margin-top: 20px;
  }
}
.access_index_img_down a {
  text-decoration: none;
  font-size: 16px;
  @media screen and (max-width: 768px) {
    font-size: 14px;
  }
}

.access_index_img_down a.pdf {
  margin-left: 0;
  line-height: 1.1;
}

.page_link_block.page_link_block--3cl ul {
  gap: 18px 9px;
  justify-content: start;
}

.page_link_block.page_link_block--3cl ul li {
  flex-basis: calc((100% - 18px) / 3);
  margin-bottom: 0;
}

.page_link_block.page_link_block--3cl ul li:nth-child(-n+3) .title {
  font-size: 19px;
}

.page_link_block.page_link_block--3cl ul li span {
  display: block;
}

.page_link_block.page_link_block--3cl ul li a {
  padding: 20px 16px 60px;
  /* height: auto !important; */
}
.page_link_block.page_link_block--3cl ul li:nth-child(-n + 3) a {
  background-image: url(/files/activities_09.png);
  height: calc(100% - 80px) !important;
}
.page_link_block.page_link_block--3cl ul li:nth-child(-n + 3) a:hover {
  background-image: url(/files/activities_10.png);
}
.page_link_block.page_link_block--3cl ul li:nth-child(n + 4) a {
  background-image: url(/shared/img/parts/li_b.png);
  background-position: 20px center;
  padding: 10px 13px 10px 70px;
  height: calc(100% - 20px) !important;
}
.page_link_block.page_link_block--3cl ul li:nth-child(n + 4) a:hover {
  background-image: url(/shared/img/parts/li_o.png);
}
.page_link_block.page_link_block--3cl ul li:nth-child(n + 4) .title {
  font-size: 16px;
  text-align: left;
  margin-bottom: 0;
}

.page_link_block.page_link_block--4cl ul {
  gap: 12px;
  justify-content: start;
}
.page_link_block.page_link_block--4cl ul li {
  flex-basis: calc((100% - (12px * 3 )) / 4);
  margin-bottom: 0;
  box-sizing: border-box;
}
.page_link_block.page_link_block--4cl {
  width: 100%;
  clear: left;
}

.ldisc {
}
.ldisc li {
  position: relative;
  padding-left: 20px;
  font-size: 16px;
  @media screen and (max-width: 768px) {
    font-size: 15px;
  }
}
.ldisc li:nth-child(n + 2) {
  margin-top: 6px;
}
.ldisc li::before {
  content: "●";
  position: absolute;
  left: 0;
  top: 0;
}
.exam_link_list li {
  margin-top: 0.7em;
}
.exam_link_list a {
  display: inline-block;
  font-size: 1.1em;
}
@media screen and (max-width: 767px) {
  .exam_link_list a {
    line-height: 1.5;
    font-size: 1.05em;
  }
}

.wldmap {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px 27px;
}

.wldmap_text li {
  position: relative;
  padding-left: 30px;
}
.wldmap_text li:nth-child(n + 2) {
  margin-top: 14px;
}
.wldmap_text li::before {
  content: "";
  width: 25px;
  height: 25px;
  position: absolute;
  left: 0;
  top: 0;
  background: #ff8f00;
}
.wldmap_text li:nth-child(2)::before {
  background: #82cf00;
}

.wldmap-btn {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 60px 145px;
  margin-top: 20px;

}
@media screen and (max-width: 768px) {
	.wldmap-btn {
		margin-top: 0;
		gap: 30px 145px;
	}
}
a.wldmap-btn__item {
  min-width: inherit;
  width: 235px;
  margin: inherit !important;
}

a.wldmap-btn__item span {
  color: #fffa33;
}

@media screen and (max-width: 768px) {
	a.wldmap-btn__item:nth-child(2)::before{
		content: none;
	}
	.btn_arrow > div:nth-child(2) a.wldmap-btn__item::before{
		content: none;
	}
}

.system-bn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 50px;
  gap: 24px 20px;
}

.system-bn__item img {
  border-radius: 5px;
  box-shadow: 0px 0px 15px -2px rgba(0, 0, 0, 0.3);
  transition: opacity 0.2s ease-out;
}

.system-bn__item:hover img {
  opacity: 0.45;
  -webkit-opacity: 0.45;
  -moz-opacity: 0.45;
}

.cl3_img {
  display: flex;
  align-items: center;
  gap: 20px 14px;
  margin-top: 30px;
  @media screen and (max-width: 768px) {
    flex-direction: column;
  }
}

.cl3_img__item {
  @media screen and (max-width: 768px) {
    max-width: 80%;
  }
}
.cl3_img__item img {
  border-radius: 10px;
}



/*--------------お問合せ・サポート--------------*/
.contact-cont-inner p {
  font-size: 16px;
}
.page_link_block_contact {
  margin-bottom: 1.5em;
}
.page_link_block_contact ul > li {
  display: flex;
  position: relative;
}
.page_link_block_contact ul > li > a {
  width: 100%;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  padding: 5em 0.5em 2em;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  position: relative;
}
.page_link_block_contact ul > li > a:hover {
  border: 4px solid #FF8F00;
  background: #FFFFFF;
}
.page_link_block_contact ul > li > a::before,
.page_link_block_contact ul > li > a::after {
  content: "";
  position: absolute;
  bottom: 10px;
  left: calc(50% - 1.5px);
  width: 3px;
  height: 15px;
  border-radius: 9999px;
  background-color: #00beff;
  transform-origin: 50% calc(100% - 1.5px);
}
.page_link_block_contact ul > li > a::before {
  transform: rotate(47.5deg);
}
.page_link_block_contact ul > li > a::after {
  transform: rotate(-47.5deg);
}
.page_link_block_contact ul > li > a:hover:before,
.page_link_block_contact ul > li > a:hover:after {
  background-color: #FF8F00;
}
.page_link_block_contact ul > li:before {
  content:"";
  display: inline-block;
  width: 70px;
  height: 70px;
  position: absolute;
  left: 50%;
  top: 16px;
  transform: translateX(-50%);
  z-index: 2;
}
.page_link_block_contact ul > li:nth-child(1):before {
  background: url(../img/icon_contact01.svg) no-repeat;
  background-size: contain;
}
.page_link_block_contact ul > li:nth-child(2):before {
  background: url(../img/icon_contact02.svg) no-repeat;
  background-size: contain;
  top: 22px;
}
.page_link_block_contact ul > li:nth-child(3):before {
  background: url(../img/icon_contact03.svg) no-repeat;
  background-size: contain;
}
.page_link_block_contact ul > li:nth-child(4):before {
  background: url(../img/icon_contact04.svg) no-repeat;
  background-size: contain;
  top: 22px;
}
.contact-list-bg {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.contact-list-bg > li {
  list-style: none;
  width: calc((100% - 10px) / 2);
}
.contact-list-bg > li > a {
  display: flex;
  font-size: 16px;
  line-height: 1.5;
  padding: 1.1em 1.3em 1.1em 40px;
  background: #eefdff;
}
.contact-list-bg > li > a:before {
  top: calc(1.1em + 4px);
  left: 14px;
}
.contact-list-after {
  line-height: 1.5 !important;
  margin-top: 30px !important;
  padding-left: 40px !important;
}
.contact-list-after:before {
  left: 14px !important;
  top: 4px !important;
}
.contact-search-area {
  background: #f3f8f9;
  font-size: 16px;
  padding: 1.1em;
}
.contact-search-title {
  font-size: 18px !important;
  margin-bottom: 0.8em;
  padding-left: 30px;
  position: relative;
}
.contact-search-title:before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  background: url(../img/icon_search.svg) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 4px;
}
.contact-search-box form {
  width: 100%;
  display: flex;
  gap: 10px;
}
.contact-search-box .search_box {
  width: calc(100% - 160px - 10px);
  border: 2px solid #b4b4b5;
  border-radius: 5px;
  padding: 0.6em 1em 0.5em;
}
.contact-search-box .search_btn {
  width: 160px;
  background: #00c0ff;
  border-radius: 5px;
  color: #ffffff;
  font-size: 18px;
  padding: 0.8em;
  display: inline-block;
  text-align: center;
  box-sizing: border-box;
}
.contact-search-box input[type="text"]:focus {
    outline: none;
}
.contact-search-box input::placeholder,
.contact-search-box textarea::placeholder{
  color: #b2b2b2;
}
.contact-search-box input:focus::placeholder,
.contact-search-box textarea:focus::placeholder {
    color: transparent;
    transition: .1s;
}
.contact-cont-inner + .h3_title {
  margin-top: 60px;
}
.contact-cont_btn {
  margin-bottom: 0;
}
.contact-cont_btn a.blue_btn {
    min-width: 335px !important;
    width: 335px !important;
    margin: 25px 0 0 !important;
    padding: 1.1em 1.5em !important;
    box-sizing: border-box;
}
@media screen and (max-width: 680px) {
  .contact-cont-inner p {
    font-size: 15px;
  }
  .contact-cont .page_link_block.page_link_block--4cl {
    display: block;
    margin-bottom: 0;
  }
  .contact-cont .page_link_block.page_link_block--4cl ul li {
    flex-basis: 100%;
    margin-bottom: 0;
    box-sizing: border-box;
  }
  .page_link_block_contact ul > li > a {
    font-size: 17px;
    text-align: left;
    padding: 0.8em 2.6em 0.8em 95px;
    min-height: 86px;
    box-sizing: border-box;
    justify-content: flex-start;
  }
  .page_link_block_contact ul > li > a::before,
  .page_link_block_contact ul > li > a::after {
    bottom: calc(50% - 6px);
    left: inherit;
    right: 20px;
    width: 3px;
    height: 13px;
    transform-origin: 50% calc(100% - 1.5px);
  }
  .page_link_block_contact ul > li:before {
    width: 60px;
    height: 60px;
    left: 18px;
    top: 50%;
    transform: translateX(0) translateY(-50%);
  }
  .page_link_block_contact ul > li:nth-child(2):before {
    top: 50%;
    transform: translateX(0) translateY(-50%);
  }
  .page_link_block_contact ul > li:nth-child(4):before {
    top: 50%;
    transform: translateX(0) translateY(-50%);
  }
  .contact-list-bg {
    background: #eefdff;
    padding: 1.5em 1em 1.5em 0;
    border-radius: 6px;
    gap: 25px;
  }
  .contact-list-bg > li {
    width: 100%;
  }
  .contact-list-bg > li > a {
    font-size: 15px;
    padding: 0 0 0 35px;
  }
  .contact-list-bg > li > a:before {
    top: 2px;
    left: 9px;
  }
  .contact-list-after {
    font-size: 15px !important;
    margin-top: 25px !important;
    padding-left: 35px !important;
    margin-bottom: 35px !important;
  }
  .contact-list-after:before {
    left: 9px !important;
    top: 4px !important;
  }

  .contact-search-area {
    width: 100vw;
    margin-left: -1.4em;
    box-sizing: border-box;
    font-size: 15px;
    padding: 1.1em;
  }
  .contact-search-title {
    font-size: 17px !important;
    padding-left: 30px;
  }
  .contact-search-title:before {
    width: 21px;
    height: 21px;
    top: 2px;
  }
  .contact-search-box .search_box {
    width: calc(100% - 73px - 10px);
    padding: 0.5em;
  }
  .contact-search-box .search_btn {
    width: 73px;
    font-size: 16px;
  }
  .contact-cont_btn a.blue_btn {
      min-width: 100% !important;
      width: 100% !important;
      margin: 20px 0 0 !important;
      padding: 1.3em 1.5em !important;
      font-size: 16px;
  }
}

.contact-support-service-title {
  font-size: 22px;
  font-weight: bold;
  padding-left: 96px;
  position: relative;
}
.contact-support-service-title + p {
  padding-left: 96px;
  margin-bottom: 2em;
}
.contact-support-service-title.skill_up {
  color: #006695;
}
.contact-support-service-title.coexistence {
  color: #7e4500;
}
.contact-support-service-title.daily_life {
  color: #1e7600;
}
.contact-support-service-title:before {
  content:"";
  display: inline-block;
  width: 72px;
  height: 72px;
  position: absolute;
  left: 0;
  top: -5px;
}
.contact-support-service-title.skill_up:before {
  background: url(../img/icon_support-service01.svg) no-repeat;
  background-size: contain;
}
.contact-support-service-title.coexistence:before {
  background: url(../img/icon_support-service02.svg) no-repeat;
  background-size: contain;
}
.contact-support-service-title.daily_life:before {
  background: url(../img/icon_support-service03.svg) no-repeat;
  background-size: contain;
}
.contact-support-service {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  font-size: 16px;
}
.contact-support-service > dl {
  width: calc((100% - (15px * 2)) / 3);
}
.contact-support-service > dl {
  border-radius: 6px;
}
.contact-support-service > dl dt {
  font-size: 18px;
  font-weight: bold;
  border-radius: 6px 6px 0 0;
  padding: 0.7em 0.5em 0.7em 36px;
  position: relative;
}
.contact-support-service > dl dt:before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  position: absolute;
  left: 15px;
  top: calc(1em + 2px);
}
.contact-support-service-blue > dl dt {
  background: #c5efff;
}
.contact-support-service-blue > dl {
  background: #edfaff;
}
.contact-support-service-blue > dl dt:before {
  background: #00beff;
}
.contact-support-service-orange > dl dt {
  background: #ffd8a7;
}
.contact-support-service-orange > dl {
  background: #fff3e4;
}
.contact-support-service-orange > dl dt:before {
  background: #ff8d00;
}
.contact-support-service-green > dl dt {
  background: #d4eda9;
}
.contact-support-service-green > dl {
  background: #f2fae5;
}
.contact-support-service-green > dl dt:before {
  background: #80cd00;
}
.contact-support-service > dl dt a,
.contact-support-service-mail a {
  text-decoration: underline;
}
.contact-support-service > dl dt a:hover,
.contact-support-service-mail a:hover {
  text-decoration: none;
}
.contact-support-service > dl dd {
  padding: 1em 1.5em 1em;
}
.contact-support-service > dl dd p {
  margin-bottom: 0;
}
.contact-support-service-tel {
  padding-left: 38px;
  position: relative;
  margin-bottom: 0.5em;
}
.contact-support-service-tel:before {
  content:"";
  display: inline-block;
  width: 26px;
  height: 26px;
  background: url(../../../shared/img/icon/tel.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 4px;
}
.contact-support-service-tel a {
  font-size: 20px;
  font-weight: bold;
  color: #363b43;
  margin-bottom: 0;
}
p.contact-support-service-tel_sub {
  font-size: 14px;
  margin-left: -0.5em;
  margin-top: -0.2em;
}
.contact-support-service-mail {
  padding-left: 38px;
  position: relative;
  margin-bottom: 0.3em;
}
.contact-support-service-mail:before {
  content:"";
  display: inline-block;
  width: 22px;
  height: 18px;
  background: url(../../../shared/img/icon/icon_mail.svg) no-repeat;
  background-size: contain;
  position: absolute;
  left: 2px;
  top: 4px;
}
.contact-support-service a.blue_btn {
  width: 100% !important;
  min-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box;
  font-size: 16px !important;
  padding: 0.85em 1em !important;
  box-shadow: none !important;
}
.contact-support-service:not(:last-child){
  padding-bottom: 40px;
  margin-bottom: 50px;
  border-bottom: 1px solid #c4c4c4;
}
@media (min-width: 751px) {
  .contact-support-service-tel a[href*="tel:"],
  .contact-common-col a[href*="tel:"]{
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    color: #363b43;
  }
}
@media screen and (max-width: 680px) {
  .contact-support-service-title {
    font-size: 20px;
    padding-left: 47px;
    margin-bottom: 1em;
  }
  .contact-support-service-title + p {
    padding-left: 0;
    margin-bottom: 1.5em;
  }
  .contact-support-service-title:before {
    width: 40px;
    height: 40px;
    top: -5px;
  }
  .contact-support-service {
    font-size: 15px;
  }
  .contact-support-service > dl {
    width: 100%;
  }
  .contact-support-service > dl dt {
    font-size: 17px;
    padding: 0.6em 0.5em 0.5em 36px;
  }
  .contact-support-service > dl dt:before {
    top: calc(1em - 1px);
  }
  .contact-support-service > dl dd {
    padding: 0.6em 2.5em 0.8em;
  }
  .contact-support-service-tel a {
    font-size: 18px;
    color: #0093cb;
    text-decoration: underline;
  }
  p.contact-support-service-tel_sub {
    font-size: 13px;
  }
  .contact-support-service:not(:last-child){
    padding-bottom: 0;
    margin-bottom: 60px;
    border-bottom:none;
  }
}

.related-info {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.related-info > .related-info-box {
  width: calc((100% - 15px) / 2);
}
.related-info-box {
  background: #f3f8f9;
  border-radius: 6px;
  padding: 1em 1.2em;
  box-sizing: border-box;
}
.related-info-box:not(:has(.related-info-title))  {
  padding: 1.2em 1.2em;
}
.related-info-title {
  font-size: 20px !important;
  font-weight: bold;
  margin-bottom: 0.3em;
}
.related-info-list {
  display: flex;
  font-size: 16px;
}
.related-info-list dt {
  max-width: 30%;
  min-width: 5em;
}
.related-info-list dd > ul > li {
  display: inline-block;
}
.related-info-list dd > ul > li > a {
  text-decoration: underline;
}
.related-info-list dd > ul > li > a:hover {
  text-decoration: none;
}
@media screen and (max-width: 680px) {
  .related-info > .related-info-box {
    width: 100%;
  }
  .related-info-box {
    padding: 1em 1em;
  }
  .related-info-box:not(:has(.related-info-title))  {
    padding: 1em 1em;
  }
  .related-info-title {
    font-size: 17px !important;
  }
  .related-info-list {
    display: block;
    font-size: 15px;
  }
  .related-info-list dt {
    max-width: 100%;
    min-width: 100%;
    width: 100%;
  }
}

.contact-common {
  background: #eefdff;
  border-radius: 6px;
  margin-top: 60px;
  padding: 2em 2em 1.8em;
}
.contact-common-title {
  font-size: 20px;
  font-weight: bold;
  position: relative;
  padding-left: 25px;
  margin-bottom: 1em;
}
.contact-common-title:before {
  content:"";
  display: inline-block;
  width: 13px;
  height: 13px;
  background: #0096d5;
  border-radius: 50%;
  position: absolute;
  left: 6px;
  top: 0.4em;
}
.contact-common-col {
  display: flex;
}
.contact-common-left {
  margin-right: 2em;
  font-size: 16px;
  width: calc(100% - 335px - 40px);
  min-width: 60%;
}
.contact-common-tel {
  display: flex;
  align-items: flex-end;
  position: relative;
  padding-left: 75px;
}
.contact-common-tel:before {
  content: "";
  display: inline-block;
  width: 62px;
  height: 62px;
  background: url(../img/icon_tell_wbg.svg) no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: -4px;
}
.contact-common-tel > p:first-child {
  margin-bottom: 0;
  font-size: 15px;
  border: 1px solid #363b43;
  padding: 0 0.5em;
}
.contact-common-tel > p:nth-child(2) {
  margin-bottom: 0;
  font-size: 30px;
  line-height: 1;
  font-weight: bold;
  margin-left: 0.5em;
}
.contact-common-tel_sub {
  font-size: 16px;
  padding-left: 75px;
  margin-top: 0.3em;
}
.contact-common-another {
  display: flex;
  margin-bottom: 1em;
}
.contact-common-another dd {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
}
.contact-common-notes {
  font-size: 15px;
}
.contact-common-col .contact-cont_btn a.blue_btn {
  min-width: auto !important;
  max-width: 335px !important;
}
@media screen and (max-width: 1200px) {
  .contact-common-col .contact-cont_btn a.blue_btn {
    max-width: 100% !important;
    width: auto !important;
  }
}
@media screen and (max-width: 680px) {
  .contact-common {
    padding: 1.5em 1em 2em;
  }
  .contact-common-title {
    font-size: 18px;
  }
  .contact-common-col {
    display: block;
  }
  .contact-common-left {
    margin-right: 0;
    font-size: 15px;
    width: 100%;
    min-width:100%;
  }
  .contact-common-tel {
    display: block;
  }
  .contact-common-tel:before {
    top: 0;
  }
  .contact-common-tel > p:first-child {
    font-size: 14px;
    display: inline-block;
  }
  .contact-common-tel > p:nth-child(2) {
    font-size: 28px;
    margin-left: 0;
    margin-top: 0.2em;
  }
  .contact-common-left .tel-link {
    text-decoration: underline;
  }
  .contact-common-tel_sub {
    font-size: 14px;
    padding-left: 0;
    margin-top: 1em;
    margin-bottom: 1.5em;
  }
  .contact-common-another {
    display: block;
  }
  .contact-common-col .contact-cont_btn a.blue_btn {
    min-width: 100% !important;
    max-width: 100% !important;
  }
}

.contact-cont-inner .fits {
    margin: 25px auto 35px !important;
}
.supported-languages-title {
  font-size: 18px !important;
  position: relative;
  padding-left: 22px;
  margin-bottom: 0.5em;
}
.supported-languages-title:before {
  content:"";
  display: inline-block;
  width: 14px;
  height: 14px;
  background: #64d7ff;
  position: absolute;
  left: 0;
  top: 8px;
}
.supported-languages-list {
  display: flex;
  flex-wrap: wrap;
  font-size: 16px;
  border-bottom: 1px solid #c4c4c4;
}
.supported-languages-list dt {
  background: #f3f8f9;
  width: 19%;
  padding: 1.2em 0.8em;
  box-sizing: border-box;
  border-top: 1px solid #c4c4c4;
}
.supported-languages-list dd {
  width: 81%;
  padding: 1.2em 0.8em;
  box-sizing: border-box;
  border-top: 1px solid #c4c4c4;
}
.supported-languages-list dt .tel,
.supported-languages-list dt .mail-fax {
  padding-left: 46px;
  display: inline-block;
  position: relative;
}
.supported-languages-list dt .tel:before,
.supported-languages-list dt .mail-fax:before,
.supported-languages-list dt .mail-fax:after {
  content:"";
  display: inline-block;
  position: absolute;
  left: 5px;
}
.supported-languages-list dt .tel:before {
  width: 31px;
  height: 29px;
  background: url(../img/icon_tel_gray.svg) no-repeat;
  background-size: contain;
  top: -5px;
}
.supported-languages-list dt .mail-fax:before {
  width: 25px;
  height: 17px;
  background: url(../img/icon_mail_gray.svg) no-repeat;
  background-size: contain;
  top: 0;
}
.supported-languages-list dt .mail-fax:after {
  width: 25px;
  height: 27px;
  background: url(../img/icon_fax_gray.svg) no-repeat;
  background-size: contain;
  top: 25px;
}
@media screen and (max-width: 680px) {
  .supported-languages-title {
    font-size: 16px !important;
  }
  .supported-languages-title:before {
    top: 6px;
  }
  .supported-languages-list {
    font-size: 15px;
    margin-bottom: 1em;
  }
  .supported-languages-list dt {
    width: 100%;
    padding: 1.1em 0.8em 0.8em;
  }
  .supported-languages-list dd {
    width: 100%;
    padding: 0.8em 0.5em;
    border-top: none;
  }
  .supported-languages-list dt .tel {
    padding-left: 40px;
  }
  .supported-languages-list dt .mail-fax {
    padding-left: 68px;
  }
  .supported-languages-list dt .tel:before,
  .supported-languages-list dt .mail-fax:before,
  .supported-languages-list dt .mail-fax:after {
    left: 0;
  }
  .supported-languages-list dt .tel:before {
    width: 29px;
    aspect-ratio: 31 / 29;
    top: -5px;
  }
  .supported-languages-list dt .mail-fax:before {
    width: 23px;
    height: 17px;
    aspect-ratio: 25 / 17;
    top: 5px;
  }
  .supported-languages-list dt .mail-fax:after {
    width: 25px;
    height: 27px;
    aspect-ratio: 23 / 27;
    top: -5px;
    left: 30px;
  }
}