@charset "UTF-8";
.badgeflow .text, .titletext .text, .calloutset .text, .mediaset .text {
  font-size: 16px;
  line-height: 2;
  color: #000;
}
@media (max-width: 767px) {
  .badgeflow .text, .titletext .text, .calloutset .text, .mediaset .text {
    font-size: 14px;
  }
}

.miniSurveyView table.formBlockSurveyTable tr:last-child td input[type=submit], .linkbtn a, .linkset a, .mediaset .btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 74px;
  background: #ffb415;
  color: #fff;
  text-decoration: none;
  transition: all 0.5s ease-out;
  line-height: 1.3;
  border-radius: 10px;
  background: #ffb415;
  color: #ffffff;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.08em;
  transition: all 0.5s ease-out;
}
.miniSurveyView table.formBlockSurveyTable tr:last-child td input[type=submit]:hover, .linkbtn a:hover, .linkset a:hover, .mediaset .btn a:hover {
  opacity: 0.6;
}
@media (max-width: 767px) {
  .miniSurveyView table.formBlockSurveyTable tr:last-child td input[type=submit], .linkbtn a, .linkset a, .mediaset .btn a {
    font-size: 14px;
    height: 60px;
  }
}
.miniSurveyView table.formBlockSurveyTable tr:last-child td input[type=submit]::after, .linkbtn a::after, .linkset a::after, .mediaset .btn a::after {
  content: "";
  width: 20px;
  height: 8px;
  position: absolute;
  right: 20px;
  background: url(../images/arrow3.webp);
}

/*
//img border-radius--------------------
.mediaset .imgbox img,
.calloutset.col4 .image img,
.flowset .image img,
.badgeflow .imgbox img {
  border-radius: 6px;
}
.calloutset.col3 .image img,
.calloutset.col2 .image img,
.fullimg img {
  border-radius: 8px;
}
 */
.mediaset .text iframe, .calloutset .text iframe, .flowset .text iframe, .badgeflow .text iframe, .listset li iframe, .txtset iframe {
  width: 100%;
}

.mediaset .text > table,
.calloutset .text > table,
.flowset .text > table,
.badgeflow .text > table {
  width: 100%;
}
.mediaset .text > table th,
.mediaset .text > table td,
.calloutset .text > table th,
.calloutset .text > table td,
.flowset .text > table th,
.flowset .text > table td,
.badgeflow .text > table th,
.badgeflow .text > table td {
  padding: 5px 10px;
  font-size: 13px;
  border: 1px solid #f8f8f8;
}
.mediaset .text > table th,
.calloutset .text > table th,
.flowset .text > table th,
.badgeflow .text > table th {
  min-width: 120px;
  background: #eeeeee;
  font-weight: bold;
}
.mediaset .linkbtn,
.calloutset .linkbtn,
.flowset .linkbtn,
.badgeflow .linkbtn {
  width: 100%;
  margin-bottom: 0;
}
.mediaset .linkbtn:not(:last-child),
.calloutset .linkbtn:not(:last-child),
.flowset .linkbtn:not(:last-child),
.badgeflow .linkbtn:not(:last-child) {
  margin-bottom: 10px;
}
.mediaset .linkbtn a,
.calloutset .linkbtn a,
.flowset .linkbtn a,
.badgeflow .linkbtn a {
  height: 50px;
  min-height: 50px;
  font-size: 16px;
}
.mediaset .listset,
.calloutset .listset,
.flowset .listset,
.badgeflow .listset {
  width: 100%;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .mediaset table th,
  .mediaset table td,
  .calloutset table th,
  .calloutset table td,
  .flowset table th,
  .flowset table td,
  .badgeflow table th,
  .badgeflow table td {
    padding: 3px 7px;
  }
}

.mediaset .linkbtn, .badgeflow .linkbtn {
  width: 100%;
  max-width: 270px;
  margin-right: 0;
  margin-bottom: 0;
}
.mediaset .linkbtn:not(:last-child), .badgeflow .linkbtn:not(:last-child) {
  margin-bottom: 10px;
}
.mediaset .linkbtn a, .badgeflow .linkbtn a {
  height: 70px;
}
.mediaset table th, .badgeflow table th {
  width: 250px;
}
@media (max-width: 767px) {
  .mediaset .linkbtn, .badgeflow .linkbtn {
    width: 100%;
    max-width: 270px;
    margin-right: auto;
    margin-bottom: 0;
  }
  .mediaset .linkbtn:not(:last-child), .badgeflow .linkbtn:not(:last-child) {
    margin-bottom: 10px;
  }
  .mediaset .linkbtn a, .badgeflow .linkbtn a {
    height: 50px;
  }
  .mediaset table th, .badgeflow table th {
    width: auto;
  }
}

