@charset "UTF-8";
/**********************************************************************
	冷凍事業 - className : frozen_sec01
***********************************************************************/
.frozen_sec01.container_liquid {
  padding: 127px 0 120px;
  background: url(../images/bg_img.png) repeat-x; }
  @media only screen and (max-width: 767px) {
    .frozen_sec01.container_liquid {
      padding: 80px 0px 0px; } }
.frozen_sec01 .l-inner-main {
  max-width: 853px;
  position: relative; }
.frozen_sec01 .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 0 56px;
  padding: 219px 70px 50px;
  background: url(../../common/images/bg_page-ttl.jpg);
  border: 10px solid #C9E8DB;
  gap: 5.5em; }
  @media only screen and (max-width: 767px) {
    .frozen_sec01 .flex {
      flex-flow: column;
      padding: 100px 15px 30px; } }
  .frozen_sec01 .flex .flex_con {
    background: #fff;
    padding: 50px 46px 30px;
    position: relative; }
    .frozen_sec01 .flex .flex_con::before, .frozen_sec01 .flex .flex_con::after {
      content: "";
      height: 3px;
      width: 40px;
      background: #00A161;
      display: block;
      position: absolute;
      top: 50%;
      right: -21%;
      transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%); }
      @media only screen and (max-width: 767px) {
        .frozen_sec01 .flex .flex_con::before, .frozen_sec01 .flex .flex_con::after {
          bottom: -19%;
          top: unset;
          left: 50%;
          right: unset;
          transform: translateX(-50%);
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%); } }
    .frozen_sec01 .flex .flex_con::after {
      transform: rotate(90deg); }
      @media only screen and (max-width: 767px) {
        .frozen_sec01 .flex .flex_con::after {
          left: calc(50% - 20px); } }
    .frozen_sec01 .flex .flex_con:last-child::before, .frozen_sec01 .flex .flex_con:last-child::after {
      display: none; }
    .frozen_sec01 .flex .flex_con .en_tytle {
      font-family: 'Libre Baskerville', serif;
      color: rgba(0, 161, 97, 0.9);
      font-size: 6rem;
      line-height: 1;
      margin-bottom: 10px; }
      @media only screen and (max-width: 767px) {
        .frozen_sec01 .flex .flex_con .en_tytle {
          font-size: 4rem; } }
.frozen_sec01 .en_tytle {
  font-family: "Hannari", "UD黎ミン L", 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 4rem; }
  .frozen_sec01 .en_tytle ruby {
    ruby-position: under;
    ruby-align: center; }
    .frozen_sec01 .en_tytle ruby rt {
      font-size: 1.6rem; }
.frozen_sec01 .lien_logo {
  width: 242px;
  height: 242px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 100%;
  position: absolute;
  top: -57px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%); }
  @media only screen and (max-width: 767px) {
    .frozen_sec01 .lien_logo {
      width: 140px;
      height: 140px; } }
  .frozen_sec01 .lien_logo img {
    width: 223px;
    height: auto; }
    @media only screen and (max-width: 767px) {
      .frozen_sec01 .lien_logo img {
        width: 100px; } }
.frozen_sec01 .lien_heart img {
  width: 183px;
  height: auto; }
.frozen_sec01 .page-summary {
  line-height: 1.625;
  font-size: 1.6rem;
  color: #111;
  font-family: "Noto Sans Japanese"; }
  @media only screen and (max-width: 767px) {
    .frozen_sec01 .page-summary {
      font-size: 1.4rem; } }
.frozen_sec01 .message {
  line-height: 2.8;
  font-size: 1.6rem; }
  @media only screen and (max-width: 767px) {
    .frozen_sec01 .message {
      font-size: 1.3rem;
      line-height: 2.2; } }

.Point-wrap {
  position: relative; }
  .Point-wrap.container_liquid {
    padding: 0; }

.point-info {
  background-color: #fff;
  padding: 100px 15px 0; }
  @media only screen and (max-width: 767px) {
    .point-info {
      padding: 50px 15px; } }

.point-info-inner {
  margin: 0 auto;
  padding-bottom: 100px; }
  @media only screen and (max-width: 767px) {
    .point-info-inner {
      max-width: 100%; } }

