@charset "UTF-8";
/*!=============================================================================================

　Common

==============================================================================================*/
.flex {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.linkMb {
  color: #333;
  text-decoration: none; }
  @media screen and (min-width: 601px) {
    .linkMb {
      color: #333;
      text-decoration: none;
      pointer-events: none; } }

.sup {
  font-size: 80%;
  vertical-align: middle; }

section + section, section + .section, .section + section, .section + .section {
  margin-top: 80px; }

/* 画像をタップで大きい */
p.tap {
  font-size: 10px;
  font-size: 1rem;
  color: #999;
  text-align: right;
  margin-top: 5px; }
  @media screen and (min-width: 601px) {
    p.tap {
      display: none; } }

/*------------------------------------------------------------------------------------
	生まれたまち
------------------------------------------------------------------------------------*/
#intro {
  /*.photoList {
    margin: 0 -10px 20px;
    @include flexbox;
    li {
      width: calc(100% / 3);
      padding: 0 10px;
    }
    @include mq(mb) {
      margin: 0 -2px 15px;
      li {
        padding: 0 2px;
      }
    }
  }*/ }
  #intro h2 {
    line-height: 1.0;
    text-align: center;
    margin-bottom: 50px; }
    @media screen and (max-width: 600px) {
      #intro h2 {
        margin-bottom: 30px; } }

#intro .profile {
  margin: 0 -15px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  #intro .profile .column {
    width: 50%;
    padding: 0 15px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    #intro .profile .column .img {
      width: 100px;
      margin-right: auto; }
    #intro .profile .column .inner {
      width: calc(100% - 120px);
      font-size: 88.9%;
      line-height: 1.2;
      padding-top: 5px; }
      #intro .profile .column .inner .name {
        font-weight: bold;
        margin-bottom: 10px; }
  @media screen and (max-width: 600px) {
    #intro .profile {
      display: block;
      margin: 0; }
      #intro .profile .column {
        width: 100%;
        padding: 0; }
        #intro .profile .column .inner {
          width: calc(100% - 110px);
          padding-top: 0; }
          #intro .profile .column .inner .name {
            margin-bottom: 5px; }
        #intro .profile .column + .column {
          margin-top: 15px; } }

/*------------------------------------------------------------------------------------
	シールラリー　募集方法
------------------------------------------------------------------------------------*/
#sealRally {
  padding: 30px 15px;
  border: solid 10px #e60012;
  position: relative; }
  #sealRally:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 15px;
    display: block;
    width: 170px;
    height: 215px;
    background: url("../images/sealRally/title.svg") no-repeat left top;
    background-size: cover; }
  @media screen and (max-width: 600px) {
    #sealRally {
      padding: 5px 10px 15px;
      border-width: 5px; }
      #sealRally:before {
        top: -5px;
        left: 10px;
        width: 90px;
        height: 114px; } }
  #sealRally .ttlArea {
    margin-bottom: 30px;
    margin-left: 200px;
    background: url("../images/sealRally/point_silhouette.svg") no-repeat right 15px top; }
    #sealRally .ttlArea h2 {
      font-size: 36px;
      font-size: 3.6rem;
      color: #e60012;
      line-height: 1.3;
      margin-bottom: 15px; }
      #sealRally .ttlArea h2 span {
        padding-right: 130px;
        position: relative; }
        #sealRally .ttlArea h2 span:after {
          display: block;
          content: "";
          position: absolute;
          right: 0;
          bottom: 0;
          width: 130px;
          height: 90px;
          background: url("../images/sealRally/img_campaig.svg") no-repeat center top;
          background-size: cover; }
    @media screen and (max-width: 600px) {
      #sealRally .ttlArea {
        padding-top: 120px;
        margin: 0 0 20px;
        background-size: 120px auto;
        background-position: top right; }
        #sealRally .ttlArea h2 {
          font-size: 24px;
          font-size: 2.4rem;
          line-height: 1.2;
          text-align: center; }
          #sealRally .ttlArea h2 span {
            padding-right: 0; }
            #sealRally .ttlArea h2 span:after {
              top: -45px;
              right: -10px;
              bottom: inherit;
              width: 160px;
              height: 44px;
              background: url("../images/sealRally/img_campaig-sp.svg") no-repeat right bottom; } }

