@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic+New:wght@400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&display=swap');
/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}
article, aside, figure, footer, header, nav, section, details, summary {
  display: block;
}
/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
*, *:before, *:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}
/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img, object, embed {
  max-width: 100%;
}
/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll;
}
/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}
/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
th {
  font-weight: bold;
  vertical-align: bottom;
}
td {
  font-weight: normal;
  vertical-align: top;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}
pre {
  white-space: pre;
  /* CSS2 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word;
}
input[type="radio"] {
  vertical-align: middle;
}
input[type="checkbox"] {
  vertical-align: middle;
}
.ie7 input[type="checkbox"] {
  vertical-align: middle;
}
.ie6 input {
  vertical-align: text-bottom;
}
select, input, textarea {
  font: 99% sans-serif;
}
table {
  font-size: inherit;
  font: 100%;
}
small {
  font-size: 85%;
}
strong {
  font-weight: bold;
}
td, td img {
  vertical-align: top;
}
/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}
/* hand cursor on clickable elements */
.clickable, label, input[type=button], input[type=submit], input[type=file], button {
  cursor: pointer;
}
/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0;
}
/* make buttons play nice in IE */
button, input[type=button] {
  width: auto;
  overflow: visible;
}
/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic;
}
/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:before, .clearfix:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}
html, body {
  -webkit-text-size-adjust: 100%;
}
html {
  scroll-behavior: smooth;
  font-size: 62.5%;
}
body {
  font-size: 1.7rem;
  /*font-family: "Zen Kaku Gothic New", sans-serif;*/
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333333;
  box-sizing: border-box;
  margin: 0;
  word-wrap: break-word;
  background-color: #fff;
  /*vertical-align: baseline;*/
}
a {
  text-decoration: none;
  outline: none;
  transition: .3s;
}
a:hover {
  text-decoration: none;
  outline: none;
  transition: .3s;
  color: #3fb6ea;
}
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
  transition: .3s;
}
a img:hover {
  transition: .3s;
  opacity: .8
}
.pc-only {
  display: block;
}
.tab-less {
  display: none;
}
.sp-only {
  display: none;
}
@media screen and (max-width: 864px) {
  .tab-less {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .pc-only {
    display: none;
  }
  .tab-less {
    display: block;
  }
  .sp-only {
    display: block;
  }
}
/*box系*/
.ex-container {
  width: 100%;
  margin: 0 auto;
  max-width: 1440px;
}
.container {
  width: 100%;
  margin: 0 auto;
  max-width: 1260px;
}
@media screen and (max-width: 1480px) {
.ex-container {
    width: 92%;
    margin: 0 auto;
    max-width: initial;
  }
}
@media screen and (max-width: 1300px) {
  .container {
    width: 92%;
    margin: 0 auto;
    max-width: initial;
  }
}
.outer {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
@media screen and (max-width: 1100px) {
  .outer {
    width: 92%;
    margin: 0 auto;
    max-width: initial;
  }
}
.wrapper {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .wrapper {
    width: 92%;
    margin: 0 auto;
    max-width: initial;
  }
}
/*---header---*/
#small-header {
  display: none;
}
#header {
  width: 100%;
  height: 100px;
  padding: 15px 25px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-bottom: 0;
  background-color: #ffffff;
}
#header #logo {
  width: 260px;
  margin-right: auto;
}
#header #logo a {
  display: block;
}
#header #hd-sns {
  display: flex;
  align-items: center;
}
#header #hd-sns span {
  width: 30px;
}
#header #hd-sns span a {
  display: block;
}
#header #hd-sns span:first-child {
  margin-right: 12px;
}
/*---gnav ---*/
#header #gnav {
  margin-right: 30px;
}
#header #gnav ul li a {
  color: #333333;
}
#header #gnav ul li a:hover {
  color: #0068b7;
}
#header #gnav ul li.current a {
  color: #0068b7;
}
#header #gnav > ul {
  display: flex;
  column-gap: 1.5em;
  justify-content: center;
}
#header #gnav > ul li {
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 90px;
  color: #ccc;
}
#header #gnav ul li a {
  color: #333333;
  display: block;
}
#header #gnav ul li a:hover {
  color: #0068b7;
}
#header #gnav ul li .arrow {
  padding-left: 5px;
}
/*---accordion---*/
#header #gnav ul li.menu-single {
  position: relative;
}
#header #gnav ul li.menu-single a {
  cursor: unset;
}
#header #gnav ul li ul {
  z-index: 90;
  position: absolute;
  top: 70px;
  right: 0;
  margin: 0;
  padding: 0;
}
#header #gnav ul li.menu-single ul li {
  white-space: nowrap;
  overflow: hidden;
  text-align: left;
  width: 100%;
  height: 0;
  color: #fff;
  -moz-transition: .5s;
  -webkit-transition: .5s;
  -o-transition: .5s;
  -ms-transition: 5s;
  transition: .5s;
}
#header #gnav ul li.menu-single:hover ul li {
  overflow: visible;
  height: auto;
  background-color: #f1f6fc;
  /*background-color: #fff;*/
  padding: 30px 30px 0;
}
#gnav ul li.current > a {
  text-decoration: none;
  color: #5fbbd2;
  position: relative;
}
#header #gnav ul li.current > a:after {
  border-bottom: solid 2px #5fbbd2;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
}
#header #gnav ul li.menu-single:hover ul li:last-child {
  padding-bottom: 35px;
}
#header #gnav ul li.menu-single .menu-second-level li a {
  line-height: 1;
  cursor: default;
}
@media screen and (max-width: 1450px) {
  #header {
    padding: 15px;
  }
  #header #logo {
    width: 250px;
  }
  #header #hd-sns span {
    width: 30px;
  }
  #header #hd-sns span:first-child {
    margin-right: 10px;
  }
  #header #gnav {
    margin-right: 25px;
  }
  #header #gnav > ul {
    column-gap: 30px;
  }
  #header #gnav > ul li {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 1280px) {
  #header #logo {
    width: 210px;
  }
  #header #hd-sns span {
    width: 24px;
  }
  #header #gnav > ul {
    display: flex;
    column-gap: 20px;
    justify-content: center;
  }
  #header #gnav {
    margin-right: 15px;
  }
  #header #gnav > ul li {
    font-size: 1.4rem;
  }
  #header #hd-sns span:first-child {
    margin-right: 8px;
  }
}
@media screen and (max-width: 1100px) {
  #small-header {
    width: 100%;
    display: flex;
    background-color: #ffffff;
    height: 90px;
    padding: 15px;
    position: relative;
    margin-bottom: 0;
    /*margin-bottom: 30px;*/
    align-items: center;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  }
  #small-header #logo {
    width: 200px;
  }
  #small-header #gnav-sp .logobox-sp {
    width: 100%;
    background-color: #fff;
    margin: 0 auto;
    padding: 20px;
    margin-top: 30px;
    border-radius: 15px;
  }
  #small-header #gnav-sp .logobox-sp figure {
    width: 100%;
    margin: 0 auto 20px;
  }
  #small-header #gnav-sp .logobox-sp .sns-sp {
    display: flex;
    gap: 20px;
    justify-content: center;
  }
  #small-header #gnav-sp .logobox-sp .sns-sp a {
    width: 30px;
    height: 30px;
  }
  #small-header #gnav-sp .logobox-sp .sns-sp a img {
    width: 100%;
    height: auto;
    display: block;
  }
  #header {
    display: none;
  }
  #gnav {
    display: none;
  }
  #gnav-sp {
    font-size: 1.6rem;
    display: block;
    /*line-height: 2;*/
  }
  #gnav-sp {
    color: #8d9caf;
  }
  #gnav-sp a {
    text-decoration: none;
    color: #ffffff;
  }
  #gnav-sp .overlay {
    content: "";
    display: block;
    width: 0;
    height: 0;
    background-color: rgba(0, 0, 0, 0.8);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    opacity: 0;
    transition: opacity .3s;
  }
  #gnav-sp .overlay.open {
    width: 100%;
    opacity: 1;
    height: 200vh;
  }
  #gnav-sp .menu-trigger {
    display: inline-block;
    width: 32px;
    height: 27px;
    vertical-align: middle;
    cursor: pointer;
    position: fixed;
    top: 32px;
    right: 20px;
    z-index: 100;
    transform: translateX(0);
    transition: transform .5s;
  }
  #gnav-sp .menu-trigger.active {
    transform: translateX(0);
  }
  #gnav-sp .menu-trigger span {
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #00479d;
    transition: all .5s;
  }
  #gnav-sp .menu-trigger.active span {
    background-color: #cccccc;
  }
  #gnav-sp .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  #gnav-sp .menu-trigger.active span:nth-of-type(1) {
    transform: translateY(12px) rotate(-45deg);
  }
  #gnav-sp .menu-trigger span:nth-of-type(2) {
    top: 12px;
  }
  #gnav-sp .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  #gnav-sp .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  #gnav-sp .menu-trigger.active span:nth-of-type(3) {
    transform: translateY(-12px) rotate(45deg);
  }
  #gnav-sp nav {
    width: 90%;
    height: 100%;
    line-height: 2.8;
    background-color: rgb(0, 71, 157, 1);
    position: fixed;
    top: 0;
    right: 0;
    transform: translate(100%);
    transition: all .5s;
    z-index: 20;
    padding: 60px 40px 40px;
    overflow-y: scroll;
  }
  #gnav-sp nav.open {
    transform: translateZ(0);
  }
  #gnav-sp .menu_item {
    cursor: pointer;
    display: block;
  }
  #gnav-sp .menu_item_link {
    display: block;
    padding: 0;
    position: relative;
  }
  #gnav-sp .menu_item_link:after {
    display: block;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    width: 15px;
    font-family: "Font Awesome 5 Free";
    font-weight: 800;
    content: "\f067";
  }
  #gnav-sp .menu_item_link.on:after {
    content: '\f068';
  }
  #gnav-sp .submenu {
    display: none;
  }
  #gnav-sp .submenu_item {
    color: #ffffff;
    padding-left: 1.5em;
  }
  #gnav-sp .menu .submenu_item:last-child {
    border-bottom: none;
  }
}
@media screen and (max-width: 864px) {
  #small-header {
    display: block;
    background-color: #ffffff;
    height: 70px;
    padding: 10px 20px;
    position: relative;
  }
  #small-header #logo {
    width: 212px;
  }
  #gnav-sp .menu-trigger {
    top: 20px;
  }
}
@media screen and (max-width: 480px) {
  #small-header {
    height: 60px;
    padding: 10px 15px;
  }
  #small-header #logo {
    width: 170px;
  }
  #gnav-sp .menu-trigger {
    top: 15px;
    right: 15px;
  }
}
/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
#header.HeightMin {
  position: fixed;
  z-index: 999;
  height: 90px;
  animation: DownAnime 0.5s forwards;
  background: rgba(255, 255, 255, .9);
  /*padding: 15px 40px 15px 20px;*/
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
#header.HeightMin #logo {
  width: 230px;
}
#header.HeightMin #hd-sns span {
  width: 28px;
}
#header.HeightMin #gnav > ul {
  column-gap: 30px;
}
#header.HeightMin #gnav > ul li {
  font-size: 1.5rem;
  line-height: 60px;
}
#header.HeightMin #gnav ul li ul {
  top: 60px;
  right: 0;
}
@media screen and (max-width: 1280px) {
  #header.HeightMin #logo {
    width: 210px;
  }
  #header.HeightMin #hd-sns span {
    width: 24px;
  }
  #header.HeightMin #gnav > ul {
    display: flex;
    column-gap: 20px;
    justify-content: center;
  }
  #header.HeightMin #gnav {
    margin-right: 15px;
  }
  #header.HeightMin #gnav > ul li {
    font-size: 1.4rem;
  }
  #header.HeightMin #hd-sns span:first-child {
    margin-right: 8px;
  }
}
@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-170px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/*Top-headerBG*/
#top-main {
  width: 100%;
  background-image: url("../images/top-main-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
/*TOP Slider*/
.slider .slick-arrow {
  z-index: 2 !important;
}
#top-slide {
  width: 100%;
  padding: 50px 0;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
#top-slide .slider {
  width: 100%;
}
#top-slide .slider .slider-item {
  margin: 0 20px;
}
#top-slide .slider .slider-item a {
  display: block;
}
#top-slide .slider .slider-item img {
  border-radius: 80px;
  box-shadow: 0 0 8px rgba(0, 0, 0, .1);
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  #top-slide {
    width: 100%;
  }
  #top-slide .slider {
    width: 90%;
  }
  #top-slide .slider .slider-item {
    margin: 0 15px;
  }
}
@media screen and (max-width: 864px) {
  #top-slide {
    width: 100%;
    padding: 30px 0;
  }
  #top-slide .slider .slider-item {
    margin: 0 15px;
  }
  #top-slide .slider .slider-item img {
    border-radius: 40px;
    box-shadow: 0 0 8px rgba(0, 0, 0, .1);
    margin: 0 auto;
  }
}
@media screen and (max-width: 480px) {
  #top-slide {
    width: 100%;
    padding: 20px 0 25px;
  }
  #top-slide .slider {
    width: 100%;
  }
  #top-slide .slider .slider-item img {
    border-radius: 25px;
  }
}
/*----------animation----------*/
.scroll-space {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 300px;
  height: 1600px;
  color: #fff;
  overflow: hidden;
}
.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: all 1.5s;
  transition: all 1.5s;
}
.fadein.fadein-left {
  -webkit-transform: translate(-30px, 0);
          transform: translate(-30px, 0);
}
.fadein.fadein-right {
  -webkit-transform: translate(30px, 0);
          transform: translate(30px, 0);
}
.fadein.fadein-up {
  -webkit-transform: translate(0, -30px);
          transform: translate(0, -30px);
}
.fadein.fadein-bottom {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
}
.fadein.scrollin {
  opacity: 1 !important;
  -webkit-transform: translate(0, 0) !important;
          transform: translate(0, 0) !important;
}
@-webkit-keyframes fadeSlideUp {
  0% {
    opacity: 0;
    -webkit-transform: translate(-50%, -40%);
    transform: translate(-50%, -40%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

@keyframes fadeSlideUp {
  0% {
    opacity: 0;
    -webkit-transform: translate(-50%, -40%);
    transform: translate(-50%, -40%);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
}

@-webkit-keyframes fadeInDelay {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDelay {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
/*---top common---*/
.top section {
  width: 100%;
  padding: 80px 0 100px;
}
.btn-next {
  display: block;
  margin: 40px auto 0;
  width: 340px;
  height: 64px;
}
.btn-next a {
  /*background-color: #00479d;*/
  background: linear-gradient(45deg, #00c0fa 35%, #015eea);
  display: block;
  color: #fff;
  text-align: center;
  /*border: solid 2px #00479d;*/
  width: 100%;
  height: 100%;
  line-height: 60px;
  font-weight: 500;
  border-radius: 32px;
  transition: .3s;
}
.btn-next a:hover {
  opacity: .8;
  transition: .3s;
}
.btn-more {
  display: block;
  margin: 40px auto 0;
  width: 340px;
  height: 64px;
}
.btn-more a {
  /*background-color: #00479d;*/
  background: linear-gradient(45deg, #00c0fa 35%, #015eea);
  display: block;
  color: #fff;
  text-align: center;
  /*border: solid 2px #00479d;*/
  width: 100%;
  height: 100%;
  line-height: 60px;
  font-weight: 500;
  border-radius: 32px;
  transition: .3s;
}
.btn-more a:hover {
  opacity: .8;
  transition: .3s;
}
@media screen and (max-width: 864px) {
  .top section {
    width: 100%;
    padding: 60px 0;
  }
}
@media screen and (max-width: 480px) {
  .top section {
    width: 100%;
    padding: 40px 0;
  }
  .btn-more {
    display: block;
    margin: 30px auto 0;
    width: 94%;
    height: 60px;
  }
  .btn-more a {
    background-color: #00479d;
    line-height: 55px;
    margin: 30px auto 0;
    font-size: 1.5rem;
  }
  .btn-next {
    display: block;
    margin: 30px auto 0;
    width: 94%;
    height: 60px;
  }
  .btn-next a {
    background-color: #00479d;
    line-height: 55px;
    margin: 30px auto 0;
    font-size: 1.5rem;
  }
}
/*top news*/
#top-news {
  width: 100%;
}
#top-news h2 {
  text-align: center;
  font-size: 3.6rem;
  color: #00479d;
  font-weight: 600;
  text-align: center;
  margin-bottom: 30px;
  letter-spacing: .05em;
}
#top-news h2:before {
  content: 'NEWS';
  font-weight: 500;
  font-size: 1.6rem;
  display: block;
  font-family: "Zen Maru Gothic New", sans-serif;
  letter-spacing: .1em;
}
#top-news .container .news-wrapper {
  width: 100%;
}
#top-news .news-item {
  width: 100%;
  font-size: 1.7rem;
  border-top: dashed 1px #3fb6ea;
  display: flex;
  align-items: center;
  padding: 30px 0;
  line-height: 1.8;
}
#top-news .news-item span {
  /*font-family: "Sen", sans-serif;*/
  display: inline-block;
  margin-right: 50px;
  color: #3fb6ea;
}
#top-news .news-item:last-child {
  border-bottom: dashed 1px #3fb6ea;
}
#top-news .news-item a {
  color: #333333;
  text-decoration: none;
}
#top-news .news-item a:hover {
  color: #3fb6ea;
}
@media screen and (max-width: 1100px) {
  #top-news .news-item {
    padding: 20px 0;
    line-height: 1.8;
  }
  #top-news .news-item span {
    font-size: 1.6rem;
    margin-right: 40px;
  }
}
@media screen and (max-width: 864px) {
  #top-news .container {
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  #top-news .container h2 {
    font-size: 3rem;
    margin-bottom: 15px;
  }
  #top-news .container h2:before {
    font-size: 1.5rem;
  }
  #top-news .container .news-wrapper {
    width: 100%;
  }
  #top-news .news-item {
    width: 100%;
    border-top: dashed 1px #3fb6ea;
    display: flex;
    align-items: center;
    padding: 25px 0;
  }
  #top-news .news-item span {
    display: inline-block;
    margin-right: 20px;
    color: #3fb6ea;
  }
  #top-news .news-item:last-child {
    border-bottom: dashed 1px #3fb6ea;
  }
  #top-news .news-item a {
    color: #333333;
    text-decoration: none;
  }
  #top-news .news-item a:hover {
    color: #3fb6ea;
  }
}
@media screen and (max-width: 480px) {
  #top-news .news-item {
    width: 100%;
    height: auto;
    border-radius: 10px;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 15px;
    margin-bottom: 20px;
  }
  #top-news .container h2 {
    font-size: 2.2rem;
    margin-bottom: 20px;
  }
  #top-news .container h2:before {
    font-size: 1.2rem;
  }
  #top-news .news-item {
    width: 100%;
    border-top: dashed 1px #3fb6ea;
    display: flex;
    align-items: flex-start;
    padding: 12px 0 15px;
    margin-bottom: 0;
  }
  #top-news .news-item span {
    font-size: 1.5rem;
    display: block;
    margin-right: 0;
  }
  #top-news .news-item p {
    width: 100%;
    font-size: 1.5rem;
  }
}
/*top-contents*/
#top-contents {
  width: 100%;
  /*background-color: #e9f4f9;*/
  /*background-color: #fff999;*/
  background-image: url("../images/top-contents-bg.png");
  background-repeat: repeat;
  z-index: -2;
}
#top-contents h2 {
  text-align: center;
  font-size: 3.6rem;
  color: #59493f;
  font-weight: 600;
  z-index: 10;
  margin-bottom: 40px;
  letter-spacing: .05em;
}
#top-contents h2:before {
  content: 'CONTENTS';
  font-weight: 500;
  font-size: 1.6rem;
  display: block;
  font-family: "Zen Maru Gothic New", sans-serif;
  letter-spacing: .1em;
}
#top-contents .container .contents-item {
  position: relative;
  width: 100%;
  margin-bottom: 50px;
}
#top-contents .container .contents-item:last-child {
  margin-bottom: 0;
}
#top-contents .container .contents-item.pokemon {
  margin-bottom: 10px;
}
#top-contents .container .note {
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: left;
  margin-bottom: 0;
}
#top-contents .container .contents-item figure {
  position: absolute;
  width: 30%;
  top: 50%;
  left: 0%;
  z-index: 10;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
