@charset "UTF-8";
/*ＬＡＹＯＵＴ*/
/* -----------------------------------------------------------------
LAYOUT CSS　
LAST UPDATE: 　
--------------------------------------------------------------------*/
/*--------------------------------
html/body
---------------------------------*/
html {
  color: #333;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, sans-serif;
  font-size: 62.5%;
  /*10px*/
  line-height: 2;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%; }

body {
  font-size: 1.0rem;
  margin-top: 149px; }

input, textarea, select {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, sans-serif; }

.skipContents {
  position: absolute;
  top: -99999px;
  left: 0; }

@media screen and (max-width: 768px) {
  html {
    line-height: 1.7; }

  body {
    margin-top: 70px; }

  body.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: -1; } }
/*--------------------------------
LINk
---------------------------------*/
a {
  color: #333;
  text-decoration: none; }

a:hover {
  text-decoration: none;
  transition: 0.6s;
  opacity: 0.6; }

a:focus {
  outline: none; }

a:focus,
button:focus,
[type=button]:focus,
[type=image]:focus,
[type=submit]:focus {
  outline: 2px solid #333; }

/*--------------------------------
header
---------------------------------*/
header {
  padding: 20px 0 35px;
  background: #fff;
  box-shadow: 0 1px 5px 1px rgba(0, 0, 0, 0.3); }
  header .headerInnerPc {
    display: block;
    width: 1200px;
    margin: 0 auto; }
    header .headerInnerPc .contactWrap {
      display: block;
      width: 350px;
      margin-left: auto;
      text-align: right;
      margin-top: 20px; }
      header .headerInnerPc .contactWrap li {
        display: inline-block;
        vertical-align: middle; }
        header .headerInnerPc .contactWrap li.tel {
          font-family: "Ropa Sans", Helvetica, Helvetica Neue, Arial, Avenir, Droid Sans, MS PGothic, sans-serif, Meiryo;
          font-size: 2.2rem; }
          header .headerInnerPc .contactWrap li.tel:before {
            content: "";
            display: inline-block;
            margin-right: 5px;
            background: url("/ozone/common/img/icon_tel_01_b.png") no-repeat 0 0;
            width: 15px;
            height: 25px;
            background-size: 100% auto;
            vertical-align: middle; }
          header .headerInnerPc .contactWrap li.tel a {
            pointer-events: none; }
        header .headerInnerPc .contactWrap li.contact {
          margin-left: 30px; }
          header .headerInnerPc .contactWrap li.contact a {
            background: #1eb7f1;
            border-radius: 30px;
            padding: 8px 30px;
            display: block;
            text-align: center; }
            header .headerInnerPc .contactWrap li.contact a:hover {
              background: #0486b7;
              text-decoration: none;
              opacity: 1 !important;
              transition: 0.4s; }
            header .headerInnerPc .contactWrap li.contact a span {
              font-size: 1.3rem;
              color: #fff;
              font-weight: bold;
              display: block; }
              header .headerInnerPc .contactWrap li.contact a span:before {
                content: "";
                display: inline-block;
                margin-right: 5px;
                background: url("/ozone/common/img/icon_mail_01.png") no-repeat 0 0;
                width: 17px;
                height: 13px;
                background-size: 100% auto;
                vertical-align: middle; }
    header .headerInnerPc p.logo {
      display: inline-block;
      width: 256px;
      vertical-align: top;
      margin-top: -15px; }
    header .headerInnerPc nav {
      display: inline-block;
      width: 100%;
      vertical-align: bottom;
      font-size: 0; }
      header .headerInnerPc nav ul li {
        display: inline-block;
        font-size: 1.6rem;
        padding: 38px 0 1px;
        border-bottom: 3px solid #fff; }
        header .headerInnerPc nav ul li a {
          padding: 0 18px;
          font-weight: bold; }
          header .headerInnerPc nav ul li a:hover {
            opacity: 1 !important;
            color: #1eb7f1; }
        header .headerInnerPc nav ul li:first-child a {
          padding-left: 0; }
        header .headerInnerPc nav ul li.jspcNav.cur {
          border-bottom: 3px solid #fcb100;
          border-style: inset; }
          header .headerInnerPc nav ul li.jspcNav.cur a {
            color: #1eb7f1; }
        header .headerInnerPc nav ul li.btn {
          width: 160px;
          text-align: center;
          margin-left: 20px;
          padding-bottom: 0px !important; }
          header .headerInnerPc nav ul li.btn a {
            color: #fff;
            padding: 7px 0 7px 15px;
            background: #333;
            width: 100%;
            display: block;
            border-radius: 30px;
            font-size: 1.4rem; }
            header .headerInnerPc nav ul li.btn a:after {
              content: "";
              display: inline-block;
              margin-left: 10px;
              background: url("/ozone/common/img/icon_topicpath_02_s.png") no-repeat 0 0;
              width: 10px;
              height: 16px;
              background-size: 100% auto;
              vertical-align: middle; }
            header .headerInnerPc nav ul li.btn a:hover {
              opacity: 1 !important;
              background: #1eb7f1; }
  header .jsNavWrap {
    display: inline-block;
    width: calc(100% - 257px); }
  header .headerInnerSp {
    display: none; }
  header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9;
    width: 100%;
    min-width: 1200px;
    padding: 0;
    overflow: hidden; }
    header.fixed.show {
      top: 0;
      transition: 0.4s; }
    header.fixed .headerInnerPc {
      width: 1200px;
      margin: 0 auto;
      font-size: 0; }
      header.fixed .headerInnerPc p.logo {
        display: inline-block;
        width: 256px;
        vertical-align: top;
        padding: 10px 0 30px 10px; }
        header.fixed .headerInnerPc p.logo img {
          width: 256px; }
      header.fixed .headerInnerPc nav {
        margin-right: 0;
        width: 100%;
        text-align: right; }
        header.fixed .headerInnerPc nav ul li {
          font-size: 1.6rem;
          padding: 25px 0 30px; }

@media screen and (max-width: 768px) {
  header {
    padding: 6px 0 0; }
    header .headerInnerPc {
      display: none; }
    header .headerInnerSp {
      display: block;
      padding: 8px 0; }
      header .headerInnerSp .logo {
        padding: 8px 0 7px 12px;
        float: left;
        width: 160px; }
        header .headerInnerSp .logo img {
          width: 160px;
          height: auto; }
      header .headerInnerSp .menuWrap {
        display: table;
        float: right; }
        header .headerInnerSp .menuWrap li {
          display: table-cell;
          vertical-align: middle; }
          header .headerInnerSp .menuWrap li a {
            display: block;
            height: 54px;
            width: 55px;
            transition: none; }
          header .headerInnerSp .menuWrap li.tel a {
            background: url(/ozone/common/img/icon_tel_01_sp.png) no-repeat center;
            text-indent: -9999px;
            background-size: 33px auto; }
            header .headerInnerSp .menuWrap li.tel a.cur {
              background: url(/ozone/common/img/icon_tel_01_sp.png) no-repeat center;
              text-indent: -9999px;
              background-size: 33px auto; }
          header .headerInnerSp .menuWrap li.contact a {
            background: url(/ozone/common/img/icon_mail_01_sp.png) no-repeat center;
            text-indent: -9999px;
            background-size: 33px auto; }
            header .headerInnerSp .menuWrap li.contact a.cur {
              background: url(/ozone/common/img/icon_mail_01_sp.png) no-repeat center;
              text-indent: -9999px;
              background-size: 33px auto; }
          header .headerInnerSp .menuWrap li.menu a {
            background: url(/ozone/common/img/icon_menu_01_sp.png) no-repeat center;
            text-indent: -9999px;
            background-size: 33px auto; }
            header .headerInnerSp .menuWrap li.menu a.cur {
              background: url(/ozone/common/img/icon_menu_02_sp.png) no-repeat center;
              text-indent: -9999px;
              background-size: 33px auto; }
      header .headerInnerSp nav {
        display: none;
        width: 100%;
        position: absolute;
        top: 70px;
        left: 0;
        background: #fff; }
        header .headerInnerSp nav#spGNavWrap {
          background: rgba(0, 0, 0, 0.85);
          overflow-y: auto;
          height: 100vh;
          -webkit-overflow-scrolling: touch;
          z-index: 14;
          padding: 25px 0 23vh 20px; }
          header .headerInnerSp nav#spGNavWrap li a {
            font-weight: bold;
            font-size: 1.6rem;
            display: block;
            padding: 15px 20px;
            color: #fff; }
          header .headerInnerSp nav#spGNavWrap li.cur, header .headerInnerSp nav#spGNavWrap li:hover {
            color: #f2401f; }
          header .headerInnerSp nav#spGNavWrap li.open {
            position: relative; }
            header .headerInnerSp nav#spGNavWrap li.open .toggleBtn {
              content: "";
              display: block;
              margin-right: 0;
              background: url("/ozone/common/img/icon_plus.png") no-repeat 0 0;
              width: 32px;
              height: 33px;
              background-size: 100% auto;
              vertical-align: middle;
              top: 12px;
              right: 15px;
              position: absolute; }
            header .headerInnerSp nav#spGNavWrap li.open a {
              margin-right: 50px; }
            header .headerInnerSp nav#spGNavWrap li.open ul {
              padding-left: 20px;
              display: none; }
              header .headerInnerSp nav#spGNavWrap li.open ul a {
                pointer-events: auto;
                font-size: 1.4rem; }
            header .headerInnerSp nav#spGNavWrap li.open.cur .toggleBtn {
              content: "";
              display: block;
              margin-right: 0;
              background: url("/ozone/common/img/icon_minus.png") no-repeat 0 0;
              width: 32px;
              height: 33px;
              background-size: 100% auto;
              vertical-align: middle;
              top: 12px;
              right: 15px;
              position: absolute; }
            header .headerInnerSp nav#spGNavWrap li.open.cur ul {
              display: block; }
          header .headerInnerSp nav#spGNavWrap li.btnHead {
            font-size: 1.6rem;
            margin: 30px 40px 0 20px; }
            header .headerInnerSp nav#spGNavWrap li.btnHead a {
              background: #333;
              padding: 13px 0;
              text-align: center;
              border-radius: 3em;
              color: #fff; }
              header .headerInnerSp nav#spGNavWrap li.btnHead a span {
                font-weight: bold; }
              header .headerInnerSp nav#spGNavWrap li.btnHead a:after {
                content: "";
                display: inline-block;
                margin-left: 8px;
                background: url("/ozone/common/img/icon_topicpath_02_s.png") no-repeat 0 0;
                width: 10px;
                height: 14px;
                background-size: 100% auto;
                vertical-align: middle; }
        header .headerInnerSp nav.show {
          display: block; }
    header.fixed {
      min-width: 0;
      padding: 0;
      overflow: inherit;
      top: 0; }
      header.fixed nav {
        top: 70px; }
      header.fixed .fixedBtn {
        border-top: 3px solid #1eb7f1; }
        header.fixed .fixedBtn li a {
          font-size: 1.1rem;
          padding: 11px 0;
          display: block;
          width: 100%;
          text-align: center; }
          header.fixed .fixedBtn li a:after {
            content: "";
            display: block;
            margin-right: 0;
            background: url("/ozone/common/img/icon_arror_sp_nav.png") no-repeat 0 0;
            width: 8px;
            height: 11px;
            background-size: 100% auto;
            vertical-align: middle;
            top: 50%;
            right: 15px;
            transform: translateY(-50%);
            position: absolute; } }