#sealRally .imgList {
  margin-bottom: 25px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center; }
  #sealRally .imgList li {
    width: 225px; }
    #sealRally .imgList li:first-child {
      width: calc(100% - 245px);
      margin-right: auto; }
  @media screen and (max-width: 600px) {
    #sealRally .imgList {
      display: block; }
      #sealRally .imgList li {
        margin: 0 auto; }
        #sealRally .imgList li:first-child {
          width: 100%;
          margin-bottom: 15px; } }

/* 参加の流れ
---------------------------------------------------------------------------*/
#sealRally .block {
  margin: 0 25px 40px; }
  #sealRally .block h3 {
    height: 40px;
    color: #FFF;
    line-height: 1.0;
    font-weight: bold;
    padding-left: 15px;
    margin-bottom: 15px;
    background: #d94852;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center; }
  @media screen and (max-width: 600px) {
    #sealRally .block {
      margin: 0 0 20px; }
      #sealRally .block h3 {
        height: 34px;
        padding-left: 10px; } }

#sealRally .block ul.flow {
  margin: 0 -5px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  #sealRally .block ul.flow li {
    width: calc(100% / 3);
    line-height: 1.5;
    padding: 0 5px; }
    #sealRally .block ul.flow li div {
      width: 100%;
      height: 100%;
      padding: 15px;
      background: #fdebeb;
      border-radius: 10px;
      position: relative; }
      #sealRally .block ul.flow li div:before {
        content: "";
        position: absolute;
        top: calc(50% - 27px);
        right: -20px;
        z-index: 1;
        border-top: 27px solid transparent;
        border-bottom: 27px solid transparent;
        border-left: 20px solid #fdebeb; }
      #sealRally .block ul.flow li div h4 {
        color: #e60012;
        margin-bottom: 5px; }
      #sealRally .block ul.flow li div .sup {
        margin-top: 10px; }
      #sealRally .block ul.flow li div dl {
        margin-top: 10px; }
        #sealRally .block ul.flow li div dl dt {
          display: inline-block;
          font-size: 14px;
          font-size: 1.4rem;
          color: #FFF;
          line-height: 1.0;
          font-weight: bold;
          padding: 3px 10px;
          margin-bottom: 5px;
          border-radius: 10px;
          background: #e60012; }
        #sealRally .block ul.flow li div dl dd {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.3; }
  @media screen and (max-width: 600px) {
    #sealRally .block ul.flow {
      display: block;
      margin: 0; }
      #sealRally .block ul.flow li {
        width: 100%;
        padding: 0; }
        #sealRally .block ul.flow li + li {
          margin-top: 8px; }
        #sealRally .block ul.flow li div:before {
          top: inherit;
          right: calc(50% - 12px);
          bottom: -35px;
          transform: rotate(90deg); } }

#sealRally .block ul.flow li:nth-child(1) div {
  padding-bottom: 85px;
  background: #fdebeb url("../images/sealRally/img_mihon.jpg") no-repeat right 10px bottom 10px; }
  @media screen and (max-width: 600px) {
    #sealRally .block ul.flow li:nth-child(1) div {
      background-size: auto 40px;
      background-position: right 10px bottom 10px;
      padding-bottom: 55px; } }
#sealRally .block ul.flow li:nth-child(2) div {
  background: #fbe0e0; }
  #sealRally .block ul.flow li:nth-child(2) div:before {
    border-left-color: #fbe0e0; }
#sealRally .block ul.flow li:nth-child(3) div {
  background: #f9d0d1; }
  #sealRally .block ul.flow li:nth-child(3) div:before {
    display: none; }
  @media screen and (max-width: 600px) {
    #sealRally .block ul.flow li:nth-child(3) div {
      background-size: auto 50px;
      padding-bottom: 70px; } }

/* Btn - 応募用紙 */
#sealRally .btn {
  width: 500px;
  height: 60px;
  margin: 0 auto; }
  #sealRally .btn a {
    width: 100%;
    height: 100%;
    font-size: 24px;
    font-size: 2.4rem;
    color: #e60012;
    text-decoration: none;
    line-height: 1.0;
    font-weight: bold;
    border: 3px solid #dc7178;
    border-radius: 10px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center; }
    #sealRally .btn a span {
      padding-right: 25px;
      background: url("../images/sealRally/icon_pdf.png") no-repeat right center; }
    #sealRally .btn a:hover {
      color: #FFF;
      text-decoration: none;
      background: #dc7178; }
      #sealRally .btn a:hover span {
        background: url("../images/sealRally/icon_pdf-wh.png") no-repeat right center; }
  @media screen and (max-width: 600px) {
    #sealRally .btn {
      width: 95%;
      max-width: 300px;
      height: 45px; }
      #sealRally .btn a {
        font-size: 18px;
        font-size: 1.8rem; }
        #sealRally .btn a span {
          padding-right: 18px;
          background-size: auto 16px; } }

