@charset "UTF-8";
.no_id {
  gap: 32px;
  width: 90%;
  max-width: 680px;
  margin: 0 auto;
  padding: 32px;
  background-color: #F9F9F9;
  text-align: center;
}
@media screen and (max-width: 600px) {
  .no_id {
    flex-direction: column;
    gap: 13px;
    padding-top: 26px;
  }
}
.no_id_text {
  margin: 0 0 34px;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  .no_id_text {
    margin: 0 0 20px;
  }
}
.no_id .register_button {
  width: 232px;
  height: 56px;
  margin: 0 auto;
}
@media screen and (max-width: 600px) {
  .no_id .register_button {
    height: 46px;
  }
}
.no_id .register_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border-radius: 40px;
  background-color: #fff;
  color: #000;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  transition: background-color 0.2s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  position: relative;
  z-index: 0;
}
.no_id .register_button a::before, .no_id .register_button a::after {
  position: absolute;
  display: block;
  content: "";
  border-radius: 40px;
}
.no_id .register_button a::before {
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #7220D2, #545CFC, #2FA5FD, #8EE9FC, #CCA2DF, #EB5FC7);
}
.no_id .register_button a::after {
  inset: 3px;
  z-index: -1;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  background-color: #fff;
  transition: background-color 0.2s;
}
.no_id .register_button a:hover {
  background-color: #F9F9F9;
}
.no_id .register_button a:hover::after {
  background-color: #F9F9F9;
}
.no_id .register_button a.disabled {
  background: #B4B4B4;
  color: #fff;
}
.no_id .register_button a.disabled::before, .no_id .register_button a.disabled::after {
  content: none;
}
.no_id .register_button.ended a {
  border: 2.5px solid rgba(180, 180, 180, 0.7);
  background-color: #EFEFF1;
  color: #B4B4B4;
  box-shadow: none;
  pointer-events: none;
}
.no_id .register_button.ended a::before, .no_id .register_button.ended a::after {
  content: none;
}
@media screen and (max-width: 600px) {
  #main .map .anchor_menu {
    margin-bottom: 32px;
  }
}
#main .map section {
  /*&:first-of-type {
		.sec_title {
		@include media(sp) {
		padding-bottom: 16px;
	}
	}
	}*/
}
#main .map section .sec_title {
  margin-bottom: 24px;
}
@media screen and (max-width: 600px) {
  #main .map section .sec_title {
    padding-bottom: 24px;
  }
}
#main .map section .sec_title_belt {
  padding: 8px 20px;
  margin-top: 26px;
  margin-bottom: 40px;
  background-color: #fee1ab;
  color: #f4611f;
  font-size: 16px;
}
#main .map section .sec_title_belt a {
  color: #00489B;
}
#main .map section img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#main .map section .tab_list {
  margin: 24px auto 32px;
}
@media screen and (max-width: 600px) {
  #main .map section .tab_list {
    margin: 24px auto;
  }
}
#main .map section p.map_description {
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: center;
}
@media screen and (max-width: 600px) {
  #main .map section p.map_description {
    margin-bottom: 16px;
  }
}
#main .map section p.map_description a {
  text-decoration: underline;
}
#main .map section p.attention {
  margin-top: 17px;
  padding: 16px 16px 17px;
  border: 1px solid #b4b4b4;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .map section p.f14 {
  font-size: 14px;
}
#main .map section p + p.map_description {
  margin-top: 40px;
}
#main .map section > section + section {
  margin-top: 40px;
}
#main .map section > section .sec_title_sub {
  margin: 0 0 17px;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.45;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .map section + section {
    margin-top: 80px;
  }
}
#main .map .zoom {
  max-width: 800px;
  margin: 0 auto;
  cursor: pointer;
  transition: opacity 0.2s;
}
#main .map .zoom:hover {
  opacity: 0.8;
}
#main .map .tab_contents.show {
  display: block;
}
@media screen and (max-width: 600px) {
  #main .page_title:has(+ .area) {
    font-size: 28px;
  }
}
#main .area p.page_description {
  margin-bottom: 51px;
}
@media screen and (max-width: 600px) {
  #main .area p.page_description {
    font-size: 13px;
    line-height: 1.48;
    margin-bottom: 40px;
  }
}
#main .area_info {
  display: flex;
  flex-flow: row nowrap;
  gap: 21px 32px;
  margin-bottom: 12px;
}
@media screen and (max-width: 600px) {
  #main .area_info {
    flex-direction: column;
  }
}
#main .area_info_image {
  width: 342px;
}
@media screen and (max-width: 1024px) {
  #main .area_info_image {
    width: 40%;
  }
}
@media screen and (max-width: 600px) {
  #main .area_info_image {
    width: 100%;
  }
}
#main .area_info_image img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
#main .area_info_outline {
  width: calc(100% - 374px);
  margin-bottom: 16px;
}
@media screen and (max-width: 1024px) {
  #main .area_info_outline {
    width: calc(60% - 21px);
  }
}
@media screen and (max-width: 600px) {
  #main .area_info_outline {
    width: 100%;
    margin-bottom: 12px;
  }
}
#main .area_info_title {
  margin: 5px 0 21px;
  font-weight: 900;
  font-size: 32px;
  line-height: 1.2;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .area_info_title {
    font-size: 28px;
  }
}
#main .area_info p {
  margin: 0;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .area_info p + p {
  margin-top: 19px;
}
#main .area_detail {
  display: flex;
  flex-flow: row wrap;
  margin: 0 0 40px;
  border-top: 1px solid #EFEFF1;
}
#main .area_detail dt, #main .area_detail dd {
  padding: 16px 0;
}
#main .area_detail dt {
  width: 103px;
  padding-right: 15px;
  border-bottom: 1px solid #EFEFF1;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .area_detail dd {
  width: calc(100% - 103px);
  margin: 0;
  border-bottom: 1px solid #EFEFF1;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .area_detail dd a {
  text-decoration: underline;
}
#main .area .zoom img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
#main .login_form {
  width: 90%;
  max-width: 680px;
  margin: 0 auto;
}
#main .login_form .form {
  margin: 64px 0 48px;
}
@media screen and (max-width: 600px) {
  #main .login_form .form {
    margin: 42px 0 32px;
  }
}
#main .login_form .form form > p:not([class]) {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .login_form .form .form_row dd {
    gap: 8px;
  }
}
#main .login_form .form .form_row dd .input.error p {
  margin-top: 8px;
}
#main .login_form .form .button_wrap {
  margin-top: 40px;
}
#main .login_form.top .form {
  margin-bottom: 32px;
}
#main .login_form.top .form .button_wrap {
  width: 70.6%;
  padding-bottom: 32px;
  margin: 33px auto 32px;
  border-bottom: 1px solid #EFEFF1;
}
@media screen and (max-width: 600px) {
  #main .login_form.top .form .button_wrap {
    width: 295px;
  }
}
#main .login_form .complete {
  margin-top: 62px;
}
@media screen and (max-width: 600px) {
  #main .login_form .complete {
    margin-top: 42px;
  }
}
#main .login_form .complete p {
  margin: 20px 0;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
  text-align: center;
}
#main .login_form .complete .back_button {
  width: 216px;
  height: 54px;
  margin-top: 49px;
}
@media screen and (max-width: 600px) {
  #main .login_form .complete .back_button {
    width: 185px;
    height: 46px;
    margin-top: 40px;
  }
}
#main .login_form .complete .login_button {
  width: 272px;
  height: 64px;
  margin: 65px auto 15px;
}
@media screen and (max-width: 600px) {
  #main .login_form .complete .login_button {
    width: 185px;
    height: 46px;
    margin-top: 40px;
  }
}
#main .login_form .complete .login_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border: 1px solid #C2C2C2;
  border-radius: 33px;
  background-color: #fff;
  color: #000;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
  transition: background-color 0.2s;
  cursor: pointer;
}
#main .login_form .complete .login_button a:hover {
  background-color: #F9F9F9;
}
#main .presslogin_form {
  width: 100%;
  margin: 0 auto;
}
#main .presslogin_form .form {
  margin: 88px 0 48px;
}
@media screen and (max-width: 600px) {
  #main .presslogin_form .form {
    margin-top: 64px;
  }
}
#main .presslogin_form .form_row .input.error p {
  margin-top: 8px;
}
#main .presslogin_form .form .button_wrap {
  margin-top: 48px;
}
#main .presslogin_form .forget_pass {
  margin-top: 40px;
  background: #F9F9F9;
  padding: 24px;
}
@media screen and (max-width: 600px) {
  #main .presslogin_form .forget_pass {
    margin-top: 32px;
  }
}
#main .presslogin_form .forget_pass h3 {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.48;
  letter-spacing: 0;
  margin-bottom: 8px;
}
#main .presslogin_form .forget_pass p {
  line-height: 1.48;
}
#main .pressroom .page_title {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: space-between;
}
#main .pressroom .page_title .logout {
  display: block;
  width: 108px;
  height: 40px;
  padding-bottom: 3px;
  border: 1px solid #3D79FC;
  border-radius: 40px;
  background-color: #fff;
  color: #3D79FC;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0;
  transition: background-color 0.2s;
  cursor: pointer;
}
@media screen and (max-width: 600px) {
  #main .pressroom .page_title .logout {
    width: 100%;
  }
}
#main .pressroom .page_title .logout:hover {
  background-color: rgba(61, 121, 252, 0.1);
}
#main .pressroom .page_title .logout:disabled {
  cursor: default;
  background: #ddd;
  color: #666;
}
@media screen and (max-width: 600px) {
  #main .pressroom .page_title .logout {
    width: 108px;
  }
}
#main .pressroom .sec_title {
  margin-bottom: 24px;
}
#main .pressroom .tag_group + .tag_group {
  margin-top: 50px;
}
#main .pressroom_list li {
  box-shadow: 0px 2px 14px 0px rgba(0, 0, 0, 0.15);
  background: #fff;
  margin: 16px 0;
  padding: 24px 23px 20px 24px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  gap: 0 15px;
}
@media screen and (max-width: 600px) {
  #main .pressroom_list li {
    padding: 24px 19px 24px 13px;
    flex-direction: column-reverse;
    gap: 16px 0;
  }
}
#main .pressroom_list + .sec_title {
  margin-top: 48px;
}
#main .pressroom_outline {
  position: relative;
  width: 72%;
}
@media screen and (max-width: 600px) {
  #main .pressroom_outline {
    width: auto;
  }
}
#main .pressroom_outline_title {
  font-weight: 700;
  font-size: 26px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .pressroom_outline_desc {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
  margin: 18px 0 0;
}
#main .pressroom_outline .download_button {
  margin-top: 40px;
}
@media screen and (max-width: 600px) {
  #main .pressroom_outline .download_button {
    margin: 40px auto 0;
  }
}
#main .pressroom_image {
  width: 184px;
  height: 184px;
}
@media screen and (max-width: 600px) {
  #main .pressroom_image {
    margin: 0 auto;
  }
}
#main .pressroom_image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#main .pressroom table {
  max-width: 100%;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.448;
  letter-spacing: 0;
  border-collapse: separate;
  text-indent: initial;
  border-spacing: 2px;
  border: 0;
}
#main .pressroom table tr, #main .pressroom table th, #main .pressroom table td {
  border: 0;
}
#main .pressroom table th, #main .pressroom table td {
  padding: 5px 18px;
  background-color: #F9F9F9;
}
#main .pressroom table th {
  background-color: rgba(61, 121, 252, 0.1);
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 600px) {
  #main .outline section + section {
    margin-top: 80px;
  }
}
@media screen and (max-width: 600px) {
  #main .outline .sec_title {
    padding-bottom: 24px;
    margin-bottom: 32px;
  }
}
#main .outline .sec_title:has(+ .outline_detail) {
  margin-bottom: 0;
}
#main .outline .theme_visual {
  display: flex;
  align-items: center;
  flex-flow: column nowrap;
  justify-content: center;
  width: 100%;
  padding: 95px 65px 65px;
  border-radius: 4px;
  background: url(../media/images/2025/outline/bg_theme_bubble.png) center / cover no-repeat;
  text-align: center;
}
@media screen and (max-width: 600px) {
  #main .outline .theme_visual {
    padding: 28px 10px;
  }
}
#main .outline .theme_visual_inner {
  /*border: solid 11px $color-primary;
			padding: 70px 160px 56px;
			background: rgba(255, 255, 255, 0.2);
			@include media(tab-s) {
			padding: 40px 60px 32px;
		}
			@include media(sp) {
			width: 100%;
			padding: 16px 8px 20px;	
			border-width: 7px;
		}*/
}
#main .outline .theme_visual_title {
  display: inline-block;
  margin-bottom: 58px;
  font-weight: 900;
  font-size: 48px;
  line-height: 1.448;
  letter-spacing: 0;
  background-image: linear-gradient(to right, #648BFF 15.4%, #AB34EE 80.4%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 960px) {
  #main .outline .theme_visual_title {
    font-size: 44px;
    margin-bottom: 2vw;
  }
}
@media screen and (max-width: 600px) {
  #main .outline .theme_visual_title {
    font-weight: 900;
    font-size: 32px;
    line-height: 1.448;
    letter-spacing: 0;
    margin-bottom: 16px;
  }
}
#main .outline .theme_visual_title_sub {
  margin-bottom: 39px;
  font-weight: 400;
  font-size: 24px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 960px) {
  #main .outline .theme_visual_title_sub {
    margin-bottom: 2vw;
  }
}
@media screen and (max-width: 600px) {
  #main .outline .theme_visual_title_sub {
    font-size: 18px;
    margin-bottom: 23px;
  }
}
#main .outline .theme_visual_title_sub span.marker {
  display: inline-block;
  margin-top: 8px;
  font-weight: 900;
  font-size: 36px;
  line-height: 1.448;
  letter-spacing: 0;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 600px) {
  #main .outline .theme_visual_title_sub span.marker {
    font-size: 28px;
  }
}
#main .outline .theme_visual_title_sub span.marker::before {
  position: absolute;
  left: 0;
  bottom: 6px;
  display: inline-block;
  content: "";
  width: 102%;
  height: 15px;
  background-color: rgba(61, 121, 252, 0.5);
  z-index: -1;
}
@media screen and (max-width: 600px) {
  #main .outline .theme_visual_title_sub span.marker::before {
    height: 12px;
  }
}
#main .outline .theme_visual p {
  margin: 0;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 960px) {
  #main .outline .theme_visual p {
    font-size: 13px;
  }
}
#main .outline .chairman + .chairman {
  margin-top: 48px;
}
@media screen and (max-width: 600px) {
  #main .outline .chairman + .chairman {
    margin-top: 40px;
  }
}
#main .outline .chairman_info {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  gap: 24px;
}
@media screen and (max-width: 600px) {
  #main .outline .chairman_info {
    gap: 16px;
  }
}
#main .outline .chairman_info_image {
  width: 122px;
  height: 122px;
}
@media screen and (max-width: 600px) {
  #main .outline .chairman_info_image {
    width: 89px;
    height: 89px;
    flex-shrink: 0;
  }
}
#main .outline .chairman_info_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center -5px;
  border-radius: 61px;
}
#main .outline .chairman_info_outline {
  margin: 0;
}
#main .outline .chairman_info_outline span.company, #main .outline .chairman_info_outline span.position {
  display: block;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .outline .chairman_info_outline span.company {
  margin-bottom: 1px;
}
@media screen and (max-width: 600px) {
  #main .outline .chairman_info_outline span.company {
    margin-bottom: 0;
  }
}
#main .outline .chairman_info_outline span.position {
  margin-bottom: 10px;
}
@media screen and (max-width: 600px) {
  #main .outline .chairman_info_outline span.position {
    margin-bottom: 9px;
  }
}
#main .outline .chairman_info_outline span.name {
  display: block;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .outline .chairman_message {
  margin-top: 24px;
  padding: 16px;
  background-color: #f9f9f9;
}
#main .outline .chairman_message p {
  margin: 0;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}