/*--------------------------------
contents
---------------------------------*/
#contentsWrap {
  width: 100%; }

#contents {
  width: 100%;
  margin: 0 auto;
  font-size: 1.6rem; }

#main {
  width: 100%; }

@media screen and (max-width: 768px) {
  #contents {
    width: 100%;
    overflow-x: hidden; } }
/*--------------------------------
section
---------------------------------*/
section {
  width: 100%;
  min-width: 1200px;
  padding: 130px 0 140px;
  font-size: 1.6rem; }
  section img {
    max-width: 100%;
    height: auto; }
  section strong,
  section strong a {
    font-weight: bold; }
  section .inner {
    width: 1200px;
    margin: 0 auto;
    display: block; }

@media screen and (max-width: 768px) {
  section {
    min-width: 0;
    padding: 80px 0 85px;
    font-size: 1.2rem; }
    section .inner {
      width: auto;
      margin: 0 15px; } }
/*--------------------------------
*cont
---------------------------------*/
section#cont01 {
  background: #fff;
  padding-bottom: 100px; }

section#cont02 {
  background: url("/ozone/common/img/bg_tab_01_pc.jpg") no-repeat center bottom;
  background-size: cover;
  padding: 0; }
  section#cont02.measures {
    background: url("/ozone/common/img/measures/bg_tab_01_pc.jpg") no-repeat center bottom;
    background-size: cover;
    padding: 0; }