/* IE11表示用のCSS　*/
_:-ms-fullscreen, :root #sealRally .btn a span {
  padding-top: 3px;
  background-position: right top; }

/*------------------------------------------------------------------------------------
	シールラリー　協賛店
------------------------------------------------------------------------------------*/
#shop {
  counter-reset: number 0; }
  #shop h2 {
    font-size: 32px;
    font-size: 3.2rem;
    color: #75141c;
    line-height: 1.0;
    text-align: center;
    margin-bottom: 30px; }
    #shop h2 span {
      padding: 0 170px;
      position: relative; }
      #shop h2 span:before, #shop h2 span:after {
        content: "";
        position: absolute;
        top: calc(50% - 7px);
        width: 150px;
        height: 15px;
        background: url("../images/line_deco.svg") no-repeat; }
      #shop h2 span:before {
        left: 0; }
      #shop h2 span:after {
        right: 0; }
    @media screen and (max-width: 600px) {
      #shop h2 {
        font-size: 22px;
        font-size: 2.2rem;
        margin-bottom: 20px; }
        #shop h2 span {
          padding: 0 60px; }
          #shop h2 span:before, #shop h2 span:after {
            top: calc(50% - 2px);
            width: 50px;
            background-size: contain; } }
  #shop .catch {
    text-align: center;
    padding-right: 60px;
    margin-bottom: 60px; }
    @media screen and (max-width: 600px) {
      #shop .catch {
        height: 40px;
        padding-right: 20px;
        margin-bottom: 40px; }
        #shop .catch img {
          height: 40px; } }

#shop section h3 {
  margin-bottom: 30px; }
  #shop section h3 img {
    width: 500px; }
#shop section .desc {
  margin-bottom: 30px; }
@media screen and (max-width: 600px) {
  #shop section h3 {
    margin-bottom: 20px; }
    #shop section h3 img {
      width: 300px; }
  #shop section .desc {
    margin-bottom: 20px; } }

#shop section .flex {
  margin: 0 -10px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  #shop section .flex .column {
    width: calc(100% / 3);
    line-height: 1.3;
    padding: 0 10px;
    margin-bottom: 30px; }
    #shop section .flex .column h4 {
      height: 50px;
      font-size: 22px;
      font-size: 2.2rem;
      color: #e60012;
      line-height: 1.0;
      padding-top: 23px;
      padding-left: 50px;
      margin-top: -10px;
      margin-bottom: 10px;
      position: relative; }
      #shop section .flex .column h4:before, #shop section .flex .column h4:after {
        position: absolute;
        top: 0;
        left: 0;
        width: 40px;
        height: 50px; }
      #shop section .flex .column h4:before {
        counter-increment: number 1;
        content: counter(number);
        font-size: 28px;
        font-size: 2.8rem;
        color: #FFF;
        padding-top: 5px;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        -ms-justify-content: center;
        justify-content: center;
        z-index: 1; }
      #shop section .flex .column h4:after {
        content: "";
        background: url("../images/shop/icon_cap.svg") no-repeat;
        background-size: cover; }
      #shop section .flex .column h4 span {
        font-size: 80%;
        margin-left: 5px; }
    #shop section .flex .column .txt.pBtm {
      padding-bottom: 1.3em; }
  @media screen and (max-width: 600px) {
    #shop section .flex {
      display: block;
      max-width: 320px;
      margin: 0 auto; }
      #shop section .flex .column {
        width: 100%;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 0;
        margin-bottom: 30px; }
        #shop section .flex .column h4 {
          height: 40px;
          font-size: 18px;
          font-size: 1.8rem;
          padding-top: 18px;
          padding-left: 40px;
          margin-top: -10px;
          margin-bottom: 10px; }
          #shop section .flex .column h4:before, #shop section .flex .column h4:after {
            width: 32px;
            height: 40px; }
          #shop section .flex .column h4:before {
            font-size: 24px;
            font-size: 2.4rem; }
        #shop section .flex .column .txt.pBtm {
          padding-bottom: 0; } }