#main .outline .outline_detail {
  display: flex;
  flex-flow: row wrap;
  border-bottom: 3px solid;
  border-image: linear-gradient(to right, #648BFF 15.4%, #AB34EE 80.4%) 1;
  padding-bottom: 5px;
  margin: 0;
}
@media screen and (max-width: 600px) {
  #main .outline .outline_detail:lang(en) {
    justify-content: space-between;
  }
}
#main .outline .outline_detail dt, #main .outline .outline_detail dd {
  padding: 25px 0;
}
#main .outline .outline_detail dt:not(:last-of-type), #main .outline .outline_detail dd:not(:last-of-type) {
  border-bottom: 1px solid #efeff1;
}
#main .outline .outline_detail dt {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  flex: 1 1 32.2%;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.45;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .outline .outline_detail dt {
    flex-basis: 20%;
  }
}
@media screen and (max-width: 600px) {
  #main .outline .outline_detail dt:lang(en) {
    flex: 0 0 30%;
  }
}
#main .outline .outline_detail dd {
  display: flex;
  flex-flow: row wrap;
  flex: 1 1 67.8%;
  margin: 0;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .outline .outline_detail dd {
    flex-basis: 80%;
  }
}
@media screen and (max-width: 600px) {
  #main .outline .outline_detail dd:lang(en) {
    flex: 0 0 70%;
  }
}
#main .outline .outline_detail dd ul {
  width: 50%;
}
@media screen and (max-width: 600px) {
  #main .outline .outline_detail dd ul {
    width: 100%;
  }
}
#main .outline .outline_detail dd ul.no_style li:before {
  content: none;
}
#main .outline .outline_detail dd ul li:before {
  content: "・";
  margin-right: 3px;
  color: #3D79FC;
}
#main .outline .outline_detail dd ul li:not(:last-child) {
  margin-bottom: 1.2px;
}
#main .outline .outline_detail dd ul li a {
  text-decoration: underline;
}
#main .outline .outline_detail dd p.update {
  width: 100%;
  margin: 7px 0 0;
  text-align: right;
}
@media screen and (max-width: 600px) {
  #main .outline .outline_detail dd p.update {
    text-align: left;
    margin-top: 16px;
  }
}
#main .aboutus img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
@media screen and (min-width: 601px) {
  #main .aboutus img.auto {
    width: auto;
    display: block;
    margin: 0 auto;
  }
}
#main .aboutus .sec_title_sub {
  margin: 34px 0 24px;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .aboutus .sec_title_sub02 {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.448;
  letter-spacing: 0;
  margin: 39px 0 20px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .sec_title_sub02 {
    margin: 30px 0 17px;
  }
}
#main .aboutus section + section {
  margin-top: 120px;
}
@media screen and (max-width: 600px) {
  #main .aboutus section + section {
    margin-top: 80px;
  }
}
#main .aboutus section > p {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .aboutus_info {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  gap: 32px;
}
@media screen and (max-width: 600px) {
  #main .aboutus_info {
    display: block;
  }
}
#main .aboutus_info_image {
  width: 337px;
}
@media screen and (max-width: 600px) {
  #main .aboutus_info_image {
    width: 100%;
    margin-bottom: 24px;
  }
}
#main .aboutus_info p {
  margin: 0;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .aboutus_info p + p {
  margin-top: 22px;
}
@media screen and (max-width: 600px) {
  #main .aboutus_info p + p {
    margin-top: 16px;
  }
}
#main .aboutus .image {
  margin-top: 35px;
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .image {
    margin-top: 22px;
    margin-bottom: 48px;
  }
}
#main .aboutus .report_detail {
  display: flex;
  flex-flow: row nowrap;
  margin-top: 40px;
  gap: 0 40px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .report_detail {
    display: block;
  }
}
#main .aboutus .report_detail_desc {
  width: calc(100% - (346px + 40px));
}
@media screen and (max-width: 600px) {
  #main .aboutus .report_detail_desc {
    width: 100%;
    margin-bottom: 35px;
  }
}
#main .aboutus .report_detail_desc h4 {
  font-weight: 700;
  font-size: 24px;
  line-height: 1.45;
  letter-spacing: 0;
  margin-bottom: 25px;
}
#main .aboutus .report_detail_desc p {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .aboutus .report_detail_image {
  width: 346px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .report_detail_image {
    width: 100%;
  }
}
#main .aboutus .report_detail .download_button {
  margin: 30px auto 20px 0;
}
@media screen and (max-width: 600px) {
  #main .aboutus .report_detail .download_button {
    margin: 25px auto;
  }
}
#main .aboutus .results {
  margin-top: 114px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results {
    margin-top: 76px;
  }
}
#main .aboutus .results .pdf {
  margin: 48px 0 63px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results .pdf {
    margin: 30px 0;
  }
}
@media screen and (max-width: 600px) {
  #main .aboutus .results .pdf .pc {
    display: none;
  }
}
@media screen and (min-width: 601px) {
  #main .aboutus .results .pdf .sp {
    display: none;
  }
}
#main .aboutus .results .pdf .sp img {
  display: block;
  width: 177px;
  margin: 0 auto;
}
#main .aboutus .results .pdf iframe {
  width: 100%;
  height: 780px;
  border: none;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results .pdf iframe {
    height: 323px;
  }
}
#main .aboutus .results .center {
  margin: 0 auto;
}
#main .aboutus .results_detail {
  margin-top: 80px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results_detail {
    margin-top: 64px;
  }
}
#main .aboutus .results_detail .download_button {
  margin: 27px auto 20px 0;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results_detail .download_button {
    margin: 31px auto 8px;
    width: 324px;
  }
}
#main .aboutus .results_detail_sec {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  gap: 0 40px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results_detail_sec {
    flex-direction: column-reverse;
  }
}
@media screen and (max-width: 600px) {
  #main .aboutus .results_detail_sec_desc {
    width: 100%;
  }
}
#main .aboutus .results_detail_sec_desc h4 {
  font-weight: 700;
  font-size: 24px;
  line-height: 1.448;
  letter-spacing: 0;
  margin-bottom: 31px;
  margin-top: 28px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results_detail_sec_desc h4 {
    margin-top: 32px;
    margin-bottom: 26px;
  }
}
#main .aboutus .results_detail_sec_desc p {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .aboutus .results_detail_sec_image {
  width: 171px;
  margin: 0 88px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .results_detail_sec_image {
    width: 177px;
    margin: 0 auto;
  }
}
#main .aboutus .table {
  width: 100%;
  text-align: center;
  border-collapse: collapse;
}
@media screen and (max-width: 600px) {
  #main .aboutus .table tbody {
    display: flex;
    flex-flow: row nowrap;
  }
}
@media screen and (max-width: 600px) {
  #main .aboutus .table tbody tr:first-of-type {
    width: 81px;
  }
}
@media screen and (max-width: 600px) {
  #main .aboutus .table tbody tr:nth-of-type(2) {
    width: calc(100% - 81px);
  }
}
#main .aboutus .table th {
  background: #efeff1;
  border: solid 1px #efeff1;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  width: calc(100% / 6);
  padding: 7px 10px 8px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .table th {
    display: flex;
    align-items: center;
    flex-flow: row nowrap;
    justify-content: center;
    width: 100%;
    height: 81px;
  }
}
@media screen and (max-width: 600px) {
  #main .aboutus .table th:not(:last-of-type) {
    border-bottom: none;
  }
}
#main .aboutus .table td {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.448;
  letter-spacing: 0;
  height: 83px;
  border: solid 1px #efeff1;
}
@media screen and (max-width: 600px) {
  #main .aboutus .table td {
    display: flex;
    align-items: center;
    flex-flow: column nowrap;
    justify-content: center;
    height: 81px;
  }
}
@media screen and (max-width: 600px) {
  #main .aboutus .table td:not(:last-of-type) {
    border-bottom: none;
  }
}
#main .aboutus .table td span {
  display: block;
  font-size: 13px;
}
#main .aboutus .table td span.overseas {
  display: inline-block;
}
#main .aboutus .table td small {
  display: block;
  font-size: 10px;
}
#main .aboutus .table_wrap {
  margin-top: 24px;
}
#main .aboutus span.overseas {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin: 0 3px 0 1px;
}
#main .aboutus span.overseas img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: relative;
  bottom: -3px;
}
#main .aboutus .tab_list {
  height: auto;
  background: #fff;
  margin: 48px auto 24px;
  gap: 12px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .tab_list {
    display: flex;
    padding: 0;
    margin: 24px auto 18px;
    flex-direction: row;
  }
}
#main .aboutus .tab_list li {
  color: #3D79FC;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.45;
  letter-spacing: 0;
  flex-direction: column;
  width: 165px;
  padding: 15px 0;
  border: solid 1px #3D79FC;
  margin: 0;
}
@media screen and (max-width: 600px) {
  #main .aboutus .tab_list li {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    height: 75px;
  }
}
#main .aboutus .tab_list li::after {
  content: none;
}
@media screen and (max-width: 600px) {
  #main .aboutus .tab_list li:last-child {
    justify-content: center;
    font-size: 14px;
  }
}
#main .aboutus .tab_list li span {
  font-weight: 700;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .aboutus .tab_list li.active {
  color: #fff;
  background: #3D79FC;
}
#main .aboutus .tab_list li.active::after {
  content: "";
  display: block;
  position: absolute;
  top: auto;
  right: auto;
  bottom: -16px;
  left: 50%;
  width: 20px;
  height: 16px;
  transform: translateX(-50%);
  clip-path: polygon(0 0, 50% 84%, 100% 0);
  background-color: #3D79FC;
}
@media screen and (max-width: 600px) {
  #main .aboutus .tab_list li.active::after {
    content: "" !important;
    bottom: -13px;
    width: 18px;
    height: 13px;
  }
}
#main .aboutus .tab_list li:hover {
  background-color: rgba(61, 121, 252, 0.1);
  color: #3D79FC;
}
#main .aboutus .tab_contents.show {
  display: block;
}
#main .aboutus .iframe {
  padding: 0 30px;
}
@media screen and (max-width: 600px) {
  #main .aboutus .iframe {
    padding: 0;
  }
}
#main .aboutus .iframe iframe {
  aspect-ratio: 1.7777777778;
  width: 100%;
  height: 100%;
  border: none;
}
#main .access .sp_inline {
  display: none;
}
@media screen and (max-width: 600px) {
  #main .access .sp_inline {
    display: inline-block;
  }
}
#main .access img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
#main .access .anchor_menu {
  margin-bottom: 64px;
}
@media screen and (max-width: 600px) {
  #main .access .anchor_menu {
    margin-bottom: 50px;
  }
}
#main .access .sec_title {
  margin-bottom: 38px;
}
@media screen and (max-width: 600px) {
  #main .access .sec_title {
    padding-bottom: 27px;
    margin-bottom: 32px;
  }
}
#main .access .sec_title_sub {
  margin-bottom: 24px;
  line-height: 1.48;
}
@media screen and (max-width: 600px) {
  #main .access .sec_title_sub {
    margin-top: 38px;
  }
}
#main .access .sec_title_sub + p {
  font-size: 14px;
}
#main .access section > section {
  border-bottom: none;
  padding-bottom: 0;
}
#main .access section > section + section {
  margin-top: 48px;
}
@media screen and (max-width: 600px) {
  #main .access section > section + section {
    margin-top: 46px;
  }
}
#main .access section + section {
  margin-top: 120px;
}
@media screen and (max-width: 600px) {
  #main .access section + section#waterbus, #main .access section + section#car {
    margin-top: 82px;
  }
}
#main .access .bg-gray {
  background: #f9f9f9;
}
#main .access .bg-gray.text {
  padding: 24px;
}
#main .access .bg-gray.text p {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
  margin: 0;
}
#main .access .schematic {
  margin: 24px auto 32px;
}
#main .access .schematic img {
  max-width: 697px;
}
@media screen and (min-width: 961px) {
  #main .access .schematic img {
    width: auto;
  }
}
@media screen and (min-width: 961px) {
  #main .access .schematic_en {
    margin: 50px auto 0;
    width: 80%;
  }
}
#main .access .text {
  font-size: 14px;
}
#main .access .table {
  width: 100%;
  margin-top: 48px;
  border: 1px solid #d1d1d1;
  border-collapse: collapse;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .access .table {
    font-size: 13px;
    margin-top: 24px;
    margin-bottom: 36px;
  }
}
#main .access .table th, #main .access .table td {
  padding: 16px;
  border: 1px solid #d1d1d1;
}
@media screen and (max-width: 600px) {
  #main .access .table th, #main .access .table td {
    padding: 16px 10px;
  }
}
#main .access .table th {
  font-weight: 700;
  background-color: #f7f7f7;
  width: 40%;
}
@media screen and (max-width: 600px) {
  #main .access .table th {
    width: 38%;
  }
}
#main .access .notice {
  background: rgba(252, 2, 85, 0.1);
  padding: 16px 24px;
  margin-bottom: 32px;
}
#main .access .notice_text {
  font-weight: 700;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
  color: #FC0255;
  margin: 0;
}
#main .access .notice.btm {
  margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
  #main .access .notice.btm {
    margin-top: 40px;
    margin-bottom: 32px;
  }
}
#main .access .notes {
  margin-top: 8px;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .access .googlemap {
  aspect-ratio: 3.2835820896;
  max-width: 1100px;
  margin-bottom: 28px;
}
@media screen and (max-width: 600px) {
  #main .access .googlemap {
    aspect-ratio: 2.6014492754;
  }
}
#main .access .googlemap iframe {
  width: 100%;
  height: 100%;
  border: none;
}
#main .access .shuttleBus {
  display: flex;
  align-items: flex-start;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 32px;
  border: solid 1px #b4b4b4;
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  #main .access .shuttleBus {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  #main .access .shuttleBus {
    padding: 32px 16px;
  }
}
#main .access .shuttleBus dl {
  width: calc((100% - 32px) / 2);
  margin: 0;
}
@media screen and (max-width: 600px) {
  #main .access .shuttleBus dl {
    width: 100%;
  }
}
#main .access .shuttleBus dl dt {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.48;
  letter-spacing: 0;
  margin-bottom: 16px;
}
#main .access .shuttleBus dl dd {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
  margin: 0;
}
#main .access .shuttleBus dl dd.bg-gray {
  background: #f9f9f9;
  padding: 46px 24px 40px;
  margin-top: 16px;
}
@media screen and (max-width: 600px) {
  #main .access .shuttleBus dl dd.bg-gray {
    padding: 30px 15px 26px;
    margin: 24px auto;
  }
}
#main .access .shuttleBus table {
  width: calc((100% - 32px) / 2);
  text-align: left;
  border-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .access .shuttleBus table {
    width: 100%;
  }
}
#main .access .shuttleBus table caption {
  font-weight: 700;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
  text-align: left;
  padding-bottom: 8px;
}
@media screen and (max-width: 600px) {
  #main .access .shuttleBus table caption {
    padding-bottom: 14px;
  }
}
#main .access .shuttleBus table caption, #main .access .shuttleBus table th, #main .access .shuttleBus table td {
  border-bottom: solid 1px #efeff1;
}
#main .access .shuttleBus table th {
  font-weight: 700;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
  padding: 0 20px 0 0;
  width: calc(100px + 36px);
}
#main .access .shuttleBus table td {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
  padding: 16px 0;
}
@media screen and (max-width: 600px) {
  #main .access .shuttleBus table td {
    padding: 14px 0;
  }
}
@counter-style em-decimal {
  system: numeric;
  symbols: "０" "１" "２" "３" "４" "５" "６" "７" "８" "９";
}
#main .thissite .anchor_menu {
  margin-bottom: 67px;
}
@media screen and (max-width: 600px) {
  #main .thissite .anchor_menu {
    margin-bottom: 32px;
  }
}
#main .thissite section > p {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .thissite section > p + section {
  margin-top: 34px;
}
@media screen and (max-width: 600px) {
  #main .thissite section > p + section {
    margin-top: 22px;
  }
}
@media screen and (max-width: 600px) {
  #main .thissite section > p + .inner_title {
    margin-top: 24px;
    padding-top: 25px;
    border-top: 1px solid #efeff1;
  }
}
#main .thissite section section + section {
  margin-top: 24px;
}
#main .thissite section + section {
  margin-top: 67px;
}
@media screen and (max-width: 600px) {
  #main .thissite section + section {
    margin-top: 80px;
  }
}
#main .thissite .anchor_contents > section {
  counter-reset: section 0;
}
#main .thissite .anchor_contents > section > section .sec_title_sub:before {
  content: counter(section) ". ";
  counter-increment: section 1;
}
#main .thissite .anchor_contents > section.ja > section .sec_title_sub:before {
  content: counter(section,em-decimal) ". ";
  counter-increment: section 1;
}
#main .thissite .anchor_contents > section.ja > section:nth-of-type(n + 10) .sec_title_sub:before {
  content: counter(section) ". ";
  letter-spacing: -0.04em;
}
#main .thissite .anchor_contents > section.ja .ol li:before {
  counter-increment: brackets 1;
  content: counter(brackets,em-decimal) "）";
}
#main .thissite .anchor_contents > section.ja .ol li:nth-child(n + 10):before {
  content: counter(brackets) "）";
  letter-spacing: -0.04em;
}
#main .thissite .sec_title {
  margin-bottom: 24px;
}
@media screen and (max-width: 600px) {
  #main .thissite .sec_title {
    margin-bottom: 32px;
  }
}
#main .thissite .sec_title + p {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .thissite .sec_title + .sec_title_sub {
  margin-top: 0;
}
#main .thissite .sec_title_sub {
  margin: 24px 0 15px;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .thissite .sec_title_sub {
    margin-top: 22px;
  }
}
#main .thissite .sec_title_sub .num {
  display: inline-block;
  margin-right: 6px;
  margin-left: 2px;
}
#main .thissite .inner_title {
  margin: 20px 0 16px;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .thissite p.copy {
  padding: 7px 15px;
  border: 1px solid #747474;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .thissite p.large {
  font-size: 14px;
}
#main .thissite ul:not([class]) {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .thissite ul:not([class]) li {
  padding-left: 18px;
  text-indent: -18px;
}
#main .thissite ul:not([class]) li:before {
  display: inline-block;
  width: 3px;
  height: 3px;
  margin: 0 8px 3px;
  border-radius: 3px;
  background-color: #000;
  content: "";
}
#main .thissite ul:not([class]) + .inner_title {
  margin-top: 32px;
}
#main .thissite .adobe_download {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  gap: 24px;
  max-width: 566px;
  margin-top: 16px;
  padding: 11px 23px;
  border: 1px solid #e60019;
  border-radius: 4px;
}
@media screen and (max-width: 600px) {
  #main .thissite .adobe_download {
    flex-direction: column;
    padding: 11px 10px 10px 11px;
    gap: 8px 0;
  }
}
#main .thissite .adobe_download:lang(en) {
  max-width: 608px;
}
#main .thissite .adobe_download a img {
  display: block;
}
#main .thissite .adobe_download_here {
  margin: 0;
  color: #e60019;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .thissite p.update {
  width: 100%;
  margin: 7px 0 0;
  text-align: right;
}
#main .privacy_outline {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
  #main .privacy_outline {
    margin-bottom: 34px;
  }
}
#main .privacy .sec_title {
  margin-bottom: 24px;
}
@media screen and (max-width: 600px) {
  #main .privacy .sec_title {
    margin-bottom: 20px;
  }
}
#main .privacy .sec_title + p {
  margin-bottom: 32px;
}
#main .privacy .sec_title_sub {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.48;
  letter-spacing: 0;
  margin: 24px 0 16px;
}
@media screen and (max-width: 600px) {
  #main .privacy .sec_title_sub.letter-spacing {
    letter-spacing: -0.02em;
  }
}
#main .privacy .privacyPolicy {
  margin-top: 65px;
}
@media screen and (max-width: 600px) {
  #main .privacy .privacyPolicy {
    margin-top: 80px;
  }
}
#main .privacy .ul {
  margin-top: 20px;
}
#main .privacy .ul li {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
  text-indent: -16px;
  padding-left: 16px;
}
#main .privacy .ul li::before {
  content: "・";
  margin-right: 7px;
  font-weight: 900;
}
#main .privacy .ol {
  margin: 0;
  padding: 0;
  counter-reset: brackets 0;
  list-style: none;
}
#main .privacy .ol li {
  padding-left: 26px;
  text-indent: -26px;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0;
}
#main .privacy .ol li:before {
  counter-increment: brackets 1;
  content: counter(brackets) "）";
}
#main .privacy p.update {
  width: 100%;
  margin: 7px 0 0;
  text-align: right;
}
#main .privacy > section {
  counter-reset: section 0;
}
#main .privacy > section > section:last-of-type {
  border-bottom: none;
}
#main .privacy > section > section .sec_title_sub:before {
  content: counter(section) ". ";
  counter-increment: section 1;
}
#main .privacy > section.ja section .sec_title_sub:before {
  content: counter(section,em-decimal) ". ";
  counter-increment: section 1;
}
#main .privacy > section.ja section:nth-of-type(n + 10) .sec_title_sub:before {
  content: counter(section) ". ";
  letter-spacing: -0.04em;
}
#main .privacy > section.ja .ol li:before {
  counter-increment: brackets 1;
  content: counter(brackets,em-decimal) "）";
}
#main .privacy > section.ja .ol li:nth-child(n + 10):before {
  content: counter(brackets) "）";
  letter-spacing: -0.04em;
}
#main .privacy > section p + .ol {
  margin-top: 20px;
}
#main .foodtown section .sec_title_sub {
  margin: 0 0 30px;
  line-height: 1.48;
}
#main .foodtown section .sec_title_sub:has(+ p) {
  margin-bottom: 16px;
}
#main .foodtown section .sec_title_sub:has(+ .foodtown_movie) {
  margin-bottom: 32px;
}
#main .foodtown section .sec_title_sub.mt48 {
  margin-top: 48px;
}
#main .foodtown section > section {
  border-bottom: none;
  padding-bottom: 0;
}
#main .foodtown section > section + section {
  margin-top: 48px;
}
#main .foodtown section + section {
  margin-top: 80px;
}
@media screen and (max-width: 600px) {
  #main .foodtown section + section {
    margin-top: 64px;
  }
}
#main .foodtown img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
#main .foodtown .page_title {
  margin: 61px auto 25px;
  width: 371px;
}
@media screen and (max-width: 600px) {
  #main .foodtown .page_title {
    width: 100%;
    margin: 35px 0 24px;
    padding: 0 15px;
  }
}
#main .foodtown .page_title img {
  display: block;
}
#main .foodtown .page_description {
  margin-bottom: 62px;
  line-height: 1.48;
}
@media screen and (max-width: 600px) {
  #main .foodtown .page_description {
    font-size: 13px;
    margin-bottom: 24px;
  }
}
#main .foodtown .sec_title {
  margin-bottom: 24px;
  line-height: 1.48;
  padding-bottom: 24px;
}
@media screen and (max-width: 600px) {
  #main .foodtown .sec_title {
    padding-bottom: 16px;
  }
}
#main .foodtown_image {
  width: 265px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_image {
    margin: 0 auto;
  }
}
#main .foodtown_outline {
  margin-top: 24px;
  margin-bottom: 24px;
  background: #f9f9f9;
  padding: 24px 32px;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .foodtown_feature {
  background: #f9f9f9;
  padding: 48px 54px 47px 53px;
  border-radius: 4px;
}
@media screen and (max-width: 1024px) {
  #main .foodtown_feature {
    padding: 41px 20px;
  }
}
@media screen and (max-width: 600px) {
  #main .foodtown_feature {
    padding: 40px 27px 40px 28px;
  }
}
#main .foodtown_feature h5 {
  text-align: center;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.48;
  letter-spacing: 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_feature h5 {
    margin-bottom: 48px;
  }
}
#main .foodtown_feature ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  gap: 25px;
}
@media screen and (max-width: 1024px) {
  #main .foodtown_feature ul {
    gap: 20px;
  }
}
@media screen and (max-width: 600px) {
  #main .foodtown_feature ul {
    flex-direction: column;
    gap: 48px 0;
  }
}
#main .foodtown_feature ul .feature_image {
  width: 264px;
  margin: 0 auto 19px;
  aspect-ratio: 1.3333333333;
}
@media screen and (max-width: 1024px) {
  #main .foodtown_feature ul .feature_image {
    width: 26vw;
  }
}
@media screen and (max-width: 600px) {
  #main .foodtown_feature ul .feature_image {
    width: 264px;
    margin-bottom: 21px;
  }
}
#main .foodtown_feature ul .feature_image img {
  border-radius: 20px;
}
#main .foodtown_feature ul .feature_desc {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.48;
  letter-spacing: 0;
  text-align: center;
}
#main .foodtown_usage {
  background: #f9f9f9;
  padding: 24px;
  margin-top: 40px;
  text-align: center;
}
#main .foodtown_usage_inner {
  padding: 32px 24px;
  background-color: #fff;
}
@media screen and (max-width: 600px) {
  #main .foodtown_usage {
    padding: 24px 16px;
  }
}
#main .foodtown_usage h5 {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .foodtown_usage .usage_button {
  width: 300px;
  max-width: 100%;
  height: 64px;
  margin: 24px auto 32px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_usage .usage_button {
    margin: 24px auto;
  }
}
#main .foodtown_usage .usage_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border-radius: 40px;
  background-color: #fff;
  color: #000;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  transition: background-color 0.2s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  position: relative;
  z-index: 0;
}
#main .foodtown_usage .usage_button a::before, #main .foodtown_usage .usage_button a::after {
  position: absolute;
  display: block;
  content: "";
  border-radius: 40px;
}
#main .foodtown_usage .usage_button a::before {
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #7220D2, #545CFC, #2FA5FD, #8EE9FC, #CCA2DF, #EB5FC7);
}
#main .foodtown_usage .usage_button a::after {
  inset: 3px;
  z-index: -1;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  background-color: #fff;
  transition: background-color 0.2s;
}
#main .foodtown_usage .usage_button a:hover {
  background-color: #F9F9F9;
}
#main .foodtown_usage .usage_button a:hover::after {
  background-color: #F9F9F9;
}
#main .foodtown_usage .usage_button a.disabled {
  background: #B4B4B4;
  color: #fff;
}
#main .foodtown_usage .usage_button a.disabled::before, #main .foodtown_usage .usage_button a.disabled::after {
  content: none;
}
#main .foodtown_usage .new-user {
  border-top: solid 1px #efeff1;
  padding-top: 32px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_usage .new-user {
    padding-top: 24px;
  }
}
#main .foodtown_usage ul {
  margin-top: 16px;
  text-align: left;
}
#main .foodtown_usage ul li {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .foodtown_usage ul li {
    display: flex;
    flex-flow: row nowrap;
  }
}
@media screen and (max-width: 600px) {
  #main .foodtown_usage ul li span {
    flex-shrink: 0;
  }
}
#main .foodtown_problems {
  background: #f9f9f9;
  padding: 16px 24px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_problems {
    padding: 16px;
  }
}
#main .foodtown_problems ul li {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.48;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .foodtown_problems ul li {
    display: flex;
    flex-flow: row nowrap;
  }
}
@media screen and (max-width: 600px) {
  #main .foodtown_problems ul li span {
    flex-shrink: 0;
  }
}
#main .foodtown_movie {
  aspect-ratio: 1.7777777778;
  max-width: 1040px;
  margin: 32px auto 50px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_movie {
    margin: 0 auto 80px;
  }
}
#main .foodtown_movie iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: none;
}
#main .foodtown_howtouse .sec_title {
  margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_howtouse .sec_title {
    padding-bottom: 24px;
  }
}
#main .foodtown_howtouse .usage_button {
  margin: 64px auto 0;
  width: 384px;
  max-width: 100%;
  height: 64px;
}
@media screen and (max-width: 600px) {
  #main .foodtown_howtouse .usage_button {
    width: 272px;
    margin-top: 48px;
  }
}
#main .foodtown_howtouse .usage_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border-radius: 40px;
  background-color: #fff;
  color: #000;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  transition: background-color 0.2s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  position: relative;
  z-index: 0;
}
#main .foodtown_howtouse .usage_button a::before, #main .foodtown_howtouse .usage_button a::after {
  position: absolute;
  display: block;
  content: "";
  border-radius: 40px;
}
#main .foodtown_howtouse .usage_button a::before {
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #7220D2, #545CFC, #2FA5FD, #8EE9FC, #CCA2DF, #EB5FC7);
}
#main .foodtown_howtouse .usage_button a::after {
  inset: 3px;
  z-index: -1;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  background-color: #fff;
  transition: background-color 0.2s;
}
#main .foodtown_howtouse .usage_button a:hover {
  background-color: #F9F9F9;
}
#main .foodtown_howtouse .usage_button a:hover::after {
  background-color: #F9F9F9;
}
#main .foodtown_howtouse .usage_button a.disabled {
  background: #B4B4B4;
  color: #fff;
}
#main .foodtown_howtouse .usage_button a.disabled::before, #main .foodtown_howtouse .usage_button a.disabled::after {
  content: none;
}
#main .foodtown .usage_button {
  width: 332px;
  height: 64px;
  margin: 64px auto 0;
}
#main .foodtown .usage_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border-radius: 40px;
  background-color: #fff;
  color: #000;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  transition: background-color 0.2s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  position: relative;
  z-index: 0;
}
#main .foodtown .usage_button a::before, #main .foodtown .usage_button a::after {
  position: absolute;
  display: block;
  content: "";
  border-radius: 40px;
}
#main .foodtown .usage_button a::before {
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #7220D2, #545CFC, #2FA5FD, #8EE9FC, #CCA2DF, #EB5FC7);
}
#main .foodtown .usage_button a::after {
  inset: 3px;
  z-index: -1;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  background-color: #fff;
  transition: background-color 0.2s;
}
#main .foodtown .usage_button a:hover {
  background-color: #F9F9F9;
}
#main .foodtown .usage_button a:hover::after {
  background-color: #F9F9F9;
}
#main .foodtown .usage_button a.disabled {
  background: #B4B4B4;
  color: #fff;
}
#main .foodtown .usage_button a.disabled::before, #main .foodtown .usage_button a.disabled::after {
  content: none;
}
#main .evacuation .pc {
  display: block;
}
@media screen and (max-width: 600px) {
  #main .evacuation .pc {
    display: none;
  }
}
#main .evacuation .sp {
  display: none;
}
@media screen and (max-width: 600px) {
  #main .evacuation .sp {
    display: block;
  }
}
#main .evacuation img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
#main .evacuation .page_title {
  margin: 48px auto 48px;
  font-weight: 900;
  font-size: 32px;
  line-height: 1.48;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .evacuation .page_title {
    margin: 24px auto;
  }
}
#main .evacuation .sec_title_sub {
  font-weight: 900;
  font-size: 32px;
  line-height: 1.48;
  letter-spacing: 0;
  margin: 0 0 16px;
}
#main .evacuation_outline {
  display: flex;
  flex-flow: row nowrap;
  gap: 32px;
  margin-bottom: 48px;
}
@media screen and (max-width: 600px) {
  #main .evacuation_outline {
    flex-direction: column-reverse;
    gap: 21px;
  }
}
#main .evacuation_outline_desc {
  width: 726px;
}
@media screen and (max-width: 600px) {
  #main .evacuation_outline_desc {
    width: 100%;
  }
}
#main .evacuation_outline_desc p {
  margin: 0;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}