section#cont03 {
  background: #fff;
  padding-bottom: 140px; }

section#cont04 {
  background: #f7f7f7;
  padding-bottom: 180px; }

@media screen and (max-width: 768px) {
  section#cont01 {
    padding-bottom: 110px; }

  section#cont02 {
    background: url("/ozone/common/img/bg_tab_01_sp.jpg") no-repeat center bottom;
    background-size: cover;
    padding-bottom: 0; }
    section#cont02.measures {
      background: url("/ozone/common/img/measures/bg_tab_01_sp.jpg") no-repeat center bottom;
      background-size: cover;
      padding-bottom: 0; }

  section#cont03 {
    padding-bottom: 90px; }

  section#cont04 {
    padding-bottom: 100px; } }
/*--------------------------------
space
---------------------------------*/
section iframe {
  width: 700px;
  height: 400px;
  margin: 0 auto;
  display: block; }
section p,
section ol,
section ul,
section table,
section dl {
  margin: 20px 0 0 0; }
section:first-child,
section iframe:first-child,
section p:first-child,
section h2:first-child,
section h3:first-child,
section ol:first-child,
section ul:first-child,
section ol li:first-child,
section ul li:first-child,
section dl:first-child,
section div.colWrap:first-child,
section table:first-child {
  margin-top: 0; }