#shop section .flex .column .info {
  font-size: 16px;
  font-size: 1.6rem;
  color: #666;
  padding: 10px 10px 0;
  margin-top: 15px;
  border-top: 2px solid #c9c9c9; }
  #shop section .flex .column .info .btn-map {
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    margin-bottom: 3px;
    margin-left: 5px; }
    #shop section .flex .column .info .btn-map a {
      color: #FFF;
      text-decoration: none;
      background: #408D90;
      padding: 3px 5px;
      border-radius: 5px; }
      #shop section .flex .column .info .btn-map a:hover {
        background: #167174; }
    @media screen and (max-width: 600px) {
      #shop section .flex .column .info .btn-map {
        font-size: 10px;
        font-size: 1rem; } }
  #shop section .flex .column .info dl {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    #shop section .flex .column .info dl dt {
      width: 50px;
      position: relative; }
      #shop section .flex .column .info dl dt:after {
        content: "/";
        position: absolute;
        right: 5px; }
      #shop section .flex .column .info dl dt:nth-last-of-type(1) {
        width: 65px; }
    #shop section .flex .column .info dl dd {
      width: calc(100% - 50px); }
      #shop section .flex .column .info dl dd:nth-last-of-type(2):not(.jun) {
        width: 60px; }
      #shop section .flex .column .info dl dd:nth-last-of-type(1) {
        width: calc(100% - 175px); }
      #shop section .flex .column .info dl dd .sup {
        margin-left: 5px; }
  #shop section .flex .column .info.icon-wc {
    background: url("../images/shop/icon_wheelchair.svg") no-repeat right bottom;
    background-size: 24px auto; }
  #shop section .flex .column .info.icon-cl {
    background: url("../images/shop/icon_cashless.svg") no-repeat right bottom;
    background-size: 24px auto; }
  #shop section .flex .column .info.icon-all {
    background: url("../images/shop/icon_wheelchair.svg") no-repeat right bottom, url("../images/shop/icon_cashless.svg") no-repeat right 30px bottom;
    background-size: 24px auto,24px auto; }
  @media screen and (max-width: 600px) {
    #shop section .flex .column .info {
      font-size: 14px;
      font-size: 1.4rem;
      padding: 10px 5px 0;
      margin-top: 10px; }
      #shop section .flex .column .info dl dt {
        width: 42px;
        position: relative; }
        #shop section .flex .column .info dl dt:after {
          right: 3px; }
        #shop section .flex .column .info dl dt:nth-last-of-type(1) {
          width: 55px; }
      #shop section .flex .column .info dl dd {
        width: calc(100% - 42px); }
        #shop section .flex .column .info dl dd:nth-last-of-type(2):not(.jun) {
          width: 50px; }
        #shop section .flex .column .info dl dd:nth-last-of-type(1) {
          width: calc(100% - 147px); }
        #shop section .flex .column .info dl dd .sup {
          margin-left: 5px; }
      #shop section .flex .column .info.icon {
        background-position: right bottom;
        background-size: 26px auto; } }

/* 楽しいパン
---------------------------------------------------------------------------*/
#shop section#bread .flex .column h4 {
  color: #8f3e2e; }
  #shop section#bread .flex .column h4:before, #shop section#bread .flex .column h4:after {
    width: 50px;
    height: 50px; }
  #shop section#bread .flex .column h4:before {
    color: #8f3e2e;
    padding-top: 5px;
    padding-right: 8px; }
  #shop section#bread .flex .column h4:after {
    background: url("../images/shop/icon_bread.svg") no-repeat;
    background-size: contain; }
  @media screen and (max-width: 600px) {
    #shop section#bread .flex .column h4:before, #shop section#bread .flex .column h4:after {
      width: 40px;
      height: 40px; }
    #shop section#bread .flex .column h4:before {
      padding-top: 5px;
      padding-right: 8px; } }

/* いろいろスイーツ
---------------------------------------------------------------------------*/
#shop section#sweets .flex .column h4 {
  color: #e26a45; }
  #shop section#sweets .flex .column h4:before, #shop section#sweets .flex .column h4:after {
    width: 50px;
    height: 50px; }
  #shop section#sweets .flex .column h4:before {
    color: #FFF;
    padding-top: 5px;
    padding-right: 8px; }
  #shop section#sweets .flex .column h4:after {
    background: url("../images/shop/icon_sweets.svg") no-repeat;
    background-size: contain; }
  @media screen and (max-width: 600px) {
    #shop section#sweets .flex .column h4:before, #shop section#sweets .flex .column h4:after {
      width: 40px;
      height: 40px; } }