.calloutset.col2 .linkbtn,
.flowset.col2 .linkbtn {
  max-width: 350px;
}
.calloutset.col3 .linkbtn,
.flowset.col3 .linkbtn {
  max-width: 300px;
}
.calloutset.col4 .linkbtn,
.flowset.col4 .linkbtn {
  max-width: 240px;
}
.calloutset .listset,
.flowset .listset {
  width: 100%;
  padding: 10px 0;
}
.calloutset .listset li,
.flowset .listset li {
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  font-size: 14px;
}
.calloutset .listset li:nth-child(n+2),
.flowset .listset li:nth-child(n+2) {
  margin-top: 10px;
}
@media (max-width: 767px) {
  .calloutset.col4 .text > table th,
  .calloutset.col4 .text > table td,
  .flowset.col4 .text > table th,
  .flowset.col4 .text > table td {
    min-width: 100%;
    display: block;
  }
  .calloutset.col4 .linkbtn a,
  .flowset.col4 .linkbtn a {
    font-size: 12px;
  }
}

.flowset .linkbtn {
  max-width: 300px;
}
@media (max-width: 767px) {
  .flowset table th,
  .flowset table td {
    min-width: 100%;
    display: block;
  }
  .flowset .linkbtn a {
    font-size: 12px;
  }
}

/* ----------------------------------------------
pagetitle
------------------------------------------------- */
#pagetitle {
  margin-bottom: 60px;
  padding: 0 10px;
  height: 600px;
  position: relative;
  background: no-repeat center/cover;
}
#pagetitle h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  src: local(HiraginoSans-W5);
  font-weight: 500;
  font-size: 50px;
  letter-spacing: 0.08em;
  color: #000;
  font-size: 50px;
  line-height: 1.6;
  display: flex;
  align-items: center;
  color: #fff;
  background-color: #1c1b86;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  left: calc((100% - 1180px) / 2);
  bottom: -0.5em;
  padding: 0.1em 0.6em;
  padding-right: 0.8em;
}
#pagetitle small {
  display: block;
  color: #ffb415;
  font-family: Calibri, "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 24px;
  font-style: normal;
  letter-spacing: 0.08em;
  padding-left: 1em;
}
@media (max-width: 1199px) {
  #pagetitle {
    height: 380px;
  }
  #pagetitle h1 {
    left: 10px;
    font-size: 35px;
  }
  #pagetitle small {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  #pagetitle {
    height: 180px;
  }
  #pagetitle h1 {
    font-size: 20px;
    flex-direction: column;
    align-items: start;
  }
  #pagetitle small {
    font-size: 15px;
    padding-left: 0em;
  }
}

/* ----------------------------------------------
breadcrumb
------------------------------------------------- */
#breadcrumb {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 70px;
  font-size: 13px;
}
#breadcrumb a {
  font-weight: normal;
}