.mtHelfSet section iframe,
.mtHelfSet section p,
.mtHelfSet section ol,
.mtHelfSet section ul,
.mtHelfSet section table,
.mtHelfSet section dl {
  margin: 10px 0 0 0; }

@media screen and (max-width: 768px) {
  section iframe, section video {
    width: 100%;
    height: 52vw; }
  section p,
  section ol,
  section ul,
  section table,
  section dl {
    margin: 10px 0 0 0; }

  .mtHelfSet section iframe,
  .mtHelfSet section p,
  .mtHelfSet section ol,
  .mtHelfSet section ul,
  .mtHelfSet section table,
  .mtHelfSet section dl {
    margin: 5px 0 0 0; } }
/*--------------------------------
footer
---------------------------------*/
footer {
  width: 100%;
  min-width: 1200px;
  text-align: center;
  background: #333; }
  footer .footerWrap .inner {
    width: 1200px;
    margin: 0 auto;
    padding: 1px 0 120px;
    overflow: hidden; }
    footer .footerWrap .inner p.lead {
      font-size: 1.6rem;
      color: #fff;
      font-weight: bold; }
      footer .footerWrap .inner p.lead.spFt12 {
        font-size: 1.8rem; }
      footer .footerWrap .inner p.lead strong {
        font-size: 2rem;
        color: #fcb100;
        font-weight: bold; }
    footer .footerWrap .inner p.footerLogo {
      margin: 50px 0; }
    footer .footerWrap .inner .col2Foot {
      overflow: hidden;
      font-size: 0; }
      footer .footerWrap .inner .col2Foot .telWrap01 {
        background: #fff;
        width: 598px;
        display: inline-block;
        vertical-align: top;
        margin-top: 30px; }
        footer .footerWrap .inner .col2Foot .telWrap01 p.txt {
          font-size: 1.6rem;
          font-weight: bold;
          margin: 40px 0 0; }
        footer .footerWrap .inner .col2Foot .telWrap01 p.tel {
          font-size: 3.7rem;
          font-family: "Ropa Sans", Helvetica, Helvetica Neue, Arial, Avenir, Droid Sans, MS PGothic, sans-serif, Meiryo;
          margin: 10px 0 10px;
          line-height: 1; }
          footer .footerWrap .inner .col2Foot .telWrap01 p.tel a {
            display: inline-block;
            pointer-events: none; }
          footer .footerWrap .inner .col2Foot .telWrap01 p.tel:before {
            content: "";
            display: inline-block;
            margin-right: 5px;
            background: url("/ozone/common/img/icon_tel_01_xb.png") no-repeat 0 0;
            width: 22px;
            height: 37px;
            background-size: 100% auto;
            vertical-align: middle; }
        footer .footerWrap .inner .col2Foot .telWrap01 p.time {
          width: 180px;
          margin: 0 auto 30px;
          font-size: 1.2rem;
          color: #666;
          background: #f7f7f7;
          padding: 5px 0;
          border-radius: 2em; }
      footer .footerWrap .inner .col2Foot .contactWrap01 {
        background: #1eb7f1;
        width: 598px;
        display: inline-block;
        vertical-align: top;
        margin-left: 4px;
        margin-top: 30px;
        transition: 0.4s; }
        footer .footerWrap .inner .col2Foot .contactWrap01 a {
          display: block;
          padding: 40px 0 50px; }
          footer .footerWrap .inner .col2Foot .contactWrap01 a:hover {
            opacity: 1 !important; }
          footer .footerWrap .inner .col2Foot .contactWrap01 a p.txt {
            font-size: 1.8rem;
            color: #fff;
            font-weight: bold;
            margin: 0 0 15px; }
          footer .footerWrap .inner .col2Foot .contactWrap01 a p.tel {
            font-size: 3.7rem;
            font-family: "Ropa Sans", Helvetica, Helvetica Neue, Arial, Avenir, Droid Sans, MS PGothic, sans-serif, Meiryo; }
          footer .footerWrap .inner .col2Foot .contactWrap01 a p.btn span.btn {
            background: #fff;
            border-radius: 30px;
            padding: 10px 0;
            transition: 0.4s;
            display: block;
            text-align: center;
            width: 260px;
            margin: 0 auto; }
            footer .footerWrap .inner .col2Foot .contactWrap01 a p.btn span.btn span.txt {
              color: #1eb7f1;
              font-size: 1.6rem;
              display: inline-block;
              vertical-align: middle;
              font-weight: bold; }
            footer .footerWrap .inner .col2Foot .contactWrap01 a p.btn span.btn:before {
              content: "";
              display: inline-block;
              margin-right: 5px;
              background: url("/ozone/common/img/icon_mail_02.png") no-repeat 0 0;
              width: 28px;
              height: 21px;
              background-size: 100% auto;
              vertical-align: middle; }
        footer .footerWrap .inner .col2Foot .contactWrap01:hover {
          background: #0486b7;
          text-decoration: none;
          opacity: 1 !important; }
          footer .footerWrap .inner .col2Foot .contactWrap01:hover a p.btn span.btn span.txt {
            color: #0486b7; }
          footer .footerWrap .inner .col2Foot .contactWrap01:hover a p.btn span.btn:before {
            content: "";
            display: inline-block;
            margin-right: 5px;
            background: url("/ozone/common/img/icon_mail_03.png") no-repeat 0 0;
            width: 28px;
            height: 21px;
            background-size: 100% auto;
            vertical-align: middle; }
  footer .copyWrap {
    text-align: center;
    background: #000;
    padding: 35px 0; }
    footer .copyWrap ul {
      text-align: center; }
      footer .copyWrap ul li {
        margin: 0 15px;
        display: inline-block;
        vertical-align: middle; }
        footer .copyWrap ul li a {
          font-size: 1.4rem;
          color: #fff; }
    footer .copyWrap .copy small {
      text-align: center;
      font-size: 1.2rem;
      color: #fff;
      margin-top: 20px;
      display: block; }

/*pageTopWrap*/
.pageTopWrap {
  position: relative; }
  .pageTopWrap .pageTop {
    margin: 0 20px;
    text-align: right;
    opacity: 0; }
    .pageTopWrap .pageTop a {
      display: block;
      transition: 0.4s;
      width: 70px;
      height: 70px; }
    .pageTopWrap .pageTop:hover {
      opacity: 0.7; }
    .pageTopWrap .pageTop.show {
      opacity: 1;
      z-index: 2;
      position: absolute;
      right: 0;
      bottom: 20px; }
      .pageTopWrap .pageTop.show.fixed {
        position: fixed;
        bottom: 20px;
        right: 20px;
        margin: 0;
        transition: opacity 0.4s ease; }
  .pageTopWrap.h0 {
    background: #f7f7f7; }

@media screen and (max-width: 768px) {
  footer {
    min-width: 0; }
    footer .footerWrap .inner {
      width: auto;
      padding: 1px 15px 90px; }
      footer .footerWrap .inner p.lead {
        font-size: 1.2rem; }
        footer .footerWrap .inner p.lead strong {
          font-size: 1.4rem; }
        footer .footerWrap .inner p.lead.spFt12 {
          font-size: 1.2rem; }
      footer .footerWrap .inner p.footerLogo {
        margin: 20px 62px 10px; }
      footer .footerWrap .inner .col2Foot .telWrap01 {
        width: 100%;
        display: block;
        margin-top: 15px;
        border-radius: 8px;
        padding: 5px; }
        footer .footerWrap .inner .col2Foot .telWrap01 p.txt {
          font-size: 1.2rem;
          margin: 20px 0 0; }
        footer .footerWrap .inner .col2Foot .telWrap01 p.tel {
          font-size: 2.7rem;
          margin: 10px 0 15px; }
          footer .footerWrap .inner .col2Foot .telWrap01 p.tel a {
            pointer-events: auto; }
          footer .footerWrap .inner .col2Foot .telWrap01 p.tel:before {
            width: 17px;
            height: 30px; }
        footer .footerWrap .inner .col2Foot .telWrap01 p.time {
          width: 152px;
          margin: 0 auto 25px;
          font-size: 1.0rem;
          padding: 5px 0; }
      footer .footerWrap .inner .col2Foot .contactWrap01 {
        width: 100%;
        display: block;
        margin-left: 0;
        margin-top: 15px;
        border-radius: 8px;
        padding: 5px; }
        footer .footerWrap .inner .col2Foot .contactWrap01 a {
          padding: 10px 0; }
          footer .footerWrap .inner .col2Foot .contactWrap01 a p.txt {
            font-size: 1.2rem;
            margin: 25px 0 15px; }
          footer .footerWrap .inner .col2Foot .contactWrap01 a p.btn span.btn {
            padding: 8px 0;
            width: 210px;
            margin: 0 auto 40px; }
            footer .footerWrap .inner .col2Foot .contactWrap01 a p.btn span.btn span.txt {
              font-size: 1.3rem; }
              footer .footerWrap .inner .col2Foot .contactWrap01 a p.btn span.btn span.txt:before {
                margin-right: 5px;
                width: 22px;
                height: 20px; }
    footer .copyWrap {
      padding: 25px 0; }
      footer .copyWrap ul li {
        margin: 0 15px 10px; }
        footer .copyWrap ul li a {
          font-size: 1.2rem; }
      footer .copyWrap .copy small {
        font-size: 0.9rem;
        margin-top: 5px; }

  /*pageTopWrap*/
  .pageTopWrap .pageTop {
    margin: 0 10px;
    text-align: right; }
    .pageTopWrap .pageTop a {
      width: 50px;
      height: 50px; }
      .pageTopWrap .pageTop a img {
        width: 100%;
        height: auto; }
    .pageTopWrap .pageTop.show {
      opacity: 1;
      z-index: 2;
      position: absolute;
      right: 0;
      bottom: 15px; }
      .pageTopWrap .pageTop.show.fixed {
        right: 15px; } }
