/*--mainColor:#002063;*/
/*border*/
/*border*/
/*---------------------------------
	underpage common
-----------------------------------*/
.harfblock {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .harfblock > div {
    width: 48.5%; }
  @media only screen and (max-width: 640px) {
    .harfblock {
      display: block; }
      .harfblock > div {
        width: 100%; } }

.zoomicon a {
  display: block;
  overflow: hidden;
  position: relative;
  display: block; }
  .zoomicon a img {
    background: #FFF;
    object-fit: cover;
    width: 100%;
    height: 100%;
    border: 5px solid #d6d6d6;
    border-radius: 10px;
    aspect-ratio: 1; }
  .zoomicon a:before {
    position: absolute;
    content: '';
    z-index: 1;
    bottom: 15px;
    right: 10px;
    background: url("../imgs/icon_zoom.svg") no-repeat;
    background-size: cover;
    height: 35px;
    width: 35px; }
.zoomicon.wide a img {
  aspect-ratio: 4/3; }

.zoomlist {
  display: flex;
  /* justify-content:space-between; */
  justify-content: start;
  flex-wrap: wrap;
  padding: 0;
  margin-bottom: -2rem; }
  .zoomlist li {
    max-width: 100%;
    margin-bottom: 2rem;
    width: 18%; }
    .zoomlist li:not(:nth-of-type(5n)) {
      margin-right: 2.5%; }
    @media only screen and (max-width: 640px) {
      .zoomlist li {
        width: 32%;
        margin-right: 0; }
        .zoomlist li:not(:nth-of-type(5n)) {
          margin-right: inherit; }
        .zoomlist li:not(:nth-of-type(3n)) {
          margin-right: 1.8%; } }
  .zoomlist span {
    margin-top: 0.5rem;
    display: block;
    font-weight: bold;
    color: #002063; }
    .zoomlist span span {
      margin-top: 0;
      font-size: 1.4rem;
      font-weight: normal; }
  .zoomlist.wide {
    justify-content: center;
    margin-bottom: 6rem; }
    .zoomlist.wide li {
      width: 30%;
      margin: 0 2%; }
      @media only screen and (max-width: 640px) {
        .zoomlist.wide li {
          width: 90%;
          margin: 0 auto 1rem; } }

.lum-lightbox-inner img {
  max-width: 100% !important; }

.movieicon a {
  display: block;
  width: 100%;
  position: relative;
  display: block; }
  .movieicon a img {
    background: #FFF;
    object-fit: cover;
    border: 5px solid #d6d6d6;
    border-radius: 10px; }
  .movieicon a:before {
    position: absolute;
    content: '';
    z-index: 1;
    bottom: 15px;
    right: 10px;
    background: url("../imgs/icon_movie.svg") no-repeat;
    background-size: cover;
    height: 35px;
    width: 35px; }

.movielist {
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
  padding: 0; }
  .movielist li {
    max-width: 100%;
    margin-bottom: 2rem;
    width: 31%;
    height: auto; }
    .movielist li:not(:nth-of-type(3n)) {
      margin-right: 3.5%; }
    .movielist li a {
      width: 100%;
      display: block; }
      .movielist li a img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        aspect-ratio: 4 / 3; }
  .movielist span {
    margin-top: 1rem;
    display: block;
    font-weight: bold;
    color: #002063; }
  @media only screen and (max-width: 640px) {
    .movielist li {
      width: 48%; }
      .movielist li:not(:nth-of-type(3n)) {
        margin-right: auto; }
      .movielist li:not(:nth-of-type(2n)) {
        margin-right: 3.5%; } }

.lum-lightbox {
  z-index: 99999; }

.mainRead {
  color: #002063;
  font-weight: bold;
  font-size: 2.0rem;
  text-align: center;
  margin: 0 1% 4rem; }
  .mainRead img.logo {
    max-width: 400px; }
  .mainRead span.normal {
    font-size: 1.8rem;
    margin-top: 1rem;
    font-weight: normal; }
  .mainRead span.pick {
    font-size: 1.8rem;
    background: #002063;
    color: #FFF;
    padding: 0.2rem 1rem;
    border-radius: 10px; }
  @media only screen and (max-width: 640px) {
    .mainRead {
      text-align: left;
      font-size: 1.8rem; } }

.subRead {
  font-weight: bold;
  font-size: 1.8rem;
  text-align: center;
  margin: 0 0 5rem; }

.smltextsupple {
  font-size: 1.4rem;
  text-align: right;
  padding-top: 1rem; }
  @media only screen and (max-width: 640px) {
    .smltextsupple {
      text-align: left; } }

dl.dotlist {
  display: flex;
  flex-wrap: wrap; }
  dl.dotlist dt, dl.dotlist dd {
    padding: 1.5rem 1rem 1rem; }
    @media only screen and (max-width: 640px) {
      dl.dotlist dt, dl.dotlist dd {
        padding: 1.5rem 1rem 1.2rem; } }
  dl.dotlist dt {
    background: url("../imgs/line_dotX.svg") right 0 top 0 repeat-x;
    background-size: auto 5px;
    color: #002063;
    font-weight: bold; }
    @media only screen and (min-width: 1281px) {
      dl.dotlist dt {
        padding-left: max(0.5rem, calc((100vw - 1280px) / 2)) !important; } }
    dl.dotlist dt:last-of-type {
      background-image: url("../imgs/line_dotX.svg"), url("../imgs/line_dotX.svg");
      background-position: right 0 top 0, right 0 bottom 0;
      background-repeat: repeat-x;
      background-size: auto 5px; }
      @media only screen and (max-width: 640px) {
        dl.dotlist dt:last-of-type {
          padding: 1.5rem 1rem; } }
  dl.dotlist dd {
    background: url("../imgs/line_dotX.svg") left 0 top 0 repeat-x;
    background-size: auto 5px; }
    @media only screen and (min-width: 1281px) {
      dl.dotlist dd {
        padding-right: max(0.5rem, calc((100vw - 1280px) / 2)) !important; } }
    dl.dotlist dd:last-of-type {
      /*padding-bottom: 1rem;  20250923*/
      background-image: url("../imgs/line_dotX.svg"), url("../imgs/line_dotX.svg");
      background-position: left 0 top 0, left 0 bottom 0;
      background-repeat: repeat-x;
      background-size: auto 5px; }
      @media only screen and (max-width: 640px) {
        dl.dotlist dd:last-of-type {
          background: url("../imgs/line_dotX.svg") left 0 bottom 0 repeat-x;
          background-size: auto 5px;
          padding: 1.5rem 1rem; } }

.underNav {
  background-image: url("../imgs/bg_subnav_t.png"), url("../imgs/bg_subnav_b.png");
  background-position: top center, bottom center;
  background-repeat: repeat-x;
  background-size: auto 80px;
  padding: 50px 0;
  margin-bottom: 4rem; }
  .underNav ul {
    display: flex;
    justify-content: center;
    font-weight: bold;
    background: #ffe600; }
    .underNav ul li {
      font-size: 1.8rem;
      padding: 0.2rem 1.1rem 0.2rem 2.3rem;
      background: url("../imgs/icon_maru_white.svg") left center no-repeat;
      background-size: 1.3rem 1.3rem; }
      .underNav ul li:last-of-type {
        padding: 0.2rem 2.4rem 0.2rem 2.4rem;
        background-image: url("../imgs/icon_maru_white.svg"), url("../imgs/icon_maru_white.svg");
        background-position: left center, right center;
        background-repeat: no-repeat, no-repeat;
        background-size: 1.3rem 1.3rem, 1.3rem 1.3rem; }
      .underNav ul li a {
        color: #002063; }
        .underNav ul li a:hover {
          color: #ff1db4;
          opacity: 1; }
    @media only screen and (max-width: 640px) {
      .underNav ul {
        flex-wrap: wrap;
        justify-content: start;
        padding-left: 2%; }
        .underNav ul li {
          width: 50%; }
          .underNav ul li:last-of-type {
            background: url("../imgs/icon_maru_white.svg") left center no-repeat;
            background-size: 1.3rem 1.3rem; } }
    @media only screen and (max-width: 390px) {
      .underNav ul {
        padding-left: 1%; }
        .underNav ul li {
          font-size: 1.7rem;
          padding: 0.2rem 1.1rem 0.2rem 2rem; }
          .underNav ul li:last-of-type {
            padding: 0.2rem 1.1rem 0.2rem 2rem; } }

.footerPagenavi a {
  margin: 0 2rem !important; }
  .footerPagenavi a.page-numbers {
    display: none; }
  .footerPagenavi a.prev.page-numbers, .footerPagenavi a.next.page-numbers {
    display: inline-block; }
.footerPagenavi span {
  display: none; }

.inputcmn input[type=checkbox] {
  position: relative;
  width: 22px;
  height: 22px;
  vertical-align: -0.3em;
  accent-color: #8de207;
  margin-right: 0.5rem; }
  .inputcmn input[type=checkbox]:before {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    border: 4px solid #8de207;
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    box-sizing: border-box; }
.inputcmn input[type=text], .inputcmn input[type=tel], .inputcmn input[type=fax], .inputcmn input[type=number], .inputcmn input[type=email] {
  width: min(30em,100%);
  border: 4px solid #8de207;
  padding: 0.5rem;
  /* margin-bottom: 0.8rem; */ }
  @media only screen and (max-width: 640px) {
    .inputcmn input[type=text], .inputcmn input[type=tel], .inputcmn input[type=fax], .inputcmn input[type=number], .inputcmn input[type=email] {
      width: 100%; } }
.inputcmn input[type=text].full {
  width: 100%; }
.inputcmn input[type=submit], .inputcmn input[type=reset], .inputcmn .btnsubmit button {
  cursor: pointer;
  border-radius: 0;
  outline: none;
  appearance: none;
  display: inline-block;
  margin-left: auto;
  margin-right: auto;
  border: 5px solid #FFF;
  border-radius: 15px;
  background-color: #8de207;
  color: #002063;
  font-weight: bold;
  box-shadow: 0px 0px 0px 5px #002063;
  font-size: 2rem;
  padding: 1.5rem 4rem;
  transition: 0.2s linear; }
  .inputcmn input[type=submit]:hover, .inputcmn input[type=reset]:hover, .inputcmn .btnsubmit button:hover {
    border: 5px solid #002063;
    box-shadow: 0px 0px 0px 5px #8de207;
    background-color: #FFF;
    opacity: 1; }
.inputcmn .btnsubmit {
  position: relative;
  text-align: center; }
  .inputcmn .btnsubmit button {
    background-image: url("../imgs/icon_search.svg");
    background-repeat: no-repeat;
    background-size: 1.5em;
    background-position: calc(50% - 2em) center;
    padding: 1.5rem 4rem 1.5rem 7rem; }

.notfound {
  text-align: center;
  margin: 5vh auto 15vh;
  min-height: 25vh; }
  .notfound img {
    width: 400px;
    display: block;
    margin: 0 auto; }

.btnMap {
  margin-left: 1rem;
  display: inline-block; }
  .btnMap a {
    border: #8de207 2px solid;
    color: #002063;
    border-radius: 10px;
    padding: 0.2rem 1rem; }
    .btnMap a:hover {
      background: #8de207;
      border-color: #002063;
      opacity: 1; }

.post-password-form {
  text-align: center; }
  .post-password-form input {
    padding: 0.5rem; }
  .post-password-form input[type="password"] {
    border: 1px solid #000; }
  .post-password-form input[type="submit"] {
    border: 1px solid #000; }

/*---------------------------------
	project page logo read before
-----------------------------------*/
.kaitekiLogo, .netisLogo {
  max-width: 420px;
  margin: 3rem auto 2rem; }

.miraiLogo {
  width: min(100% , 520px);
  margin: 3rem auto 2rem; }

.sdgsLogo {
  max-width: 420px;
  margin: 3rem auto 2rem;
  text-align: center; }
  .sdgsLogo img {
    height: max(200px, 10vh); }

/*---------------------------------
	product Top
-----------------------------------*/
.productTopList {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 3rem 0 -3rem; }
  .productTopList::after {
    content: '';
    display: block;
    width: 28%; }
  .productTopList .series {
    width: 28%;
    margin-bottom: 3rem; }
    .productTopList .series a:hover {
      opacity: 1; }
      .productTopList .series a:hover .hSt_fourth {
        transition: 0.2s linear;
        background: #FFF;
        color: #002063; }
      .productTopList .series a:hover img {
        transition: 0.2s linear;
        border: 5px solid #8de207;
        opacity: 1; }
    .productTopList .series .hSt_fourth {
      margin: 1rem 0 2rem;
      text-align: center;
      border: 5px solid #002063; }
    .productTopList .series .photo img {
      object-fit: contain;
      width: 100%;
      height: auto;
      aspect-ratio: 1;
      border: 5px solid #d6d6d6;
      border-radius: 10px; }
    @media only screen and (max-width: 640px) {
      .productTopList .series {
        width: 48%; } }

.productTopterms input[type=checkbox] {
  position: relative;
  width: 22px;
  height: 22px;
  vertical-align: -0.3em;
  accent-color: #8de207;
  margin-right: 0.5rem; }
  .productTopterms input[type=checkbox]:before {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    border: 4px solid #8de207;
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    box-sizing: border-box; }
.productTopterms dl.termsList {
  margin-bottom: 3rem; }
  .productTopterms dl.termsList dt, .productTopterms dl.termsList dd {
    /* padding: 1.5rem 1rem 0.5rem;			 */ }
  .productTopterms dl.termsList dt {
    width: 8em; }
    @media only screen and (min-width: 1281px) {
      .productTopterms dl.termsList dt {
        width: calc( 8em + max(0.5rem, calc((100vw - 1280px) / 2))); } }
  .productTopterms dl.termsList dd {
    width: calc(100% - 8em); }
    @media only screen and (min-width: 1281px) {
      .productTopterms dl.termsList dd {
        width: calc(calc(100% - 8em) - max(0.5rem, calc((100vw - 1280px) / 2))); } }
    .productTopterms dl.termsList dd ul {
      display: flex;
      justify-content: start;
      flex-wrap: wrap; }
      .productTopterms dl.termsList dd ul li {
        margin: 0 1rem 0 0; }
  @media only screen and (max-width: 640px) {
    .productTopterms dl.termsList dt, .productTopterms dl.termsList dd {
      width: 100%;
      /* padding: 1.5rem 1rem 1rem;	 */ } }
.productTopterms .repletion {
  margin: 6rem 0 6rem;
  background: url(../imgs/bg_komon.svg);
  background-size: 300px auto;
  padding: 2rem 2%;
  position: relative; }
  .productTopterms .repletion::before {
    position: absolute;
    content: "";
    display: block;
    top: -15px;
    left: calc(50% - 20px);
    width: 40px;
    height: 40px;
    background: url("../imgs/icon_questionP.svg") center center no-repeat;
    background-size: contain; }
  .productTopterms .repletion .hSt_fourth {
    text-align: center; }
  .productTopterms .repletion dl {
    display: flex;
    flex-wrap: wrap;
    background: #FFF;
    padding-top: 1.5rem;
    margin-top: 1rem;
    border-radius: 10px; }
    .productTopterms .repletion dl dt, .productTopterms .repletion dl dd {
      padding: 0 2rem 1.5rem; }
    .productTopterms .repletion dl dt {
      width: 14em;
      color: #002063;
      font-weight: bold; }
    .productTopterms .repletion dl dd {
      width: calc(100% - 14em); }
    @media only screen and (max-width: 640px) {
      .productTopterms .repletion dl dt, .productTopterms .repletion dl dd {
        width: 100%; } }

.productTech {
  background: #00cfff;
  padding: 2rem 1%;
  margin: 6rem 0 0; }
  .productTech .teckblock {
    background: #FFF;
    padding: 2rem 2%;
    border-radius: 10px; }
    .productTech .teckblock:nth-of-type(1) {
      margin-bottom: 2rem; }
    .productTech .teckblock .head {
      display: flex;
      justify-content: space-between; }
      .productTech .teckblock .head .logo {
        flex: 1; }
        .productTech .teckblock .head .logo img {
          width: max(30%, 240px);
          height: auto;
          display: block; }
      .productTech .teckblock .head .btnofficial {
        text-align: right;
        width: max(20%, 240px); }
      @media only screen and (max-width: 640px) {
        .productTech .teckblock .head {
          display: inherit;
          text-align: center; }
          .productTech .teckblock .head .logo img {
            margin: 0 auto; }
          .productTech .teckblock .head .btnofficial {
            text-align: center;
            margin: 2rem auto; } }
    .productTech .teckblock .info {
      margin-top: 0.5rem;
      font-weight: bold;
      font-size: 1.8rem; }

/*---------------------------------
	product List
-----------------------------------*/
.subProductname {
  color: #ff1db4;
  font-weight: bold;
  text-align: center;
  margin: 0 auto; }

.productmainVisual, .productmainPhoto {
  text-align: center;
  margin: 0 auto 5rem; }
  .productmainVisual img, .productmainPhoto img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%; }

.productmainVisual {
  width: max(30vw, 500px);
  height: auto; }
  @media only screen and (max-width: 640px) {
    .productmainVisual {
      width: 100%; } }

.productmainPhoto img {
  width: auto;
  height: 350px; }

.productResult {
  font-weight: bold; }
  .productResult .resultTerm {
    font-size: 2rem;
    color: #002063; }
    .productResult .resultTerm span {
      color: #ff1db4; }
  .productResult .number {
    color: #002063; }
    .productResult .number span {
      background: #ff1db4;
      color: #FFF;
      display: inline-block;
      padding: 0.5rem 2rem;
      font-size: 2.8rem;
      border-radius: 10px;
      margin: 1rem 1rem 2rem 0; }

.productList .productone {
  margin-bottom: 4rem; }
  .productList .productone:nth-last-child(-n + 2) {
    margin-bottom: 1rem; }
  @media only screen and (max-width: 640px) {
    .productList .productone:nth-last-child(-n + 2) {
      margin-bottom: 4rem; } }
  .productList .productone .detail {
    display: flex;
    justify-content: space-between;
    margin: 3rem 0 0.5rem; }
  .productList .productone .photo {
    width: 40%;
    height: auto; }
    .productList .productone .photo img {
      width: 100%;
      object-fit: contain;
      border: 5px solid #d6d6d6;
      border-radius: 10px;
      aspect-ratio: 1; }
  .productList .productone .info {
    width: 60%;
    margin: 0 0 1rem 2rem; }
    .productList .productone .info p {
      margin-bottom: 2rem;
      word-break: break-all; }
    .productList .productone .info .btn {
      margin-top: 1rem; }
      .productList .productone .info .btn a {
        border: 5px solid #002063;
        border-radius: 10px;
        padding: 0rem 0.4rem;
        display: block;
        font-weight: bold;
        position: relative;
        padding-left: 3rem;
        font-size: 1.8rem; }
        .productList .productone .info .btn a:before {
          display: block;
          content: "";
          position: absolute;
          left: 1rem;
          top: calc(50% - .5em);
          height: 1em;
          width: 1em; }
        .productList .productone .info .btn a:hover {
          opacity: 1; }
      .productList .productone .info .btn.plan a {
        background: #00cfff; }
        .productList .productone .info .btn.plan a:before {
          background: url("../imgs/icon_download.svg") left top no-repeat; }
        .productList .productone .info .btn.plan a:hover {
          opacity: 1;
          background-color: #FFF;
          border-color: #00cfff; }
      .productList .productone .info .btn.catalog a {
        background: #ffe600; }
        .productList .productone .info .btn.catalog a:before {
          background: url("../imgs/icon_catalog.svg") left top no-repeat; }
        .productList .productone .info .btn.catalog a:hover {
          opacity: 1;
          background-color: #FFF;
          border-color: #ffe600; }
  .productList .productone .tag ul {
    display: flex;
    flex-wrap: wrap; }
    .productList .productone .tag ul li {
      margin: 1rem 0.75rem 0 0; }
      .productList .productone .tag ul li a {
        border: 2px solid #8de207;
        border-radius: 10px;
        padding: 0rem 0.7rem 0.1rem; }
        .productList .productone .tag ul li a:hover {
          opacity: 1;
          background: #8de207;
          border: 2px solid #000; }
  .productList .productone .seriesLink {
    margin-top: 1rem; }
    .productList .productone .seriesLink a {
      border-radius: 10px;
      padding: 0.2rem 0.7rem 0.4rem 2.5rem;
      color: #FFF;
      font-weight: bold;
      background: #002063 url("../imgs/icon_serieslist.svg") left 0.75rem center no-repeat;
      background-size: 1.2rem 1.2rem; }
      .productList .productone .seriesLink a:hover {
        opacity: 1;
        background-color: #8de207; }

.productOtherequip {
  background: url(../imgs/bg_komon.svg);
  background-size: 300px auto;
  padding: 2rem 2%; }
  .productOtherequip ul {
    padding: 1rem;
    background-color: #FFF;
    display: flex;
    justify-content: start;
    flex-wrap: wrap; }
    .productOtherequip ul li {
      width: 50%;
      margin-top: 0.5rem;
      margin-bottom: 0.5rem; }
      @media only screen and (max-width: 640px) {
        .productOtherequip ul li {
          width: 100%; } }

/* disaster deo only */
.productCaution {
  /* disaster  */ }
  .productCaution .disaster {
    text-align: center; }
    .productCaution .disaster .logo img {
      width: 200px;
      height: auto; }
    .productCaution .disaster .info .btnCmn {
      margin-top: 1.5rem; }
  .productCaution .pickWord {
    color: #ff1db4;
    font-weight: bold;
    font-size: 2.2rem; }
  .productCaution .deo {
    display: flex;
    justify-content: start; }
    .productCaution .deo img {
      display: block;
      margin-right: 2%; }
    .productCaution .deo p {
      margin: 0.5rem 0; }
    @media only screen and (max-width: 640px) {
      .productCaution .deo {
        display: inherit; }
        .productCaution .deo img {
          margin: 0 auto; } }

.footerPagenavi {
  margin-top: 4rem; }

/*---------------------------------
	product parts
-----------------------------------*/
.productPartslist {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3rem; }
  .productPartslist .photo {
    width: 18%; }
    .productPartslist .photo img {
      border: 5px solid #d6d6d6;
      border-radius: 10px;
      width: 100%;
      aspect-ratio: 1;
      object-fit: contain; }
  .productPartslist .info {
    width: 80%; }
    .productPartslist .info .head {
      color: #00cfff;
      font-weight: bold; }
    .productPartslist .info p {
      padding-top: 1.5rem; }
  @media only screen and (max-width: 640px) {
    .productPartslist {
      /* display: inherit;
      width: min(100% , 400px);
      margin: 0 auto;
      .photo{
      	width: min(100% , 240px);
      }
      .info{
      	width: 100%;
      } */
      margin-bottom: 4rem; }
      .productPartslist .photo {
        width: 40%; }
      .productPartslist .info {
        width: 57%; }
        .productPartslist .info p {
          padding-top: 0.5rem; } }

/*---------------------------------
	about
-----------------------------------*/
/* top */
.aboutMirai {
  text-align: center; }
  .aboutMirai img {
    margin: 0 auto;
    display: block;
    width: max(95%, 400px); }

.aboutMessage {
  display: flex;
  justify-content: center;
  margin: 0 auto 10rem; }
  .aboutMessage .photo {
    width: max(35% , 350px);
    z-index: 5; }
    .aboutMessage .photo .name {
      text-align: center; }
    .aboutMessage .photo img {
      width: 100%;
      height: auto;
      border-radius: 10px; }
  .aboutMessage .message {
    z-index: 10;
    width: max(65% , 350px);
    margin: 8rem 0 0 -5%; }
    .aboutMessage .message .message {
      width: 100%;
      margin: 0 0 4rem; }
  @media only screen and (max-width: 640px) {
    .aboutMessage {
      display: inherit; }
      .aboutMessage .photo {
        width: min(100% , 420px);
        margin: 0 auto; }
      .aboutMessage .message {
        width: 100%;
        margin: 0; } }

.aboutHistory p:not(:last-of-type) {
  margin-bottom: 1.5rem; }

.aboutComic {
  background-image: url("../imgs/single/about_comicbg.png"), url("../imgs/single/about_comicbg.png");
  background-position: top center, bottom center;
  background-repeat: repeat-x;
  background-size: auto 80px;
  padding: 3rem 0;
  margin-top: 6rem; }
  .aboutComic .comic {
    display: flex;
    justify-content: space-around;
    align-items: center; }
    .aboutComic .comic .thumnail {
      width: min(55%, 600px); }
    .aboutComic .comic .linkbtn {
      width: min(40% , 300px);
      font-weight: bold;
      font-size: 1.8rem;
      color: #002063; }
      .aboutComic .comic .linkbtn p {
        margin: 3rem 0; }
  @media only screen and (max-width: 640px) {
    .aboutComic .comic {
      display: inherit; }
      .aboutComic .comic .thumnail, .aboutComic .comic .linkbtn {
        text-align: center;
        width: min(100% , 420px);
        margin: 0 auto; }
      .aboutComic .comic .left {
        text-align: center; } }

.aboutInfo dl dt, .aboutInfo dl dd {
  /* padding: 1.5rem 1rem 0.5rem;	 */ }
  @media only screen and (max-width: 640px) {
    .aboutInfo dl dt, .aboutInfo dl dd {
      /* padding: 1.5rem 1rem 1rem;	 */ } }
.aboutInfo dl dt {
  width: 8em; }
  @media only screen and (min-width: 1281px) {
    .aboutInfo dl dt {
      width: calc( 8em + max(0.5rem, calc((100vw - 1280px) / 2))); } }
.aboutInfo dl dd {
  width: calc(100% - 8em); }
  @media only screen and (min-width: 1281px) {
    .aboutInfo dl dd {
      width: calc(calc(100% - 8em) - max(0.5rem, calc((100vw - 1280px) / 2))); } }
@media only screen and (max-width: 640px) {
  .aboutInfo dl dt, .aboutInfo dl dd {
    width: 100%; } }
.aboutInfo .map iframe {
  margin: 3rem auto 0;
  width: 100%;
  height: max(35vh,350px); }

.aboutBusiness dl {
  display: flex;
  flex-wrap: wrap; }
  .aboutBusiness dl dt {
    width: 7em;
    color: #002063;
    font-weight: bold; }
  .aboutBusiness dl dd {
    width: calc(100% - 7em); }

.aboutGroup ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .aboutGroup ul li {
    width: 48%;
    font-weight: bold;
    font-size: 1.8rem; }
    .aboutGroup ul li:not(:last-of-type) {
      margin-bottom: 2rem; }
    .aboutGroup ul li a {
      padding: 1rem 1.5rem;
      border: 5px solid #002063;
      border-radius: 10px;
      display: block;
      color: #002063; }
    @media only screen and (max-width: 640px) {
      .aboutGroup ul li {
        width: 100%; } }

/* branch */
.branchMap {
  position: relative;
  margin-bottom: 3rem; }
  .branchMap .map {
    position: relative;
    max-width: 720px;
    margin: 0 auto; }
    .branchMap .map img {
      height: auto;
      display: block;
      margin: 0 auto; }
  .branchMap .mappoint {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }
    .branchMap .mappoint .areabtn {
      position: absolute;
      top: calc( 50% - 95px / 2);
      left: calc( 50% - 95px / 2);
      width: 95px;
      height: 95px;
      background: url(../imgs/single/branchmapbtn.svg) center center no-repeat;
      background-size: contain; }
      .branchMap .mappoint .areabtn.hokkaido {
        margin: -35% auto auto 40%; }
      .branchMap .mappoint .areabtn.tohoku {
        margin: -5% auto auto 30%; }
      .branchMap .mappoint .areabtn.shutoken {
        margin: 20% auto auto 25%; }
      .branchMap .mappoint .areabtn.shinetsu {
        margin: 5% auto auto 0%; }
      .branchMap .mappoint .areabtn.chubu {
        margin: 37% auto auto 5%; }
      .branchMap .mappoint .areabtn.kansai {
        margin: 18% auto auto -17%; }
      .branchMap .mappoint .areabtn.chugoku {
        margin: 20% auto auto -33%; }
      .branchMap .mappoint .areabtn.shikoku {
        margin: 45% auto auto -20%; }
      .branchMap .mappoint .areabtn.kyushu {
        margin: 31% auto auto -48%; }
      @media only screen and (max-width: 640px) {
        .branchMap .mappoint .areabtn {
          top: calc( 50% - 70px / 2);
          left: calc( 50% - 70px / 2);
          width: 70px;
          height: 70px; }
          .branchMap .mappoint .areabtn.kyushu {
            margin: 40% auto auto -44%; } }
      @media only screen and (max-width: 390px) {
        .branchMap .mappoint .areabtn {
          top: calc( 50% - 60px / 2);
          left: calc( 50% - 60px / 2);
          width: 60px;
          height: 60px; } }
      .branchMap .mappoint .areabtn a {
        display: block;
        color: #FFF;
        font-weight: bold;
        text-align: center;
        font-size: 1.8rem;
        width: 95px;
        height: 95px;
        padding-top: calc(100% - (95px + 2.6rem) / 2 ); }
        @media only screen and (max-width: 640px) {
          .branchMap .mappoint .areabtn a {
            font-size: 1.6rem;
            width: 70px;
            height: 70px;
            padding-top: calc(100% - (70px + 2.6rem) / 2 ); } }
        @media only screen and (max-width: 390px) {
          .branchMap .mappoint .areabtn a {
            font-size: 1.5rem;
            width: 60px;
            height: 60px;
            padding-top: calc(100% - (60px + 2.6rem) / 2 ); } }

.branchList dl dt, .branchList dl dd {
  padding: 2.5rem 1rem 0; }
  .branchList dl dt h4, .branchList dl dd h4 {
    margin: 0; }
.branchList dl dt {
  width: 8em;
  text-align: center; }
  @media only screen and (min-width: 1281px) {
    .branchList dl dt {
      width: calc( 8em + max(0.5rem, calc((100vw - 1280px) / 2))); } }
.branchList dl dd {
  width: calc(100% - 8em); }
  @media only screen and (min-width: 1281px) {
    .branchList dl dd {
      width: calc(calc(100% - 9em) - max(0.5rem, calc((100vw - 1280px) / 2))); } }
  .branchList dl dd .head {
    display: flex; }
  .branchList dl dd address {
    margin: 1rem 0 2rem 3rem; }
@media only screen and (max-width: 640px) {
  .branchList dl dt, .branchList dl dd {
    width: 100%; }
  .branchList dl dt:last-of-type {
    background-image: url("../imgs/line_dotX.svg");
    background-position: right 0 top 0;
    background-repeat: repeat-x;
    background-size: auto 5px;
    padding: 2.5rem 1rem 1.5rem; }
  .branchList dl dd {
    background: none; } }

/*sdgs*/
.sdgsInfomarion {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem;
  padding: 2rem 0 6rem;
  background: url("../imgs/line_dotX.svg") right 0 bottom 0 repeat-x;
  background-size: auto 5px; }
  @media only screen and (min-width: 1281px) {
    .sdgsInfomarion {
      padding-left: max(0.5rem, calc((100vw - 1280px) / 2)) !important;
      padding-right: max(0.5rem, calc((100vw - 1280px) / 2)) !important; } }
  .sdgsInfomarion .title {
    width: 15%;
    /* width: max(150px,15%); */ }
  .sdgsInfomarion .mainarea {
    width: 82%;
    /* width: min(calc(100% - 150px), 82%); */ }
    .sdgsInfomarion .mainarea .read {
      color: #002063;
      margin-bottom: 3rem;
      font-weight: bold;
      font-size: 1.9rem; }
    .sdgsInfomarion .mainarea > .text {
      margin-bottom: 2rem; }
    .sdgsInfomarion .mainarea .text {
      width: max(calc(63% - 150px),63%); }
      @media only screen and (max-width: 640px) {
        .sdgsInfomarion .mainarea .text {
          width: 100%; } }
      .sdgsInfomarion .mainarea .text h5 {
        margin-bottom: 2rem; }
        @media only screen and (max-width: 640px) {
          .sdgsInfomarion .mainarea .text h5 {
            margin-bottom: 1rem; } }
    .sdgsInfomarion .mainarea .block {
      display: flex;
      justify-content: space-between; }
      .sdgsInfomarion .mainarea .block:not(:last-of-type) {
        margin-bottom: 3rem; }
      .sdgsInfomarion .mainarea .block > .photo {
        width: max(150px,35%); }
        .sdgsInfomarion .mainarea .block > .photo img {
          border-radius: 10px;
          object-fit: cover;
          aspect-ratio: 4/3; }
      @media only screen and (max-width: 640px) {
        .sdgsInfomarion .mainarea .block {
          display: block; }
          .sdgsInfomarion .mainarea .block > .photo {
            width: min(100% , 420px);
            margin: 0 auto; }
          .sdgsInfomarion .mainarea .block:not(:last-of-type) {
            margin-bottom: 6rem; } }
  @media only screen and (max-width: 640px) {
    .sdgsInfomarion {
      display: inherit; }
      .sdgsInfomarion .title {
        display: flex;
        justify-content: center;
        width: 100%; }
        .sdgsInfomarion .title img {
          display: block;
          width: 150px;
          height: auto; }
      .sdgsInfomarion .mainarea {
        width: 100%; }
        .sdgsInfomarion .mainarea .read {
          margin: 2rem 0 4rem;
          text-align: center; } }

/* sports */
.sportRead {
  color: #002063;
  font-weight: bold;
  margin: 1rem 0; }

.aboutSportsContri {
  background: url(../imgs/bg_komon.svg);
  background-size: 300px auto;
  padding: 2rem 2%; }
  .aboutSportsContri .sportRead {
    padding: 1.5rem 2rem 0;
    margin-bottom: 0; }
  .aboutSportsContri .sportRead, .aboutSportsContri .photolist {
    background: #FFF; }
  .aboutSportsContri .photolist {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background: #FFF;
    padding: 1.5rem 2rem; }
    .aboutSportsContri .photolist .photo {
      width: 31%;
      height: auto;
      aspect-ratio: 4 / 3; }
      .aboutSportsContri .photolist .photo img {
        object-fit: cover;
        border-radius: 10px; }
  @media only screen and (max-width: 640px) {
    .aboutSportsContri {
      padding: 2rem 4%; }
      .aboutSportsContri .photolist .photo {
        width: min(96% , 420px);
        margin: 0 auto; } }

.aboutankerSports {
  display: flex;
  justify-content: center;
  margin: 8rem 0 4rem; }
  .aboutankerSports .ankerbtn {
    font-weight: bold;
    width: 30%;
    margin: 0 1.5%;
    text-align: center;
    font-size: 1.8rem;
    background: url("../imgs/icon_anker.svg") bottom center no-repeat;
    background-size: 3rem 3rem;
    padding-bottom: 4rem; }
    .aboutankerSports .ankerbtn a {
      width: 100%;
      color: #002063;
      display: block;
      padding: 0.5rem 1.5rem;
      border: solid 5px #002063;
      border-radius: 10px; }
    @media only screen and (max-width: 640px) {
      .aboutankerSports .ankerbtn {
        font-size: 1.4rem;
        width: 33%;
        margin: 0 0.25%; }
        .aboutankerSports .ankerbtn a {
          padding: 0.5rem 0.2rem; } }
    @media only screen and (max-width: 640px) and (max-width: 460px) {
      .aboutankerSports .ankerbtn a {
        letter-spacing: -0.1rem; } }

.aboutSportsSponsor .teamblock {
  margin-top: 4rem; }
  .aboutSportsSponsor .teamblock .info {
    margin: 3.5rem 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .aboutSportsSponsor .teamblock .info .logo {
      width: 22%; }
      .aboutSportsSponsor .teamblock .info .logo.p img {
        border-radius: 10px; }
    .aboutSportsSponsor .teamblock .info .maintext {
      width: 75%; }
      .aboutSportsSponsor .teamblock .info .maintext .btnCmn {
        margin-top: 2rem; }
    @media only screen and (max-width: 640px) {
      .aboutSportsSponsor .teamblock .info .logo {
        width: min(100% , 320px);
        margin: 0 auto 2rem; }
      .aboutSportsSponsor .teamblock .info .maintext {
        width: 100%; } }

.newslist.sports {
  margin-top: 4rem; }
  .newslist.sports .newstype {
    color: #FFF;
    font-size: 1.3rem;
    margin-right: 1rem; }
    .newslist.sports .newstype p {
      display: block;
      background: #002063;
      text-align: center;
      width: 10em; }

/* .aboutSportsNews{
	.newsblock{
		.date{
			color: $mainColor;
			font-weight: bold;
			background: url(../imgs/line_dotX.svg) bottom center repeat-x;
			background-size: auto 4px ;
			padding-bottom: 1rem;
		}
		.newsbody{
			display: flex;
			justify-content: space-between;
			margin: 2rem 0 0;
			.maintext{
				width: 75%;
			}
			.photo{
				width: 22%;
				img{
					border-radius: $borderRmain;
				}

			}
		}
	}
} */
.aboutSportsinterview .article {
  position: relative;
  margin-top: 5em; }
  .aboutSportsinterview .article .icon {
    position: absolute;
    top: -4em;
    left: 0;
    width: 8em;
    height: 8em; }
    .aboutSportsinterview .article .icon img {
      width: 85%;
      height: 85%;
      margin: 12% auto auto 5%; }
  .aboutSportsinterview .article:nth-of-type(odd) .icon {
    background: url(../imgs/single/sports_iconbg_p.svg) center center no-repeat; }
  .aboutSportsinterview .article:nth-of-type(odd) .position {
    color: #ff1db4; }
  .aboutSportsinterview .article:nth-of-type(odd) .q {
    background: url(../imgs/single/sports_iconQp.svg) left top no-repeat;
    background-size: 2.2em 2.2em; }
  .aboutSportsinterview .article:nth-of-type(even) .icon {
    background: url(../imgs/single/sports_iconbg_b.svg) center center no-repeat; }
  .aboutSportsinterview .article:nth-of-type(even) .position {
    color: #00cfff; }
  .aboutSportsinterview .article:nth-of-type(even) .q {
    background: url(../imgs/single/sports_iconQb.svg) left top no-repeat;
    background-size: 2.2em 2.2em; }
  .aboutSportsinterview .article .mainblock {
    border: solid 5px #ffe600;
    border-radius: 10px;
    padding: 1rem 1.5rem; }
    .aboutSportsinterview .article .mainblock .profile {
      font-weight: bold;
      font-size: 1.8rem;
      padding-left: 6.5em; }
    .aboutSportsinterview .article .mainblock .ex {
      color: #002063; }
  .aboutSportsinterview .article .qa {
    background: url(../imgs/line_dotX.svg) top center repeat-x;
    background-size: auto 4px;
    margin-top: 1.7rem;
    padding-top: 1.7rem; }
    .aboutSportsinterview .article .qa .q {
      font-weight: bold;
      color: #002063;
      margin-bottom: 1rem; }
    .aboutSportsinterview .article .qa .q, .aboutSportsinterview .article .qa .a {
      padding: 0.5rem 1rem 0.5rem 4.5rem; }
    .aboutSportsinterview .article .qa .a {
      background: url(../imgs/single/sports_iconA.svg) left top no-repeat;
      background-size: 2.2em 2.2em; }
  .aboutSportsinterview .article .photoarea {
    display: flex;
    justify-content: start;
    flex-wrap: wrap;
    margin: 3rem 0 2rem 4rem; }
    .aboutSportsinterview .article .photoarea .photo {
      width: 18%;
      margin-right: 2rem; }
      .aboutSportsinterview .article .photoarea .photo a {
        display: block; }
        .aboutSportsinterview .article .photoarea .photo a img {
          width: 100%;
          aspect-ratio: 5 / 8;
          object-fit: cover; }
      @media only screen and (max-width: 640px) {
        .aboutSportsinterview .article .photoarea .photo {
          width: 40%; } }

/*---------------------------------
	miraikasetsu
-----------------------------------*/
.miraiMessage {
  display: flex;
  justify-content: center;
  margin: 0 auto 3rem;
  width: min(100% , 960px); }
  .miraiMessage .photo {
    width: max(45% , 350px);
    z-index: 10; }
    .miraiMessage .photo img {
      width: 100%;
      height: auto;
      border-radius: 10px; }
  .miraiMessage .message {
    z-index: 5;
    width: max(55% , 350px);
    margin: 12rem 0 0 -5%;
    padding: 3rem 3rem 3rem 7%; }
  @media only screen and (max-width: 640px) {
    .miraiMessage {
      display: inherit; }
      .miraiMessage .photo {
        width: min(98% , 420px);
        margin: 0 auto; }
      .miraiMessage .message {
        width: 98%;
        margin: 2rem auto 0; } }

/*---------------------------------
	rental
-----------------------------------*/
.rentalTop {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 10rem; }
  .rentalTop .photo {
    width: max(33% , 350px);
    z-index: 5; }
    .rentalTop .photo img {
      width: 100%;
      height: auto;
      transform: rotate(7deg);
      display: block; }
  .rentalTop .rentalToptext {
    z-index: 10;
    width: max(55% , 350px);
    margin-left: -5%; }
    .rentalTop .rentalToptext .message {
      width: max(70%, 200px);
      margin: 0 0 4rem; }
  @media only screen and (max-width: 640px) {
    .rentalTop {
      display: inherit; }
      .rentalTop .photo {
        width: min(100% , 420px);
        margin: 0 auto; }
      .rentalTop .rentalToptext {
        width: max(55% , 350px);
        margin: 4rem auto 0;
        width: 100%; }
        .rentalTop .rentalToptext .message {
          width: 100%; } }

section:nth-of-type(2) .rentalTop {
  flex-direction: row-reverse; }
  section:nth-of-type(2) .rentalTop img {
    transform: rotate(-7deg); }
  section:nth-of-type(2) .rentalTop .rentalToptext {
    margin-right: -5%; }
    section:nth-of-type(2) .rentalTop .rentalToptext .message {
      margin-left: auto; }
    @media only screen and (max-width: 640px) {
      section:nth-of-type(2) .rentalTop .rentalToptext {
        margin: 4rem auto 0; } }

.rentalRead {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: max(80%, 720px);
  margin: 6rem auto; }
  .rentalRead .read {
    font-weight: bold;
    color: #002063;
    font-size: 1.8rem;
    width: 45%; }
    .rentalRead .read p {
      margin-bottom: 3rem; }
      .rentalRead .read p span {
        background: linear-gradient(transparent 60%, #ffe600 40%); }
  .rentalRead .photo {
    width: 40%;
    z-index: 5;
    padding-top: 2rem; }
    .rentalRead .photo img {
      width: 100%;
      height: auto;
      transform: rotate(7deg);
      display: block; }
  @media only screen and (max-width: 640px) {
    .rentalRead {
      display: inherit;
      width: 100%; }
      .rentalRead .read {
        width: 100%; }
        .rentalRead .read .btnCmn {
          text-align: center; }
      .rentalRead .photo {
        width: min(100% , 420px);
        margin: 1rem auto 0; }
        .rentalRead .photo img {
          transform: rotate(4deg); } }

.rentalEx {
  display: flex;
  justify-content: space-between; }
  .rentalEx > img {
    max-height: 600px;
    margin: 0 auto; }
  .rentalEx .photo {
    width: 48.5%;
    height: auto;
    overflow: hidden; }
    .rentalEx .photo h5 {
      margin-bottom: 0.5rem; }
    .rentalEx .photo img {
      object-fit: cover;
      aspect-ratio: 16 / 9;
      border-radius: 10px;
      width: 100%; }
  @media only screen and (max-width: 640px) {
    .rentalEx {
      display: inherit; }
      .rentalEx .photo {
        width: 100%; } }

/*---------------------------------
	comic
-----------------------------------*/
.comicBlock {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 10rem;
  width: max(70%, 600px); }
  .comicBlock:last-of-type {
    margin: 0 auto 2rem; }
  .comicBlock .photo {
    width: 40%; }
    .comicBlock .photo img {
      width: 100%;
      height: auto;
      border: 5px solid #d6d6d6;
      border-radius: 10px; }
  .comicBlock .text {
    width: 55%;
    text-align: left;
    color: #002063; }
    .comicBlock .text .hSt_fourth {
      margin: 0 0 3rem; }
    .comicBlock .text p {
      margin-bottom: 3rem; }
  @media only screen and (max-width: 640px) {
    .comicBlock {
      width: 100%;
      display: inherit; }
      .comicBlock .photo {
        width: min(80% , 420px);
        margin: 0 auto 1rem; }
      .comicBlock .text {
        width: 100%;
        text-align: center; }
        .comicBlock .text .btnCmn {
          text-align: center; } }

/*---------------------------------
	catalog
-----------------------------------*/
.catalogList {
  display: flex;
  justify-content: space-around; }
  .catalogList .catalogblock {
    width: max(26%,230px); }
    .catalogList .catalogblock .name {
      border: 5px solid #ff1db4;
      border-radius: 10px;
      color: #ff1db4;
      font-weight: bold;
      text-align: center;
      padding: 1rem;
      font-size: 2.2rem; }
    .catalogList .catalogblock .thum img {
      border: 5px solid #d6d6d6;
      border-radius: 10px;
      margin: 2rem 0; }
    .catalogList .catalogblock a {
      width: 100%; }
  @media only screen and (max-width: 640px) {
    .catalogList {
      display: block; }
      .catalogList .catalogblock {
        margin: 0 auto 3rem; } }

.printInfo .cadinfo {
  width: max(60%,25em);
  margin: 4rem auto 6rem; }
  @media only screen and (max-width: 640px) {
    .printInfo .cadinfo {
      width: 100%; } }

.printList .tableArea {
  margin-bottom: 2rem;
  overflow-y: hidden !important; }
  .printList .tableArea table {
    border-spacing: 0;
    /* width: max(100%, 50em); */
    width: 100%;
    table-layout: fixed; }
    .printList .tableArea table caption {
      text-align: left;
      font-weight: bold; }
    .printList .tableArea table thead {
      color: #002063;
      font-weight: bold; }
      .printList .tableArea table thead th {
        text-align: left; }
    .printList .tableArea table tbody tr {
      background: url(../imgs/line_dotX.svg) top left repeat-x;
      background-size: auto 4px; }
    .printList .tableArea table tbody td {
      border: 0; }
    @media only screen and (max-width: 640px) {
      .printList .tableArea table {
        table-layout: auto; }
        .printList .tableArea table td {
          min-width: 14rem; } }

/*---------------------------------
	kaiteki NETIS
-----------------------------------*/
.kaitekiAbout .guideline, .netisAbout .guideline {
  margin: 3rem auto 0; }
  .kaitekiAbout .guideline ol, .netisAbout .guideline ol {
    margin: 1rem 0 0 2.8rem; }
.kaitekiAbout .guidesub, .netisAbout .guidesub {
  font-size: 1.3rem;
  margin: 4rem 0 0;
  line-height: 1.3; }
.kaitekiAbout .btnCmn, .netisAbout .btnCmn {
  margin: 2rem 0 1rem; }

.kaitekiAbout {
  margin-bottom: 3rem; }

.kaitekiEx .kaitekiblock {
  margin-top: 2rem;
  /* display: flex;
  justify-content: space-between;
  flex-wrap: wrap; */ }
  .kaitekiEx .kaitekiblock .sample {
    /* width: 49%; */
    margin-bottom: 2rem; }
    .kaitekiEx .kaitekiblock .sample .eximages {
      margin: 2rem auto 2rem auto;
      width: min(100% , 260px); }
    .kaitekiEx .kaitekiblock .sample .subinfo {
      text-align: center; }

/*---------------------------------
	rental kaiteki netis
-----------------------------------*/
.relationProducts {
  /* display: flex;
  justify-content: space-between;
  flex-wrap: wrap; */ }
  .relationProducts .relationblock {
    /* width: 48.5%; */
    display: flex;
    justify-content: space-between;
    margin-bottom: 3rem; }
    .relationProducts .relationblock .photo {
      width: max(40% , 200px);
      height: auto; }
      .relationProducts .relationblock .photo img {
        object-fit: contain;
        border: 5px solid #d6d6d6;
        border-radius: 10px;
        width: 100%;
        aspect-ratio: 1; }
    .relationProducts .relationblock .about {
      width: min(60% , calc(100% - 200px));
      margin-left: 1.5rem; }
      .relationProducts .relationblock .about .hSt_fifth {
        margin-bottom: 0.75rem; }
      .relationProducts .relationblock .about p {
        line-height: 1.5;
        margin-bottom: 1.5rem;
        word-break: break-all; }
      .relationProducts .relationblock .about span {
        display: block;
        font-size: 1.5rem;
        line-height: 1.5;
        margin-bottom: 1rem; }
        .relationProducts .relationblock .about span p {
          margin-bottom: 0; }
    @media only screen and (max-width: 390px) {
      .relationProducts .relationblock .photo {
        width: 40%; }
      .relationProducts .relationblock .about {
        width: 60%;
        margin-left: 3%; } }

/*---------------------------------
	news // underonly
-----------------------------------*/
.newsarticle .titlebox {
  color: #002063;
  font-weight: bold; }
  .newsarticle .titlebox .date {
    background: url("../imgs/line_dotX.svg") center bottom 0 repeat-x;
    background-size: auto 5px;
    font-size: 1.8rem;
    padding-bottom: 1rem; }
  .newsarticle .titlebox .title {
    font-size: 2rem;
    margin: 1rem 0 3rem; }
.newsarticle .schedule {
  border: #00cfff 5px solid;
  border-radius: 10px;
  padding: 0.2rem 0.5rem;
  color: #002063;
  font-weight: bold; }
.newsarticle .mainbody {
  margin: 5rem 0 5rem 5%; }
  .newsarticle .mainbody p {
    margin-bottom: 1rem; }
  .newsarticle .mainbody blockquote {
    margin: 1.5rem 0 1rem 3rem;
    padding: 1rem 1.5rem;
    border: 5px #d6d6d6 solid;
    border-radius: 10px; }
    .newsarticle .mainbody blockquote p {
      margin: 0; }
    @media only screen and (max-width: 640px) {
      .newsarticle .mainbody blockquote {
        margin: 1.5rem 0 1rem; } }
  .newsarticle .mainbody strong {
    color: #002063; }
  .newsarticle .mainbody .image {
    display: flex;
    flex-wrap: wrap;
    justify-content: start; }
    .newsarticle .mainbody .image div {
      width: min(45% , 480px);
      margin-top: 3rem; }
      .newsarticle .mainbody .image div:nth-of-type(2n) {
        margin-left: 3%; }
      .newsarticle .mainbody .image div img {
        width: 100%;
        aspect-ratio: 4 / 3;
        object-fit: cover;
        border-radius: 10px; }
    @media only screen and (max-width: 640px) {
      .newsarticle .mainbody .image {
        display: block; }
        .newsarticle .mainbody .image div {
          width: min(100% , 420px); } }

/*---------------------------------
	contact
-----------------------------------*/
.contactformLink .lg a, .contactBranch .lg a {
  width: min(18em, 100%);
  font-size: 2rem; }

.contactformLink div {
  margin: 6rem 0; }

.contactInfo dl dt, .contactInfo dl dd {
  /* padding: 1.5rem 1rem 0.5rem;			 */ }
  .contactInfo dl dt h4, .contactInfo dl dt h5, .contactInfo dl dd h4, .contactInfo dl dd h5 {
    margin: 0; }
.contactInfo dl dt {
  width: 12em; }
  @media only screen and (min-width: 1281px) {
    .contactInfo dl dt {
      width: calc( 12em + max(0.5rem, calc((100vw - 1280px) / 2))); } }
.contactInfo dl dd {
  width: calc(100% - 12em); }
  @media only screen and (min-width: 1281px) {
    .contactInfo dl dd {
      width: calc(calc(100% - 12em) - max(0.5rem, calc((100vw - 1280px) / 2))); } }
  .contactInfo dl dd span {
    color: #bf3c3c;
    font-size: 1.3rem;
    line-height: 1.5;
    display: block; }
@media only screen and (max-width: 640px) {
  .contactInfo dl dt, .contactInfo dl dd {
    width: 100%;
    /* padding: 1.5rem 1rem 1rem;	 */ } }

.contactread .area {
  margin: 2rem 0 4rem; }

span.must {
  color: #ff1db4;
  font-weight: bold; }

.contactFrom {
  margin-top: 2rem; }
  .contactFrom textarea {
    border: 4px solid #8de207;
    width: 100%;
    padding: 0.5rem;
    /* margin-bottom: 0.8rem; */
    background: #FFF; }
  .contactFrom select {
    border: 4px solid #8de207;
    /* margin-bottom: 0.8rem; */
    background: #FFF; }
  .contactFrom dl {
    margin-bottom: 3rem; }
    .contactFrom dl dt, .contactFrom dl dd {
      /* padding: 2rem 1rem 0.5rem;			 */ }
    .contactFrom dl dt {
      width: 11em; }
      @media only screen and (min-width: 1281px) {
        .contactFrom dl dt {
          width: calc( 11em + max(0.5rem, calc((100vw - 1280px) / 2))); } }
    .contactFrom dl dd {
      width: calc(100% - 11em); }
      @media only screen and (min-width: 1281px) {
        .contactFrom dl dd {
          width: calc(calc(100% - 11em) - max(0.5rem, calc((100vw - 1280px) / 2))); } }
      .contactFrom dl dd ol {
        margin-bottom: 1rem;
        list-style: decimal; }
        .contactFrom dl dd ol li {
          margin-left: 2rem; }
    @media only screen and (max-width: 640px) {
      .contactFrom dl dt, .contactFrom dl dd {
        width: 100%;
        /* padding: 1.5rem 1rem 0.5rem; */ } }
  .contactFrom .formsent {
    display: flex;
    justify-content: center; }
    .contactFrom .formsent div {
      margin: 2rem 2rem 4rem; }

/*---------------------------------
	text base common
-----------------------------------*/
.tbasecommon dl.lineList {
  margin-bottom: 3rem; }
  .tbasecommon dl.lineList dt, .tbasecommon dl.lineList dd {
    padding: 2rem 1rem; }
  .tbasecommon dl.lineList dt {
    background: url("../imgs/line_dotX.svg") right 0 bottom 0 repeat-x;
    background-size: auto 5px;
    color: #002063;
    font-weight: bold; }
    @media only screen and (min-width: 1281px) {
      .tbasecommon dl.lineList dt {
        padding-left: max(0.5rem, calc((100vw - 1280px) / 2)) !important;
        padding-right: max(0.5rem, calc((100vw - 1280px) / 2)) !important; } }
  .tbasecommon dl.lineList dd {
    margin-left: 10%; }
    @media only screen and (min-width: 1281px) {
      .tbasecommon dl.lineList dd {
        padding-left: max(0.5rem, calc((100vw - 1280px) / 2)) !important;
        padding-right: max(0.5rem, calc((100vw - 1280px) / 2)) !important; } }
    @media only screen and (max-width: 640px) {
      .tbasecommon dl.lineList dd {
        margin-left: 3%; } }
.tbasecommon ul.lineList {
  text-align: center; }
  .tbasecommon ul.lineList li {
    padding: 0.5rem; }
    .tbasecommon ul.lineList li a {
      display: inline-block; }
    .tbasecommon ul.lineList li ul li {
      border-bottom: 1px solid #ffe600; }
      .tbasecommon ul.lineList li ul li:last-of-type {
        border: none; }
  .tbasecommon ul.lineList > li {
    padding: 1rem 0.5rem;
    padding-left: 10vw;
    background: url("../imgs/line_dotX.svg") right 0 top 0 repeat-x;
    background-size: auto 5px; }
    .tbasecommon ul.lineList > li > a {
      font-weight: bold; }
    @media only screen and (min-width: 1281px) {
      .tbasecommon ul.lineList > li {
        padding-left: max(0.5rem, calc((100vw - 1280px) / 2)) !important;
        padding-right: max(0.5rem, calc((100vw - 1280px) / 2)) !important; } }
  .tbasecommon ul.lineList.symmetry li {
    padding-left: 0.5rem; }
.tbasecommon .boxlist {
  background: url("../imgs/line_dotX.svg") right 0 top 0 repeat-x;
  background-size: auto 5px;
  padding-top: 2rem;
  padding-bottom: 2rem; }
  .tbasecommon .boxlist:nth-last-of-type(1) {
    background-image: url("../imgs/line_dotX.svg"), url("../imgs/line_dotX.svg");
    background-position: right 0 bottom 0, right 0 top 0;
    background-repeat: repeat-x;
    background-size: auto 5px; }
  @media only screen and (min-width: 1281px) {
    .tbasecommon .boxlist {
      padding-left: max(0.5rem, calc((100vw - 1280px) / 2)) !important;
      padding-right: max(0.5rem, calc((100vw - 1280px) / 2)) !important; } }
  .tbasecommon .boxlist .blocktext {
    margin: 0.5rem 1rem 0 10%; }

/*# sourceMappingURL=pages.css.map */
