.breadcrumb {
  margin-top: 2.5em; }
  @media screen and (max-width: 739px) {
    .breadcrumb {
      margin-top: 4.6875em; } }

#pagehead {
  padding-top: 10.625em;
  margin-bottom: 6.875em;
  position: relative;
  text-align: center; }
  #pagehead .pagettl {
    margin-bottom: 4.375em; }
    #pagehead .pagettl .en {
      line-height: 0;
      margin-bottom: 0.875em; }
      #pagehead .pagettl .en img {
        width: 7.5em; }
    #pagehead .pagettl .jp {
      font-size: 1em; }
  #pagehead .gunre {
    margin-bottom: 1.125em; }
    #pagehead .gunre span {
      display: inline-block;
      font-size: 0.875em;
      line-height: 1;
      padding: 0.5714285714em 0;
      border-bottom: 1px solid #535353; }
  #pagehead .num {
    position: absolute;
    right: 2.0833333333%;
    bottom: 0;
    font-size: 7.5em;
    line-height: 1;
    color: #dfdfdf; }
  #pagehead .ttl {
    font-size: 2.25em;
    line-height: 1.2777777778;
    letter-spacing: 0.1em; }
  #pagehead .place {
    font-size: 1em;
    line-height: 1.75;
    margin-top: 1.7142857143em; }
    #pagehead .place div {
      display: inline; }
  #pagehead .terms {
    margin-top: 1.125em; }
  #pagehead.post_style1 .peoples {
    display: inline-block;
    margin-top: 2.1875em;
    text-align: left; }
    #pagehead.post_style1 .peoples .p_item {
      display: inline-flex;
      align-items: center; }
      #pagehead.post_style1 .peoples .p_item:not(:last-child) {
        margin-right: 2.1875em; }
      #pagehead.post_style1 .peoples .p_item .pi_photo {
        line-height: 0;
        width: 6.25em;
        height: 6.25em;
        overflow: hidden;
        border-radius: 50%;
        margin-right: 1.25em; }
        #pagehead.post_style1 .peoples .p_item .pi_photo img {
          width: 100%; }
      #pagehead.post_style1 .peoples .p_item .pi_txt {
        font-size: 0.875em;
        line-height: 1.5714285714; }
  #pagehead.post_style2 .num {
    display: none; }
  #pagehead.post_style2 .peoples {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 4.125em; }
    #pagehead.post_style2 .peoples .p_item {
      width: 100%;
      display: flex; }
      #pagehead.post_style2 .peoples .p_item .pi_photo {
        text-align: right;
        width: 50%;
        box-sizing: border-box;
        padding-right: 1.3125em;
        line-height: 0; }
        #pagehead.post_style2 .peoples .p_item .pi_photo img {
          width: 11em; }
      #pagehead.post_style2 .peoples .p_item .pi_txt {
        text-align: left;
        width: 50%;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        padding-left: 1.3125em; }
        #pagehead.post_style2 .peoples .p_item .pi_txt .pi_name {
          line-height: 1.5714285714;
          font-weight: bold;
          margin: auto 0; }
        #pagehead.post_style2 .peoples .p_item .pi_txt .pi_product {
          font-size: 0.75em;
          line-height: 1.5833333333; }
          #pagehead.post_style2 .peoples .p_item .pi_txt .pi_product .pip_area_ttl {
            font-weight: bold;
            color: #a9a9a9;
            margin-bottom: 0.5em; }
          #pagehead.post_style2 .peoples .p_item .pi_txt .pi_product .pip_ttl {
            display: inline-block;
            font-weight: bold; }
          #pagehead.post_style2 .peoples .p_item .pi_txt .pi_product .pip_sub {
            display: inline-block;
            text-decoration: underline; }
          #pagehead.post_style2 .peoples .p_item .pi_txt .pi_product .pip_item {
            display: inline-block; }
            #pagehead.post_style2 .peoples .p_item .pi_txt .pi_product .pip_item:not(:last-child) {
              margin-right: 1em; }
  @media screen and (max-width: 739px) {
    #pagehead {
      padding-top: 6.71875em;
      margin-bottom: 5.3125em; }
      #pagehead .pagettl {
        margin-bottom: 2.5em; }
        #pagehead .pagettl .en {
          margin-bottom: 0.9375em; }
          #pagehead .pagettl .en img {
            width: 8em; }
      #pagehead .gunre {
        margin-bottom: 3.125em; }
        #pagehead .gunre span {
          font-size: 0.875em; }
      #pagehead .num {
        position: static;
        font-size: 2.25em;
        text-align: center;
        margin-bottom: 0.4861111111em; }
      #pagehead .ttl {
        font-size: 1.875em;
        line-height: 1.2666666667;
        margin-left: -4rem;
        margin-right: -4rem; }
      #pagehead .place {
        font-size: 1.25em;
        line-height: 1.25;
        margin-top: 1.7142857143em; }
        #pagehead .place .p_main {
          display: block; }
        #pagehead .place .p_info {
          font-size: 0.7em; }
      #pagehead .terms {
        margin-top: 0.9375em; }
      #pagehead.post_style1 .peoples {
        margin-top: 2.03125em;
        display: inline-block;
        text-align: left; }
        #pagehead.post_style1 .peoples .p_item {
          display: flex; }
          #pagehead.post_style1 .peoples .p_item:not(:last-child) {
            margin-right: 0;
            margin-bottom: 1.25em; }
          #pagehead.post_style1 .peoples .p_item .pi_photo {
            width: 5.625em;
            height: 5.625em;
            margin-right: 1.25em; }
          #pagehead.post_style1 .peoples .p_item .pi_txt {
            font-size: 0.875em;
            line-height: 1.5214285714; }
      #pagehead.post_style2 .peoples .p_item:not(:last-child) {
        margin-right: 0;
        margin-bottom: 1.25em; }
      #pagehead.post_style2 .peoples .p_item .pi_photo {
        padding-right: 0.65625em; }
        #pagehead.post_style2 .peoples .p_item .pi_photo img {
          width: 6.75em; }
      #pagehead.post_style2 .peoples .p_item .pi_txt {
        padding-left: 0.65625em; }
        #pagehead.post_style2 .peoples .p_item .pi_txt .pi_name {
          font-size: 0.875em; }
        #pagehead.post_style2 .peoples .p_item .pi_txt .pi_product {
          font-size: 0.6875em; } }

