@charset "UTF-8";
/* Scss Document */
/* ---------- subtitle ---------- */
#subttl {
  background-image: url(../img/bridal/bridal-mainph.jpg);
  padding-bottom: 374px;
  background-repeat: no-repeat;
  background-position: center 30px;
  background-size: 1000px auto;
  margin: 0 auto 35px;
  max-width: 1000px; }
  @media (max-width: 1023px) {
    #subttl {
      padding-bottom: 250px;
      background-size: cover; } }

h2 {
  background-color: #FFFFFF;
  padding: 120px 0 60px;
  width: 100%;
  text-align: center; }
  @media (max-width: 1023px) {
    h2 {
      padding: 50px 0 30px;
      margin: 0 auto; }
      h2 img {
        width: 90%;
        max-width: 403px; } }

#album ul li {
  margin-left: 2em; }

#plan .text li strong {
  color: #2B7D97; }

/* ---------- 3つのプラン ---------- */
#planlist {
  display: flex;
  justify-content: center; }
  @media (max-width: 599px) {
    #planlist {
      flex-wrap: wrap; } }
  #planlist a {
    border: solid #cddee4 2px;
    padding: 0 10px;
    margin-right: 1%; }
    @media (max-width: 599px) {
      #planlist a {
        box-sizing: border-box;
        width: 45%;
        margin: 10px 5px 0;
        padding: 0 5px;
        border: solid #cddee4 1px; } }
    @media (max-width: 599px) {
      #planlist a:first-of-type {
        order: 1; } }
    #planlist a:nth-of-type(2) {
      border: solid #cddee4 5px;
      flex-grow: 1.2; }
      @media (max-width: 599px) {
        #planlist a:nth-of-type(2) {
          order: 0;
          width: 90%;
          margin: 0 auto;
          flex-grow: 0;
          border: solid #cddee4 2px; } }
      @media (max-width: 599px) {
        #planlist a:nth-of-type(2) .box {
          margin: 10px 0; } }
      @media (max-width: 599px) {
        #planlist a:nth-of-type(2) .name img {
          width: 60% !important; } }
      #planlist a:nth-of-type(2) .summary {
        display: inline; }
    #planlist a:nth-of-type(3) {
      margin-right: 0; }
      @media (max-width: 599px) {
        #planlist a:nth-of-type(3) {
          order: 2; } }
      @media (max-width: 599px) {
        #planlist a:nth-of-type(3) .summary:nth-of-type(2) {
          display: none; } }
  #planlist .box {
    margin: 30px 0; }
    @media (max-width: 599px) {
      #planlist .box {
        margin: 10px 0; } }
    @media (max-width: 599px) {
      #planlist .box .name img {
        width: 100%; } }
    #planlist .box .price {
      text-align: center;
      margin: 0 auto 10px;
      color: #2c7e97 !important;
      font-size: 40px !important;
      padding: 20px 0 0; }
      @media (max-width: 599px) {
        #planlist .box .price {
          font-size: 28px !important; } }
      #planlist .box .price span {
        font-size: 13px; }
      @media (max-width: 1023px) {
        #planlist .box .price img {
          width: 100%;
          max-width: 260px; } }
    #planlist .box .price_holiday {
      color: #2c7e97;
      margin-bottom: 20px; }
      #planlist .box .price_holiday span {
        font-size: 12px; }
    #planlist .box .name, #planlist .box .price {
      margin-bottom: 10px; }
    @media (max-width: 599px) {
      #planlist .box .summary {
        font-size: 12px;
        margin: 0;
        text-align: center;
        padding: 0; } }
  #planlist a .box .campaign {
    border-width: 2px;
    border-color: #c7bda0;
    border-style: solid;
    background-color: #b0a274;
    -webkit-border-radius: 17px;
    -moz-border-radius: 17px;
    border-radius: 17px;
    padding: 2px 5px;
    color: #FFFFFF;
    margin-top: 10px; }
  #planlist a:hover {
    text-decoration: none;
    color: #79aec0; }

