@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Shippori+Mincho:wght@700;800;900&display=swap");
/* 共通
-------------------------------------------- */
.snsList {
  padding: 2rem 0 1rem;
  margin-bottom: 0;
  background: #3d2f36;
}

#bg_wrapper {
  background: url("../img/heavbn23_bg.jpg") center top fixed;
}

.heavbn {
  font-size: 16px;
  line-height: 1.3;
  color: #000;
  font-family: "Shippori Mincho", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Verdana", serif;
  letter-spacing: -0.03em;
  font-weight: 500;
}
.heavbn a {
  color: #e60012;
  text-decoration: none;
  font-weight: 500;
}
.heavbn img {
  width: 100%;
}
.heavbn ul.caut {
  list-style-type: none;
  letter-spacing: -0.03em;
  font-family: "Noto Sans JP", sans-serif;
  text-align: left;
}
.heavbn ul.caut.white {
  color: #fff;
}
.heavbn ul.caut li {
  padding-left: 1em;
  text-indent: -1em;
  padding-bottom: 0.3em;
}
.heavbn ul.caut li strong {
  color: #e60012 !important;
}
.heavbn ul.caut li.red {
  color: #e60012;
  font-weight: 500;
}
.heavbn_yokoku {
  font-family: "Noto Sans JP", sans-serif;
  display: block;
  width: 100%;
  background: #ff0000;
  color: #fff;
  text-align: center;
  font-weight: 600;
}