#content {
  margin-bottom: 9.375em;
  overflow: hidden; }
  #content.post_style2 article {
    width: 66.5625em;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%; }
  @media screen and (max-width: 739px) {
    #content {
      margin-bottom: 6.875em; } }

#gallery {
  padding-bottom: 7.6875em;
  position: relative; }
  #gallery::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 9.375em;
    width: 100%;
    height: 100%;
    background-color: #f2f2f2; }
  #gallery ._box {
    position: relative;
    z-index: 1;
    padding: 6.25em 6.75em;
    padding-top: 4.6875em;
    background-color: #FFF; }
    #gallery ._box .g_ttl {
      text-align: center;
      margin-bottom: 3.75em; }
      #gallery ._box .g_ttl h3 {
        font-size: 1.625em;
        line-height: 1.35; }
      #gallery ._box .g_ttl .name {
        font-size: 0.875em;
        color: #a9a9a9; }
    #gallery ._box .gallery .cols_inner {
      margin-right: -1.5625em;
      margin-bottom: -1.8125em;
      line-height: 0;
      justify-content: flex-start; }
      #gallery ._box .gallery .cols_inner .col {
        padding-right: 1.5625em;
        padding-bottom: 1.8125em;
        cursor: pointer; }
        #gallery ._box .gallery .cols_inner .col .g_item_inner {
          position: relative;
          z-index: 1;
          overflow: hidden; }
        #gallery ._box .gallery .cols_inner .col img {
          -webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
          -moz-transition: -moz-transform 0.5s, opacity 0.5s;
          transition: transform 0.5s, opacity 0.5s; }
        #gallery ._box .gallery .cols_inner .col:active img, #gallery ._box .gallery .cols_inner .col:hover img {
          opacity: 0.6;
          transform: scale(1.08); }
  @media screen and (max-width: 739px) {
    #gallery {
      padding-bottom: 6.25em; }
      #gallery::before {
        top: 5.625em; }
      #gallery ._box {
        padding: 4.0625em 2.5em;
        padding-top: 3.75em; }
        #gallery ._box .g_ttl {
          margin-bottom: 2.8125em; }
          #gallery ._box .g_ttl h3 {
            font-size: 1.4375em; }
          #gallery ._box .g_ttl .name {
            font-size: 0.8125em; }
        #gallery ._box .gallery .cols_inner {
          margin-right: -0.625em;
          margin-bottom: -0.625em;
          line-height: 0; }
          #gallery ._box .gallery .cols_inner .col {
            padding-right: 0.625em;
            padding-bottom: 0.625em; } }

.modalwin .mw_container {
  line-height: 0;
  height: calc( 100% - 17.5em );
  position: relative; }
  .modalwin .mw_container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 0 1.0625em rgba(0, 0, 0, 0.18)); }
@media screen and (min-width: 740px) and (max-height: 1040px) {
  .modalwin .mw_container {
    max-height: 56.875em;
    height: calc( 100% - 12.5em );
    margin-top: -4.375em;
    margin-bottom: -0.625em; } }

@media screen and (max-width: 739px) {
  .modalwin .mw_container {
    height: calc( 100% - 15.5em ); } }