/* ---------- main ---------- */
main {
  text-align: center; }
  main p.link {
    font-size: 140%; }
    @media (max-width: 1023px) {
      main p.link {
        white-space: nowrap;
        line-height: 150%; } }
  main p a {
    color: #b5a25d; }
    main p a:visited {
      color: #93844c; }

/* ---------- 9つの不安 ---------- */
#fuan {
  margin: 0 auto;
  width: 800px;
  padding-top: 120px;
  padding-bottom: 80px; }
  @media (max-width: 599px) {
    #fuan {
      padding-top: 40px; } }
  #fuan h1 img {
    width: 300px; }
  #fuan h2 {
    font-family: a-otf-ud-reimin-pr6n, Times New Roman, "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    color: #2c7e97;
    font-size: 28px; }
  #fuan .answer {
    text-align: left;
    padding-left: 130px; }
  #fuan h3 {
    background-repeat: no-repeat;
    padding-left: 140px;
    min-height: 40px;
    color: #2c7e97;
    vertical-align: middle;
    cursor: pointer;
    text-align: left;
    display: table-cell;
    background-position: left center;
    width: 565px; }

#fuan1 h3 {
  background-image: url(../img/bridal/insecurity-1.png); }

#fuan2 h3 {
  background-image: url(../img/bridal/insecurity-2.png); }

#fuan3 h3 {
  background-image: url(../img/bridal/insecurity-3.png); }

#fuan4 h3 {
  background-image: url(../img/bridal/insecurity-4.png); }

#fuan5 h3 {
  background-image: url(../img/bridal/insecurity-5.png); }

#fuan6 h3 {
  background-image: url(../img/bridal/insecurity-6.png); }

#fuan7 h3 {
  background-image: url(../img/bridal/insecurity-7.png); }

#fuan8 h3 {
  background-image: url(../img/bridal/insecurity-8.png); }

#fuan9 h3 {
  background-image: url(../img/bridal/insecurity-9.png); }

@media (max-width: 1023px) {
  #fuan {
    width: 90%; } }
#fuan p.click {
  cursor: pointer;
  vertical-align: middle;
  display: table-cell; }
#fuan .answer {
  clear: both;
  display: block; }
  @media (max-width: 1023px) {
    #fuan .answer {
      padding-left: 0;
      margin-top: 20px; } }
#fuan .solution {
  margin: 80px auto 40px;
  clear: both;
  background-image: url(../img/bridal/solution.png);
  background-repeat: no-repeat;
  background-position: center top;
  padding-top: 75px;
  color: #2c7e97;
  font-size: 120%; }
  @media (max-width: 1023px) {
    #fuan .solution {
      background-size: contain; } }
  #fuan .solution img {
    padding-bottom: 10px; }
    @media (max-width: 1023px) {
      #fuan .solution img {
        width: 100%; } }
#fuan section {
  display: table;
  margin-top: 40px; }
  @media (max-width: 1023px) {
    #fuan section {
      display: block; } }
@media (max-width: 1023px) {
  #fuan h2 {
    font-size: 120%;
    padding: 20px 30px; } }
@media (max-width: 1023px) {
  #fuan h3 {
    background-size: 70px;
    /*font-size:60%;*/
    padding-left: 75px;
    box-sizing: content-box;
    width: 80%;
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-decoration: underline; } }
@media (max-width: 1023px) {
  #fuan p.click {
    display: none; } }