.ttl_03-vertical {
  position: relative;
  text-align: left;
  letter-spacing: 0.1em;
  color: #00a161;
  padding-top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%); }
  @media only screen and (max-width: 767px) {
    .ttl_03-vertical {
      font-size: 2.4rem;
      padding-top: 25px;
      margin-bottom: 30px;
      padding-top: 0; } }
  .ttl_03-vertical:before {
    display: none; }
  .ttl_03-vertical .ttl-num {
    margin-bottom: 20px;
    position: relative;
    left: 2px; }
    @media only screen and (max-width: 767px) {
      .ttl_03-vertical .ttl-num {
        display: block;
        left: 50%;
        margin-bottom: 15px;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%); } }

@media only screen and (max-width: 767px) {
  .vertical-writing {
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb; } }

.txt-point {
  margin-bottom: 25px !important; }

.point-main-img.main-img01 {
  background: url(../images/img_frozen_01.jpg) no-repeat center center;
  -webkit-background-size: cover;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    .point-main-img.main-img01 {
      -webkit-background-size: contain;
      background-size: contain; } }
.point-main-img.main-img02 {
  background: url(../images/img_frozen_02.jpg) no-repeat left top;
  -webkit-background-size: cover;
  background-size: cover; }
.point-main-img.main-img03 {
  background: url(../images/img_frozen_03.png) no-repeat center top;
  -webkit-background-size: contain;
  background-size: contain; }

.frozen_sec02 {
  margin-bottom: 160px; }
  @media only screen and (max-width: 767px) {
    .frozen_sec02 {
      margin-bottom: 90px; } }
  .frozen_sec02 .point-info {
    float: right !important; }
    @media only screen and (max-width: 767px) {
      .frozen_sec02 .point-info {
        float: none;
        padding: 70px 15px 0; } }
  .frozen_sec02 .point-info-inner {
    max-width: 272px; }
    @media only screen and (max-width: 767px) {
      .frozen_sec02 .point-info-inner {
        max-width: 100%; } }
  .frozen_sec02 .point-main-img {
    float: left !important; }
    @media only screen and (max-width: 767px) {
      .frozen_sec02 .point-main-img {
        float: none; } }
    @media only screen and (max-width: 767px) {
      .frozen_sec02 .point-main-img {
        height: 250px; } }
  .frozen_sec02 .ornament.sun {
    top: -296px;
    right: 0; }
    @media only screen and (max-width: 768px) {
      .frozen_sec02 .ornament.sun {
        width: 20%;
        height: auto;
        top: -145px; } }

.frozen_sec03 {
  margin-bottom: 160px; }
  @media only screen and (max-width: 767px) {
    .frozen_sec03 {
      margin-bottom: 90px; } }
  .frozen_sec03 .point-info-inner {
    max-width: 600px;
    padding-bottom: 100px; }
    @media only screen and (max-width: 767px) {
      .frozen_sec03 .point-info-inner {
        max-width: 100%; } }
  .frozen_sec03 .img-area {
    margin-top: 60px; }
  @media only screen and (max-width: 767px) {
    .frozen_sec03 .point-main-img {
      height: 600px; } }
  .frozen_sec03 .ornament.line-01 {
    top: -160px;
    left: 0; }
    @media only screen and (max-width: 1000px) {
      .frozen_sec03 .ornament.line-01 {
        left: -70px; } }
    @media only screen and (max-width: 767px) {
      .frozen_sec03 .ornament.line-01 {
        max-width: 86%;
        height: auto;
        top: -90px;
        left: -45px; } }

.frozen_sec04 {
  padding-bottom: 270px !important; }
  @media only screen and (max-width: 767px) {
    .frozen_sec04 {
      padding-bottom: 150px !important; } }
  .frozen_sec04 .point-info {
    float: right !important; }
  .frozen_sec04 .point-info-inner {
    max-width: 272px; }
    @media only screen and (max-width: 767px) {
      .frozen_sec04 .point-info-inner {
        max-width: 100%; } }
  .frozen_sec04 .point-main-img {
    float: left !important; }
    @media only screen and (max-width: 767px) {
      .frozen_sec04 .point-main-img {
        float: none; } }
    @media only screen and (max-width: 767px) {
      .frozen_sec04 .point-main-img {
        height: 150px; } }
  .frozen_sec04 .ornament.line-02 {
    top: -180px;
    left: 0; }
    @media only screen and (max-width: 1000px) {
      .frozen_sec04 .ornament.line-02 {
        left: -170px; } }
    @media only screen and (max-width: 767px) {
      .frozen_sec04 .ornament.line-02 {
        width: 90%;
        height: auto;
        top: -90px;
        left: 70px; } }