#product {
  margin-bottom: 8.75em;
  background-color: #3f6587;
  color: #FFF;
  text-align: center;
  padding: 5em 0; }
  #product h3 {
    font-size: 1.125em;
    line-height: 1;
    font-weight: bold;
    margin-bottom: 1.7777777778em; }
  #product .item {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; }
    #product .item:not(:last-child) {
      margin-bottom: 4em; }
    #product .item .photo {
      line-height: 0;
      width: 26.25em;
      margin-right: 2.5em; }
      #product .item .photo img {
        box-shadow: 0 0 1.0625em rgba(0, 0, 0, 0.23); }
    #product .item .txt {
      text-align: left;
      line-height: 1.5;
      width: 26.25em; }
    #product .item .more {
      width: 100%;
      margin-top: 2em; }
      #product .item .more .btn {
        font-size: 0.875em; }
  @media screen and (max-width: 1079px) {
    #product .item {
      display: block;
      margin-bottom: 1.875em; }
      #product .item .photo {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 1.5em; }
      #product .item .txt {
        width: 100%;
        text-align: center; } }
  @media screen and (max-width: 739px) {
    #product {
      margin-bottom: 7.5em;
      padding: 4.6875em 0; }
      #product h3 {
        font-size: 1.14375em;
        margin-bottom: 1.8579234973em; }
      #product .item {
        display: block;
        margin-bottom: 1.875em; }
        #product .item .photo {
          width: 20.875em; }
        #product .item .txt {
          font-size: 1em;
          line-height: 1.84375; }
      #product .more .btn {
        font-size: 0.875em; } }

#otherpost.post_style2 .base {
  display: flex;
  justify-content: space-between; }
  #otherpost.post_style2 .base ._nm {
    border-radius: 1.875em; }
  #otherpost.post_style2 .base .prev,
  #otherpost.post_style2 .base .next {
    width: 0;
    flex-grow: 1; }
    #otherpost.post_style2 .base .prev a,
    #otherpost.post_style2 .base .next a {
      display: flex;
      align-items: center;
      height: 100%;
      padding: 1.875em 2.375em; }
      #otherpost.post_style2 .base .prev a .photo,
      #otherpost.post_style2 .base .next a .photo {
        width: 8.75em;
        line-height: 0; }
        #otherpost.post_style2 .base .prev a .photo img,
        #otherpost.post_style2 .base .next a .photo img {
          width: 100%; }
      #otherpost.post_style2 .base .prev a .txt,
      #otherpost.post_style2 .base .next a .txt {
        height: 100%;
        display: flex;
        flex-direction: column; }
        #otherpost.post_style2 .base .prev a .txt .ttl,
        #otherpost.post_style2 .base .next a .txt .ttl {
          font-size: 1em;
          line-height: 1.3125;
          margin-bottom: 0.5em;
          font-weight: bold;
          padding: 0.5em 0; }
        #otherpost.post_style2 .base .prev a .txt .arrow,
        #otherpost.post_style2 .base .next a .txt .arrow {
          margin-top: auto;
          display: flex;
          align-items: center;
          font-size: 0.875em;
          line-height: 1.35; }
  #otherpost.post_style2 .base .prev .photo {
    margin-right: 1.875em; }
  #otherpost.post_style2 .base .prev .arrow::before {
    content: "";
    display: inline-block;
    width: 1.375em;
    height: 0.5625em;
    transform: rotate(180deg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../img/common/arrow01.svg");
    margin-right: 1em; }
  #otherpost.post_style2 .base .next .photo {
    order: 2;
    margin-left: 1.875em; }
  #otherpost.post_style2 .base .next .txt {
    order: 1;
    margin-right: auto; }
  #otherpost.post_style2 .base .next .arrow::after {
    content: "";
    display: inline-block;
    width: 1.375em;
    height: 0.5625em;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../img/common/arrow01.svg");
    margin-left: 1em; }
  #otherpost.post_style2 .base .back {
    width: 10em;
    min-height: 10em;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 2.5em; }
    #otherpost.post_style2 .base .back span {
      display: block;
      font-size: 1em;
      line-height: 1.5;
      font-weight: bold;
      text-align: center; }
@media screen and (max-width: 1239px) {
  #otherpost.post_style2 .base .prev a .photo,
  #otherpost.post_style2 .base .next a .photo {
    display: none; } }
@media screen and (max-width: 739px) {
  #otherpost.post_style2 .base ._nm {
    border-radius: 1.25em; }
  #otherpost.post_style2 .base .prev a,
  #otherpost.post_style2 .base .next a {
    padding: 0; }
    #otherpost.post_style2 .base .prev a .photo,
    #otherpost.post_style2 .base .next a .photo {
      display: none; }
    #otherpost.post_style2 .base .prev a .txt,
    #otherpost.post_style2 .base .next a .txt {
      margin-left: auto;
      margin-right: auto; }
      #otherpost.post_style2 .base .prev a .txt .ttl,
      #otherpost.post_style2 .base .next a .txt .ttl {
        display: none; }
      #otherpost.post_style2 .base .prev a .txt .arrow,
      #otherpost.post_style2 .base .next a .txt .arrow {
        margin-bottom: auto;
        font-size: 0.875em;
        font-weight: bold; }
  #otherpost.post_style2 .base .back {
    width: 4.53125em;
    min-height: 4.53125em;
    margin: 0 0.5625em; }
    #otherpost.post_style2 .base .back span {
      font-size: 0.875em;
      line-height: 1.2142857143; } }