#main .evacuation_outline_desc p + p {
  margin-top: 22px;
}
#main .evacuation_outline_image {
  width: 342px;
}
@media screen and (max-width: 600px) {
  #main .evacuation_outline_image {
    width: 100%;
  }
}
#main .evacuation_outline_image img {
  display: block;
  width: 161px;
  margin: 0 auto;
}
@media screen and (max-width: 600px) {
  #main .evacuation_outline_image img {
    width: 169px;
  }
}
#main .evacuation_photo_title {
  font-weight: 700;
  font-size: 24px;
  line-height: 1.48;
  letter-spacing: 0;
  margin-bottom: 32px;
}
#main .evacuation_photo ul {
  display: flex;
  flex-flow: row nowrap;
  gap: 40px;
}
@media screen and (max-width: 1024px) {
  #main .evacuation_photo ul {
    gap: 16px;
  }
}
@media screen and (max-width: 600px) {
  #main .evacuation_photo ul {
    flex-direction: column;
    gap: 40px;
  }
}
#main .evacuation_photo ul li {
  width: calc(100% - (40px * 2) / 3);
  aspect-ratio: 1.5178571429;
}
@media screen and (max-width: 600px) {
  #main .evacuation_photo ul li {
    width: 100%;
  }
}
#main .evacuation_photo ul li img {
  object-fit: cover;
}
#main .evacuation .this_year .sec_title {
  margin-top: 48px;
}
#main .evacuation .this_year ul.company_list {
  display: flex;
  flex-flow: row wrap;
  gap: 28px 15px;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  #main .evacuation .this_year ul.company_list {
    gap: 28px;
  }
}
@media screen and (max-width: 600px) {
  #main .evacuation .this_year ul.company_list {
    flex-direction: column;
    gap: 31px 15px;
  }
}
#main .evacuation .this_year ul.company_list > li {
  width: calc((100% - 45px) / 4);
}
@media screen and (max-width: 1024px) {
  #main .evacuation .this_year ul.company_list > li {
    width: calc((100% - 56px) / 3);
  }
}
@media screen and (max-width: 600px) {
  #main .evacuation .this_year ul.company_list > li {
    width: 100%;
  }
}
#main .foomaid .anchor_menu {
  margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
  #main .foomaid .anchor_menu {
    margin-bottom: 32px;
  }
}
#main .foomaid .sec_title {
  margin-bottom: 24px;
}
@media screen and (max-width: 600px) {
  #main .foomaid .sec_title {
    padding-bottom: 27px;
  }
}
#main .foomaid img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 600px) {
  #main .foomaid section + section {
    margin-top: 80px;
  }
}
#main .foomaid .mypage_list {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  gap: 24px;
  padding: 48px 55px 40px 56px;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_list {
    padding: 48px 2vw;
    gap: 40px 14px;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_list {
    flex-direction: column;
    padding: 48px 0 41px;
  }
}
#main .foomaid .mypage_list li {
  background: #EFEFF1;
  padding: 48px 24px 40px;
  width: calc((100% - (40px * 2)) / 3);
  text-align: center;
  border-radius: 8px;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_list li {
    width: calc((100% - (14px * 2)) / 3);
    padding: 32px 10px;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_list li {
    width: 100%;
    padding: 24px;
  }
}
#main .foomaid .mypage_list_image {
  height: 140px;
  margin: 0 auto 24px;
}
#main .foomaid .mypage_list_title {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_list_title {
    font-size: 18px;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_list_title {
    font-size: 24px;
  }
}
#main .foomaid .mypage_list p {
  font-size: 16px;
  line-height: 1.5;
  margin: 8px auto 0;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_list p {
    font-size: 14px;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_list p {
    font-size: 16px;
  }
}
#main .foomaid .mypage section .sec_title_sub {
  font-size: 26px;
  line-height: 1.48;
  text-align: center;
  margin-bottom: 48px;
}
#main .foomaid .mypage_box {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  gap: 40px;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_box {
    gap: 10px;
  }
}
@media screen and (max-width: 960px) {
  #main .foomaid .mypage_box {
    gap: 30px 10px;
    flex-direction: column;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_box {
    gap: 0px 10px;
  }
}
#main .foomaid .mypage_box h5 {
  font-weight: 700;
  font-size: 24px;
  line-height: 1.48;
  letter-spacing: 0;
  margin-bottom: 24px;
  height: 66px;
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_box h5 {
    height: auto;
    margin-bottom: 24px;
  }
}
#main .foomaid .mypage_box h5 span {
  display: block;
  font-size: 13px;
  margin-top: 7px;
}
#main .foomaid .mypage_box section {
  display: flex;
  flex-flow: column nowrap;
  width: calc(100% / 2 - 20px);
  background: linear-gradient(103.3deg, #EFFFFF 0%, #A0EFFF 48.52%, #F0E6FD 97.03%);
  border-radius: 8px;
  padding: 32px 24px;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_box section {
    width: calc(100% / 2 - 5px);
  }
}
@media screen and (max-width: 960px) {
  #main .foomaid .mypage_box section {
    width: 100%;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_box section {
    padding: 32px 24px;
  }
}
#main .foomaid .mypage_box section:nth-of-type(2) {
  margin-top: 0;
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_box section:nth-of-type(2) {
    margin-top: 40px;
  }
}
#main .foomaid .mypage_box ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  flex: 1 1 auto;
  gap: 24px 16px;
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_box ul {
    flex-direction: column;
  }
}
#main .foomaid .mypage_box ul li {
  width: calc(100% / 2 - 8px);
  background: #fff;
  border-radius: 8px;
  padding: 42px 16px 32px;
  min-height: 347px;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_box ul li {
    padding: 24px 8px;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .mypage_box ul li {
    width: 100%;
    padding: 24px 55px;
    min-height: auto;
  }
}
@media screen and (min-width: 601px) {
  #main .foomaid .mypage_box ul li:lang(en) {
    min-height: 373px;
  }
}
#main .foomaid .mypage_box_image {
  width: 100%;
  max-width: 174px;
  aspect-ratio: 1.2428571429;
  margin: 0 auto 24px;
}
#main .foomaid .mypage_box_image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#main .foomaid .mypage_box_title {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.48;
  letter-spacing: 0;
}
#main .foomaid .mypage_box p {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
  margin: 16px auto 0;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .mypage_box p br {
    display: none;
  }
}
@media screen and (max-width: 960px) {
  #main .foomaid .mypage_box p br {
    display: block;
  }
}
#main .foomaid .fooma-id p:not([class]), #main .foomaid .quickpass p:not([class]) {
  line-height: 1.48;
}
#main .foomaid .foomaapp_box {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  gap: 10px 24px;
}
#main .foomaid .foomaapp_box_image {
  flex: 0 0 244px;
}
@media screen and (max-width: 960px) {
  #main .foomaid .foomaapp_box_image {
    flex: 0 0 180px;
  }
}
#main .foomaid .foomaapp_box_image img {
  width: 100%;
}
#main .foomaid .foomaapp_box_desc {
  flex: 1 1 calc(100% - 268px);
  margin-bottom: 6px;
}
@media screen and (max-width: 960px) {
  #main .foomaid .foomaapp_box_desc {
    flex: 1 1 calc(100% - 204px);
  }
}
#main .foomaid .foomaapp_box_desc p {
  margin: 0 0 25px;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .foomaid .foomaapp_box_desc p {
    margin: 0 0 16px;
  }
}
#main .foomaid .foomaapp_box_desc .to_download_list {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  gap: 9px;
  flex-shrink: 0;
  /*.google,
	.apple {
	a {
	height: 59px;
	@include media(sp) {
	height: 35px;
}
}
}*/
}
@media screen and (max-width: 1024px) {
  #main .foomaid .foomaapp_box_desc .to_download_list {
    gap: 5.86px;
  }
}
#main .foomaid .foomaapp_box_desc .to_download_list .qr a, #main .foomaid .foomaapp_box_desc .to_download_list .google a, #main .foomaid .foomaapp_box_desc .to_download_list .apple a {
  display: block;
}
#main .foomaid .foomaapp_box_desc .to_download_list .qr img, #main .foomaid .foomaapp_box_desc .to_download_list .google img, #main .foomaid .foomaapp_box_desc .to_download_list .apple img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#main .foomaid .foomaapp_box_desc .to_download_list .qr {
  width: 100px;
  height: 100px;
  padding: 10px;
  flex-shrink: 0;
  background-color: #fff;
}
@media screen and (max-width: 600px) {
  #main .foomaid .foomaapp_box_desc .to_download_list .qr {
    width: 63.8px;
    height: 63.8px;
  }
}
#main .foomaid .foomaapp_box_desc .to_download_list .google a {
  width: 170px;
}
@media screen and (max-width: 600px) {
  #main .foomaid .foomaapp_box_desc .to_download_list .google a {
    width: 116.89px;
  }
}
#main .foomaid .foomaapp_box_desc .to_download_list .apple a {
  width: 170px;
}
@media screen and (max-width: 600px) {
  #main .foomaid .foomaapp_box_desc .to_download_list .apple a {
    width: 117.98px;
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .foomaapp_box_desc .to_download_list {
    justify-content: center;
  }
}
@media screen and (min-width: 601px) {
  #main .foomaid .foomaapp_box_desc .to_download_list .qr {
    width: 80px;
    height: 80px;
  }
}
@media screen and (min-width: 601px) {
  #main .foomaid .foomaapp_box_desc .to_download_list .google a {
    width: 162px;
  }
}
@media screen and (min-width: 601px) {
  #main .foomaid .foomaapp_box_desc .to_download_list .apple a {
    width: 162px;
  }
}
#main .foomaid .quickpass .sec_title + p {
  font-size: 14px;
}
#main .foomaid .quickpass_list {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  background: #f9f9f9;
  padding: 16px 4px;
  border-radius: 4px;
  gap: 48px 4px;
  margin: 40px 0 0;
}
@media screen and (max-width: 600px) {
  #main .foomaid .quickpass_list {
    flex-direction: column;
    padding: 16px 0 10px;
  }
}
#main .foomaid .quickpass_list li {
  width: calc(100% / 3 - 4px);
  text-align: center;
  padding: 24px;
  position: relative;
}
@media screen and (max-width: 600px) {
  #main .foomaid .quickpass_list li {
    width: 100%;
    padding-bottom: 30px;
  }
}
#main .foomaid .quickpass_list li:not(:last-of-type)::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -27px;
  transform: translateY(-50%) rotate(90deg);
  width: 38px;
  height: 22px;
  background: linear-gradient(to right, #648BFF 15.4%, #AB34EE 80.4%);
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
@media screen and (max-width: 600px) {
  #main .foomaid .quickpass_list li:not(:last-of-type)::after {
    top: auto;
    bottom: -36px;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    width: 38px;
    height: 22px;
  }
}
#main .foomaid .quickpass_list_title {
  font-weight: 700;
  font-size: 18px;
  line-height: 1.48;
  letter-spacing: 0;
  background: linear-gradient(103.3deg, #EFFFFF 0%, #A0EFFF 48.52%, #F0E6FD 97.03%);
  border-radius: 18px;
}
#main .foomaid .quickpass_list_image {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  justify-content: center;
  width: 186px;
  height: 186px;
  margin: 32px auto;
  background: #fff;
  border-radius: 120px;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  #main .foomaid .quickpass_list_image {
    width: min(140px, 20vw);
    height: min(140px, 20vw);
  }
}
@media screen and (max-width: 600px) {
  #main .foomaid .quickpass_list_image {
    width: 186px;
    height: 186px;
  }
}
#main .foomaid .quickpass_list_image img {
  width: 100%;
  height: 100%;
}
#main .foomaid .quickpass_list p {
  margin: 0;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
}
#main .foomaid .quickpass > section {
  text-align: center;
}
#main .foomaid .quickpass > section .sec_title_sub {
  margin-top: 80px;
  margin-bottom: 40px;
  line-height: 1.48;
}
@media screen and (max-width: 600px) {
  #main .foomaid .quickpass > section .sec_title_sub {
    margin-bottom: 32px;
  }
}
#main .foomaid .quickpass .button_wrap {
  width: 370px;
  max-width: 100%;
  height: 64px;
  margin: 24px auto 0;
}
@media screen and (max-width: 600px) {
  #main .foomaid .quickpass .button_wrap {
    width: 272px;
    margin-top: 32px;
  }
}
#main .foomaid .quickpass .button_wrap a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border-radius: 40px;
  background-color: #fff;
  color: #000;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  transition: background-color 0.2s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  position: relative;
  z-index: 0;
}
#main .foomaid .quickpass .button_wrap a::before, #main .foomaid .quickpass .button_wrap a::after {
  position: absolute;
  display: block;
  content: "";
  border-radius: 40px;
}
#main .foomaid .quickpass .button_wrap a::before {
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #7220D2, #545CFC, #2FA5FD, #8EE9FC, #CCA2DF, #EB5FC7);
}
#main .foomaid .quickpass .button_wrap a::after {
  inset: 3px;
  z-index: -1;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  background-color: #fff;
  transition: background-color 0.2s;
}
#main .foomaid .quickpass .button_wrap a:hover {
  background-color: #F9F9F9;
}
#main .foomaid .quickpass .button_wrap a:hover::after {
  background-color: #F9F9F9;
}
#main .foomaid .quickpass .button_wrap a.disabled {
  background: #B4B4B4;
  color: #fff;
}
#main .foomaid .quickpass .button_wrap a.disabled::before, #main .foomaid .quickpass .button_wrap a.disabled::after {
  content: none;
}
#main .foomaid .quickpass .button_wrap.ended a {
  border: 2.5px solid rgba(180, 180, 180, 0.7);
  background-color: #EFEFF1;
  color: #B4B4B4;
  box-shadow: none;
  pointer-events: none;
}
#main .foomaid .quickpass .button_wrap.ended a::before, #main .foomaid .quickpass .button_wrap.ended a::after {
  content: none;
}
@media screen and (max-width: 600px) {
  #main .page_title:has(+ .sitemap) {
    margin-bottom: 48px;
  }
}
#main .sitemap a {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  display: block;
  text-decoration: underline;
}
#main .sitemap a:hover {
  text-decoration: none;
}
#main .sitemap .disabled {
  color: #b4b4b4;
}
#main .sitemap .disabled a {
  pointer-events: none;
  color: inherit;
  text-decoration: none;
}
#main .sitemap .disabled a img[src$="pdf.svg"] {
  opacity: 0.3;
}
#main .sitemap_title {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  background: linear-gradient(91.77deg, rgba(100, 139, 255, 0.2) 0.13%, rgba(171, 52, 238, 0.2) 100.13%);
  padding: 12px 9px 13px;
}
#main .sitemap_title + .sitemap_title {
  margin-top: 40px;
}
#main .sitemap_title + .sitemap_list {
  margin-top: 43px;
}
#main .sitemap_list {
  display: flex;
  flex-flow: row wrap;
  gap: 32px 52px;
  margin-inline: 32px;
  margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
  #main .sitemap_list {
    gap: 24px;
    flex-direction: column;
    margin-inline: 24px;
  }
}
#main .sitemap_list li {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0;
  display: flex;
  flex-flow: row nowrap;
  width: calc((100% - 202px) / 3);
  position: relative;
  margin-left: 17px;
  padding-left: 7px;
}
@media screen and (max-width: 600px) {
  #main .sitemap_list li {
    width: 100%;
  }
}
#main .sitemap_list li:has(a)::before {
  background-color: #3D79FC;
}
#main .sitemap_list li::before {
  display: inline-block;
  width: 4px;
  height: 4px;
  margin: 0 8px 3px;
  border-radius: 50%;
  background-color: #000;
  content: "";
  flex-shrink: 0;
  position: absolute;
  top: 13px;
  left: -15px;
}
#main .page_title:has(+ .promotion) {
  margin-bottom: 51px;
}
#main .promotion .anchor_menu {
  margin-bottom: 67px;
}
@media screen and (max-width: 600px) {
  #main .promotion .anchor_menu {
    margin-bottom: 32px;
  }
}
#main .promotion section section + section {
  margin-top: 35px;
}
@media screen and (max-width: 600px) {
  #main .promotion section section + section {
    margin-top: 12px;
  }
}
#main .promotion section + section {
  margin-top: 114px;
}
@media screen and (max-width: 600px) {
  #main .promotion section + section {
    margin-top: 64px;
  }
}
#main .promotion .sec_title {
  margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
  #main .promotion .sec_title {
    margin-bottom: 32px;
  }
}
#main .promotion .sec_title_sub {
  margin: 0 auto 14px;
  font-weight: 700;
  font-size: 26px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .promotion .sec_title_sub {
    margin-bottom: 16px;
  }
}
#main .promotion_sec {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 16px 0;
  margin-inline: 24px;
}
@media screen and (max-width: 600px) {
  #main .promotion_sec {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  #main .promotion_sec {
    padding-top: 24px;
  }
}
#main .promotion_sec_text {
  width: calc(100% - (270px + 10px));
}
@media screen and (max-width: 600px) {
  #main .promotion_sec_text {
    width: 100%;
  }
}
#main .promotion_sec_text p {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
  margin-bottom: 7px;
  margin-top: 15px;
}
#main .promotion_sec_image {
  width: 270px;
}
@media screen and (max-width: 600px) {
  #main .promotion_sec_image {
    width: 100%;
    margin-top: 32px;
  }
}
#main .promotion_sec_image img {
  width: 100%;
}
#main .page_title:has(+ .requirement) {
  margin-bottom: 48px;
}
@media screen and (max-width: 600px) {
  #main .page_title:has(+ .requirement) {
    margin-bottom: 40px;
    font-size: 32px;
  }
}
#main .requirement img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
@media screen and (min-width: 601px) {
  #main .requirement img.auto {
    width: auto;
    display: block;
    margin: 0 auto;
  }
}
#main .requirement .anchor_menu {
  margin-bottom: 64px;
}
@media screen and (max-width: 600px) {
  #main .requirement .anchor_menu {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 600px) {
  #main .requirement .anchor_list {
    justify-content: center;
  }
}
#main .requirement .sec_title_sub {
  margin: 34px 0 24px;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .requirement section + section {
  margin-top: 80px;
}
#main .requirement .startup_information {
  margin-bottom: 40px;
  background-color: #f4f4f4;
  padding: 24px 0;
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  justify-content: center;
  gap: 24px 10px;
}
@media screen and (max-width: 600px) {
  #main .requirement .startup_information {
    flex-direction: column;
    padding: 24px 16px;
  }
}
#main .requirement .startup_information_desc {
  margin: 0;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .requirement .startup_information_button {
  width: 247px;
  height: 35px;
}
@media screen and (max-width: 600px) {
  #main .requirement .startup_information_button {
    width: 295px;
    height: 36px;
  }
}
#main .requirement .startup_information_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border: 1px solid #3D79FC;
  border-radius: 33px;
  background-color: #fff;
  color: #3D79FC;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
  transition: background-color 0.2s;
  cursor: pointer;
  font-size: 13px;
}
#main .requirement .startup_information_button a:hover {
  background-color: rgba(61, 121, 252, 0.1);
}
#main .requirement .requirement_sec_detail {
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  justify-content: space-between;
  gap: 32px 40px;
}
@media screen and (max-width: 600px) {
  #main .requirement .requirement_sec_detail {
    flex-direction: column-reverse;
  }
}
@media screen and (max-width: 600px) {
  #main .requirement .requirement_sec_detail_desc {
    width: 100%;
  }
}
#main .requirement .requirement_sec_detail_desc .sec_title_sub {
  margin-top: 0;
  margin-bottom: 25px;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .requirement .requirement_sec_detail_desc .sec_title_sub {
    margin-bottom: 26px;
  }
}
#main .requirement .requirement_sec_detail_desc p {
  font-weight: 400;
  font-size: 13px;
  line-height: 1.448;
  letter-spacing: 0;
  margin-top: 24px;
}
@media screen and (max-width: 600px) {
  #main .requirement .requirement_sec_detail_desc p {
    margin: 0;
  }
}
#main .requirement .requirement_sec_detail_image {
  width: 171px;
  margin: 0 88px;
}
@media screen and (max-width: 600px) {
  #main .requirement .requirement_sec_detail_image {
    width: 177px;
    margin: 6px auto 0;
  }
}
#main .requirement .requirement_sec_detail .download_button {
  margin: 32px auto 20px 0;
}
@media screen and (max-width: 600px) {
  #main .requirement .requirement_sec_detail .download_button {
    margin: 31px auto 8px;
    width: 324px;
  }
}
#main .requirement .requirement_sec_detail_note {
  margin-top: 32px;
}
#main .page_title:has(+ .effection) {
  margin-bottom: 35px;
}
@media screen and (max-width: 600px) {
  #main .page_title:has(+ .effection) {
    margin-bottom: 40px;
    font-size: 32px;
  }
}
#main .effection .sec_title {
  margin-bottom: 27px;
}
#main .effection img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
@media screen and (min-width: 601px) {
  #main .effection img.auto {
    width: auto;
    display: block;
    margin: 0 auto;
  }
}
#main .effection .table_wrap {
  margin-top: 58px;
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  #main .effection .table_wrap {
    margin-bottom: 64px;
  }
}
#main .effection .table_wrap .table {
  width: 100%;
  border: 1px solid #d1d1d1;
  border-collapse: collapse;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.448;
  letter-spacing: 0;
}
@media screen and (max-width: 600px) {
  #main .effection .table_wrap .table {
    font-size: 13px;
    margin-top: 24px;
    margin-bottom: 36px;
  }
}
#main .effection .table_wrap .table caption {
  text-align: left;
  margin-bottom: 25px;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .effection .table_wrap .table th, #main .effection .table_wrap .table td {
  border: 1px solid #efeff1;
  text-align: center;
}
@media screen and (max-width: 600px) {
  #main .effection .table_wrap .table th, #main .effection .table_wrap .table td {
    padding: 16px 10px;
  }
}
#main .effection .table_wrap .table th {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  padding: 8px;
  font-weight: 700;
  background-color: #f7f7f7;
  width: calc(100% / 3);
}
#main .effection .table_wrap .table td {
  padding: 19px 4px;
}
#main .effection .table_wrap .table td span {
  display: block;
  font-size: 13px;
}
#main .effection_outline {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.448;
  letter-spacing: 0;
  text-align: center;
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  #main .effection_outline {
    margin-bottom: 40px;
  }
}
#main .effection_sec .box {
  background: #f9f9f9;
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  padding: 32px;
  gap: 32px 40px;
}
@media screen and (max-width: 600px) {
  #main .effection_sec .box {
    flex-direction: column;
  }
}
#main .effection_sec .box_text {
  width: calc(100% - (668px + 40px));
}
@media screen and (max-width: 1200px) {
  #main .effection_sec .box_text {
    width: 100%;
  }
}
#main .effection_sec .box_text h4 {
  font-weight: 900;
  font-size: 32px;
  line-height: 1.448;
  letter-spacing: 0;
  margin-bottom: 24px;
}
@media screen and (max-width: 600px) {
  #main .effection_sec .box_text h4 {
    font-size: 28px;
    text-align: center;
  }
}
#main .effection_sec .box_text p {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.448;
  letter-spacing: 0;
  margin: 0;
}
#main .effection_sec .box_text p + p {
  margin-top: 20px;
}
#main .effection_sec .box_image {
  width: 668px;
}
@media screen and (max-width: 1200px) {
  #main .effection_sec .box_image {
    width: 100%;
  }
}
#main .effection_sec2 {
  margin-top: 115px;
}
@media screen and (max-width: 600px) {
  #main .effection_sec2 {
    margin-top: 80px;
  }
}
#main .effection_sec3 {
  margin-top: 162px;
}
#main .effection_sec4, #main .effection_sec5 {
  margin-top: 120px;
}
#main .effection_nav {
  margin-top: 120px;
}
#main .effection_nav .page_title {
  margin-bottom: 48px;
}
#main .effection_nav_col {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  gap: 32px 40px;
}
@media screen and (max-width: 600px) {
  #main .effection_nav_col {
    flex-direction: column;
  }
}
#main .effection_nav_col_item {
  width: calc((100% / 2) - 20px);
  background: #fff;
  box-shadow: 0px 2px 14px 0px rgba(0, 0, 0, 0.15);
  text-align: center;
  border-radius: 8px;
  padding: 32px 24px;
}
@media screen and (max-width: 1200px) {
  #main .effection_nav_col_item {
    display: flex;
    flex-flow: row nowrap;
  }
}
@media screen and (max-width: 600px) {
  #main .effection_nav_col_item {
    width: 100%;
  }
}
#main .effection_nav_col_item .inner {
  display: flex;
  align-items: center;
  flex-flow: column nowrap;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  background-color: #f9f9f9;
  border-radius: 8px;
  padding: 16px 16px 24px;
}
@media screen and (max-width: 1200px) {
  #main .effection_nav_col_item .inner {
    display: flex;
    flex-flow: column nowrap;
  }
}
@media screen and (max-width: 600px) {
  #main .effection_nav_col_item .inner {
    padding: 16px 24px 24px;
  }
}
#main .effection_nav_col_item h5 {
  font-weight: 900;
  font-size: 28px;
  line-height: 1.448;
  letter-spacing: 0;
}
#main .effection_nav_col_item p {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.448;
  letter-spacing: 0;
  margin: 12px auto 0;
  flex-grow: 1;
}
#main .effection_nav_col_item .image {
  width: 386px;
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  #main .effection_nav_col_item .image {
    width: 100%;
  }
}
#main .effection_nav_col_item .apply_button {
  width: 240px;
  height: 54px;
  margin: 32px auto 16px;
}
#main .effection_nav_col_item .apply_button a {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding-bottom: 1px;
  border-radius: 40px;
  background-color: #3D79FC;
  color: #fff;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0;
  transition: background-color 0.2s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  cursor: pointer;
  font-size: 13px;
  /*position: relative;
						&::after {
						content: "";
						display: inline-block;
						background: url(../media/images/2025/common/icon_arrow_right.svg) no-repeat;
						position: relative;
						top: 1px;
						margin-left: 3px;
						width: 10px;
						height: 17px;
						position: absolute;
						right: 10px;
						top: 50%;
						transform: translateY(-50%);
					}*/
}
#main .effection_nav_col_item .apply_button a:hover {
  background-color: rgba(61, 121, 252, 0.5);
}
/*# sourceMappingURL=./lower_2025.css.map */