/* バリアフリー */
#shop .att {
  font-size: 12px;
  font-size: 1.2rem;
  text-align: right; }
  #shop .att span {
    height: 20px;
    padding-left: 25px;
    background: url("../images/shop/icon_cashless.svg") no-repeat left top;
    background-size: 20px auto;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center; }
    #shop .att span:last-of-type {
      background-image: url("../images/shop/icon_wheelchair.svg"); }
    #shop .att span + span {
      margin-left: 20px; }

/*------------------------------------------------------------------------------------
	記念館・絵本巻
------------------------------------------------------------------------------------*/
#hall {
  padding-top: 60px;
  margin-right: -20px;
  margin-left: -20px;
  background: url("../images/line.svg") no-repeat center top;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  #hall section {
    width: 50%;
    padding: 0 20px; }
    #hall section + section {
      margin-top: -15px; }
    #hall section h2 {
      font-size: 28px;
      font-size: 2.8rem;
      color: #e60012;
      text-align: center;
      line-height: 1.0;
      margin-bottom: 10px; }
    #hall section .img {
      margin-bottom: 15px; }
    #hall section .link {
      text-align: right;
      margin-top: 5px; }
  @media screen and (max-width: 600px) {
    #hall {
      display: block;
      padding-top: 40px;
      margin-right: 0;
      margin-left: 0;
      background-size: 280px auto; }
      #hall section {
        width: 100%;
        padding: 0; }
        #hall section + section {
          margin-top: 30px; }
        #hall section h2 {
          font-size: 22px;
          font-size: 2.2rem; }
        #hall section .link {
          text-align: center; } }

#hall section .info {
  font-size: 16px;
  font-size: 1.6rem;
  color: #666;
  padding: 15px 10px;
  margin-top: 15px;
  margin-bottom: 20px;
  border-top: 2px solid #c9c9c9;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  #hall section .info .exterior {
    width: 140px;
    margin-right: auto; }
  #hall section .info .inner {
    width: calc(100% - 155px);
    line-height: 1.3; }
    #hall section .info .inner dl {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      #hall section .info .inner dl dt {
        width: 50px;
        position: relative; }
        #hall section .info .inner dl dt:after {
          content: "/";
          position: absolute;
          right: 5px; }
      #hall section .info .inner dl dd {
        width: calc(100% - 50px); }
  @media screen and (max-width: 600px) {
    #hall section .info {
      font-size: 14px;
      font-size: 1.4rem;
      padding: 10px 5px;
      margin-top: 15px;
      margin-bottom: 10px;
      border-top: 2px solid #c9c9c9;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      #hall section .info .exterior {
        width: 120px;
        margin-right: auto; }
      #hall section .info .inner {
        width: calc(100% - 135px);
        line-height: 1.3; }
        #hall section .info .inner dl dt {
          width: 40px; }
          #hall section .info .inner dl dt:after {
            right: 3px; }
        #hall section .info .inner dl dd {
          width: calc(100% - 40px); } }

#hall section .plan {
  color: #e60012;
  line-height: 1.3;
  font-weight: bold;
  padding: 10px 0;
  border-top: 2px solid #e60012;
  border-bottom: 2px solid #e60012;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  #hall section .plan .ttl {
    width: 95px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    border-right: 2px solid #e60012; }
  #hall section .plan .name {
    width: calc(100% - 95px);
    font-size: 20px;
    font-size: 2rem;
    padding: 0 10px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }
    #hall section .plan .name span.date {
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 7px; }
  @media screen and (max-width: 600px) {
    #hall section .plan {
      display: block;
      padding: 7px; }
      #hall section .plan .ttl {
        width: 100%;
        margin-bottom: 10px;
        border-right: none; }
        #hall section .plan .ttl span {
          padding: 0 5px 5px;
          border-bottom: 3px solid #e60012; }
      #hall section .plan .name {
        width: 100%;
        font-size: 18px;
        font-size: 1.8rem;
        padding: 0; }
        #hall section .plan .name span.date {
          font-size: 14px;
          font-size: 1.4rem;
          margin-top: 4px; } }

/*------------------------------------------------------------------------------------
	同時開催イベント
------------------------------------------------------------------------------------*/
#event {
  margin-top: 80px;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  #event li:first-child {
    margin-right: auto; }
  @media screen and (max-width: 600px) {
    #event {
      margin-top: 50px;
      display: block; }
      #event li + li {
        margin-top: 20px; } }

