@charset "UTF-8";
/*--------------------------------------
　　　　　　共通スタイル
--------------------------------------*/
/* 【iPhone】【Safari】【css】ボタンの角丸などの初期化 */
input[type="button"], input[type="submit"] {
  -webkit-appearance: none; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 62.5%;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: 700;
  font-style: normal; }

body {
  font-size: 1.4rem;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  color: #333; }

a:link {
  color: #3398aa;
  text-decoration: none; }
a:visited {
  color: #3398aa;
  text-decoration: none; }
a.underline {
  text-decoration: underline; }
  a.underline:hover {
    text-decoration: none; }

#pageTop {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 10; }
  #pageTop img {
    width: 40px;
    height: auto;
    vertical-align: bottom; }
  @media print, screen and (min-width: 1100px) {
    #pageTop {
      bottom: 20px;
      right: 20px; } }

/*その他*/
.indent-1 {
  padding-left: 1em;
  text-indent: -1em; }

.indent-2 {
  padding-left: 2em;
  text-indent: -2em; }

.img-max-width-100 {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

.overflow-hidden {
  overflow: hidden; }

@media print, screen and (min-width: 961px) {
  .float-left {
    float: left; } }

@media print, screen and (min-width: 961px) {
  .float-right {
    float: right; } }

.clear {
  clear: both; }

.clear-fix:after {
  content: "";
  display: block;
  clear: both; }

.display-table {
  display: table; }

.color-main {
  color: #3398aa; }

/* ----------------------------------------
　　　　　　　ここから
---------------------------------------- */
.wrap-all {
  overflow: hidden; }

/* 共通 */
.wrap-container {
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  position: relative; }
  @media print, screen and (min-width: 961px) {
    .wrap-container {
      padding-left: 40px;
      padding-right: 40px; } }

/* ロード画面 */
/*
@-webkit-keyframes line-scale {
  0% {
    -webkit-transform: scaley(1);
            transform: scaley(1); }
  50% {
    -webkit-transform: scaley(0.4);
            transform: scaley(0.4); }
  100% {
    -webkit-transform: scaley(1);
            transform: scaley(1); } }
@keyframes line-scale {
  0% {
    -webkit-transform: scaley(1);
            transform: scaley(1); }
  50% {
    -webkit-transform: scaley(0.4);
            transform: scaley(0.4); }
  100% {
    -webkit-transform: scaley(1);
            transform: scaley(1); } }

.line-scale > div:nth-child(1) {
  -webkit-animation: line-scale 1s -0.4s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: line-scale 1s -0.4s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.line-scale > div:nth-child(2) {
  -webkit-animation: line-scale 1s -0.3s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: line-scale 1s -0.3s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.line-scale > div:nth-child(3) {
  -webkit-animation: line-scale 1s -0.2s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: line-scale 1s -0.2s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.line-scale > div:nth-child(4) {
  -webkit-animation: line-scale 1s -0.1s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: line-scale 1s -0.1s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.line-scale > div:nth-child(5) {
  -webkit-animation: line-scale 1s 0s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
          animation: line-scale 1s 0s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08); }

.line-scale > div {
  background-color: #000;
  width: 4px;
  height: 35px;
  border-radius: 2px;
  margin: 2px;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  display: inline-block; }

.preloader-common{
	position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 200;
	transition: .5s;
	background-color: #fff;
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    
    .load-text{
        font-size: 1.2rem;
    }
    
    &.loading-complete{
        pointer-events: none;
        opacity: 0;
    }
}
*/
/* ------------------プレロード　ここから-------------------*/
.preloader {
  position: fixed;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100; }
  .preloader.visited {
    display: none; }
  .preloader .preloader-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff fixed;
    transform: translateX(0) skewX(0);
    transform-origin: right bottom; }
  .preloader .preloader-logo {
    position: relative;
    z-index: 10;
    width: 100%;
    max-width: 80px;
    transform-origin: center center;
    opacity: 1; }
    .preloader .preloader-logo svg {
      width: 100%;
      height: auto; }
  .preloader.active {
    pointer-events: none; }
    .preloader.active .preloader-bg {
      opacity: 0;
      transition-duration: 0.5s;
      transition-delay: 3s; }
    .preloader.active .preloader-logo {
      opacity: 0;
      transition-duration: 0.5s;
      transition-delay: 3s; }
  @media print, screen and (min-width: 1100px) {
    .preloader .preloader-logo {
      max-width: 120px; } }

/***************************************************
 * Generated by SVG Artista on 12/22/2022, 10:02:26 AM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/
svg .svg-elem-1 {
  stroke-dashoffset: 718.9310302734375px;
  stroke-dasharray: 718.9310302734375px;
  fill: transparent;
  -webkit-transition: stroke-dashoffset 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 0.3s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s;
  transition: stroke-dashoffset 1.5s cubic-bezier(0.47, 0, 0.745, 0.715) 0.3s, fill 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s; }

svg.active .svg-elem-1 {
  stroke-dashoffset: 0;
  fill: #003e80; }

/* ------------------プレロード　ここまで-------------------*/
/* header *********************************************************************************************************/
#navTgl {
  display: none;
  overflow: hidden; }

@keyframes rotate-anime {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(360deg); } }
.hamberger-menu {
  position: fixed;
  z-index: 30;
  right: 5vw;
  top: 2vw;
  cursor: pointer;
  font-size: 3vw; }
  .hamberger-menu img {
    width: 6vw;
    height: auto;
    vertical-align: bottom; }
  @media print, screen and (min-width: 961px) {
    .hamberger-menu {
      right: 3.125vw;
      top: 1.875vw;
      font-size: 1.25vw; }
      .hamberger-menu img {
        width: 3.75vw; }
      .hamberger-menu:hover img {
        animation: rotate-anime 1s; } }

