@charset "UTF-8";
/*
 * 管理画面スタイル
 */
.note-editor .note-editable .new_page {
  border-top: 1px dotted;
  position: relative;
}
.note-editor .note-editable .new_page:after {
  content: "印刷時 改ページ";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  background: white;
  color: grey;
}
.note-editor .note-editable .new_page br {
  display: none;
}

/*
 * フロントスタイル
 */
.new_page br {
  display: none;
}

/*
 * 印刷時スタイル
 */
@media print {
  html {
    width: 210mm;
    min-height: 297mm;
  }
  .new_page {
    page-break-before: always;
    margin-top: 15mm;
  }
  .topbody {
    -webkit-print-color-adjust: exact;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
    position: relative;
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    line-height: 1.5em;
  }
  .topbody:before {
    content: "";
    background: #fff url("../img/img_back_wall.jpg") center center repeat fixed;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
  .topbody > * {
    zoom: 0.6;
  }
  .main {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .footer {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  header #header-upper h1 {
    width: 250px;
    height: auto;
    line-height: 0;
    vertical-align: bottom;
    padding: 15px 20px;
  }
  header #header-upper h1 a {
    display: inline-block;
  }
  header #header-upper h1 img {
    width: 100%;
  }
  header #header-upper p {
    line-height: 0;
    vertical-align: bottom;
    margin-bottom: 0;
    padding: 15px 20px;
  }
  header #header-upper p img {
    width: 150px;
    aspect-ratio: 226/46;
    height: auto;
  }
  header #header-nav #globalnav {
    padding: 5px 5px;
  }
  header #header-nav #globalnav ul li {
    height: 30px;
  }
  #contents {
    padding: 30px 0px 50px 0px;
  }
  #contents:after {
    content: "";
    background: white;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
  }
  #pageimage {
    margin: 0px 0px 50px 0px;
  }
  .slidearea {
    width: 100% !important;
  }
  #banner-area {
    margin-top: auto;
  }
  #banner-area ul {
    width: 100%;
    margin: 0 auto;
    padding: 25px 0;
    line-height: 0;
    background: #fff url(../img/img_back_wall.jpg) top center repeat;
  }
  #banner-area ul img {
    width: 200px;
    height: auto;
  }
  footer > div {
    padding: 15px 0px;
  }
  footer > div > div p {
    line-height: 2.5rem;
  }
  footer > div nav ul li {
    line-height: 2.5rem;
  }
  h2 strong {
    font-size: 49px;
  }
  h2 {
    margin: 50px 0 50px 0;
  }
  h3 {
    margin: 10px 0 25px 0;
    font-size: 21px;
  }
  h4 {
    margin: 25px 0px 15px 0px;
    font-size: 17.5px;
  }
  h5 {
    margin: 15px 0px 10px 0px;
  }
  h6 {
    margin: 10px 0px 5px 13px;
  }
  .sp-slides {
    display: none;
  }
  .sp-mask {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 2.8/1;
  }
  .sp-mask:after {
    content: "";
    -o-object-fit: contain;
    width: 100%;
    height: 100%;
    display: block;
    background-image: url("../img/photo_slides01.jpg");
    object-fit: contain;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
  }
  #top-catch p:last-of-type {
    margin-bottom: 0;
  }
  #top-contents {
    margin-bottom: auto;
  }
  .p-top-info {
    margin: 0;
  }
  #biz-top-list {
    margin: 30px 0px 25px 0px;
    border-left: 0;
  }
  #biz-top-list a .service-photo {
    position: relative;
  }
  #biz-top-list a .service-photo:after {
    content: "";
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    z-index: 1;
  }
  #biz-top-list a .service-txt strong {
    font-size: 22px;
  }
  #biz-top-list a:nth-child(3n+1) {
    border-left: 1px solid #000;
  }
  #biz-top-list a:nth-of-type(n+7):nth-of-type(-n+10) {
    page-break-before: always;
    margin-top: 15mm;
  }
  #biz-top-list #houjinzei .service-photo {
    background: url("../img/business/photo_houjinzei_s.jpg");
  }
  #biz-top-list #shotokuzei .service-photo {
    background: url("../img/business/photo_shotokuzei_s.jpg");
  }
  #biz-top-list #iryo .service-photo {
    background: url("../img/business/photo_iryo_s.jpg");
  }
  #biz-top-list #soudan .service-photo {
    background: url("../img/business/photo_soudan_s.jpg");
  }
  #biz-top-list #tachiai .service-photo {
    background: url("../img/business/photo_tachiai_s.jpg");
  }
  #biz-top-list #souzokuzei .service-photo {
    background: url("../img/business/photo_souzokuzei_s.jpg");
  }
  #biz-top-list #zaisan .service-photo {
    background: url("../img/business/photo_zaisan_s.jpg");
  }
  #biz-top-list #nenmatsu .service-photo {
    background: url("../img/business/photo_nenmatsu_s.jpg");
  }
  #biz-top-list #kyuuyo .service-photo {
    background: url("../img/business/photo_kyuuyo_s.jpg");
  }
  .intro {
    margin: 50px auto;
  }
  .intro > div:first-child {
    width: 280px;
  }
  .intro > div img {
    width: 250px;
    height: auto;
  }
  .intro:nth-of-type(4n) {
    page-break-before: always;
    margin-top: 15mm;
    padding-top: 15mm;
  }
  @page {
    margin: 0 5mm;
    size: A4 portrait;
  }
}