#top-contents .container .contents-item.fig-right figure {
  left: auto;
  right: 0;
}
#top-contents .container .contents-item figure img {
  border-radius: 50px;
}
#top-contents .container .contents-item .detail-area {
  width: 80%;
  margin-left: auto;
  margin-right: 0;
  background-color: #ffffff;
  padding: 65px 65px 65px 200px;
  box-sizing: border-box;
  border-radius: 50px;
}
#top-contents .container .contents-item.fig-right .detail-area {
  margin-left: 0;
  margin-right: auto;
  padding: 75px 200px 75px 75px;
}
#top-contents .container .contents-item .detail-area h3 {
  color: #ff8300;
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 600;
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: dashed 1px #ff8300;
}
#top-contents .container .contents-item .detail-area p {
  line-height: 2;
  margin-bottom: 20px;
}
#top-contents .container .contents-item .detail-area p a {
  color: #00479d;
}
#top-contents .container .contents-item .detail-area p a:hover {
  color: #00a0e9;
}
#top-contents .container .contents-item .detail-area .btn {
  width: 300px;
  height: 55px;
  display: block;
}
#top-contents .container .contents-item .detail-area .btn a {
  /*background-color: #00479d;*/
  background: linear-gradient(45deg, #ff934c 35%, #fc686f);
  display: block;
  color: #fff;
  text-align: center;
  /*border: solid 2px #00479d;*/
  width: 100%;
  height: 100%;
  line-height: 50px;
  padding-bottom: 5px;
  font-weight: 500;
  border-radius: 28px;
  transition: .3s;
}
#top-contents .container .contents-item .detail-area .btn a:hover {
  transition: .3s;
  opacity: .8;
}
@media screen and (max-width: 864px) {
  #top-contents h2 {
    font-size: 3rem;
    margin-bottom: 20px;
  }
  #top-contents h2:before {
    font-size: 1.6rem;
    width: 100%;
  }
  #top-contents .container .contents-item {
    position: static;
    width: 100%;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  #top-contents .container .contents-item:last-child {
    margin-bottom: 0;
  }
  #top-contents .container .contents-item.pokemon {
    margin-bottom: 10px;
  }
  #top-contents .container .note {
    font-size: 1.2rem;
    line-height: 1.5;
    text-align: right;
    margin-bottom: 0;
  }
  #top-contents .container .contents-item figure {
    position: static;
    width: 40%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    z-index: 10;
    margin: 0 auto -50px;
  }
  #top-contents .container .contents-item.fig-right figure {
    left: auto;
    right: 0;
  }
  #top-contents .container .contents-item figure img {
    border-radius: 25px;
  }
  #top-contents .container .contents-item .detail-area {
    width: 100%;
    margin-left: auto;
    margin-right: 0;
    background-color: #ffffff;
    padding: 66px 50px 50px 50px;
    box-sizing: border-box;
    border-radius: 25px;
  }
  #top-contents .container .contents-item.fig-right .detail-area {
    padding: 65px 50px 50px 50px;
  }
  #top-contents .container .contents-item .detail-area h3 {
    color: #00479d;
    font-size: 2.4rem;
    line-height: 1.8;
    font-weight: 500;
    padding-bottom: 15px;
    margin-bottom: 12px;
    border-bottom: dashed 1px #00479d;
    text-align: center;
  }
  #top-contents .container .contents-item .detail-area p {
    line-height: 2;
    margin-bottom: 20px;
  }
  #top-contents .container .contents-item .detail-area p a {
    color: #00479d;
  }
  #top-contents .container .contents-item .detail-area p a:hover {
    color: #00a0e9;
  }
  #top-contents .container .contents-item .detail-area .btn {
    width: 300px;
    height: 55px;
    display: block;
    margin: 0 auto;
  }
}
@media screen and (max-width: 480px) {
  #top-contents h2 {
    font-size: 2.2rem;
    margin-bottom: 20px;
  }
  #top-contents h2:before {
    font-size: 1.2rem;
    width: 100%;
  }
  #top-contents .container .contents-item {
    margin-bottom: 30px;
  }
  #top-contents .container .contents-item .detail-area {
    padding: 60px 20px 20px 20px;
  }
  #top-contents .container .contents-item.fig-right .detail-area {
    padding: 60px 20px 20px 20px;
  }
  #top-contents .container .contents-item figure {
    width: 70%;
    margin: 0 auto -40px;
  }
  #top-contents .container .contents-item .detail-area h3 {
    font-size: 1.7rem;
    line-height: 1.4;
  }
  #top-contents .container .contents-item .detail-area p {
    line-height: 1.8;
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
  #top-contents .container .contents-item .detail-area .btn {
    width: 100%;
    height: 50px;
    display: block;
    margin: 0 auto;
  }
  #top-contents .container .contents-item .detail-area .btn a {
    font-size: 1.5rem;
    line-height: 45px;
    padding-bottom: 5px;
    font-weight: 500;
    border-radius: 28px;
    transition: .3s;
  }
  #top-contents .container .note {
    font-size: 1rem;
    line-height: 1.5;
    text-align: right;
    margin-bottom: 0;
  }
}
/*top checkup*/
#top-checkup {
  width: 100%;
  z-index: 1;
  background-image: url("../images/top-checkup-bg.png");
  background-repeat: repeat;
}
#top-checkup h2 {
  text-align: center;
  font-size: 3.6rem;
  color: #00479d;
  font-weight: 600;
  z-index: 10;
  margin-bottom: 20px;
  letter-spacing: .05em;
}
#top-checkup h2:before {
  content: 'CHECKUP';
  font-weight: 500;
  font-size: 1.6rem;
  display: block;
  font-family: "Zen Maru Gothic New", sans-serif;
  letter-spacing: .1em;
}
@media screen and (max-width: 864px) {
  #top-checkup {
    background-size: 40%;
  }
  #top-checkup h2 {
    font-size: 3rem;
    margin-bottom: 15px;
  }
  #top-checkup h2:before {
    font-size: 1.6rem;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  #top-checkup {
    width: 100%;
  }
  #top-checkup h2 {
    font-size: 2.2rem;
    margin-bottom: 10px;
  }
  #top-checkup h2:before {
    font-size: 1.2rem;
  }
}
#top-checkup dl {
  margin-bottom: 60px;
  text-align: center;
  line-height: 2;
}
#top-checkup dl dt {
  color: #00a0e9;
}
#top-checkup .checkup-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#top-checkup .checkup-wrapper .checkup-item {
  width: 31%;
  margin-bottom: 3.5%;
}
#top-checkup .checkup-wrapper .checkup-item a {
  display: block;
}
#top-checkup .checkup-wrapper .checkup-item a img {
  margin-bottom: 15px;
  transition: .3s;
  border-radius: 50px;
}
#top-checkup .checkup-wrapper .checkup-item a:hover img {
  transition: .3s;
  opacity: .8;
}
#top-checkup .checkup-wrapper .checkup-item a p {
  line-height: 1.5;
  font-weight: 400;
  text-align: center;
  transition: .3s;
  color: #333;
}
#top-checkup .checkup-wrapper .checkup-item a:hover p {
  color: #3fb6ea;
  transition: .3s;
  opacity: .8;
}
#top-checkup .checkup-wrapper .checkup-item:nth-child(4), #top-checkup .checkup-wrapper .checkup-item:nth-child(5), #top-checkup .checkup-wrapper .checkup-item:nth-child(6) {
  margin-bottom: 0;
}
@media screen and (max-width: 864px) {
  #top-checkup dl {
    margin-bottom: 45px;
  }
  #top-checkup dl dt {
    font-size: 1.6rem;
    color: #00a0e9;
  }
  #top-checkup dl dd {
    font-size: 1.6rem;
  }
  #top-checkup .checkup-wrapper .checkup-item a img {
    margin-bottom: 15px;
    transition: .3s;
    border-radius: 25px;
  }
  #top-checkup .checkup-wrapper .checkup-item p {
    line-height: 1.5;
    text-align: center;
    transition: .3s;
    color: #333;
    text-shadow: 0px 0px 5px #ffffff;
  }
}
@media screen and (max-width: 480px) {
  #top-checkup .checkup-wrapper .checkup-item {
    width: 48.5%;
    margin-bottom: 30px;
  }
  #top-checkup dl {
    margin-bottom: 25px;
    line-height: 2;
  }
  #top-checkup dl dt {
    font-size: 1.5rem;
  }
  #top-checkup dl dd {
    font-size: 1.5rem;
  }
  #top-checkup .checkup-wrapper .checkup-item a img {
    margin-bottom: 8px;
  }
  #top-checkup .checkup-wrapper .checkup-item a p {
    font-size: 1.3rem;
    line-height: 1.5;
    text-align: left;
  }
  #top-checkup .checkup-wrapper .checkup-item:nth-child(4) {
    margin-bottom: 3%;
  }
}
/*top movie*/
#top-movie {
  width: 100%;
}
#top-movie h2 {
  text-align: center;
  font-size: 3.6rem;
  color: #00479d;
  font-weight: 600;
  z-index: 10;
  margin-bottom: 50px;
  letter-spacing: .05em;
}
#top-movie h2:before {
  content: 'MOVIE';
  font-weight: 500;
  font-size: 1.6rem;
  display: block;
  font-family: "Zen Maru Gothic New", sans-serif;
  letter-spacing: .1em;
}
@media screen and (max-width: 864px) {
  #top-movie h2 {
    font-size: 3rem;
  }
  #top-movie h2:before {
    font-size: 1.5rem;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  #top-movie .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #top-movie h2 {
    font-size: 2.2rem;
    margin-bottom: 20px;
  }
  #top-movie h2:before {
    font-size: 1.2rem;
    width: 100%;
  }
}
#top-movie .container {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px;
}
#top-movie .container .movie-item {
  width: 48%;
}
#top-movie .container .movie-item div {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  border: none;
  margin-bottom: 20px;
}
#top-movie .container .movie-item div iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  display: block;
  border-radius: 40px;
}
#top-movie .container .movie-item p {
  text-align: center;
  line-height: 1.5;
  color: #333;
}
@media screen and (max-width: 864px) {
  #top-movie .container {
    margin-bottom: 40px;
  }
  #top-movie .container .movie-item div iframe {
    border-radius: 25px;
  }
}
@media screen and (max-width: 480px) {
  #top-movie .container {
    margin-bottom: 30px;
  }
  #top-movie .container .movie-item {
    width: 100%;
    margin-bottom: 30px;
  }
  #top-movie .container .movie-item:last-child {
    margin-bottom: 0;
  }
  #top-movie .container .movie-item div {
    margin-bottom: 10px;
  }
  #top-movie .container .movie-item p {
    text-align: left;
    line-height: 1.5;
    font-size: 1.4rem;
  }
}
/*sponsor*/
#sponsor {
  padding: 70px 0 80px;
  background-image: url("../images/sponsor-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}
#sponsor .container dl {
  /*display: flex;*/
  text-align: center;
  margin-bottom: 30px;
  line-height: 2;
  width: 100%;
}
#sponsor .container dl dt {
  /*width: 5em;*/
  font-weight: 600;
}
#sponsor .container dl dd {
  font-weight: 400;
}
#sponsor .container dl dd {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
}
#sponsor .container dl dd a {
  color: #333;
}
#sponsor .container dl dd a:hover {
  color: #3fb6ea;
}
#sponsor .container dl:first-child dt {
  font-weight: 600;
}
@media screen and (max-width: 1024px) {
  #sponsor {
    padding: 60px 0;
  }
  #sponsor .container dl {
    margin-bottom: 25px;
    line-height: 2.5;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 600px) {
  #sponsor {
    padding: 30px 0;
  }
  #sponsor .container dl {
    text-align: left;
    margin-bottom: 15px;
    line-height: 2;
    font-size: 1.4rem;
  }
  #sponsor .container dl dt {
    width: 100%;
    margin-bottom: 0;
  }
  #sponsor .container dl dd {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 0;
  }
}
/*banner*/
aside {
  padding-top: 40px;
}
aside .bnr-wrapper {
  display: flex;
  justify-content: space-between;
}
aside .bnr-wrapper a {
  width: 24%;
}
aside .bnr-wrapper a:hover {
  opacity: .8;
}
@media screen and (max-width: 480px) {
  aside {
    padding: 20px 0 0;
  }
  aside .bnr-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  aside .bnr-wrapper a {
    width: 48.5%;
    margin-bottom: 3%;
  }
  aside .bnr-wrapper a:nth-child(3), aside .bnr-wrapper a:nth-child(4) {
    margin-bottom: 0;
  }
}
/*footer*/
footer {
  background-color: #082a54;
  padding: 70px 0 0;
}
footer .ex-container {
  display: flex;
  justify-content: space-between;
}
footer .ex-container .ft-sitename {
  width: 280px;
}
footer .ex-container .ft-sitename h3 {
  width: 100%;
  margin-bottom: 30px;
}
footer .ex-container .ft-sitename h3 a {
  display: block;
  transition: .3s;
}
footer .ex-container .ft-sitename h3 a:hover {
  opacity: .8;
  transition: .3s;
}
footer .ex-container .ft-sitename div a {
  display: inline-block;
  width: 40px;
  margin-right: 15px;
}
footer .ex-container .ft-sitename div a:hover {
  opacity: .8;
}
footer .ex-container nav {
  display: flex;
  justify-content: flex-end;
  padding-bottom: 70px;
  width: calc(100% - 300px);
}
footer .ex-container nav.sp-only {
  display: none;
}
footer .ex-container nav ul {
  margin-right: 5%;
}
footer .ex-container nav ul:last-child {
  margin-right: 0;
}
footer .ex-container nav ul li {
  line-height: 1.8;
  margin-bottom: 20px;
}
footer .ex-container nav ul li a {
  color: #fff;
}
footer .ex-container nav ul li a:hover {
  color: #3fb6ea;
}
#copyright {
  border-top: solid 1px #395576;
  text-align: center;
  padding: 28px;
  color: #8d9caf;
  width: 100%;
  background-color: #082a54;
}
#copyright small {
  font-size: 1.3rem;
  color: #8d9caf;
}
#copyright small span {
  font-family: Verdana, "Droid Sans" !important;
  color: #8d9caf !important;
}
@media screen and (max-width: 1400px) {
  footer .ex-container .ft-sitename {
    width: 260px;
  }
  footer .ex-container nav {
    display: flex;
    justify-content: flex-end;
    padding-bottom: 70px;
    width: calc(100% - 280px);
  }
}
@media screen and (max-width: 1280px) {
  footer .ex-container .ft-sitename {
    width: 240px;
  }
  footer .ex-container .ft-sitename div a {
    display: inline-block;
    width: 35px;
    margin-right: 15px;
  }
  footer .ex-container nav {
    display: flex;
    justify-content: flex-end;
    padding-bottom: 70px;
    width: calc(100% - 260px);
  }
  footer .ex-container nav ul {
    margin-right: 3%;
  }
  footer .ex-container nav ul li {
    line-height: 1.8;
    margin-bottom: 15px;
    font-size: 1.5rem;
  }
  #copyright {
    padding: 20px;
  }
  #copyright small {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 1100px) {
  footer .ex-container .ft-sitename {
    width: 210px;
  }
  footer .ex-container .ft-sitename div a {
    display: inline-block;
    width: 30px;
    margin-right: 10px;
  }
  footer .ex-container nav {
    display: flex;
    justify-content: flex-end;
    padding-bottom: 70px;
    width: calc(100% - 230px);
  }
}
@media screen and (max-width: 1024px) {
  footer {
    padding: 60px 0;
  }
  footer .ex-container {
    display: flex;
    justify-content: space-between;
  }
  footer .ex-container .ft-sitename h3 {
    margin-bottom: 15px;
  }
  footer .ex-container .ft-sitename div a {
    display: inline-block;
    width: 35px;
    margin-right: 15px;
  }
  footer .ex-container nav {
    padding-bottom: 60px;
    display: flex;
    justify-content: space-between;
  }
  footer .ex-container nav ul {
    margin-right: 50px;
    font-size: 1.5rem;
  }
  footer .ex-container nav ul li {
    line-height: 2.5;
  }
  #copyright {
    padding: 25px 3%;
  }
  #copyright small {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 864px) {
  footer {
    padding: 60px 0 0;
  }
  footer .ex-container {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  footer .ex-container nav {
    width: 100%;
  }
  footer .ex-container .ft-sitename {
    width: 100%;
    display: flex;
    align-items: center;
    margin-bottom: 10px;
  }
  footer .ex-container .ft-sitename h3 {
    width: 35%;
    margin-right: 20px;
    margin-bottom: 10px;
  }
  footer .ex-container .ft-sitename div a {
    display: inline-block;
    width: 30px;
    margin-right: 15px;
  }
  footer .ex-container nav {
    padding-bottom: 60px;
  }
  footer .ex-container nav ul {
    margin-right: 0;
    font-size: 1.5rem;
  }
  footer .ex-container nav ul li {
    line-height: 2.5;
  }
  #copyright small {
    font-size: 1.1rem;
  }
  #copyright {
    padding: 15px 3% 20px;
  }
}
@media screen and (max-width: 480px) {
  footer {
    padding: 30px 0 0;
  }
  footer .ex-container {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
  }
  footer .ex-container .ft-sitename {
    width: 100%;
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
  }
  footer .ex-container nav {
    width: 100%;
    padding-bottom: 20px;
    flex-direction: column;
    justify-content: flex-start;
  }
  footer .ex-container nav ul {
    margin-right: 0;
    font-size: 1.3rem;
    width: 100%;
  }
  footer .ex-container nav ul li {
    line-height: 1.8;
    margin-bottom: 5px;
    font-size: 1.4rem;
  }
  footer .ex-container .ft-sitename h3 {
    width: 55%;
    margin-right: 0;
    margin-bottom: 0;
  }
  footer .ex-container .ft-sitename h3 span {
    font-size: 1.1rem;
    display: inline-block;
    padding-top: 3px;
  }
  footer .ex-container .ft-sitename div a {
    display: inline-block;
    width: 25px;
    margin-right: 10px;
  }
  footer .ex-container nav.sp-only {
    display: flex;
    justify-content: space-between;
  }
  footer .ex-container nav.pc-only {
    display: none;
  }
  #copyright {
    padding: 15px 3% 20px;
    text-align: center;
  }
  #copyright small {
    font-size: 1rem;
  }
}
/*=================
下層
==================*/
#low-header {
  width: 100%;
  background-image: url("../img/slide_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  /*background-color:#beebf7;*/
}
.low #small-header {
  margin-bottom: 0;
}
/*下層mv*/
.low-mv {
  width: 100%;
  height: 265px;
  margin-bottom: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.low-mv h2 {
  color: #ffffff;
  font-size: 3.2rem;
  text-align: center;
  font-weight: 600;
  line-height: 1.3;
  padding: 0 1em;
}
.low-mv.obento {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../images/low-mv-photocontest.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.low-mv.zoorasia {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../images/low-mv-zoorasia.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.low-mv.character {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../images/low-mv-character.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.low-mv.hamigaki-daisakusen {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../images/low-mv-hamigaki-daisakusen.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.low-mv.machigai {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../images/low-mv-machigai.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.low-mv.crossword {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../images/low-mv-quiz.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.low-mv.movie {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../img/movie/mv.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.low-mv.common1 {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../img/low-mv1.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.low-mv.common2 {
  background: linear-gradient(90deg, rgba(9, 187, 254, 0.6), rgba(90, 66, 236, 0.6)), url("../img/low-mv2.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.low-mv.eshiritori {
  background-image: url("../img/eshiritori/mv.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.low-mv.ppap {
  background-image: url("../img/ppap2023/mv.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.low-mv.covid {
  background-image: url("../img/column/mv.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.low-mv.common3 {
  background-image: url("../img/low-mv3.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.breadlist {
  font-size: 1.3rem;
  padding-left: 30px;
  margin-bottom: 60px;
  color: #999;
}
.breadlist a {
  color: #999;
}
.breadlist a:hover {
  color: #3fb6ea;
}
.low-imagefig {
  width: 60%;
  margin: 0 auto 40px;
}
.low-imagefig img {
  border-radius: 25px;
}
.low-imagefig figcaption {
  font-size: 1.2rem;
  text-align: right;
  padding-top: 10px;
}
.low-main {
  padding-bottom: 20px;
}
.low-main section {
  margin-bottom: 80px;
}
.low-main h3 {
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1.5;
  padding: 22px 18px 20px 18px;
  background-color: #ecf5fc;
  border-left: solid 6px #00479d;
  margin-bottom: 30px;
  letter-spacing: .05em;
}
.low-main p {
  line-height: 2;
  margin-bottom: 30px;
}
.low .low-main section p:last-child {
  margin-bottom: 0;
}
.low-main .tbl-common {
  width: 100%;
  border: solid 1px #d9d9d9;
  border-bottom: none;
  line-height: 1.8;
}
.low-main .tbl-common tr {
  border-bottom: solid 1px #d9d9d9;
}
.low-main .tbl-common tr th {
  background-color: #f5f5f5;
  padding: 25px;
  width: 10em;
  text-align: left;
  font-weight: 400;
  vertical-align: middle;
}
.low-main .tbl-common tr td {
  padding: 25px;
  text-align: left;
  font-weight: 400;
}
.low-main .tbl-common a {
  color: #00479d;
  text-decoration: underline;
  transition: .3s;
}
.low-main .tbl-common a:hover {
  color: #00a0e9;
  text-decoration: none;
  transition: .3s;
}
.low-main p a {
  color: #00479d;
  text-decoration: underline;
  transition: .3s;
}
.low-main p a:hover {
  color: #00a0e9;
  text-decoration: none;
  transition: .3s;
}
.low .btn-more {
  width: 340px;
  line-height: 64px;
  height: 64px;
  border-radius: 32px;
  text-align: center;
  color: #ffffff;
  font-weight: 500;
  background-color: #009944;
  margin: 30px auto 0;
  display: block;
}
.low .btn-more:hover {
  color: #ffffff;
}
/*ボタン２個*/
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"], input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus, input[type="button"]::focus {
  outline-offset: -2px;
}
.low .btn-2row {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 50px auto 0;
  gap: 20px;
}
.low .btn-2row .btn-more {
  width: 340px;
  line-height: 64px;
  height: 64px;
  border-radius: 32px;
  text-align: center;
  color: #ffffff;
  font-weight: 500;
  background-color: #009944;
  margin: 0;
}
.low .btn-2row .btn-more:first-child {
  background-color: #9cc657;
}
.low .btn-2row .btn-more:hover {
  opacity: .8;
  color: #ffffff;
}
.low-main p .midashi {
  font-size: 1.8rem;
  font-weight: 600;
}
.low-main p .midashi:before {
  content: '■';
  padding-right: 3px;
  color: #00479d;
}
.low-main h4 {
  font-size: 1.8rem;
  margin-bottom: 20px;
  font-weight: 600;
  line-height: 1.5;
}
.low-main h4:before {
  content: '■';
  padding-right: 3px;
  color: #00479d;
}
.low-main h5 {
  line-height: 1.5;
  font-weight: 600;
  margin-bottom: 10px;
}
.low-main h6 {
  line-height: 1.5;
  font-weight: 400;
  margin-bottom: 5px;
}
.low-main .mb50 {
  margin-bottom: 50px;
}
.low-main .borderbox {
  width: 100%;
  border: solid 1px #d9d9d9;
  padding: 30px 35px;
}
.low-main .borderbox p {
  margin-bottom: 10px;
}
.low-main .borderbox ul {
  line-height: 2;
  margin-bottom: 10px;
}
.low-main .borderbox ul li {
  text-indent: -1em;
  margin-left: 1em;
}
.low-main .borderbox ul li ul {
  margin-bottom: 0;
}
/*.low-main .borderbox ul li ul li {
  text-indent: 0;
  margin-left: 0;
}*/
.low-main .borderbox .inner {
  margin-bottom: 15px;
}
.low-main p.mb0 {
  margin-bottom: 0;
}
.low-main ul.indent li {
  line-height: 2;
  text-indent: -1.5em;
  margin-left: 1.5em;
  margin-bottom: 0;
}
.low-main ul.indent a {
  color: #00479d;
  text-decoration: underline;
}
.low-main ul.indent a:hover {
  color: #3fb6ea;
  text-decoration: none;
}
.low-main ul.indent2 li {
  line-height: 2;
  text-indent: -1em;
  margin-left: 1em;
  margin-bottom: 0;
}
.low-main ul.indent2 a {
  color: #00479d;
  text-decoration: underline;
}
.low-main ul.indent2 a:hover {
  color: #3fb6ea;
  text-decoration: none;
}
/* ポケモンスマイルはみがき大作戦 */
.flow-wrapper {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
.flow-wrapper .flow-item {
  width: 23%;
}
.flow-wrapper .flow-item figure {
  margin-bottom: 15px;
}
.flow-wrapper .flow-item p {
  font-size: 1.5rem;
}
.dot-box {
  width: 100%;
  border: solid 4px #3cc8dc;
  border-radius: 20px;
  background: url("../images/dot-bg.png") no-repeat;
  background-size: cover;
  padding: 20px;
}
.dot-box .app-wrapper {
  justify-content: center;
  display: flex;
  align-items: stretch;
  width: 50%;
  margin: 20px auto;
  gap: 20px;
}
.dot-box p {
  text-align: center;
  font-size: 1.5rem;
}
figure.nurie {
  width: 70%;
  margin: 50px auto;
}
#pokemon-nurie {
  margin-top: -90px;
  padding-top: 90px;
}
@media screen and (max-width: 1100px) {
  #pokemon-nurie {
    margin-top: 0;
    padding-top: 0;
  }
}
@media screen and (max-width: 864px) {
  .flow-wrapper .flow-item p {
    line-height: 1.5;
  }
}
@media screen and (max-width: 480px) {
  .flow-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 10px;
  }
  .flow-wrapper .flow-item {
    width: 48.5%;
    margin-bottom: 20px;
  }
  .flow-wrapper .flow-item figure {
    margin-bottom: 10px;
  }
  .flow-wrapper .flow-item p {
    font-size: 1.3rem;
  }
  .dot-box {
    width: 100%;
    border: solid 4px #3cc8dc;
    border-radius: 20px;
    background: url("../images/dot-bg.png") no-repeat;
    background-size: cover;
    padding: 20px;
  }
  .dot-box .app-wrapper {
    justify-content: center;
    display: flex;
    align-items: stretch;
    width: 100%;
    margin: 20px auto;
    gap: 20px;
  }
  .dot-box p {
    text-align: center;
    font-size: 1.5rem;
  }
  figure.nurie {
    width: 100%;
    margin: 30px auto;
  }
}
/*まちがいさがしチャレンジ*/
figure.machigai {
  width: 70%;
  margin: 50px auto;
}
figure.machigai img{
  box-shadow: 0 0 15px rgba(0, 0, 0, .1);
}
figure.machigai figcaption {
  font-size: 1.5rem;
  text-align: right;
  padding-top: 15px;
}
@media screen and (max-width: 480px) {
  figure.machigai {
    width: 100%;
    margin: 30px auto;
  }
  figure.machigai figcaption {
    font-size: 1rem;
    text-align: right;
    padding-top: 10px;
  }
}
/*お弁当コンクール作品*/
.obento-list {
  width: 100%;
}
.obento-list .obento-item {
  display: flex;
  margin-bottom: 30px;
  border-bottom: dashed 1px #00479d;
  padding-bottom: 30px;
}
.obento-list .obento-item figure {
  width: 30%;
  margin-right: 30px;
}
.obento-list .obento-item figure img {
  border-radius: 15px;
}
.obento-list .obento-item dl {
  width: calc(70% - 30px);
  line-height: 2;
}
.obento-list .obento-item dl dt {
  font-weight: 600;
  font-size: 1.8rem;
  color: #00479d;
  margin-bottom: 10px;
}
@media screen and (max-width: 480px) {
  .obento-list .obento-item {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 20px;
    flex-direction: column;
    border-bottom: dashed 1px #00479d;
  }
  .obento-list .obento-item figure {
    width: 60%;
    margin: 0 auto 10px;
  }
  .obento-list .obento-item figure img {
    border-radius: 15px;
  }
  .obento-list .obento-item dl {
    width: 100%;
    line-height: 1.8;
  }
  .obento-list .obento-item dl dt {
    font-size: 1.6rem;
    margin-bottom: 5px;
    text-align: center;
  }
  .obento-list .obento-item dl dd {
    font-size: 1.5rem;
    margin-bottom: 0;
  }
}
/*フォトコンテスト作品*/
.photo-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.photo-list div {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 40px;
}
.photo-list div:nth-child(3n) {
  margin-right: 0;
}
.photo-list figure {
  margin-bottom: 10px;
}
.photo-list figure img {
  border-radius: 20px;
}
.photo-list div p {
  /*font-weight: 600;*/
  font-size: 1.7rem;
  /*color: #00479d;*/
  line-height: 1.5;
}
@media screen and (max-width: 480px) {
  figure.machigai {
    width: 100%;
    margin: 30px auto;
  }
  figure.machigai figcaption {
    font-size: 1rem;
    text-align: right;
    padding-top: 10px;
  }
  .photo-list div {
    width: 48.5%;
    margin-right: 3%;
    margin-bottom: 15px;
  }
  .photo-list div:nth-child(3n) {
    margin-right: 3%;
  }
  .photo-list div:nth-child(2n) {
    margin-right: 0;
  }
  .photo-list figure {
    margin-bottom: 5px;
  }
  .photo-list div p {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .photo-list figure img {
    border-radius: 10px;
  }
}
.note {
  font-size: 1.4rem;
  line-height: 1.8;
}
.note li {
  text-indent: -1.5em;
  margin-left: 1.5em;
}
/* 埋め込み動画ズーラシア */
.zoorasia-movie {
  width: 100%;
  background-color: #eee;
  border-radius: 20px;
  padding: 40px 20px;
	margin-bottom: 50px;
}
.zoorasia-movie:last-child{
	margin-bottom: 0;
}
.zoorasia-movie .inner {
  width: 70%;
  margin: 0 auto;
}
.zoorasia-movie .inner .movie-area {
  width: 100%;
  margin: 0 auto;
}
.zoorasia-movie .inner .video-wrapper {
  width: 100%;
  margin: 0 auto;
  max-width: 1000px;
}
.zoorasia-movie .inner .video-wrapper video {
  width: 100%;
}

.outstanding {
  color: #e60012;
  font-size: 1.8rem;
}
/*再生ボタン*/
.video-wrapper {
  position: relative;
  width: 60%;
  margin: 0 auto;
}
.video-wrapper video {
  width: 100%;
}
.video-wrapper .play-btn {
  display: block;
  width: 20%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  /*-webkit-transform: translateY(-50%) translateX(-50%);*/
}
.video-wrapper .play-btn.playActive {
  display: none;
}
.zoorasia-column {
  margin-bottom: 50px;
}
.zoorasia-column img {
  border-radius: 20px;
}
/*コラム*/
.image-center {
  width: 75%;
  margin: 0 auto;
}
.image-center.mb {
  margin-bottom: 50px;
}
.image-center h5 {
  text-align: center;
}
.image-center p {
  font-size: 1.4rem;
}
.image-center .youtube-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: 0;
  overflow: hidden;
  margin-bottom: 20px;
}
.image-center .youtube-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
}
.image-center img {
  border-radius: 10px;
}
.low-main ul.indent li {
  line-height: 2;
  text-indent: -1.5em;
  margin-left: 1.5em;
  margin-bottom: 0;
}
.low-main small.red {
  color: #ff0000;
  font-size: 1.4rem;
}
.indent.mb {
  margin-bottom: 20px;
}
.indent2.mb {
  margin-bottom: 20px;
}
.low-main .img-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.low-main .img-list li {
  width: 31%;
  text-align: center;
}
.low-main .img-list li img {
  width: 100%;
  border-radius: 10px;
}
.low-main .img-list li p {
  font-size: 1.6rem;
  font-weight: 600;
  margin-top: 15px;
  line-height: 1.5;
}
@media screen and (max-width: 864px) {
  .low-main .img-list {
    justify-content: space-between;
  }
  .low-main .img-list li {
    width: 31.5%;
    text-align: left;
  }
  .low-main .img-list li p {
    font-size: 1.4rem;
    margin-top: 15px;
    line-height: 1.3;
  }
}
@media screen and (max-width: 480px) {
  /* 埋め込み動画ズーラシア */
  .zoorasia-movie {
    padding: 20px 20px 15px;
	  margin-bottom: 25px;
  }
  .zoorasia-movie .inner {
    width: 80%;
    margin: 0 auto;
  }
  .zoorasia-movie .inner .movie-area {
    width: 100%;
    margin: 0 auto;
  }
  .zoorasia-movie .inner .video-wrapper {
    width: 100%;
    margin: 0 auto;
    max-width: 480px;
  }
  .zoorasia-movie .inner .video-wrapper video {
    width: 100%;
  }
  .zoorasia-column {
    margin-bottom: 25px;
  }
  .zoorasia-column img {
    border-radius: 20px;
  }
  .outstanding {
    font-size: 1.6rem;
  }
}
/*歯みがき関連動画*/
.movie-list {
  display: flex;
  flex-wrap: wrap;
}
.movie-list .movie-item {
  width: 48.5%;
  margin-bottom: 5%;
}
.movie-list .movie-item:nth-child(even) {
  margin-left: 3%;
}
.movie-list .movie-item:nth-child(7), .movie-list .movie-item:nth-child(8) {
  margin-bottom: 0;
}
.movie-list .movie-item div {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: 0;
  overflow: hidden;
  margin-bottom: 15px;
}
.movie-list .movie-item div img {
  border-radius: 20px;
}
.movie-list .movie-item div iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 25px;
}
.movie-list .movie-item p.ttl {
  font-size: 1.7rem;
  line-height: 1.8;
  font-weight: 400;
}
/*関連リンク*/
.low-main .links ul.indent2 a {
  color: #00479d;
  text-decoration: none;
}
.low-main .links ul.indent2 a:hover {
  color: #3fb6ea;
  text-decoration: none;
}
@media screen and (max-width: 1024px) {
  .low-mv {
    margin-bottom: 3%;
  }
  .low-mv h2 {
    font-size: 3rem;
  }
  .low-main {
    padding-bottom: 0;
  }
  .low-main section {
    margin-bottom: 70px;
  }
  .breadlist {
    font-size: 1.2rem;
    padding-left: 3%;
    margin-bottom: 3%;
  }
}
@media screen and (max-width: 600px) {
  .low-mv {
    width: 100%;
    height: 150px;
    margin-bottom: 25px;
  }
  .low-imagefig {
    width: 100%;
    margin: 0 auto 20px;
  }
  .low-imagefig img {
    border-radius: 25px;
  }
  .low-imagefig figcaption {
    font-size: 1rem;
    text-align: right;
    padding-top: 10px;
  }
  .low-mv h2 {
    font-size: 2.2rem;
  }
  .low-mv h2.line2 {
    font-size: 2rem;
    line-height: 1.3;
  }
  .low-main {
    padding-bottom: 0;
  }
  .breadlist {
    display: none;
  }
  .low-main section {
    margin-bottom: 40px;
  }
  .low-main h3 {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.3;
    padding: 15px 10px;
    border-left: solid 5px #00479d;
    margin-bottom: 15px;
  }
  .low-main p {
    line-height: 1.8;
    margin-bottom: 15px;
    font-size: 1.5rem;
  }
  .low-main h4 {
    font-size: 1.6rem;
    margin-bottom: 10px;
    line-height: 1.3;
  }
  .low-main h5 {
    font-size: 1.4rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .low-main h6 {
    font-size: 1.4rem;
    line-height: 1.5;
    margin-bottom: 5px;
  }
  .low-main .tbl-common tr th {
    padding: 15px 12px;
    width: 9em;
    font-size: 1.3rem;
    line-height: 1.5;
    vertical-align: middle;
  }
  .low-main .tbl-common tr td {
    padding: 15px;
    padding: 15px 12px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .low-main .mb50 {
    margin-bottom: 25px;
  }
  .low-main .borderbox {
    padding: 15px;
  }
  .low-main .borderbox p {
    margin-bottom: 10px;
    line-height: 1.5;
    font-size: 1.3rem;
  }
  .low-main .borderbox ul {
    line-height: 1.5;
    margin-bottom: 10px;
    font-size: 1.3rem;
  }
  .low-main .borderbox .inner {
    margin-bottom: 10px;
  }
  .low .btn-more {
    width: 100%;
    line-height: 60px;
    height: 60px;
    border-radius: 30px;
    margin: 20px auto 0;
  }
  .low .btn-2row {
    display: flex;
    justify-content: center;
    flex-direction: column;
    margin: 20px auto 0;
    gap: 0;
  }
  .low .btn-2row .btn-more {
    width: 100%;
    line-height: 60px;
    height: 60px;
    border-radius: 30px;
    margin: 0 auto;
  }
  .low .btn-2row .btn-more:first-child {
    margin-bottom: 10px;
  }
  .movie-area {
    width: 100%;
    margin: 20px auto;
  }
  .movie-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .movie-list .movie-item {
    width: 100%;
    margin-bottom: 30px;
  }
  .movie-list .movie-item:nth-child(even) {
    margin-left: 0;
  }
  .movie-list .movie-item:nth-child(7) {
    margin-bottom: 30px;
  }
  .movie-list .movie-item div {
    position: relative;
    padding-bottom: 56.25%;
    width: 100%;
    height: 0;
    overflow: hidden;
    margin-bottom: 8px;
  }
  .movie-list .movie-item p.ttl {
    font-size: 1.3rem;
    line-height: 1.3;
  }
  .image-center {
    width: 100%;
    margin: 0 auto;
  }
  .image-center.mb {
    margin-bottom: 30px;
  }
  .image-center h5 {
    text-align: left;
  }
  .low-main .image-center h5 {
    margin-bottom: 5px;
  }
  .image-center p {
    font-size: 1.2rem;
  }
  .image-center .youtube-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    width: 100%;
    height: 0;
    overflow: hidden;
    margin-bottom: 10px;
  }
  .low-main .img-list {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .low-main .img-list li {
    width: 48.5%;
    text-align: left;
    margin-bottom: 20px;
  }
  .low-main .img-list li:last-child {
    margin-bottom: 0;
  }
  .low-main .img-list li:first-child {
    margin-right: 3%;
  }
  .low-main .img-list li p {
    font-size: 1.3rem;
    margin-top: 8px;
  }
  .low-main ul.indent li {
    line-height: 1.8;
    font-size: 1.5rem;
    margin-bottom: 0;
  }
  .low-main p.note {
    font-size: 1.3rem;
    line-height: 1.8;
  }
}
.low-main .comment {
  background-color: #fdf5f7;
  width: 100%;
  text-align: center;
  padding: 25px 20px;
}
/*応募フォーム*/
form .form-tbl input[type="text"] {
  -webkit-appearance: none;
  width: 95%;
  padding: 10px;
  display: block;
  line-height: 1.8;
  border-radius: 5px;
  border: solid 1px #999;
}
form .form-tbl textarea {
  -webkit-appearance: none;
  width: 95%;
  line-height: 1.8;
  height: 18em;
  padding: 10px;
  display: block;
  border-radius: 5px;
  border: solid 1px #999;
}
form .form-tbl .select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid #999;
  border-radius: 5px;
  padding: 10px 25px 10px 10px;
  font-size: 1.6rem;
  cursor: pointer;
  /*font-family: "Zen Kaku Gothic New", sans-serif;*/
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #333;
  /*width:100%;*/
}
form .form-tbl .select:disabled {
  pointer-events: none;
  background-color: #f1f1f1;
  color: #aaa;
}
form .form-tbl small, small.red {
  color: #e60012;
}
form .form-tbl .select-wrapper {
  position: relative;
  display: inline-block;
  /*width:100%;*/
}
form .form-tbl .select-wrapper::after {
  content: '';
  position: absolute;
  border: 4px solid #333;
  border-bottom: 0;
  border-left-color: transparent;
  border-right-color: transparent;
  top: calc(50% - 3px);
  right: 10px;
  width: 0;
  height: 0;
}
form .form-tbl p.other {
  margin: 20px 0 5px;
  font-size: 1.5rem;
}
form .form-tbl p.another {
  margin: 0 0 5px;
  font-size: 1.5rem;
}
ul.indent_2 li {
  text-indent: -1em;
  margin-left: 1em;
}
/*「ファイルを選択」ボタンのスタイル*/
form .form-tbl .file-button {
  font-size: 85%;
  width: 95%;
}
.file-button::file-selector-button {
  font-size: 1.4rem;
  border: 0;
  border: 1px solid #999;
  padding: 8px 16px;
  border-radius: 5px;
  cursor: pointer;
  background-color: #f6f6f6;
}
.form-tbl {
  border-top: 1px solid #d9d9d9;
  border-left: 1px solid #d9d9d9;
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  margin-bottom: 40px;
  box-sizing: border-box;
  table-layout: fixed;
  line-height: 1.8;
}
.form-tbl th {
  border-bottom: 1px solid #d9d9d9;
  background-color: #f5f5f5;
  font-weight: 400;
  padding: 25px 10px 25px 20px;
  text-align: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 300px;
  vertical-align: middle;
}
.form-tbl td {
  border-bottom: 1px solid #d9d9d9;
  border-right: 1px solid #d9d9d9;
  padding: 25px 10px 25px 20px;
  vertical-align: middle;
}
.form-tbl td a {
  text-decoration: underline;
  color: #009944;
}
.form-tbl td a:hover {
  text-decoration: none;
}
/*ボタン１つ*/
.form-btn input[type="submit"] {
  /*font-family: "Zen Kaku Gothic New", sans-serif;*/
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  width: 340px;
  margin: 0 auto;
  display: block;
  color: #fff;
  /*background-color: #00479d;*/
  background: linear-gradient(45deg, #00c0fa 35%, #015eea);
  height: 64px;
  line-height: 60px;
  border-radius: 64px;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10px;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border: none;
}
.form-btn input[type="submit"]:hover {
  opacity: .8;
  /*background-color: #ffffff;
  color: #00479d;
  border: solid 2px #00479d;*/
  transition: .3s;
}
.form-btn input[type="button"] {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  font-weight: 400;
  width: 340px;
  margin: 0 auto;
  display: block;
  color: #fff;
  /*background-color: #00479d;*/
  background: linear-gradient(45deg, #00c0fa 35%, #015eea);
  height: 64px;
  line-height: 60px;
  border-radius: 64px;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10px;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border: none;
}
.form-btn input[type="button"]:hover {
  /*background-color: #ffffff;
  color: #00479d;
  border: solid 2px #00479d;*/
  opacity: .8;
  transition: .3s;
}
/*ボタン２つ*/
.btn-2row {
  text-align: center;
  display: flex;
  justify-content: center;
}
.btn-2row input[type="submit"] {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  width: 340px;
  margin: 0;
  display: block;
  color: #fff;
  /*background-color: #00479d;*/
  background: linear-gradient(45deg, #00c0fa 35%, #015eea);
  height: 64px;
  line-height: 60px;
  border-radius: 64px;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10px;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border: none;
}
.btn-2row input[type="submit"]:hover {
  /*background-color: #ffffff;
  color: #00479d;
  border: solid 2px #00479d;*/
  opacity: .8;
  transition: .3s;
}
.btn-2row input[type="button"] {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  width: 340px;
  margin-right: 20px;
  display: block;
  color: #fff;
  background-color: #8d9caf;
  background: linear-gradient(45deg, #c7ced8 35%, #9faab7);
  height: 64px;
  line-height: 60px;
  border-radius: 64px;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 10px;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border: none;
}
.btn-2row input[type="button"]:hover {
  opacity: .8;
  transition: .3s;
}
.require {
  color: #FF0000;
}
.error_messe {
  color: #FF0000;
}
/*送信後トップに戻るボタン*/
.btn-top {
  display: block;
  margin: 40px auto 0;
  width: 340px;
  height: 64px;
}
.btn-top a {
  background-color: #00479d;
  display: block;
  color: #fff;
  text-align: center;
  border: solid 2px #00479d;
  width: 100%;
  height: 100%;
  line-height: 60px;
  font-weight: 500;
  border-radius: 64px;
  transition: .3s;
}
.btn-top a:hover {
  background-color: #ffffff;
  color: #00479d;
  border: solid 2px #00479d;
  transition: .3s;
}
/*placeholder*/ ::placeholder {
  color: #cccccc;
}
/* 旧Edge対応 */ ::-ms-input-placeholder {
  color: #cccccc;
}
/* IE対応 */ :-ms-input-placeholder {
  color: #cccccc;
}
@media screen and (max-width: 480px) {
  .btn-top {
    display: block;
    margin: 30px auto 0;
    width: 94%;
    height: 60px;
  }
  .btn-top a {
    background-color: #00479d;
    line-height: 55px;
    margin: 30px auto 0;
    font-size: 1.5rem;
  }
  .btn-2row {
    text-align: center;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  .btn-2row input[type="submit"] {
    font-size: 1.4rem;
    width: 100%;
    margin: 0 auto;
    height: 60px;
    line-height: 60px;
    border-radius: 60px;
  }
  .btn-2row input[type="button"] {
    font-size: 1.4rem;
    width: 100%;
    margin: 0 auto 10px;
    height: 60px;
    line-height: 60px;
    border-radius: 60px;
  }
  .form-tbl {
    font-size: 1.5rem;
    line-height: 1.5;
    margin-bottom: 15px;
  }
  .form-tbl th {
    padding: 15px;
    border-right: 1px solid #d9d9d9;
    width: 100%;
    text-align: center;
    display: block;
  }
  .form-tbl td {
    width: 100%;
    padding: 15px;
    display: block;
    text-align: center;
  }
  form .form-tbl input[type="text"], form textarea {
    width: 100%;
    padding: 10px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  form .form-tbl .select {
    width: 100%;
  }
  form .form-tbl .select-wrapper {
    width: 100%;
  }
  /*フォームボタン１個*/
  .form-btn input[type="submit"] {
    -webkit-appearance: none;
    font-size: 1.5rem;
    width: 100%;
    height: 60px;
    line-height: 60px;
    border-radius: 60px;
  }
  .form-btn input[type="button"] {
    -webkit-appearance: none;
    font-size: 1.5rem;
    width: 100%;
    height: 60px;
    line-height: 60px;
    border-radius: 60px;
  }
}
/*応募終了告知*/
.blueborder-box {
  width: 100%;
  padding: 20px 25px;
  border: solid 4px #cccccc;
  border-radius: 20px;
}
.blueborder-box p {
  color: #e60012;
  font-size: 1.8rem;
}
.blueborder-box p a {
  color: #e60012;
  text-decoration: none;
}
@media screen and (max-width: 480px) {
  .blueborder-box {
    padding: 13px 18px;
    border: solid 3px #cccccc;
    border-radius: 15px;
  }
  .blueborder-box p {
    font-size: 1.5rem;
  }
}