/*------------------------------------------------------------------------------------
	地図
------------------------------------------------------------------------------------*/
.map {
  margin-top: 80px;
  width: 100%;
  height: 0;
  padding-bottom: 50%;
  position: relative;
  overflow: hidden; }
  .map iframe, .map object, .map embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  @media screen and (max-width: 600px) {
    .map {
      margin-top: 50px;
      padding-bottom: 80%; } }

/*------------------------------------------------------------------------------------
	ダブルチャンス
------------------------------------------------------------------------------------*/
.chance {
  padding: 20px;
  margin: 40px 0 100px;
  background: #FFEEEE; }
  @media screen and (max-width: 600px) {
    .chance {
      padding: 15px;
      margin: 20px 0 60px; } }
  .chance .ttlArea {
    margin-bottom: 20px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center; }
    .chance .ttlArea .img {
      height: 100px;
      margin-right: 20px; }
      .chance .ttlArea .img img {
        height: 100px; }
    .chance .ttlArea .ttl {
      font-weight: bold; }
      .chance .ttlArea .ttl .catch {
        font-size: 26px;
        font-size: 2.6rem;
        color: #e60012; }
    @media screen and (max-width: 600px) {
      .chance .ttlArea {
        margin-bottom: 15px;
        display: block; }
        .chance .ttlArea .img {
          height: 80px;
          text-align: center;
          margin: 0 auto 10px; }
          .chance .ttlArea .img img {
            height: 80px; }
        .chance .ttlArea .ttl {
          line-height: 1.3; }
          .chance .ttlArea .ttl .catch {
            font-size: 20px;
            font-size: 2rem;
            margin-bottom: 10px; }
          .chance .ttlArea .ttl .sup {
            margin-top: 8px; } }
  .chance .question .ttl {
    font-size: 24px;
    font-size: 2.4rem;
    color: #e60012;
    line-height: 1.0;
    font-weight: bold;
    text-align: center;
    letter-spacing: .5em;
    padding: 10px 0;
    margin-bottom: 15px;
    border-top: 2px solid #e60012;
    border-bottom: 2px solid #e60012; }
    @media screen and (max-width: 600px) {
      .chance .question .ttl {
        font-size: 20px;
        font-size: 2rem;
        padding: 8px 0;
        margin-bottom: 10px; } }
  .chance .question ul.flex {
    margin: 0 -20px 30px; }
    .chance .question ul.flex li {
      width: 50%;
      padding: 0 20px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .chance .question ul.flex li .num {
        font-size: 120%;
        color: #e60012;
        font-weight: bold;
        margin-right: 10px; }
      .chance .question ul.flex li p:not(.num) {
        padding-top: 5px; }
    @media screen and (max-width: 600px) {
      .chance .question ul.flex {
        display: block; }
        .chance .question ul.flex li {
          width: 100%; }
          .chance .question ul.flex li + li {
            margin-top: 7px; } }
  .chance .question .txt {
    font-weight: bold;
    text-align: center; }

/*------------------------------------------------------------------------------------
	アンケート
------------------------------------------------------------------------------------*/
#thanks {
  text-align: center;
  padding-top: 40px;
  margin-top: 80px;
  background: url("../images/line.svg") no-repeat center top; }
  #thanks .btn {
    width: 400px;
    height: 50px;
    margin: 20px auto 0; }
    #thanks .btn a {
      width: 100%;
      height: 100%;
      font-size: 24px;
      font-size: 2.4rem;
      color: #e60012;
      text-decoration: none;
      line-height: 1.0;
      font-weight: bold;
      border: 3px solid #dc7178;
      border-radius: 10px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-justify-content: center;
      justify-content: center; }
      #thanks .btn a:hover {
        color: #FFF;
        text-decoration: none;
        background: #dc7178; }
  @media screen and (max-width: 600px) {
    #thanks {
      padding-top: 25px;
      margin-top: 50px;
      background-size: 280px auto; }
      #thanks .btn {
        width: 95%;
        max-width: 300px;
        height: 40px;
        margin-top: 10px; }
        #thanks .btn a {
          font-size: 18px;
          font-size: 1.8rem; } }

/*------------------------------------------------------------------------------------
	サイトオープン前
------------------------------------------------------------------------------------*/
.open {
  width: 100vw;
  height: 100vh;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }
  .open .txt {
    font-size: 3rem;
    font-weight: bold;
    color: #e60012;
    margin-top: 30px; }