.fixed-slide-menu {
  border: 1px #00a6d9 solid;
  border-radius: 20px;
  background-color: rgba(255, 255, 255, 0.95);
  padding: 2vw;
  text-align: right;
  position: fixed;
  z-index: 40;
  right: 2.5vw;
  top: 3vw;
  opacity: 0;
  pointer-events: none;
  transform: translateX(30px);
  transition: .5s; }
  .fixed-slide-menu .close-btn {
    cursor: pointer; }
    .fixed-slide-menu .close-btn img {
      width: 5vw; }
  .fixed-slide-menu .menu-list {
    font-size: 2.5vw;
    padding: 2vw 4vw 4vw;
    line-height: 1.8; }
    .fixed-slide-menu .menu-list a {
      color: #333;
      transition: color .3s; }
      .fixed-slide-menu .menu-list a i {
        color: #00a6d9; }
      .fixed-slide-menu .menu-list a:hover {
        color: #00a6d9; }
    .fixed-slide-menu .menu-list .pb-s {
      padding-bottom: 2vw; }
    .fixed-slide-menu .menu-list .pb-m {
      padding-bottom: 4vw; }
    .fixed-slide-menu .menu-list .fs-small {
      font-size: 3vw; }
    .fixed-slide-menu .menu-list .fs-middle {
      font-size: 4vw; }
    .fixed-slide-menu .menu-list .fs-large {
      font-size: 4.5vw; }
  @media print, screen and (min-width: 961px) {
    .fixed-slide-menu {
      padding: 0.625vw;
      right: 1.5625vw;
      top: 1.875vw; }
      .fixed-slide-menu .close-btn img {
        width: 1.875vw; }
      .fixed-slide-menu .menu-list {
        font-size: 1.25vw;
        padding: 0.625vw 2.5vw 2.5vw; }
        .fixed-slide-menu .menu-list .pb-s {
          padding-bottom: 0.9375vw; }
        .fixed-slide-menu .menu-list .pb-m {
          padding-bottom: 1.875vw; }
        .fixed-slide-menu .menu-list .fs-small {
          font-size: 0.9375vw; }
        .fixed-slide-menu .menu-list .fs-middle {
          font-size: 1.25vw; }
        .fixed-slide-menu .menu-list .fs-large {
          font-size: 1.875vw; } }

#navTgl:checked ~ .fixed-slide-menu {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0); }

.header-logo {
  position: fixed;
  z-index: 25;
  left: 5vw;
  top: 4vw; }
  .header-logo img {
    width: 18vw; }
  @media print, screen and (min-width: 961px) {
    .header-logo {
      left: 3.125vw;
      top: 2.5vw; }
      .header-logo img {
        width: 11.25vw; } }

/* トップページ-------------------------------------------------------------------------------------*/
.wrap-top-mainvisual {
  /*
  display: flex;
  justify-content: center;
  align-items: flex-start;
  min-height: 100vh;
  */
  position: relative;
  z-index: 20; }
  .wrap-top-mainvisual .mainvisual-movie video {
    width: 100%;
    height: auto;
    pointer-events: none; }

@keyframes zoom {
  0% {
    transform: scale(1.02, 0.98); }
  50% {
    transform: scale(0.98, 1.02); }
  100% {
    transform: scale(1.02, 0.98); } }
.p-relative {
  position: relative; }

@keyframes poyon {
  0% {
    transform: scale(1, 1); }
  15% {
    transform: scale(0.95, 0.95); }
  30% {
    transform: scale(1.15, 0.9); }
  50% {
    transform: scale(0.9, 1.15); }
  70% {
    transform: scale(1.05, 0.95); }
  100% {
    transform: scale(1, 1); } }
.wrap-top-contents01 {
  text-align: center;
  background-color: #fff;
  position: relative;
  overflow: hidden;
  padding-top: 50vw; }
  .wrap-top-contents01 .wrap-top-contents01_pin {
    position: relative; }
  .wrap-top-contents01 .cloud01 {
    width: 70vw;
    position: absolute;
    left: -35vw;
    top: -23vw; }
  .wrap-top-contents01 .cloud02 {
    width: 70vw;
    position: absolute;
    right: -35vw;
    top: -45vw; }
  .wrap-top-contents01 .people-image {
    width: 95vw; }
  .wrap-top-contents01 a.fukidashi {
    position: absolute;
    width: 55vw;
    left: 50%;
    bottom: 35vw;
    margin-left: -32.5vw;
    display: inline-block; }
    .wrap-top-contents01 a.fukidashi img {
      width: 100%; }
    .wrap-top-contents01 a.fukidashi .text {
      color: #fff;
      font-size: 4.5vw;
      position: absolute;
      left: 7.5vw;
      top: 8.5vw; }
    .wrap-top-contents01 a.fukidashi .sub-text {
      text-align: center;
      font-size: 2.5vw;
      color: #3398aa; }
  .wrap-top-contents01 a.fukidashi02 {
    position: absolute;
    width: 50vw;
    left: 50%;
    bottom: 7.5vw;
    margin-left: -5vw;
    display: inline-block; }
    .wrap-top-contents01 a.fukidashi02 img {
      width: 100%; }
    .wrap-top-contents01 a.fukidashi02 .text {
      color: #fff;
      font-size: 4vw;
      position: absolute;
      left: 7.5vw;
      top: 8vw; }
    .wrap-top-contents01 a.fukidashi02 .sub-text {
      text-align: center;
      font-size: 2.5vw;
      color: #e88100; }
  .wrap-top-contents01 .wrap-zoom {
    animation: zoom 4s ease-in-out infinite; }
  .wrap-top-contents01 .wrap-zoom-delay01 {
    animation: zoom 4s ease-in-out 0.5s infinite; }
  .wrap-top-contents01 .wrap-zoom-delay02 {
    animation: zoom 4s ease-in-out 1s infinite; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-contents01 {
      padding-top: 31.25vw; }
      .wrap-top-contents01 .cloud01 {
        width: 43.75vw;
        left: -21.875vw;
        top: 20vw; }
      .wrap-top-contents01 .cloud02 {
        width: 43.75vw;
        right: -21.875vw;
        top: 3.125vw; }
      .wrap-top-contents01 .people-image {
        width: 59.375vw; }
      .wrap-top-contents01 a.fukidashi {
        width: 34.375vw;
        bottom: 21.875vw;
        margin-left: -20.3125vw; }
        .wrap-top-contents01 a.fukidashi .text {
          font-size: 2.8125vw;
          left: 4.6875vw;
          top: 5.3125vw; }
        .wrap-top-contents01 a.fukidashi .sub-text {
          font-size: 1.5625vw; }
        .wrap-top-contents01 a.fukidashi:hover img {
          animation: poyon 1.2s; }
      .wrap-top-contents01 a.fukidashi02 {
        width: 22.5vw;
        bottom: 21.875vw;
        margin-left: 20.3125vw; }
        .wrap-top-contents01 a.fukidashi02 .text {
          font-size: 1.875vw;
          left: 3.4375vw;
          top: 3.75vw; }
        .wrap-top-contents01 a.fukidashi02 .sub-text {
          font-size: 1.25vw; }
        .wrap-top-contents01 a.fukidashi02:hover img {
          animation: poyon 1.2s; } }

.wrap-top-overview {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50vh; }
  .wrap-top-overview h2 {
    font-size: 8.5vw;
    text-align: center; }
    .wrap-top-overview h2.sp-menshin span {
      display: inline-block;
      position: relative; }
      .wrap-top-overview h2.sp-menshin span::after {
        content: "\0ae";
        position: absolute;
        right: -0.9em;
        top: 0.3em;
        font-size: 0.5em; }
    .wrap-top-overview h2.pubb span {
      display: inline-block;
      position: relative; }
      .wrap-top-overview h2.pubb span::after {
        content: "パ　ブ";
        position: absolute;
        left: 1.7em;
        top: -0.8em;
        font-size: 3.5vw; }
  .wrap-top-overview .desc {
    font-size: 3.5vw;
    text-align: center;
    margin-top: 1em; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-overview {
      height: 100vh; }
      .wrap-top-overview h2 {
        font-size: 5.3125vw; }
        .wrap-top-overview h2.pubb span::after {
          font-size: 2.1875vw; }
      .wrap-top-overview .desc {
        font-size: 2.1875vw; } }

.wrap-top-sonaeru .sonaeru-title {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50vh; }
  .wrap-top-sonaeru .sonaeru-title h2 {
    font-size: 8.5vw; }
@media print, screen and (min-width: 961px) {
  .wrap-top-sonaeru .sonaeru-title {
    height: 100vh; }
    .wrap-top-sonaeru .sonaeru-title h2 {
      font-size: 5.3125vw; } }

.wrap-top-sonaeru_pin01 {
  text-align: center;
  position: relative;
  overflow: hidden; }
  .wrap-top-sonaeru_pin01 .cloud01 {
    display: none;
    width: 70vw;
    position: absolute;
    left: -35vw;
    top: 27vw; }
  .wrap-top-sonaeru_pin01 .cloud02 {
    display: none;
    width: 70vw;
    position: absolute;
    right: -35vw;
    top: 5vw; }
  .wrap-top-sonaeru_pin01 .people-image {
    width: 95vw; }
  .wrap-top-sonaeru_pin01 .fukidashi {
    position: absolute;
    width: 55vw;
    left: 50%;
    bottom: 35vw;
    margin-left: -32.5vw; }
    .wrap-top-sonaeru_pin01 .fukidashi img {
      width: 100%; }
    .wrap-top-sonaeru_pin01 .fukidashi .text {
      color: #fff;
      font-size: 4.5vw;
      position: absolute;
      left: 7.5vw;
      top: 8.5vw; }
  .wrap-top-sonaeru_pin01 .wrap-zoom {
    animation: zoom 4s ease-in-out infinite; }
  .wrap-top-sonaeru_pin01 .wrap-zoom-delay01 {
    animation: zoom 4s ease-in-out 0.5s infinite; }
  .wrap-top-sonaeru_pin01 .wrap-zoom-delay02 {
    animation: zoom 4s ease-in-out 1s infinite; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin01 {
      padding-top: 0; }
      .wrap-top-sonaeru_pin01 .cloud01 {
        display: inline-block;
        width: 43.75vw;
        left: -21.875vw;
        top: 20vw; }
      .wrap-top-sonaeru_pin01 .cloud02 {
        display: inline-block;
        width: 43.75vw;
        right: -21.875vw;
        top: 3.125vw; }
      .wrap-top-sonaeru_pin01 .people-image {
        width: 59.375vw; }
      .wrap-top-sonaeru_pin01 .fukidashi {
        width: 34.375vw;
        bottom: 21.875vw;
        margin-left: -20.3125vw; }
        .wrap-top-sonaeru_pin01 .fukidashi .text {
          font-size: 2.8125vw;
          left: 4.6875vw;
          top: 5.3125vw; } }

.wrap-top-sonaeru_pin02 {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50vh; }
  .wrap-top-sonaeru_pin02 .desc {
    font-size: 5.5vw; }
  .wrap-top-sonaeru_pin02 .house {
    text-align: center;
    padding-top: 2.5vw; }
    .wrap-top-sonaeru_pin02 .house img {
      width: 55vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin02 {
      height: 100vh; }
      .wrap-top-sonaeru_pin02 .desc {
        font-size: 3.4375vw; }
      .wrap-top-sonaeru_pin02 .house {
        padding-top: 1.5625vw; }
        .wrap-top-sonaeru_pin02 .house img {
          width: 34.375vw; } }

.wrap-top-sonaeru_pin03 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10vw 0 25vw; }
  .wrap-top-sonaeru_pin03 .face-image {
    width: 50vw; }
  .wrap-top-sonaeru_pin03 .wrap-seishin, .wrap-top-sonaeru_pin03 .wrap-menshin {
    position: absolute;
    left: 5vw;
    top: 7.5vw; }
    .wrap-top-sonaeru_pin03 .wrap-seishin .back-text, .wrap-top-sonaeru_pin03 .wrap-menshin .back-text {
      font-size: 7.5vw;
      color: #eee; }
    .wrap-top-sonaeru_pin03 .wrap-seishin .house, .wrap-top-sonaeru_pin03 .wrap-menshin .house {
      padding-left: 2.5vw; }
      .wrap-top-sonaeru_pin03 .wrap-seishin .house img, .wrap-top-sonaeru_pin03 .wrap-menshin .house img {
        width: 12.5vw; }
    .wrap-top-sonaeru_pin03 .wrap-seishin .moya, .wrap-top-sonaeru_pin03 .wrap-menshin .moya {
      background: url("../images/moya.png") no-repeat center center;
      background-size: contain;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 17.5vw;
      height: 17.5vw;
      position: absolute;
      right: -15vw;
      top: 4vw; }
      .wrap-top-sonaeru_pin03 .wrap-seishin .moya p, .wrap-top-sonaeru_pin03 .wrap-menshin .moya p {
        font-size: 4.5vw; }
  .wrap-top-sonaeru_pin03 .wrap-taishin {
    position: absolute;
    right: 2.5vw;
    top: 25vw; }
    .wrap-top-sonaeru_pin03 .wrap-taishin .back-text {
      font-size: 7.5vw;
      color: #eee; }
    .wrap-top-sonaeru_pin03 .wrap-taishin .house {
      padding-left: 2.5vw; }
      .wrap-top-sonaeru_pin03 .wrap-taishin .house img {
        width: 12.5vw; }
    .wrap-top-sonaeru_pin03 .wrap-taishin .moya {
      background: url("../images/moya.png") no-repeat center center;
      background-size: contain;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 17.5vw;
      height: 17.5vw;
      position: absolute;
      left: -17.5vw;
      top: 5vw; }
      .wrap-top-sonaeru_pin03 .wrap-taishin .moya p {
        font-size: 4.5vw; }
  .wrap-top-sonaeru_pin03 .wrap-menshin {
    position: absolute;
    left: 10vw;
    top: 52.5vw; }
    .wrap-top-sonaeru_pin03 .wrap-menshin .moya {
      top: 0vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin03 {
      padding: 6.25vw 0 15.625vw; }
      .wrap-top-sonaeru_pin03 .face-image {
        width: 31.25vw; }
      .wrap-top-sonaeru_pin03 .wrap-seishin, .wrap-top-sonaeru_pin03 .wrap-menshin {
        left: 7.8125vw;
        top: -1.5625vw; }
        .wrap-top-sonaeru_pin03 .wrap-seishin .back-text, .wrap-top-sonaeru_pin03 .wrap-menshin .back-text {
          font-size: 6.875vw; }
        .wrap-top-sonaeru_pin03 .wrap-seishin .house, .wrap-top-sonaeru_pin03 .wrap-menshin .house {
          padding-left: 3.125vw; }
          .wrap-top-sonaeru_pin03 .wrap-seishin .house img, .wrap-top-sonaeru_pin03 .wrap-menshin .house img {
            width: 12.5vw; }
        .wrap-top-sonaeru_pin03 .wrap-seishin .moya, .wrap-top-sonaeru_pin03 .wrap-menshin .moya {
          width: 16.25vw;
          height: 16.25vw;
          right: -13.125vw;
          top: 3.125vw; }
          .wrap-top-sonaeru_pin03 .wrap-seishin .moya p, .wrap-top-sonaeru_pin03 .wrap-menshin .moya p {
            font-size: 3.4375vw; }
      .wrap-top-sonaeru_pin03 .wrap-taishin {
        right: 7.8125vw;
        top: 12.5vw; }
        .wrap-top-sonaeru_pin03 .wrap-taishin .back-text {
          font-size: 6.875vw;
          color: #eee; }
        .wrap-top-sonaeru_pin03 .wrap-taishin .house {
          padding-left: 3.125vw; }
          .wrap-top-sonaeru_pin03 .wrap-taishin .house img {
            width: 12.5vw; }
        .wrap-top-sonaeru_pin03 .wrap-taishin .moya {
          width: 16.25vw;
          height: 16.25vw;
          left: -13.125vw;
          top: 3.125vw; }
          .wrap-top-sonaeru_pin03 .wrap-taishin .moya p {
            font-size: 3.4375vw; }
      .wrap-top-sonaeru_pin03 .wrap-menshin {
        left: 17.1875vw;
        top: 32.8125vw; }
        .wrap-top-sonaeru_pin03 .wrap-menshin .moya {
          top: 0vw; } }

.wrap-top-sonaeru_pin04 {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 25vw 0 25vw;
  position: relative; }
  .wrap-top-sonaeru_pin04 .main-cloud {
    position: relative; }
    .wrap-top-sonaeru_pin04 .main-cloud img {
      width: 70vw; }
    .wrap-top-sonaeru_pin04 .main-cloud p {
      font-size: 12vw;
      color: #fff;
      position: absolute;
      left: 50%;
      top: 50%;
      text-align: center;
      width: 100%;
      transform: translate(-50%, -50%); }
  .wrap-top-sonaeru_pin04 .sub-cloud {
    position: absolute;
    left: 5vw;
    top: 15vw; }
    .wrap-top-sonaeru_pin04 .sub-cloud img {
      width: 35vw; }
    .wrap-top-sonaeru_pin04 .sub-cloud p {
      font-size: 4vw;
      position: absolute;
      left: 50%;
      top: 50%;
      text-align: center;
      width: 100%;
      transform: translate(-50%, -50%); }
  .wrap-top-sonaeru_pin04 .wrap-zoom {
    animation: zoom 4s ease-in-out infinite; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin04 {
      padding: 15.625vw 0 15.625vw; }
      .wrap-top-sonaeru_pin04 .main-cloud {
        position: relative; }
        .wrap-top-sonaeru_pin04 .main-cloud img {
          width: 43.75vw; }
        .wrap-top-sonaeru_pin04 .main-cloud p {
          font-size: 7.5vw; }
      .wrap-top-sonaeru_pin04 .sub-cloud {
        left: 18.75vw;
        top: 10.9375vw; }
        .wrap-top-sonaeru_pin04 .sub-cloud img {
          width: 21.875vw; }
        .wrap-top-sonaeru_pin04 .sub-cloud p {
          font-size: 2.5vw; } }

.wrap-top-sonaeru_pin05 {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 0 25vw;
  position: relative; }
  .wrap-top-sonaeru_pin05 .sonaeru_pin05-fade-in {
    position: relative; }
  .wrap-top-sonaeru_pin05 .main-text {
    font-size: 5vw;
    text-align: center;
    position: relative;
    z-index: 2; }
  .wrap-top-sonaeru_pin05 .bg-text {
    font-size: 19.5vw;
    color: #eee;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    line-height: 0;
    width: 100%; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin05 {
      padding: 0 0 15.625vw; }
      .wrap-top-sonaeru_pin05 .main-text {
        font-size: 3.125vw; }
      .wrap-top-sonaeru_pin05 .bg-text {
        font-size: 12.1875vw; } }

.wrap-top-sonaeru_pin06 {
  text-align: center;
  position: relative;
  overflow: hidden; }
  .wrap-top-sonaeru_pin06 img.bg-people {
    width: 95vw; }
  .wrap-top-sonaeru_pin06 img.bd-pile-house {
    width: 50vw;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translate(-50%, 0);
    z-index: 2; }
  .wrap-top-sonaeru_pin06 .main-text {
    position: absolute;
    left: 50%;
    top: 25vw;
    transform: translate(-50%, 0);
    z-index: 3; }
    .wrap-top-sonaeru_pin06 .main-text p.top {
      font-size: 3.5vw; }
    .wrap-top-sonaeru_pin06 .main-text p.middle img {
      width: 55vw; }
    .wrap-top-sonaeru_pin06 .main-text p.bottom {
      font-size: 5.5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin06 img.bg-people {
      width: 65.625vw; }
    .wrap-top-sonaeru_pin06 img.bd-pile-house {
      width: 31.25vw;
      top: 1.5625vw; }
    .wrap-top-sonaeru_pin06 .main-text {
      top: 15.625vw; }
      .wrap-top-sonaeru_pin06 .main-text p.top {
        font-size: 2.1875vw; }
      .wrap-top-sonaeru_pin06 .main-text p.middle img {
        width: 34.375vw; }
      .wrap-top-sonaeru_pin06 .main-text p.bottom {
        font-size: 3.4375vw; } }

.wrap-top-sonaeru_pin07 {
  position: relative;
  overflow: hidden;
  padding: 40vw 0; }
  .wrap-top-sonaeru_pin07 .bg-bd-pile5 {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    z-index: 2; }
    .wrap-top-sonaeru_pin07 .bg-bd-pile5 img {
      width: 95vw; }
  .wrap-top-sonaeru_pin07 .bg-bd-pile {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    z-index: 1; }
    .wrap-top-sonaeru_pin07 .bg-bd-pile img {
      width: 80vw;
      opacity: 0.5; }
  .wrap-top-sonaeru_pin07 .main-text {
    font-size: 11.5vw;
    text-align: center; }
    .wrap-top-sonaeru_pin07 .main-text span {
      display: inline-block;
      position: relative; }
      .wrap-top-sonaeru_pin07 .main-text span::after {
        content: "\0ae";
        position: absolute;
        right: -0.9em;
        top: 0.3em;
        font-size: 0.5em; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin07 {
      padding: 25vw 0; }
      .wrap-top-sonaeru_pin07 .bg-bd-pile5 img {
        width: 59.375vw; }
      .wrap-top-sonaeru_pin07 .bg-bd-pile img {
        width: 50vw; }
      .wrap-top-sonaeru_pin07 .main-text {
        font-size: 7.1875vw; } }

.wrap-top-sonaeru_pin08 {
  position: relative;
  overflow: hidden; }
  .wrap-top-sonaeru_pin08 .bdmot {
    width: 40vw;
    position: fixed;
    left: 50%;
    bottom: 0;
    transform: translateY(-110%);
    margin-left: -20vw;
    z-index: 2;
    pointer-events: none; }
    .wrap-top-sonaeru_pin08 .bdmot.scroll-end {
      position: absolute; }
  .wrap-top-sonaeru_pin08 .mamoru-fixed-text {
    position: fixed;
    z-index: 1;
    color: #eee;
    width: 100%;
    left: 100%;
    bottom: 45vw;
    font-size: 15vw;
    white-space: nowrap;
    font-weight: bold;
    pointer-events: none; }
    .wrap-top-sonaeru_pin08 .mamoru-fixed-text.scroll-end {
      position: absolute; }
  .wrap-top-sonaeru_pin08 .mamoru-3 {
    text-align: center;
    padding: 40vw 0;
    position: relative;
    z-index: 3; }
    .wrap-top-sonaeru_pin08 .mamoru-3 .sub-text {
      font-size: 4.5vw; }
    .wrap-top-sonaeru_pin08 .mamoru-3 .main-text {
      font-size: 11vw; }
  .wrap-top-sonaeru_pin08 .mamoru-point01, .wrap-top-sonaeru_pin08 .mamoru-point02, .wrap-top-sonaeru_pin08 .mamoru-point03 {
    padding: 0 0 25vw;
    position: relative;
    z-index: 3;
    text-align: center; }
    .wrap-top-sonaeru_pin08 .mamoru-point01 img, .wrap-top-sonaeru_pin08 .mamoru-point02 img, .wrap-top-sonaeru_pin08 .mamoru-point03 img {
      width: 37.5vw;
      margin-right: 45vw; }
  .wrap-top-sonaeru_pin08 .mamoru-point02 img {
    margin-left: 45vw;
    margin-right: 0; }
  .wrap-top-sonaeru_pin08 .mamoru-point03 img {
    margin-right: 45vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin08 .bdmot {
      width: 17.5vw;
      margin-left: -8.75vw; }
    .wrap-top-sonaeru_pin08 .mamoru-fixed-text {
      font-size: 9.375vw;
      bottom: 28.125vw; }
    .wrap-top-sonaeru_pin08 .mamoru-3 {
      padding: 25vw 0; }
      .wrap-top-sonaeru_pin08 .mamoru-3 .sub-text {
        font-size: 2.8125vw; }
      .wrap-top-sonaeru_pin08 .mamoru-3 .main-text {
        font-size: 6.875vw; }
    .wrap-top-sonaeru_pin08 .mamoru-point01, .wrap-top-sonaeru_pin08 .mamoru-point02, .wrap-top-sonaeru_pin08 .mamoru-point03 {
      padding: 0 0 15.625vw; }
      .wrap-top-sonaeru_pin08 .mamoru-point01 img, .wrap-top-sonaeru_pin08 .mamoru-point02 img, .wrap-top-sonaeru_pin08 .mamoru-point03 img {
        width: 23.4375vw;
        margin-right: 28.125vw; }
    .wrap-top-sonaeru_pin08 .mamoru-point02 img {
      margin-left: 46.875vw;
      margin-right: 0; }
    .wrap-top-sonaeru_pin08 .mamoru-point03 img {
      margin-right: 46.875vw; } }

.wrap-top-sonaeru_pin09 {
  background-color: #d0e7ec;
  padding: 10vw 0;
  text-align: center;
  position: relative;
  overflow: hidden; }
  .wrap-top-sonaeru_pin09 img.mamoru-iedukuri {
    width: 60vw; }
  .wrap-top-sonaeru_pin09 img.white-cloud-left {
    width: 45vw;
    position: absolute;
    left: -27.5vw;
    top: 25vw; }
  .wrap-top-sonaeru_pin09 img.white-cloud-right {
    width: 68vw;
    position: absolute;
    right: -45.5vw;
    top: 10vw; }
  .wrap-top-sonaeru_pin09 img.mamoru-point01 {
    width: 25vw;
    position: absolute;
    right: 10vw;
    top: 20vw;
    z-index: 2; }
  .wrap-top-sonaeru_pin09 img.mamoru-point02 {
    width: 25vw;
    position: absolute;
    right: 5vw;
    top: 75vw;
    z-index: 2; }
  .wrap-top-sonaeru_pin09 img.mamoru-point03 {
    width: 25vw;
    position: absolute;
    left: 2.5vw;
    top: 85vw;
    z-index: 2; }
  .wrap-top-sonaeru_pin09 .main-cloud {
    position: absolute;
    left: 50%;
    top: 60%;
    transform: translate(-50%, -50%); }
    .wrap-top-sonaeru_pin09 .main-cloud img.cloud {
      width: 68vw; }
    .wrap-top-sonaeru_pin09 .main-cloud img.iedukuri-house {
      width: 22vw;
      position: absolute;
      left: 50%;
      top: 0;
      transform: translate(-50%, -64%); }
    .wrap-top-sonaeru_pin09 .main-cloud .main-text {
      text-align: center;
      font-size: 4.5vw;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      color: #fff;
      width: 100%; }
      .wrap-top-sonaeru_pin09 .main-cloud .main-text span {
        font-size: 3vw; }
  .wrap-top-sonaeru_pin09 .wrap-zoom {
    animation: zoom 4s ease-in-out infinite; }
  .wrap-top-sonaeru_pin09 .wrap-zoom-delay01 {
    animation: zoom 4s ease-in-out 0.5s infinite; }
  .wrap-top-sonaeru_pin09 .wrap-zoom-delay02 {
    animation: zoom 4s ease-in-out 1s infinite; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-sonaeru_pin09 {
      padding: 6.25vw 0; }
      .wrap-top-sonaeru_pin09 img.mamoru-iedukuri {
        width: 37.5vw; }
      .wrap-top-sonaeru_pin09 img.white-cloud-left {
        width: 44.6875vw;
        left: -19.6875vw;
        top: 15.625vw; }
      .wrap-top-sonaeru_pin09 img.white-cloud-right {
        width: 72.5vw;
        right: -44.375vw;
        top: 6.25vw; }
      .wrap-top-sonaeru_pin09 img.mamoru-point01 {
        width: 15.625vw;
        right: 21.875vw;
        top: 12.5vw; }
      .wrap-top-sonaeru_pin09 img.mamoru-point02 {
        width: 15.625vw;
        right: 9.375vw;
        top: 37.5vw;
        z-index: 2; }
      .wrap-top-sonaeru_pin09 img.mamoru-point03 {
        width: 15.625vw;
        left: 10.9375vw;
        top: 43.75vw; }
      .wrap-top-sonaeru_pin09 .main-cloud img.cloud {
        width: 42.5vw; }
      .wrap-top-sonaeru_pin09 .main-cloud img.iedukuri-house {
        width: 13.75vw; }
      .wrap-top-sonaeru_pin09 .main-cloud .main-text {
        font-size: 2.8125vw; }
        .wrap-top-sonaeru_pin09 .main-cloud .main-text span {
          font-size: 1.875vw; } }

/* ひとを守る-------------------------------------------------------------------------------------*/
.wrap-top-hito-mamoru__contents01 {
  text-align: center;
  padding: 25vw 0; }
  .wrap-top-hito-mamoru__contents01 h2 {
    font-size: 10.5vw; }
  .wrap-top-hito-mamoru__contents01 .hito-gif {
    padding-top: 7.5vw; }
    .wrap-top-hito-mamoru__contents01 .hito-gif img {
      width: 35vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents01 {
      padding: 15.625vw 0; }
      .wrap-top-hito-mamoru__contents01 h2 {
        font-size: 6.5625vw; }
      .wrap-top-hito-mamoru__contents01 .hito-gif {
        padding-top: 4.6875vw; }
        .wrap-top-hito-mamoru__contents01 .hito-gif img {
          width: 21.875vw; } }

.wrap-top-hito-mamoru__contents02 {
  text-align: center;
  padding: 0 0 25vw;
  font-size: 5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents02 {
      padding: 0 0 15.625vw;
      font-size: 3.125vw; } }

.wrap-top-hito-mamoru__contents03 {
  position: relative;
  overflow: hidden; }
  .wrap-top-hito-mamoru__contents03 .hito-mamoru__contents03__video01 {
    text-align: center; }
    .wrap-top-hito-mamoru__contents03 .hito-mamoru__contents03__video01 .mask {
      -webkit-mask-image: url("../images/video-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/video-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-hito-mamoru__contents03 .hito-mamoru__contents03__video01 .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi01,
  .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi03 {
    padding-left: 5vw;
    position: relative;
    z-index: 2; }
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi01 img,
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi03 img {
      width: 35vw; }
  .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi02,
  .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi04 {
    padding-right: 5vw;
    margin-top: -10vw;
    text-align: right;
    position: relative;
    z-index: 2; }
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi02 img,
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi04 img {
      width: 35vw; }
  .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi04 {
    margin-top: 0; }
  .wrap-top-hito-mamoru__contents03 .hito-mamoru__contents03__bg {
    width: 55vw;
    position: absolute;
    left: 50%;
    bottom: 40vw;
    transform: translateX(-50%);
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents03 .hito-mamoru__contents03__video01 .mask {
      width: 62.5vw; }
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi01,
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi03 {
      padding-left: 12.5vw; }
      .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi01 img,
      .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi03 img {
        width: 21.875vw; }
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi02,
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi04 {
      padding-right: 12.5vw;
      margin-top: -6.25vw; }
      .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi02 img,
      .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi04 img {
        width: 21.875vw; }
    .wrap-top-hito-mamoru__contents03 .wrap-top-hito-mamoru__contents03__fukidashi04 {
      margin-top: 0; }
    .wrap-top-hito-mamoru__contents03 .hito-mamoru__contents03__bg {
      width: 34.375vw;
      bottom: 25vw; } }

.wrap-top-hito-mamoru__contents04 {
  position: relative;
  overflow: hidden;
  padding: 35vw 0; }
  .wrap-top-hito-mamoru__contents04 .bg-bd-pile {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    z-index: 1; }
    .wrap-top-hito-mamoru__contents04 .bg-bd-pile img {
      width: 80vw;
      opacity: 0.5; }
  .wrap-top-hito-mamoru__contents04 .main {
    font-size: 9vw;
    text-align: center;
    line-height: 1.4;
    font-weight: bold; }
    .wrap-top-hito-mamoru__contents04 .main span {
      display: inline-block;
      position: relative; }
      .wrap-top-hito-mamoru__contents04 .main span::after {
        content: "\0ae";
        position: absolute;
        right: -0.9em;
        top: 0.3em;
        font-size: 0.5em; }
  .wrap-top-hito-mamoru__contents04 .middle {
    font-size: 6vw;
    text-align: center; }
  .wrap-top-hito-mamoru__contents04 .small {
    font-size: 3.5vw;
    text-align: center; }
  .wrap-top-hito-mamoru__contents04 .hito-mamoru__contents04-slide-text {
    position: absolute;
    z-index: -1;
    color: #eee;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15vw;
    white-space: nowrap; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents04 {
      padding: 21.875vw 0; }
      .wrap-top-hito-mamoru__contents04 .bg-bd-pile img {
        width: 50vw; }
      .wrap-top-hito-mamoru__contents04 .main {
        font-size: 5.625vw; }
      .wrap-top-hito-mamoru__contents04 .middle {
        font-size: 3.75vw; }
      .wrap-top-hito-mamoru__contents04 .small {
        font-size: 2.1875vw; }
      .wrap-top-hito-mamoru__contents04 .hito-mamoru__contents04-slide-text {
        font-size: 9.375vw; } }

.wrap-top-hito-mamoru__contents05 {
  background-color: #fce9ed;
  position: relative; }
  .wrap-top-hito-mamoru__contents05 h3 {
    transform: translateY(-20px);
    padding-left: 5vw;
    position: relative;
    z-index: 2;
    display: inline-block; }
    .wrap-top-hito-mamoru__contents05 h3 img {
      width: 75vw; }
  .wrap-top-hito-mamoru__contents05 .sp-menshin-image {
    padding-left: 10vw;
    padding-top: 2.5vw;
    padding-right: 10vw; }
    .wrap-top-hito-mamoru__contents05 .sp-menshin-image img {
      width: 100%; }
  .wrap-top-hito-mamoru__contents05 .sp-menshin-desc {
    padding-top: 5vw; }
    .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .main-copy {
      background: url("../images/sp-menshin-circle.svg") no-repeat center center;
      background-size: contain;
      line-height: 1.5;
      padding: 15vw; }
      .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .main-copy .main {
        color: #e95773;
        font-size: 5vw;
        letter-spacing: 0.1em; }
      .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .main-copy .sub {
        font-size: 3.5vw; }
    .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .desc {
      font-size: 3.5vw;
      padding: 5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents05 h3 {
      padding-left: 17.1875vw; }
      .wrap-top-hito-mamoru__contents05 h3 img {
        width: 46.875vw; }
    .wrap-top-hito-mamoru__contents05 .sp-menshin-image {
      padding-left: 9.375vw;
      padding-top: 1.5625vw;
      padding-right: 0; }
      .wrap-top-hito-mamoru__contents05 .sp-menshin-image img {
        width: 40.625vw; }
    .wrap-top-hito-mamoru__contents05 .sp-menshin-desc {
      position: absolute;
      left: 51.5625vw;
      top: 5vw;
      z-index: 1;
      padding-top: 0; }
      .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .main-copy {
        background: url("../images/sp-menshin-circle.svg") no-repeat center center;
        background-size: contain;
        line-height: 1.5;
        padding: 9.375vw 9.375vw 9.375vw 3.125vw; }
        .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .main-copy .main {
          color: #e95773;
          font-size: 2.1875vw;
          letter-spacing: 0.1em; }
        .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .main-copy .sub {
          font-size: 1.5625vw; }
      .wrap-top-hito-mamoru__contents05 .sp-menshin-desc .desc {
        font-size: 1.25vw;
        width: 40.625vw;
        padding: 0 0 0 3.125vw; } }

@keyframes cloud-zoom {
  0% {
    transform: scale(1.02, 0.98) translate(-50%, -50%); }
  50% {
    transform: scale(0.98, 1.02) translate(-50%, -50%); }
  100% {
    transform: scale(1.02, 0.98) translate(-50%, -50%); } }
.hito-mamoru-cloud, .hito-mamoru-cloud-s {
  font-size: 3.5vw;
  color: #e95773;
  position: relative;
  display: inline-block;
  line-height: 1.4; }
  .hito-mamoru-cloud .text, .hito-mamoru-cloud-s .text {
    position: relative;
    text-align: center;
    z-index: 2; }
    .hito-mamoru-cloud .text span, .hito-mamoru-cloud-s .text span {
      color: #0075ba; }
  .hito-mamoru-cloud img, .hito-mamoru-cloud-s img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: left center;
    width: 130%;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .hito-mamoru-cloud, .hito-mamoru-cloud-s {
      font-size: 2.1875vw; } }

.hito-mamoru-cloud-s {
  font-size: 2.5vw; }
  .hito-mamoru-cloud-s img {
    width: 140%; }
  @media print, screen and (min-width: 961px) {
    .hito-mamoru-cloud-s {
      font-size: 1.5625vw; } }

.sp-menshin-circle {
  font-size: 3vw;
  position: relative;
  display: inline-block;
  line-height: 1.4; }
  .sp-menshin-circle .text {
    position: relative;
    text-align: center;
    z-index: 2; }
  .sp-menshin-circle img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: center center;
    width: 200%;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .sp-menshin-circle {
      font-size: 1.875vw; } }

.wrap-top-hito-mamoru__contents06 {
  background-color: #fce9ed;
  position: relative;
  padding-top: 30vw; }
  .wrap-top-hito-mamoru__contents06 .hito-mamoru-cloud-01 {
    position: absolute;
    left: 15vw;
    top: 10vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents06 .shitsunai-shindo {
    position: absolute;
    left: 67.5vw;
    top: 25vw;
    width: 30vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents06 .dimen-shindo {
    position: absolute;
    left: 2.5vw;
    top: 50vw;
    width: 20vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents06 .hito-mamoru-jisin {
    text-align: center; }
    .wrap-top-hito-mamoru__contents06 .hito-mamoru-jisin .mask {
      -webkit-mask-image: url("../images/sp-menshin-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/sp-menshin-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 85vw;
      display: inline-block; }
      .wrap-top-hito-mamoru__contents06 .hito-mamoru-jisin .mask img {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents06 {
      padding-top: 18.75vw; }
      .wrap-top-hito-mamoru__contents06 .hito-mamoru-cloud-01 {
        left: 30vw;
        top: 6.25vw; }
      .wrap-top-hito-mamoru__contents06 .shitsunai-shindo {
        left: 62.5vw;
        top: 14.0625vw;
        width: 25vw; }
      .wrap-top-hito-mamoru__contents06 .dimen-shindo {
        left: 6.875vw;
        top: 29.6875vw;
        width: 17.1875vw; }
      .wrap-top-hito-mamoru__contents06 .hito-mamoru-jisin .mask {
        width: 53.125vw; } }

.wrap-top-hito-mamoru__contents07 {
  background-color: #fce9ed;
  position: relative;
  padding-top: 25vw; }
  .wrap-top-hito-mamoru__contents07 .hito-mamoru-cloud-02 {
    position: absolute;
    left: 15vw;
    top: 10vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents07 .hito-mamoru-cloud-03 {
    position: absolute;
    right: 10vw;
    top: 2.5vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents07 .hito-mamoru-cloud-04 {
    position: absolute;
    right: 5vw;
    top: 155vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents07 .sp-menshin-image {
    padding-left: 10vw;
    padding-top: 2.5vw;
    padding-right: 10vw; }
    .wrap-top-hito-mamoru__contents07 .sp-menshin-image img {
      width: 100%; }
  .wrap-top-hito-mamoru__contents07 .sp-menshin-desc {
    padding-top: 5vw; }
    .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .main-copy {
      background: url("../images/sp-menshin-circle.svg") no-repeat center center;
      background-size: contain;
      line-height: 1.5;
      padding: 20vw 15vw; }
      .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .main-copy .main {
        color: #e95773;
        font-size: 5vw;
        letter-spacing: 0.1em; }
      .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .main-copy .sub {
        font-size: 3.5vw; }
    .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .desc {
      font-size: 3.5vw;
      padding: 5vw;
      line-height: 1.8; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents07 {
      padding-top: 15.625vw; }
      .wrap-top-hito-mamoru__contents07 .hito-mamoru-cloud-02 {
        left: 30vw;
        top: 7.8125vw; }
      .wrap-top-hito-mamoru__contents07 .hito-mamoru-cloud-03 {
        right: 9.375vw;
        top: 1.5625vw; }
      .wrap-top-hito-mamoru__contents07 .hito-mamoru-cloud-04 {
        right: 4.6875vw;
        top: 26.5625vw; }
      .wrap-top-hito-mamoru__contents07 .sp-menshin-image {
        padding-left: 9.375vw;
        padding-top: 1.5625vw;
        padding-right: 0; }
        .wrap-top-hito-mamoru__contents07 .sp-menshin-image img {
          width: 37.5vw; }
      .wrap-top-hito-mamoru__contents07 .sp-menshin-desc {
        position: absolute;
        left: 51.5625vw;
        top: 6.25vw;
        z-index: 1;
        padding-top: 0; }
        .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .main-copy {
          background: url("../images/sp-menshin-circle.svg") no-repeat center center;
          background-size: contain;
          line-height: 1.5;
          padding: 9.375vw 9.375vw 9.375vw 3.125vw; }
          .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .main-copy .main {
            color: #e95773;
            font-size: 2.1875vw;
            letter-spacing: 0.1em; }
          .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .main-copy .sub {
            font-size: 1.5625vw; }
        .wrap-top-hito-mamoru__contents07 .sp-menshin-desc .desc {
          font-size: 1.25vw;
          width: 40.625vw;
          padding: 1.5625vw 0 0 3.125vw; } }

.wrap-top-hito-mamoru__contents08 {
  background-color: #fce9ed;
  position: relative;
  padding: 25vw 0 20vw; }
  .wrap-top-hito-mamoru__contents08 .hito-mamoru-cloud-05 {
    position: absolute;
    left: 55vw;
    top: 10vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents08 .hito-mamoru__contents08__video {
    text-align: center;
    position: relative;
    z-index: 2; }
    .wrap-top-hito-mamoru__contents08 .hito-mamoru__contents08__video .mask {
      -webkit-mask-image: url("../images/video-mask02.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/video-mask02.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-hito-mamoru__contents08 .hito-mamoru__contents08__video .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-hito-mamoru__contents08 .sp-menshin-circle01 {
    position: absolute;
    right: 2.5vw;
    top: 75vw;
    z-index: 3; }
  .wrap-top-hito-mamoru__contents08 img.sp-menshin-circle-bg {
    position: absolute;
    left: 2.5vw;
    top: 20vw;
    width: 35vw;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-hito-mamoru__contents08 {
      padding: 20.3125vw 0 9.375vw; }
      .wrap-top-hito-mamoru__contents08 .hito-mamoru-cloud-05 {
        left: 50vw;
        top: 9.375vw; }
      .wrap-top-hito-mamoru__contents08 .hito-mamoru__contents08__video .mask {
        width: 62.5vw; }
      .wrap-top-hito-mamoru__contents08 .sp-menshin-circle01 {
        right: 12.5vw;
        top: 46.875vw; }
      .wrap-top-hito-mamoru__contents08 img.sp-menshin-circle-bg {
        left: 14.0625vw;
        top: 18.75vw;
        width: 21.875vw; } }

/* 暮らしを守る-------------------------------------------------------------------------------------*/
.wrap-top-kurashi-mamoru__contents01 {
  text-align: center;
  padding: 25vw 0; }
  .wrap-top-kurashi-mamoru__contents01 h2 {
    font-size: 10.5vw; }
  .wrap-top-kurashi-mamoru__contents01 .kurashi-gif {
    padding-top: 10vw; }
    .wrap-top-kurashi-mamoru__contents01 .kurashi-gif img {
      width: 35vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents01 {
      padding: 15.625vw 0 12.5vw; }
      .wrap-top-kurashi-mamoru__contents01 h2 {
        font-size: 6.5625vw; }
      .wrap-top-kurashi-mamoru__contents01 .kurashi-gif {
        padding-top: 6.25vw; }
        .wrap-top-kurashi-mamoru__contents01 .kurashi-gif img {
          width: 21.875vw; } }

.wrap-top-kurashi-mamoru__contents02 {
  text-align: center;
  padding: 0 0 25vw;
  font-size: 5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents02 {
      padding: 0 0 15.625vw;
      font-size: 3.125vw; } }

.wrap-top-kurashi-mamoru__contents03 {
  position: relative;
  overflow: hidden;
  padding: 35vw 0; }
  .wrap-top-kurashi-mamoru__contents03 .bg-bd-pile {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    z-index: 1; }
    .wrap-top-kurashi-mamoru__contents03 .bg-bd-pile img {
      width: 80vw;
      opacity: 0.5; }
  .wrap-top-kurashi-mamoru__contents03 .main {
    font-size: 9vw;
    text-align: center;
    line-height: 1.4;
    font-weight: bold; }
  .wrap-top-kurashi-mamoru__contents03 .middle {
    font-size: 6vw;
    text-align: center; }
  .wrap-top-kurashi-mamoru__contents03 .small {
    font-size: 3.5vw;
    text-align: center; }
  .wrap-top-kurashi-mamoru__contents03 .bottom {
    font-size: 3.5vw;
    text-align: center;
    font-weight: bold; }
  .wrap-top-kurashi-mamoru__contents03 .kurashi-mamoru__contents03-slide-text {
    position: absolute;
    z-index: -1;
    color: #eee;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15vw;
    white-space: nowrap; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents03 {
      padding: 21.875vw 0; }
      .wrap-top-kurashi-mamoru__contents03 .bg-bd-pile img {
        width: 50vw; }
      .wrap-top-kurashi-mamoru__contents03 .main {
        font-size: 5.625vw; }
      .wrap-top-kurashi-mamoru__contents03 .middle {
        font-size: 3.75vw; }
      .wrap-top-kurashi-mamoru__contents03 .small {
        font-size: 2.1875vw; }
      .wrap-top-kurashi-mamoru__contents03 .bottom {
        font-size: 2.1875vw; }
      .wrap-top-kurashi-mamoru__contents03 .kurashi-mamoru__contents03-slide-text {
        font-size: 9.375vw; } }

.wrap-top-kurashi-mamoru__contents04 {
  position: relative;
  overflow: hidden;
  padding: 0 0 50vw; }
  .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video01, .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video02 {
    text-align: right;
    position: relative;
    z-index: 2; }
    .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video01 .mask, .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video02 .mask {
      -webkit-mask-image: url("../images/video-mask03.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/video-mask03.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video01 .mask video, .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video02 .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video02 {
    text-align: center;
    padding-top: 5vw; }
    .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video02 .mask {
      -webkit-mask-image: url("../images/video-mask04.svg");
      mask-image: url("../images/video-mask04.svg");
      width: 100vw; }
  .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04_cirlce-img {
    position: relative;
    height: 90vw; }
    .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04_cirlce-img .cirlce-img01 {
      position: absolute;
      left: 2.5vw;
      top: 0;
      width: 64vw;
      border-radius: 50%;
      z-index: 2; }
    .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04_cirlce-img .cirlce-img02 {
      position: absolute;
      right: 2.5vw;
      top: 30vw;
      width: 45vw;
      border-radius: 50%;
      z-index: 1; }
  .wrap-top-kurashi-mamoru__contents04 .gp-eco-f01 {
    position: absolute;
    left: 5vw;
    top: 30vw;
    width: 37.5vw;
    z-index: 3; }
  .wrap-top-kurashi-mamoru__contents04 .gp-eco-f02 {
    position: absolute;
    left: 40vw;
    top: 75vw;
    width: 28vw;
    z-index: 3; }
  .wrap-top-kurashi-mamoru__contents04 .gp-eco-f03 {
    position: absolute;
    right: 2.5vw;
    top: 140vw;
    width: 28vw;
    z-index: 3; }
  .wrap-top-kurashi-mamoru__contents04 .gp-eco-f04 {
    position: absolute;
    left: 2.5vw;
    top: 160vw;
    width: 25vw;
    z-index: 3; }
  .wrap-top-kurashi-mamoru__contents04 .gp-eco-f05 {
    position: absolute;
    right: 0vw;
    top: 205vw;
    width: 30vw;
    z-index: 3; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents04 {
      padding: 0 0 31.25vw; }
      .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video01 .mask {
        width: 71.875vw; }
      .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video02 {
        padding-left: 6.25vw;
        padding-top: 3.125vw; }
        .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04__video02 .mask {
          width: 71.875vw; }
      .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04_cirlce-img {
        height: 56.25vw; }
        .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04_cirlce-img .cirlce-img01 {
          left: 12.5vw;
          width: 40vw; }
        .wrap-top-kurashi-mamoru__contents04 .kurashi-mamoru__contents04_cirlce-img .cirlce-img02 {
          right: 17.1875vw;
          top: 18.75vw;
          width: 32.5vw; }
      .wrap-top-kurashi-mamoru__contents04 .gp-eco-f01 {
        left: 10.9375vw;
        top: 21.875vw;
        width: 23.4375vw; }
      .wrap-top-kurashi-mamoru__contents04 .gp-eco-f02 {
        left: 43.75vw;
        top: 51.5625vw;
        width: 17.5vw; }
      .wrap-top-kurashi-mamoru__contents04 .gp-eco-f03 {
        right: 6.25vw;
        top: 75vw;
        width: 17.5vw; }
      .wrap-top-kurashi-mamoru__contents04 .gp-eco-f04 {
        left: 7.8125vw;
        top: 125vw;
        width: 15.625vw; }
      .wrap-top-kurashi-mamoru__contents04 .gp-eco-f05 {
        right: 4.6875vw;
        top: 137.5vw;
        width: 18.75vw; } }

.wrap-top-kurashi-mamoru__contents05 {
  background-color: #ebebf3;
  position: relative;
  padding-top: 2.5vw; }
  .wrap-top-kurashi-mamoru__contents05 h3 {
    padding-left: 5vw;
    position: relative;
    z-index: 2;
    text-align: center; }
    .wrap-top-kurashi-mamoru__contents05 h3 img {
      width: 75vw; }
  .wrap-top-kurashi-mamoru__contents05 .wrap-top-desc {
    position: relative;
    z-index: 2; }
  .wrap-top-kurashi-mamoru__contents05 .gp-eco-circle {
    background: url("../images/gp-eco-circle.svg") no-repeat center center;
    background-size: contain;
    line-height: 1.5;
    padding: 17.5vw;
    display: inline-block;
    vertical-align: middle; }
    .wrap-top-kurashi-mamoru__contents05 .gp-eco-circle .main {
      color: #767cb0;
      font-size: 5vw;
      letter-spacing: 0.1em; }
    .wrap-top-kurashi-mamoru__contents05 .gp-eco-circle .sub {
      font-size: 3.5vw; }
  .wrap-top-kurashi-mamoru__contents05 .top-desc {
    font-size: 3.5vw;
    padding: 5vw;
    line-height: 1.8; }
    .wrap-top-kurashi-mamoru__contents05 .top-desc .annotation {
      font-size: 0.8em; }
  .wrap-top-kurashi-mamoru__contents05 .wrap-gp-eco-system-movie {
    position: relative;
    z-index: 1;
    margin-top: -2.5vw; }
    .wrap-top-kurashi-mamoru__contents05 .wrap-gp-eco-system-movie .video_wrapper {
      position: absolute;
      left: 0;
      top: 0;
      z-index: 1; }
    .wrap-top-kurashi-mamoru__contents05 .wrap-gp-eco-system-movie video {
      width: 100%;
      vertical-align: bottom; }
    .wrap-top-kurashi-mamoru__contents05 .wrap-gp-eco-system-movie img {
      width: 100%;
      height: auto;
      vertical-align: bottom;
      position: absolute;
      left: 0;
      top: 0;
      z-index: 2;
      opacity: 0; }
      .wrap-top-kurashi-mamoru__contents05 .wrap-gp-eco-system-movie img.bg {
        position: relative;
        z-index: 0; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents05 {
      padding-top: 1.5625vw; }
      .wrap-top-kurashi-mamoru__contents05 h3 img {
        width: 46.875vw; }
      .wrap-top-kurashi-mamoru__contents05 .wrap-top-desc {
        margin-top: -4.6875vw; }
      .wrap-top-kurashi-mamoru__contents05 .gp-eco-circle {
        padding: 7.8125vw; }
        .wrap-top-kurashi-mamoru__contents05 .gp-eco-circle .main {
          font-size: 2.1875vw; }
        .wrap-top-kurashi-mamoru__contents05 .gp-eco-circle .sub {
          font-size: 1.5625vw; }
      .wrap-top-kurashi-mamoru__contents05 .top-desc {
        font-size: 1.25vw;
        width: 46.875vw;
        padding: 0;
        display: inline-block;
        vertical-align: middle; }
      .wrap-top-kurashi-mamoru__contents05 .wrap-gp-eco-system-movie {
        padding: 0 12.5vw;
        margin-top: -1.5625vw; } }

.gp-eco-cloud {
  font-size: 3.5vw;
  color: #767cb0;
  position: relative;
  display: inline-block;
  line-height: 1.4;
  font-weight: bold; }
  .gp-eco-cloud .fs-5 {
    font-size: 2.5vw; }
  .gp-eco-cloud .fs-6 {
    font-size: 3vw; }
  .gp-eco-cloud .fs-7 {
    font-size: 3.5vw; }
  .gp-eco-cloud .fs-8 {
    font-size: 4vw; }
  .gp-eco-cloud .fs-9 {
    font-size: 4.5vw; }
  .gp-eco-cloud .fs-10 {
    font-size: 5vw; }
  .gp-eco-cloud .text {
    position: relative;
    text-align: center;
    z-index: 2; }
    .gp-eco-cloud .text .red {
      color: #e83819; }
  .gp-eco-cloud img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: left center;
    width: 130%;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .gp-eco-cloud {
      font-size: 2.1875vw; }
      .gp-eco-cloud .fs-5 {
        font-size: 1.5625vw; }
      .gp-eco-cloud .fs-6 {
        font-size: 1.875vw; }
      .gp-eco-cloud .fs-7 {
        font-size: 2.1875vw; }
      .gp-eco-cloud .fs-8 {
        font-size: 2.5vw; }
      .gp-eco-cloud .fs-9 {
        font-size: 2.8125vw; }
      .gp-eco-cloud .fs-10 {
        font-size: 3.125vw; } }

.gp-eco-cloud-s {
  font-size: 3.5vw;
  color: #fff;
  position: relative;
  display: inline-block;
  line-height: 1.4; }
  .gp-eco-cloud-s .text {
    position: relative;
    text-align: center;
    z-index: 2; }
    .gp-eco-cloud-s .text .fs-8 {
      font-size: 4vw; }
    .gp-eco-cloud-s .text .fs-9 {
      font-size: 4.5vw; }
    .gp-eco-cloud-s .text .fs-10 {
      font-size: 5vw; }
    .gp-eco-cloud-s .text .fs-11 {
      font-size: 5.5vw; }
    .gp-eco-cloud-s .text .fs-12 {
      font-size: 6vw; }
    .gp-eco-cloud-s .text .fs-13 {
      font-size: 6.5vw; }
    .gp-eco-cloud-s .text .fs-14 {
      font-size: 7vw; }
    .gp-eco-cloud-s .text .fw-b {
      font-weight: bold; }
  .gp-eco-cloud-s img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: left center;
    width: 180%;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .gp-eco-cloud-s {
      font-size: 2.1875vw; }
      .gp-eco-cloud-s .text .fs-8 {
        font-size: 2.5vw; }
      .gp-eco-cloud-s .text .fs-9 {
        font-size: 2.8125vw; }
      .gp-eco-cloud-s .text .fs-10 {
        font-size: 3.125vw; }
      .gp-eco-cloud-s .text .fs-11 {
        font-size: 3.4375vw; }
      .gp-eco-cloud-s .text .fs-12 {
        font-size: 3.75vw; }
      .gp-eco-cloud-s .text .fs-13 {
        font-size: 4.0625vw; }
      .gp-eco-cloud-s .text .fs-14 {
        font-size: 4.375vw; } }

.wrap-top-kurashi-mamoru__contents06 {
  background-color: #ebebf3;
  position: relative;
  padding-top: 15vw; }
  .wrap-top-kurashi-mamoru__contents06 .wrap-top-desc {
    position: relative;
    z-index: 2; }
  .wrap-top-kurashi-mamoru__contents06 .gp-eco-circle {
    background: url("../images/gp-eco-circle2.svg") no-repeat center center;
    background-size: contain;
    line-height: 1.5;
    padding: 17.5vw;
    display: inline-block;
    vertical-align: middle; }
    .wrap-top-kurashi-mamoru__contents06 .gp-eco-circle .main {
      color: #767cb0;
      font-size: 5vw;
      letter-spacing: 0.1em; }
    .wrap-top-kurashi-mamoru__contents06 .gp-eco-circle .sub {
      font-size: 3.5vw; }
  .wrap-top-kurashi-mamoru__contents06 .top-desc {
    font-size: 3.5vw;
    padding: 5vw;
    line-height: 1.8; }
  .wrap-top-kurashi-mamoru__contents06 .bottom-desc {
    font-size: 3.5vw;
    padding: 0 5vw 5vw;
    display: inline-block; }
    .wrap-top-kurashi-mamoru__contents06 .bottom-desc .orange {
      color: #e83819; }
    .wrap-top-kurashi-mamoru__contents06 .bottom-desc .green {
      color: #64a76b; }
  .wrap-top-kurashi-mamoru__contents06 .gp-graph-movie {
    text-align: center;
    padding: 20vw 0; }
    .wrap-top-kurashi-mamoru__contents06 .gp-graph-movie .mask {
      -webkit-mask-image: url("../images/gp-eco-graph-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/gp-eco-graph-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-kurashi-mamoru__contents06 .gp-graph-movie .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-kurashi-mamoru__contents06 .gp-eco-cloud-01 {
    position: absolute;
    left: 5vw;
    top: 140vw; }
  .wrap-top-kurashi-mamoru__contents06 .gp-eco-cloud-02 {
    position: absolute;
    right: 2.5vw;
    top: 125vw;
    width: 37.5vw; }
  .wrap-top-kurashi-mamoru__contents06 .gp-eco-cloud-03 {
    position: absolute;
    right: 5vw;
    top: 205vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents06 {
      padding-top: 9.375vw; }
      .wrap-top-kurashi-mamoru__contents06 .wrap-top-desc {
        display: flex;
        justify-content: center;
        align-items: center; }
        .wrap-top-kurashi-mamoru__contents06 .wrap-top-desc .cell {
          padding: 0 2.5vw;
          max-width: 56.25vw;
          flex-shrink: 0; }
      .wrap-top-kurashi-mamoru__contents06 .gp-eco-circle {
        padding: 6.875vw 6.25vw 10vw; }
        .wrap-top-kurashi-mamoru__contents06 .gp-eco-circle .main {
          font-size: 2.1875vw; }
        .wrap-top-kurashi-mamoru__contents06 .gp-eco-circle .sub {
          font-size: 1.5625vw; }
      .wrap-top-kurashi-mamoru__contents06 .top-desc {
        font-size: 1.25vw;
        width: 46.875vw;
        padding: 0;
        display: inline-block; }
      .wrap-top-kurashi-mamoru__contents06 .bottom-desc {
        font-size: 1.875vw;
        width: 53.125vw;
        padding: 3.125vw 0 0;
        display: inline-block; }
      .wrap-top-kurashi-mamoru__contents06 .gp-graph-movie {
        padding: 0; }
        .wrap-top-kurashi-mamoru__contents06 .gp-graph-movie .mask {
          width: 75vw; }
      .wrap-top-kurashi-mamoru__contents06 .gp-eco-cloud-01 {
        left: 6.25vw;
        top: 50vw; }
      .wrap-top-kurashi-mamoru__contents06 .gp-eco-cloud-02 {
        right: 1.5625vw;
        top: 32.8125vw;
        width: 23.4375vw; }
      .wrap-top-kurashi-mamoru__contents06 .gp-eco-cloud-03 {
        right: 6.25vw;
        top: 59.375vw; } }

.wrap-top-kurashi-mamoru__contents07 {
  background-color: #ebebf3;
  position: relative;
  padding: 15vw 0 0; }
  .wrap-top-kurashi-mamoru__contents07 .wrap-top-desc {
    margin-top: -7.5vw;
    position: relative;
    z-index: 2; }
  .wrap-top-kurashi-mamoru__contents07 .gp-eco-circle {
    background: url("../images/sp-menshin-circle.svg") no-repeat center center;
    background-size: contain;
    line-height: 1.5;
    padding: 17.5vw;
    display: inline-block;
    vertical-align: middle; }
    .wrap-top-kurashi-mamoru__contents07 .gp-eco-circle .main {
      color: #767cb0;
      font-size: 5vw;
      letter-spacing: 0.1em; }
    .wrap-top-kurashi-mamoru__contents07 .gp-eco-circle .sub {
      font-size: 3.5vw; }
  .wrap-top-kurashi-mamoru__contents07 .top-desc {
    font-size: 3.5vw;
    padding: 5vw;
    line-height: 1.8; }
  .wrap-top-kurashi-mamoru__contents07 .bottom-desc {
    font-size: 3.5vw;
    padding: 5vw; }
    .wrap-top-kurashi-mamoru__contents07 .bottom-desc .orange {
      color: #e83819; }
    .wrap-top-kurashi-mamoru__contents07 .bottom-desc .green {
      color: #64a76b; }
  .wrap-top-kurashi-mamoru__contents07 .gp-graph-movie {
    text-align: center;
    padding: 20vw 0; }
    .wrap-top-kurashi-mamoru__contents07 .gp-graph-movie .mask {
      -webkit-mask-image: url("../images/gp-eco-graph-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/gp-eco-graph-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-kurashi-mamoru__contents07 .gp-graph-movie .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-01 {
    position: absolute;
    left: 5vw;
    top: 115vw; }
  .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-02 {
    position: absolute;
    left: 50vw;
    top: 105vw; }
  .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-03 {
    position: absolute;
    right: 2.5vw;
    top: 135vw;
    width: 20vw; }
  .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-04 {
    position: absolute;
    left: 5vw;
    top: 177.5vw; }
  .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-05 {
    position: absolute;
    right: 5vw;
    top: 167.5vw;
    width: 42.5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents07 {
      padding: 9.375vw 0 6.25vw; }
      .wrap-top-kurashi-mamoru__contents07 .wrap-top-desc {
        margin-top: -4.6875vw; }
      .wrap-top-kurashi-mamoru__contents07 .gp-eco-circle {
        padding: 7.8125vw; }
        .wrap-top-kurashi-mamoru__contents07 .gp-eco-circle .main {
          font-size: 2.1875vw; }
        .wrap-top-kurashi-mamoru__contents07 .gp-eco-circle .sub {
          font-size: 1.5625vw; }
      .wrap-top-kurashi-mamoru__contents07 .top-desc {
        font-size: 1.25vw;
        width: 46.875vw;
        padding: 0;
        display: inline-block;
        vertical-align: middle; }
      .wrap-top-kurashi-mamoru__contents07 .bottom-desc {
        font-size: 2.1875vw;
        padding: 6.25vw 0 0 9.375vw; }
      .wrap-top-kurashi-mamoru__contents07 .gp-graph-movie {
        padding: 0; }
        .wrap-top-kurashi-mamoru__contents07 .gp-graph-movie .mask {
          width: 75vw; }
      .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-01 {
        left: 9.375vw;
        top: 37.5vw; }
      .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-02 {
        left: 43.75vw;
        top: 28.125vw; }
      .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-03 {
        right: 9.375vw;
        top: 40.625vw;
        width: 18.75vw; }
      .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-04 {
        left: 6.25vw;
        top: 62.5vw; }
      .wrap-top-kurashi-mamoru__contents07 .gp-eco-cloud-05 {
        right: 1.5625vw;
        top: 68.75vw;
        width: 26.5625vw; } }

.wrap-top-kurashi-mamoru__contents08 {
  background-color: #ebebf3;
  position: relative;
  padding: 20vw 0 35vw;
  overflow: hidden; }
  .wrap-top-kurashi-mamoru__contents08 .gp-eco-cloud-01 {
    position: absolute;
    left: 10vw;
    top: 17.5vw;
    z-index: 3; }
  .wrap-top-kurashi-mamoru__contents08 .kurashi-mamoru__contents08__video {
    text-align: left;
    position: relative;
    z-index: 2; }
    .wrap-top-kurashi-mamoru__contents08 .kurashi-mamoru__contents08__video .mask {
      -webkit-mask-image: url("../images/gp-eco-video-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: 90% center;
      mask-image: url("../images/gp-eco-video-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: 90% center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-kurashi-mamoru__contents08 .kurashi-mamoru__contents08__video .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-kurashi-mamoru__contents08 .gp-eco-circle {
    position: absolute;
    right: 2.5vw;
    top: 80vw;
    z-index: 3;
    letter-spacing: 0.1em;
    font-size: 3vw;
    line-height: 1.4; }
    .wrap-top-kurashi-mamoru__contents08 .gp-eco-circle .text {
      position: relative;
      text-align: center;
      z-index: 2; }
    .wrap-top-kurashi-mamoru__contents08 .gp-eco-circle img {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -55%);
      transform-origin: center center;
      width: 170%;
      z-index: 1; }
  .wrap-top-kurashi-mamoru__contents08 img.sp-menshin-circle-bg {
    position: absolute;
    left: 2.5vw;
    top: 45vw;
    width: 35vw;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-kurashi-mamoru__contents08 {
      padding: 12.5vw 0; }
      .wrap-top-kurashi-mamoru__contents08 .gp-eco-cloud-01 {
        left: 25vw;
        top: 7.8125vw; }
      .wrap-top-kurashi-mamoru__contents08 .kurashi-mamoru__contents08__video .mask {
        width: 68.75vw; }
      .wrap-top-kurashi-mamoru__contents08 .gp-eco-circle {
        right: 17.1875vw;
        top: 17.1875vw;
        font-size: 1.875vw; }
      .wrap-top-kurashi-mamoru__contents08 img.sp-menshin-circle-bg {
        left: 3.125vw;
        top: 37.5vw;
        width: 21.875vw; } }

/* 未来を守る-------------------------------------------------------------------------------------*/
.wrap-top-mirai-mamoru__contents01 {
  text-align: center;
  padding: 25vw 0; }
  .wrap-top-mirai-mamoru__contents01 h2 {
    font-size: 10.5vw; }
  .wrap-top-mirai-mamoru__contents01 .mirai-gif {
    padding-top: 5vw; }
    .wrap-top-mirai-mamoru__contents01 .mirai-gif img {
      width: 41.5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents01 {
      padding: 15.625vw 0 12.5vw; }
      .wrap-top-mirai-mamoru__contents01 h2 {
        font-size: 6.5625vw; }
      .wrap-top-mirai-mamoru__contents01 .mirai-gif {
        padding-top: 3.125vw; }
        .wrap-top-mirai-mamoru__contents01 .mirai-gif img {
          width: 25.9375vw; } }

.wrap-top-mirai-mamoru__contents02 {
  text-align: center;
  padding: 0 0 25vw;
  font-size: 5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents02 {
      padding: 0 0 15.625vw;
      font-size: 3.125vw; } }

.wrap-top-mirai-mamoru__contents03 {
  position: relative;
  overflow: hidden;
  padding: 15vw 0 50vw; }
  .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video01, .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video02 {
    text-align: center;
    position: relative;
    z-index: 2; }
    .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video01 .mask, .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video02 .mask {
      -webkit-mask-image: url("../images/mirai-video-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/mirai-video-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video01 .mask video, .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video02 .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video02 {
    text-align: center;
    padding-top: 10vw; }
    .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video02 .mask {
      -webkit-mask-image: url("../images/mirai-video-mask02.svg");
      mask-image: url("../images/mirai-video-mask02.svg");
      width: 100vw; }
  .wrap-top-mirai-mamoru__contents03 .mirai-f01 {
    position: absolute;
    right: 5vw;
    top: 5vw;
    width: 35vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents03 .mirai-f02 {
    position: absolute;
    left: 5vw;
    top: 52.5vw;
    width: 33.5vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents03 .mirai-f03 {
    position: absolute;
    right: 7.5vw;
    top: 65vw;
    width: 22.5vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents03 .mirai-f04 {
    position: absolute;
    left: 2.5vw;
    top: 90vw;
    width: 28vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents03 .mirai-f05 {
    position: absolute;
    left: 5vw;
    top: 140vw;
    width: 31.5vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents03 .mirai-f06 {
    position: absolute;
    right: 0vw;
    top: 135vw;
    width: 42vw;
    z-index: 3; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents03 {
      padding: 9.375vw 0 31.25vw; }
      .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video01 .mask {
        width: 63.125vw; }
      .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video02 {
        padding-top: 6.25vw; }
        .wrap-top-mirai-mamoru__contents03 .mirai-mamoru__contents03__video02 .mask {
          width: 73.125vw; }
      .wrap-top-mirai-mamoru__contents03 .mirai-f01 {
        right: 18.75vw;
        top: 3.125vw;
        width: 21.875vw; }
      .wrap-top-mirai-mamoru__contents03 .mirai-f02 {
        left: 12.5vw;
        top: 32.8125vw;
        width: 20.9375vw;
        z-index: 3; }
      .wrap-top-mirai-mamoru__contents03 .mirai-f03 {
        right: 15.625vw;
        top: 40.625vw;
        width: 14.0625vw; }
      .wrap-top-mirai-mamoru__contents03 .mirai-f04 {
        left: 12.5vw;
        top: 62.5vw;
        width: 17.5vw; }
      .wrap-top-mirai-mamoru__contents03 .mirai-f05 {
        left: 18.75vw;
        top: 96.875vw;
        width: 19.6875vw; }
      .wrap-top-mirai-mamoru__contents03 .mirai-f06 {
        right: 9.375vw;
        top: 84.375vw;
        width: 26.25vw; } }

.wrap-top-mirai-mamoru__contents04 {
  position: relative;
  overflow: hidden;
  padding: 25vw 0 35vw; }
  .wrap-top-mirai-mamoru__contents04 .bg-bd-pile {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    z-index: 1; }
    .wrap-top-mirai-mamoru__contents04 .bg-bd-pile img {
      width: 80vw;
      opacity: 0.3; }
  .wrap-top-mirai-mamoru__contents04 .wrap-text {
    position: relative;
    z-index: 2; }
  .wrap-top-mirai-mamoru__contents04 .main {
    font-size: 9vw;
    text-align: center;
    line-height: 1.4;
    font-weight: bold; }
  .wrap-top-mirai-mamoru__contents04 .middle {
    font-size: 6vw;
    text-align: center; }
  .wrap-top-mirai-mamoru__contents04 .kigou {
    text-align: center;
    color: #64a76b;
    font-size: 23vw;
    font-weight: bold;
    line-height: 0.6; }
  .wrap-top-mirai-mamoru__contents04 .mirai-mamoru__contents03-slide-text {
    position: absolute;
    z-index: -1;
    color: #eee;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15vw;
    white-space: nowrap; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents04 {
      padding: 15.625vw 0 21.875vw; }
      .wrap-top-mirai-mamoru__contents04 .bg-bd-pile img {
        width: 50vw; }
      .wrap-top-mirai-mamoru__contents04 .main {
        font-size: 5.625vw; }
      .wrap-top-mirai-mamoru__contents04 .middle {
        font-size: 3.75vw; }
      .wrap-top-mirai-mamoru__contents04 .kigou {
        font-size: 14.375vw; }
      .wrap-top-mirai-mamoru__contents04 .mirai-mamoru__contents03-slide-text {
        font-size: 9.375vw; } }

.wrap-top-mirai-mamoru__contents05 {
  background-color: #e8f2e9;
  position: relative;
  overflow: hidden;
  padding: 5vw 0 5vw; }
  .wrap-top-mirai-mamoru__contents05 h3 {
    position: relative;
    z-index: 2;
    padding-left: 5vw; }
    .wrap-top-mirai-mamoru__contents05 h3 img {
      width: 87.5vw; }
  .wrap-top-mirai-mamoru__contents05 .wrap-top-desc {
    padding-top: 2.5vw; }
    .wrap-top-mirai-mamoru__contents05 .wrap-top-desc .circle-title {
      text-align: center; }
      .wrap-top-mirai-mamoru__contents05 .wrap-top-desc .circle-title img {
        width: 80vw; }
    .wrap-top-mirai-mamoru__contents05 .wrap-top-desc .desc {
      padding: 5vw;
      font-size: 3.5vw; }
  .wrap-top-mirai-mamoru__contents05 .eco-energy-deco {
    text-align: center;
    margin-top: -2.5vw; }
    .wrap-top-mirai-mamoru__contents05 .eco-energy-deco img {
      width: 61.5vw; }
  .wrap-top-mirai-mamoru__contents05 .circle-deco01 {
    background-color: #fff;
    width: 11vw;
    height: 11vw;
    border-radius: 50%;
    position: absolute;
    right: -2.5vw;
    top: 35vw; }
  .wrap-top-mirai-mamoru__contents05 .circle-deco02 {
    background-color: #fff;
    width: 6vw;
    height: 6vw;
    border-radius: 50%;
    position: absolute;
    right: 12.5vw;
    top: 27.5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents05 {
      padding: 3.125vw 0 3.125vw; }
      .wrap-top-mirai-mamoru__contents05 h3 {
        padding-left: 15.625vw; }
        .wrap-top-mirai-mamoru__contents05 h3 img {
          width: 54.6875vw; }
      .wrap-top-mirai-mamoru__contents05 .wrap-top-desc {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-flow: row-reverse;
        padding-top: 1.5625vw; }
        .wrap-top-mirai-mamoru__contents05 .wrap-top-desc .circle-title {
          width: 28.125vw;
          flex-shrink: 0; }
          .wrap-top-mirai-mamoru__contents05 .wrap-top-desc .circle-title img {
            width: 100%;
            height: auto;
            vertical-align: bottom; }
        .wrap-top-mirai-mamoru__contents05 .wrap-top-desc .desc {
          padding: 0 4.6875vw 0 0;
          font-size: 1.25vw;
          width: 42.1875vw; }
      .wrap-top-mirai-mamoru__contents05 .eco-energy-deco {
        margin-top: -3.125vw; }
        .wrap-top-mirai-mamoru__contents05 .eco-energy-deco img {
          width: 38.4375vw; }
      .wrap-top-mirai-mamoru__contents05 .circle-deco01 {
        width: 6.875vw;
        height: 6.875vw;
        right: -1.5625vw;
        top: 15.625vw; }
      .wrap-top-mirai-mamoru__contents05 .circle-deco02 {
        width: 3.75vw;
        height: 3.75vw;
        right: 9.375vw;
        top: 10.9375vw; } }

.wrap-top-mirai-mamoru__contents06 {
  background-color: #e8f2e9;
  position: relative;
  overflow: hidden;
  padding: 0 0 5vw; }
  .wrap-top-mirai-mamoru__contents06 h3 {
    position: relative;
    z-index: 2;
    padding-left: 5vw; }
    .wrap-top-mirai-mamoru__contents06 h3 img {
      width: 90vw; }
  .wrap-top-mirai-mamoru__contents06 .wrap-system-image {
    text-align: center;
    padding-top: 5vw;
    padding-bottom: 5vw; }
    .wrap-top-mirai-mamoru__contents06 .wrap-system-image .old-system img {
      width: 75vw;
      height: auto;
      vertical-align: bottom; }
    .wrap-top-mirai-mamoru__contents06 .wrap-system-image .arrow {
      padding: 2.5vw 0; }
      .wrap-top-mirai-mamoru__contents06 .wrap-system-image .arrow img {
        width: 6vw;
        height: auto;
        vertical-align: bottom;
        transform: rotate(90deg); }
    .wrap-top-mirai-mamoru__contents06 .wrap-system-image .new-system img {
      width: 75vw;
      height: auto;
      vertical-align: bottom; }
  .wrap-top-mirai-mamoru__contents06 .info-table {
    font-size: 4.5vw;
    padding: 2.5vw 5vw; }
    .wrap-top-mirai-mamoru__contents06 .info-table .title {
      display: inline-block; }
    .wrap-top-mirai-mamoru__contents06 .info-table .text {
      display: inline-block; }
    .wrap-top-mirai-mamoru__contents06 .info-table .sub-text {
      display: block;
      color: #64a76b;
      font-size: 3.5vw; }
      .wrap-top-mirai-mamoru__contents06 .info-table .sub-text strong {
        color: #e88100; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents06 {
      padding: 0 0 3.125vw; }
      .wrap-top-mirai-mamoru__contents06 h3 {
        padding-left: 15.625vw; }
        .wrap-top-mirai-mamoru__contents06 h3 img {
          width: 44.375vw; }
      .wrap-top-mirai-mamoru__contents06 .wrap-system-image {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-top: 3.125vw;
        padding-bottom: 3.125vw; }
        .wrap-top-mirai-mamoru__contents06 .wrap-system-image .old-system img {
          width: 25vw; }
        .wrap-top-mirai-mamoru__contents06 .wrap-system-image .arrow {
          padding: 0 0 0 0.625vw; }
          .wrap-top-mirai-mamoru__contents06 .wrap-system-image .arrow img {
            width: 3.75vw;
            position: relative;
            z-index: 2;
            transform: translateX(0.625vw); }
        .wrap-top-mirai-mamoru__contents06 .wrap-system-image .new-system img {
          width: 25vw; }
      .wrap-top-mirai-mamoru__contents06 .info-table {
        display: table;
        font-size: 1.40625vw;
        margin-left: 28.125vw;
        padding: 0; }
        .wrap-top-mirai-mamoru__contents06 .info-table .title {
          display: table-cell;
          text-align: right;
          width: 15.625vw; }
        .wrap-top-mirai-mamoru__contents06 .info-table .text {
          display: table-cell; }
        .wrap-top-mirai-mamoru__contents06 .info-table .sub-text {
          display: table-cell;
          color: #64a76b;
          font-size: 1.25vw; }
          .wrap-top-mirai-mamoru__contents06 .info-table .sub-text strong {
            color: #e88100; } }

.eco-system-cloud {
  font-size: 3.5vw;
  color: #64a76b;
  position: relative;
  display: inline-block;
  line-height: 1.4;
  font-weight: bold; }
  .eco-system-cloud .fs-5 {
    font-size: 2.5vw; }
  .eco-system-cloud .fs-6 {
    font-size: 3vw; }
  .eco-system-cloud .fs-7 {
    font-size: 3.5vw; }
  .eco-system-cloud .fs-8 {
    font-size: 4vw; }
  .eco-system-cloud .fs-9 {
    font-size: 4.5vw; }
  .eco-system-cloud .fs-10 {
    font-size: 5vw; }
  .eco-system-cloud .text {
    position: relative;
    text-align: center;
    z-index: 2; }
    .eco-system-cloud .text .red {
      color: #e95773; }
  .eco-system-cloud img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: left center;
    width: 130%;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .eco-system-cloud {
      font-size: 2.1875vw; }
      .eco-system-cloud .fs-5 {
        font-size: 1.5625vw; }
      .eco-system-cloud .fs-6 {
        font-size: 1.875vw; }
      .eco-system-cloud .fs-7 {
        font-size: 2.1875vw; }
      .eco-system-cloud .fs-8 {
        font-size: 2.5vw; }
      .eco-system-cloud .fs-9 {
        font-size: 2.8125vw; }
      .eco-system-cloud .fs-10 {
        font-size: 3.125vw; } }

.wrap-top-mirai-mamoru__contents07 {
  background-color: #e8f2e9;
  position: relative;
  overflow: hidden; }
  .wrap-top-mirai-mamoru__contents07 .eco-system-map {
    padding: 0 5vw; }
    .wrap-top-mirai-mamoru__contents07 .eco-system-map img {
      width: 100%;
      height: auto;
      vertical-align: bottom; }
  .wrap-top-mirai-mamoru__contents07 .eco-system-cloud-01 {
    position: absolute;
    left: 10vw;
    top: 17.5vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents07 .eco-system-cloud-02 {
    position: absolute;
    right: 5vw;
    top: 42.5vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents07 .eco-energy-deco {
    text-align: center;
    margin-top: -15vw;
    margin-left: 20vw; }
    .wrap-top-mirai-mamoru__contents07 .eco-energy-deco img {
      width: 61.5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents07 .eco-system-map {
      text-align: center;
      padding: 0; }
      .wrap-top-mirai-mamoru__contents07 .eco-system-map img {
        width: 65.625vw; }
    .wrap-top-mirai-mamoru__contents07 .eco-system-cloud-01 {
      left: 29.6875vw;
      top: 12.5vw; }
    .wrap-top-mirai-mamoru__contents07 .eco-system-cloud-02 {
      right: 9.375vw;
      top: 37.5vw; }
    .wrap-top-mirai-mamoru__contents07 .eco-energy-deco {
      margin-top: -9.375vw;
      margin-left: 12.5vw; }
      .wrap-top-mirai-mamoru__contents07 .eco-energy-deco img {
        width: 38.4375vw; } }

.wrap-top-mirai-mamoru__contents08 {
  background-color: #e8f2e9;
  position: relative;
  padding: 10vw 0; }
  .wrap-top-mirai-mamoru__contents08 .eco-graph-movie {
    text-align: center; }
    .wrap-top-mirai-mamoru__contents08 .eco-graph-movie .mask {
      -webkit-mask-image: url("../images/eco-graph-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/eco-graph-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-mirai-mamoru__contents08 .eco-graph-movie .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-01 {
    position: absolute;
    left: 10vw;
    top: 2.5vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-02 {
    position: absolute;
    left: 10vw;
    top: 60vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-03 {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 3;
    text-align: center;
    background: url("../images/eco-system-circle01.svg") no-repeat center center;
    background-size: contain;
    line-height: 1.5;
    padding: 10vw;
    color: #fff; }
    .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-03 .main {
      font-size: 4vw;
      letter-spacing: 0.1em; }
    .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-03 .sub {
      font-size: 2.5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents08 {
      padding: 6.25vw 0; }
      .wrap-top-mirai-mamoru__contents08 .eco-graph-movie .mask {
        width: 65.625vw; }
      .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-01 {
        left: 18.75vw;
        top: 1.5625vw; }
      .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-02 {
        left: 18.75vw;
        top: 37.5vw; }
      .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-03 {
        right: 12.5vw;
        top: 3.125vw;
        padding: 6.25vw; }
        .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-03 .main {
          font-size: 2.1875vw; }
        .wrap-top-mirai-mamoru__contents08 .eco-system-cloud-03 .sub {
          font-size: 1.25vw; } }

.wrap-top-mirai-mamoru__contents09 {
  background-color: #e8f2e9;
  position: relative;
  padding: 10vw 0; }
  .wrap-top-mirai-mamoru__contents09 .eco-system-movie {
    text-align: center;
    position: relative;
    z-index: 2; }
    .wrap-top-mirai-mamoru__contents09 .eco-system-movie .mask {
      -webkit-mask-image: url("../images/eco-system-video-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/eco-system-video-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-mirai-mamoru__contents09 .eco-system-movie .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-01 {
    position: absolute;
    right: 10vw;
    top: 2.5vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-02 {
    position: absolute;
    left: 5vw;
    top: 60vw;
    z-index: 3; }
  .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-03 {
    position: absolute;
    right: 7.5vw;
    top: 60vw;
    z-index: 3;
    font-size: 3.5vw;
    line-height: 1.4; }
    .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-03 .text {
      position: relative;
      text-align: center;
      z-index: 2; }
    .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-03 img {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      transform-origin: left center;
      width: 150%;
      z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents09 {
      padding: 6.25vw 0; }
      .wrap-top-mirai-mamoru__contents09 .eco-system-movie .mask {
        width: 65.625vw; }
      .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-01 {
        right: 18.75vw;
        top: 3.75vw; }
      .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-02 {
        left: 7.8125vw;
        top: 28.125vw; }
      .wrap-top-mirai-mamoru__contents09 .eco-system-cloud-03 {
        right: 12.5vw;
        top: 34.375vw;
        font-size: 2.1875vw; } }

.wrap-top-mirai-mamoru__contents10 {
  background-color: #e8f2e9;
  position: relative;
  padding: 10vw 0; }
  .wrap-top-mirai-mamoru__contents10 .flex .image {
    text-align: center; }
    .wrap-top-mirai-mamoru__contents10 .flex .image img {
      width: 70vw;
      height: auto;
      vertical-align: bottom; }
  .wrap-top-mirai-mamoru__contents10 .flex .desc {
    font-size: 3.5vw;
    padding: 6.25vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mirai-mamoru__contents10 {
      padding: 6.25vw 0; }
      .wrap-top-mirai-mamoru__contents10 .flex {
        display: flex;
        justify-content: center;
        align-items: center; }
        .wrap-top-mirai-mamoru__contents10 .flex .image img {
          width: 35.9375vw; }
        .wrap-top-mirai-mamoru__contents10 .flex .desc {
          font-size: 1.25vw;
          padding: 0 0 0 6.25vw;
          line-height: 2; } }

/* 「守る」を加える-------------------------------------------------------------------------------------*/
.wrap-top-mamoru-kuwaeru_contents01 {
  text-align: center;
  padding: 25vw 0 5vw; }
  .wrap-top-mamoru-kuwaeru_contents01 h2 {
    font-size: 8.5vw; }
  .wrap-top-mamoru-kuwaeru_contents01 .totot03-gif {
    padding-top: 5vw; }
    .wrap-top-mamoru-kuwaeru_contents01 .totot03-gif img {
      width: 37.5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents01 {
      padding: 15.625vw 0 3.125vw; }
      .wrap-top-mamoru-kuwaeru_contents01 h2 {
        font-size: 5.3125vw; }
      .wrap-top-mamoru-kuwaeru_contents01 .totot03-gif {
        padding-top: 3.125vw; }
        .wrap-top-mamoru-kuwaeru_contents01 .totot03-gif img {
          width: 23.4375vw; } }

.wrap-top-mamoru-kuwaeru_contents02 {
  text-align: center;
  position: relative;
  overflow: hidden;
  padding: 35vw 0 40vw; }
  .wrap-top-mamoru-kuwaeru_contents02 .mamoru-kuwaeru_contents02_cloud01 {
    width: 70vw;
    position: absolute;
    left: -35vw;
    top: 0; }
  .wrap-top-mamoru-kuwaeru_contents02 .mamoru-kuwaeru_contents02_cloud02 {
    width: 70vw;
    position: absolute;
    right: -35vw;
    top: 45vw; }
  .wrap-top-mamoru-kuwaeru_contents02 .mamoru-kuwaeru_contents02_text {
    text-align: center;
    font-size: 5vw;
    letter-spacing: 0.1em; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents02 {
      padding: 18.75vw 0 21.875vw; }
      .wrap-top-mamoru-kuwaeru_contents02 .mamoru-kuwaeru_contents02_cloud01 {
        width: 43.75vw;
        left: -21.875vw; }
      .wrap-top-mamoru-kuwaeru_contents02 .mamoru-kuwaeru_contents02_cloud02 {
        width: 43.75vw;
        right: -21.875vw;
        top: 25vw; }
      .wrap-top-mamoru-kuwaeru_contents02 .mamoru-kuwaeru_contents02_text {
        font-size: 3.125vw; } }

.wrap-top-mamoru-kuwaeru_contents03 {
  text-align: center;
  padding: 15vw 0 25vw;
  font-size: 5vw; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents03 {
      padding: 9.375vw 0 15.625vw;
      font-size: 3.125vw; } }

.wrap-top-mamoru-kuwaeru_contents04 {
  position: relative;
  overflow: hidden;
  padding: 35vw 0; }
  .wrap-top-mamoru-kuwaeru_contents04 .bg-bd-pile {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    text-align: center;
    z-index: 1; }
    .wrap-top-mamoru-kuwaeru_contents04 .bg-bd-pile img {
      width: 80vw;
      opacity: 0.5; }
  .wrap-top-mamoru-kuwaeru_contents04 .main {
    font-size: 13.5vw;
    text-align: center;
    line-height: 1;
    font-weight: bold;
    position: relative; }
    .wrap-top-mamoru-kuwaeru_contents04 .main::after {
      content: "パ　　ブ";
      position: absolute;
      left: 50%;
      bottom: -1.3em;
      transform: translateX(-6em);
      font-size: 3.5vw; }
  .wrap-top-mamoru-kuwaeru_contents04 .middle {
    font-size: 6vw;
    text-align: center; }
  .wrap-top-mamoru-kuwaeru_contents04 .small {
    font-size: 3.5vw;
    text-align: center; }
  .wrap-top-mamoru-kuwaeru_contents04 .mamoru-kuwaeru_contents04-slide-text {
    position: absolute;
    z-index: -1;
    color: #eee;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15vw;
    white-space: nowrap; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents04 {
      padding: 21.875vw 0; }
      .wrap-top-mamoru-kuwaeru_contents04 .bg-bd-pile img {
        width: 50vw; }
      .wrap-top-mamoru-kuwaeru_contents04 .main {
        font-size: 8.4375vw; }
        .wrap-top-mamoru-kuwaeru_contents04 .main::after {
          font-size: 2.1875vw; }
      .wrap-top-mamoru-kuwaeru_contents04 .middle {
        font-size: 3.75vw; }
      .wrap-top-mamoru-kuwaeru_contents04 .small {
        font-size: 2.1875vw; }
      .wrap-top-mamoru-kuwaeru_contents04 .mamoru-kuwaeru_contents04-slide-text {
        font-size: 9.375vw; } }

.wrap-top-mamoru-kuwaeru_contents05 {
  position: relative;
  padding: 0 0 35vw; }
  .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__image {
    position: relative;
    z-index: 2;
    padding-left: 5vw; }
    .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__image img {
      width: 90vw; }
  .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__video {
    text-align: center;
    position: relative;
    z-index: 1;
    margin-top: 5vw; }
    .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__video .mask {
      -webkit-mask-image: url("../images/pubb-video-mask.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/pubb-video-mask.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__video .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-mamoru-kuwaeru_contents05 .pubb-f01 {
    position: absolute;
    left: 2.5vw;
    top: 0;
    width: 32.5vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents05 .pubb-f02 {
    position: absolute;
    right: 5vw;
    top: 20vw;
    width: 31vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents05 .pubb-f03 {
    position: absolute;
    left: 5vw;
    top: 75vw;
    width: 31.5vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents05 .pubb-f04 {
    position: absolute;
    right: 2.5vw;
    top: 90vw;
    width: 33vw;
    z-index: 3; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents05 {
      padding: 0 0 21.875vw; }
      .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__image {
        padding-left: 12.5vw; }
        .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__image img {
          width: 68.75vw; }
      .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__video {
        margin-top: 9.375vw; }
        .wrap-top-mamoru-kuwaeru_contents05 .mamoru-kuwaeru_contents__video .mask {
          width: 62.5vw; }
      .wrap-top-mamoru-kuwaeru_contents05 .pubb-f01 {
        left: 3.125vw;
        top: 31.25vw;
        width: 20.3125vw; }
      .wrap-top-mamoru-kuwaeru_contents05 .pubb-f02 {
        right: 9.375vw;
        top: 43.75vw;
        width: 19.375vw; }
      .wrap-top-mamoru-kuwaeru_contents05 .pubb-f03 {
        left: 4.6875vw;
        top: 96.875vw;
        width: 19.6875vw; }
      .wrap-top-mamoru-kuwaeru_contents05 .pubb-f04 {
        right: 6.25vw;
        top: 109.375vw;
        width: 20.625vw; } }

.wrap-top-mamoru-kuwaeru_contents06 {
  background-color: #fcefde;
  position: relative;
  padding: 10vw 0 15vw; }
  .wrap-top-mamoru-kuwaeru_contents06 h3 {
    position: relative;
    z-index: 2;
    padding-left: 5vw; }
    .wrap-top-mamoru-kuwaeru_contents06 h3 img {
      width: 68.5vw; }
  .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc {
    padding: 65vw 0 0 0; }
    .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .main-copy {
      background: url("../images/sp-menshin-circle.svg") no-repeat center center;
      background-size: contain;
      line-height: 1.5;
      padding: 15vw 10vw;
      display: inline-block;
      text-align: left; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .main-copy .main {
        color: #e88100;
        font-size: 5vw;
        letter-spacing: 0.1em; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .main-copy .sub {
        font-size: 3.5vw; }
    .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .desc {
      font-size: 3.5vw;
      padding: 5vw;
      text-align: left; }
  .wrap-top-mamoru-kuwaeru_contents06 .pubb-circle01 {
    position: absolute;
    left: 27.5vw;
    top: 44vw;
    width: 70vw;
    z-index: 1; }
  .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine01 {
    position: absolute;
    left: 56.5vw;
    top: 5vw;
    width: 37.5vw;
    z-index: 2; }
  .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine01-name {
    position: absolute;
    left: 85vw;
    top: 58.5vw;
    font-size: 3vw;
    color: #427935;
    z-index: 2; }
  .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine02 {
    position: absolute;
    left: 35.5vw;
    top: 69vw;
    width: 11vw;
    z-index: 2; }
  .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine02-name {
    position: absolute;
    left: 12.5vw;
    top: 77.5vw;
    font-size: 3vw;
    color: #427935;
    z-index: 2; }
  .wrap-top-mamoru-kuwaeru_contents06 .pubb-flash {
    position: absolute;
    left: 15vw;
    top: 45vw;
    width: 27.5vw;
    z-index: 2; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents06 {
      padding: 3.125vw 0 9.375vw; }
      .wrap-top-mamoru-kuwaeru_contents06 h3 {
        padding-left: 12.5vw;
        text-align: center; }
        .wrap-top-mamoru-kuwaeru_contents06 h3 img {
          width: 42.8125vw; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc {
        padding: 0 0 0 6.25vw;
        margin-top: -3.125vw;
        text-align: left; }
        .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .main-copy {
          padding: 6.25vw; }
          .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .main-copy .main {
            font-size: 2.1875vw; }
          .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .main-copy .sub {
            font-size: 1.25vw; }
        .wrap-top-mamoru-kuwaeru_contents06 .pubb-desc .desc {
          line-height: 1.8;
          font-size: 1.25vw;
          width: 37.5vw;
          padding: 2.5vw 0 0 3.125vw; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-circle01 {
        position: absolute;
        left: 55.3125vw;
        top: 21.875vw;
        width: 36.25vw;
        z-index: 1; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine01 {
        position: absolute;
        left: 70.3125vw;
        top: 5.3125vw;
        width: 18.125vw;
        z-index: 2; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine01-name {
        position: absolute;
        left: 85vw;
        top: 29.6875vw;
        font-size: 1.71875vw;
        color: #427935;
        z-index: 2; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine02 {
        position: absolute;
        left: 59.375vw;
        top: 34.375vw;
        width: 6.25vw;
        z-index: 2; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-machine02-name {
        position: absolute;
        left: 46.875vw;
        top: 39.0625vw;
        font-size: 1.71875vw;
        color: #427935;
        z-index: 2; }
      .wrap-top-mamoru-kuwaeru_contents06 .pubb-flash {
        position: absolute;
        left: 49.375vw;
        top: 21.5625vw;
        width: 15.9375vw;
        z-index: 2; } }

.pubb-cloud {
  font-size: 3.5vw;
  color: #e88100;
  position: relative;
  display: inline-block;
  line-height: 1.4;
  font-weight: bold; }
  .pubb-cloud .fs-5 {
    font-size: 2.5vw; }
  .pubb-cloud .fs-6 {
    font-size: 3vw; }
  .pubb-cloud .fs-7 {
    font-size: 3.5vw; }
  .pubb-cloud .fs-8 {
    font-size: 4vw; }
  .pubb-cloud .fs-9 {
    font-size: 4.5vw; }
  .pubb-cloud .fs-10 {
    font-size: 5vw; }
  .pubb-cloud .text {
    position: relative;
    text-align: center;
    z-index: 2; }
    .pubb-cloud .text .green {
      color: #427935; }
  .pubb-cloud img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: left center;
    width: 130%;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .pubb-cloud {
      font-size: 2.1875vw; }
      .pubb-cloud .fs-5 {
        font-size: 1.5625vw; }
      .pubb-cloud .fs-6 {
        font-size: 1.875vw; }
      .pubb-cloud .fs-7 {
        font-size: 2.1875vw; }
      .pubb-cloud .fs-8 {
        font-size: 2.5vw; }
      .pubb-cloud .fs-9 {
        font-size: 2.8125vw; }
      .pubb-cloud .fs-10 {
        font-size: 3.125vw; } }

.wrap-top-mamoru-kuwaeru_contents07 {
  background-color: #fcefde;
  position: relative;
  padding: 10vw 0 0; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-illust-gif {
    padding: 0 2.5vw;
    position: relative;
    z-index: 2; }
    .wrap-top-mamoru-kuwaeru_contents07 .pubb-illust-gif img {
      width: 100%;
      height: auto;
      vertical-align: bottom; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-01 {
    position: absolute;
    left: 10vw;
    top: 2.5vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-02 {
    position: absolute;
    left: 40vw;
    top: 90vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-03 {
    position: absolute;
    right: 5vw;
    top: 155vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-04 {
    position: absolute;
    left: 25vw;
    top: 140vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-bird01 {
    position: absolute;
    right: 2.5vw;
    top: -10vw;
    z-index: 3;
    width: 30vw; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-bird02 {
    position: absolute;
    left: 0vw;
    top: 130vw;
    z-index: 3;
    width: 22.5vw; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-img01 {
    padding-left: 5vw;
    position: relative;
    z-index: 2; }
    .wrap-top-mamoru-kuwaeru_contents07 .pubb-img01 img {
      width: 49vw;
      height: auto;
      vertical-align: bottom; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-img02 {
    padding-left: 47.5vw;
    margin-top: -25vw;
    position: relative;
    z-index: 2; }
    .wrap-top-mamoru-kuwaeru_contents07 .pubb-img02 img {
      width: 43vw;
      height: auto;
      vertical-align: bottom; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-sidetext-cloud {
    position: absolute;
    right: -22.5vw;
    top: 35vw;
    width: 50vw;
    z-index: 1; }
  .wrap-top-mamoru-kuwaeru_contents07 .pubb-lside-cloud {
    position: absolute;
    left: -10vw;
    top: 50vw;
    width: 32.5vw;
    z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents07 {
      padding: 3.125vw 0 0; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-illust-gif {
        padding: 0 0 0 12.5vw; }
        .wrap-top-mamoru-kuwaeru_contents07 .pubb-illust-gif img {
          width: 64.0625vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-01 {
        left: 25vw;
        top: 1.5625vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-02 {
        left: 50vw;
        top: 53.125vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-03 {
        right: 5.3125vw;
        top: 87.5vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-cloud-04 {
        left: 34.375vw;
        top: 96.875vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-bird01 {
        right: 1.5625vw;
        top: 10.9375vw;
        width: 18.75vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-bird02 {
        left: 1.5625vw;
        top: 84.375vw;
        width: 18.75vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-img01 {
        padding-left: 18.75vw; }
        .wrap-top-mamoru-kuwaeru_contents07 .pubb-img01 img {
          width: 33.75vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-img02 {
        padding-left: 50vw;
        margin-top: -15.625vw; }
        .wrap-top-mamoru-kuwaeru_contents07 .pubb-img02 img {
          width: 30vw; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-sidetext-cloud {
        position: absolute;
        right: -12.5vw;
        top: 7.8125vw;
        width: 37.5vw;
        z-index: 1; }
      .wrap-top-mamoru-kuwaeru_contents07 .pubb-lside-cloud {
        position: absolute;
        left: -9.375vw;
        top: 46.875vw;
        width: 26.5625vw;
        z-index: 1; } }

.wrap-top-mamoru-kuwaeru_contents08 {
  background-color: #fcefde;
  position: relative;
  padding: 25vw 0 10vw; }
  .wrap-top-mamoru-kuwaeru_contents08 .pubb-image-movie {
    text-align: center;
    position: relative;
    z-index: 2; }
    .wrap-top-mamoru-kuwaeru_contents08 .pubb-image-movie .mask {
      -webkit-mask-image: url("../images/pubb-video-mask02.svg");
      -webkit-mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center center;
      mask-image: url("../images/pubb-video-mask02.svg");
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center center;
      width: 100vw;
      display: inline-block; }
      .wrap-top-mamoru-kuwaeru_contents08 .pubb-image-movie .mask video {
        width: 100%;
        height: auto;
        vertical-align: bottom; }
  .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-01 {
    position: absolute;
    right: 40vw;
    top: 20vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-02 {
    position: absolute;
    left: 5vw;
    top: 65vw;
    z-index: 3; }
  .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-03 {
    position: absolute;
    right: 2.5vw;
    top: 62.5vw;
    z-index: 3;
    font-size: 3vw;
    line-height: 1.4; }
    .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-03 .text {
      position: relative;
      text-align: center;
      z-index: 2; }
    .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-03 img {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      transform-origin: left center;
      width: 130%;
      z-index: 1; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents08 {
      padding: 6.25vw 0 3.125vw; }
      .wrap-top-mamoru-kuwaeru_contents08 .pubb-image-movie .mask {
        width: 62.5vw; }
      .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-01 {
        right: 12.5vw;
        top: 6.25vw; }
      .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-02 {
        left: 12.5vw;
        top: 28.125vw; }
      .wrap-top-mamoru-kuwaeru_contents08 .pubb-cloud-03 {
        right: 14.0625vw;
        top: 26.5625vw;
        font-size: 1.875vw; } }

.wrap-top-mamoru-kuwaeru_contents09 {
  background-color: #fcefde;
  position: relative;
  padding: 5vw 0 15vw; }
  .wrap-top-mamoru-kuwaeru_contents09 .pubb-circle {
    padding-left: 2.5vw; }
    .wrap-top-mamoru-kuwaeru_contents09 .pubb-circle img {
      width: 87.5vw;
      height: auto;
      vertical-align: bottom; }
  .wrap-top-mamoru-kuwaeru_contents09 .pubb-bird01 {
    position: absolute;
    right: 2.5vw;
    top: 10vw;
    z-index: 3;
    width: 52.5vw; }
  .wrap-top-mamoru-kuwaeru_contents09 .text {
    text-align: center;
    position: absolute;
    left: 35vw;
    top: 42.5vw;
    z-index: 3;
    font-size: 5vw;
    line-height: 1.5; }
  .wrap-top-mamoru-kuwaeru_contents09 .circle-bg {
    position: absolute;
    right: 4vw;
    top: 4vw;
    width: 10vw;
    height: 10vw;
    z-index: 1;
    border-radius: 50%;
    background-color: #fff; }
  @media print, screen and (min-width: 961px) {
    .wrap-top-mamoru-kuwaeru_contents09 {
      padding: 3.125vw 0 9.375vw; }
      .wrap-top-mamoru-kuwaeru_contents09 .pubb-circle {
        padding-left: 17.1875vw; }
        .wrap-top-mamoru-kuwaeru_contents09 .pubb-circle img {
          width: 54.6875vw; }
      .wrap-top-mamoru-kuwaeru_contents09 .pubb-bird01 {
        right: 21.875vw;
        top: 4.6875vw;
        width: 32.8125vw; }
      .wrap-top-mamoru-kuwaeru_contents09 .text {
        left: 37.5vw;
        top: 25vw;
        font-size: 3.125vw; }
      .wrap-top-mamoru-kuwaeru_contents09 .circle-bg {
        right: 10.9375vw;
        top: 4.6875vw;
        width: 11.5625vw;
        height: 11.5625vw; } }

/* お問い合わせ -------------------------------------------------------------------------------------*/
.wrap-contact-contents {
  padding: 15vw 0 5vw;
  position: relative; }
  .wrap-contact-contents .cloud01 {
    width: 60vw;
    position: absolute;
    left: -35vw;
    top: 35vw; }
  .wrap-contact-contents .cloud02 {
    width: 60vw;
    position: absolute;
    right: -35vw;
    top: 13vw; }
  .wrap-contact-contents .cloud05 {
    position: absolute;
    display: none; }
  .wrap-contact-contents .cloud06 {
    position: absolute;
    display: none; }
  .wrap-contact-contents .contact-people {
    text-align: center;
    position: relative; }
    .wrap-contact-contents .contact-people .people-image {
      width: 40vw;
      height: auto;
      position: relative;
      z-index: 2; }
    .wrap-contact-contents .contact-people .house-image {
      width: 17.5vw;
      height: auto;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-63%, -30%);
      z-index: 1; }
  .wrap-contact-contents .bd-pile-title {
    text-align: center;
    position: relative; }
    .wrap-contact-contents .bd-pile-title .sub {
      font-size: 3.75vw;
      padding: 4vw 0 2vw; }
    .wrap-contact-contents .bd-pile-title .main img {
      width: 67.5vw;
      height: auto; }
    .wrap-contact-contents .bd-pile-title h3 {
      color: #3398aa;
      font-size: 2vw;
      padding: 0.3em 8em;
      border: 4px #3398aa solid;
      border-radius: 10px;
      display: inline-block;
      margin-top: 5vw; }
    .wrap-contact-contents .bd-pile-title .cloud03 {
      width: 20.5vw;
      position: absolute;
      left: 2.5vw;
      bottom: -5vw; }
    .wrap-contact-contents .bd-pile-title .cloud04 {
      width: 26vw;
      position: absolute;
      right: -5vw;
      bottom: 0vw; }
  .wrap-contact-contents .wrap-contactfrom {
    padding: 5vw; }
  .wrap-contact-contents .wrap-zoom {
    animation: zoom 4s ease-in-out infinite; }
  .wrap-contact-contents .thanks-contents h3 {
    text-align: center;
    font-weight: bold;
    font-size: 5vw;
    letter-spacing: 0.1em; }
  .wrap-contact-contents .thanks-contents .desc {
    text-align: center;
    padding: 5vw;
    font-size: 3.5vw; }
  .wrap-contact-contents .thanks-contents .wrap-return-btn {
    text-align: center;
    padding: 0 5vw 5vw; }
    .wrap-contact-contents .thanks-contents .wrap-return-btn a {
      display: inline-block;
      padding: 0.8em 2em;
      background-color: #3398aa;
      color: #fff;
      font-size: 3.5vw;
      border-radius: 8px; }
  @media print, screen and (min-width: 961px) {
    .wrap-contact-contents {
      padding: 9.375vw 0 3.125vw; }
      .wrap-contact-contents .cloud01 {
        width: 43.75vw;
        left: -21.875vw;
        top: 20vw; }
      .wrap-contact-contents .cloud02 {
        width: 43.75vw;
        right: -21.875vw;
        top: 3.125vw; }
      .wrap-contact-contents .cloud05 {
        width: 43.75vw;
        left: -28.125vw;
        top: 129.375vw;
        display: inline-block; }
      .wrap-contact-contents .cloud06 {
        width: 43.75vw;
        right: -28.125vw;
        top: 109.375vw;
        display: inline-block; }
      .wrap-contact-contents .contact-people .people-image {
        width: 25vw; }
      .wrap-contact-contents .contact-people .house-image {
        width: 10.9375vw; }
      .wrap-contact-contents .bd-pile-title .sub {
        font-size: 2.34375vw;
        padding: 2.5vw 0 1.25vw; }
      .wrap-contact-contents .bd-pile-title .main img {
        width: 42.1875vw; }
      .wrap-contact-contents .bd-pile-title h3 {
        font-size: 1.25vw;
        margin-top: 3.125vw;
        border: 5px #3398aa solid;
        padding: 0.2em 8em; }
      .wrap-contact-contents .bd-pile-title .cloud03 {
        width: 15.9375vw;
        left: 9.375vw;
        bottom: -3.125vw; }
      .wrap-contact-contents .bd-pile-title .cloud04 {
        width: 19.375vw;
        right: 9.375vw;
        bottom: 0vw; }
      .wrap-contact-contents .wrap-contactfrom {
        padding: 4.6875vw 18.75vw; }
      .wrap-contact-contents .thanks-contents h3 {
        font-size: 3.125vw; }
      .wrap-contact-contents .thanks-contents .desc {
        padding: 3.125vw;
        font-size: 1.25vw; }
      .wrap-contact-contents .thanks-contents .wrap-return-btn {
        padding: 0 3.125vw 3.125vw; }
        .wrap-contact-contents .thanks-contents .wrap-return-btn a {
          font-size: 1.25vw;
          transition: opacity .3s; }
          .wrap-contact-contents .thanks-contents .wrap-return-btn a:hover {
            opacity: 0.7; } }

#mailformpro {
  text-align: left;
  font-size: 3.5vw;
  position: relative;
  z-index: 2; }
  #mailformpro input {
    padding: 0.3em;
    font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
    border: 1px #ddd solid;
    font-size: 3.5vw; }
  #mailformpro textarea {
    width: 100%;
    font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
    border: 1px #ddd solid;
    font-size: 3.5vw; }
  #mailformpro input[type=checkbox] {
    width: 20px;
    height: 20px;
    font-size: 3.5vw; }
  #mailformpro label.checkbox {
    margin-right: 3em;
    line-height: 2;
    font-size: 3.5vw;
    display: inline-block; }
  #mailformpro .table .tr .th {
    margin-bottom: 2.5vw; }
  #mailformpro .table .tr .td {
    margin-bottom: 7.5vw; }
  #mailformpro .check-table .check-tr .check-td {
    padding: 0.5em 0; }
  @media print, screen and (min-width: 961px) {
    #mailformpro {
      font-size: 1.25vw; }
      #mailformpro input {
        font-size: 1.25vw; }
      #mailformpro textarea {
        font-size: 1.25vw; }
      #mailformpro input[type=checkbox] {
        font-size: 1.25vw; }
      #mailformpro label.checkbox {
        font-size: 1.25vw; }
      #mailformpro .table {
        display: table;
        width: 100%;
        border-collapse: collapse; }
        #mailformpro .table .tr {
          display: table-row;
          border-top: 1px #666 solid;
          border-bottom: 1px #666 solid; }
          #mailformpro .table .tr .th {
            display: table-cell;
            padding: 1.5em 1em;
            vertical-align: top;
            font-size: 1.25vw;
            margin-bottom: 0;
            width: 12em; }
          #mailformpro .table .tr .td {
            display: table-cell;
            padding: 1.5em 1em;
            vertical-align: top;
            margin-bottom: 0; }
      #mailformpro .check-table {
        display: table;
        width: 100%; }
        #mailformpro .check-table .check-tr {
          display: table-row; }
          #mailformpro .check-table .check-tr .check-td {
            display: table-cell;
            padding: 5px 0; } }

.mfp_not_checked {
  padding: 0.5em;
  border: none !important; }

.mfp_checked {
  border: none !important;
  background-color: transparent !important;
  box-shadow: none !important; }

.form-3 {
  width: 100%; }

.form-6 {
  width: 100% !important;
  height: 4em !important; }

.form-7 {
  width: 100% !important;
  height: 16em !important; }

.mfp_buttons, .mfp_buttons_bd {
  text-align: center;
  margin-top: 5vw; }
  .mfp_buttons button, .mfp_buttons_bd button {
    border-radius: 5px;
    background-color: #e1e1e1;
    padding: 0.5em 2em;
    border-style: none;
    font-size: 3.5vw;
    cursor: pointer;
    margin: 0 0.5em; }
    .mfp_buttons button.submit-btn, .mfp_buttons_bd button.submit-btn {
      background-color: #3398aa;
      color: #fff; }
  @media print, screen and (min-width: 961px) {
    .mfp_buttons, .mfp_buttons_bd {
      margin-top: 3.125vw; }
      .mfp_buttons button, .mfp_buttons_bd button {
        font-size: 1.25vw; } }

.mfp_buttons_bd button {
  width: 50vw; }
@media print, screen and (min-width: 961px) {
  .mfp_buttons_bd button {
    width: 31.25vw; } }

.contact-required {
  color: #e73357;
  font-style: normal; }

/* footer-------------------------------------------------------------------------------------*/
.wrap-footer {
  position: relative;
  background-color: #d0e7ec;
  padding: 10vw 5vw 17.5vw;
  font-size: 3.5vw;
  text-align: right; }
  .wrap-footer .company-name {
    font-size: 4vw;
    padding-top: 2.5vw; }
    .wrap-footer .company-name span {
      font-size: 3.5vw; }
    .wrap-footer .company-name img {
      width: 40vw;
      height: auto;
      vertical-align: bottom; }
  .wrap-footer .contact img {
    width: 25vw; }
  .wrap-footer .footer-hand {
    width: 65vw;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%); }
  @media print, screen and (min-width: 961px) {
    .wrap-footer {
      padding: 6.25vw 6.25vw 10.9375vw;
      text-align: right;
      font-size: 1.25vw; }
      .wrap-footer .company-name {
        font-size: 1.5625vw;
        padding-top: 1.5625vw; }
        .wrap-footer .company-name span {
          font-size: 1.25vw; }
        .wrap-footer .company-name img {
          width: 18.75vw; }
      .wrap-footer .contact img {
        width: 13.75vw; }
      .wrap-footer .footer-hand {
        width: 40.625vw; }
      .wrap-footer a:hover {
        text-decoration: underline; } }

/*-------------------------------------------------------------------------------------*/
/*フォントサイズ*/
.font-size-9 {
  font-size: 0.9rem; }

.font-size-10 {
  font-size: 1.0rem; }

.font-size-11 {
  font-size: 1.1rem; }

.font-size-12 {
  font-size: 1.2rem; }

.font-size-13 {
  font-size: 1.3rem; }

.font-size-14 {
  font-size: 1.4rem; }

.font-size-16 {
  font-size: 1.6rem; }

.font-size-18 {
  font-size: 1.8rem; }

.font-size-20 {
  font-size: 2.0rem; }

.font-size-22 {
  font-size: 2.2rem; }

.font-size-24 {
  font-size: 2.4rem; }

.font-size-26 {
  font-size: 2.6rem; }

.font-size-28 {
  font-size: 2.8rem; }

.font-size-30 {
  font-size: 3.0rem; }

.font-size-32 {
  font-size: 3.2rem; }

.font-size-34 {
  font-size: 3.4rem; }

.font-size-36 {
  font-size: 3.6rem; }

.font-size-38 {
  font-size: 3.8rem; }

.font-size-40 {
  font-size: 4.0rem; }

.font-weight-normal {
  font-weight: normal; }

.font-weight-500 {
  font-weight: 500; }

.font-weight-bold {
  font-weight: bold; }

.line-height80 {
  line-height: 0.8; }

.line-height90 {
  line-height: 0.9; }

.line-height100 {
  line-height: 1.0; }

.line-height110 {
  line-height: 1.1; }

.line-height120 {
  line-height: 1.2; }

.line-height130 {
  line-height: 1.3; }

.line-height140 {
  line-height: 1.4; }

.line-height145 {
  line-height: 1.45; }

.line-height150 {
  line-height: 1.5; }

.line-height160 {
  line-height: 1.6; }

.line-height170 {
  line-height: 1.7; }

.line-height180 {
  line-height: 1.8; }

.line-height190 {
  line-height: 1.9; }

.line-height200 {
  line-height: 2.0; }

/*マージン*/
.margin-top-5 {
  margin-top: 5px; }

.margin-top-10 {
  margin-top: 10px; }

.margin-top-15 {
  margin-top: 15px; }

.margin-top-20 {
  margin-top: 20px; }

.margin-top-25 {
  margin-top: 25px; }

.margin-top-30 {
  margin-top: 30px; }

.margin-top-35 {
  margin-top: 35px; }

.margin-top-40 {
  margin-top: 40px; }

.margin-top-45 {
  margin-top: 45px; }

.margin-top-50 {
  margin-top: 50px; }

.margin-top-55 {
  margin-top: 55px; }

.margin-top-60 {
  margin-top: 60px; }

.margin-top-65 {
  margin-top: 65px; }

.margin-top-70 {
  margin-top: 70px; }

.margin-top-75 {
  margin-top: 75px; }

.margin-top-80 {
  margin-top: 80px; }

.margin-left-5 {
  margin-left: 5px; }

.margin-left-10 {
  margin-left: 10px; }

.margin-left-15 {
  margin-left: 15px; }

.margin-left-20 {
  margin-left: 20px; }

.margin-left-25 {
  margin-left: 25px; }

.margin-left-30 {
  margin-left: 30px; }

/*パディング*/
.padding-top-5 {
  padding-top: 5px; }

.padding-top-10 {
  padding-top: 10px; }

.padding-top-15 {
  padding-top: 15px; }

.padding-top-20 {
  padding-top: 20px; }

.padding-top-25 {
  padding-top: 25px; }

.padding-top-30 {
  padding-top: 30px; }

.padding-top-35 {
  padding-top: 35px; }

.padding-top-40 {
  padding-top: 40px; }

.padding-top-45 {
  padding-top: 45px; }

.padding-top-50 {
  padding-top: 50px; }

.padding-top-55 {
  padding-top: 55px; }

.padding-top-60 {
  padding-top: 60px; }

.padding-top-65 {
  padding-top: 65px; }

.padding-top-70 {
  padding-top: 70px; }

.padding-top-75 {
  padding-top: 75px; }

.padding-top-80 {
  padding-top: 80px; }

.padding-right-5 {
  padding-right: 5px; }

.padding-right-10 {
  padding-right: 10px; }

.padding-right-15 {
  padding-right: 15px; }

.padding-right-20 {
  padding-right: 20px; }

.padding-right-25 {
  padding-right: 25px; }

.padding-right-30 {
  padding-right: 30px; }

.padding-bottom-5 {
  padding-bottom: 5px; }

.padding-bottom-10 {
  padding-bottom: 10px; }

.padding-bottom-15 {
  padding-bottom: 15px; }

.padding-bottom-20 {
  padding-bottom: 20px; }

.padding-bottom-25 {
  padding-bottom: 25px; }

.padding-bottom-30 {
  padding-bottom: 30px; }

.padding-bottom-60 {
  padding-bottom: 60px; }

.padding-left-5 {
  padding-left: 5px; }

.padding-left-10 {
  padding-left: 10px; }

.padding-left-15 {
  padding-left: 15px; }

.padding-left-20 {
  padding-left: 20px; }

.padding-left-25 {
  padding-left: 25px; }

.padding-left-30 {
  padding-left: 30px; }

.padding-5 {
  padding: 5px; }

.padding-10 {
  padding: 10px; }

.padding-15 {
  padding: 15px; }

.padding-20 {
  padding: 20px; }

.padding-25 {
  padding: 25px; }

.padding-30 {
  padding: 30px; }

.t-align-left {
  text-align: left; }

.t-align-center {
  text-align: center; }

.t-align-right {
  text-align: right; }

.inline-block {
  display: inline-block; }

.visible-pc {
  display: none; }

@media screen and (max-width: 960px) {
  .hidden-sp {
    display: none !important; }

  .font-size-9-sp {
    font-size: 0.9rem; }

  .font-size-10-sp {
    font-size: 1.0rem; }

  .font-size-11-sp {
    font-size: 1.1rem; }

  .font-size-12-sp {
    font-size: 1.2rem; }

  .font-size-13-sp {
    font-size: 1.3rem; }

  .font-size-14-sp {
    font-size: 1.4rem; }

  .font-size-16-sp {
    font-size: 1.6rem; }

  .font-size-18-sp {
    font-size: 1.8rem; }

  .font-size-20-sp {
    font-size: 2.0rem; }

  .font-size-22-sp {
    font-size: 2.2rem; }

  .font-size-24-sp {
    font-size: 2.4rem; }

  .font-size-26-sp {
    font-size: 2.6rem; }

  .font-size-28-sp {
    font-size: 2.8rem; }

  .font-size-30-sp {
    font-size: 3.0rem; }

  .font-size-32-sp {
    font-size: 3.2rem; }

  .font-size-34-sp {
    font-size: 3.4rem; }

  .font-size-36-sp {
    font-size: 3.6rem; }

  .font-size-38-sp {
    font-size: 3.8rem; }

  .font-size-40-sp {
    font-size: 4.0rem; }

  /*マージン*/
  .margin-top-5-sp {
    margin-top: 5px; }

  .margin-top-10-sp {
    margin-top: 10px; }

  .margin-top-15-sp {
    margin-top: 15px; }

  .margin-top-20-sp {
    margin-top: 20px; }

  .margin-top-25-sp {
    margin-top: 25px; }

  .margin-top-30-sp {
    margin-top: 30px; }

  .margin-top-35-sp {
    margin-top: 35px; }

  .margin-top-40-sp {
    margin-top: 40px; }

  .margin-top-45-sp {
    margin-top: 45px; }

  .margin-top-50-sp {
    margin-top: 50px; }

  .margin-top-55-sp {
    margin-top: 55px; }

  .margin-top-60-sp {
    margin-top: 60px; }

  .margin-top-65-sp {
    margin-top: 65px; }

  .margin-top-70-sp {
    margin-top: 70px; }

  .margin-top-75-sp {
    margin-top: 75px; }

  .margin-top-80-sp {
    margin-top: 80px; }

  .t-align-left-sp {
    text-align: left; }

  .t-align-center-sp {
    text-align: center; }

  .t-align-right-sp {
    text-align: right; } }
@media print, screen and (min-width: 961px) {
  .hidden-tb {
    display: none !important; }

  .font-size-9-tb {
    font-size: 0.9rem; }

  .font-size-10-tb {
    font-size: 1.0rem; }

  .font-size-11-tb {
    font-size: 1.1rem; }

  .font-size-12-tb {
    font-size: 1.2rem; }

  .font-size-13-tb {
    font-size: 1.3rem; }

  .font-size-14-tb {
    font-size: 1.4rem; }

  .font-size-16-tb {
    font-size: 1.6rem; }

  .font-size-18-tb {
    font-size: 1.8rem; }

  .font-size-20-tb {
    font-size: 2.0rem; }

  .font-size-22-tb {
    font-size: 2.2rem; }

  .font-size-24-tb {
    font-size: 2.4rem; }

  .font-size-26-tb {
    font-size: 2.6rem; }

  .font-size-28-tb {
    font-size: 2.8rem; }

  .font-size-30-tb {
    font-size: 3.0rem; }

  .font-size-32-tb {
    font-size: 3.2rem; }

  .font-size-34-tb {
    font-size: 3.4rem; }

  .font-size-36-tb {
    font-size: 3.6rem; }

  .font-size-38-tb {
    font-size: 3.8rem; }

  .font-size-40-tb {
    font-size: 4.0rem; }

  /*マージン*/
  .margin-top-5-tb {
    margin-top: 5px; }

  .margin-top-10-tb {
    margin-top: 10px; }

  .margin-top-15-tb {
    margin-top: 15px; }

  .margin-top-20-tb {
    margin-top: 20px; }

  .margin-top-25-tb {
    margin-top: 25px; }

  .margin-top-30-tb {
    margin-top: 30px; }

  .margin-top-35-tb {
    margin-top: 35px; }

  .margin-top-40-tb {
    margin-top: 40px; }

  .margin-top-45-tb {
    margin-top: 45px; }

  .margin-top-50-tb {
    margin-top: 50px; }

  .margin-top-55-tb {
    margin-top: 55px; }

  .margin-top-60-tb {
    margin-top: 60px; }

  .margin-top-65-tb {
    margin-top: 65px; }

  .margin-top-70-tb {
    margin-top: 70px; }

  .margin-top-75-tb {
    margin-top: 75px; }

  .margin-top-80-tb {
    margin-top: 80px; } }
@media print, screen and (min-width: 1100px) {
  .hidden-pc {
    display: none !important; }

  .visible-pc {
    display: block !important; }

  .font-size-9-pc {
    font-size: 0.9rem; }

  .font-size-10-pc {
    font-size: 1.0rem; }

  .font-size-11-pc {
    font-size: 1.1rem; }

  .font-size-12-pc {
    font-size: 1.2rem; }

  .font-size-13-pc {
    font-size: 1.3rem; }

  .font-size-14-pc {
    font-size: 1.4rem; }

  .font-size-16-pc {
    font-size: 1.6rem; }

  .font-size-18-pc {
    font-size: 1.8rem; }

  .font-size-20-pc {
    font-size: 2.0rem; }

  .font-size-22-pc {
    font-size: 2.2rem; }

  .font-size-24-pc {
    font-size: 2.4rem; }

  .font-size-26-pc {
    font-size: 2.6rem; }

  .font-size-28-pc {
    font-size: 2.8rem; }

  .font-size-30-pc {
    font-size: 3.0rem; }

  .font-size-32-pc {
    font-size: 3.2rem; }

  .font-size-34-pc {
    font-size: 3.4rem; }

  .font-size-36-pc {
    font-size: 3.6rem; }

  .font-size-38-pc {
    font-size: 3.8rem; }

  .font-size-40-pc {
    font-size: 4.0rem; }

  /*マージン*/
  .margin-top-5-pc {
    margin-top: 5px; }

  .margin-top-10-pc {
    margin-top: 10px; }

  .margin-top-15-pc {
    margin-top: 15px; }

  .margin-top-20-pc {
    margin-top: 20px; }

  .margin-top-25-pc {
    margin-top: 25px; }

  .margin-top-30-pc {
    margin-top: 30px; }

  .margin-top-35-pc {
    margin-top: 35px; }

  .margin-top-40-pc {
    margin-top: 40px; }

  .margin-top-45-pc {
    margin-top: 45px; }

  .margin-top-50-pc {
    margin-top: 50px; }

  .margin-top-55-pc {
    margin-top: 55px; }

  .margin-top-60-pc {
    margin-top: 60px; }

  .margin-top-65-pc {
    margin-top: 65px; }

  .margin-top-70-pc {
    margin-top: 70px; }

  .margin-top-75-pc {
    margin-top: 75px; }

  .margin-top-80-pc {
    margin-top: 80px; }

  .t-align-left-pc {
    text-align: left; }

  .t-align-center-pc {
    text-align: center; }

  .t-align-right-pc {
    text-align: right; } }