/* ---------- ブライダルフォトプラン ---------- */
#plan {
  margin: 0 auto;
  max-width: 1000px;
  width: 100%;
  padding-top: 30px; }
  #plan h3 {
    padding: 10px 0;
    background-color: #2c7e97;
    margin-bottom: 50px; }
    @media (max-width: 1023px) {
      #plan h3 img {
        width: 90%;
        padding: 2px 0; } }
  #plan section {
    /*border-bottom: 1px dashed #2c7e97;*/
    padding-bottom: 60px;
    padding-top: 40px; }
    #plan section section {
      border-bottom: none;
      padding-bottom: 0; }
  #plan .content {
    margin: 0 0 0 100px;
    display: table;
    width: 800px;
    text-align: left; }
    @media (max-width: 1023px) {
      #plan .content {
        margin: 0;
        display: block;
        width: 100%;
        text-align: center; } }
    #plan .content h4 {
      display: table-cell;
      vertical-align: top;
      padding-top: 30px;
      padding-right: 40px;
      width: 200px; }
      @media (max-width: 1023px) {
        #plan .content h4 {
          display: block;
          vertical-align: middle;
          padding-right: 0;
          width: 205px;
          margin: 0 auto; } }
      #plan .content h4 img {
        width: 200px; }
    #plan .content .price_area {
      font-size: 24px;
      display: table-cell;
      vertical-align: middle;
      padding-right: 90px; }
      @media (max-width: 1023px) {
        #plan .content .price_area {
          font-size: 24px;
          padding-right: 0;
          display: block;
          margin-top: 20px; } }
      #plan .content .price_area img {
        width: 300px; }
      #plan .content .price_area .price {
        font-size: 46px;
        color: #2c7e97;
        padding: 30px 0 20px; }
        #plan .content .price_area .price span {
          font-size: 14px; }
    #plan .content .album {
      display: table-cell; }
      @media (max-width: 1023px) {
        #plan .content .album {
          display: block;
          margin-top: 20px; } }
    #plan .content .more {
      font-size: 22px;
      display: table-cell;
      vertical-align: middle;
      padding-left: 90px; }
  #plan .text {
    margin: 35px auto 0;
    text-align: left;
    max-width: 800px;
    padding-left: 1em;
    width: 80%; }
    #plan .text li {
      list-style: none;
      text-indent: -1em; }
    #plan .text .notice {
      font-size: 80%; }
  #plan .recommend {
    display: table;
    margin: 50px 0 0 100px;
    /* [disabled]max-width: 800px; */ }
    @media (max-width: 1023px) {
      #plan .recommend {
        display: block;
        margin: 0; } }
    #plan .recommend h5 {
      display: table-cell;
      vertical-align: middle;
      padding: 0;
      height: 28px;
      line-height: 1em; }
      @media (max-width: 1023px) {
        #plan .recommend h5 {
          display: block;
          vertical-align: middle;
          padding: 0;
          height: 28px;
          line-height: 1em;
          margin: 40px auto 20px; } }
    #plan .recommend p {
      display: table-cell;
      vertical-align: middle;
      color: #2c7d97;
      padding-left: 10px; }
      @media (max-width: 1023px) {
        #plan .recommend p {
          display: block;
          vertical-align: middle;
          padding-left: 0;
          white-space: nowrap;
          margin: 0 auto 10px;
          width: 90%; } }
  #plan .photo {
    margin: 50px auto 0;
    max-width: 1000px; }
    #plan .photo p {
      width: 33.3%; }
    #plan .photo img {
      width: 100%; }
  @media (max-width: 1023px) {
    #plan p.photo {
      margin-top: 20px; }
      #plan p.photo img {
        width: 100%; } }
  #plan .price p img {
    padding-top: 25px; }
  #plan #plan_b {
    margin-top: 0;
    padding-top: 0; }
    #plan #plan_b .cvbtn {
      width: 90%; }

#plan_a {
  padding-top: 80px; }
  @media (max-width: 1023px) {
    #plan_a .cvbtn {
      width: 90%; } }

#plan_c .cvbtn {
  width: 90%; }

/* ---------- 秋のキャンペーン ---------- */
#campaign-fall {
  border: none; }
  #campaign-fall .contents {
    background-image: url(../img/bridal/campaign_fall-btm.png), url(../img/bridal/campaign_fall-bg.png);
    background-repeat: no-repeat, repeat-y;
    background-size: 100% auto, 100% auto;
    background-position: left bottom, left bottom;
    padding: 0 0 43px; }
  #campaign-fall h5 {
    margin: 0;
    padding: 0;
    line-height: 0; }
    #campaign-fall h5 img {
      width: 100%;
      height: auto; }
  #campaign-fall .contents .campaign-photo {
    width: 364px;
    float: left;
    margin-left: 80px;
    margin-top: 40px; }
    #campaign-fall .contents .campaign-photo img {
      width: 100%; }
  #campaign-fall .contents .campaign-text {
    float: right;
    width: 440px;
    text-align: left;
    padding: 40px 40px 40px 20px; }
  #campaign-fall .campaign-text ul li {
    list-style-position: outside;
    list-style-type: disc;
    margin-left: 1em;
    font-size: 80%; }
  #campaign-fall .contents .campaign-text ul {
    background-color: #FFFFFF;
    padding: 20px;
    margin-top: 20px; }

@media (max-width: 1023px) {
  #campaign-fall {
    width: 95%;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 21px; }
    #campaign-fall .contents .campaign-photo {
      width: 80%;
      float: none;
      margin: 0 auto;
      padding: 40px 0 0; }
    #campaign-fall .contents .campaign-text {
      float: none;
      width: 80%;
      text-align: left;
      padding: 10%; } }
/* ---------- 流れ ---------- */
#flow {
  margin-top: 70px; }
  #flow h4 {
    margin-bottom: 80px; }
  #flow p img {
    width: 918px; }

