@charset "UTF-8";
/* ----------------------------------------------------
    sassを使用しています。css編集の際はご注意ください。
---------------------------------------------------- */
/* ----------------------------------------------------
    mixin
---------------------------------------------------- */
/* ----------------------------------------------------
color set
---------------------------------------------------- */
/* ----------------------------------------------------
breakpoint
---------------------------------------------------- */
/* ----------------------------------------------------
    mainVisual
---------------------------------------------------- */
.mainVisual {
  padding: 48px 0 20px 0;
  margin: 0;
  background: #fff9e3;
  text-align: center; }
  .mainVisual p {
    padding: 0;
    margin: 20px 0;
    font-size: 20px;
    font-weight: bold;
    color: #ff3061; }
  @media (max-width: 599px) {
    .mainVisual {
      padding: 32px 0 12px; }
      .mainVisual p {
        font-size: 16px;
        font-size: 5vw;
        margin: 36px 0 0; }
        .mainVisual p.lpbtn {
          margin: 20px auto 0 auto;
          width: 90%; } }

/* ----------------------------------------------------
    navi
---------------------------------------------------- */
.navbox {
  padding: 0;
  margin: 0; }
  .navbox .searchBox {
    padding: 50px 0;
    margin: 0;
    color: #fff;
    background: #ff3061; }
  .navbox .areaBox {
    padding: 0;
    margin: 0;
    background: #ffd1d4; }
  .navbox .searchinner {
    margin: 0 auto;
    width: 1024px;
    -js-display: flex;
    display: -webkit-box;
    display: -webkit-flexbox;
    display: -webkit-flex;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -o-flexbox;
    display: flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: flex-end;
    justify-content: flex-end; }
    .navbox .searchinner input {
      border: 0;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      border-radius: 0; }
    .navbox .searchinner input[type="text"] {
      padding: 16px 16px 16px 10px;
      margin: 0;
      width: 500px;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
      font-size: 13px;
      font-size: 4.0625vw;
      backgroud: #fff; }
      @media screen and (min-width: 737px) {
        .navbox .searchinner input[type="text"] {
          font-size: 18px; } }
    .navbox .searchinner input[type="image"] {
      padding: 16px;
      margin: 0;
      cursor: pointer;
      background: #fff;
      width: 42px;
      height: 43px; }
  .navbox input::-webkit-input-placeholder {
    font-size: 16px;
    font-size: 5vw; }
    @media screen and (min-width: 737px) {
      .navbox input::-webkit-input-placeholder {
        font-size: 20px;
        line-height: 1.5rem;
        color: #aaa; } }
  .navbox input:-moz-placeholder {
    font-size: 16px;
    font-size: 5vw; }
    @media screen and (min-width: 737px) {
      .navbox input:-moz-placeholder {
        font-size: 20px;
        line-height: 1.5rem;
        color: #aaa; } }
  .navbox input::-moz-placeholder {
    font-size: 16px;
    font-size: 5vw; }
    @media screen and (min-width: 737px) {
      .navbox input::-moz-placeholder {
        font-size: 20px;
        line-height: 1.5rem;
        color: #aaa; } }
  .navbox input:-ms-input-placeholder {
    font-size: 16px;
    font-size: 5vw; }
    @media screen and (min-width: 737px) {
      .navbox input:-ms-input-placeholder {
        font-size: 20px;
        line-height: 1.5rem;
        color: #aaa; } }
  .navbox .areaNavi {
    padding: 0;
    margin: 0 auto;
    width: 1024px;
    -js-display: flex;
    display: -webkit-box;
    display: -webkit-flexbox;
    display: -webkit-flex;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -o-flexbox;
    display: flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    box-sizing: border-box;
    position: relative; }
    .navbox .areaNavi p.ill {
      padding: 0;
      margin: 0;
      line-height: 0;
      position: absolute;
      bottom: 100%;
      left: 36px;
      z-index: 0; }
      .navbox .areaNavi p.ill img {
        width: 338px;
        height: auto; }
      .navbox .areaNavi p.ill .areaNavi-ill-text {
        position: absolute;
        left: 45%;
        top: 23%;
        line-height: 1.5;
        color: #fff;
        font-weight: bold;
        white-space: nowrap; }
        @media screen and (max-width: 736px) {
          .navbox .areaNavi p.ill .areaNavi-ill-text {
            left: 37%;
            /* top: 13%; */
            top:40px;
            color: #333;
            font-size: 16px; } }
    .navbox .areaNavi p.btn {
      padding: 4px 0;
      margin: 14px 0;
      width: calc(100%/3);
      cursor: pointer;
      text-align: center;
      border-left: 2px solid #fff;
      position: relative;
      z-index: 99;
      font-weight: bold;
      font-size: 20px;
      font-size: 6.25vw; }
      @media screen and (min-width: 737px) {
        .navbox .areaNavi p.btn {
          font-size: 23px; } }
      .navbox .areaNavi p.btn:after {
        content: "";
        display: inline-block;
        background: url(../images/common/icon_arrow06.png) center no-repeat;
        background-size: 100%;
        width: 14px;
        height: 9px;
        position: relative;
        top: -3px;
        margin-left: 16px; }
      .navbox .areaNavi p.btn:hover {
        color: #ff3061;
        -webkit-transition: 0.2s ease-in-out;
        -moz-transition: 0.2s ease-in-out;
        -o-transition: 0.2s ease-in-out;
        transition: 0.2s ease-in-out; }
        .navbox .areaNavi p.btn:hover:after {
          content: "";
          display: inline-block;
          background: url(../images/common/icon_arrow06.png) center no-repeat;
          background-size: 100%;
          width: 14px;
          height: 9px;
          position: relative;
          top: -3px;
          margin-left: 16px;
          -webkit-transition: 0.2s ease-in-out;
          -moz-transition: 0.2s ease-in-out;
          -o-transition: 0.2s ease-in-out;
          transition: 0.2s ease-in-out; }
      .navbox .areaNavi p.btn#chuhokubu {
        border-right: 2px solid #fff; }
    .navbox .areaNavi .navinner {
      margin-right: calc(49.2% - 50vw);
      margin-left: calc(49.2% - 50vw);
      background: #ffd1d4;
      position: absolute;
      top: 73px;
      left: 0;
      z-index: 99;
      width: 100vw; }
      .navbox .areaNavi .navinner#kyotoshinav, .navbox .areaNavi .navinner#nanbunav, .navbox .areaNavi .navinner#chuhokubunav {
        display: none; }
      .navbox .areaNavi .navinner ul {
        padding: 20px;
        margin: 0 auto;
        width: 1024px;
        font-weight: bold;
        -js-display: flex;
        display: -webkit-box;
        display: -webkit-flexbox;
        display: -webkit-flex;
        display: -moz-flexbox;
        display: -ms-flexbox;
        display: -o-flexbox;
        display: flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: space-between;
        justify-content: space-between;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; }
        .navbox .areaNavi .navinner ul:before {
          content: "";
          display: block;
          width: 24%;
          order: 1; }
        .navbox .areaNavi .navinner ul:after {
          content: "";
          display: block;
          width: 24%; }
        .navbox .areaNavi .navinner ul li {
          padding: 0;
          margin: 0;
          border: 0 !important;
          font-size: 13px;
          font-size: 4.0625vw;
          text-align: left;
          width: 24%; }
          @media screen and (min-width: 737px) {
            .navbox .areaNavi .navinner ul li {
              font-size: 18px; } }
          .navbox .areaNavi .navinner ul li a {
            padding: 10px 12px !important;
            margin: 0;
            display: block; }
            .navbox .areaNavi .navinner ul li a:before {
              content: "";
              display: inline-block;
              background: url(../images/common/icon_arrow05.png) center no-repeat;
              background-size: 100%;
              width: 9px;
              height: 14px;
              position: relative;
              top: 1px;
              margin-right: 10px; }
            .navbox .areaNavi .navinner ul li a:hover:before {
              content: "";
              display: inline-block;
              background: url(../images/common/icon_arrow05.png) center no-repeat;
              background-size: 100%;
              width: 9px;
              height: 14px;
              position: relative;
              top: 1px;
              margin-right: 10px; }

@media screen and (max-width: 1024px) {
  .navbox .searchinner {
    width: 90%; }
    .navbox .searchinner input[type="text"] {
      width: calc(100% - 500px); }
  .navbox .areaNavi {
    width: 94%; }
    .navbox .areaNavi .navinner {
      margin-right: calc(50% - 50vw);
      margin-left: calc(50% - 50vw); }
      .navbox .areaNavi .navinner ul {
        width: 100%; } }
@media screen and (max-width: 768px) {
  .navbox .searchBox {
    padding: 40px 0; }
  .navbox .searchinner input[type="text"] {
    padding: 14px 14px 14px 10px; }
  .navbox .searchinner input[type="image"] {
    width: 30px;
    height: 30px; }
  .navbox .areaNavi p.ill {
    bottom: 0;
    left: -20px; }
    .navbox .areaNavi p.ill img {
      width: 300px; }
  .navbox .areaNavi p.btn {
    width: 210px; }
    .navbox .areaNavi p.btn#kyotoshi {
      border-left: 0; } }
@media screen and (max-width: 736px) {
  .navbox .searchBox {
    padding: 36px 0; }
  .navbox .searchinner input[type="text"] {
    padding: 12px;
    width: 100%; }
  .navbox .searchinner input[type="image"] {
    padding: 12px;
    width: 30px;
    height: 30px; }
  .navbox .areaNavi {
    padding-top: 72px;
    width: 100%;
    display: block; }
    .navbox .areaNavi p.ill {
      top: -18px;
      left: 10px; }
      .navbox .areaNavi p.ill img {
        width: 338px; }
    .navbox .areaNavi p.btn {
      padding: 14px 0 14px 34%;
      margin: 0;
      width: 100%;
      box-sizing: border-box;
      text-align: left;
      border-left: 0;
      border-bottom: 2px solid #fff;
      position: relative;
      z-index: 1;
      background: url(../images/common/icon_arrow02.png) 86% center no-repeat;
      background-size: 14px; }
      .navbox .areaNavi p.btn#chuhokubu {
        border-right: 0; }
      .navbox .areaNavi p.btn:after {
        content: none; }
      .navbox .areaNavi p.btn:hover:after {
        content: none; }
    .navbox .areaNavi .navinner {
      margin: 0;
      width: 100%;
      position: static;
      transform: none; }
      .navbox .areaNavi .navinner ul {
        padding: 16px;
        margin: 0;
        border-bottom: 2px solid #fff;
        position: relative;
        z-index: 99; }
        .navbox .areaNavi .navinner ul:before {
          content: none; }
        .navbox .areaNavi .navinner ul:after {
          content: none; }
        .navbox .areaNavi .navinner ul li {
          width: 50%; } }
@media screen and (max-width: 375px) {
  .navbox .areaNavi p.ill {
    top: -10px; } }
@media screen and (max-width: 320px) {
  .navbox .areaNavi {
    padding-top: 72px; }
    .navbox .areaNavi p.ill {
      padding-right: 10px; } }
/* ----------------------------------------------------
    contents
---------------------------------------------------- */
.contentsbox .read {
  margin: 90px auto 40px auto;
  text-align: center; }
  .contentsbox .read .pcbr {
    display: block; }
.contentsbox .btnbox {
  margin: 0 0 90px 0;
  text-align: center; }
.contentsbox .conbnr_1c,
.contentsbox .conbnr_2c {
  margin: 120px 0 140px 0;
  -js-display: flex;
  display: -webkit-box;
  display: -webkit-flexbox;
  display: -webkit-flex;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -o-flexbox;
  display: flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  .contentsbox .conbnr_1c p,
  .contentsbox .conbnr_2c p {
    padding: 0;
    margin: 0; }
  .contentsbox .conbnr_1c .box,
  .contentsbox .conbnr_2c .box {
    margin-top: 30px;
    width: 48%;
    border: 2px solid #ff3061; }
    .contentsbox .conbnr_1c .box a,
    .contentsbox .conbnr_2c .box a {
      -js-display: flex;
      display: -webkit-box;
      display: -webkit-flexbox;
      display: -webkit-flex;
      display: -moz-flexbox;
      display: -ms-flexbox;
      display: -o-flexbox;
      display: flexbox;
      display: flex;
      line-height: 0; }
      .contentsbox .conbnr_1c .box a:hover .btn:after,
      .contentsbox .conbnr_2c .box a:hover .btn:after {
        content: "";
        display: inline-block;
        background: url(../images/common/icon_arrow05.png) center no-repeat;
        background-size: 100%;
        width: 9px;
        height: 14px;
        position: relative;
        top: -1px;
        margin-left: 16px; }
    .contentsbox .conbnr_1c .box img,
    .contentsbox .conbnr_2c .box img {
      width: 250px;
      height: auto;
      line-height: 0; }
    .contentsbox .conbnr_1c .box .textbox,
    .contentsbox .conbnr_2c .box .textbox {
      padding: 0 26px;
      margin: 0;
      -js-display: flex;
      display: -webkit-box;
      display: -webkit-flexbox;
      display: -webkit-flex;
      display: -moz-flexbox;
      display: -ms-flexbox;
      display: -o-flexbox;
      display: flexbox;
      display: flex;
      -webkit-flex-direction: column;
      flex-direction: column;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 250px; }
    .contentsbox .conbnr_1c .box .btn,
    .contentsbox .conbnr_2c .box .btn {
      margin-bottom: 40px;
      font-weight: bold;
      text-align: center;
      font-size: 20px;
      font-size: 6.25vw;
      line-height: 1.5; }
      @media screen and (min-width: 737px) {
        .contentsbox .conbnr_1c .box .btn,
        .contentsbox .conbnr_2c .box .btn {
          font-size: 23px;
          line-height: 1.5; } }
      .contentsbox .conbnr_1c .box .btn:after,
      .contentsbox .conbnr_2c .box .btn:after {
        content: "";
        display: inline-block;
        background: url(../images/common/icon_arrow05.png) center no-repeat;
        background-size: 100%;
        width: 9px;
        height: 14px;
        position: relative;
        top: -1px;
        margin-left: 16px; }
      .contentsbox .conbnr_1c .box .btn span,
      .contentsbox .conbnr_2c .box .btn span {
        display: block; }
      .contentsbox .conbnr_1c .box .btn.vote,
      .contentsbox .conbnr_2c .box .btn.vote {
        margin-bottom: 20px;
        font-feature-settings: "palt"; }
      .contentsbox .conbnr_1c .box .btn.volunteer,
      .contentsbox .conbnr_2c .box .btn.volunteer {
        font-feature-settings: "palt"; }
    .contentsbox .conbnr_1c .box .text,
    .contentsbox .conbnr_2c .box .text {
      font-size: 12px;
      font-size: 3.75vw;
      line-height: 1.4rem; }
      @media screen and (min-width: 737px) {
        .contentsbox .conbnr_1c .box .text,
        .contentsbox .conbnr_2c .box .text {
          font-size: 16px; } }
.contentsbox .conbnr_1c {
  justify-content: center; }
.contentsbox .conbnr {
  -js-display: flex;
  display: -webkit-box;
  display: -webkit-flexbox;
  display: -webkit-flex;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -o-flexbox;
  display: flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between; }
  .contentsbox .conbnr .box {
    text-align: center;
    width: 32%; }
    .contentsbox .conbnr .box a {
      -js-display: flex;
      display: -webkit-box;
      display: -webkit-flexbox;
      display: -webkit-flex;
      display: -moz-flexbox;
      display: -ms-flexbox;
      display: -o-flexbox;
      display: flexbox;
      display: flex;
      -webkit-flex-direction: column;
      flex-direction: column; }
      .contentsbox .conbnr .box a:hover .btn:after {
        content: "";
        display: inline-block;
        background: url(../images/common/icon_arrow05.png) center no-repeat;
        background-size: 100%;
        width: 9px;
        height: 14px;
        position: relative;
        top: -1px;
        margin-left: 16px; }
    .contentsbox .conbnr .box p {
      padding: 0;
      margin: 0; }
  .contentsbox .conbnr img {
    width: 200px;
    height: auto; }
  .contentsbox .conbnr .btn {
    margin: 20px 0 10px 0 !important;
    font-size: 20px;
    font-size: 6.25vw;
    font-weight: bold; }
    @media screen and (min-width: 737px) {
      .contentsbox .conbnr .btn {
        font-size: 23px; } }
    .contentsbox .conbnr .btn:after {
      content: "";
      display: inline-block;
      background: url(../images/common/icon_arrow05.png) center no-repeat;
      background-size: 100%;
      width: 9px;
      height: 14px;
      position: relative;
      top: -1px;
      margin-left: 16px; }
  .contentsbox .conbnr .text {
    font-size: 12px;
    font-size: 3.75vw; }
    @media screen and (min-width: 737px) {
      .contentsbox .conbnr .text {
        font-size: 16px; } }
    .contentsbox .conbnr .text .br {
      display: block; }

@media screen and (max-width: 768px) {
  .contentsbox .conbnr_1c,
  .contentsbox .conbnr_2c {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    .contentsbox .conbnr_1c .box,
    .contentsbox .conbnr_2c .box {
      width: 100%; }
      .contentsbox .conbnr_1c .box:not(:last-child),
      .contentsbox .conbnr_2c .box:not(:last-child) {
        margin-bottom: 30px; }
      .contentsbox .conbnr_1c .box .textbox,
      .contentsbox .conbnr_2c .box .textbox {
        width: 80%; }
      .contentsbox .conbnr_1c .box .btn,
      .contentsbox .conbnr_2c .box .btn {
        margin-bottom: 30px; }
  .contentsbox .conbnr .text .br {
    display: inline; } }
@media screen and (max-width: 736px) {
  .contentsbox .read {
    margin: 60px 0 40px 0;
    width: 100%; }
    .contentsbox .read .pcbr {
      display: inline; }
  .contentsbox .btnbox {
    margin-bottom: 60px; }
  .contentsbox .conbnr_1c,
  .contentsbox .conbnr_2c {
    margin: 60px 0 80px 0;
    text-align: center;
    display: block; }
    .contentsbox .conbnr_1c .box,
    .contentsbox .conbnr_2c .box {
      margin-top: 0;
      margin-bottom: 70px;
      border: 0; }
      .contentsbox .conbnr_1c .box a,
      .contentsbox .conbnr_2c .box a {
        display: block; }
      .contentsbox .conbnr_1c .box .textbox,
      .contentsbox .conbnr_2c .box .textbox {
        padding: 0;
        margin: 30px auto 0 auto;
        width: 72%; }
      .contentsbox .conbnr_1c .box .btn,
      .contentsbox .conbnr_2c .box .btn {
        margin-bottom: 20px; }
      .contentsbox .conbnr_1c .box .text,
      .contentsbox .conbnr_2c .box .text {
        text-align: left; }
  .contentsbox .conbnr {
    display: block; }
    .contentsbox .conbnr .box01, .contentsbox .conbnr .box02, .contentsbox .conbnr .box03 {
      margin-bottom: 50px;
      width: 100%; } }
/* ----------------------------------------------------
.lpContentsWrap
---------------------------------------------------- */
.lpContentsWrap {
  margin-bottom: 140px; }
  .lpContentsWrap p.title {
    padding: 0;
    margin: 0 0 60px 0; }
  .lpContentsWrap .lplinkBox {
    -js-display: flex;
    display: -webkit-box;
    display: -webkit-flexbox;
    display: -webkit-flex;
    display: -moz-flexbox;
    display: -ms-flexbox;
    display: -o-flexbox;
    display: flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    .lpContentsWrap .lplinkBox li {
      margin-bottom: 30px;
      line-height: 0;
      width: 48%; }
      .lpContentsWrap .lplinkBox li:nth-last-child(-n+2) {
        margin-bottom: 0; }

@media screen and (max-width: 736px) {
  .lpContentsWrap {
    margin-bottom: 80px; }
    .lpContentsWrap p.title {
      margin-bottom: 30px; }
    .lpContentsWrap .lplinkBox li {
      margin-bottom: 16px;
      width: 100%; }
      .lpContentsWrap .lplinkBox li:nth-last-child(-n+2) {
        margin-bottom: 16px; } }
/* ----------------------------------------------------
.bnrBottom
---------------------------------------------------- */
.bnrBottom {
  margin-bottom: 140px; }

@media screen and (max-width: 736px) {
  .bnrBottom {
    margin-bottom: 80px; } }