/* PC
-------------------------------------------- */
@media screen and (min-width: 751px), print {
  .sp {
    display: none;
  }
  #wrapper {
    min-width: inherit;
  }
  #bg_wrapper #wrapper2 {
    max-width: none;
  }
  nav.submenu.open {
    left: calc(50% - 500px) !important;
  }
}
@media screen and (min-width: 751px) and (max-width: 1000px) {
  nav.submenu.open {
    left: 0 !important;
  }
}
@media screen and (min-width: 751px), print {
  #maga_head_wrap {
    max-width: inherit;
    width: 100%;
    background: #fff;
    position: relative;
    z-index: 90;
  }
}
@media screen and (min-width: 751px), print {
  #maga_header {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock {
    max-width: 1000px;
    width: 100%;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock > ul.list01 > li {
    max-width: 201px;
    height: 460px;
    width: 20%;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock > ul.list01 > li:first-child {
    max-width: 190px;
    width: 20%;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock > ul.list01 > li > ul {
    margin: 0 10px 0 20px;
  }
}
@media screen and (min-width: 751px), print {
  .sp {
    display: none;
  }
  .heavbn {
    font-size: 16px;
    margin: 0 auto;
    position: relative;
  }
  .heavbn_yokoku {
    font-size: 30px;
    padding: 8px 0 12px;
    line-height: 1;
    letter-spacing: 0.3em;
    padding-left: 0.3em;
  }
  .heavbn_kv {
    max-width: 800px;
    margin: 0 auto;
    line-height: 0;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.4);
  }
  .heavbn_contents_inr {
    text-align: center;
    width: 720px;
    margin: 0 auto 90px;
  }
  .heavbn_contents_inr_ex img {
    width: 460px;
    margin: 60px auto 50px;
  }
  .heavbn_contents_inr_more img {
    width: 570px;
    margin-bottom: 55px;
  }
  .heavbn_contents_inr_date {
    width: 720px;
    border: solid 1px #b92b5d;
    background: #fff;
    margin: 0 auto 50px;
    padding: 20px 15px 30px;
    line-height: 1.1;
  }
  .heavbn_contents_inr_date h5 {
    font-size: 31px;
    color: #b92b5d;
    font-weight: 800;
    background: url(../img/heavbn23_date_deco.jpg) center bottom no-repeat;
    background-size: 689px;
    padding-bottom: 15px;
    margin-bottom: 13px;
  }
  .heavbn_contents_inr_date p {
    font-size: 31px;
    color: #302a2f;
  }
  .heavbn_contents_inr_date p strong {
    font-size: 1.4em;
    vertical-align: -0.04em;
  }
  .heavbn_contents_inr_date ul.caut {
    text-align: center;
    margin-top: 20px;
  }
  .heavbn_contents_inr_flow {
    margin-top: 85px;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li {
    background: #fff;
    padding: 20px 30px 50px;
    margin-bottom: 20px;
    text-align: left;
    position: relative;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li:first-child .heavbn_contents_inr_flow_inr_txt {
    margin: 30px auto;
    letter-spacing: 0;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li:nth-child(2) img {
    width: 210px;
    position: absolute;
    top: 10px;
    right: 26px;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li:nth-child(3) img {
    width: 192px;
    position: absolute;
    top: 10px;
    right: 30px;
  }
  .heavbn_contents_inr_flow_step {
    position: relative;
    font-size: 30px;
    color: #b02c59;
  }
  .heavbn_contents_inr_flow_step span {
    margin-left: 0.4em;
  }
  .heavbn_contents_inr_flow_step strong {
    font-size: 1.7em;
    color: #b02c59;
  }
  .heavbn_contents_inr_flow_step::before {
    position: absolute;
    bottom: 0;
    content: "";
    width: 100%;
    height: 2px;
    background: url("../img/heavbn_step_deco.jpg");
    background-size: 100%;
  }
  .heavbn_contents_inr_flow_txt {
    font-size: 17px;
    margin: 30px auto 0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.08em;
  }
  .heavbn_contents_inr_artpanel_ttl {
    font-size: 29px;
    letter-spacing: -0.05em;
    margin: 80px auto 50px;
    text-shadow: 0 0 6px white, 0 0 6px white, 0 0 6px white, 0 0 6px white, 0 0 6px white, 0 0 6px white, 0 0 6px white, 0 0 6px white, 0 0 6px white;
  }
  .heavbn_contents_inr_artpanel ul {
    width: 662px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .heavbn_contents_inr_artpanel ul li {
    width: 303px;
    margin-bottom: 45px;
  }
  .heavbn_contents_inr_artpanel ul li .btn {
    margin-top: 25px;
    background: #b02c59;
    border-radius: 5px;
  }
  .heavbn_contents_inr_artpanel ul li .btn a {
    color: #fff;
    padding: 8px;
    display: block;
  }
  .heavbn_contents_inr_artpanel ul li .btn a h3 {
    font-size: 28px;
  }
  .heavbn_contents_inr_artpanel ul li .btn a p {
    font-size: 22px;
    font-family: "Noto Sans JP", sans-serif;
  }
  .heavbn_contents_inr_artpanel ul li .btn a p.camera {
    background: #fff;
    color: #b02c59;
    font-weight: 700;
    line-height: 1;
    padding: 5px 0 7px;
    margin-top: 8px;
    position: relative;
  }
  .heavbn_contents_inr_artpanel ul li .btn a p.camera::before {
    content: "";
    width: 32px;
    height: 26px;
    background: url(../img/heavbn23_artpanel_camera.png);
    background-size: 32px;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 6px;
  }
  .heavbn_contents_inr_artpanel ul li:nth-child(3) p:not(.camera), .heavbn_contents_inr_artpanel ul li:last-child h3 {
    letter-spacing: -0.1em;
    transform: scale(0.97, 1);
    margin: 0 -4px;
  }
  .heavbn_contents_inr_artpanel ul li:last-child p:not(.camera) {
    letter-spacing: -0.05em;
  }
  .heavbn_contents_inr .help {
    margin-top: 40px;
    font-family: "Noto Sans JP", sans-serif;
    position: relative;
  }
  .heavbn_contents_inr .help_btn {
    cursor: pointer;
  }
  .heavbn_contents_inr .help_btn h4 {
    background: #be406a;
    font-size: 27px;
    color: #fff;
    text-align: center;
    padding: 13px 0 15px;
    line-height: 1;
    font-weight: 400;
  }
  .heavbn_contents_inr .help_btn:hover {
    opacity: 0.7;
    transition: 0.7s;
  }
  .heavbn_contents_inr .help_btn img {
    width: 27px;
    position: absolute;
    top: 15px;
    right: 20px;
    z-index: 2;
  }
  .heavbn_contents_inr .help_btn .open {
    display: none;
  }
  .heavbn_contents_inr .help_btn.active .close {
    display: none;
  }
  .heavbn_contents_inr .help_btn.active .open {
    display: block;
  }
  .heavbn_contents_inr .help_lst {
    display: none;
    letter-spacing: 0;
  }
  .heavbn_contents_inr .help_lst h5, .heavbn_contents_inr .help_lst h6, .heavbn_contents_inr .help_lst p, .heavbn_contents_inr .help_lst ol, .heavbn_contents_inr .help_lst ul {
    font-size: 16px;
    text-align: left;
  }
  .heavbn_contents_inr .help_lst .caut {
    margin: 10px auto;
  }
  .heavbn_contents_inr .help_lst h5 {
    font-size: 17px;
    font-weight: 600;
    margin: 40px auto 10px;
  }
  .heavbn_contents_inr .help_lst h6 {
    font-weight: 600;
    margin: 20px auto 10px;
  }
  .heavbn_contents_inr .help_lst ol li {
    list-style-type: none;
    padding-left: 1em;
    text-indent: -1em;
    padding-bottom: 0.5em;
  }
  .heavbn_contents_inr .help_lst img {
    width: 155px;
    display: block;
  }
  .heavbn_footer {
    background: #3d2f36;
    text-align: center;
  }
  .heavbn_footer_contact {
    color: #fff;
    background-image: linear-gradient(-45deg, #cd5d82 25%, #c74c75 25%, #c74c75 50%, #cd5d82 50%, #cd5d82 75%, #c74c75 75%, #c74c75);
    background-size: 6px 6px;
    margin-bottom: 20px;
    padding: 40px 0 45px;
  }
  .heavbn_footer_contact_inr {
    width: 720px;
    margin: 0 auto;
    text-shadow: 0 4px 2px #b92b5d;
  }
  .heavbn_footer_contact_inr h4 {
    font-size: 29px;
    border-bottom: solid 1px #fff;
    margin-bottom: 35px;
    padding-bottom: 5px;
    box-shadow: 0 3.3px 0px #b92b5d;
  }
  .heavbn_footer_contact_inr dl {
    line-height: 1.2;
  }
  .heavbn_footer_contact_inr dl dt {
    font-size: 36px;
    margin-bottom: 5px;
  }
  .heavbn_footer_contact_inr dl dd.contact_tel {
    font-size: 60px;
    margin-bottom: 10px;
  }
  .heavbn_footer_contact_inr dl dd.contact_date {
    width: 550px;
    margin: 0 auto;
    font-size: 27px;
    text-align: left;
  }
  .heavbn_footer_contact_inr dl dd.contact_date span {
    font-size: 0.9em;
  }
  .heavbn_footer_copy {
    color: #fff;
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
  }
  .heavbn_footer_pagetop {
    width: 86px;
    position: fixed;
    right: 40px;
    bottom: 24px;
    z-index: 99;
  }
}
/* SP
-------------------------------------------- */
@media screen and (max-width: 750px) {
  .pc {
    display: none;
  }
  .snsList ul {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .snsList ul li,
  .snsList ul a,
  .snsList ul img {
    display: block;
    width: 70px;
    height: 40px;
    font-size: 1em;
    line-height: 0;
    vertical-align: bottom;
  }
  #bg_wrapper {
    background-size: 184.8vw;
  }
  .heavbn {
    font-size: 3.2vw;
    margin: 0 auto;
    position: relative;
  }
  .heavbn_yokoku {
    font-size: 4vw;
    padding: 1.0666666667vw 0 1.6vw;
    line-height: 1;
    letter-spacing: 0.3em;
    padding-left: 0.3em;
  }
  .heavbn_kv {
    max-width: 106.6666666667vw;
    margin: 0 auto;
    line-height: 0;
    box-shadow: 0 0.4vw 1.3333333333vw rgba(0, 0, 0, 0.4);
  }
  .heavbn_contents_inr {
    text-align: center;
    width: 96vw;
    margin: 0 auto 12vw;
  }
  .heavbn_contents_inr_ex img {
    width: 61.3333333333vw;
    margin: 8vw auto 6.6666666667vw;
  }
  .heavbn_contents_inr_more img {
    width: 76vw;
    margin-bottom: 7.3333333333vw;
  }
  .heavbn_contents_inr_date {
    width: 96vw;
    border: solid 0.1333333333vw #b92b5d;
    background: #fff;
    margin: 0 auto 6.6666666667vw;
    padding: 2.6666666667vw 2vw 4vw;
    line-height: 1.1;
  }
  .heavbn_contents_inr_date h5 {
    font-size: 4.1333333333vw;
    color: #b92b5d;
    font-weight: 800;
    background: url(../img/heavbn23_date_deco.jpg) center bottom no-repeat;
    background-size: 91.8666666667vw;
    padding-bottom: 2vw;
    margin-bottom: 1.7333333333vw;
  }
  .heavbn_contents_inr_date p {
    font-size: 4.1333333333vw;
    color: #302a2f;
  }
  .heavbn_contents_inr_date p strong {
    font-size: 1.4em;
    vertical-align: -0.04em;
  }
  .heavbn_contents_inr_date ul.caut {
    text-align: center;
    margin-top: 2.6666666667vw;
  }
  .heavbn_contents_inr_flow {
    margin-top: 11.3333333333vw;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li {
    background: #fff;
    padding: 2.6666666667vw 4vw 6.6666666667vw;
    margin-bottom: 2.6666666667vw;
    text-align: left;
    position: relative;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li:first-child .heavbn_contents_inr_flow_inr_txt {
    margin: 4vw auto;
    letter-spacing: 0;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li:nth-child(2) img {
    width: 28vw;
    position: absolute;
    top: 2.6666666667vw;
    right: 3.4666666667vw;
  }
  .heavbn_contents_inr_flow ul:not(.caut) li:nth-child(3) img {
    width: 25.6vw;
    position: absolute;
    top: 2.6666666667vw;
    right: 4vw;
  }
  .heavbn_contents_inr_flow_step {
    position: relative;
    font-size: 4vw;
    color: #b02c59;
  }
  .heavbn_contents_inr_flow_step span {
    margin-left: 0.4em;
  }
  .heavbn_contents_inr_flow_step strong {
    font-size: 1.7em;
    color: #b02c59;
  }
  .heavbn_contents_inr_flow_step::before {
    position: absolute;
    bottom: 0;
    content: "";
    width: 100%;
    height: 0.2666666667vw;
    background: url("../img/heavbn_step_deco.jpg");
    background-size: 100%;
  }
  .heavbn_contents_inr_flow_txt {
    font-size: 3.2vw;
    margin: 4vw auto 0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.03em;
  }
  .heavbn_contents_inr_artpanel_ttl {
    font-size: 3.8666666667vw;
    letter-spacing: -0.05em;
    margin: 10.6666666667vw auto 6.6666666667vw;
    text-shadow: 0 0 0.8vw white, 0 0 0.8vw white, 0 0 0.8vw white, 0 0 0.8vw white, 0 0 0.8vw white, 0 0 0.8vw white, 0 0 0.8vw white, 0 0 0.8vw white, 0 0 0.8vw white;
  }
  .heavbn_contents_inr_artpanel ul {
    width: 88.2666666667vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
  }
  .heavbn_contents_inr_artpanel ul li {
    width: 40.4vw;
    margin-bottom: 6vw;
  }
  .heavbn_contents_inr_artpanel ul li .btn {
    margin-top: 2.6666666667vw;
    background: #b02c59;
    border-radius: 0.6666666667vw;
  }
  .heavbn_contents_inr_artpanel ul li .btn a {
    color: #fff;
    padding: 1.0666666667vw;
    display: block;
  }
  .heavbn_contents_inr_artpanel ul li .btn a h3 {
    font-size: 3.7333333333vw;
  }
  .heavbn_contents_inr_artpanel ul li .btn a p {
    font-size: 2.9333333333vw;
    font-family: "Noto Sans JP", sans-serif;
  }
  .heavbn_contents_inr_artpanel ul li .btn a p.camera {
    background: #fff;
    color: #b02c59;
    font-weight: 700;
    line-height: 1;
    padding: 0.6666666667vw 0 0.9333333333vw;
    margin-top: 1.0666666667vw;
    position: relative;
  }
  .heavbn_contents_inr_artpanel ul li .btn a p.camera::before {
    content: "";
    width: 4.2666666667vw;
    height: 3.4666666667vw;
    background: url(../img/heavbn23_artpanel_camera.png);
    background-size: 4.2666666667vw;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 0.8vw;
  }
  .heavbn_contents_inr_artpanel ul li:nth-child(3) p:not(.camera), .heavbn_contents_inr_artpanel ul li:last-child h3 {
    letter-spacing: -0.1em;
    transform: scale(0.97, 1);
    margin: 0 -0.5333333333vw;
  }
  .heavbn_contents_inr_artpanel ul li:last-child p:not(.camera) {
    letter-spacing: -0.05em;
  }
  .heavbn_contents_inr .help {
    margin-top: 5.3333333333vw;
    font-family: "Noto Sans JP", sans-serif;
    position: relative;
  }
  .heavbn_contents_inr .help_btn {
    cursor: pointer;
  }
  .heavbn_contents_inr .help_btn h4 {
    background: #be406a;
    font-size: 3.6vw;
    color: #fff;
    text-align: center;
    padding: 1.7333333333vw 0 2vw;
    line-height: 1;
    font-weight: 400;
  }
  .heavbn_contents_inr .help_btn:hover {
    opacity: 0.7;
    transition: 0.7s;
  }
  .heavbn_contents_inr .help_btn img {
    width: 3.6vw;
    position: absolute;
    top: 2vw;
    right: 2.6666666667vw;
    z-index: 2;
  }
  .heavbn_contents_inr .help_btn .open {
    display: none;
  }
  .heavbn_contents_inr .help_btn.active .close {
    display: none;
  }
  .heavbn_contents_inr .help_btn.active .open {
    display: block;
  }
  .heavbn_contents_inr .help_lst {
    display: none;
    letter-spacing: 0;
  }
  .heavbn_contents_inr .help_lst h5, .heavbn_contents_inr .help_lst h6, .heavbn_contents_inr .help_lst p, .heavbn_contents_inr .help_lst ol, .heavbn_contents_inr .help_lst ul {
    font-size: 3.2vw;
    text-align: left;
  }
  .heavbn_contents_inr .help_lst .caut {
    margin: 1.3333333333vw auto;
  }
  .heavbn_contents_inr .help_lst h5 {
    font-size: 3.3vw;
    font-weight: 600;
    margin: 5.3333333333vw auto 1.3333333333vw;
  }
  .heavbn_contents_inr .help_lst h6 {
    font-weight: 600;
    margin: 2.6666666667vw auto 1.3333333333vw;
    text-indent: -2em;
    padding-left: 2em;
  }
  .heavbn_contents_inr .help_lst ol li {
    list-style-type: none;
    padding-left: 1em;
    text-indent: -1em;
    padding-bottom: 0.5em;
  }
  .heavbn_contents_inr .help_lst img {
    width: 41.3333333333vw;
  }
  .heavbn_footer {
    background: #3d2f36;
    text-align: center;
  }
  .heavbn_footer_contact {
    color: #fff;
    background-image: linear-gradient(-45deg, #cd5d82 25%, #c74c75 25%, #c74c75 50%, #cd5d82 50%, #cd5d82 75%, #c74c75 75%, #c74c75);
    background-size: 0.8vw 0.8vw;
    margin-bottom: 2.6666666667vw;
    padding: 5.3333333333vw 0 6vw;
  }
  .heavbn_footer_contact_inr {
    width: 96vw;
    margin: 0 auto;
    text-shadow: 0 0.5333333333vw 0.2666666667vw #b92b5d;
  }
  .heavbn_footer_contact_inr h4 {
    font-size: 3.8666666667vw;
    border-bottom: solid 0.1333333333vw #fff;
    margin-bottom: 4.6666666667vw;
    padding-bottom: 0.6666666667vw;
    box-shadow: 0 0.44vw 0 #b92b5d;
  }
  .heavbn_footer_contact_inr dl {
    line-height: 1.2;
  }
  .heavbn_footer_contact_inr dl dt {
    font-size: 4.8vw;
    margin-bottom: 0.6666666667vw;
  }
  .heavbn_footer_contact_inr dl dd.contact_tel {
    font-size: 8vw;
    margin-bottom: 1.3333333333vw;
  }
  .heavbn_footer_contact_inr dl dd.contact_date {
    width: 73.3333333333vw;
    margin: 0 auto;
    font-size: 3.6vw;
    text-align: left;
  }
  .heavbn_footer_contact_inr dl dd.contact_date span {
    font-size: 0.9em;
  }
  .heavbn_footer_copy {
    color: #fff;
    font-size: 2.6666666667vw;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
  }
  .heavbn_footer_pagetop {
    width: 11.4666666667vw;
    position: fixed;
    right: 2.6666666667vw;
    bottom: 24px;
    z-index: 99;
  }
}/*# sourceMappingURL=style23.css.map */