/* ----------------------------------------------
heading1 見出し1
------------------------------------------------- */
.heading1 {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 60px;
}
.heading1 h2 {
  color: #2bb3d6;
  font-size: 60px;
  line-height: 1.3;
  font-weight: 500;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  src: local(HiraginoSans-W6);
  letter-spacing: 0.08em;
  display: block;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
.heading1 h2 span {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #1c1b86;
  padding: 0.05em 0.3em 0.1em 0em;
}
.heading1 h2 small {
  width: -moz-fit-content;
  width: fit-content;
  background-color: #1c1b86;
  color: #fff;
  font-family: Calibri, "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 20px;
  font-style: normal;
  letter-spacing: 0.08em;
  padding: 0.7em 0.3em 0.7em 0em;
}
.heading1 h2::before {
  content: "";
  position: absolute;
  background-color: #1c1b86;
  height: 100%;
  width: calc((100vw - 1180px) / 2);
  left: calc((100vw - 1180px) / 2 * -1);
  z-index: -1;
}
.heading1 h2 small {
  display: block;
}
@media (max-width: 1199px) {
  .heading1 h2 {
    font-size: 43px;
  }
  .heading1 h2::before {
    width: 10px;
    left: -10px;
  }
  .heading1 h2 small {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .heading1 h2 {
    font-size: 26px;
  }
  .heading1 h2 small {
    font-size: 15px;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 7px;
  }
}

/* ----------------------------------------------
heading2 見出し2
------------------------------------------------- */
.heading2 {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 60px;
}
.heading2 p {
  display: flex;
  align-items: center;
}
.heading2 span {
  color: #2bb3d6;
  font-size: 50px;
  line-height: 1.6;
  font-weight: 500;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  src: local(HiraginoSans-W6);
  letter-spacing: 0.08em;
  display: flex;
  background-color: #1c1b86;
  padding: 0.05em 0.5em;
}
.heading2 small {
  writing-mode: vertical-rl;
  font-family: Calibri, "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 18px;
  font-style: normal;
  letter-spacing: 0.08em;
  display: flex;
  line-height: 1;
  padding-right: 0.7em;
  color: #1c1b86;
  font-weight: 700;
}
@media (max-width: 1199px) {
  .heading2 span {
    font-size: 33px;
  }
  .heading2 small {
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .heading2 span {
    font-size: 23px;
  }
  .heading2 small {
    font-size: 14px;
  }
}

/* ----------------------------------------------
heading3 見出し3
------------------------------------------------- */
.heading3 {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 40px;
  text-align: center;
}
.heading3 span {
  font-size: 40px;
  line-height: 1.7;
  display: block;
  font-weight: 500;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  src: local(HiraginoSans-W6);
  letter-spacing: 0.08em;
  color: #1c1b86;
  text-decoration: underline;
  text-decoration-thickness: 6px;
  text-underline-offset: 0.08em;
  text-align: center;
}
.heading3 small {
  display: block;
  font-family: Calibri, "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 16px;
  font-style: normal;
  letter-spacing: 0.08em;
}
@media (max-width: 1199px) {
  .heading3 span {
    font-size: 27px;
  }
  .heading3 small {
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .heading3 span {
    font-size: 21px;
    text-decoration-thickness: 4px;
  }
  .heading3 small {
    font-size: 13px;
  }
}

/* ----------------------------------------------
heading4 見出し4
------------------------------------------------- */
.heading4 {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 60px;
}
.heading4 p {
  font-size: 34px;
  line-height: 1.7;
  font-family: "Hiragino Sans", "Noto Sans JP", sans-serif;
  src: local(HiraginoSans-W6);
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #1c1b86;
  display: flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  padding: 0.25em 0.35em;
  border-top: 2px solid #1c1b86;
  border-bottom: 2px solid #1c1b86;
  position: relative;
  text-align: center;
}
.heading4 p::before {
  content: "";
  width: 1px;
  height: calc(100% - 6px);
  background-color: #1c1b86;
  position: absolute;
  left: 0;
}
.heading4 p::after {
  content: "";
  width: 1px;
  height: calc(100% - 6px);
  background-color: #1c1b86;
  position: absolute;
  right: 0;
}
.heading4 p small {
  font-family: Calibri, "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-size: 16px;
  font-style: normal;
  letter-spacing: 0.08em;
  padding-left: 15px;
}
@media (max-width: 1199px) {
  .heading4 p {
    font-size: 25px;
  }
  .heading4 p small {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .heading4 p {
    font-size: 18px;
    flex-direction: column;
  }
  .heading4 p small {
    font-size: 13px;
    padding-left: 0px;
  }
}

/* ----------------------------------------------
heading1~4 見出し1~4 マージン調整
------------------------------------------------- */
.heading1.notLast, .heading2.notLast, .heading3.notLast, .heading4.notLast {
  margin-bottom: 20px;
}

/* ----------------------------------------------
txtset
------------------------------------------------- */
.txtset {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
  line-height: 2;
}

/* ----------------------------------------------
fullimg
------------------------------------------------- */
.fullimg {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.fullimg img {
  width: 100%;
  height: auto;
}
.fullimg img {
  border-radius: 10px;
}

/* ----------------------------------------------
mediaset
------------------------------------------------- */
.mediaset {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.mediaset table th {
  width: 250px;
}
@media (max-width: 767px) {
  .mediaset table th {
    width: auto;
  }
}
.mediaset .title {
  margin-bottom: 15px;
  font-size: 20px;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: bold;
}
.mediaset .btn {
  margin-left: auto;
  width: 100%;
  max-width: 270px;
  margin-top: 30px;
}
.mediaset .imgbox img {
  border-radius: 10px;
}
.mediaset.notLast {
  margin-bottom: 50px;
}
.mediaset:not(.img-small) {
  /*
  .title{
  	margin-bottom: $MD-tit-mb;
  	font-size: $MD-tit-fz;
  	line-height: $MD-tit-lh;
  }
  .text{
  	line-height: $lh;
  }
  .btn{
  	width: 100%;
  	max-width: $btnWidth;
  	margin-top: $MD-btn-mt;
  	a{
  		@extend %btn;
  	}
  }
   */
}
.mediaset:not(.img-small) .imgbox {
  width: 40.6779661017%;
}
.mediaset:not(.img-small) .imgbox img {
  width: 100%;
  height: auto;
}
.mediaset:not(.img-small) .txtbox {
  flex: 1;
}
.mediaset:not(.img-small).img-left .imgbox {
  margin-right: 3.3898305085%;
}
.mediaset:not(.img-small).img-right .imgbox {
  order: 1;
  margin-left: 3.3898305085%;
}
.mediaset.img-small {
  /*
      .title {
       margin-bottom: $MDS-tit-mb;
       font-size: $MDS-tit-fz;
       line-height: $MDS-tit-lh;
  }
   */
  /*
     .btn {
       width: 100%;
       max-width: $btnWidth;
       margin-top: $MD-btn-mt;
       a {
         @extend %btn;
       }
  }
   */
}
.mediaset.img-small.img-left .imgbox {
  margin-right: 40px;
}
.mediaset.img-small.img-right .imgbox {
  order: 1;
  margin-left: 40px;
  margin-right: 0;
}
.mediaset.img-small .imgbox {
  width: 300px;
  margin-right: 40px;
}
.mediaset.img-small .imgbox img {
  width: 100%;
  height: auto;
}
.mediaset.img-small .txtbox {
  flex: 1;
}
@media (max-width: 767px) {
  .mediaset {
    flex-direction: column;
  }
  .mediaset .title {
    margin-bottom: 15px;
    font-size: 18px;
  }
  .mediaset .btn {
    margin-left: auto;
    margin-right: auto;
  }
  .mediaset:not(.img-small) {
    /* 	.title{
    	margin-bottom: $MD-sp-tit-mb;
    	font-size: $MD-sp-tit-fz;
    }
    .btn{
    	@include mx-auto();
    } */
  }
  .mediaset:not(.img-small) .imgbox {
    width: 100%;
    margin: 0 auto 20px;
  }
  .mediaset:not(.img-small).img-left .imgbox {
    margin-right: auto;
  }
  .mediaset:not(.img-small).img-right .imgbox {
    order: 0;
    margin-left: auto;
  }
  .mediaset.img-small.img-left .imgbox {
    margin-right: auto;
  }
  .mediaset.img-small.img-right .imgbox {
    order: 0;
    margin-right: auto;
    margin-left: auto;
  }
  .mediaset.img-small .imgbox {
    width: 100%;
    margin: 0 auto 20px;
  }
  .mediaset.img-small .btn {
    margin-left: auto;
    margin-right: auto;
  }
}

/* ----------------------------------------------
calloutset
------------------------------------------------- */
.calloutset {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.calloutset.notLast {
  margin-bottom: 50px;
}
.calloutset .image {
  margin-bottom: 10px;
}
.calloutset .image img {
  width: 100%;
  height: auto;
}
.calloutset .image img {
  border-radius: 10px;
}
.calloutset .title {
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
}
.calloutset.col4 {
  /*
  .title {
  	letter-spacing: 0.05em;
    }
    .text {
  	font-size: 16px;
  	line-height: 1.5;
  	@include sp {
  	  font-size: 14px;
  	}
    }
     */
}
.calloutset.col4 .block {
  width: 22.0338983051%;
}
.calloutset.col4 .block:not(:nth-child(4n+1)) {
  margin-left: 3.9548022599%;
}
.calloutset.col4 .block:nth-child(n+5) {
  margin-top: 50px;
}
.calloutset.col3 {
  /*
  text-align: center;
  	*/
}
.calloutset.col3 .block {
  width: 30.5084745763%;
}
.calloutset.col3 .block:not(:nth-child(3n+1)) {
  margin-left: 4.2372881356%;
}
.calloutset.col3 .block:nth-child(n+4) {
  margin-top: 50px;
}
.calloutset.col2 {
  justify-content: space-between;
}
.calloutset.col2 .block {
  width: 47.4576271186%;
}
.calloutset.col2 .block:nth-child(n+3) {
  margin-top: 50px;
}
@media (max-width: 767px) {
  .calloutset.col4 {
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
  }
  .calloutset.col4 .block {
    width: 45.8823529412%;
  }
  .calloutset.col4 .block:not(:nth-child(4n+1)) {
    margin-left: 0;
  }
  .calloutset.col4 .block:nth-child(n+3) {
    margin-top: 50px;
  }
  .calloutset.col3 {
    flex-direction: column;
    margin-left: auto;
    margin-right: auto;
  }
  .calloutset.col3 .block {
    width: 100%;
  }
  .calloutset.col3 .block:not(:nth-child(3n+1)) {
    margin-left: 0;
  }
  .calloutset.col3 .block:nth-child(n+2) {
    margin-top: 50px;
  }
  .calloutset.col2 {
    flex-direction: column;
    margin-left: auto;
    margin-right: auto;
  }
  .calloutset.col2 .block {
    width: 100%;
  }
  .calloutset.col2 .block + .block {
    margin-top: 50px;
  }
}

.calloutset .image a {
  transition: all 0.5s ease-out;
}
.calloutset .image a:hover {
  opacity: 0.6;
}
.calloutset .image a[data-lightbox=calloutpop] img {
  width: 100%;
  height: 100%;
  aspect-ratio: 100/90;
  -o-object-fit: cover;
     object-fit: cover;
}

/* ----------------------------------------------
linkset
------------------------------------------------- */
.linkset {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.linkset.notLast {
  margin-bottom: 5px;
}
.linkset ul {
  display: flex;
  flex-wrap: wrap;
}
.linkset.col4 li {
  width: 22.8813559322%;
}
.linkset.col4 li:not(:nth-child(4n+1)) {
  margin-left: 2.8248587571%;
}
.linkset.col4 li:nth-child(n+5) {
  margin-top: 5px;
}
.linkset.col3 li {
  width: 31.3559322034%;
}
.linkset.col3 li:not(:nth-child(3n+1)) {
  margin-left: 2.9661016949%;
}
.linkset.col3 li:nth-child(n+4) {
  margin-top: 5px;
}
@media (max-width: 1199px) {
  .linkset a::after {
    display: none;
  }
  .linkset.col4 a {
    background-image: none;
    padding: 0 15px;
  }
}
@media (max-width: 767px) {
  .linkset ul {
    justify-content: space-between;
  }
  .linkset.col4 li {
    width: 48%;
  }
  .linkset.col4 li:not(:first-child) {
    margin-left: 0;
  }
  .linkset.col4 li:nth-child(n+3) {
    margin-top: 5px;
  }
  .linkset.col3 {
    /* 1並び
    max-width: $LS-col3-block-width;
    li {
      width: 100%;
      &:not(:first-child) {
        margin-left: 0;
      }
      &:nth-child(n + 2) {
        margin-top: $LS-NL-mb;
      }
    }
     */
  }
  .linkset.col3 ul {
    justify-content: center;
  }
  .linkset.col3 a {
    background-image: none;
    padding: 0 15px;
  }
}

/* ----------------------------------------------
linkbtn
------------------------------------------------- */
.linkbtn {
  margin: 0 auto 100px;
  width: calc(100% - 20px);
  max-width: 400px;
}
.linkbtn a {
  height: 90px;
  font-size: 24px;
}
.linkbtn a::after {
  content: "";
  background-image: url(../images/arrow2.webp);
  width: 12px;
  height: 15px;
  position: absolute;
  right: 30px;
}
@media (max-width: 767px) {
  .linkbtn {
    max-width: 280px;
  }
  .linkbtn a {
    height: 60px;
    font-size: 14px;
  }
  .linkbtn a::after {
    width: 10px;
    height: 12px;
    background-size: 100%;
  }
}

/* ----------------------------------------------
tableset
------------------------------------------------- */
.tableset {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.tableset table {
  width: 100%;
  line-height: 1.8;
  border-spacing: 2px;
  border-collapse: separate;
}
.tableset th,
.tableset td {
  padding: 23px 25px;
  font-size: 14px;
}
.tableset th,
.tableset thead td,
.tableset thead th {
  background: #1c1b86;
  white-space: nowrap;
  border: 1px solid #1c1b86;
  color: #ffffff;
  font-weight: bold;
}
.tableset td {
  border: 1px solid #243c3f;
  background: #fff;
}
.tableset.type-normal th,
.tableset.type-normal td {
  /*
  font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
     */
}
.tableset.type-scroll {
  overflow-x: auto;
  min-height: 120px;
}
.tableset.type-scroll th,
.tableset.type-scroll td {
  padding: 20px 20px;
}
.tableset.type-scroll thead th {
  background-color: #243c3f;
}
.tableset.type-scroll th,
.tableset.type-scroll thead td,
.tableset.type-scroll thead th {
  white-space: nowrap;
}
.tableset.type-scroll thead td {
  text-align: center;
}
@media (max-width: 767px) {
  .tableset.type-normal tr th {
    border-bottom: 0;
  }
  .tableset.type-normal tr:not(:nth-child(n+2)) td {
    border-bottom: unset;
  }
  .tableset.type-normal table {
    border-spacing: 0;
  }
  .tableset.type-normal th,
  .tableset.type-normal td {
    margin-bottom: 2px;
    display: block;
    padding: 13px 15px 13px 15px;
  }
  .tableset.type-scroll th,
  .tableset.type-scroll td {
    padding: 13px 15px 13px 15px;
  }
  .tableset.type-scroll thead td {
    white-space: nowrap;
  }
}

/* ----------------------------------------------
miniSurveyView
------------------------------------------------- */
.miniSurveyView {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.miniSurveyView table.formBlockSurveyTable {
  width: 100%;
  line-height: 1.8;
  border-collapse: separate;
  border-spacing: 2px;
}
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td {
  padding: 23px 25px;
}
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td input[type=text],
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td input[type=tel],
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td input[type=email],
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td textarea, .miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td select {
  border: 1px solid #e4e4e4;
  padding: 5px;
  width: 100%;
  outline: none;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", system-ui, sans-serif;
}
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td.question {
  border: 1px solid #1c1b86;
  color: #ffffff;
  background: #1c1b86;
  /*
  font-size: 14px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
   */
}
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td.question .required {
  color: #e70012;
}
.miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td:not(.question) {
  border: 1px solid #243c3f;
  background: #fff;
}
.miniSurveyView table.formBlockSurveyTable tr:last-child td {
  padding-top: 20px;
  text-align: center;
}
.miniSurveyView table.formBlockSurveyTable tr:last-child td input[type=submit] {
  width: 280px;
  margin: 0 auto;
  cursor: pointer;
}
.miniSurveyView table.formBlockSurveyTable tr:last-child td input[type=submit]:after {
  display: none;
}
.miniSurveyView .form-group.captcha {
  margin-top: 20px;
  text-align: center;
}
.miniSurveyView .form-group.captcha label.form-label {
  font-size: 14px;
}
.miniSurveyView .form-group.captcha > div:nth-of-type(1) {
  margin-top: 10px;
  margin-bottom: 10px;
}
.miniSurveyView .form-group.captcha > div:nth-of-type(2) input {
  border: 1px solid #e4e4e4;
  outline: none;
  padding: 5px;
  width: 100%;
  max-width: 190px;
}
.miniSurveyView .alert {
  margin-top: 20px;
  text-align: center;
}
.miniSurveyView .alert.alert-danger strong {
  color: red;
}
@media (max-width: 767px) {
  .miniSurveyView table.formBlockSurveyTable {
    border-spacing: 0;
  }
  .miniSurveyView table.formBlockSurveyTable td {
    display: block;
  }
  .miniSurveyView table.formBlockSurveyTable tr:not(:last-child):not(.captchatr) td {
    padding: 13px 15px 13px 15px;
    margin-bottom: 2px;
  }
  .miniSurveyView table.formBlockSurveyTable tr:not(:first-child) td.question {
    border-top: 0;
  }
  .miniSurveyView table.formBlockSurveyTable tr:last-child td:first-child {
    display: none;
  }
  .miniSurveyView table.formBlockSurveyTable tr:last-child td input[type=submit] {
    width: 100%;
    max-width: 280px;
  }
}

/* ----------------------------------------------
titletext
------------------------------------------------- */
.titletext {
  margin-bottom: 100px;
  max-width: 1200px;
  width: calc(100% - 20px);
  margin-left: auto;
  margin-right: auto;
  padding: 25px;
  background-color: #f7f7f5;
}
.titletext .title {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.3333333333;
}
@media (max-width: 767px) {
  .titletext {
    padding: 20px 20px;
  }
  .titletext .title {
    font-size: 16px;
  }
}

/* ----------------------------------------------
listset
------------------------------------------------- */
.listset {
  padding: 34px 0;
  width: calc(100% - 20px);
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 100px;
  border: #243c3f 1px solid;
  border-radius: 10px;
  background-color: #ffffff;
}
.listset ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.listset li {
  display: flex;
  width: 50%;
  padding-left: 20px;
  padding-right: 20px;
  font-size: 16px;
  line-height: 1.5;
  /*
  &:before {
    margin-top: 7px;
    margin-right: 7px;
    flex-shrink: 0;
    display: block;
    content: "";
    width: px;
    height: px;
    background: url(../images/listset-icon.png) no-repeat center/cover;
  }
  */
}
.listset li:before {
  margin-top: 8px;
  margin-right: 7px;
  flex-shrink: 0;
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  background-color: #2bb3d6;
  border-radius: 50%;
}
.listset li:nth-child(n+3) {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .listset li {
    padding-left: 15px;
    padding-right: 15px;
    font-size: 14px;
  }
  .listset li:before {
    margin-top: 6px;
  }
}
@media (max-width: 500px) {
  .listset li {
    width: 100%;
  }
  .listset li:nth-child(n+2) {
    margin-top: 20px;
  }
}

/* ----------------------------------------------
badgeflow
------------------------------------------------- */
.badgeflow {
  padding-top: 50px;
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.badgeflow.notLast {
  margin-bottom: 40px;
}
.badgeflow .imgbox {
  position: relative;
  padding-left: 50px;
  width: 35.593220339%;
  margin-right: 3.3898305085%;
  min-width: 340px;
}
.badgeflow .imgbox img {
  width: 100%;
  height: auto;
}
.badgeflow .imgbox img {
  border-radius: 10px;
}
.badgeflow .txtbox {
  flex: 1;
}
.badgeflow .badge {
  position: absolute;
  left: 0px;
  top: -50px;
  width: 100px;
  height: 100px;
  background-color: #e60012;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 16px;
  line-height: 1.375;
  color: #fff;
  font-weight: bold;
  border-radius: 50%;
}
.badgeflow .title {
  margin-bottom: 15px;
  font-size: 20px;
  line-height: 1.6;
  font-weight: bold;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .badgeflow {
    flex-direction: column;
    padding-top: 0px;
  }
  .badgeflow .imgbox {
    width: 100%;
    margin: 0 auto 20px;
    min-width: 0px;
    padding: 15px 0 0 0px;
  }
  .badgeflow .badge {
    top: 0px;
    width: 65px;
    height: 65px;
    font-size: 13px;
    left: -5px;
  }
  .badgeflow .title {
    margin-bottom: 15px;
    font-size: 18px;
  }
}

/* ----------------------------------------------
flowset
------------------------------------------------- */
.flowset {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.flowset.notLast {
  margin-bottom: 40px;
}
.flowset .block {
  width: 30.5084745763%;
  position: relative;
}
.flowset .block:not(:nth-child(3n+1)) {
  margin-left: 4.2372881356%;
}
.flowset .block:nth-child(n+4) {
  margin-top: 40px;
}
.flowset .block:before {
  position: absolute;
  top: 0;
  left: -13.8888888889%;
  display: var(--arrow-display, none);
  content: "";
  width: 13.8888888889%;
  height: 100%;
  background-image: url(../images/flowset-arrow.png);
  background-repeat: no-repeat;
  background-position: center;
}
.flowset .image {
  margin-bottom: 10px;
  position: relative;
}
.flowset .image img {
  width: 100%;
  height: auto;
}
.flowset .image:before {
  position: absolute;
  top: 0;
  left: -13.8888888889%;
  display: block;
  content: "";
  width: 13.8888888889%;
  height: 100%;
  background-image: url(../images/flowset-arrow.png);
  background-repeat: no-repeat;
  background-position: center;
}
.flowset .image img {
  border-radius: 10px;
}
.flowset .title {
  margin-bottom: 5px;
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
}
@media (min-width: 768px) {
  .flowset .block:nth-child(3n+1):before {
    display: none;
  }
  .flowset .block:nth-child(3n+1) .image:before {
    display: none;
  }
}
@media (max-width: 767px) {
  .flowset {
    justify-content: space-between;
  }
  .flowset .block {
    width: 45.515394913%;
  }
  .flowset .block:not(:nth-child(3n+1)) {
    margin-left: 0;
  }
  .flowset .block:nth-child(n+2) {
    margin-top: 0;
  }
  .flowset .block:nth-child(n+3) {
    margin-top: 40px;
  }
  .flowset .block:nth-child(2n+1)::before {
    display: none;
  }
  .flowset .block:nth-child(2n+1) .image::before {
    display: none;
  }
  .flowset .block::before {
    left: -19.7058823529%;
    width: 19.7058823529%;
  }
  .flowset .title {
    font-size: 16px;
  }
  .flowset .image::before {
    left: -19.7058823529%;
    width: 19.7058823529%;
  }
  .flowset .block:nth-child(1) .image::before {
    display: none;
  }
}

/* ----------------------------------------------
schedule
------------------------------------------------- */
.schedule {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 100px;
}
.schedule .inner {
  border-radius: 10px;
  background-color: #fff;
  padding: 40px 10px 60px;
  border: #243c3f solid 1px;
}
.schedule table {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 18px;
  letter-spacing: 0.08em;
  width: 100%;
  max-width: 1060px;
  margin-left: auto;
  margin-right: auto;
}
.schedule table tr {
  border-bottom: 1px solid #243c3f;
}
.schedule table tbody th {
  width: 243px;
}
.schedule table tbody td {
  color: #2ba1d6;
}
.schedule table th, .schedule table td {
  padding: 10px;
}
@media (max-width: 767px) {
  .schedule .inner table {
    font-size: 13px;
  }
  .schedule .inner table th {
    width: unset;
  }
  .schedule .inner table th, .schedule .inner table td {
    padding: 8px;
  }
}

.mediaset .schedule,
.calloutset .schedule,
.flowset .schedule,
.badgeflow .schedule {
  padding-left: 0px;
  padding-right: 0px;
  margin-bottom: 0;
}
.mediaset .schedule > table,
.calloutset .schedule > table,
.flowset .schedule > table,
.badgeflow .schedule > table {
  width: 100%;
}
.mediaset .schedule > table th,
.mediaset .schedule > table td,
.calloutset .schedule > table th,
.calloutset .schedule > table td,
.flowset .schedule > table th,
.flowset .schedule > table td,
.badgeflow .schedule > table th,
.badgeflow .schedule > table td {
  padding: 5px 10px;
  font-size: 13px;
  border: 1px solid #f8f8f8;
}
.mediaset .schedule > table th,
.calloutset .schedule > table th,
.flowset .schedule > table th,
.badgeflow .schedule > table th {
  min-width: 120px;
  background: #eeeeee;
  font-weight: bold;
}
@media (max-width: 1199px) {
  .mediaset .schedule table,
  .calloutset .schedule table,
  .flowset .schedule table,
  .badgeflow .schedule table {
    font-size: 15px;
  }
  .mediaset .schedule table th,
  .mediaset .schedule table td,
  .calloutset .schedule table th,
  .calloutset .schedule table td,
  .flowset .schedule table th,
  .flowset .schedule table td,
  .badgeflow .schedule table th,
  .badgeflow .schedule table td {
    padding: 5px;
  }
}
@media (max-width: 767px) {
  .mediaset .schedule table,
  .calloutset .schedule table,
  .flowset .schedule table,
  .badgeflow .schedule table {
    font-size: 13px;
  }
  .mediaset .schedule table th,
  .mediaset .schedule table td,
  .calloutset .schedule table th,
  .calloutset .schedule table td,
  .flowset .schedule table th,
  .flowset .schedule table td,
  .badgeflow .schedule table th,
  .badgeflow .schedule table td {
    padding: 3px 7px;
  }
}

/* ----------------------------------------------
immunization
------------------------------------------------- */
.tableset.immunization table thead th {
  background-color: #1c1b86;
}
.tableset.immunization table tbody td {
  text-wrap: nowrap;
}

/* ----------------------------------------------
corona
------------------------------------------------- */
.tableset.corona table thead th {
  background-color: #1c1b86;
}
.tableset.corona table tbody td {
  text-wrap: nowrap;
}
.tableset.corona table .bottom-text {
  background-color: unset;
  border: unset;
  padding-top: 7px;
  padding-bottom: 17px;
  text-wrap: wrap;
}
.tableset.corona table tr:last-child .bottom-text {
  padding-bottom: 0;
}
/* ----------------------------------------------
outpatient
------------------------------------------------- */
.outpatient {
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 100px;
}
.outpatient .inner {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}
.outpatient .contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.outpatient .block {
  width: 45.7627118644%;
}
.outpatient .block:nth-child(n+3) {
  margin-top: 60px;
}
.outpatient .block a {
  transition: all 0.5s ease-out;
}
.outpatient .block a:hover {
  opacity: 0.6;
}
.outpatient .block .image {
  margin-bottom: 15px;
}
.outpatient .block .image img {
  border-radius: 10px;
}
.outpatient .block .title {
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0.08em;
  margin-bottom: 15px;
  line-height: 1.4166666667;
}
.outpatient .block .btn {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
}
.outpatient .block .btn a {
  font-size: 14px;
  letter-spacing: 0.08em;
  font-weight: 500;
  display: flex;
  color: #243c3f;
  text-decoration: none;
}
.outpatient .block .btn a::after {
  content: "";
  width: 26px;
  height: 26px;
  background-image: url(../images/arrow.webp);
  display: block;
  margin-top: auto;
  margin-left: 10px;
  flex-shrink: 0;
}
@media (max-width: 1199px) {
  .outpatient .block .title {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .outpatient .block:nth-child(n+3) {
    margin-top: 40px;
  }
  .outpatient .block .title {
    font-size: 15px;
  }
  .outpatient .block .btn a {
    font-size: 13px;
  }
  .outpatient .block .btn a::after {
    background-size: 100%;
    width: 20px;
    height: 20px;
    margin-left: 5px;
  }
}

/* ----------------------------------------------
anchorlink
------------------------------------------------- */
.linkset.col4 li:nth-child(n+5) {
  margin-top: 35px;
}
.linkset.col4 li a[href^="#"]::after {
  content: "";
  width: 8px;
  height: 20px;
  position: absolute;
  right: 20px;
  background: url(../images/anchorlink-arrow.png);
}
@media (max-width: 767px) {
  .linkset.col4 li:nth-child(n+3) {
    margin-top: 5px;
  }
}

/* ----------------------------------------------
news
------------------------------------------------- */
.news {
  margin-bottom: 100px;
}
.news .linkset.news-category {
  padding: 0;
  margin-bottom: 90px;
}
.news .linkset.news-category ul li a {
  background: #e60012;
}
.news .linkset.news-category ul li a::after {
  display: none;
}
.news .inner .contents article {
  border-bottom: solid 1px #243c3f;
}
.news .inner .contents article time {
  color: #2bb3d6;
}
.news .inner .contents article .text {
  color: #243c3f;
}
@media (max-width: 767px) {
  .news .linkset.news-category {
    margin-bottom: 60px;
  }
}

/* ----------------------------------------------
news-detail
------------------------------------------------- */
.news-detail {
  margin-bottom: 100px;
}
.news-detail .inner {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}
.news-detail .head {
  display: flex;
  align-items: center;
  margin-bottom: 50px;
}
.news-detail .head time {
  line-height: 1.6666666667;
  margin-right: 18px;
  font-family: Calibri, "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.08em;
  color: #2bb3d6;
  font-size: 20px;
}
.news-detail .head .cate {
  flex-shrink: 0;
  width: 140px;
  height: 38px;
  background-color: #e60012;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  font-size: 18px;
  border-radius: 5px;
  transition: all 0.5s ease-out;
}
.news-detail .head .cate:hover {
  opacity: 0.6;
}
.news-detail .head .cate a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #ffffff;
  font-weight: 500;
}
.news-detail .title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 30px;
  letter-spacing: 0.08em;
  line-height: 1.6;
  margin-bottom: 50px;
}
.news-detail .image {
  margin-bottom: 30px;
}
.news-detail .image img {
  width: 100%;
  border-radius: 10px;
}
.news-detail .text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 0.08em;
  line-height: 1.8;
  margin-bottom: 90px;
}
@media (max-width: 1199px) {
  .news-detail .title {
    font-size: 24px;
  }
  .news-detail .text {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .news-detail .head {
    margin-bottom: 30px;
  }
  .news-detail .head time {
    font-size: 16px;
  }
  .news-detail .head .cate {
    margin-right: 0px;
    font-size: 14px;
    width: 100px;
    height: 30px;
  }
  .news-detail .title {
    font-size: 18px;
    margin-bottom: 30px;
  }
  .news-detail .image {
    margin-bottom: 20px;
  }
  .news-detail .text {
    font-size: 14px;
    margin-bottom: 50px;
  }
}

/* ----------------------------------------------
ページネーション
------------------------------------------------- */
.ccm-pagination-wrapper {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-top: 80px;
}
.ccm-pagination-wrapper .pagination {
  display: flex;
  justify-content: center;
}
.ccm-pagination-wrapper .prev,
.ccm-pagination-wrapper .next,
.ccm-pagination-wrapper .page-item .visually-hidden {
  display: none;
}
.ccm-pagination-wrapper .page-item {
  padding: 5px;
  width: 60px;
  height: 60px;
  font-size: 18px;
}
.ccm-pagination-wrapper .page-item a,
.ccm-pagination-wrapper .page-item span {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}
.ccm-pagination-wrapper .page-item a {
  text-decoration: none;
  transition: all 0.5s ease-out;
  background-color: #243c3f;
  color: #fff;
}
.ccm-pagination-wrapper .page-item a:hover {
  opacity: 0.6;
}
.ccm-pagination-wrapper .page-item span {
  background-color: #ffb415;
  color: #243c3f;
}
@media (max-width: 767px) {
  .ccm-pagination-wrapper {
    margin-top: 60px;
  }
  .ccm-pagination-wrapper .pagination {
    flex-wrap: wrap;
  }
  .ccm-pagination-wrapper .page-item {
    padding: 3px;
    width: 43px;
    height: 43px;
    font-size: 14px;
  }
}/*# sourceMappingURL=contents.css.map */