@media (max-width: 1023px) {
  #flow {
    width: 100%;
    margin-top: 30px; }
    #flow h4 {
      margin-bottom: 30px; }
      #flow h4 img {
        width: 80%; }
    #flow p {
      overflow: scroll; }
      #flow p img {
        width: 90%;
        max-width: 400px; } }
/* ---------- オプション---------- */
#option {
  margin: 70px auto 0;
  background-color: #d4ebea;
  padding: 60px 70px;
  max-width: 800px; }
  #option h4 {
    color: #2c7e97;
    font-size: 1.13em;
    margin-bottom: 50px; }
  #option h5 {
    text-align: left;
    margin-top: 30px;
    padding-left: 1em;
    text-indent: -1em; }
  #option p {
    text-align: left;
    padding-left: 1em; }

@media (max-width: 1023px) {
  #option {
    padding: 30px; } }
/* ---------- よくいただく質問---------- */
#faq {
  margin: 80px auto 0;
  max-width: 1000px;
  width: 100%;
  border-bottom: #2c7e97 solid 1px;
  padding-bottom: 30px; }
  #faq h4 {
    color: #2c7e97;
    font-size: 1.5em;
    border-bottom: solid #2c7e97 1px;
    margin-bottom: 45px;
    padding-bottom: 10px; }
  #faq h5 {
    text-align: left;
    margin: 60px 0 10px;
    font-size: 100%; }
  #faq p {
    text-align: left;
    font-size: 90%; }
  #faq .inner {
    margin: 0 auto;
    max-width: 900px;
    width: 90%; }

/* ---------- 9つの不安リンク---------- */
.worry_link a {
  background-color: #2c7e97;
  color: #ffffff !important;
  padding: 30px 40px;
  font-size: 24px;
  border-radius: 50px;
  display: inline-block;
  margin-top: 80px;
  box-sizing: border-box;
  text-decoration: none; }
  .worry_link a:hover {
    opacity: 0.8; }

/* ---------- アルバム---------- */
#album {
  margin: 0 auto;
  padding: 60px 0 100px;
  width: 600px; }
  #album .type {
    width: 295px;
    float: left;
    margin-top: 40px; }
  #album .notice {
    text-align: right;
    font-size: 75%;
    margin-bottom: 50px;
    clear: both;
    padding-top: 20px; }
  #album .type:first-of-type {
    margin-right: 7px; }
  #album .type h3 {
    color: #2c7d97;
    text-align: center;
    margin-bottom: 5px;
    margin-top: 10px; }
  #album .type p {
    font-size: 75%; }
    #album .type p.text {
      padding: 0 5px; }
  #album .type h3 span {
    font-weight: normal;
    font-size: 80%; }
  #album h2 {
    background-image: url(../img/common/logo_bl.svg);
    background-repeat: no-repeat;
    background-size: 257px;
    background-position: center top;
    padding-top: 108px; }
    #album h2 img {
      width: 232px; }
  #album .cover {
    margin: 40px 0; }

@media (max-width: 768px) {
  #album {
    width: 90%; }
    #album .type {
      width: 295px;
      float: none;
      margin: 40px auto 0; }
      #album .type:first-of-type {
        margin-right: auto; }
    #album .cover img {
      width: 100%; }
    #album .notice {
      white-space: nowrap; } }
/* --- 早割ウインドウ --- */
#hayawari {
  margin: 0 auto;
  width: 90%;
  max-width: 498px;
  position: relative; }
  #hayawari h1 {
    padding: 0;
    background: none;
    position: absolute;
    top: 100px; }
    #hayawari h1 img {
      width: 100%;
      z-index: 0; }
  #hayawari .text {
    width: 100%;
    padding-left: 260px;
    padding-top: 90px;
    background-image: url(../img/bridal/hayawari-02.png);
    background-repeat: no-repeat;
    background-position: left top;
    z-index: 5;
    top: 290px;
    margin-left: -80px;
    position: absolute;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }

@media (max-width: 768px) {
  #hayawari h1 {
    position: relative;
    top: 0;
    padding-top: 40px; }
  #hayawari .text {
    position: relative;
    padding: 0 0 209px;
    margin: 20px 0 0;
    background-position: center bottom;
    text-align: center;
    top: 0; } }
/* --- 早割リンク --- */
.hayawari {
  position: fixed;
  bottom: 10px;
  left: 10px; }

@media (max-width: 768px) {
  .hayawari {
    position: fixed;
    bottom: 60px;
    left: 10px; }

  .hayawari img {
    width: 69px; } }
