@charset "UTF-8";
/*
Theme Name: 　電気工事Bパターン v1
Description: 電気工事Bパターンのテーマ
Theme URI: https://plat-denki-b.com/
Author: 株式会社GRACE
Author URI: https://gr1.jp/
Version: 1.0
License: GPL
License URI: https://www.gnu.org/copyleft/gpl.html
*/

/* ==============================================
 Reset
=============================================== */

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}

html {
  font-size: 62.5%;
  /*10px*/
  overflow-y: scroll;
  margin: 0;
  width: 100%;
}

body {
  -webkit-text-size-adjust: 100%;
  overflow: hidden;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #202020;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #202020;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

ol li,
ul li {
  list-style: none;
  list-style-position: inside;
}

img {
  border: none;
  vertical-align: bottom;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/* Common
----------------------------------------------- */

.mt05 {
  margin-top: 5px;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt35 {
  margin-top: 35px;
}

.mt40 {
  margin-top: 40px;
}

.mt45 {
  margin-top: 45px;
}

.mt50 {
  margin-top: 50px;
}

.mt55 {
  margin-top: 55px;
}

.mt60 {
  margin-top: 60px;
}

.mt65 {
  margin-top: 65px;
}

.mt70 {
  margin-top: 70px;
}

.mt75 {
  margin-top: 75px;
}

.mt80 {
  margin-top: 80px;
}

.mt85 {
  margin-top: 85px;
}

.mt90 {
  margin-top: 90px;
}

.mt95 {
  margin-top: 95px;
}

.mt100 {
  margin-top: 100px;
}

.mb05 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb55 {
  margin-bottom: 55px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb65 {
  margin-bottom: 65px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb75 {
  margin-bottom: 75px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb85 {
  margin-bottom: 85px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb95 {
  margin-bottom: 95px;
}

.mb100 {
  margin-bottom: 100px;
}

.mr05 {
  margin-right: 5px;
}

.mr10 {
  margin-right: 10px;
}

.mr15 {
  margin-right: 15px;
}

.mr20 {
  margin-right: 20px;
}

.mr25 {
  margin-right: 25px;
}

.mr30 {
  margin-right: 30px;
}

.mr35 {
  margin-right: 35px;
}

.mr40 {
  margin-right: 40px;
}

.mr45 {
  margin-right: 45px;
}

.mr50 {
  margin-right: 50px;
}

.mr55 {
  margin-right: 55px;
}

.mr60 {
  margin-right: 60px;
}

.mr65 {
  margin-right: 65px;
}

.mr70 {
  margin-right: 70px;
}

.mr75 {
  margin-right: 75px;
}

.mr80 {
  margin-right: 80px;
}

.mr85 {
  margin-right: 85px;
}

.mr90 {
  margin-right: 90px;
}

.mr95 {
  margin-right: 95px;
}

.mr100 {
  margin-right: 100px;
}

.ml05 {
  margin-left: 5px;
}

.ml10 {
  margin-left: 10px;
}

.ml15 {
  margin-left: 15px;
}

.ml20 {
  margin-left: 20px;
}

.ml25 {
  margin-left: 25px;
}

.ml30 {
  margin-left: 30px;
}

.ml35 {
  margin-left: 35px;
}

.ml40 {
  margin-left: 40px;
}

.ml45 {
  margin-left: 45px;
}

.ml50 {
  margin-left: 50px;
}

.ml55 {
  margin-left: 55px;
}

.ml60 {
  margin-left: 60px;
}

.ml65 {
  margin-left: 65px;
}

.ml70 {
  margin-left: 70px;
}

.ml75 {
  margin-left: 75px;
}

.ml80 {
  margin-left: 80px;
}

.ml85 {
  margin-left: 85px;
}

.ml90 {
  margin-left: 90px;
}

.ml95 {
  margin-left: 95px;
}

.ml100 {
  margin-left: 100px;
}

.m_a {
  margin-right: auto;
  margin-left: auto;
}

.pt00 {
  padding-top: 0;
}

.pt05 {
  padding-top: 5px;
}

.pt10 {
  padding-top: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pt20 {
  padding-top: 20px;
}

.pt25 {
  padding-top: 25px;
}

.pt30 {
  padding-top: 30px;
}

.pt35 {
  padding-top: 35px;
}

.pt40 {
  padding-top: 40px;
}

.pt45 {
  padding-top: 45px;
}

.pt50 {
  padding-top: 50px;
}

.pt55 {
  padding-top: 55px;
}

.pt60 {
  padding-top: 60px;
}

.pt65 {
  padding-top: 65px;
}

.pt70 {
  padding-top: 70px;
}

.pt75 {
  padding-top: 75px;
}

.pt80 {
  padding-top: 80px;
}

.pt85 {
  padding-top: 85px;
}

.pt90 {
  padding-top: 90px;
}

.pt95 {
  padding-top: 95px;
}

.pt100 {
  padding-top: 100px;
}

.pb00 {
  padding-bottom: 0;
}

.pb05 {
  padding-bottom: 5px;
}

.pb10 {
  padding-bottom: 10px;
}

.pb15 {
  padding-bottom: 15px;
}

.pb20 {
  padding-bottom: 20px;
}

.pb25 {
  padding-bottom: 25px;
}

.pb30 {
  padding-bottom: 30px;
}

.pb35 {
  padding-bottom: 35px;
}

.pb40 {
  padding-bottom: 40px;
}

.pb45 {
  padding-bottom: 45px;
}

.pb50 {
  padding-bottom: 50px;
}

.pb55 {
  padding-bottom: 55px;
}

.pb60 {
  padding-bottom: 60px;
}

.pb65 {
  padding-bottom: 65px;
}

.pb70 {
  padding-bottom: 70px;
}

.pb75 {
  padding-bottom: 75px;
}

.pb80 {
  padding-bottom: 80px;
}

.pb85 {
  padding-bottom: 85px;
}

.pb90 {
  padding-bottom: 90px;
}

.pb95 {
  padding-bottom: 95px;
}

.pb100 {
  padding-bottom: 100px;
}

.pr05 {
  padding-right: 5px;
}

.pr10 {
  padding-right: 10px;
}

.pr15 {
  padding-right: 15px;
}

.pr20 {
  padding-right: 20px;
}

.pr25 {
  padding-right: 25px;
}

.pr30 {
  padding-right: 30px;
}

.pr35 {
  padding-right: 35px;
}

.pr40 {
  padding-right: 40px;
}

.pr45 {
  padding-right: 45px;
}

.pr50 {
  padding-right: 50px;
}

.pr55 {
  padding-right: 55px;
}

.pr60 {
  padding-right: 60px;
}

.pr65 {
  padding-right: 65px;
}

.pr70 {
  padding-right: 70px;
}

.pr75 {
  padding-right: 75px;
}

.pr80 {
  padding-right: 80px;
}

.pr85 {
  padding-right: 85px;
}

.pr90 {
  padding-right: 90px;
}

.pr95 {
  padding-right: 95px;
}

.pr100 {
  padding-right: 100px;
}

.pl05 {
  padding-left: 5px;
}

.pl10 {
  padding-left: 10px;
}

.pl15 {
  padding-left: 15px;
}

.pl20 {
  padding-left: 20px;
}

.pl25 {
  padding-left: 25px;
}

.pl30 {
  padding-left: 30px;
}

.pl35 {
  padding-left: 35px;
}

.pl40 {
  padding-left: 40px;
}

.pl45 {
  padding-left: 45px;
}

.pl50 {
  padding-left: 50px;
}

.pl55 {
  padding-left: 55px;
}

.pl60 {
  padding-left: 60px;
}

.pl65 {
  padding-left: 65px;
}

.pl70 {
  padding-left: 70px;
}

.pl75 {
  padding-left: 75px;
}

.pl80 {
  padding-left: 80px;
}

.pl85 {
  padding-left: 85px;
}

.pl90 {
  padding-left: 90px;
}

.pl95 {
  padding-left: 95px;
}

.pl100 {
  padding-left: 100px;
}

.fl_r {
  float: right;
}

.fl_l {
  float: left;
}

.fw_b {
  font-weight: bold;
}

.txt_c {
  text-align: center;
}

.txt_r {
  text-align: right;
}

.txt_l {
  text-align: left;
}

.w95per {
  width: 95%;
}

.w90per {
  width: 90%;
}

.w85per {
  width: 85%;
}

.w80per {
  width: 80%;
}

.w75per {
  width: 75%;
}

.w70per {
  width: 70%;
}

.w65per {
  width: 65%;
}

.w60per {
  width: 60%;
}

.w55per {
  width: 55%;
}

.w50per {
  width: 50%;
}

.tx_red {
  color: red;
}

body {
  font-family: 'Noto Sans JP', Avenir, "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #202020;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* 415〜768pxは10〜16pxで可変*/
@media screen and (min-width: 415px) {
  body {
    font-size: calc(10px + 6 * ((100vw - 415px) / 353));
    /* font-size: calc([最小値] + ([最大値] - [最小値]) * ((100vw - [最小画面幅]) / ([最大画面幅] - [最小画面幅]))); */
    /* 
    最初の10px…最小値として使うフォント
    次の数字の6…最大値の16pxから最小値の10pxを引いた数値（単位無し）
    100vw…ビューポート幅（画面枠が代入）
    最後の353…最大画面幅（768px）から最小画面幅（415px）を差し引いた数値
    */
    line-height: 1.8;
    letter-spacing: 1;
  }
}

/* 769〜1199pxは12〜16pxで可変*/
@media screen and (min-width: 769px) {
  body {
    font-size: calc(12px + 4 * ((100vw - 769px) / 430));
    /* font-size: calc([最小値] + ([最大値] - [最小値]) * ((100vw - [最小画面幅]) / ([最大画面幅] - [最小画面幅]))); */
    /* 
    最初の12px…最小値として使うフォント
    次の数字の4…最大値の16pxから最小値の12pxを引いた数値（単位無し）
    100vw…ビューポート幅（画面枠が代入）
    最後の430…最大画面幅（1199px）から最小画面幅（769px）を差し引いた数値
    */
    line-height: 2;
    letter-spacing: 2;
  }
}

/* 1200px以上は16px*/
@media screen and (min-width: 1200px) {
  body {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 2;
  }
}

/* 414px以下は13px*/
@media screen and (max-width: 414px) {
  body {
    font-size: 1.3rem;
    line-height: 1.6;
  }
}

.serif {
  font-family: 'Noto Serif JP', "Roboto Slab", Garamond, "Times New Roman", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.roboto {
  font-family: 'Roboto', sans-serif;
}

.round {
  font-family: 'M PLUS Rounded 1c', sans-serif;
}

a {
  color: #202020;
  text-decoration: none;
}

a:hover {
  color: #202020;
  opacity: 0.6;
  -webkit-transition: all .5s;
  transition: all .5s;
}

a:hover img {
  opacity: 0.8;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.cf:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

img {
  max-width: 100%;
  height: auto;
}

.img {
  text-align: center;
}

.inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

@media only screen and (max-width: 1199px) {
  .inner {
    max-width: initial;
    width: 100%;
  }
}

.flex {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}

.bg-lazy {
  background-image: none !important;
}

@media only screen and (min-width: 769px) {

  .tb,
  .sp {
    display: none !important;
  }

}

@media only screen and (max-width: 768px) {

  .pc,
  .sp {
    display: none;
  }

  .flex {
    flex-wrap: wrap;
  }

}

@media only screen and (max-width: 414px) {

  .pc-tb {
    display: none !important;
  }

  .sp {
    display: block !important;
  }

}

/* Section
----------------------------------------------- */

section,
.section {
  padding: 80px 0;
}

@media only screen and (max-width: 768px) {

  section,
  .section {
    padding: 60px 0;
  }

}

@media only screen and (max-width: 414px) {

  section,
  .section {
    padding: 40px 0;
  }

}

/* ---------------------------------
	ハンバーガーメニュー
---------------------------------- */

.drawer--right .drawer-hamburger {
  position: fixed;
  top: 10px;
  width: 60px;
  background-image: url(./images/hamburger_menu.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  visibility: hidden;
  opacity: 0;
  transition: all .3s;
}

.drawer--right.drawer-open .drawer-hamburger {
  right: 40rem;
  background-image: url(./images/hamburger_close.png);
}

.drawer--right .drawer-hamburger.show {
  visibility: visible;
  opacity: 1
}

.drawer-nav {
  padding: 3rem 4rem;
}

.drawer--right.drawer-open .drawer-nav {
  overflow: auto;
}

.drawer-nav .nav-list li {
  text-align: center;
  border-bottom: 2px solid #202020;
}

.drawer-nav .nav-list li a {
  display: block;
  padding: 15px;
  font-size: 16px;
  font-weight: bold;
  position: relative;
}

.drawer-nav .nav-list li a::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #202020;
  border-right: 2px solid #202020;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.drawer-nav .nav-contact {
  margin-top: 4rem;
}

.drawer-nav .nav-contact .btn {
  display: block;
  text-align: center;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  box-shadow:
    4px 4px 0px 0px rgba(255, 255, 255, 1),
    5px 5px 10px 5px rgba(0, 0, 0, 0.1);
  padding: 15px;
  background: #ccc;
}

.drawer-nav .nav-contact .btn,
.drawer-nav .nav-contact .btn:hover {
  color: #fff;
}

.drawer-nav .nav-contact .btn span {
  display: block;
  line-height: 1.4;
}

.drawer-nav .nav-contact .tel {
  margin-bottom: 3rem;
}

.drawer-nav .nav-contact .tel .btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#d70306+0,ae0307+100 */
  background: #d70306;
  /* Old browsers */
  background: -moz-linear-gradient(top, #d70306 0%, #ae0307 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #d70306 0%, #ae0307 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #d70306 0%, #ae0307 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d70306', endColorstr='#ae0307', GradientType=0);
  /* IE6-9 */
}

.drawer-nav .nav-contact .tel .btn .txt {
  font-size: 24px;
  font-weight: bold;
}

.drawer-nav .nav-contact .mail {
  margin-bottom: 3rem;
}

.drawer-nav .nav-contact .mail .btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e39719+0,c2511c+100 */
  background: #e39719;
  /* Old browsers */
  background: -moz-linear-gradient(top, #e39719 0%, #c2511c 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #e39719 0%, #c2511c 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #e39719 0%, #c2511c 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e39719', endColorstr='#c2511c', GradientType=0);
  /* IE6-9 */
  position: relative;
}

.drawer-nav .nav-contact .mail .btn p {
  position: relative;
  z-index: 1;
}

.drawer-nav .nav-contact .mail .btn .txt01 {
  font-size: 16px;
  font-weight: bold;
}

.drawer-nav .nav-contact .credit_menu {
  border: 10px solid #ffe402;
}

.drawer-nav .nav-contact p:nth-child(3) {
  margin-bottom: 3rem;
}


@media only screen and (max-width: 768px) {

  .drawer--right .drawer-hamburger {
    top: 1%;
    width: 8%;
    visibility: visible;
    opacity: 1;
    text-align: right;
  }

}

@media only screen and (max-width: 600px) {

  .drawer--right.drawer-open .drawer-hamburger {
    right: 27rem
  }

  .drawer-nav {
    padding: 2rem;
  }

  .drawer-nav .nav-list li a {
    padding: 12px;
    font-size: 14px;
  }

  .drawer-nav .nav-list li a::after {
    margin-top: -2px;
    width: 4px;
    height: 4px;
  }

  .drawer-nav .nav-contact {
    margin-top: 3rem;
  }

  .drawer-nav .nav-contact .tel {
    margin-bottom: 2rem;
  }

  .drawer-nav .nav-contact .btn {
    box-shadow:
      3px 3px 0px 0px rgba(255, 255, 255, 1),
      2px 5px 2px rgba(0, 0, 0, 0.1);
    padding: 15px 10px;
  }

  .drawer-nav .nav-contact .tel .btn .txt {
    font-size: 18px;
  }

  .drawer-nav .nav-contact .tel .btn .time {
    font-size: 12px;
  }

  .drawer-nav .nav-contact .mail .btn .txt01,
  .drawer-nav .nav-contact .mail .btn .txt02 {
    font-size: 12px;
  }

}


@media only screen and (max-width: 480px) {

  .drawer--right .drawer-hamburger {
    width: 10%;
  }

}

/* ==============================================
 ヘッダー
=============================================== */

header {
  background: #2ca79a;
  padding: 20px 0;
  color: #fff;
  height: 80px;
}

header a,
header a:hover {
  color: #fff;
}

header h1,
header .pc-nav {
  display: inline-block;
  vertical-align: middle;
}

header h1 {
  font-size: 26px;
  font-weight: bold;
  margin-right: 20px;
  line-height: 1;
}

header .pc-nav .nav-list li {
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
  line-height: 1;
  margin-left: 20px;
}

header .nav-list .dropdown_list {
  visibility: hidden;
  opacity: 0;
  transition: all .2s;
  position: absolute;
  top: 80px;
  left: 0;
  width: 100%;
  background: #daf2f0;
  z-index: 5;
}

header .nav-list .dropdown_list .arrow {
  position: absolute;
  top: -20px;
  left: 45%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

header .nav-list .dropdown_list .inner {
  padding: 20px 10px 20px 100px;
}

header .nav-list .dropdown_list.open {
  visibility: visible;
  opacity: 1;
}

header .nav-list .dropdown_list a,
header .nav-list .dropdown_list a:hover {
  color: #2ca79a;
}

header .nav-list .dropdown_list ul {
  display: inline-block;
  vertical-align: top;
  margin-left: 40px;
  column-count: 4;
}

header .nav-list .dropdown_list ul li {
  line-height: 1.4;
  margin-bottom: 10px;
  display: block;
}

header .nav-list .dropdown_list ul li:last-child {
  margin-bottom: 0;
}

header .nav-list .dropdown_list ul li a {
  display: block;
  font-size: 16px;
}

@media only screen and (max-width: 1200px) {

  header h1 {
    font-size: 2vw;
    margin-right: 2%;
  }

  header .pc-nav .nav-list li {
    font-size: 1.4vw;
    margin-left: 15px;
  }

  header .nav-list .dropdown_list ul {
    margin-left: 20px;
  }

  header .nav-list .dropdown_list ul li a {
    font-size: 1.3vw;
  }

}

@media only screen and (max-width: 768px) {


  header {
    background: #fff;
    color: #202020;
    height: auto;
    display: flex;
    align-items: center;
    padding: 3% 0;
  }

  header a,
  header a:hover {
    color: #202020;
  }

  header .pc-nav {
    display: none;
  }

  header h1 {
    font-size: 4vw;
    margin-right: 0;
  }

}

@media only screen and (max-width: 480px) {

  header {
    padding: 4% 0;
  }

  header h1 {
    font-size: 5vw;
  }
}

/* ==============================================
 MV
=============================================== */

#mv {
  background-image: url(./images/mv_bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: 100% auto;
  background-size: 100% auto
}

#mv .inner {
  max-width: 60%;
  padding: 2% 0 1%;
  position: relative;
}

#mv .img img {
  width: 100%;
}

#mv .inner .area_mv {
  position: absolute;
  top: 2%;
  left: 1%;
  font-size: 2.4vw;
  font-weight: bold;
}

@media only screen and (max-width: 1920px) {

  #mv {
    -moz-background-size: 1920px auto;
    background-size: 1920px auto;
  }

  #mv .inner {
    max-width: 1240px;
    padding: 15px 0 25px;
    position: relative;
  }

  #mv .img img {
    width: auto;
  }

  #mv .inner .area_mv {
    top: 15px;
    left: 30px;
    font-size: 36px;
  }

}

@media only screen and (max-width: 1200px) {

  #mv {
    -moz-background-size: auto 100%;
    background-size: auto 100%;
  }

  #mv .inner {
    padding: 1% 20px 2.5%;
  }

  #mv .inner .area_mv {
    top: 1%;
    left: 3%;
    font-size: 3vw;
  }

}

@media only screen and (max-width: 768px) {

  #mv {
    background: none;
  }

  #mv .inner {
    padding: 0;
  }

  #mv .inner .area_mv {
    top: 2%;
    left: 5%;
    font-size: 5vw;
  }
}

/* ==============================================
 トップページ
=============================================== */


/* #area
----------------------------------------------- */

#toppage #area {
  background-image: url(./images/top_area_bg01.jpg);
  background-position: 80% center;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#toppage #area .time {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.4;
  text-align: center;
}

#toppage #area .time span {
  font-weight: bold;
}

#toppage #area .time .yellow {
  color: #ffe400;
}

#toppage #area .time .yellow .fs_b {
  font-size: 40px;
}

#toppage #area .white {
  margin: 40px auto 0;
  width: 85%;
  padding: 40px;
  background: #fff;
  position: relative;
}

#toppage #area .white h3 {
  background: #af0106;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1;
  position: absolute;
  padding: 5px 30px;
  top: -18px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#toppage #area .white .other {
  font-size: 20px;
  font-weight: bold;
  font-style: oblique;
}

@media only screen and (max-width: 768px) {

  #toppage #area {
    background-image: url(./images/top_area_bg01_sp.jpg);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: cover;
    background-size: cover;
  }

}

@media only screen and (max-width: 600px) {

  #toppage #area .time {
    font-size: 4.2vw;
  }

  #toppage #area .time .yellow .fs_b {
    font-size: 7vw;
  }

  #toppage #area .white {
    width: 100%;
    margin: 6% auto 0;
    padding: 6%;
  }

  #toppage #area .white h3 {
    font-size: 4.2vw;
    padding: 1% 6%;
    top: -8%;
  }

  #toppage #area .white .other {
    font-size: 16px;
  }

}

@media only screen and (max-width: 414px) {

  #toppage #area .time {
    font-size: 18px;
  }

  #toppage #area .time .yellow .fs_b {
    font-size: 28px;
  }

  #toppage #area .white {
    width: 100%;
  }

  #toppage #area .white h3 {
    font-size: 18px;
  }

  #toppage #area .white .other {
    font-size: 16px;
  }
}

/* #service_slider
----------------------------------------------- */

#toppage #service_slider .service_slider_items li {
  padding: 0 10px;
  margin: 10px 0;
}

#toppage #service_slider .service_slider_items li .box {
  background: #fff;
  -moz-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  padding: 30px 10px;
}

#toppage #service_slider .service_slider_items li .box p {
  line-height: 1.4;
}

#toppage #service_slider .service_slider_items li .box .img {
  margin-bottom: 15px;
}

#toppage #service_slider .service_slider_items li .box .menu_title {
  font-size: 24px;
  font-weight: bold;
}

#toppage #service_slider .service_slider_items li .box .price {
  font-size: 24px;
  font-weight: bold;
  color: #ff0000;
  margin-bottom: 10px;
}

#toppage #service_slider .service_slider_items li .box .txt {
  font-size: 20px;
}

#toppage #service_slider .slick-prev:before {
  content: "";
  display: block;
  width: 23px;
  height: 27px;
  aspect-ratio: 23 / 27;
  background-image: url(./images/top_service_slider_prev.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
}

#toppage #service_slider .slick-next:before {
  content: "";
  display: block;
  width: 23px;
  height: 27px;
  aspect-ratio: 23 / 27;
  background-image: url(./images/top_service_slider_next.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
}

#toppage #service_slider .slick-dots {
  bottom: -70px;
}

#toppage #service_slider .slick-dots li,
#toppage #service_slider .slick-dots li button {
  width: 30px;
  height: 30px;
}

#toppage #service_slider .slick-dots li button:before {
  content: "";
  width: 20px;
  height: 20px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  background: #fff;
  border: 3px solid #787878;
  opacity: 1;
}

#toppage #service_slider .slick-dots li.slick-active button:before {
  background: #787878;
}

@media only screen and (max-width: 1200px) {

  #toppage #service_slider .service_slider_items {
    width: 90%;
    margin: 0 auto;
  }

  #toppage #service_slider .service_slider_items li .box {
    padding: 10% 5%;
  }

  #toppage #service_slider .service_slider_items li .box .img {
    margin-bottom: 5%;
  }

  #toppage #service_slider .service_slider_items li .box .menu_title {
    font-size: 2vw;
  }

  #toppage #service_slider .service_slider_items li .box .price {
    font-size: 2vw;
    margin-bottom: 3%;
  }

  #toppage #service_slider .service_slider_items li .box .txt {
    font-size: 1.6vw;
  }

  #toppage #service_slider .slick-dots {
    bottom: -50px;
  }

  #toppage #service_slider .slick-dots li,
  #toppage #service_slider .slick-dots li button {
    width: 25px;
    height: 25px;
  }

  #toppage #service_slider .slick-dots li button:before {
    width: 15px;
    height: 15px;
  }
}

@media only screen and (max-width: 768px) {

  #toppage #service_slider .service_slider_items {
    width: 96%;
  }

  #toppage #service_slider .service_slider_items li .box .menu_title {
    font-size: 20px;
  }

  #toppage #service_slider .service_slider_items li .box .price {
    font-size: 20px;
  }

  #toppage #service_slider .service_slider_items li .box .txt {
    font-size: 16px;
  }

  #toppage #service_slider .slick-prev:before,
  #toppage #service_slider .slick-next:before {
    width: 15px;
    height: 18px;
  }

}

@media only screen and (max-width: 500px) {

  #toppage #service_slider .service_slider_items li .box .menu_title {
    font-size: 16px;
  }

  #toppage #service_slider .service_slider_items li .box .price {
    font-size: 16px;
  }

  #toppage #service_slider .service_slider_items li .box .txt {
    font-size: 14px;
  }

  #toppage #service_slider .slick-dots {
    bottom: -40px;
  }

  #toppage #service_slider .slick-dots li,
  #toppage #service_slider .slick-dots li button {
    width: 20px;
    height: 20px;
  }

  #toppage #service_slider .slick-dots li button:before {
    width: 10px;
    height: 10px;
    border: 2px solid #787878;
  }
}

@media only screen and (max-width: 375px) {

  #toppage #service_slider .service_slider_items {
    width: 98%;
  }

  #toppage #service_slider .service_slider_items li {
    padding: 0 10px 0 5px;
  }

  #toppage #service_slider .service_slider_items li .box .menu_title {
    font-size: 14px;
  }

  #toppage #service_slider .service_slider_items li .box .price {
    font-size: 14px;
  }

  #toppage #service_slider .service_slider_items li .box .txt {
    font-size: 12px;
  }

}

/* .cta_section
----------------------------------------------- */

.cta_section {
  background: url(./images/cta_section_bg01.jpg);
  padding: 0;
}

.cta_section .inner {
  position: relative;
}

.cta_section .inner::after {
  content: "";
  width: 455px;
  height: 667px;
  aspect-ratio: 455 / 667;
  background-image: url(./images/cta_section_img01.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: -150px;
}

.cta_section .inner .contents {
  position: relative;
  z-index: 1;
  text-align: center;
  padding-top: 50px;
  padding-bottom: 50px;
}

.cta_section .inner .contents .catch01,
.cta_section .inner .contents .catch02 {
  margin-bottom: 20px;
}

.cta_section .inner .contents picture img {
  padding-top: 3%;
  padding-bottom: 3%;
}

.cta_section .inner .contents picture source {
  padding-top: 3%;
}

.cta_section .inner .contents .contact_block {
  margin-top: 40px;
}

.cta_section .inner .contents .contact_block .item {
  width: 50%;
  padding: 0 5px;
}

.cta_section .inner .contents .contact_block .item a {
  display: block;
  padding: 0 20px;
  height: 120px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  border: 4px solid #fff;
  -moz-box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
}

.cta_section .inner .contents .contact_block .item a,
.cta_section .inner .contents .contact_block .item a:hover {
  color: #fff;
}

.cta_section .inner .contents .contact_block .item a span {
  display: block;
  line-height: 1;
}

.cta_section .inner .contents .contact_block .item a .tb {
  display: none;
}

.cta_section .inner .contents .contact_block .tel a {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#d70306+0,ae0307+100 */
  background: #d70306;
  /* Old browsers */
  background: -moz-linear-gradient(top, #d70306 0%, #ae0307 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #d70306 0%, #ae0307 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #d70306 0%, #ae0307 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d70306', endColorstr='#ae0307', GradientType=0);
  /* IE6-9 */
  padding-top: 5px;
}

.cta_section .inner .contents .contact_block .tel a .num {
  font-size: 60px;
  font-weight: bold;
  line-height: 1.2;
}

.cta_section .inner .contents .contact_block .tel a .time {
  font-size: 18px;
}

.cta_section .inner .contents .contact_block .mail a {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e39719+0,c2511c+100 */
  background: #e39719;
  /* Old browsers */
  background: -moz-linear-gradient(top, #e39719 0%, #c2511c 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #e39719 0%, #c2511c 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #e39719 0%, #c2511c 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e39719', endColorstr='#c2511c', GradientType=0);
  /* IE6-9 */
  position: relative;
  padding-top: 30px;
}

.cta_section .inner .contents .contact_block .mail a .txt01 {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 10px;
  position: relative;
  z-index: 1;
}

.cta_section .inner .contents .contact_block .mail a .txt02 {
  font-size: 18px;
  position: relative;
  z-index: 1;
}

.cta_section .contact_credit,
.cta_section .contact_paylater {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 10px solid #ffe402;
  background-color: #fff;
  padding: 0.8% 0;
  margin-top: 3%;
}

.cta_section .inner .contents .contact_credit picture {
  width: 61.5%;
}

.cta_section .contact_credit p {
  font-size: 24px;
  font-family: ヒラギノ角ゴシック;
  font-weight: 700;
  margin-right: 3%;
}

/* .cta_section .contact_paylater>p:first-child{
  font-size: 24px;
  font-family: ヒラギノ角ゴシック;
  font-weight: 700;
  margin-right: 2%;
  text-align: start;
}

.cta_section .contact_paylater div{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 73%;
}

.cta_section .contact_paylater div a{
  border-radius: 3px;
  box-shadow: 0px 10px 8px 0px rgba(0, 0, 0, 0.2);
  margin-left: 2.5%;
}

.cta_section .contact_paylater div a:hover{
  transform:translateY(3%);
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
} */


@media only screen and (max-width: 1200px) {

  .cta_section .inner::after {
    right: -13%;
    height: 0;
    padding: 0 0 54%;
  }

  .cta_section .inner .contents {
    height: auto;
    padding: 5% 0;
  }

  .cta_section .inner .contents .catch01 img,
  .cta_section .inner .contents .catch02 img {
    width: 60%;
  }

  .cta_section .inner .contents .contact_block .item a {
    padding: 3% 4%;
    height: auto;
  }

  .cta_section .inner .contents .contact_block .tel a {
    padding-top: 1%;
  }

  .cta_section .inner .contents .contact_block .tel a .num {
    font-size: 5vw;
  }

  .cta_section .inner .contents .contact_block .tel a .time {
    font-size: 1.6vw;
  }

  .cta_section .inner .contents .contact_block .mail a {
    padding-top: 5%;
  }

  .cta_section .inner .contents .contact_block .mail a .txt01 {
    font-size: 2.6vw;
  }

  .cta_section .inner .contents .contact_block .mail a .txt02 {
    font-size: 1.6vw;
  }

  .cta_section .contact_credit p {
    font-size: 2vw;
  }

  /* .cta_section .contact_paylater p:first-child{
    font-size: 2vw;
  } */
}

@media only screen and (max-width: 1080px) {

  .cta_section .inner .contents .catch01 img,
  .cta_section .inner .contents .catch02 img {
    margin-right: 12%;
  }

  .cta_section .inner .contents .contact_block .mail a {
    padding: 5% 4%;
  }

  .cta_section .inner .contents .contact_block .mail a .txt01 {
    font-size: 2.2vw;
  }

}

@media only screen and (max-width: 768px) {

  .cta_section .inner::after {
    content: none;
  }

  .cta_section .inner .contents .catch01 img {
    width: 90%;
    margin-right: auto;
  }

  .cta_section .inner .contents .catch02 {
    text-align: left;
    position: relative;
    margin: 8% 0;
  }

  .cta_section .inner .contents .catch02 img {
    width: 73%;
    margin-right: auto;
  }

  .cta_section .inner .contents .catch02::before {
    content: "";
    width: 27%;
    height: 0;
    padding: 0 0 68%;
    aspect-ratio: 189 / 277;
    background-image: url(./images/cta_section_img01_sp.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }

  .cta_section .inner .contents .contact_block .item {
    width: 100%;
    padding: 0 0 10px;
  }

  .cta_section .inner .contents .contact_block {
    position: relative;
    z-index: 1;
    margin-top: -5%;
  }

  .cta_section .inner .contents .contact_block .item a:hover {
    opacity: 0.9;
  }

  .cta_section .inner .contents .contact_block .item a .pc {
    display: none;
  }

  .cta_section .inner .contents .contact_block .item a .tb {
    display: block;
  }

  .cta_section .inner .contents .contact_block .item a {
    padding: 3% 4%;
  }

  .cta_section .inner .contents .contact_block .tel a {
    position: relative;
    padding-top: 3%;
  }

  .cta_section .inner .contents .contact_block .tel a:after {
    content: "";
    width: 6%;
    height: 0;
    padding: 0 0 65%;
    aspect-ratio: 43 / 66;
    background-image: url(./images/cta_section_icon01.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 12%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }

  .cta_section .inner .contents .contact_block .tel a .time {
    font-size: 2.6vw;
  }

  .cta_section .inner .contents .contact_block .mail a .txt01 {
    font-size: 4.2vw;
  }

  .cta_section .inner .contents .contact_block .mail a .txt02 {
    font-size: 2.6vw;
  }

  /* .cta_section .contact_credit, .cta_section .contact_paylater{
    padding: 0;
  } */

  .cta_section .contact_credit {
    flex-direction: column;
  }

  .cta_section .inner .contents .contact_credit picture {
    width: 100%;
    margin-bottom: 5%;
  }

  .cta_section .contact_credit p:first-child,
  .cta_section .contact_paylater>p:first-child {
    font-size: 4.37956204379562vw;
    line-height: 1;
    margin: 5% 0;
    text-align: center;
  }

  /* .cta_section .contact_paylater{
    margin: 0 auto;
    flex-direction: column;
    border: #ffe402 solid 1.5%;
  } */

  .cta_section .inner .contents picture img {
    padding: 0;
  }

  .cta_section .inner .contents picture source {
    width: 100%;
  }

  /* .cta_section .inner .contents .contact_paylater div p{
    margin-bottom: 3%;
    margin-left: 8%;
  }

  .cta_section .contact_paylater div{
    display: flex;
    width: 100%;
  }

  .cta_section .contact_paylater div a{
    box-shadow: none;
    margin-left:8%;
    margin-bottom:-1%;
  } */


}

@media only screen and (max-width: 480px) {

  .cta_section .inner .contents .contact_block .item a {
    border: 3px solid #fff;
    -moz-box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
  }

  .cta_section .inner .contents .contact_block .tel a .num {
    font-size: 6vw;
    margin-bottom: 1%;
  }

  .cta_section .inner .contents .contact_block .tel a:after {
    right: 8%;
  }

  .cta_section .inner .contents .contact_block .tel a .time {
    font-size: 14px;
  }

  .cta_section .inner .contents .contact_block .mail a .txt01 {
    font-size: 4.2vw;
  }

  .cta_section .inner .contents .contact_block .mail a .txt02 {
    font-size: 14px;
  }

}

/* #trouble
----------------------------------------------- */

#toppage #trouble {
  padding: 0;
}

#toppage #trouble .main {
  background:
    url(./images/top_trouble_bg01.jpg);
  padding: 100px 0 20px;
}

#toppage #trouble .main h2 {
  text-align: center;
  margin-bottom: 80px;
}

#toppage #trouble .main h2 span {
  display: inline-block;
  position: relative;
  z-index: 1;
}

#toppage #trouble .main h2 span::after {
  content: "";
  width: 228px;
  height: 325px;
  background-image: url(./images/top_trouble_img01.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  aspect-ratio: 228 / 325;
  position: absolute;
  z-index: -1;
  top: 50%;
  right: -190px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#toppage #trouble .example {
  flex-wrap: wrap;
}

#toppage #trouble .example li {
  width: 370px;
  margin-bottom: 60px;
  text-align: center;
}

#toppage #trouble .example li h3 {
  background: #007d67;
  color: #fff;
  font-size: 30px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1;
  padding: 8px 10px 12px;
}

#toppage #trouble .example li .img {
  margin-bottom: 10px;
}

#toppage #trouble .example li .txt {
  color: #fff;
  font-size: 26px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.4;
}

#toppage #trouble .arrow img {
  width: 100%;
}

@media only screen and (max-width: 1200px) {

  #toppage #trouble .main {
    padding: 8% 0 2%;
  }

  #toppage #trouble .main h2 {
    margin-bottom: 7%;
  }

  #toppage #trouble .main h2 span {
    width: 48%;
  }

  #toppage #trouble .main h2 span::after {
    width: 40%;
    height: 0;
    padding: 0 0 56%;
    right: -33%
  }

  #toppage #trouble .example li {
    width: 31%;
    margin-bottom: 5%;
  }

  #toppage #trouble .example li h3 {
    font-size: 2.4vw;
  }

  #toppage #trouble .example li .txt {
    font-size: 2.1vw;
  }

}

@media only screen and (max-width: 768px) {

  #toppage #trouble .main h2 {
    margin-bottom: 0;
    padding: 3% 0 7%;
    background-image: url(./images/top_trouble_img01_sp.png);
    background-position: right bottom;
    background-repeat: no-repeat;
    -moz-background-size: 25% auto;
    background-size: 25% auto;
  }

  #toppage #trouble .main h2 span {
    width: 65%;
  }

  #toppage #trouble .main h2 span::after {
    content: none;
  }

  #toppage #trouble .example {
    position: relative;
    z-index: 1;
  }

  #toppage #trouble .example li {
    width: 48%;
  }

  #toppage #trouble .example li h3 {
    font-size: 3.4vw;
    padding: 3% 2%;
  }

  #toppage #trouble .example li .txt {
    font-size: 2.6vw;
  }

  #toppage #trouble .arrow {
    margin-top: -25%;
  }
}

@media only screen and (max-width: 500px) {

  #toppage #trouble .example li .txt {
    font-size: 3.3vw;
  }

}

/* @media only screen and (max-width: 414px){

  #toppage #trouble .example li .txt {
    font-size: 3vw;
  }

} */


/* #solution
----------------------------------------------- */

#toppage #solution h2 {
  text-align: center;
  line-height: 1.4;
  font-size: 62px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 60px;
}

#toppage #solution .boxes .box {
  margin-bottom: 40px;
}

#toppage #solution .boxes .box:last-child {
  margin-bottom: 0;
}

#toppage #solution .boxes .box .img {
  width: 44%;
}

#toppage #solution .boxes .box .right {
  width: 54%;
  padding-top: 45px;
}

#toppage #solution .boxes .box .right h3 {
  color: #007d67;
  font-size: 42px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.4;
  margin-bottom: 20px;
}

#toppage #solution .boxes .box .right .txt {
  font-size: 30px;
}

@media only screen and (max-width: 1200px) {

  #toppage #solution h2 {
    font-size: 5.2vw;
    margin-bottom: 5%;
  }

  #toppage #solution .boxes .box {
    margin-bottom: 4%;
  }

  #toppage #solution .boxes .box .right {
    padding-top: 5%;
  }

  #toppage #solution .boxes .box .right h3 {
    font-size: 3.5vw;
    margin-bottom: 3%;
  }

  #toppage #solution .boxes .box .right .txt {
    font-size: 2.4vw;
  }

}

@media only screen and (max-width: 768px) {

  #toppage #solution h2 {
    font-size: 7vw;
  }

  #toppage #solution .boxes .box {
    margin-bottom: 5%;
  }

  #toppage #solution .boxes .box .item {
    width: 100%;
  }

  #toppage #solution .boxes .box .right h3 {
    text-align: center;
    font-size: 6vw;
  }

  #toppage #solution .boxes .box .right .txt {
    font-size: 4vw;
  }

}

/* .quote_free
----------------------------------------------- */

.quote_free {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#3fbeb1+0,22ab9d+100 */
  background: #3fbeb1;
  /* Old browsers */
  background: -moz-radial-gradient(center, ellipse cover, #3fbeb1 0%, #22ab9d 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover, #3fbeb1 0%, #22ab9d 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center, #3fbeb1 0%, #22ab9d 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#3fbeb1', endColorstr='#22ab9d', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  margin-top: 250px;
}

.quote_free h2 {
  background-image: url(./images/top_quote_free_h2.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: 100% auto;
  background-size: 100% auto;
  aspect-ratio: 1183 / 406;
  width: 100%;
  height: 406px;
  position: relative;
  margin-top: -300px;
  margin: -300px 0 60px;
}

.quote_free h2 span {
  font-size: 78px;
  font-weight: bold;
  font-style: oblique;
  color: #fff;
  line-height: 1.2;
  position: absolute;
  right: 6%;
  top: 36%;
}

.quote_free ul li {
  width: 32%;
}

.quote_free ul li img {
  -moz-box-shadow: 5px 8px 4px 2px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 5px 8px 4px 2px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 5px 8px 4px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 8px 4px 2px rgba(0, 0, 0, 0.2);
}

.quote_free .notice {
  margin-top: 40px;
  text-align: center;
  font-size: 24px;
  color: #fff;
}

@media only screen and (max-width: 1200px) {

  .quote_free {
    margin-top: 21%;
    padding: 7% 0;
  }

  .quote_free h2 {
    margin: -27% 0 6%;
    height: 0;
    padding: 0 0 34%;
  }

  .quote_free h2 span {
    font-size: 6.4vw;
  }

  .quote_free .notice {
    margin-top: 4%;
    font-size: 2vw;
  }

}

@media only screen and (max-width: 768px) {

  .quote_free h2 {
    background-image: url(./images/top_quote_free_h2_sp.png);
    padding: 0 0 41%;
  }

  .quote_free h2 span {
    font-size: 6vw;
    right: 4%;
  }

  .quote_free .notice {
    margin-top: 5%;
    font-size: 3vw;
  }
}

@media only screen and (max-width: 500px) {

  .quote_free .notice {
    font-size: 3.3vw;
  }
}

/* #eligible
----------------------------------------------- */

#toppage #eligible {
  padding: 0;
}

#toppage #eligible .upper h2 {
  text-align: center;
  line-height: 1.4;
  font-size: 62px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 60px;
}

#toppage #eligible .upper .flex {
  align-items: center;
}

#toppage #eligible .upper .flex .item {
  width: 48%;
}

#toppage #eligible .upper .flex .txt {
  font-size: 28px;
  font-weight: bold;
  font-style: oblique;
}

#toppage #eligible .lower {
  background-image: url(./images/top_eligible_bg01.jpg);
  background-position: center bottom;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#toppage #eligible .lower h3 {
  text-align: center;
  font-size: 90px;
  font-weight: 900;
  color: #3fbeb1;
  font-style: oblique;
  line-height: 1.2;
  letter-spacing: 0;
  margin-bottom: 90px;
  text-shadow:
    8px 8px 2px #fff, -8px -8px 2px #fff,
    -8px 8px 2px #fff, 8px -8px 2px #fff,
    8px 0px 2px #fff, -8px -0px 2px #fff,
    0px 8px 2px #fff, 0px -8px 2px #fff,

    7px 7px 2px #fff, -7px -7px 2px #fff,
    -7px 7px 2px #fff, 7px -7px 2px #fff,
    7px 0px 2px #fff, -7px -0px 2px #fff,
    0px 7px 2px #fff, 0px -7px 2px #fff,

    6px 6px 2px #fff, -6px -6px 2px #fff,
    -6px 6px 2px #fff, 6px -6px 2px #fff,
    6px 0px 2px #fff, -6px -0px 2px #fff,
    0px 6px 2px #fff, 0px -6px 2px #fff,

    5px 5px 2px #fff, -5px -5px 2px #fff,
    -5px 5px 2px #fff, 5px -5px 2px #fff,
    5px 0px 2px #fff, -5px -0px 2px #fff,
    0px 5px 2px #fff, 0px -5px 2px #fff,

    4px 4px 2px #fff, -4px -4px 2px #fff,
    -4px 4px 2px #fff, 4px -4px 2px #fff,
    4px 0px 2px #fff, -4px -0px 2px #fff,
    0px 4px 2px #fff, 0px -4px 2px #fff,

    3px 3px 2px #fff, -3px -3px 2px #fff,
    -3px 3px 2px #fff, 3px -3px 2px #fff,
    3px 0px 2px #fff, -3px -0px 2px #fff,
    0px 3px 2px #fff, 0px -3px 2px #fff,

    2px 2px 2px #fff, -2px -2px 2px #fff,
    -2px 2px 2px #fff, 2px -2px 2px #fff,
    2px 0px 2px #fff, -2px -0px 2px #fff,
    0px 2px 2px #fff, 0px -2px 2px #fff,

    1px 1px 2px #fff, -1px -1px 2px #fff,
    -1px 1px 2px #fff, 1px -1px 2px #fff,
    1px 0px 2px #fff, -1px -0px 2px #fff,
    0px 1px 2px #fff, 0px -1px 2px #fff;
}

#toppage #eligible .lower .txt {
  font-size: 40px;
  font-weight: bold;
  font-style: oblique;
  width: 70%;
  margin: 0 auto;
}

@media only screen and (max-width: 1200px) {

  #toppage #eligible .upper h2 {
    font-size: 5.2vw;
    margin-bottom: 6%;
  }

  #toppage #eligible .upper .flex .item {
    width: 49%;
  }

  #toppage #eligible .upper .flex .txt {
    font-size: 2.3vw;
  }

  #toppage #eligible .lower h3 {
    font-size: 7.5vw;
    margin-bottom: 8%;
  }

  #toppage #eligible .lower .txt {
    font-size: 3.4vw;
  }


}

@media only screen and (max-width: 768px) {

  #toppage #eligible .upper h2 {
    font-size: 7vw;
  }

  #toppage #eligible .upper .flex .item {
    width: 100%;
  }

  #toppage #eligible .upper .flex .img {
    order: 1;
  }

  #toppage #eligible .upper .flex .txt {
    font-size: 4vw;
    padding: 0 5%;
    margin-bottom: 5%;
  }

  #toppage #eligible .lower {
    background-image: url(./images/top_eligible_bg01_sp.jpg);
    padding: 25% 0 15%;
  }

  #toppage #eligible .lower .inner {
    padding: 0;
  }

  #toppage #eligible .lower h3 {
    font-size: 8.5vw;
    position: relative;
  }

  #toppage #eligible .lower h3::after {
    content: "";
    display: block;
    width: 90%;
    height: 0;
    padding: 0 0 63%;
    background-image: url(./images/top_eligible_img02.jpg);
    aspect-ratio: 692 / 436;
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
    margin: 6% auto 0;
  }

  #toppage #eligible .lower .txt {
    width: 100%;
    background: rgba(217, 240, 238, 0.8);
    padding: 5%;
    font-size: 4vw;
    font-weight: normal;

  }

}

@media only screen and (max-width: 414px) {

  #toppage #eligible .upper {
    padding-bottom: 0;
  }

  #toppage #eligible .upper .flex .txt {
    padding: 0;
    line-height: 2;
  }

  #toppage #eligible .lower h3 {
    text-shadow:
      5px 5px 2px #fff, -5px -5px 2px #fff,
      -5px 5px 2px #fff, 5px -5px 2px #fff,
      5px 0px 2px #fff, -5px -0px 2px #fff,
      0px 5px 2px #fff, 0px -5px 2px #fff;
  }

}

/* #ev
----------------------------------------------- */

#toppage #ev {
  padding: 0;
}

#toppage #ev .comparison h2 {
  background: #1c867b;
  color: #fff;
  font-size: 56px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.2;
  padding: 30px 10px;
  text-align: center;
  position: relative;
}

#toppage #ev .comparison h2::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 32px 35px 0 35px;
  border-color: #1c867b transparent transparent transparent;
  position: absolute;
  bottom: -32px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#toppage #ev .comparison .contents {
  background-image: url(./images/top_ev_comparison_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  padding: 60px 0 100px;
}

#toppage #ev .comparison .contents h3 {
  text-align: center;
  margin-bottom: 60px;
}

#toppage #ev .comparison .contents .flex01 {
  margin-bottom: 60px;
}

#toppage #ev .comparison .contents .flex01 .item {
  width: 49%;
}

#toppage #ev .comparison .contents h4 {
  text-align: center;
  font-size: 80px;
  font-weight: 900;
  color: #1c867b;
  font-style: oblique;
  line-height: 1.2;
  letter-spacing: 0;
  text-shadow:
    8px 8px 3px #fff, -8px -8px 3px #fff,
    -8px 8px 3px #fff, 8px -8px 3px #fff,
    8px 0px 3px #fff, -8px -0px 3px #fff,
    0px 8px 3px #fff, 0px -8px 3px #fff;
}

#toppage #ev .comparison .contents .h4_01 {
  position: relative;
}

#toppage #ev .comparison .contents .h4_01::before {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  padding: 0 0 15%;
  background-image: url(./images/top_ev_comparison_arrow.png);
  aspect-ratio: 1205 / 190;
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
}

#toppage #ev .comparison .contents ul {
  margin: 40px 0 80px;
}

#toppage #ev .comparison .contents ul li {
  width: 33%;
  text-align: center;
}

#toppage #ev .comparison .contents ul li .txt {
  background: #1c867b;
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  padding: 20px;
  color: #fff;
  font-size: 52px;
  font-weight: bold;
  line-height: 1.2;
  width: 98%;
  margin: -60px auto 0;
  position: relative;
  z-index: 1;
}

#toppage #ev .comparison .contents .h4_02 {
  margin-bottom: 60px;
}


#toppage #ev .price {
  background: #d9f0ee;
  padding-bottom: 100px;
  text-align: center;
}

#toppage #ev .price .title_block {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#1c867b+0,3fbeb1+50,3fbeb1+100 */
  background: #1c867b;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #1c867b 0%, #3fbeb1 50%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #1c867b 0%, #3fbeb1 50%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #1c867b 0%, #3fbeb1 50%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1c867b', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  margin-bottom: 60px;
}

#toppage #ev .price .title_block .inner {
  position: relative;
  padding: 40px 20px;
}

#toppage #ev .price .title_block h3 img {
  margin-right: 20%;
}

#toppage #ev .price .title_block .person {
  position: absolute;
  bottom: 0;
  right: 15%;
}

#toppage #ev .price .txt01 {
  font-size: 67px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1;
  margin-bottom: 60px;
}

#toppage #ev .price .txt02 span {
  display: inline-block;
  line-height: 1;
  background: #007d67;
  color: #fff;
  font-size: 60px;
  font-weight: bold;
  font-style: oblique;
  padding: 15px 45px 25px 30px;
}

#toppage #ev .price .amount span {
  display: inline-block;
  vertical-align: middle;
  font-size: 70px;
  font-weight: 900;
  line-height: 1;
}

#toppage #ev .price .amount .num {
  color: #ff0000;
  font-size: 160px;
  font-style: oblique;
  text-shadow:
    8px 8px 2px #fff, -8px -8px 2px #fff,
    -8px 8px 2px #fff, 8px -8px 2px #fff,
    8px 0px 2px #fff, -8px -0px 2px #fff,
    0px 8px 2px #fff, 0px -8px 2px #fff;
  margin-right: 30px;
  padding-bottom: 20px;
}

#toppage #ev .price .btn {
  margin-top: 40px;
}

#toppage #ev .price .btn a {
  display: inline-block;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  padding: 40px;
  line-height: 1;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}

#toppage #ev .price .btn a:hover {
  color: #fff;
}

@media only screen and (max-width: 1200px) {

  #toppage #ev .comparison h2 {
    font-size: 5vw;
    padding: 3% 2%;
  }

  #toppage #ev .comparison .contents {
    padding: 6% 0 10%;
  }

  #toppage #ev .comparison .contents h3 {
    margin-bottom: 6%;
  }

  #toppage #ev .comparison .contents h3 img {
    width: 55%;
  }

  #toppage #ev .comparison .contents .flex01 {
    margin-bottom: 6%;
  }

  #toppage #ev .comparison .contents h4 {
    font-size: 7vw;
  }

  #toppage #ev .comparison .contents ul {
    margin: 4% 0 8%;
  }

  #toppage #ev .comparison .contents ul li .txt {
    padding: 5%;
    font-size: 4.2vw;
    margin: -15% auto 0;
  }

  #toppage #ev .comparison .contents .h4_02 {
    margin-bottom: 6%;
  }

  #toppage #ev .price {
    padding-bottom: 10%;
  }

  #toppage #ev .price .title_block {
    margin-bottom: 6%;
  }

  #toppage #ev .price .title_block .inner {
    padding: 3% 2%;
  }

  #toppage #ev .price .title_block h3 img {
    width: 55%;
  }

  #toppage #ev .price .title_block .person {
    width: 16%;
  }

  #toppage #ev .price .txt01 {
    font-size: 6vw;
    margin-bottom: 5%;
  }

  #toppage #ev .price .txt02 {
    margin-bottom: 10px;
  }

  #toppage #ev .price .txt02 span {
    font-size: 5vw;
    padding: 2% 4% 2% 3%;
  }

  #toppage #ev .price .amount span {
    font-size: 6vw;
  }

  #toppage #ev .price .amount .num {
    font-size: 13vw;
  }

  #toppage #ev .price .btn {
    margin-top: 4%;
  }

  #toppage #ev .price .btn a {
    font-size: 3.4vw;
    padding: 4%;
  }

}

@media only screen and (max-width: 768px) {

  #toppage #ev .comparison h2 {
    font-size: 6.8vw;
  }

  #toppage #ev .comparison .contents h3 img {
    width: 80%;
  }

  #toppage #ev .comparison .contents .flex01 .item {
    width: 100%;
    text-align: center;
  }

  #toppage #ev .comparison .contents .flex01 .left {
    margin-bottom: 8%;
  }

  #toppage #ev .comparison .contents h4 {
    font-size: 11vw;
  }

  #toppage #ev .comparison .contents ul li .txt {
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
  }

  #toppage #ev .price .title_block h3 img {
    width: 65%;
  }

  #toppage #ev .price .title_block .person {
    right: 8%;
  }

  #toppage #ev .price .txt01 {
    font-size: 7vw;
  }

  #toppage #ev .price .txt02 span {
    font-size: 6vw;
  }

  #toppage #ev .price .amount .num {
    font-size: 15vw;
    margin-right: 20px;
  }

  #toppage #ev .price .btn a {
    font-size: 4.4vw;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    padding: 6%;
  }

}

@media only screen and (max-width: 480px) {

  #toppage #ev .comparison .contents h4,
  #toppage #ev .price .amount .num {
    text-shadow:
      5px 5px 2px #fff, -5px -5px 2px #fff,
      -5px 5px 2px #fff, 5px -5px 2px #fff,
      5px 0px 2px #fff, -5px -0px 2px #fff,
      0px 5px 2px #fff, 0px -5px 2px #fff;
  }

  #toppage #ev .price .amount .num {
    margin-right: 10px;
  }

  #toppage #ev .price .btn a {
    letter-spacing: 2px;
  }

}

/* #antena
----------------------------------------------- */

#toppage #antena {
  background: url(./images/top_antena_bg01.jpg);
  position: relative;
  padding-top: 0;
}

#toppage #antena::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 40%;
  top: 0;
  left: 0;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 21%, rgba(255, 255, 255, 1) 100%);
}

#toppage #antena .inner {
  position: relative;
  z-index: 1;
}

#toppage #antena h2 {
  background: #1c867b;
  color: #fff;
  font-size: 56px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.2;
  padding: 30px 10px;
  text-align: center;
  position: relative;
  z-index: 1;
}

#toppage #antena h2::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 32px 35px 0 35px;
  border-color: #1c867b transparent transparent transparent;
  position: absolute;
  bottom: -32px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#toppage #antena .topimg {
  margin: 40px 0;
}

#toppage #antena .toptxt {
  font-size: 46px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 80px;
}

#toppage #antena .possible h3 {
  color: #007d67;
  font-size: 56px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 60px;
}

#toppage #antena .possible ul {
  flex-wrap: wrap;
}

#toppage #antena .possible ul li {
  width: 49%;
  margin-bottom: 40px;
}

#toppage #antena .possible ul li .img {
  margin-bottom: 15px;
}

#toppage #antena .possible ul li .img img {
  -moz-box-shadow: 0px 5px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 5px 5px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 5px 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 5px 5px rgba(0, 0, 0, 0.1);
}

#toppage #antena .possible ul li .txt {
  background: #fff;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  padding: 30px;
  font-size: 26px;
}

#toppage #antena .possible .btn {
  margin-top: 40px;
  text-align: center;
}

#toppage #antena .possible .btn a {
  display: inline-block;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  padding: 40px;
  line-height: 1;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}

#toppage #antena .possible .btn a:hover {
  color: #fff;
}

@media only screen and (max-width: 1200px) {

  #toppage #antena h2 {
    font-size: 5vw;
    padding: 3% 2%;
  }

  #toppage #antena .topimg {
    margin: 4% 0;
  }

  #toppage #antena .toptxt {
    font-size: 4vw;
    margin-bottom: 8%;
  }

  #toppage #antena .possible h3 {
    font-size: 5vw;
    margin-bottom: 6%;
  }

  #toppage #antena .possible ul li {
    margin-bottom: 4%;
  }

  #toppage #antena .possible ul li .img {
    margin-bottom: 4%;
  }

  #toppage #antena .possible ul li .txt {
    font-size: 2.2vw;
    padding: 5%;
  }

  #toppage #antena .possible .btn {
    margin-top: 4%;
  }

  #toppage #antena .possible .btn a {
    font-size: 3.4vw;
    padding: 4%;
  }

}

@media only screen and (max-width: 768px) {

  #toppage #antena h2 {
    font-size: 6.8vw;
  }

  #toppage #antena .possible h3 {
    font-size: 6.8vw;
  }

  #toppage #antena .possible .btn a {
    font-size: 4.4vw;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    padding: 6%;
  }

}

@media only screen and (max-width: 600px) {

  #toppage #antena::before {
    height: 20%;
  }

  #toppage #antena .toptxt {
    font-size: 4.6vw;
  }

  #toppage #antena .possible ul li {
    width: 85%;
    margin: 0 auto 6%;
  }

  #toppage #antena .possible ul li .txt {
    font-size: 4vw;
  }

}

@media only screen and (max-width: 480px) {

  #toppage #antena .possible ul li {
    width: 95%;
  }

  #toppage #antena .possible .btn a {
    letter-spacing: 2px;
  }

}

/* #strength
----------------------------------------------- */

#toppage #strength {
  background: url(./images/top_strength_bg01.jpg);
  position: relative;
  padding-bottom: 0;
}

#toppage #strength::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 40%;
  top: 0;
  left: 0;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 40%, rgba(255, 255, 255, 1) 100%);
}

#toppage #strength .inner {
  position: relative;
  z-index: 1;
}

#toppage #strength h2 {
  font-size: 56px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 60px;

}

#toppage #strength .flex01 {
  justify-content: center;
  margin-bottom: 80px;
}

#toppage #strength .flex01 li {
  width: 300px;
  text-align: center;
}

#toppage #strength .flex01 li .title {
  width: 75%;
  margin: 0 auto -30px;
  line-height: 1;
  color: #fff;
  background: #1c867b;
  font-size: 40px;
  font-weight: 900;
  font-style: oblique;
  padding: 15px 10px;
  position: relative;
  z-index: 1;
}

#toppage #strength .example {
  position: relative;
  padding-bottom: 80px;
}

#toppage #strength .example h3 {
  color: #1c867b;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 40px;
  position: relative;
  z-index: 1;
}

#toppage #strength .example ul {
  position: relative;
  z-index: 1;
  margin-left: 15%;
}

#toppage #strength .example ul li {
  font-size: 32px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.4;
  margin-bottom: 10px;
  position: relative;
  padding-left: 40px;
}

#toppage #strength .example ul li::before {
  content: "";
  width: 30px;
  height: 27px;
  background-image: url(./images/top_strength_icon.png);
  aspect-ratio: 30 / 27;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#toppage #strength .example::after {
  content: "";
  width: 408px;
  height: 444px;
  background-image: url(./images/top_strength_person.png);
  aspect-ratio: 408 / 444;
  background-position: center bottom;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 5%;
}

@media only screen and (max-width: 1200px) {

  #toppage #strength h2 {
    font-size: 5vw;
    margin-bottom: 6%;
  }

  #toppage #strength .flex01 {
    margin-bottom: 7%;
  }

  #toppage #strength .flex01 li {
    max-width: 300px;
    padding: 0 5px;
  }

  #toppage #strength .flex01 li .title {
    font-size: 3.4vw;
    padding: 5% 1%;
    margin: 0 auto -10%;
  }

  #toppage #strength .example h3 {
    font-size: 4.2vw;
    margin-bottom: 5%;
  }

  #toppage #strength .example ul li {
    font-size: 2.7vw;
    padding-left: 5%;
  }

  #toppage #strength .example ul li::before {
    width: 4%;
    height: 0;
    padding: 0 0 3%;
  }

  #toppage #strength .example::after {
    width: 36%;
    height: 0;
    padding: 0 0 40%;
  }

}


@media only screen and (max-width: 768px) {

  #toppage #strength {
    padding-top: 15%;
  }

  #toppage #strength::before {
    height: 10%;
  }

  #toppage #strength h2 {
    font-size: 6.8vw;
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

  #toppage #strength .flex01 {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  #toppage #strength .flex01 li {
    width: 32%;
    padding: 0;
  }

  #toppage #strength .example h3 {
    font-size: 7vw;
  }

  #toppage #strength .example ul {
    margin-left: 0;
  }

  #toppage #strength .example ul li {
    font-size: 3.6vw;
  }

  #toppage #strength .example::after {
    width: 40%;
    padding: 0 0 44%;
    right: 0;
  }

}

@media only screen and (max-width: 414px) {

  #toppage #strength h2 {
    font-size: 7.2vw;
    text-shadow:
      2px 2px 2px #fff, -2px -2px 2px #fff,
      -2px 2px 2px #fff, 2px -2px 2px #fff,
      2px 0px 2px #fff, -2px -0px 2px #fff,
      0px 2px 2px #fff, 0px -2px 2px #fff;
  }

  #toppage #strength .example ul li {
    font-size: 4.4vw;
  }

  #toppage #strength .example::after {
    width: 45%;
    padding: 0 0 49%;
    right: -5%;
  }

}

/* #security
----------------------------------------------- */

#toppage #security {
  background-image: url(./images/top_security_bg01.jpg);
  background-position: left top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  padding: 10% 0;
}

#toppage #security h2 {
  text-align: center;
  font-size: 65px;
  font-weight: bold;
  font-style: oblique;
  margin-bottom: 60px;
  letter-spacing: 3px;
}

#toppage #security .txt {
  width: 85%;
  margin: 0 auto;
  font-size: 30px;
  font-style: oblique;
  text-shadow:
    0px 0px 10px rgba(255, 255, 255, 1),
    0px 0px 10px rgba(255, 255, 255, 1);
}

@media only screen and (max-width: 1200px) {

  #toppage #security {
    background-position: 15% top;
  }

  #toppage #security h2 {
    font-size: 5.5vw;
    margin-bottom: 5%;
  }

  #toppage #security .txt {
    font-size: 2.4vw;
  }

}

@media only screen and (max-width: 768px) {

  #toppage #security {
    background-position: 15% top;
  }

  #toppage #security h2 {
    font-size: 8.5vw;
  }

  #toppage #security .txt {
    font-size: 4vw;
    width: 100%;
    line-height: 1.8;
  }

}

/* #service
----------------------------------------------- */

#toppage #service {
  padding-top: 0;
}

#toppage #service h2 {
  background: #1c867b;
  color: #fff;
  font-size: 56px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.2;
  padding: 30px 10px;
  text-align: center;
}

#toppage #service ul {
  margin-top: 60px;
  flex-wrap: wrap;
}

#toppage #service ul li {
  width: 49%;
  margin-bottom: 30px;
}

#toppage #service ul li .box {
  border: 4px solid #27ad9f;
  -moz-box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
  padding: 20px 15px;
}

#toppage #service ul li .box .img {
  width: 42%;
}

#toppage #service ul li .box .right {
  width: 56%;
}

#toppage #service ul li .box .right .menu {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4;
  border-left: 7px solid #27ad9f;
  padding-left: 14px;
  margin-bottom: 5px;
}

#toppage #service ul li .box .right .price {
  font-size: 30px;
  font-weight: 900;
  line-height: 1.4;
  margin-bottom: 15px;
}

#toppage #service ul li .box .right .txt {
  font-size: 20px;
  line-height: 1.4;
}

#toppage #service .btn {
  text-align: center;
  margin-top: 40px;
}

#toppage #service .btn a {
  display: inline-block;
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  padding: 20px 120px;
  line-height: 1.4;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}

#toppage #service .btn a:hover {
  color: #fff;
}

@media only screen and (max-width: 1200px) {

  #toppage #service h2 {
    font-size: 5vw;
    padding: 3% 2%;
  }

  #toppage #service ul {
    margin-top: 6%;
  }

  #toppage #service ul li {
    margin-bottom: 2.5%;
  }

  #toppage #service ul li .box {
    padding: 3% 2%;
  }

  #toppage #service ul li .box .right .menu {
    font-size: 2vw;
    border-left: 5px solid #27ad9f;
    padding-left: 10px;
  }

  #toppage #service ul li .box .right .price {
    font-size: 2.3vw;
  }

  #toppage #service ul li .box .right .txt {
    font-size: 1.6vw;
  }

  #toppage #service .btn {
    margin-top: 4%;
  }

  #toppage #service .btn a {
    font-size: 2.5vw;
    padding: 2% 10%;
  }

}

@media only screen and (max-width: 768px) {

  #toppage #service h2 {
    font-size: 6.8vw;
  }

  #toppage #service ul li .box {
    padding: 6%;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  }

  #toppage #service ul li .box .img,
  #toppage #service ul li .box .right {
    width: 100%;
  }

  #toppage #service ul li .box .img {
    margin-bottom: 10px;
  }

  #toppage #service ul li .box .img img {
    max-width: initial;
    width: 100%;
  }

  #toppage #service ul li .box .right .menu {
    font-size: 3.2vw;
    margin-bottom: 10px;
  }

  #toppage #service ul li .box .right .txt {
    font-size: 2.6vw;
  }

  #toppage #service ul li .box .right .price {
    font-size: 3.6vw;
  }

  #toppage #service .btn {
    margin-top: 6%;
  }

  #toppage #service .btn a {
    font-size: 4vw;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  }

}

@media only screen and (max-width: 480px) {

  #toppage #service .inner {
    padding: 0 2%;
  }

  #toppage #service ul li .box {
    border: 3px solid #27ad9f;
    padding: 4%;
  }

  #toppage #service ul li .box .right .menu {
    font-size: 3.6vw;
    margin-bottom: 5px;
    padding-left: 6px;
  }

  #toppage #service ul li .box .right .price {
    font-size: 4vw;
    margin-bottom: 8px;
  }

  #toppage #service ul li .box .right .txt {
    font-size: 14px;
    /* font-size: 12px; */
  }

  #toppage #service .btn a {
    letter-spacing: 2px;
    padding: 2% 15%;
  }

}

/* #voice
----------------------------------------------- */

#top_voice h2 {
  font-size: 62px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 60px;
}

#top_voice .boxes .box {
  margin-bottom: 40px;
  position: relative;
  padding: 40px 0 0 80px;
}

#top_voice .boxes .box:nth-child(2n) {
  padding: 40px 80px 0 0;
}

#top_voice .boxes .box:last-child {
  margin-bottom: 0;
}

#top_voice .boxes .box .img {
  position: absolute;
  width: 25%;
  top: 0;
  left: 0;
  z-index: 1;
}

#top_voice .boxes .box:nth-child(2n) .img {
  left: auto;
  right: 0;
}

#top_voice .boxes .box .contents {
  background: #daf2f0;
  padding: 60px 20px;
}

#top_voice .boxes .box .contents .title {
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 10px;
}

#top_voice .boxes .box .contents .area {
  text-align: center;
  font-size: 30px;
  color: #27AD9F;
  font-weight: bold;
  line-height: 1.4;
}

#top_voice .boxes .box .contents .name {
  text-align: center;
  font-size: 30px;
  color: #27AD9F;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 40px;
}

#top_voice .boxes .box .contents .txt {
  font-size: 20px;
  width: 60%;
  margin: 0 auto;
}

#top_voice .boxes .box:nth-child(2n) .contents {
  padding-left: 15%;
}

#top_voice .boxes .box:nth-child(2n) .contents .txt {
  width: 70%;
}

@media only screen and (max-width: 1200px) {

  #top_voice h2 {
    font-size: 5.2vw;
    margin-bottom: 6%;
  }

  #top_voice .boxes .box {
    margin-bottom: 4%;
    padding: 3.5% 0 0 7%;
  }

  #top_voice .boxes .box:nth-child(2n) {
    padding: 3.5% 7% 0 0;
  }

  #top_voice .boxes .box .contents {
    padding: 6% 2%;
  }

  #top_voice .boxes .box .contents .title {
    font-size: 3vw;
  }

  #top_voice .boxes .box .contents .area {
    font-size: 2.5vw;
  }

  #top_voice .boxes .box .contents .name {
    font-size: 2.5vw;
    margin-bottom: 4%;
  }

  #top_voice .boxes .box .contents .txt {
    width: 70%;
    font-size: 1.8vw;
  }

  #top_voice .boxes .box:nth-child(2n) .contents {
    padding-left: 12%;
  }

  #top_voice .boxes .box:nth-child(2n) .contents .txt {
    width: 75%;
    margin-right: 8%;
  }

}

@media only screen and (max-width: 768px) {

  #top_voice .inner {
    padding: 0;
  }

  #top_voice h2 {
    font-size: 6.8vw;
  }

  #top_voice .boxes .box .img {
    width: 40%;
  }

  #top_voice .boxes .box .contents .title {
    font-size: 5vw;
    text-align: left;
    padding-left: 37%;
  }

  #top_voice .boxes .box .contents .area {
    font-size: 4vw;
    text-align: left;
    padding-left: 37%;
  }

  #top_voice .boxes .box .contents .name {
    margin-bottom: 6%;
    font-size: 4vw;
    text-align: left;
    padding-left: 37%;
  }

  #top_voice .boxes .box .contents .txt {
    width: 92%;
    font-size: 3vw;
  }

  #top_voice .boxes .box:nth-child(2n) .contents {
    padding: 6%;
  }

  #top_voice .boxes .box:nth-child(2n) .contents .title,
  #top_voice .boxes .box:nth-child(2n) .contents .area,
  #top_voice .boxes .box:nth-child(2n) .contents .name {
    padding-left: 0;
  }

  #top_voice .boxes .box:nth-child(2n) .contents .txt {
    width: 92%;
    margin-right: auto;
  }
}

@media only screen and (max-width: 500px) {

  #top_voice .boxes .box .contents .txt {
    font-size: 4vw;
  }
}


@media only screen and (max-width: 414px) {

  #top_voice h2 {
    font-size: 7vw;
  }

  /* #top_voice .boxes .box .contents .txt {
    font-size: 4vw;
  } */

}

/* #case
----------------------------------------------- */

.btm_common #case h2 {
  font-size: 62px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 120px;
  position: relative;
}

.btm_common #case h2::after {
  content: "";
  width: 136px;
  height: 9px;
  background: #27ad9f;
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.btm_common #case .case_slider_items li {
  padding: 0 10px;
}

.btm_common #case .case_slider_items li .a {
  display: block;
}

.btm_common #case .case_slider_items li a p {
  line-height: 1.4;
}

.btm_common #case .case_slider_items li a .img {
  margin-bottom: 15px;
}

.btm_common #case .case_slider_items li a .cate span {
  display: inline-block;
  background: #1c867b;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  -webkit-border-radius: 14px;
  -moz-border-radius: 14px;
  border-radius: 14px;
  padding: 10px;
  line-height: 1;
  margin: 0 5px 5px 0;
}

.btm_common #case .case_slider_items li a .title {
  font-size: 20px;
  font-weight: bold;
  margin: 8px 0;
}

.btm_common #case .case_slider_items li a .txt {
  font-size: 18px;
}

.btm_common #case .case_slider_items .slick-prev:before {
  content: "";
  display: block;
  width: 23px;
  height: 27px;
  aspect-ratio: 23 / 27;
  background-image: url(./images/top_service_slider_prev.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
}

.btm_common #case .case_slider_items .slick-next:before {
  content: "";
  display: block;
  width: 23px;
  height: 27px;
  aspect-ratio: 23 / 27;
  background-image: url(./images/top_service_slider_next.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
}

.btm_common #case .btn {
  text-align: center;
  margin-top: 90px;
}

.btm_common #case .btn a {
  display: inline-block;
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  padding: 40px 120px;
  line-height: 1;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}

.btm_common #case .btn a:hover {
  color: #fff;
}

@media only screen and (max-width: 1200px) {

  .btm_common #case h2 {
    font-size: 5.2vw;
    margin-bottom: 9%;
  }

  .btm_common #case .case_slider_items {
    width: 98%;
    margin: 0 auto;
  }

  .btm_common #case .case_slider_items li {
    padding: 0 5px;
  }

  .btm_common #case .case_slider_items li a .img {
    margin-bottom: 5%;
  }

  .btm_common #case .case_slider_items li a .cate span {
    font-size: 12px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
  }

  .btm_common #case .case_slider_items li a .txt {
    font-size: 18px;
  }

  .btm_common #case .case_slider_items li a .txt {
    font-size: 16px;
  }

  .btm_common #case .btn {
    margin-top: 7%;
  }

  .btm_common #case .btn a {
    font-size: 3vw;
    padding: 3% 10%;
  }

}

@media only screen and (max-width: 768px) {

  .btm_common #case h2 {
    font-size: 6.8vw;
    margin-bottom: 12%;
  }

  .btm_common #case h2::after {
    width: 100px;
    height: 7px;
    bottom: -20px;
  }

  .btm_common #case .case_slider_items {
    width: 100%;
  }

  .btm_common #case .case_slider_items li p {
    margin-bottom: 1%;
  }

  .btm_common #case .case_slider_items li a .img {
    margin-bottom: 3%;
  }

  .btm_common #case .case_slider_items li a .img img {
    max-width: initial;
    width: 100%;
  }

  .btm_common #case .case_slider_items li a .cate span {
    font-size: 3vw;
  }

  .btm_common #case .case_slider_items li a .title {
    font-size: 4.6vw;
  }

  .btm_common #case .case_slider_items li a .txt {
    font-size: 2.8vw;
  }

  .btm_common #case .case_slider_items .slick-prev {
    width: 55px;
    height: 55px;
    top: 40%;
    left: 2%;
    z-index: 1;
  }

  .btm_common #case .case_slider_items .slick-next {
    width: 55px;
    height: 55px;
    top: 40%;
    right: 2%;
    z-index: 1;
  }

  .btm_common #case .case_slider_items .slick-prev:before {
    width: 55px;
    height: 55px;
    aspect-ratio: 55 / 55;
    background-image: url(./images/top_case_slider_prev.png);
  }

  .btm_common #case .case_slider_items .slick-next:before {
    width: 55px;
    height: 55px;
    aspect-ratio: 55 / 55;
    background-image: url(./images/top_case_slider_next.png);
  }

  .btm_common #case .btn a {
    font-size: 4.4vw;
    padding: 4% 10%;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  }

}

@media only screen and (max-width: 500px) {
  .btm_common #case .case_slider_items li a .cate span {
    font-size: 3.3vw;
  }

  .btm_common #case .case_slider_items li a .txt {
    font-size: 3.3vw;
  }
}

@media only screen and (max-width: 414px) {

  .btm_common #case h2 {
    margin-bottom: 15%;
  }

  .btm_common #case h2::after {
    width: 70px;
    height: 5px;
  }

  .btm_common #case h2 {
    font-size: 7vw;
  }

  .btm_common #case .case_slider_items .slick-prev {
    width: 30px;
    height: 30px;
    top: 35%;
  }

  .btm_common #case .case_slider_items .slick-next {
    width: 30px;
    height: 30px;
    top: 35%;
  }

  .btm_common #case .case_slider_items .slick-prev:before {
    width: 30px;
    height: 30px;
  }

  .btm_common #case .case_slider_items .slick-next:before {
    width: 30px;
    height: 30px;
  }

  .btm_common #case .case_slider_items li a .cate span {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    padding: 7px;
  }

  .btm_common #case .case_slider_items li a .txt {
    font-size: 4vw;
  }

  .btm_common #case .btn a {
    letter-spacing: 2px;
    padding: 6% 10%;
  }

}

/* #top_news
----------------------------------------------- */

#top_news h2 {
  background: #1c867b;
  color: #fff;
  font-size: 56px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.2;
  padding: 30px 10px;
  text-align: center;
  margin-bottom: 90px;
}

#top_news ul {
  width: 80%;
  margin: 0 auto;
}

#top_news ul li {
  margin-bottom: 20px;
}

#top_news ul li a {
  display: flex;
  position: relative;
}

#top_news ul li a::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  margin-top: -8px;
  width: 16px;
  height: 16px;
  border-top: 4px solid #222;
  border-right: 4px solid #222;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

#top_news ul li a p {
  font-size: 24px;
  font-weight: bold;
}

#top_news ul li a .date {
  width: 15%;
  margin-right: 20px;
}

#top_news ul li a .title {
  width: 78%;
  line-height: 1.8;
}


#top_news .btn {
  text-align: center;
  margin-top: 90px;
}

#top_news .btn a {
  display: inline-block;
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  padding: 40px 120px;
  line-height: 1;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}

#top_news .btn a:hover {
  color: #fff;
}

@media only screen and (max-width: 1200px) {

  #top_news h2 {
    font-size: 5vw;
    padding: 3% 2%;
    margin-bottom: 8%;
  }

  #top_news ul {
    width: 96%;
  }

  #top_news ul li a p {
    font-size: 2vw;
  }

  #top_news ul li a::after {
    margin-top: -5px;
    width: 10px;
    height: 10px;
    border-top: 3px solid #222;
    border-right: 3px solid #222;
    right: 3%;
  }

  #top_news ul li a .date {
    width: 13%;
    margin-right: 1%;
  }

  #top_news .btn {
    margin-top: 7%;
  }

  #top_news .btn a {
    /* font-size: 3vw; */
    font-size: 3.3vw;
    padding: 3% 10%;
  }

}

@media only screen and (max-width: 768px) {

  #top_news h2 {
    font-size: 6.8vw;
  }

  #top_news ul {
    width: 90%;
  }

  #top_news ul li a p {
    /* font-size: 3vw; */
    font-size: 3.3vw;
  }

  #top_news ul li a .date {
    /* width: 22%; */
    width: 23%;
  }

  #top_news ul li a .title {
    width: 70%;
  }

  #top_news .btn a {
    font-size: 4.4vw;
    padding: 4% 10%;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  }

}

@media only screen and (max-width: 414px) {

  #top_news ul li a::after {
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #222;
    border-right: 2px solid #222;
    right: -4%;
    top: 60%;
  }

  #top_news ul li a {
    flex-wrap: wrap;
  }

  #top_news ul li a p {
    font-size: 14px;
  }

  #top_news ul li a .date,
  #top_news ul li a .title {
    width: 100%;
  }

  #top_news .btn a {
    letter-spacing: 2px;
    padding: 6% 10%;
  }

}


/* #top_faq
----------------------------------------------- */

#top_faq h2 {
  font-size: 62px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 60px;
}

#top_faq .btn {
  text-align: center;
  margin-top: 90px;
}

#top_faq .btn a {
  display: inline-block;
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  padding: 40px 120px;
  line-height: 1;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}

#top_faq .btn a:hover {
  color: #fff;
}

.faq_list li {
  margin-bottom: 30px;
}

.faq_list li .inner {
  max-width: 1000px;
}

.faq_list li .que {
  background: #1c867b;
  padding: 20px 0;
}

.faq_list li .que p {
  position: relative;
  padding-left: 80px;
  font-size: 30px;
  font-weight: bold;
  font-style: oblique;
  color: #fff;
  line-height: 1.6;
}

.faq_list li .que p::before {
  content: "";
  width: 62px;
  height: 62px;
  aspect-ratio: 62 / 62;
  background-image: url(./images/faq_list_icon.png);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.faq_list li .ans {
  padding: 30px 0;
}

.faq_list li .ans p {
  font-size: 26px;
  line-height: 1.6;
}

@media only screen and (max-width: 1200px) {

  #top_faq h2 {
    font-size: 5.2vw;
    margin-bottom: 6%;
  }

  #top_faq .btn {
    margin-top: 7%;
  }

  #top_faq .btn a {
    font-size: 3vw;
    padding: 3% 10%;
  }

  .faq_list li {
    margin-bottom: 3%;
  }

  .faq_list li .que {
    padding: 2% 0;
  }

  .faq_list li .que p {
    font-size: 2.5vw;
    padding-left: 9%;
  }

  .faq_list li .que p::before {
    width: 7%;
    height: 0;
    padding: 0 0 7%;
  }

  .faq_list li .ans {
    padding: 3% 0;
  }

  .faq_list li .ans p {
    font-size: 2.2vw;
  }

}

@media only screen and (max-width: 768px) {

  #top_faq h2 {
    font-size: 7vw;
  }

  #top_faq .btn a {
    font-size: 4.4vw;
    padding: 4% 10%;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  }

  .faq_list li .que {
    padding: 3% 0;
  }

  .faq_list li .que p {
    font-size: 3.5vw;
  }

  .faq_list li .ans p {
    font-size: 3.2vw;
  }

}

@media only screen and (max-width: 414px) {

  #top_faq .btn a {
    letter-spacing: 2px;
    padding: 6% 10%;
  }

  .faq_list li .inner {
    padding: 0 10px;
  }

  .faq_list li .que p {
    font-size: 4.2vw;
  }

  .faq_list li .ans p {
    font-size: 4vw;
  }

}

/* #maker
----------------------------------------------- */

.btm_common #maker h2 {
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  color: #1c867b;
  text-align: center;
  line-height: 1;
  margin-bottom: 60px;
}

.btm_common #maker h2 span {
  font-size: 30px;
  font-weight: 900;
  color: #a1a1a1;
  font-style: normal;
}

.btm_common #maker .txt01 {
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 60px;
}

@media only screen and (max-width: 1200px) {

  .btm_common #maker h2 {
    font-size: 4vw;
    margin-bottom: 5%;
  }

  .btm_common #maker h2 span {
    font-size: 2.5vw;
  }

  .btm_common #maker .txt01 {
    font-size: 2.8vw;
    margin-bottom: 5%;
  }

}

@media only screen and (max-width: 768px) {

  .btm_common #maker h2 {
    font-size: 5vw;
  }

  .btm_common #maker h2 span {
    font-size: 3.5vw;
  }

  .btm_common #maker .txt01 {
    font-size: 3.8vw;
  }

}

@media only screen and (max-width: 768px) {

  .btm_common #maker h2 {
    font-size: 6vw;
  }

  .btm_common #maker h2 span {
    font-size: 4.5vw;
  }

  .btm_common #maker .txt01 {
    font-size: 4vw;
  }

  .btm_common #maker ul li img {
    width: 100px;
    height: auto;
  }

}

/* ==============================================
 お問い合わせフォーム
=============================================== */

.form_section h2 {
  background: #22ab9d;
  color: #fff;
  font-size: 60px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  padding: 20px;
  -moz-box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  margin-bottom: 60px;
}

/* MW WP Form
=============================================== */

.inquiry_table {
  width: 85%;
  margin: 0 auto 60px;
}

.inquiry_table .head {
  color: #2ca79a;
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 10px;
}

.inquiry_table .data {
  margin-bottom: 40px;
}

.inquiry_table .head span {
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
}

.inquiry_table .head .required {
  font-size: 22px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  background: #2c897f;
  padding: 5px 10px 7px;
  color: #fff;
}

.inquiry_table .head .normal {
  font-size: 18px;
}

.inquiry_table textarea,
.inquiry_table input[type="text"],
.inquiry_table input[type="tel"],
.inquiry_table input[type="email"] {
  font-size: 18px;
  width: 100%;
  border: 1px solid #d5f4f0;
  padding: 15px;
  color: #413226;
  background: #e7fefc;
  border-radius: 5px;
  box-shadow: 2px 2px 4px 0 #d5f4f0 inset;
  /* Webkit */
  -webkit-border-radius: 5px;
  -webkit-box-shadow: 2px 2px 4px 0 #d5f4f0 inset;
  /* Firefox */
  -moz-border-radius: 5px;
  -moz-box-shadow: 2px 2px 4px 0 #d5f4f0 inset;
}

.inquiry_table input[type="checkbox"],
.policycheck input[type="checkbox"] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.inquiry_table input[type="checkbox"],
.policycheck input[type="checkbox"] {
  cursor: pointer;
  padding-left: 30px;
  vertical-align: middle;
  position: relative;
}

.inquiry_table input[type="checkbox"]::before,
.inquiry_table input[type="checkbox"]::after,
.policycheck input[type="checkbox"]::before,
.policycheck input[type="checkbox"]::after {
  content: "";
  display: block;
  position: absolute;
}

.inquiry_table input[type="checkbox"]::before,
.policycheck input[type="checkbox"]::before {
  background-color: #fff;
  border-radius: 0%;
  border: 2px solid #2c897f;
  width: 20px;
  height: 20px;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.inquiry_table input[type="checkbox"]::after,
.policycheck input[type="checkbox"]::after {
  border-bottom: 3px solid #666464;
  border-left: 3px solid #666464;
  opacity: 0;
  height: 6px;
  width: 11px;
  transform: rotate(-45deg);
  top: -7px;
  left: 5px;
}

.inquiry_table input[type="checkbox"]:checked::after,
.policycheck input[type="checkbox"]:checked::after {
  opacity: 1;
}

.inquiry_table .mwform-checkbox-field-text,
.policycheck .mwform-checkbox-field-text {
  color: #2c897f;
  font-size: 20px;
  display: inline-block;
  vertical-align: middle;
}

.mw_wp_form .inquiry_table .horizontal-item+.horizontal-item {
  margin-left: 0;
}

.inquiry_table .mwform-checkbox-field {
  display: inline-block;
  min-width: 22%;
  margin-top: 10px;
}

.inquiry_table .mwform-checkbox-field:nth-child(8) {
  margin-left: 20px !important;
}

.inquiry_table .mwform-tel-field input[type="text"] {
  width: 23%;
}

.inquiry_table textarea {
  width: 100%;
}

.mw_wp_form .error {
  margin-top: 7px;
  font-weight: bold;
  color: #ff0000;
}

.policy_block {
  align-items: center;
  display: flex;
  justify-content: center;
}

.policy_block .policycheck,
.policy_block .policycheck_note {
  display: inline-block;
}

.policy_block .policycheck .mwform-checkbox-field-text {
  display: none;
}

.policy_block .policycheck_note {
  color: #2c897f;
  font-size: 20px;
}

.policy_block .policycheck_note a {
  color: #2c897f;
  text-decoration: underline;
}

.policy_block .policycheck_note a:hover {
  text-decoration: none;
  color: #2c897f;
  opacity: 1;
}

.policy_block .policycheck_note .required {
  font-size: 18px;
  display: inline-block;
  margin-left: 10px;
}

.btn_form {
  text-align: center;
  margin-top: 60px;
}

.btn_form input {
  display: inline-block;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(left, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 */
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  -moz-box-shadow: 0px 3px 5px 2px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 3px 5px 2px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0px 3px 5px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 3px 5px 2px rgba(0, 0, 0, 0.2);
  padding: 20px 40px;
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 2px;
  border: none;
  color: #fff;
}

#submitback {
  margin-right: 10px;
}

.btn_form #submitback input {
  background: #888;
}

.btn_form input:hover {
  text-decoration: none;
  opacity: 0.75;
}

.inquiry_complete {
  text-align: center;
}

.inquiry_complete h4 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 40px;
}

.inquiry_complete p {
  line-height: 2;
  display: inline-block;
  text-align: left;
}

.mw_wp_form_confirm .inquiry_table .head span,
.required,
.mw_wp_form_confirm .inquiry_table .head span,
.normal {
  display: none;
}

.mw_wp_form_confirm .policy_block {
  display: none;
}

@media only screen and (max-width: 1080px) {

  .form_section h2 {
    font-size: 5vw;
    padding: 2%;
    margin-bottom: 5%;
  }

  .inquiry_table {
    width: 95%;
    margin: 0 auto 5%;
  }

  .inquiry_table .head {
    font-size: 20px;
  }

  .inquiry_table .head .required {
    font-size: 14px;
  }

  .inquiry_table .head .normal {
    font-size: 16px;
  }

  .inquiry_table textarea,
  .inquiry_table input[type="text"] {
    font-size: 16px;
  }

  .inquiry_table input[type="checkbox"],
  .policycheck input[type="checkbox"] {
    padding-left: 25px;
  }

  .inquiry_table input[type="checkbox"]::before,
  .policycheck input[type="checkbox"]::before {
    width: 18px;
    height: 18px;
  }

  .inquiry_table input[type="checkbox"]::after,
  .policycheck input[type="checkbox"]::after {
    border-bottom: 2px solid #666464;
    border-left: 2px solid #666464;
  }

  .inquiry_table .mwform-checkbox-field-text,
  .policycheck .mwform-checkbox-field-text {
    font-size: 18px;
  }

  .inquiry_table .mwform-checkbox-field {
    min-width: initial;
  }

  .inquiry_table .mwform-checkbox-field {
    margin-left: 20px !important;
  }

  .policy_block .policycheck_note {
    font-size: 18px;
  }

  .policy_block .policycheck_note .required {
    font-size: 16px;
  }

  .btn_form {
    margin-top: 5%;
  }

  .btn_form input {
    font-size: 22px;
  }

}

@media only screen and (max-width: 768px) {

  .inquiry_table textarea,
  .inquiry_table input[type="text"] {
    font-size: 16px;
  }

  .inquiry_table .mwform-tel-field input[type="text"] {
    width: 29%;
  }

  .form_section h2 {
    font-size: 6vw;
  }

  .inquiry_table {
    width: 100%;
  }

  .inquiry_table .head {
    font-size: 18px;
  }

  .inquiry_table .head .required {
    font-size: 13px;
  }

  .inquiry_table .head .normal {
    font-size: 14px;
  }

  #submitback {
    display: block;
    margin-right: 0px;
    margin-bottom: 10px;
  }

}

@media only screen and (max-width: 500px) {

  .form_section h2 {
    font-size: 7vw;
    padding: 4%;
  }

  .inquiry_table .data {
    margin-bottom: 30px;
  }

  .inquiry_table input[type="checkbox"],
  .policycheck input[type="checkbox"] {
    padding-left: 20px;
  }

  .inquiry_table input[type="checkbox"]::before,
  .policycheck input[type="checkbox"]::before {
    width: 16px;
    height: 16px;
  }

  .inquiry_table .mwform-checkbox-field-text,
  .policycheck .mwform-checkbox-field-text {
    font-size: 16px;
  }

  .policy_block .policycheck_note {
    font-size: 16px;
  }

  .policy_block .policycheck_note .required {
    font-size: 14px;
  }

  .btn_form {
    margin-top: 10%;
  }

  .btn_form input {
    font-size: 26px;
    padding: 20px;
    width: 85%;
  }

}

@media only screen and (max-width: 375px) {

  .policy_block .policycheck_note {
    font-size: 14px;
  }

  .policy_block .policycheck_note .required {
    font-size: 13px;
  }

  .btn_form input {
    font-size: 20px;
    width: 95%;
  }

}

/* ==============================================
 フッター
=============================================== */

footer {
  background: #d9f0ee;
}

footer.section {
  padding-bottom: 200px;
}

footer #footer_company {
  background: #fff;
  padding: 60px 0;
  margin-bottom: 60px;
  text-align: center;
}

footer #footer_company h2 {
  font-size: 36px;
  font-weight: bold;
}

footer #footer_company p {
  font-size: 20px;
}

footer #footer_company .time {
  margin-top: 20px;
}

footer #footer_company .time span {
  display: inline-block;
  border: 2px solid #000;
  padding: 5px 60px
}

footer #footer_nav {
  margin-bottom: 60px;
}

footer #footer_nav h3 {
  font-size: 25px;
}

footer #footer_nav ul li {
  font-size: 20px;
}

footer #footer_nav .left {
  width: 60%;
}

footer #footer_nav .right {
  width: 30%;
}

footer #footer_nav .left ul {
  column-count: 2;
}

footer #footer_nav ul {
  margin-left: 10px;
}

footer .copyright {
  text-align: center;
}

@media only screen and (max-width: 1200px) {

  footer #footer_company h2 {
    font-size: 3vw;
  }

  footer #footer_company p {
    font-size: 1.8vw;
  }

  footer #footer_company {
    padding: 5% 0;
    margin-bottom: 5%;
  }

  footer #footer_company .time span {
    padding: 5px 5%
  }

  footer #footer_nav {
    margin-bottom: 5%;
  }

  footer #footer_nav h3 {
    font-size: 2vw;
  }

  footer #footer_nav ul li {
    font-size: 1.6vw;
  }

}

@media only screen and (max-width: 768px) {

  footer.section {
    padding-bottom: 50%;
  }

  footer #footer_company h2 {
    font-size: 6vw;
  }

  footer #footer_company p {
    font-size: 3vw;
  }

  footer #footer_nav h3 {
    font-size: 3vw;
  }

  footer #footer_nav ul li {
    font-size: 2.8vw;
  }

  footer #footer_nav .left {
    width: 55%
  }

  footer #footer_nav .right {
    width: 45%
  }

  footer #footer_nav .left ul {
    column-count: 1;
  }

  footer #footer_nav .left ul:nth-child(2) {
    margin-top: 0;
  }

  footer #footer_nav .left,
  footer #footer_nav .right {
    text-align: center;
  }

  footer #footer_nav ul {
    display: inline-block;
    text-align: left;
  }

}

@media only screen and (max-width: 414px) {

  footer #footer_nav ul li {
    line-height: 2;
  }

}


/* ==============================================
 フッター固定バナー
=============================================== */

.bottom_fixed {
  background: #2ca79a;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}

.bottom_fixed.tb {
  display: none;
}

.bottom_fixed .inner {
  position: relative;
  padding: 30px 0;
  padding-left: 370px;
}

.bottom_fixed p {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.bottom_fixed .mail {
  margin-right: 0;
}

.bottom_fixed .free {
  position: absolute;
  bottom: 0;
  left: -50px;
}

.bottom_fixed .tel a,
.bottom_fixed .mail a {
  display: block;
  height: 80px;
  text-align: center;
  padding: 0 20px;
  -webkit-border-radius: 26px;
  -moz-border-radius: 26px;
  border-radius: 26px;
  border: 4px solid #fff;
  -moz-box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
  box-shadow: 5px 5px 10px 5px rgba(0, 0, 0, 0.2);
  color: #fff;
}

.bottom_fixed .tel a:hover,
.bottom_fixed .mail a:hover {
  color: #fff;
}

.bottom_fixed .tel a span,
.bottom_fixed .mail a span {
  display: block;
  line-height: 1;
}

.bottom_fixed .tel a {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#d70306+0,ae0307+100 */
  background: #d70306;
  /* Old browsers */
  background: -moz-linear-gradient(top, #d70306 0%, #ae0307 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #d70306 0%, #ae0307 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #d70306 0%, #ae0307 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d70306', endColorstr='#ae0307', GradientType=0);
  /* IE6-9 */
  position: relative;
  padding-top: 10px;
}

.bottom_fixed .tel a .num {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 5px;
}

.bottom_fixed .tel a .time {
  font-size: 14px;
}

.bottom_fixed .mail a {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e39719+0,c2511c+100 */
  background: #e39719;
  /* Old browsers */
  background: -moz-linear-gradient(top, #e39719 0%, #c2511c 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #e39719 0%, #c2511c 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #e39719 0%, #c2511c 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e39719', endColorstr='#c2511c', GradientType=0);
  /* IE6-9 */
  padding-top: 20px;
}

.bottom_fixed .mail a .txt02 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 5px;
}

.bottom_fixed .mail a .txt03 {
  font-size: 14px;
}

@media only screen and (max-width: 1366px) {

  .bottom_fixed .free {
    left: 0;
  }

  .bottom_fixed .free img {
    width: 350px;
  }

}

@media only screen and (max-width: 1200px) {

  .bottom_fixed .inner {
    padding: 2% 0 2% 28%;
  }

  .bottom_fixed .free {
    width: 27%;
  }

  .bottom_fixed .free img {
    width: 100%;
  }

  .bottom_fixed .txt01 {
    width: 20%;
  }

  .bottom_fixed .tel,
  .bottom_fixed .mail {
    width: 37%;
  }

  .bottom_fixed .tel a .num {
    font-size: 3vw;
  }

  .bottom_fixed .tel a,
  .bottom_fixed .mail a {
    height: 85px;
  }

  .bottom_fixed .tel a {
    padding-top: 3.5%;
  }

  .bottom_fixed .tel a .time {
    font-size: 1.3vw;
  }

  .bottom_fixed .mail a {
    padding-top: 5.5%;
  }

  .bottom_fixed .mail a .txt02 {
    font-size: 1.8vw;
  }

  .bottom_fixed .mail a .txt03 {
    font-size: 1.3vw;
  }
}


@media only screen and (max-width: 1000px) {

  .bottom_fixed .inner {
    padding: 1% 0 1% 24%;
  }

  .bottom_fixed .free {
    width: 23%;
  }

  .bottom_fixed .txt01 {
    width: 16%;
  }

  .bottom_fixed .tel,
  .bottom_fixed .mail {
    width: 39%;
  }

  .bottom_fixed .tel a,
  .bottom_fixed .mail a {
    padding-right: 10px;
    padding-left: 10px;
    height: 75px;
  }

  .bottom_fixed .tel a {
    padding-top: 4.5%;
  }

  .bottom_fixed .mail a {
    padding-top: 6.5%;
  }
}

@media only screen and (max-width: 768px) {

  .bottom_fixed.pc {
    display: none;
  }

  .bottom_fixed.tb {
    display: block;
    background: #1a9185;
    bottom: -500px;
  }

  .bottom_fixed .inner {
    padding: 5% 2%;
  }


  .bottom_fixed .tel,
  .bottom_fixed .mail {
    width: 100%;
  }

  .bottom_fixed .tel a,
  .bottom_fixed .mail a {
    height: auto;
    padding: 4% 10px
  }

  .bottom_fixed .tel {
    margin-bottom: 10px;
  }

  .bottom_fixed .tel a .num {
    font-size: 5vw;
  }

  .bottom_fixed .tel a:after {
    content: "";
    width: 6%;
    height: 0;
    padding: 0 0 65%;
    aspect-ratio: 43 / 66;
    background-image: url(./images/cta_section_icon01.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 12%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }

  .bottom_fixed .mail a {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e39719+0,c2511c+100 */
    background: #e39719;
    /* Old browsers */
    background: -moz-linear-gradient(top, #e39719 0%, #c2511c 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #e39719 0%, #c2511c 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #e39719 0%, #c2511c 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e39719', endColorstr='#c2511c', GradientType=0);
    /* IE6-9 */
    position: relative;
  }

  .bottom_fixed .mail a .txt02 {
    font-size: 4.2vw;
  }

}

@media only screen and (max-width: 480px) {

  .bottom_fixed .tel a,
  .bottom_fixed .mail a {
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    border: 3px solid #fff;
    -moz-box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.2);
  }

  .bottom_fixed .tel a .num {
    font-size: 6vw;
  }
}

/* ==============================================
 下層ページ（共通）
=============================================== */

#pagemv {
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  padding: 0;
}

#pagemv .mv_wrapper {
  display: table;
  width: 100%;
  height: 250px;
}

#pagemv .mv_wrapper h2 {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  padding: 0 10px;
}

#pagemv .mv_wrapper h2 span {
  display: inline-block;
  background: #fff;
  font-size: 48px;
  font-weight: bold;
  line-height: 1;
  color: #007d67;
  padding: 15px 60px;
}

.breadcrumbs {
  font-size: 14px;
  padding: 20px 0;
}

.breadcrumbs a,
.breadcrumbs a:hover {
  text-decoration: underline;
}


@media only screen and (max-width: 768px) {

  #pagemv .mv_wrapper {
    height: 200px;
  }

  #pagemv .mv_wrapper h2 span {
    font-size: 5vw;
    padding: 2% 8%;
  }

  .breadcrumbs {
    font-size: 12px;
    padding: 15px 0;
  }
}

@media only screen and (max-width: 414px) {

  #pagemv .mv_wrapper {
    height: 140px;
  }

  #pagemv .mv_wrapper h2 span {
    font-size: 5vw;
  }

  .breadcrumbs {
    font-size: 10px;
    padding: 10px 0;
  }

}


/* h2green
----------------------------------------------- */

.h2green {
  background: #22ab9d;
  color: #fff;
  font-size: 60px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  padding: 20px;
  -moz-box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 5px 5px 2px rgba(0, 0, 0, 0.2);
  margin-bottom: 60px;
}


@media only screen and (max-width: 1080px) {

  .h2green {
    font-size: 5vw;
    padding: 2%;
    margin-bottom: 5%;
  }

}

@media only screen and (max-width: 768px) {

  .h2green {
    font-size: 6vw;
  }

}

@media only screen and (max-width: 500px) {

  .h2green {
    font-size: 7vw;
    padding: 4%;
    margin-bottom: 7%;
  }

}


/* ==============================================
 当社について
=============================================== */

#company.page {
  background: url(./images/top_strength_bg01.jpg);
}

#company.page #pagemv {
  background-image: url(./images/pagemv_company.jpg);
}

@media only screen and (max-width: 768px) {

  #company.page #pagemv {
    background-image: url(./images/pagemv_company_sp.jpg);
  }

}

/* #strength
----------------------------------------------- */

#company.page #strength {
  padding: 0;
}

#company.page #strength h2 {
  font-size: 56px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-align: center;
  margin-bottom: 60px;
  text-shadow:
    4px 4px 3px #fff, -4px -4px 3px #fff,
    -4px 4px 3px #fff, 4px -4px 3px #fff,
    4px 0px 3px #fff, -4px -0px 3px #fff,
    0px 4px 3px #fff, 0px -4px 3px #fff;
}

#company.page #strength .flex01 {
  justify-content: center;
  margin-bottom: 80px;
}

#company.page #strength .flex01 li {
  width: 300px;
  text-align: center;
}

#company.page #strength .flex01 li .title {
  width: 75%;
  margin: 0 auto -30px;
  line-height: 1;
  color: #fff;
  background: #1c867b;
  font-size: 40px;
  font-weight: 900;
  font-style: oblique;
  padding: 15px 10px;
  position: relative;
  z-index: 1;
}

#company.page #strength .example {
  position: relative;
  padding-bottom: 80px;
}

#company.page #strength .example h3 {
  color: #1c867b;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  text-align: center;
  line-height: 1.2;
  margin-bottom: 40px;
  position: relative;
  z-index: 1;
}

#company.page #strength .example ul {
  position: relative;
  z-index: 1;
  margin-left: 15%;
}

#company.page #strength .example ul li {
  font-size: 32px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.4;
  margin-bottom: 10px;
  position: relative;
  padding-left: 40px;
}

#company.page #strength .example ul li::before {
  content: "";
  width: 30px;
  height: 27px;
  background-image: url(./images/top_strength_icon.png);
  aspect-ratio: 30 / 27;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#company.page #strength .example::after {
  content: "";
  width: 408px;
  height: 444px;
  background-image: url(./images/top_strength_person.png);
  aspect-ratio: 408 / 444;
  background-position: center bottom;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 5%;
}

@media only screen and (max-width: 1200px) {

  #company.page #strength h2 {
    font-size: 5vw;
    margin-bottom: 6%;
  }

  #company.page #strength .flex01 {
    margin-bottom: 7%;
  }

  #company.page #strength .flex01 li {
    max-width: 300px;
    padding: 0 5px;
  }

  #company.page #strength .flex01 li .title {
    font-size: 3.4vw;
    padding: 5% 1%;
    margin: 0 auto -10%;
  }

  #company.page #strength .example h3 {
    font-size: 4.2vw;
    margin-bottom: 5%;
  }

  #company.page #strength .example ul li {
    font-size: 2.7vw;
    padding-left: 5%;
  }

  #company.page #strength .example ul li::before {
    width: 4%;
    height: 0;
    padding: 0 0 3%;
  }

  #company.page #strength .example::after {
    width: 36%;
    height: 0;
    padding: 0 0 40%;
  }

}


@media only screen and (max-width: 768px) {

  #company.page #strength {
    padding-top: 15%;
  }

  #company.page #strength::before {
    height: 10%;
  }

  #company.page #strength h2 {
    font-size: 6.8vw;
  }

  #company.page #strength .flex01 {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  #company.page #strength .flex01 li {
    width: 32%;
    padding: 0;
  }

  #company.page #strength .example h3 {
    font-size: 7vw;
  }

  #company.page #strength .example ul {
    margin-left: 0;
  }

  #company.page #strength .example ul li {
    font-size: 3.6vw;
  }

  #company.page #strength .example::after {
    width: 40%;
    padding: 0 0 44%;
    right: 0;
  }

}

@media only screen and (max-width: 414px) {

  #company.page #strength h2 {
    font-size: 7.2vw;
    text-shadow:
      2px 2px 2px #fff, -2px -2px 2px #fff,
      -2px 2px 2px #fff, 2px -2px 2px #fff,
      2px 0px 2px #fff, -2px -0px 2px #fff,
      0px 2px 2px #fff, 0px -2px 2px #fff;
  }

  #company.page #strength .example ul li {
    font-size: 4.4vw;
  }

  #company.page #strength .example::after {
    width: 45%;
    padding: 0 0 49%;
    right: -5%;
  }

}

/* #security
----------------------------------------------- */

#company.page #security {
  background-image: url(./images/top_security_bg01.jpg);
  background-position: left top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  padding: 10% 0;
}

#company.page #security h2 {
  text-align: center;
  font-size: 65px;
  font-weight: bold;
  font-style: oblique;
  margin-bottom: 60px;
  letter-spacing: 3px;
}

#company.page #security .txt {
  width: 85%;
  margin: 0 auto;
  font-size: 30px;
  font-style: oblique;
  text-shadow:
    0px 0px 10px rgba(255, 255, 255, 1),
    0px 0px 10px rgba(255, 255, 255, 1);
}

@media only screen and (max-width: 1200px) {

  #company.page #security {
    background-position: 15% top;
  }

  #company.page #security h2 {
    font-size: 5.5vw;
    margin-bottom: 5%;
  }

  #company.page #security .txt {
    font-size: 2.4vw;
  }

}

@media only screen and (max-width: 768px) {

  #company.page #security {
    background-position: 15% top;
  }

  #company.page #security h2 {
    font-size: 8.5vw;
  }

  #company.page #security .txt {
    font-size: 4vw;
    width: 100%;
    line-height: 1.8;
  }

}

/* #greeting
----------------------------------------------- */

#company.page #greeting {
  background: #fff;
}

#company.page #greeting p {
  width: 85%;
  margin: 0 auto;
  font-size: 30px;
}

#company.page #greeting .message {
  margin-bottom: 60px;
}

#company.page #greeting .author {
  text-align: right;
}

@media only screen and (max-width: 1200px) {

  #company.page #greeting p {
    font-size: 2.5vw;
  }

  #company.page #greeting .message {
    margin-bottom: 5%;
  }

}

@media only screen and (max-width: 768px) {

  #company.page #greeting p {
    font-size: 3.5vw;
    width: 96%;
  }

}

@media only screen and (max-width: 500px) {

  #company.page #greeting p {
    font-size: 4.5vw;
  }

}

/* #company_data
----------------------------------------------- */

#company.page #company_data {
  background: #fff;
}

#company.page #company_data table {
  width: 85%;
  margin: 0 auto;
}

#company.page #company_data table,
#company.page #company_data table th,
#company.page #company_data table td {
  border: 1px solid #202020;
}

#company.page #company_data table th,
#company.page #company_data table td {
  padding: 15px;
  font-size: 30px;
}

#company.page #company_data table th {
  width: 20%;
  background: #e7fefc;
  font-weight: bold;
}

#company.page #company_data table td {
  padding-left: 5%;
}

@media only screen and (max-width: 1200px) {

  #company.page #company_data table th,
  #company.page #company_data table td {
    padding: 2%;
    font-size: 2.5vw;
  }

  #company.page #company_data table td {
    padding-left: 5%;
  }
}

@media only screen and (max-width: 600px) {

  #company.page #company_data table {
    width: 100%;
  }

  #company.page #company_data table th {
    width: 25%;
  }

  #company.page #company_data table th,
  #company.page #company_data table td {
    font-size: 3.5vw;
  }
}

/* #map
----------------------------------------------- */

#company.page #map {
  padding: 0;
}

#company.page #map .map_canvas {
  position: relative;
  padding: 0 0 40%;
  height: 0;
  overflow: hidden;
}

#company.page #map .map_canvas iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

@media only screen and (max-width: 768px) {

  #company.page #map .map_canvas {
    padding: 0 0 130%;
  }

}

/* ==============================================
 お問い合わせ
=============================================== */
#contact.page .breadcrumbs,
#contact-thanks.page .breadcrumbs {
  background: #abdcd7;
}

#contact.page .breadcrumbs p,
#contact-thanks.page .breadcrumbs p,
#contact.page .breadcrumbs p a,
#contact-thanks.page .breadcrumbs a,
#contact.page .breadcrumbs p a:hover,
#contact-thanks.page .breadcrumbs a:hover {
  color: #fff;
}

#contact.page #pagemv,
#thanks.page #pagemv,
#contact-thanks.page #pagemv {
  background-image: url(./images/pagemv_contact.jpg);
}

#contact-thanks.page .form_section {
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 80%, rgba(171, 220, 215, 1) 100%);
}

@media only screen and (max-width: 768px) {

  #contact.page #pagemv,
  #thanks.page #pagemv,
  #contact-thanks.page #pagemv {
    background-image: url(./images/pagemv_contact_sp.jpg);
  }

}

/* #promise
----------------------------------------------- */

#contact.page #promise {
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 50%, rgba(171, 220, 215, 1) 100%);
}

#contact.page #promise h2 {
  text-align: center;
  font-size: 60px;
  font-weight: bold;
  font-style: oblique;
  letter-spacing: 0;
}

#contact.page #promise h2 span {
  font-size: 80px;
  font-weight: bold;
  color: #2c897f;
}

#contact.page #promise .flex01 {
  align-items: center;
  margin-bottom: 60px;
}

#contact.page #promise .flex01 .img,
#contact.page #promise .flex01 ul {
  width: 49%;
}

#contact.page #promise .flex01 ul li {
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 30px;
}

#contact.page #promise .flex01 ul li:last-child {
  margin-bottom: 0;
}

#contact.page #promise .flex01 ul li .num {
  margin-right: 20px;
}

#contact.page #promise .flex01 ul li .txt {
  color: #007d67;
  font-size: 28px;
  font-weight: bold;
}

#contact.page #promise .message {
  text-align: center;
  font-size: 24px;
  margin-bottom: 60px;
}

#contact.page #promise .tel {
  text-align: center;
  margin-bottom: 20px;
}

#contact.page #promise .tel span {
  display: inline-block;
  color: #1c867b;
  line-height: 1;
  font-size: 80px;
  font-weight: bold;
  position: relative;
  padding-left: 80px;
}

#contact.page #promise .tel span::before {
  content: "";
  width: 70px;
  height: 70px;
  background-image: url(./images/contact_promise_icon01.png);
  aspect-ratio: 70 / 70;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#contact.page #promise .time {
  text-align: center;
  color: #1c867b;
  line-height: 1;
  font-size: 30px;
  font-weight: bold;
}

@media only screen and (max-width: 1200px) {

  #contact.page #promise h2 {
    font-size: 5vw;
  }

  #contact.page #promise h2 span {
    font-size: 7vw;
  }

  #contact.page #promise .flex01 {
    margin-bottom: 5%;
  }

  #contact.page #promise .flex01 ul li {
    margin-bottom: 4%;
  }

  #contact.page #promise .flex01 ul li .num {
    width: 22%;
    margin-right: 3%;
  }

  #contact.page #promise .flex01 ul li .txt {
    font-size: 2.3vw;
  }

  #contact.page #promise .message {
    font-size: 2vw;
    margin-bottom: 5%;
  }

  #contact.page #promise .tel span {
    font-size: 7vw;
    padding-left: 7%;
  }

  #contact.page #promise .tel span::before {
    width: 10%;
    height: 0;
    padding: 0 0 10%;
  }

  #contact.page #promise .time {
    font-size: 2.5vw;
  }

}

@media only screen and (max-width: 768px) {

  #contact.page #promise h2 {
    font-size: 6.5vw;
    margin-bottom: 4%;
  }

  #contact.page #promise h2 span {
    font-size: 8.5vw;
  }

  #contact.page #promise .flex01 {
    margin-bottom: 8%;
  }

  #contact.page #promise .flex01 .img,
  #contact.page #promise .flex01 ul {
    width: 100%;
  }

  #contact.page #promise .flex01 .img {
    margin-bottom: 8%;
  }

  #contact.page #promise .flex01 ul {
    width: 80%;
    margin: 0 auto;
  }

  #contact.page #promise .flex01 ul li .txt {
    font-size: 4vw;
  }

  #contact.page #promise .message {
    font-size: 3.5vw;
    margin-bottom: 8%
  }

  #contact.page #promise .tel span {
    font-size: 10vw;
    padding-left: 10%;
  }

  #contact.page #promise .time {
    font-size: 3.5vw;
  }

}


@media only screen and (max-width: 414px) {

  #contact.page #promise h2 {
    font-size: 8vw;
  }

  #contact.page #promise h2 span {
    font-size: 10vw;
  }

  #contact.page #promise .flex01 ul {
    width: 90%;
  }

  #contact.page #promise .flex01 ul li .txt {
    font-size: 4.5vw;
  }

  #contact.page #promise .tel {
    margin-bottom: 10px;
  }

  #contact.page #promise .tel span {
    font-size: 11vw;
    padding-left: 11%;
  }

  #contact.page #promise .time {
    font-size: 4.5vw;
  }

}

/* ==============================================
 料金一覧
=============================================== */

#price.page {
  background: url(./images/gray_grid.jpg);
}

#price.page #pagemv {
  background-image: url(./images/pagemv_price.jpg);
}

@media only screen and (max-width: 768px) {

  #price.page #pagemv {
    background-image: url(./images/pagemv_price_sp.jpg);
  }

}

#price.page h2.top {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 80px;
}

@media only screen and (max-width: 1200px) {

  #price.page h2.top {
    font-size: 6vw;
    margin-bottom: 7%;
  }

}

@media only screen and (max-width: 768px) {

  #price.page h2.top {
    font-size: 6vw;
    margin-bottom: 2%;
  }

  #price.page h2.top+p {
    text-align: center;
    font-size: 2.4vw;
    margin-bottom: 7%;
  }

}

@media only screen and (max-width: 414px) {

  #price.page h2.top {
    font-size: 8vw;
  }

  #price.page h2.top+p {
    font-size: 4vw;
  }

}

/* accordion
----------------------------------------------- */

#price.page .accordion h3 {
  font-size: 36px;
  margin-bottom: 20px;
}

#price.page .accordion h3 span {
  display: inline-block;
  font-weight: bold;
  position: relative;
  width: 100%;
  max-width: 1240px;
  padding: 0 20px;
}

#price.page .accordion h3 span::after {
  content: "";
  width: 44px;
  height: 44px;
  background-image: url(./images/accordion_open.png);
  aspect-ratio: 44 / 44;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#price.page .accordion h3 span.open::after {
  background-image: url(./images/accordion_close.png);
}

#price.page .accordion .contents {
  display: none;
  padding: 2% 0 4%;
}

#price.page .accordion .contents table {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 10px;
}

#price.page .accordion .contents table th,
#price.page .accordion .contents table td {
  font-size: 30px;
  line-height: 1.4;
  padding: 10px;
}

#price.page .accordion .contents table thead th {
  color: #2ea79b;
  font-weight: bold;
}

#price.page .accordion .contents table tbody th,
#price.page .accordion .contents table tbody td {
  background: #e7fefc;
}

#price.page .accordion .contents table tbody th {
  width: 59%;
  font-weight: bold;
  text-align: left;
  padding-left: 5%;
}

#price.page .accordion .contents table tbody td {
  width: 39%;
  text-align: right;
  padding-right: 3%;
}

@media only screen and (max-width: 1200px) {

  #price.page .accordion h3 {
    font-size: 3vw;
  }

  #price.page .accordion h3 span::after {
    width: 4%;
    height: 0;
    padding: 0 0 4%;
  }

  #price.page .accordion .contents table {
    width: 60%;
  }

  #price.page .accordion .contents table th,
  #price.page .accordion .contents table td {
    font-size: 2.7vw;
  }

}

@media only screen and (max-width: 768px) {

  #price.page .accordion h3 {
    font-size: 4vw;
    margin-bottom: 10px;
  }

  #price.page .accordion h3 span::after {
    right: 2%;
  }

  #price.page .accordion .contents {
    padding: 4% 0 7%;
  }

  #price.page .accordion .contents table {
    width: 90%;
  }

  #price.page .accordion .contents table th,
  #price.page .accordion .contents table td {
    font-size: 4vw;
  }

}

@media only screen and (max-width: 414px) {

  #price.page .accordion .contents table {
    border-spacing: 5px;
  }

}


/* ==============================================
 プライバシーポリシー
=============================================== */

#privacy-policy.page #pagemv {
  background-image: url(./images/pagemv_privacy-policy.jpg);
}

@media only screen and (max-width: 768px) {

  #privacy-policy.page #pagemv {
    background-image: url(./images/pagemv_privacy-policy_sp.jpg);
  }

}

#privacy-policy #sec01 p,
#privacy-policy #sec01 ul {
  margin-bottom: 30px;
  font-size: 20px;
}

#privacy-policy #sec01 h3 {
  font-size: 22px;
  font-weight: bold;
}

#privacy-policy #sec01 ul {
  margin-left: 30px;
}

#privacy-policy #sec01 ul li {
  list-style-type: disc;
  list-style-position: outside;
}


#privacy-policy #sec01 .btn {
  text-align: center;
  margin-top: 80px;
}

#privacy-policy #sec01 .btn a {
  display: inline-block;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  padding: 23px 120px;
  line-height: 1;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}

#privacy-policy #sec01 .btn a:hover {
  color: #fff;
}


@media only screen and (max-width: 1200px) {

  #privacy-policy #sec01 p,
  #privacy-policy #sec01 ul {
    margin-bottom: 3%;
    font-size: 2vw;
  }

  #privacy-policy #sec01 h3 {
    font-size: 2.2vw;
  }

  #privacy-policy #sec01 ul {
    margin-left: 3%;
  }

  #privacy-policy #sec01 .btn {
    margin-top: 8%;
  }

  #privacy-policy #sec01 .btn a {
    font-size: 2.4vw;
    padding: 2% 13%;
  }

}

@media only screen and (max-width: 768px) {

  #privacy-policy #sec01 p,
  #privacy-policy #sec01 ul {
    font-size: 3vw;
  }

  #privacy-policy #sec01 h3 {
    font-size: 3.2vw;
  }

  #privacy-policy #sec01 ul {
    margin-left: 5%;
  }

  #privacy-policy #sec01 .btn a {
    font-size: 3.4vw;
    padding: 3.5% 20%;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  }

}

@media only screen and (max-width: 480px) {

  #privacy-policy #sec01 p,
  #privacy-policy #sec01 ul {
    font-size: 4vw;
    line-height: 1.8;
    margin-bottom: 7%;
  }

  #privacy-policy #sec01 h3 {
    font-size: 4.2vw;
  }


  #privacy-policy #sec01 .btn a {
    font-size: 4.4vw;
    padding: 5% 30%;
  }

}


/* ==============================================
 よくある質問
=============================================== */

#faq.page {
  background: url(./images/gray_grid.jpg);
}

#faq.page #pagemv {
  background-image: url(./images/pagemv_faq.jpg);
}

@media only screen and (max-width: 768px) {

  #faq.page #pagemv {
    background-image: url(./images/pagemv_faq_sp.jpg);
  }

}

#faq.page h2.top {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 80px;
}

@media only screen and (max-width: 1200px) {

  #faq.page h2.top {
    font-size: 6vw;
    margin-bottom: 7%;
  }

}

@media only screen and (max-width: 768px) {

  #faq.page h2.top {
    font-size: 6vw;
  }

}

@media only screen and (max-width: 414px) {

  #faq.page h2.top {
    font-size: 8vw;
  }

  #faq.page h2.top+p {
    font-size: 4vw;
  }

}

#faq.page .ans .btn {
  text-align: center;
  margin-top: 40px;
}

#faq.page .ans .btn a {
  display: inline-block;
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  padding: 40px 120px;
  line-height: 1;
  letter-spacing: 3px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
  box-shadow: 4px 8px 2px 4px rgba(0, 0, 0, 0.1);
}


#faq.page .ans .btn a:hover {
  color: #fff;
}


@media only screen and (max-width: 1200px) {

  #faq.page .ans .btn {
    margin-top: 5%;
  }

  #faq.page .ans .btn a {
    font-size: 3vw;
    padding: 3% 10%;
  }

}


@media only screen and (max-width: 768px) {


  #faq.page .ans .btn a {
    font-size: 4.4vw;
    padding: 4% 10%;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  }


}


@media only screen and (max-width: 414px) {

  #faq.page .ans .btn a {
    letter-spacing: 2px;
    padding: 6% 10%;
  }

}

/* ==============================================
 サービスメニュー
=============================================== */

#service.page .breadcrumbs {
  background: #abdcd7;
}

#service.page .breadcrumbs p,
#service.page .breadcrumbs p a,
#service.page .breadcrumbs p a:hover {
  color: #fff;
}

#service.page #pagemv {
  background-image: url(./images/pagemv_service.jpg);
}

@media only screen and (max-width: 768px) {

  #service.page #pagemv {
    background-image: url(./images/pagemv_service_sp.jpg);
  }

}

#service.page #sec01 h2 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 60px;
}

@media only screen and (max-width: 1200px) {

  #service.page #sec01 h2 {
    font-size: 6vw;
    margin-bottom: 5%;
  }

}

@media only screen and (max-width: 768px) {

  #service.page #sec01 h2 {
    font-size: 6vw;
  }

}

@media only screen and (max-width: 414px) {

  #service.page #sec01 h2 {
    font-size: 8vw;
  }

}

/* #sec01
----------------------------------------------- */

#service.page #sec01 {
  padding: 0;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 80%, rgba(171, 220, 215, 1) 100%);
}

#service.page #sec01 ul {
  flex-wrap: wrap;
}

#service.page #sec01 ul li {
  width: 33%;
  padding: 0 10px;
  margin-bottom: 20px;
}

#service.page #sec01 ul li .box {
  border: 4px solid #27ad9f;
  background: #fff;
  padding: 30px 20px;
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

#service.page #sec01 ul li .box .img {
  margin-bottom: 20px;
}

#service.page #sec01 ul li .menu_title {
  line-height: 1.2;
  font-size: 32px;
  font-weight: bold;
  border-left: 7px solid #27ad9f;
  padding-left: 7px;
  margin-bottom: 10px;
}

#service.page #sec01 ul li .txt {
  font-size: 24px;
  line-height: 1.2;
  margin-bottom: 20px;
}

#service.page #sec01 ul li .btn {
  writing-mode: horizontal-tb;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}


#service.page #sec01 ul li .btn a {
  display: inline-block;
  font-size: 20px;
  color: #fff;
  padding: 10px 40px;
  line-height: 1;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  -moz-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 4px 2px 3px rgba(0, 0, 0, 0.1);
}

#service.page #sec01 ul li .btn a:hover {
  color: #fff;
}

@media only screen and (max-width: 1200px) {

  #service.page #sec01 ul li {
    margin-bottom: 2%;
  }

  #service.page #sec01 ul li .box {
    padding: 8% 6%;
  }

  #service.page #sec01 ul li .box .img {
    margin-bottom: 7%;
  }

  #service.page #sec01 ul li .menu_title {
    font-size: 2.8vw;
    margin-bottom: 4%;
  }

  #service.page #sec01 ul li .txt {
    font-size: 2vw;
    margin-bottom: 6%;
  }

  #service.page #sec01 ul li .btn a {
    font-size: 2vw;
    padding: 4% 15%;
  }

}

@media only screen and (max-width: 768px) {

  #service.page #sec01 ul li {
    width: 49%;
    padding: 0;
    margin-bottom: 4%;
  }

  #service.page #sec01 ul li .menu_title {
    font-size: 3.8vw;
    margin-bottom: 6%;
  }

  #service.page #sec01 ul li .txt {
    font-size: 3vw;
    margin-bottom: 8%;
  }

  #service.page #sec01 ul li .btn a {
    font-size: 3vw;
  }

}

@media only screen and (max-width: 480px) {

  #service.page #sec01 .inner {
    padding: 0 10px;
  }

  #service.page #sec01 ul li .box {
    border: 3px solid #27ad9f;
  }

  #service.page #sec01 ul li .menu_title {
    font-size: 4.6vw;
    border-left: 5px solid #27ad9f;
    padding-left: 5px;
  }

  #service.page #sec01 ul li .txt {
    font-size: 3.6vw;
  }

  #service.page #sec01 ul li .btn a {
    font-size: 3.6vw;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
    box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  }

}

/* #sec02
----------------------------------------------- */

#service.page #sec02 {
  background: rgba(44, 167, 154, 1);
}

#service.page #sec02 .free {
  padding-top: 90px;
  background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(44, 167, 154, 1) 75%, rgba(255, 255, 255, 1) 100%);
  margin-bottom: -70px;
}

@media only screen and (max-width: 1200px) {

  #service.page #sec02 .free {
    padding-top: 8%;
    margin-bottom: -5%;
  }

  #service.page #sec02 .free img {
    width: 80%;
  }

}

@media only screen and (max-width: 768px) {

  #service.page #sec02 {
    margin-top: -10%;
  }

  #service.page #sec02 .free {
    padding-top: 15%;
    background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(162, 216, 211, 1) 85%, rgba(255, 255, 255, 1) 100%);
  }

  #service.page #sec02 .free img {
    width: 94%;
  }

}


/* ==============================================
 freeeditor
=============================================== */

.freeeditor h1 {
  text-align: left;
  font-size: 140%;
  font-weight: bold;
  border-bottom: 3px solid #e8e7e3;
  padding-bottom: 5px;
  margin-bottom: 20px;
}

.freeeditor h2 {
  text-align: left;
  border: none;
  font-size: 130%;
  font-weight: bold;
  border-bottom: 2px solid #e8e7e3;
  padding-left: 0;
  padding-bottom: 5px;
  margin-bottom: 20px;
}

.freeeditor h3 {
  text-align: left;
  font-size: 120%;
  font-weight: bold;
  border-bottom: 1px solid #e8e7e3;
  padding-bottom: 5px;
  margin-bottom: 10px;
}

.freeeditor h4 {
  text-align: left;
  font-size: 110%;
  font-weight: bold;
  margin-bottom: 10px;
}

.freeeditor h5 {
  text-align: left;
  font-weight: bold;
  margin-bottom: 10px;
}

.freeeditor strong {
  font-weight: bold;
}

.freeeditor img.alignright {
  display: block;
  margin: 0 0 0 auto;
}

/* 配置位置 右 */
.freeeditor img.alignleft {
  display: block;
  margin: 0 auto 0 0;
}

/* 配置位置 左 */
.freeeditor img.aligncenter {
  display: block;
  margin: 0 auto;
}

/* 配置位置 中央 */

.freeeditor img {
  width: auto;
  max-width: 100%;
}

@media only screen and (max-width: 768px) {

  .freeeditor iframe {
    width: 100%;
  }

}


/* ==============================================
  wp-pagenavi
=============================================== */

.wp-pagenavi_block .wp-pagenavi {
  text-align: center;
  padding: 50px 0;
  position: relative;
}

.wp-pagenavi_block .wp-pagenavi span,
.wp-pagenavi_block .wp-pagenavi a {
  padding: 5px 8px;
  margin-left: 5px;
  border: 1px #007d67 solid;
  background: #fff;
  color: #007d67;
  font-size: 20px;
  line-height: 1;
  -webkit-border-radius: 100px;
  -moz-border-radius: 100px;
  border-radius: 100px;
  display: inline-block;
}

.wp-pagenavi_block .wp-pagenavi span.current {
  background: #007d67;
  color: #fff;
}

@media only screen and (max-width: 768px) {

  .wp-pagenavi_block .wp-pagenavi span,
  .wp-pagenavi_block .wp-pagenavi a {
    font-size: 16px;
  }
}

@media only screen and (max-width: 414px) {

  .wp-pagenavi_block .wp-pagenavi span,
  .wp-pagenavi_block .wp-pagenavi a {
    font-size: 14px;
  }
}



/* ==============================================
  shingle pagenavi
=============================================== */

.pagenavi {
  text-align: center;
  font-size: 18px;
}

.pagenavi span a {
  display: inline-block;
  text-align: center;
}

/* .pagenavi .prev a,
.pagenavi .next a {
}

.pagenavi .prev a::before {
  content: "<";
  display: inline-block;
  padding-right: 20px;
}

.pagenavi .next a::after {
  content: ">";
  display: inline-block;
  padding-left: 20px;
} */

.pagenavi .gotolist a {
  display: inline-block;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  width: 290px;
  padding: 10px;
  margin: 0 30px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 768px) {

  .pagenavi {
    font-size: 16px;
    margin-bottom: 60px;
  }

  .pagenavi .gotolist a {
    font-size: 18px;
    width: 260px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    border-radius: 12px;
    padding: 15px 10px;
  }

  .pagenavi span {
    display: block;
    margin-bottom: 20px;
  }
}

@media only screen and (max-width: 414px) {

  .pagenavi {
    font-size: 14px;
    margin-bottom: 40px;
  }

}

/* ==============================================
 施工事例
=============================================== */

.case.page #pagemv {
  background-image: url(./images/pagemv_case.jpg);
}

@media only screen and (max-width: 768px) {

  .case.page #pagemv {
    background-image: url(./images/pagemv_case_sp.jpg);
  }

}

.case.page #pagemv .mv_wrapper h2 span {
  color: #fff;
  background: #1a9185;
  font-style: oblique;
}

.case.page .breadcrumbs {
  background: #ededed;
}

/* single case
----------------------------------------------- */

#single_case #sec01 {
  padding-bottom: 0;
}

#single_case .data_block {
  max-width: 960px;
  margin: 0 auto 60px;
  border-bottom: 5px solid #1a9185;
  padding-bottom: 40px;
  text-align: center;
}

#single_case .data_block .cate {
  margin-bottom: 40px;
}

#single_case .data_block .cate span {
  display: inline-block;
  line-height: 1;
  background: #cdcdcd;
  font-size: 24px;
  padding: 8px 20px;
  margin: 0 15px 10px 0;
}

#single_case .data_block .cate span:last-child {
  margin: 0;
}

#single_case .data_block .date {
  font-size: 18px;
  margin-bottom: 60px;
}

#single_case .data_block h3 {
  font-size: 48px;
  font-weight: bold;
  line-height: 1.4;
}

#single_case .contents_block {
  max-width: 860px;
  margin: 0 auto;
}

#single_case .contents_block .main_img {
  max-width: 650px;
  margin: 0 auto 60px;
}

#single_case .contents_block .content {
  max-width: 870px;
  margin: 0 auto;
  font-size: 20px;
}

@media only screen and (max-width: 1200px) {

  #single_case .data_block {
    padding-bottom: 4%;
    margin-bottom: 6%;
  }

  #single_case .data_block .cate {
    margin-bottom: 4%;
  }

  #single_case .data_block .cate span {
    font-size: 2vw;
    padding: 1% 2%;
    margin: 0 1.5% 1% 0;
  }

  #single_case .data_block .date {
    font-size: 1.8vw;
    margin-bottom: 6%;
  }

  #single_case .data_block h3 {
    font-size: 4vw;
  }

  #single_case .contents_block .main_img {
    margin-bottom: 7%;
  }

  #single_case .contents_block .content {
    font-size: 18px;
  }

}

@media only screen and (max-width: 768px) {

  #single_case .data_block {
    text-align: left;
  }

  #single_case .data_block .cate {
    margin-bottom: 10px;
  }

  #single_case .data_block .cate span {
    font-size: 16px;
    padding: 8px 10px;
    margin: 0 10px 10px 0;
  }

  #single_case .data_block .cate span:last-child {
    margin: 0;
  }

  #single_case .data_block .date {
    font-size: 16px;
    margin-bottom: 10px;
  }

  #single_case .data_block h3 {
    font-size: 22px;
  }

  #single_case .contents_block .main_img {
    margin-bottom: 30px;
  }

  #single_case .contents_block .content {
    font-size: 18px;
  }
}

@media only screen and (max-width: 414px) {

  #single_case .data_block h3 {
    font-size: 20px;
  }

  #single_case .contents_block .content {
    font-size: 14px;
    line-height: 1.8;
  }
}

/* archive case
----------------------------------------------- */

#archive_case {
  background: url(./images/gray_grid.jpg);
}

#archive_case .cate_block h3 {
  text-align: center;
  color: #1a9185;
  font-size: 36px;
  font-weight: bold;
  margin-bottom: 40px;
}

#archive_case .cate_block ul {
  flex-wrap: wrap;
  justify-content: flex-start;
  max-width: 820px;
  margin: 0 auto;
}

#archive_case .cate_block ul li {
  width: 25%;
  padding: 0 5px;
  margin-bottom: 10px;
}

#archive_case .cate_block ul li a {
  display: table;
  position: relative;
  border: 3px solid #1a9185;
  background: #fff;
  width: 100%;
  height: 62px;
}

#archive_case .cate_block ul li a,
#archive_case .cate_block ul li a:hover {
  color: #1a9185;
}

#archive_case .cate_block ul li a span {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  padding: 0 40px 0 30px;
}

#archive_case .cate_block ul li a::after {
  content: "";
  width: 22px;
  height: 21px;
  background-image: url(./images/archive_case_icon01.png);
  aspect-ratio: 22 / 21;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#archive_case #sec01 h3 {
  background: #1a9185;
  text-align: center;
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.2;
  padding: 30px 10px;
  margin-bottom: 60px;
}

#archive_case #sec01 .case_list {
  flex-wrap: wrap;
  justify-content: flex-start;
}

#archive_case #sec01 .case_list li {
  width: 25%;
  padding: 0 5px;
  margin-bottom: 30px;
}

#archive_case #sec01 .case_list li .archive_case_list .img {
  margin-bottom: 20px;
}

#archive_case #sec01 .case_list li .archive_case_list .title {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 10px;
}

#archive_case #sec01 .case_list li .archive_case_list .cate {
  text-align: center;
}

#archive_case #sec01 .case_list li .archive_case_list .cate span {
  display: inline-block;
  line-height: 1;
  background: #cdcdcd;
  font-size: 14px;
  padding: 8px 10px;
  margin: 0 5px 5px 0;
}

#archive_case #sec01 .case_list li .archive_case_list .btn {
  margin-top: 10px;
  text-align: center;
}

#archive_case #sec01 .case_list li .archive_case_list .btn a {
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  padding: 12px 30px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#22ab9d+0,3fbeb1+100 */
  background: #22ab9d;
  /* Old browsers */
  background: -moz-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #22ab9d 0%, #3fbeb1 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #22ab9d 0%, #3fbeb1 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22ab9d', endColorstr='#3fbeb1', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border-radius: 18px;
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 1200px) {

  #archive_case #sec01 .case_list li .archive_case_list .title {
    font-size: 1.6vw;
  }

  #archive_case #sec01 .case_list li .archive_case_list .cate span {
    font-size: 1.2vw;
  }

  #archive_case #sec01 .case_list li .archive_case_list .btn a {
    font-size: 1.4vw;
    padding: 4% 10%;
  }

}

@media only screen and (max-width: 860px) {

  #archive_case .cate_block ul li a span {
    font-size: 2vw;
    padding: 0 20% 0 12%;
  }

}

@media only screen and (max-width: 768px) {

  #archive_case .cate_block h3 {
    font-size: 5vw;
    margin-bottom: 2%;
  }

  #archive_case .cate_block .cate_block_btn {
    background: #007d67;
    color: #fff;
    font-size: 4vw;
    font-weight: bold;
    padding: 2% 10px;
    text-align: center;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
    box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
    position: relative;
  }

  #archive_case .cate_block .cate_block_btn::after {
    content: "";
    width: 4%;
    height: 0;
    padding: 0 0 3%;
    background-image: url(./images/cate_block_btn_open.png);
    aspect-ratio: 31 / 26;
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 4%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }

  #archive_case .cate_block .cate_block_btn.open::after {
    background-image: url(./images/cate_block_btn_close.png);
  }

  #archive_case .cate_block .contents {
    display: none;
  }

  #archive_case .cate_block .contents {
    padding-top: 4%;
  }

  #archive_case .cate_block ul li {
    width: 50%;
  }

  #archive_case .cate_block ul li a {
    height: 90px;
  }

  #archive_case .cate_block ul li a span {
    font-size: 4vw;
  }

  #archive_case #sec01 .inner {
    padding: 0;
  }

  #archive_case #sec01 h3 {
    font-size: 5vw;
    padding: 4% 10px;
    margin-bottom: 8%;
  }

  #archive_case #sec01 .case_list li {
    width: 96%;
    margin: 0 auto 9%;
  }

  #archive_case #sec01 .case_list li .archive_case_list .title {
    font-size: 4vw;
  }

  #archive_case #sec01 .case_list li .archive_case_list .cate span {
    font-size: 4vw;
  }

  archive_case #sec01 .case_list li .archive_case_list .btn {
    margin-top: 20px;
  }

  #archive_case #sec01 .case_list li .archive_case_list .btn a {
    font-size: 4vw;
    padding: 2% 15%;
  }

}

@media only screen and (max-width: 480px) {

  #archive_case .cate_block h3 {
    font-size: 6vw;
  }

  #archive_case .cate_block .cate_block_btn {
    font-size: 5vw;
  }

  #archive_case .cate_block ul li a {
    height: 70px;
  }

  #archive_case .cate_block ul li a::after {
    width: 16px;
    height: 16px;
    right: 8px;
  }

  #archive_case #sec01 .case_list li .archive_case_list .btn a {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    padding: 4% 15%;
  }

}

@media only screen and (max-width: 375px) {

  #archive_case .cate_block ul li a {
    height: 60px;
  }

}


/* ==============================================
 新着情報
=============================================== */

.news.page #pagemv {
  background-image: url(./images/pagemv_news.jpg);
}

@media only screen and (max-width: 768px) {

  .news.page #pagemv {
    background-image: url(./images/pagemv_news_sp.jpg);
  }

}

.news.page #pagemv .mv_wrapper h2 span {
  color: #fff;
  background: #1a9185;
  font-style: oblique;
}

.news.page .breadcrumbs {
  background: #ededed;
}

/* single news
----------------------------------------------- */

#single_news #sec01 {
  padding-bottom: 0;
}

#single_news .data_block {
  max-width: 960px;
  margin: 0 auto 60px;
  border-bottom: 5px solid #1a9185;
  padding-bottom: 40px;
  text-align: center;
}

#single_news .data_block .date {
  font-size: 18px;
  margin-bottom: 60px;
}

#single_news .data_block h3 {
  font-size: 48px;
  font-weight: bold;
  line-height: 1.4;
  color: #007d67;
}

#single_news .contents_block {
  max-width: 860px;
  margin: 0 auto;
}

#single_news .contents_block .main_img {
  max-width: 650px;
  margin: 0 auto 60px;
}

#single_news .contents_block .content {
  max-width: 870px;
  margin: 0 auto;
  font-size: 20px;
}

@media only screen and (max-width: 1200px) {

  #single_news .data_block {
    padding-bottom: 4%;
    margin-bottom: 6%;
  }

  #single_news .data_block .date {
    font-size: 1.8vw;
    margin-bottom: 6%;
  }

  #single_news .data_block h3 {
    font-size: 4vw;
  }

  #single_news .contents_block .main_img {
    margin-bottom: 7%;
  }

  #single_news .contents_block .content {
    font-size: 18px;
  }

}

@media only screen and (max-width: 768px) {

  #single_news .data_block {
    text-align: left;
  }

  #single_news .data_block .date {
    font-size: 16px;
    margin-bottom: 10px;
  }

  #single_news .data_block h3 {
    font-size: 22px;
  }

  #single_news .contents_block .main_img {
    margin-bottom: 30px;
  }

  #single_news .contents_block .content {
    font-size: 18px;
  }
}

@media only screen and (max-width: 414px) {

  #single_news .data_block h3 {
    font-size: 20px;
  }

  #single_news .contents_block .content {
    font-size: 14px;
    line-height: 1.8;
  }
}

/* archive news
----------------------------------------------- */

#archive_news #sec01 {
  padding-bottom: 0;
}

#archive_news #sec01 h3 {
  font-size: 36px;
  font-weight: bold;
  border-left: 5px solid #1a9185;
  padding-left: 10px;
  width: 80%;
  margin: 0 auto 60px;
}

#archive_news #sec01 .news_list {
  width: 65%;
  margin-left: 15%;
}

#archive_news #sec01 .news_list li {
  margin-bottom: 30px;
}

#archive_news #sec01 .news_list li a .img {
  max-width: 105px;
  margin-right: 20px;
}

#archive_news #sec01 .news_list li a .right {
  width: 80%;
}

#archive_news #sec01 .news_list li a .right .date {
  color: #202020;
  font-size: 18px;
  line-height: 1;
  margin-bottom: 10px;
}

#archive_news #sec01 .news_list li a .right .title {
  font-size: 24px;
  font-weight: bold;
  color: #007d67;
  line-height: 1.4;
}

@media only screen and (max-width: 1200px) {

  #archive_news #sec01 h3 {
    font-size: 2.8vw;
    margin-bottom: 5%;
  }

  #archive_news #sec01 .news_list li {
    margin-bottom: 4%;
  }

  #archive_news #sec01 .news_list li a .right .date {
    font-size: 1.4vw;
  }

  #archive_news #sec01 .news_list li a .right .title {
    font-size: 1.8vw;
  }

}

@media only screen and (max-width: 768px) {

  #archive_news #sec01 h3 {
    width: 100%;
    font-size: 5vw;
  }

  #archive_news #sec01 .news_list {
    width: 100%;
    margin-left: auto;
  }

  #archive_news #sec01 .news_list li a {
    flex-wrap: nowrap;
  }

  #archive_news #sec01 .news_list li a .img {
    max-width: initial;
    width: 15%;
    margin-right: 0;
  }

  #archive_news #sec01 .news_list li a .right {
    width: 82%;
  }

  #archive_news #sec01 .news_list li a .right .date {
    font-size: 2.6vw;
  }

  #archive_news #sec01 .news_list li a .right .title {
    font-size: 3.2vw;
  }

}

@media only screen and (max-width: 414px) {

  #archive_news #sec01 h3 {
    font-size: 5vw;
    margin-bottom: 8%;
  }

  #archive_news #sec01 .news_list li {
    margin-bottom: 6%;
  }

  #archive_news #sec01 .news_list li a .img {
    width: 20%;
  }

  #archive_news #sec01 .news_list li a .right {
    width: 77%;
  }

  #archive_news #sec01 .news_list li a .right .date {
    font-size: 3.6vw;
  }

  #archive_news #sec01 .news_list li a .right .title {
    font-size: 3.6vw;
  }

}

/* ==============================================
 エアコンクリーニング・洗浄
=============================================== */

article.service.page .breadcrumbs {
  background: url(./images/top_trouble_bg01.jpg);
}

article.service.page .breadcrumbs p,
article.service.page .breadcrumbs p a,
article.service.page .breadcrumbs p a:hover {
  color: #fff;
}

#airconcleaning.page #pagemv {
  background-image: url(./images/pagemv_airconcleaning.jpg);
}

@media only screen and (max-width: 768px) {

  #airconcleaning.page #pagemv {
    background-image: url(./images/pagemv_airconcleaning_sp.jpg);
  }

}

/* #sec01
----------------------------------------------- */

article.service.page #sec01 {
  padding: 0;
  background: url(./images/top_trouble_bg01.jpg);
}

article.service.page #sec01 h3 {
  text-align: center;
}

article.service.page #sec01 .trouble_list {
  flex-wrap: wrap;
}

article.service.page #sec01 .trouble_list li {
  width: 25%;
  padding: 0 5px;
  margin-bottom: 40px;
}

article.service.page #sec01 .trouble_list li h4 {
  display: table;
  width: 100%;
}

article.service.page #sec01 .trouble_list li h4 span {
  display: table-cell;
  width: 100%;
  text-align: center;
  vertical-align: middle;
  background: #007d67;
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.2;
  padding: 10px;
}

article.service.page #sec01 .lower {
  background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 0) 100%);
  padding-bottom: 80px;
}

article.service.page #sec01 .lower .arrow {
  padding: 60px 0 20px;
}

article.service.page #sec01 .lower .txt {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.4;
}

article.service.page #sec01 .lower .txt span {
  color: #007d67;
  font-weight: 900;
}

@media only screen and (max-width: 1200px) {

  article.service.page #sec01 h3 img {
    width: 50%;
  }

  article.service.page #sec01 .trouble_list li h4 span {
    font-size: 2.2vw;
  }

  article.service.page #sec01 .trouble_list li {
    margin-bottom: 3%;
  }

  article.service.page #sec01 .lower {
    padding-bottom: 6.7%;
  }

  article.service.page #sec01 .lower .arrow {
    padding: 5% 0 2%;
  }

  article.service.page #sec01 .lower .arrow img {
    width: 50%;
  }

  article.service.page #sec01 .lower .txt {
    font-size: 3.8vw;
  }

}

@media only screen and (max-width: 768px) {

  article.service.page #sec01 h3 img {
    width: 80%;
  }

  article.service.page #sec01 .trouble_list li {
    width: 49%;
    padding: 0;
  }

  article.service.page #sec01 .trouble_list li .img img {
    max-width: initial;
    width: 100%;
  }

  article.service.page #sec01 .trouble_list li h4 span {
    font-size: 4.2vw;
  }

  article.service.page #sec01 .lower .arrow img {
    width: 90%;
  }

  article.service.page #sec01 .lower .txt {
    font-size: 6vw;
  }
}

/* #sec02
----------------------------------------------- */

article.service.page #sec02 {
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 80%, rgba(171, 220, 215, 1) 100%);
  padding-bottom: 0;
}

article.service.page #sec02 h3 {
  text-align: center;
  font-size: 56px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

article.service.page #sec02 .price_list {
  flex-wrap: wrap;
  width: 700px;
  margin: 0 auto;
}

article.service.page #sec02 .price_list li {
  width: 50%;
  padding: 0 10px;
  margin-bottom: 30px;
}

article.service.page #sec02 .price_list li .box {
  background: #fff;
  -moz-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  padding: 30px 20px;
}

article.service.page #sec02 .price_list li .box p {
  line-height: 1.4;
}

article.service.page #sec02 .price_list li .box .img {
  margin-bottom: 15px;
}

article.service.page #sec02 .price_list li .box .menu_title {
  font-size: 24px;
  font-weight: bold;
  border-left: 7px solid #27ad9f;
  padding-left: 12px;
  margin-bottom: 5px;
}

article.service.page #sec02 .price_list li .box .price {
  font-size: 24px;
  font-weight: bold;
  color: #ff0000;
  margin-bottom: 10px;
}

article.service.page #sec02 .price_list li .box .txt {
  font-size: 20px;
}

article.service.page #sec02 .free {
  margin-top: -10%;
  padding-top: 15%;
  background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(44, 167, 154, 1) 60%, rgba(255, 255, 255, 1) 100%);
}


@media only screen and (max-width: 1200px) {

  article.service.page #sec02 h3 {
    font-size: 4.8vw;
    margin-bottom: 5%;
  }

  article.service.page #sec02 .price_list {
    width: 60%;
  }

  article.service.page #sec02 .price_list li .box {
    padding: 10% 5%;
  }

  article.service.page #sec02 .price_list li .box .img {
    margin-bottom: 5%;
  }

  article.service.page #sec02 .price_list li .box .menu_title {
    font-size: 2vw;
  }

  article.service.page #sec02 .price_list li .box .price {
    font-size: 2vw;
    margin-bottom: 3%;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 1.6vw;
  }

  article.service.page #sec02 .free img {
    width: 80%;
  }

}

@media only screen and (max-width: 768px) {

  article.service.page #sec02 h3 {
    font-size: 7vw;
  }

  article.service.page #sec02 .price_list {
    width: 90%;
  }

  article.service.page #sec02 .price_list li {
    width: 49%;
    padding: 0;
  }

  article.service.page #sec02 .price_list li .box .menu_title {
    font-size: 20px;
  }

  article.service.page #sec02 .price_list li .box .price {
    font-size: 20px;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 16px;
  }

  article.service.page #sec02 .free {
    background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(162, 216, 211, 1) 85%, rgba(255, 255, 255, 1) 100%);
  }

  article.service.page #sec02 .free img {
    width: 94%;
  }

}


@media only screen and (max-width: 500px) {

  article.service.page #sec02 .price_list li .box .menu_title {
    font-size: 16px;
    border-left: 5px solid #27ad9f;
    padding-left: 5px;
  }

  article.service.page #sec02 .price_list li .box .price {
    font-size: 16px;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 14px;
  }

}


@media only screen and (max-width: 375px) {

  article.service.page #sec02 .price_list {
    width: 94%;
  }

  article.service.page #sec02 .price_list li .box .menu_title {
    font-size: 14px;
  }

  article.service.page #sec02 .price_list li .box .price {
    font-size: 14px;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 12px;
  }

}

/* #recommended
----------------------------------------------- */

#airconcleaning.page #recommended {
  background: #e7fefc;
  padding-bottom: 0;
}

#airconcleaning.page #recommended h3 {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 90px;
}


#airconcleaning.page #recommended ul {
  flex-wrap: wrap;
  width: 600px;
  margin: 0 auto;
}

#airconcleaning.page #recommended ul li {
  width: 50%;
  padding: 0 10px;
  margin-bottom: 50px;
}

#airconcleaning.page #recommended ul li .box {
  background: #fff;
  -moz-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  padding: 30px 20px;
}

#airconcleaning.page #recommended ul li .box p {
  line-height: 1.4;
}

#airconcleaning.page #recommended ul li .box .title {
  background: #007d67;
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  width: 90%;
  padding: 10px;
  margin: -55px auto 20px;
}

#airconcleaning.page #recommended ul li .box .img {
  margin-bottom: 15px;
  position: relative;
}

#airconcleaning.page #recommended ul li .box .img::after {
  content: "";
  display: block;
  width: 90%;
  height: 4px;
  background: #007d67;
  margin: 10px auto;
}

#airconcleaning.page #recommended ul li .box .price {
  font-size: 24px;
  font-weight: bold;
  color: #ff0000;
  margin-bottom: 10px;
}

#airconcleaning.page #recommended ul li .box .txt {
  font-size: 20px;
}

article.service.page .sky_block {
  background-image: url(./images/service_common_sky_block_bg01.png);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

article.service.page .sky_block .inner {
  position: relative;
  padding: 5% 0 5% 5%;
}

article.service.page .sky_block .inner::after {
  content: "";
  width: 435px;
  height: 500px;
  background-image: url(./images/service_common_sky_block_img01.png);
  aspect-ratio: 435 / 500;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  bottom: 0;
  right: 0;
}

#airconcleaning.page .sky_block .txt01 {
  font-size: 48px;
  font-weight: bold;
  text-shadow:
    3px 3px 3px #fff, -3px -3px 3px #fff,
    -3px 3px 3px #fff, 3px -3px 3px #fff,
    3px 0px 3px #fff, -3px -0px 3px #fff,
    0px 3px 3px #fff, 0px -3px 3px #fff;
  line-height: 1.2;
  margin-bottom: 60px;
}

article.service.page .sky_block .main {
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
  color: #3fbeb1;
}

article.service.page .sky_block .main .orange {
  color: #ffae00;
  font-size: 72px;
  font-weight: 900;
}

article.service.page .sky_block .main .store {
  color: #007d67;
  font-size: 72px;
  font-weight: 900;
}

@media only screen and (max-width: 1200px) {

  #airconcleaning.page #recommended h3 {
    font-size: 4vw;
    margin-bottom: 8%;
  }

  #airconcleaning.page #recommended ul {
    width: 55%;
  }

  #airconcleaning.page #recommended ul li .box {
    padding: 10% 5%;
  }

  #airconcleaning.page #recommended ul li .box .title {
    padding: 4%;
    font-size: 2vw;
    margin: -20% auto 5%;
  }

  #airconcleaning.page #recommended ul li .box .img {
    margin-bottom: 5%;
  }

  #airconcleaning.page #recommended ul li .box .price {
    font-size: 2vw;
    margin-bottom: 3%;
  }

  #airconcleaning.page #recommended ul li .box .txt {
    font-size: 1.6vw;
  }

  #airconcleaning.page .sky_block .txt01 {
    font-size: 4vw;
    margin-bottom: 5%;
  }

  article.service.page .sky_block .main {
    font-size: 5vw;
  }

  article.service.page .sky_block .main .orange,
  article.service.page .sky_block .main .store {
    font-size: 6vw;
  }

  article.service.page .sky_block .inner::after {
    width: 37%;
    height: 0;
    padding: 0 0 43%;
  }

}

@media only screen and (max-width: 768px) {

  #airconcleaning.page #recommended h3 {
    font-size: 6vw;
    margin-bottom: 12%;
  }

  #airconcleaning.page #recommended ul {
    width: 100%;
  }

  #airconcleaning.page #recommended ul li {
    width: 49%;
    padding: 0;
  }

  #airconcleaning.page #recommended ul li .box .title {
    font-size: 3vw;
    width: 96%;
  }

  #airconcleaning.page #recommended ul li .box .price {
    font-size: 20px;
  }

  #airconcleaning.page #recommended ul li .box .txt {
    font-size: 16px;
  }

  article.service.page .sky_block .inner {
    padding-left: 2%;
  }

  #airconcleaning.page .sky_block .txt01 {
    font-size: 6vw;
    position: relative;
    z-index: 1;
  }

  article.service.page .sky_block .main {
    font-size: 7vw;
    position: relative;
    z-index: 1;
  }

  article.service.page .sky_block .main .orange,
  article.service.page .sky_block .main .store {
    font-size: 9vw;
  }

  article.service.page .sky_block .inner::after {
    right: -5%;
  }

  #airconcleaning.page #recommended .sky_block {
    background-image: url(./images/service_common_sky_block_bg01_sp.png);
    margin-top: -20%;
  }

  #airconcleaning.page #recommended .sky_block .inner {
    padding-top: 20%;
  }
}

@media only screen and (max-width: 500px) {

  #airconcleaning.page #recommended ul li .box .title {
    font-size: 3.4vw;
  }

  #airconcleaning.page #recommended ul li .box .price {
    font-size: 16px;
  }

  #airconcleaning.page #recommended ul li .box .txt {
    font-size: 14px;
  }

  article.service.page .sky_block .main {
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

}

@media only screen and (max-width: 414px) {
  #airconcleaning.page #recommended ul li .box .price {
    font-size: 14px;
  }
}

/* #trouble_ranking
----------------------------------------------- */

article.service.page #trouble_ranking {
  background-image: url(./images/service_common_trouble_ranking_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

article.service.page #trouble_ranking h3 {
  text-align: center;
  color: #fff;
  font-size: 56px;
  font-weight: bold;
  font-style: oblique;
  line-height: 1.2;
  -moz-text-shadow: 8px 8px 3px rgba(0, 0, 0, 0.3);
  -webkit-text-shadow: 8px 8px 3px rgba(0, 0, 0, 0.3);
  -ms-text-shadow: 8px 8px 3px rgba(0, 0, 0, 0.3);
  text-shadow: 8px 8px 3px rgba(0, 0, 0, 0.3);
  margin-bottom: 60px;
}

article.service.page #trouble_ranking h3 span {
  font-size: 70px;
  font-weight: bold;
}

article.service.page #trouble_ranking ul li {
  width: 33%;
  padding: 0 10px;
}

article.service.page #trouble_ranking ul li:first-child,
article.service.page #trouble_ranking ul li:last-child {
  padding-top: 60px;
}

article.service.page #trouble_ranking ul li .rank {
  text-align: center;
  margin-bottom: 30px;
}

article.service.page #trouble_ranking ul li .box {
  background: linear-gradient(180deg, #ffb400 0%, #ffb400 30%, #fff 30%, #fff 100%);
  padding: 30px 20px;
  height: 800px;
}

article.service.page #trouble_ranking ul li:nth-child(2) .box {
  height: 860px;
}

article.service.page #trouble_ranking ul li .box .title {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.2;
  color: #fff;
  margin-bottom: 30px;
}

article.service.page #trouble_ranking ul li:first-child .box .title {
  margin-bottom: 30px;
}

article.service.page #trouble_ranking ul li:last-child .box .title {
  margin-bottom: 10px;
}

article.service.page #trouble_ranking ul li .box .img {
  margin-bottom: 10px;
}

article.service.page #trouble_ranking ul li .box .txt {
  font-size: 20px;
}

@media only screen and (max-width: 1200px) {

  article.service.page #trouble_ranking ul li {
    padding: 0 5px;
  }

  article.service.page #trouble_ranking ul li .box {
    padding: 30px 10px;
  }

  article.service.page #trouble_ranking ul li .box .title {
    font-size: 2.2vw;
  }

  article.service.page #trouble_ranking ul li .box .txt {
    font-size: 1.6vw;
  }

}

@media only screen and (max-width: 1080px) {

  article.service.page #trouble_ranking ul li .box {
    height: 700px;
  }

  article.service.page #trouble_ranking ul li:nth-child(2) .box {
    height: 760px;
  }

}

@media only screen and (max-width: 880px) {

  article.service.page #trouble_ranking ul li .box {
    height: 600px;
  }

  article.service.page #trouble_ranking ul li:nth-child(2) .box {
    height: 660px;
  }

}

@media only screen and (max-width: 768px) {

  article.service.page #trouble_ranking {
    background-image: url(./images/service_common_trouble_ranking_bg01_sp.jpg);
    padding-bottom: 20%;
  }

  article.service.page #trouble_ranking h3 {
    font-size: 7vw;
    margin-bottom: 8%;
  }

  article.service.page #trouble_ranking h3 span {
    font-size: 10vw;
  }

  article.service.page #trouble_ranking ul.pc {
    display: none;
  }

  article.service.page #trouble_ranking ul {
    width: 80%;
    margin: 0 auto;
  }

  article.service.page #trouble_ranking ul li {
    width: 100%;
    padding: 0 10px;
  }

  article.service.page #trouble_ranking ul li:first-child,
  article.service.page #trouble_ranking ul li:last-child {
    padding-top: 0;
  }

  article.service.page #trouble_ranking ul li .box {
    height: auto;
    padding: 30px 20px;
  }

  article.service.page #trouble_ranking ul li:nth-child(2) .box {
    height: auto;
  }

  article.service.page #trouble_ranking ul li.rank01 .box .title {
    margin-bottom: 30px !important;
  }

  article.service.page #trouble_ranking ul li.rank02 .box .title {
    margin-bottom: 30px !important;
  }

  article.service.page #trouble_ranking ul li.rank03 .box .title {
    margin-bottom: 10px !important;
  }

  article.service.page #trouble_ranking ul .slick-slide img {
    margin: 0 auto;
  }

  article.service.page #trouble_ranking ul li .box .title {
    font-size: 5.2vw;
  }

  article.service.page #trouble_ranking ul li .box .txt {
    font-size: 3vw;
  }

  article.service.page #trouble_ranking .slick-dots {
    width: 100%;
    bottom: -8%;
  }

  article.service.page #trouble_ranking .slick-dots li,
  article.service.page #trouble_ranking .slick-dots li button {
    width: 30px;
    height: 30px;
    padding: 0;
  }

  article.service.page #trouble_ranking .slick-dots li button::before {
    content: "";
    width: 20px;
    height: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    border: 2px solid #fff;
    opacity: 1;
  }

  article.service.page #trouble_ranking .slick-dots li.slick-active button:before {
    background: #fff;
  }
}

@media only screen and (max-width: 500px) {

  article.service.page #trouble_ranking ul {
    width: 90%;
  }

  article.service.page #trouble_ranking ul li .box .txt {
    font-size: 3.6vw;
  }

}


@media only screen and (max-width: 414px) {

  article.service.page #trouble_ranking ul {
    width: 100%;
  }

  article.service.page #trouble_ranking .slick-dots li,
  article.service.page #trouble_ranking .slick-dots li button {
    width: 25px;
    height: 25px;
  }

  article.service.page #trouble_ranking .slick-dots li button::before {
    width: 15px;
    height: 15px;
    border: 1px solid #fff;
  }

}

/* #useful
----------------------------------------------- */

article.service.page #useful {
  padding-bottom: 0;
}

article.service.page #useful h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1;
  margin-bottom: 20px;
}

article.service.page #useful .txt01 {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 60px;
}

article.service.page #useful ul {
  width: 840px;
  margin: 0 auto 60px;
}

article.service.page #useful ul li {
  margin-bottom: 10px;
}

article.service.page #useful ul li .useful_list_btn {
  border-top: 4px solid #007d67;
  border-bottom: 4px solid #007d67;
  font-size: 28px;
  font-weight: bold;
  color: #007d67;
  line-height: 1;
  padding: 10px;
  position: relative;
  padding: 50px 15%;
}

article.service.page #useful ul li .useful_list_btn::before {
  content: "";
  width: 100px;
  height: 100px;
  background-image: url(./images/service_common_useful_list_num01.png);
  aspect-ratio: 100 / 100;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

article.service.page #useful ul li:nth-child(2) .useful_list_btn::before {
  background-image: url(./images/service_common_useful_list_num02.png);
}

article.service.page #useful ul li:nth-child(3) .useful_list_btn::before {
  background-image: url(./images/service_common_useful_list_num03.png);
}

article.service.page #useful ul li:nth-child(4) .useful_list_btn::before {
  background-image: url(./images/service_common_useful_list_num04.png);
}

article.service.page #useful ul li .useful_list_btn::after {
  content: "";
  width: 44px;
  height: 44px;
  background-image: url(./images/service_common_useful_list_open.png);
  aspect-ratio: 44 / 44;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

article.service.page #useful ul li .useful_list_btn.open::after {
  background-image: url(./images/service_common_useful_list_close.png);
  aspect-ratio: 44 / 44;
}

article.service.page #useful ul li .contents {
  padding: 20px 0;
  display: none;
}

article.service.page #useful ul li .contents .box {
  background: #e7fefc;
  padding: 30px;
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

article.service.page #useful ul li .contents .box p {
  font-size: 24px;
}

article.service.page #useful .txt02 {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 40px;
}

article.service.page #useful .btm {
  text-align: center;
  line-height: 1.2;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  color: #3fbeb1;
}

article.service.page #useful .btm .orange {
  font-size: 72px;
  font-weight: 900;
  color: #ffae00;
}

article.service.page #useful .btm .store {
  font-size: 72px;
  font-weight: 900;
  color: #007d67;
}

@media only screen and (max-width: 1200px) {

  article.service.page #useful h3 {
    font-size: 5vw;
    margin-bottom: 2%;
  }

  article.service.page #useful .txt01 {
    font-size: 2.4vw;
    margin-bottom: 5%;
  }

  article.service.page #useful ul {
    width: 75%;
    margin-bottom: 5%;
  }

  article.service.page #useful ul li .useful_list_btn {
    padding: 5.5% 15%;
    font-size: 2.4vw;
  }

  article.service.page #useful ul li .useful_list_btn::before {
    width: 12%;
    height: 0;
    padding: 0 0 12%;
  }

  article.service.page #useful ul li .useful_list_btn::after {
    width: 5%;
    height: 0;
    padding: 0 0 5%;
  }

  article.service.page #useful ul li .contents .box {
    padding: 3%;
  }

  article.service.page #useful ul li .contents .box p {
    font-size: 2vw;
  }

  article.service.page #useful .txt02 {
    font-size: 2.4vw;
    margin-bottom: 4%;
  }

  article.service.page #useful .btm {
    font-size: 5vw;
  }

  article.service.page #useful .btm .orange,
  article.service.page #useful .btm .store {
    font-size: 6vw;
  }

}

@media only screen and (max-width: 768px) {

  article.service.page #useful h3 {
    font-size: 8vw;
  }

  article.service.page #useful .txt01 {
    font-size: 4.4vw;
    margin-bottom: 6%;
  }

  article.service.page #useful ul {
    width: 100%;
  }

  article.service.page #useful ul li .useful_list_btn {
    padding: 7% 15%;
    font-size: 4vw;
  }

  article.service.page #useful ul li .contents .box p {
    font-size: 3vw;
  }

  article.service.page #useful .txt02 {
    font-size: 4.4vw;
    margin-bottom: 5%;
  }

  article.service.page #useful .btm {
    font-size: 8vw;
  }

  article.service.page #useful .btm .orange,
  article.service.page #useful .btm .store {
    font-size: 9vw;
  }

}

@media only screen and (max-width: 414px) {

  article.service.page #useful ul li .useful_list_btn {
    border-top: 2px solid #007d67;
    border-bottom: 2px solid #007d67;
  }

  article.service.page #useful ul li .contents {
    padding: 10px 0;
  }

  article.service.page #useful ul li .contents .box p {
    font-size: 3.6vw;
  }

}

/* ==============================================
 エアコン修理・取付
=============================================== */

#aircon.page #pagemv {
  background-image: url(./images/pagemv_aircon.jpg);
}

@media only screen and (max-width: 768px) {

  #aircon.page #pagemv {
    background-image: url(./images/pagemv_aircon_sp.jpg);
  }

}

/* #maker
----------------------------------------------- */

#aircon.page #maker {
  padding-bottom: 0;
}

#aircon.page #maker h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#aircon.page #maker .logo {
  text-align: center;
  position: relative;
  z-index: 1;
  padding-right: 5%;
}

@media only screen and (max-width: 1200px) {

  #aircon.page #maker h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #aircon.page #maker .logo img {
    width: 60%;
  }

}

@media only screen and (max-width: 768px) {

  #aircon.page #maker h3 {
    font-size: 8vw;
    margin-bottom: 5%;
  }

  #aircon.page #maker .logo {
    padding-right: 0;
  }

  #aircon.page #maker .logo img {
    width: 94%;
  }

  #aircon.page #maker .sky_block .inner::after {
    width: 45%;
    height: 0;
    padding: 0 0 52%;
  }

  article.service.page .sky_block .inner {
    position: relative;
    padding: 25% 0 5% 5%;
  }

}

/* #market_price
----------------------------------------------- */

#aircon.page #market_price {
  background: #e7fefc;
}

#aircon.page #market_price h3 {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 90px;
}

#aircon.page #market_price ul {
  flex-wrap: wrap;
  width: 640px;
  margin: 0 auto;
}

#aircon.page #market_price ul li {
  width: 50%;
  padding: 0 10px;
  margin-bottom: 50px;
}

#aircon.page #market_price ul li .box {
  background: #fff;
  -moz-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  padding: 30px 20px;
}

#aircon.page #market_price ul li .box p {
  line-height: 1.4;
}

#aircon.page #market_price ul li .box .title {
  background: #007d67;
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  width: 96%;
  padding: 10px;
  margin: -55px auto 20px;
}

#aircon.page #market_price ul li .box .img {
  margin-bottom: 15px;
  position: relative;
}

#aircon.page #market_price ul li .box .img::after {
  content: "";
  display: block;
  width: 90%;
  height: 4px;
  background: #007d67;
  margin: 10px auto;
}

#aircon.page #market_price ul li .box .price {
  color: #007d67;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

#aircon.page #market_price ul li .box .price span {
  font-size: 46px;
  font-weight: bold;
}

#aircon.page #market_price .btm {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.4;
  color: #3fbeb1;
  text-shadow:
    2px 2px 2px #fff, -2px -2px 2px #fff,
    -2px 2px 2px #fff, 2px -2px 2px #fff,
    2px 0px 2px #fff, -2px -0px 2px #fff,
    0px 2px 2px #fff, 0px -2px 2px #fff,
    4px 4px 2px rgba(245, 206, 101, 1);
}


@media only screen and (max-width: 1200px) {

  #aircon.page #market_price h3 {
    font-size: 4vw;
    margin-bottom: 8%;
  }

  #aircon.page #market_price ul {
    width: 65%;
  }

  #aircon.page #market_price ul li .box {
    padding: 10% 5%;
  }

  #aircon.page #market_price ul li .box .title {
    padding: 4%;
    font-size: 2vw;
    margin: -20% auto 5%;
  }

  #aircon.page #market_price ul li .box .img {
    margin-bottom: 5%;
  }

  #aircon.page #market_price ul li .box .price {
    font-size: 2.4vw;
  }

  #aircon.page #market_price ul li .box .price span {
    font-size: 4vw;
  }

  #aircon.page #market_price .btm {
    font-size: 4.2vw;
  }

}

@media only screen and (max-width: 768px) {

  #aircon.page #market_price h3 {
    font-size: 6vw;
    margin-bottom: 12%;
  }

  #aircon.page #market_price ul {
    width: 100%;
  }

  #aircon.page #market_price ul li {
    width: 49%;
    padding: 0;
  }

  #aircon.page #market_price ul li .box .title {
    font-size: 3vw;
    width: 96%;
  }

  #aircon.page #market_price ul li .box .price {
    font-size: 4.4vw;
  }

  #aircon.page #market_price ul li .box .price span {
    font-size: 7vw;
  }

  #aircon.page #market_price .btm {
    font-size: 6.2vw;
  }

}

@media only screen and (max-width: 500px) {

  #aircon.page #market_price ul li .box .title {
    font-size: 3.4vw;
  }

}

/* ==============================================
 業務用エアコン修理・取り付け
=============================================== */

#gyoumuyouaircon.page #pagemv {
  background-image: url(./images/pagemv_gyoumuyouaircon.jpg);
}

@media only screen and (max-width: 768px) {

  #gyoumuyouaircon.page #pagemv {
    background-image: url(./images/pagemv_gyoumuyouaircon_sp.jpg);
  }

}

#gyoumuyouaircon.page #resolution {
  background-image: url(./images/gyoumuyouaircon_resolution_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#gyoumuyouaircon.page #resolution h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 40px;
}

#gyoumuyouaircon.page #resolution .txt01 {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.4;
  text-shadow:
    2px 2px 2px #fff, -2px -2px 2px #fff,
    -2px 2px 2px #fff, 2px -2px 2px #fff,
    2px 0px 2px #fff, -2px -0px 2px #fff,
    0px 2px 2px #fff, 0px -2px 2px #fff;
  margin-bottom: 60px;
}

#gyoumuyouaircon.page #resolution ul li {
  width: 33%;
  padding: 0 5px;
}

#gyoumuyouaircon.page #resolution ul li .box {
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

#gyoumuyouaircon.page #resolution ul li .box h4 {
  text-align: center;
  background: #007d67;
  font-size: 28px;
  font-weight: bold;
  color: #fff;
  padding: 15px 10px;
}

#gyoumuyouaircon.page #resolution ul li .box .contents {
  background: #fff;
  padding: 10px;
}

#gyoumuyouaircon.page #resolution ul li .box .contents h5 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

#gyoumuyouaircon.page #resolution ul li .box .contents .txt {
  font-size: 18px;
  margin-bottom: 10px;
}

@media only screen and (max-width: 768px) {

  #gyoumuyouaircon.page #resolution h3 {
    font-size: 8vw;
    margin-bottom: 5vw;
  }

  #gyoumuyouaircon.page #resolution .txt01 {
    font-size: 3.6vw;
    margin-bottom: 8%;
    text-shadow:
      1px 1px 1px #fff, -1px -1px 1px #fff,
      -1px 1px 1px #fff, 1px -1px 1px #fff,
      1px 0px 1px #fff, -1px -0px 1px #fff,
      0px 1px 1px #fff, 0px -1px 1px #fff;
  }

  #gyoumuyouaircon.page #resolution ul {
    width: 85%;
    margin: 0 auto 15%;
  }

  #gyoumuyouaircon.page #resolution ul li .img img {
    max-width: initial;
    width: 100%;
  }

  #gyoumuyouaircon.page #resolution .slick-dots {
    width: 100%;
    bottom: -25%;
  }

  #gyoumuyouaircon.page #resolution .slick-dots li,
  #gyoumuyouaircon.page #resolution .slick-dots li button {
    width: 30px;
    height: 30px;
    padding: 0;
  }

  #gyoumuyouaircon.page #resolution .slick-dots li button::before {
    content: "";
    width: 20px;
    height: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    border: 2px solid #007d67;
    opacity: 1;
  }

  #gyoumuyouaircon.page #resolution .slick-dots li.slick-active button:before {
    background: #007d67;
  }

  #gyoumuyouaircon.page #resolution .slick-prev,
  #gyoumuyouaircon.page #resolution .slick-next {
    width: 29px;
    height: 35px;
  }

  #gyoumuyouaircon.page #resolution .slick-prev {
    left: -35px;
  }

  #gyoumuyouaircon.page #resolution .slick-next {
    right: -35px;
  }

  #gyoumuyouaircon.page #resolution ul .slick-prev:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_prev.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

  #gyoumuyouaircon.page #resolution ul .slick-next:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_next.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

}


@media only screen and (max-width: 480px) {

  #gyoumuyouaircon.page #resolution ul {
    width: 100%;
  }

  #gyoumuyouaircon.page #resolution ul li .box h4 {
    font-size: 22px;
  }

  #gyoumuyouaircon.page #resolution ul li .box .contents h5 {
    font-size: 18px;
  }

  #gyoumuyouaircon.page #resolution ul li .box .contents .txt {
    font-size: 16px;
  }

  #gyoumuyouaircon.page #resolution .slick-prev,
  #gyoumuyouaircon.page #resolution .slick-next {
    width: 15px;
    height: 18px;
  }

  #gyoumuyouaircon.page #resolution .slick-prev {
    left: -18px;
  }

  #gyoumuyouaircon.page #resolution .slick-next {
    right: -18px;
  }

  #gyoumuyouaircon.page #resolution ul .slick-prev:before,
  #gyoumuyouaircon.page #resolution ul .slick-next:before {
    width: 15px;
    height: 18px;
  }

  #gyoumuyouaircon.page #resolution .slick-dots {
    bottom: -20%;
  }

  #gyoumuyouaircon.page #resolution ul .slick-dots li,
  #gyoumuyouaircon.page #resolution ul .slick-dots li button {
    width: 25px;
    height: 25px;
  }

  #gyoumuyouaircon.page #resolution ul .slick-dots li button::before {
    width: 15px;
    height: 15px;
    border: 1px solid #007d67;
  }
}

/* #quote
----------------------------------------------- */

#gyoumuyouaircon.page #quote {
  background: #e7fefc;
}

#gyoumuyouaircon.page #quote h3 {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
  color: #3fbeb1;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
}

#gyoumuyouaircon.page #quote h3 .orange {
  color: #ffae00;
  font-size: 72px;
  font-weight: 900;
}

#gyoumuyouaircon.page #quote ul {
  justify-content: center;
  margin-bottom: 60px;
}

#gyoumuyouaircon.page #quote ul li {
  max-width: 240px;
  margin-right: 10px;
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

#gyoumuyouaircon.page #quote ul li:last-child {
  margin-right: 0;
}

#gyoumuyouaircon.page #quote ul li .title {
  text-align: center;
  background: #007d67;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
  padding: 10px;

}

#gyoumuyouaircon.page #quote ul li .img img {
  max-width: initial;
  width: 100%;
  border: 5px solid #fff;
}

#gyoumuyouaircon.page #quote .txt01 {
  width: 60%;
  margin: 0 auto 40px;
  font-size: 27px;

}

#gyoumuyouaircon.page #quote .btm {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  line-height: 1.2;
  font-style: oblique;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
}

#gyoumuyouaircon.page #quote .btm span {
  color: #007d67;
  font-weight: 900;
}

@media only screen and (max-width: 900px) {

  #gyoumuyouaircon.page #quote ul li {
    width: 31%;
  }

  #gyoumuyouaircon.page #quote ul li .title {
    font-size: 3vw;
  }

  #gyoumuyouaircon.page #quote .txt01 {
    width: 80%;
    font-size: 3vw;
  }

}

@media only screen and (max-width: 768px) {

  #gyoumuyouaircon.page #quote h3 {
    font-size: 6vw;
    margin-bottom: 8%;
  }

  #gyoumuyouaircon.page #quote h3 .orange {
    font-size: 9vw;
  }

  #gyoumuyouaircon.page #quote ul {
    margin-bottom: 8%;
  }

  #gyoumuyouaircon.page #quote .txt01 {
    width: 100%;
  }

  #gyoumuyouaircon.page #quote .btm {
    font-size: 6.5vw;
  }

}

@media only screen and (max-width: 480px) {

  #gyoumuyouaircon.page #quote h3 {
    font-size: 7vw;
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

  #gyoumuyouaircon.page #quote h3 .orange {
    font-size: 10vw;
  }

  #gyoumuyouaircon.page #quote ul li .title {
    padding: 5px;
    font-size: 3.2vw;
  }

  #gyoumuyouaircon.page #quote ul li .img img {
    border: 2px solid #fff;
  }

  #gyoumuyouaircon.page #quote .txt01 {
    font-size: 3.6vw;
  }

  #gyoumuyouaircon.page #quote .btm {
    font-size: 7.5vw;
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

}

/* #type
----------------------------------------------- */

#gyoumuyouaircon.page #type {
  background: url(./images/cta_section_bg01.jpg);
}

#gyoumuyouaircon.page #type .txt01 {
  text-align: center;
  font-size: 36px;
  margin-bottom: 20px;
  color: #fff;
}

#gyoumuyouaircon.page #type h3 {
  text-align: center;
  font-size: 60px;
  font-weight: bold;
  font-style: oblique;
  margin-bottom: 40px;
  color: #fff;
  line-height: 1.4;
}

#gyoumuyouaircon.page #type .tab {
  width: 85%;
  margin: 0 auto;
}

#gyoumuyouaircon.page #type .tab .content-box {
  display: none;
}

#gyoumuyouaircon.page #type .tab .tab-list {
  display: flex;
}

#gyoumuyouaircon.page #type .tab .tab-list li {
  width: 50%;
  -webkit-border-top-left-radius: 40px;
  -webkit-border-top-right-radius: 40px;
  -moz-border-radius-topleft: 40px;
  -moz-border-radius-topright: 40px;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 10px;
  padding-top: 15px;
  line-height: 1;
}

#gyoumuyouaircon.page #type .tab .tab-list .current {
  font-size: 30px;
  padding-top: 10px;
}

#gyoumuyouaircon.page #type .tab .tab-list .menu01 {
  background: hwb(42deg 0% 0% / 70%);
}

#gyoumuyouaircon.page #type .tab .tab-list .menu01.current {
  background: #ffb400;
}

#gyoumuyouaircon.page #type .tab .tab-list .menu02 {
  background: hwb(206deg 0% 32% / 70%);
}

#gyoumuyouaircon.page #type .tab .tab-list .menu02.current {
  background: #0063ad;
}

#gyoumuyouaircon.page #type .tab .content-box {
  background: #fff;
}

#gyoumuyouaircon.page #type .tab .content-box .flex .item {
  color: #fff;
  width: 50%;
  padding: 40px;
}

#gyoumuyouaircon.page #type .tab .content-box.box01 .flex .item.right {
  background-color: #ffb400;
  padding-left: 0;
}

#gyoumuyouaircon.page #type .tab .content-box.box02 .flex .item.right {
  background-color: #0063ad;
}

#gyoumuyouaircon.page #type .tab .content-box.box01 .flex .left {
  /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
}

#gyoumuyouaircon.page #type .tab .content-box.box02 .flex .left {
  order: 1;
  /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
}

#gyoumuyouaircon.page #type .tab .content-box .flex .right .title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 10px;
}

#gyoumuyouaircon.page #type .tab .content-box .flex .right .txt {
  font-size: 18px;
}

#gyoumuyouaircon.page #type .tab .tab-list2 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 28px;
}

#gyoumuyouaircon.page #type .tab .tab-list2 li {
  width: 21px;
  aspect-ratio: 1/1;
  height: 21px;
  border-radius: 50%;
  border: #fff 3px solid;
  margin-right: 2.5px;
  margin-left: 2.5px;
}

#gyoumuyouaircon.page #type .tab .tab-list2 li.current {
  width: 28px;
  aspect-ratio: 1/1;
  height: 28px;
  border-radius: 50%;
  background-color: #FFF;
}

@media only screen and (max-width: 1200px) {

  #gyoumuyouaircon.page #type .txt01 {
    font-size: 3vw;
    margin-bottom: 2%;
  }

  #gyoumuyouaircon.page #type h3 {
    font-size: 5vw;
    margin-bottom: 4%;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .item {
    padding: 4%;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .right .title {
    font-size: 2.2vw;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .right .txt {
    font-size: 1.6vw;
  }

}

@media only screen and (max-width: 768px) {

  #gyoumuyouaircon.page #type .txt01 {
    font-size: 5vw;
    margin-bottom: 4%;
  }

  #gyoumuyouaircon.page #type h3 {
    font-size: 7vw;
    margin-bottom: 8%;
  }

  #gyoumuyouaircon.page #type .tab .tab-list li {
    font-size: 3vw;
    padding-top: 18px;
  }

  #gyoumuyouaircon.page #type .tab .tab-list .current {
    font-size: 4vw;
    padding-top: 15px
  }

  #gyoumuyouaircon.page #type .tab {
    width: 100%;
  }

  /* #gyoumuyouaircon.page #type .tab .content-box.box01 .flex .item.right, #gyoumuyouaircon.page #type .tab .content-box.box02 .flex .item.right{
    background-color: #fff;
    color: #000;
  } */

  #gyoumuyouaircon.page #type .tab .content-box.box01 .flex .left {
    /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
  }

  #gyoumuyouaircon.page #type .tab .content-box.box02 .flex .left {
    order: 1;
    /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .item {
    width: 100%;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .left {
    padding: 10% 5% 0;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .right,
  #gyoumuyouaircon.page #type .tab .content-box.box01 .flex .item.right {
    padding: 5% 5% 10%;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .right .title {
    font-size: 4.2vw;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .right .txt {
    font-size: 3.6vw;
  }

  #gyoumuyouaircon.page #type .tab .content-box.box02 .flex .left {
    order: 0;
  }

  #gyoumuyouaircon.page #type .tab .tab-list li {
    -webkit-border-top-left-radius: 20px;
    -webkit-border-top-right-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-topright: 20px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }

  #gyoumuyouaircon.page #type .tab .tab-list2 li {
    width: 4%;
    height: 4%;
    margin-right: 0.6%;
    margin-left: 0.6%;
    border: 0.3px solid #fff;
  }

  #gyoumuyouaircon.page #type .tab .tab-list2 li.current {
    width: 5%;
    height: 5%;
  }

}


@media only screen and (max-width: 414px) {

  #gyoumuyouaircon.page #type .tab .tab-list li {
    font-size: 4vw;
  }

  #gyoumuyouaircon.page #type .tab .tab-list .current {
    font-size: 5vw;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .right .title {
    font-size: 4.6vw;
  }

  #gyoumuyouaircon.page #type .tab .content-box .flex .right .txt {
    font-size: 4vw;
  }
}

/* #location
----------------------------------------------- */

#gyoumuyouaircon.page #location {
  padding-bottom: 0;
}

#gyoumuyouaircon.page #location h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#gyoumuyouaircon.page #location ul {
  justify-content: center;
  width: 65%;
  margin: 0 auto 60px;
}

#gyoumuyouaircon.page #location ul li {
  padding: 0 20px;
  width: 50%;
}

#gyoumuyouaircon.page #location ul li .box {
  -moz-box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 5px 5px rgba(0, 0, 0, 0.1);
  padding: 30px;
}

#gyoumuyouaircon.page #location ul li .box .img {
  margin-bottom: 15px;
}

#gyoumuyouaircon.page #location ul li .box .title {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 10px;
}

#gyoumuyouaircon.page #location ul li .box .txt {
  font-size: 20px;
}


#gyoumuyouaircon.page #location .btm {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.6;
}


#gyoumuyouaircon.page #location .free {
  padding-top: 120px;
  background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(44, 167, 154, 1) 75%, rgba(255, 255, 255, 1) 100%);
  margin-top: -60px;
}


@media only screen and (max-width: 1200px) {

  #gyoumuyouaircon.page #location h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #gyoumuyouaircon.page #location ul {
    margin-bottom: 5%;
  }

  #gyoumuyouaircon.page #location ul li {
    padding: 0 10px;
  }

  #gyoumuyouaircon.page #location ul li .box {
    padding: 5%;
  }

  #gyoumuyouaircon.page #location ul li .box .title {
    font-size: 2.5vw;
  }

  #gyoumuyouaircon.page #location ul li .box .txt {
    font-size: 1.8vw;
  }

  #gyoumuyouaircon.page #location .btm {
    font-size: 2.5vw;
  }

  #gyoumuyouaircon.page #location .free {
    padding-top: 10%;
    margin-top: -5%;
  }

  #gyoumuyouaircon.page #location .free img {
    width: 80%;
  }

}



@media only screen and (max-width: 768px) {

  #gyoumuyouaircon.page #location h3 {
    font-size: 7vw;
    margin-bottom: 7%;
  }

  #gyoumuyouaircon.page #location ul {
    width: 100%;
    margin-bottom: 8%;
  }

  #gyoumuyouaircon.page #location ul li .box .title {
    font-size: 3.5vw;
  }

  #gyoumuyouaircon.page #location ul li .box .txt {
    font-size: 3vw;
  }

  #gyoumuyouaircon.page #location .btm {
    font-size: 4vw;
  }

  #gyoumuyouaircon.page #location .free {
    padding-top: 15%;
    background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(162, 216, 211, 1) 85%, rgba(255, 255, 255, 1) 100%);
  }

  #service.page #sec02 .free img {
    width: 100%;
  }

  #gyoumuyouaircon.page #location ul li .box {
    padding: 6%;
  }

}


/* ==============================================
 アンテナ工事
=============================================== */

#antena.page #pagemv {
  background-image: url(./images/pagemv_antena.jpg);
}

@media only screen and (max-width: 768px) {

  #antena.page #pagemv {
    background-image: url(./images/pagemv_antena_sp.jpg);
  }

}

#antena.page #fv .img {
  position: relative;
}

#antena.page #fv .img img {
  max-width: initial;
  width: 100%;
}

#antena.page #fv .price {
  color: #d40409;
  text-shadow:
    3px 3px 3px #fff, -3px -3px 3px #fff,
    -3px 3px 3px #fff, 3px -3px 3px #fff,
    3px 0px 3px #fff, -3px -0px 3px #fff,
    0px 3px 3px #fff, 0px -3px 3px #fff;
  font-size: 1.8vw;
  font-weight: bold;
  font-style: oblique;
  line-height: 1;
  position: absolute;
  top: 80%;
  left: 18%;
}

#antena.page #fv .price span {
  font-size: 2.8vw;
  font-weight: bold;
}

@media only screen and (max-width: 768px) {

  #antena.page #fv .price {
    font-size: 4.8vw;
    top: 59%;
    left: 4%;
  }

  #antena.page #fv .price span {
    font-size: 7.8vw;
  }

}

/* #sec01
----------------------------------------------- */

#antena.page #sec01 .trouble_list li h4 span {
  font-size: 20px;
}

@media only screen and (max-width: 1200px) {

  #antena.page #sec01 .trouble_list li h4 span {
    font-size: 1.6vw;
  }

}

@media only screen and (max-width: 768px) {

  #antena.page #sec01 .trouble_list li h4 span {
    font-size: 3.2vw;
  }

}

/* #license
----------------------------------------------- */

#antena.page #license {
  background: #e7fefc;
}

#antena.page #license h3 {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 40px;
  color: #3fbeb1;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
}

#antena.page #license h3 span {
  font-size: 60px;
  font-weight: 900;
  color: #ffae00;
}

#antena.page #license .txt01 {
  text-align: center;
  margin-bottom: 60px;
}

#antena.page #license .txt01 span {
  display: inline-block;
  position: relative;
  font-size: 30px;
  font-weight: bold;
}

#antena.page #license .txt01 span::before {
  content: "";
  width: 2px;
  height: 50px;
  background: #000;
  position: absolute;
  top: 30%;
  left: -30px;
  transform: rotate(-30deg);
}

#antena.page #license .txt01 span::after {
  content: "";
  width: 2px;
  height: 50px;
  background: #000;
  position: absolute;
  top: 30%;
  right: -30px;
  transform: rotate(30deg);
}

#antena.page #license ul {
  flex-wrap: wrap;
  width: 640px;
  margin: 0 auto;
}

#antena.page #license ul li {
  width: 50%;
  padding: 0 10px;
  margin-bottom: 50px;
}

#antena.page #license ul li .box {
  background: #fff;
  -moz-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.1);
  padding: 30px 20px;
}

#antena.page #license ul li .box p {
  line-height: 1.4;
}

#antena.page #license ul li .box .title {
  background: #007d67;
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  width: 96%;
  padding: 10px;
  margin: -55px auto 20px;
}

#antena.page #license ul li .box .img {
  margin-bottom: 15px;
  position: relative;
}

#antena.page #license ul li .box .img::after {
  content: "";
  display: block;
  width: 90%;
  height: 4px;
  background: #007d67;
  margin: 10px auto;
}

#antena.page #license ul li .box .txt {
  font-size: 20px;
}

#antena.page #license .txt02 {
  text-align: center;
  color: #f60000;
  font-size: 30px;
  line-height: 1.4;
  margin-bottom: 40px;
}

#antena.page #license .btm {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.4;
  color: #3fbeb1;
  text-shadow:
    2px 2px 2px #fff, -2px -2px 2px #fff,
    -2px 2px 2px #fff, 2px -2px 2px #fff,
    2px 0px 2px #fff, -2px -0px 2px #fff,
    0px 2px 2px #fff, 0px -2px 2px #fff,
    4px 4px 2px rgba(245, 206, 101, 1);
}

#antena.page #type .tab .tab-list2 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 28px;
}

#antena.page #type .tab .tab-list2 li {
  width: 21px;
  aspect-ratio: 1/1;
  height: 21px;
  border-radius: 50%;
  border: #fff 3px solid;
  margin-right: 2.5px;
  margin-left: 2.5px;
}

#antena.page #type .tab .tab-list2 li.current {
  width: 28px;
  aspect-ratio: 1/1;
  height: 28px;
  border-radius: 50%;
  background-color: #FFF;
}

@media only screen and (max-width: 1200px) {

  #antena.page #license h3 {
    font-size: 4.2vw;
    margin-bottom: 4%;
  }

  #antena.page #license h3 span {
    font-size: 5.5vw;
  }

  #antena.page #license .txt01 {
    margin-bottom: 6vw;
  }

  #antena.page #license .txt01 span {
    font-size: 2.6vw;
  }

  #antena.page #license ul {
    width: 65%;
  }

  #antena.page #license ul li .box {
    padding: 10% 5%;
  }

  #antena.page #license ul li .box .title {
    padding: 4%;
    font-size: 2vw;
    margin: -20% auto 5%;
  }

  #antena.page #license ul li .box .img {
    margin-bottom: 5%;
  }

  #antena.page #license ul li .box .txt {
    font-size: 1.8vw;
  }

  #antena.page #license .txt02 {
    font-size: 2.4vw;
    margin-bottom: 3%;
  }


  #antena.page #license .btm {
    font-size: 4.2vw;
  }

}

@media only screen and (max-width: 768px) {

  #antena.page #license h3 {
    font-size: 6.5vw;
  }

  #antena.page #license h3 span {
    font-size: 7.5vw;
  }

  #antena.page #license .txt01 {
    margin-bottom: 12vw;
  }

  #antena.page #license .txt01 span {
    font-size: 4vw;
  }

  #antena.page #license ul {
    width: 100%;
  }

  #antena.page #license ul li {
    width: 49%;
    padding: 0;
  }

  #antena.page #license ul li .box .title {
    font-size: 3vw;
    width: 96%;
  }

  #antena.page #license ul li .box .txt {
    font-size: 2.8vw;
  }

  #antena.page #license .txt02 {
    font-size: 3vw;
  }

  #antena.page #license .btm {
    font-size: 5.2vw;
  }

  #antena.page #type .tab .tab-list2 li {
    width: 4%;
    height: 4%;
    margin-right: 0.6%;
    margin-left: 0.6%;
    border: 0.3px solid #fff;
  }

  #antena.page #type .tab .tab-list2 li.current {
    width: 5%;
    height: 5%;
  }

}

@media only screen and (max-width: 500px) {

  #antena.page #license h3 {
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

  #antena.page #license ul li .box .title {
    font-size: 3.4vw;
  }

}

/* #type
----------------------------------------------- */

#antena.page #type {
  background: #2ca79a;
  background: url(./images/cta_section_bg01.jpg);
}

#antena.page #type .txt01 {
  text-align: center;
  font-size: 36px;
  margin-bottom: 20px;
  line-height: 1.4;
  color: #fff;
}

#antena.page #type h3 {
  text-align: center;
  font-size: 60px;
  font-weight: bold;
  font-style: oblique;
  margin-bottom: 40px;
  color: #fff;
  line-height: 1.4;
}

#antena.page #type .tab {
  width: 85%;
  margin: 0 auto;
}

#antena.page #type .tab .content-box {
  display: none;
}

#antena.page #type .tab .tab-list {
  display: flex;
}

#antena.page #type .tab .tab-list li {
  width: 50%;
  -webkit-border-top-left-radius: 40px;
  -webkit-border-top-right-radius: 40px;
  -moz-border-radius-topleft: 40px;
  -moz-border-radius-topright: 40px;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 10px;
  padding-top: 15px;
  line-height: 1;
}

#antena.page #type .tab .tab-list .current {
  font-size: 30px;
  padding-top: 10px;
}

#antena.page #type .tab .tab-list .menu01 {
  background: #c0b02e;
  background: hwb(42deg 0% 0% / 70%);
}

#antena.page #type .tab .tab-list .menu01.current {
  background: #ffb400;
}

#antena.page #type .tab .tab-list .menu02 {
  background: #1279aa;
  background: hwb(206deg 0% 32% / 70%);
}

#antena.page #type .tab .tab-list .menu02.current {
  background: #0063ad;
}

#antena.page #type .tab .content-box {
  background: #fff;
}

#antena.page #type .tab .content-box .flex .item {
  width: 50%;
  padding: 40px;
  color: #fff;
}

#antena.page #type .tab .content-box.box01 .flex .item {
  background-color: #ffb400;
}

#antena.page #type .tab .content-box.box01 .flex .item.right {
  padding-left: 0;
}

#antena.page #type .tab .content-box.box02 .flex .item {
  background-color: #0063ad;
}

#antena.page #type .tab .content-box.box01 .flex .left {
  /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
}

#antena.page #type .tab .content-box.box02 .flex .left {
  order: 1;
  /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
}

#antena.page #type .tab .content-box .flex .right .title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 10px;
}

#antena.page #type .tab .content-box .flex .right .txt {
  font-size: 18px;
  line-height: 1.6;
}

@media only screen and (max-width: 1200px) {

  #antena.page #type .txt01 {
    font-size: 3vw;
    margin-bottom: 2%;
  }

  #antena.page #type h3 {
    font-size: 5vw;
    margin-bottom: 4%;
  }

  #antena.page #type .tab .content-box .flex .item {
    padding: 4%;
  }

  #antena.page #type .tab .content-box .flex .right .title {
    font-size: 2.2vw;
  }

  #antena.page #type .tab .content-box .flex .right .txt {
    font-size: 1.6vw;
  }

}

@media only screen and (max-width: 768px) {

  #antena.page #type .txt01 {
    font-size: 5vw;
    margin-bottom: 4%;
  }

  #antena.page #type h3 {
    font-size: 7vw;
    margin-bottom: 8%;
  }

  #antena.page #type .tab .tab-list li {
    font-size: 3vw;
    padding-top: 18px;
  }

  #antena.page #type .tab .tab-list .current {
    font-size: 4vw;
    padding-top: 15px
  }

  #antena.page #type .tab {
    width: 100%;
  }

  /* #antena.page #type .tab .content-box.box01 .flex .item,#antena.page #type .tab .content-box.box02 .flex .item{
    background: #fff;
  } */

  #antena.page #type .tab .content-box.box01 .flex .left {
    /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 55%, #fff 55%, #fff 100%); */
    /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
  }

  #antena.page #type .tab .content-box.box02 .flex .left {
    order: 1;
    /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 55%, #fff 55%, #fff 100%); */
    /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
  }

  #antena.page #type .tab .content-box .flex .item {
    width: 100%;
    /* color: #000; */
  }

  #antena.page #type .tab .content-box .flex .left {
    padding: 10% 5% 0;
  }

  #antena.page #type .tab .content-box .flex .right,
  #antena.page #type .tab .content-box.box01 .flex .item.right {
    padding: 5% 5% 10%;
  }

  #antena.page #type .tab .content-box .flex .right .title {
    font-size: 4.2vw;
  }

  #antena.page #type .tab .content-box .flex .right .txt {
    font-size: 3.6vw;
  }

  #antena.page #type .tab .content-box.box02 .flex .left {
    order: 0;
  }

  #antena.page #type .tab .tab-list li {
    -webkit-border-top-left-radius: 20px;
    -webkit-border-top-right-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-topright: 20px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }

}


@media only screen and (max-width: 414px) {

  #antena.page #type .tab .tab-list li {
    font-size: 4vw;
  }

  #antena.page #type .tab .tab-list .current {
    font-size: 5vw;
  }

  #antena.page #type .tab .content-box .flex .right .title {
    font-size: 4.6vw;
  }

  #antena.page #type .tab .content-box .flex .right .txt {
    font-size: 4vw;
  }
}


/* #maker
----------------------------------------------- */

#antena.page #maker {
  padding-bottom: 0;
}

#antena.page #maker h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#antena.page #maker ul {
  flex-wrap: wrap;
  width: 60%;
  margin: 0 auto 60px;
}

#antena.page #maker ul li {
  width: 32%;
  margin-bottom: 40px;
}

#antena.page #maker ul li .name {
  text-align: center;
  position: relative;
  z-index: 1;
  margin-bottom: -20px;
}

#antena.page #maker ul li .name span {
  display: inline-block;
  width: 100%;
  background: #007d67;
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  padding: 10px;
}

#antena.page #maker ul li .img img {
  -moz-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
}


#antena.page #maker .logo {
  text-align: center;
  position: relative;
  z-index: 1;
  padding-right: 5%;
}

@media only screen and (max-width: 1200px) {

  #antena.page #maker h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #antena.page #maker ul {
    margin-bottom: 6%;
  }

  #antena.page #maker ul li {
    margin-bottom: 5%;
  }

  #antena.page #maker ul li .name {
    margin-bottom: -10%;
  }

  #antena.page #maker ul li .name span {
    font-size: 2.2vw;
  }

  #antena.page #maker .logo img {
    width: 60%;
  }

}

@media only screen and (max-width: 768px) {

  #antena.page #maker h3 {
    font-size: 8vw;
    margin-bottom: 5%;
  }

  #antena.page #maker ul {
    width: 100%;
  }

  #antena.page #maker ul li .name span {
    font-size: 3.2vw;
  }

  #antena.page #maker .logo {
    padding-right: 0;
  }

  #antena.page #maker .logo img {
    width: 94%;
  }

  #antena.page #maker .sky_block .inner::after {
    width: 45%;
    height: 0;
    padding: 0 0 52%;
  }

  article.service.page .sky_block .inner {
    position: relative;
    padding: 25% 0 5% 5%;
  }

}

/* #sample
----------------------------------------------- */

#antena.page #sample {
  background-image: url(./images/antena_sample_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#antena.page #sample h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 40px;
}

#antena.page #sample .txt01 {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.4;
  text-shadow:
    2px 2px 2px #fff, -2px -2px 2px #fff,
    -2px 2px 2px #fff, 2px -2px 2px #fff,
    2px 0px 2px #fff, -2px -0px 2px #fff,
    0px 2px 2px #fff, 0px -2px 2px #fff;
  margin-bottom: 60px;
}

#antena.page #sample ul {
  justify-content: center;
}

#antena.page #sample ul li {
  width: 33%;
  padding: 0 10px;
}

#antena.page #sample ul li .box {
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

#antena.page #sample ul li .box h4 {
  text-align: center;
  background: #007d67;
  font-size: 28px;
  font-weight: bold;
  color: #fff;
  padding: 15px 10px;
}

#antena.page #sample ul li .box .contents {
  background: #fff;
  padding: 10px;
}

#antena.page #sample ul li .box .contents h5 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

#antena.page #sample ul li .box .contents .txt {
  font-size: 18px;
  margin-bottom: 10px;
}

@media only screen and (max-width: 1200px) {

  #antena.page #sample ul li {
    width: 45%;
    max-width: 390px;
  }

}

@media only screen and (max-width: 768px) {

  #antena.page #sample h3 {
    font-size: 8vw;
    margin-bottom: 5vw;
  }

  #antena.page #sample .txt01 {
    font-size: 3.6vw;
    margin-bottom: 8%;
    text-shadow:
      1px 1px 1px #fff, -1px -1px 1px #fff,
      -1px 1px 1px #fff, 1px -1px 1px #fff,
      1px 0px 1px #fff, -1px -0px 1px #fff,
      0px 1px 1px #fff, 0px -1px 1px #fff;
  }

  #antena.page #sample ul {
    width: 85%;
    margin: 0 auto 15%;
  }

  #antena.page #sample ul li {
    max-width: initial;
    width: 100%;
  }

  #antena.page #sample ul li .img img {
    max-width: initial;
    width: 100%;
  }

  #antena.page #sample .slick-dots {
    width: 100%;
    bottom: -25%;
  }

  #antena.page #sample .slick-dots li,
  #antena.page #sample .slick-dots li button {
    width: 30px;
    height: 30px;
    padding: 0;
  }

  #antena.page #sample .slick-dots li button::before {
    content: "";
    width: 20px;
    height: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    border: 2px solid #007d67;
    opacity: 1;
  }

  #antena.page #sample .slick-dots li.slick-active button:before {
    background: #007d67;
  }

  #antena.page #sample .slick-prev,
  #antena.page #sample .slick-next {
    width: 29px;
    height: 35px;
  }

  #antena.page #sample .slick-prev {
    left: -35px;
  }

  #antena.page #sample .slick-next {
    right: -35px;
  }

  #antena.page #sample ul .slick-prev:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_prev.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

  #antena.page #sample ul .slick-next:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_next.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

}


@media only screen and (max-width: 480px) {

  #antena.page #sample ul {
    width: 100%;
  }

  #antena.page #sample ul li .box h4 {
    font-size: 22px;
  }

  #antena.page #sample ul li .box .contents h5 {
    font-size: 18px;
  }

  #antena.page #sample ul li .box .contents .txt {
    font-size: 16px;
  }

  #antena.page #sample .slick-prev,
  #antena.page #sample .slick-next {
    width: 15px;
    height: 18px;
  }

  #antena.page #sample .slick-prev {
    left: -18px;
  }

  #antena.page #sample .slick-next {
    right: -18px;
  }

  #antena.page #sample ul .slick-prev:before,
  #antena.page #sample ul .slick-next:before {
    width: 15px;
    height: 18px;
  }

  #antena.page #sample .slick-dots {
    bottom: -20%;
  }

  #antena.page #sample ul .slick-dots li,
  #antena.page #sample ul .slick-dots li button {
    width: 25px;
    height: 25px;
  }

  #antena.page #sample ul .slick-dots li button::before {
    width: 15px;
    height: 15px;
    border: 1px solid #007d67;
  }
}

/* #insurance
----------------------------------------------- */

#antena #insurance {
  background: #e7fefc;
  margin-top: 90px;
}

#antena #insurance h3 {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  color: #3fbeb1;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
  margin-bottom: 60px;
}

#antena #insurance h3 .fs_b {
  font-size: 72px;
  font-weight: 900;
}

#antena #insurance h3 .orange {
  color: #ffae00;
}

#antena #insurance ul {
  justify-content: center;
  margin-bottom: 60px;
}

#antena #insurance ul li {
  padding: 0 5px;
}

#antena #insurance ul li img {
  -moz-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
}

#antena #insurance .txt02 {
  text-align: center;
  font-size: 30px;
  margin-bottom: 60px;
}

#antena #insurance .btm {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
}

#antena #insurance .btm span {
  color: #007d67;
  font-weight: 900;
}

@media only screen and (max-width: 1200px) {

  #antena #insurance h3 {
    font-size: 4vw;
    margin-bottom: 5%;
  }

  #antena #insurance h3 .fs_b {
    font-size: 6vw;
  }

  #antena #insurance ul {
    width: 65%;
    margin: 0 auto 5%;
  }

  #antena #insurance .txt02 {
    font-size: 2.6vw;
    margin-bottom: 5%;
  }

  #antena #insurance .btm {
    font-size: 5vw;
  }
}


@media only screen and (max-width: 768px) {

  #antena #insurance {
    margin-top: 60px;
  }

  #antena #insurance h3 {
    font-size: 6vw;
    margin-bottom: 8%;
  }

  #antena #insurance h3 .fs_b {
    font-size: 8vw;
  }

  #antena #insurance ul {
    flex-wrap: nowrap;
    width: 100%;
    margin-bottom: 8%;
  }

  #antena #insurance ul li {
    width: 33%;
  }

  #antena #insurance .txt02 {
    font-size: 3.6vw;
    margin-bottom: 8%;
  }

  #antena #insurance .btm {
    font-size: 7vw;
  }

}

@media only screen and (max-width: 480px) {

  #antena #insurance h3,
  #antena #insurance .btm {
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

}


/* ==============================================
 EV充電設備工事
=============================================== */

#ev.page #pagemv {
  background-image: url(./images/pagemv_ev.jpg);
}

@media only screen and (max-width: 768px) {

  #ev.page #pagemv {
    background-image: url(./images/pagemv_ev_sp.jpg);
  }

}

#ev.page #fv .img {
  position: relative;
}

#ev.page #fv .img img {
  max-width: initial;
  width: 100%;
}

#ev.page #fv .price {
  color: #d40409;
  text-shadow:
    3px 3px 3px #fff, -3px -3px 3px #fff,
    -3px 3px 3px #fff, 3px -3px 3px #fff,
    3px 0px 3px #fff, -3px -0px 3px #fff,
    0px 3px 3px #fff, 0px -3px 3px #fff;
  font-size: 1.8vw;
  font-weight: bold;
  font-style: oblique;
  line-height: 1;
  position: absolute;
  top: 80%;
  left: 18%;
}

#ev.page #fv .price span {
  font-size: 2.8vw;
  font-weight: bold;
}

@media only screen and (max-width: 768px) {

  #ev.page #fv .price {
    font-size: 4.8vw;
    top: 59%;
    left: 4%;
  }

  #ev.page #fv .price span {
    font-size: 7.8vw;
  }

}

#ev.page .breadcrumbs {
  background: none;
}

#ev.page .breadcrumbs p,
#ev.page .breadcrumbs p a,
#ev.page .breadcrumbs p a:hover {
  color: #000;
}


/* #maker
----------------------------------------------- */

#ev.page #maker {
  padding-bottom: 0;
}

#ev.page #maker h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#ev.page #maker .logo {
  text-align: center;
  position: relative;
  z-index: 1;
  padding-right: 5%;
}

#ev.page #maker .txt01 {
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 60px;
}

#ev.page .sky_block {
  padding-top: 250px;
  margin-top: -220px;
}


@media only screen and (max-width: 1200px) {

  #ev.page #maker h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #ev.page #maker .logo img {
    width: 60%;
  }

  #ev.page #maker .txt01 {
    font-size: 3.4vw;
    margin-top: 5%;
  }

  #ev.page .sky_block {
    padding-top: 20%;
    margin-top: -15%;
  }

}

@media only screen and (max-width: 768px) {

  #ev.page #maker h3 {
    font-size: 8vw;
    margin-bottom: 5%;
  }

  #ev.page #maker .logo {
    padding-right: 0;
  }

  #ev.page #maker .logo img {
    width: 94%;
  }

  #ev.page #maker .txt01 {
    font-size: 5.4vw;
    margin-top: 7%;
  }

  #ev.page #maker .sky_block .inner::after {
    width: 45%;
    height: 0;
    padding: 0 0 52%;
  }

  #ev.page .sky_block {
    padding-top: 0%;
    margin-top: -10%;
  }

}

/* #about
----------------------------------------------- */

#ev.page #about {
  background-image: url(./images/ev_about_bg01.jpg);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#ev.page #about h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#ev.page #about .box {
  width: 90%;
  margin: 0 auto;
  -moz-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
}

#ev.page #about .box h4 {
  background: #007d67;
  text-align: center;
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  line-height: 1;
  padding: 30px;
}

#ev.page #about .box .img {
  width: 50%;
}

#ev.page #about .box .img img {
  max-width: initial;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#ev.page #about .box .txt {
  width: 50%;
  padding: 30px;
  background: #fff;
  font-size: 26px;
  /* text-align: center; */
  text-align: start;
  font-size: 18px;
}

@media only screen and (max-width: 1200px) {

  #ev.page #about h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #ev.page #about .box h4 {
    font-size: 3.4vw;
    padding: 3% 2%;
  }

  #ev.page #about .box .txt {
    padding: 3%;
    /* font-size: 2.2vw;   */
    font-size: 1.45vw;
  }
}

@media only screen and (max-width: 768px) {

  #ev.page #about h3 {
    font-size: 8vw;
    margin-bottom: 8%;
  }

  #ev.page #about {
    background-position: 0% center;
  }

  #ev.page #about .box .flex {
    display: block;
  }

  #ev.page #about .box h4 {
    font-size: 5.4vw;
    padding: 5% 3%;
  }

  #ev.page #about .box .txt {
    width: 100%;
    font-size: 3.6vw;
  }

  #ev.page #about .box .img {
    width: 100%;
  }
}

/* #no_margin
----------------------------------------------- */

#ev.page #no_margin {
  background-image: url(./images/ev_no_margin_bg01.jpg);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#ev.page #no_margin .top {
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  color: #fff;
  font-style: oblique;
  line-height: 1.2;
  text-shadow:
    3px 3px 3px #2ca79a, -3px -3px 3px #2ca79a,
    -3px 3px 3px #2ca79a, 3px -3px 3px #2ca79a,
    3px 0px 3px #2ca79a, -3px -0px 3px #2ca79a,
    0px 3px 3px #2ca79a, 0px -3px 3px #2ca79a;
  margin-bottom: 40px;
}

#ev.page #no_margin h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  color: #3fbeb1;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
  line-height: 1.2;
  margin-bottom: 60px;
}

#ev.page #no_margin h3 span {
  font-size: 72px;
  font-weight: 900;
}

#ev.page #no_margin h3 .orange {
  color: #ffae00;
}

#ev.page #no_margin .txt01 {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 10px;
}

#ev.page #no_margin .txt01 .red {
  font-size: 36px;
  font-weight: 900;
  font-style: oblique;
  color: #ff0000;
}

#ev.page #no_margin .txt02 {
  margin-bottom: 60px;
}

#ev.page #no_margin .img02 {
  position: relative;
}

#ev.page #no_margin .img02 .store {
  position: absolute;
  font-size: 24px;
  line-height: 1;
  top: 50%;
  left: 5%;
}

#ev.page #no_margin .img02 .store .fs_b {
  font-size: 36px;
}

#ev.page #no_margin .notice {
  text-align: center;
  color: #ff0000;
  font-size: 24px;
  line-height: 1.4;
  margin-top: 30px;
}

@media only screen and (max-width: 1200px) {

  #ev.page #no_margin .top {
    font-size: 3vw;
    margin-bottom: 3%;
  }

  #ev.page #no_margin h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #ev.page #no_margin h3 span {
    font-size: 6vw;
  }

  #ev.page #no_margin .txt01 {
    font-size: 2.7vw;
  }

  #ev.page #no_margin .txt01 .red {
    font-size: 3.2vw;
  }

  #ev.page #no_margin .txt02 {
    margin-bottom: 5%;
  }

  #ev.page #no_margin .img02 .store {
    font-size: 2vw;
  }

  #ev.page #no_margin .img02 .store .fs_b {
    font-size: 3vw;
  }

  #ev.page #no_margin .notice {
    font-size: 2vw;
  }

}

@media only screen and (max-width: 768px) {

  #ev.page #no_margin {
    background-image: url(./images/ev_no_margin_bg01_sp.jpg);
    background-position: center top;
  }

  #ev.page #no_margin .top {
    font-size: 6vw;
  }

  #ev.page #no_margin h3 {
    font-size: 9vw;
    margin-bottom: 7%;
  }

  #ev.page #no_margin h3 span {
    font-size: 10vw;
  }

  #ev.page #no_margin .txt01 {
    font-size: 4vw;
  }

  #ev.page #no_margin .txt01 .red {
    font-size: 4.8vw;
  }

  #ev.page #no_margin .img02 .store {
    font-size: 3.6vw;
    top: 46%;
    left: 9%;
  }

  #ev.page #no_margin .img02 .store .fs_b {
    font-size: 4.6vw;
  }

  #ev.page #no_margin .notice {
    font-size: 3.6vw;
  }

}

@media only screen and (max-width: 414px) {

  #ev.page #no_margin .top {
    text-shadow:
      2px 2px 2px #2ca79a, -2px -2px 2px #2ca79a,
      -2px 2px 2px #2ca79a, 2px -2px 2px #2ca79a,
      2px 0px 2px #2ca79a, -2px -0px 2px #2ca79a,
      0px 2px 2px #2ca79a, 0px -2px 2px #2ca79a;
    margin-bottom: 40px;
  }

  #ev.page #no_margin h3 {
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

}

/* #cost
----------------------------------------------- */

#ev.page #cost {
  background: #e7fefc;
  padding-bottom: 0;
}

#ev.page #cost h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1;
  margin-bottom: 80px;
  position: relative;
}

#ev.page #cost h3::after {
  content: "";
  width: 60px;
  height: 3px;
  background: #000;
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#ev.page #cost .top {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 80px;
}

#ev.page #cost .img01 {
  position: relative;
  margin-bottom: 60px;
}

#ev.page #cost .img01 .cost_num {
  position: absolute;
  font-size: 36px;
  font-weight: bold;
  color: #dd1c3c;
  line-height: 1;
  top: 48%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#ev.page #cost .img01 .cost_num span {
  font-size: 80px;
  font-weight: bold;
}

#ev.page #cost .notice {
  text-align: center;
  margin-bottom: 60px;
}

#ev.page #cost .notice span {
  display: inline-block;
  line-height: 1.4;
  text-align: left;
  color: #ff0000;
  font-size: 24px;
}

@media only screen and (max-width: 768px) {

  #ev.page #cost h3 {
    font-size: 8vw;
    margin-bottom: 11%;
  }

  #ev.page #cost h3::after {
    width: 10%;
    bottom: -55%;
  }

  #ev.page #cost .top {
    font-size: 4.2vw;
    margin-bottom: 10%;
  }

  #ev.page #cost .img01 {
    margin-bottom: 8%;
  }

  #ev.page #cost .img01 img {
    width: 70%;
  }

  #ev.page #cost .img01 .cost_num {
    font-size: 6vw;
    width: 100%;
    text-align: center;
  }

  #ev.page #cost .img01 .cost_num span {
    font-size: 10vw;
  }

  #ev.page #cost .notice {
    margin-bottom: 8%;
  }

  #ev.page #cost .notice span {
    font-size: 3.6vw;
  }

}


/* #type
----------------------------------------------- */

#ev.page #type {
  background: #2ca79a;
  background: url(./images/cta_section_bg01.jpg);
}

#ev.page #type .txt01 {
  text-align: center;
  font-size: 36px;
  margin-bottom: 20px;
  line-height: 1.4;
  color: #fff;
}

#ev.page #type h3 {
  text-align: center;
  font-size: 60px;
  font-weight: bold;
  font-style: oblique;
  margin-bottom: 40px;
  color: #fff;
  line-height: 1.4;
}

#ev.page #type .tab {
  width: 85%;
  margin: 0 auto;
}

#ev.page #type .tab .content-box {
  display: none;
}

#ev.page #type .tab .tab-list {
  display: flex;
}

#ev.page #type .tab .tab-list li {
  width: 50%;
  -webkit-border-top-left-radius: 40px;
  -webkit-border-top-right-radius: 40px;
  -moz-border-radius-topleft: 40px;
  -moz-border-radius-topright: 40px;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 10px;
  padding-top: 15px;
  line-height: 1;
}

#ev.page #type .tab .tab-list li span {
  font-weight: bold;
}

#ev.page #type .tab .tab-list .current {
  font-size: 30px;
  padding-top: 10px;
}

#ev.page #type .tab .tab-list .current span {
  position: relative;
  padding-right: 14%;
}

#ev.page #type .tab .tab-list .current span::after {
  content: "";
  width: 26%;
  height: 0;
  padding: 0 0 14%;
  margin-left: 4%;
  aspect-ratio: 44 / 24;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 54%;
  right: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#ev.page #type .tab .tab-list .current.menu01 span::after {
  background-image: url(./images/ev_type_icon03.png);
}

#ev.page #type .tab .tab-list .current.menu02 span::after {
  background-image: url(./images/ev_type_icon02.png);
}

#ev.page #type .tab .tab-list .menu01 {
  background: #c0b02e;
}

#ev.page #type .tab .tab-list .menu01.current {
  background: #ffb400;
}

#ev.page #type .tab .tab-list .menu02 {
  background: #1279aa;
}

#ev.page #type .tab .tab-list .menu02.current {
  background: #0063ad;
}

#ev.page #type .tab .content-box {
  background: #fff;
}

#ev.page #type .tab .content-box .flex .item {
  width: 50%;
  padding: 40px;
  color: #fff;
}

#ev.page #type .tab .content-box .flex .item.left {
  padding-bottom: 40px;
}

#ev.page #type .tab .content-box.box01 .flex .item.right {
  padding-left: 0px;
}

#ev.page #type .tab .content-box.box01 .flex .item {
  background: #ffb400;
}

#ev.page #type .tab .content-box.box02 .flex .item {
  background: #0063ad;
}

#ev.page #type .tab .content-box.box01 .flex .left {
  /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
}

#ev.page #type .tab .content-box.box02 .flex .left {
  order: 1;
  /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
}

#ev.page #type .tab .content-box .flex .right .title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 10px;
}

#ev.page #type .tab .content-box .flex .right .txt {
  font-size: 18px;
}

#ev.page #type .lower {
  margin-top: 80px;
  text-align: center;
}

#ev.page #type .lower .txt {
  font-size: 72px;
  font-weight: 900;
  color: #1c867b;
  font-style: oblique;
  line-height: 1;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
  margin-bottom: 40px;
}

#ev.page #type .lower .txt02 {
  font-size: 62px;
}

#ev.page #type .lower .img01,
#ev.page #type .lower .img02 {
  margin-bottom: 80px;
}

#ev.page #type .lower .btm {
  color: #fff;
  font-size: 30px;
  line-height: 1.4;
}

#ev.page #type .tab .tab-list2 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 28px;
}

#ev.page #type .tab .tab-list2 li {
  width: 21px;
  aspect-ratio: 1/1;
  height: 21px;
  border-radius: 50%;
  border: #fff 3px solid;
  margin-right: 2.5px;
  margin-left: 2.5px;
}

#ev.page #type .tab .tab-list2 li.current {
  width: 28px;
  aspect-ratio: 1/1;
  height: 28px;
  border-radius: 50%;
  background-color: #FFF;
}

@media only screen and (max-width: 1200px) {

  #ev.page #type .txt01 {
    font-size: 3vw;
    margin-bottom: 2%;
  }

  #ev.page #type h3 {
    font-size: 5vw;
    margin-bottom: 4%;
  }

  #ev.page #type .tab .content-box .flex .item {
    padding: 4%;
  }

  #ev.page #type .tab .content-box .flex .right .title {
    font-size: 2.2vw;
    margin-bottom: 0.8%;
  }

  #ev.page #type .tab .content-box .flex .right .txt {
    font-size: 1.6vw;
    line-height: 1.6;
  }

  #ev.page #type .lower .txt {
    font-size: 6.6vw;
    margin-bottom: 4.5%;
  }

  #ev.page #type .lower .img01,
  #ev.page #type .lower .img02 {
    margin-bottom: 7%;
  }

  #ev.page #type .lower .img01 img,
  #ev.page #type .lower .img02 img {
    width: 65%;
  }

  #ev.page #type .lower .btm {
    font-size: 2.4vw;
  }

}

@media only screen and (max-width: 768px) {

  #ev.page #type .txt01 {
    font-size: 5vw;
    margin-bottom: 4%;
  }

  #ev.page #type h3 {
    font-size: 7vw;
    margin-bottom: 8%;
  }

  #ev.page #type .tab .tab-list li {
    font-size: 3vw;
    padding-top: 18px;
  }

  #ev.page #type .tab .tab-list .current {
    font-size: 4vw;
    padding-top: 15px
  }

  #ev.page #type .tab {
    width: 100%;
  }

  /* #ev.page #type .tab .content-box.box01 .flex .item,#ev.page #type .tab .content-box.box02 .flex .item{
    background-color: #fff;
  } */

  #ev.page #type .tab .content-box.box01 .flex .left {
    /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 55%, #fff 55%, #fff 100%); */
    /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
  }

  #ev.page #type .tab .content-box.box02 .flex .left {
    order: 1;
    /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 55%, #fff 55%, #fff 100%); */
    /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
  }

  #ev.page #type .tab .content-box .flex .item {
    /* color: #000; */
    width: 100%;
  }

  #ev.page #type .tab .content-box .flex .left,
  #ev.page #type .tab .content-box .flex .item.left {
    padding: 10% 5% 0;
  }

  #ev.page #type .tab .content-box .flex .right,
  #ev.page #type .tab .content-box.box01 .flex .item.right {
    padding: 5% 5% 10%;
  }

  #ev.page #type .tab .content-box .flex .right .title {
    font-size: 4.2vw;
  }

  #ev.page #type .tab .content-box .flex .right .txt {
    font-size: 3.6vw;
  }

  #ev.page #type .tab .content-box.box02 .flex .left {
    order: 0;
  }

  #ev.page #type .tab .tab-list li {
    -webkit-border-top-left-radius: 20px;
    -webkit-border-top-right-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-topright: 20px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }

  #ev.page #type .tab .tab-list .current span {
    padding-right: 26%;
  }

  #ev.page #type .lower {
    margin-top: 15%;
  }

  #ev.page #type .lower .txt {
    font-size: 9vw;
  }

  #ev.page #type .lower .img01,
  #ev.page #type .lower .img02 {
    margin-bottom: 9%;
  }

  #ev.page #type .lower .img01 img,
  #ev.page #type .lower .img02 img {
    width: 90%;
  }

  #ev.page #type .lower .btm {
    font-size: 4vw;
  }

  #ev.page #type .tab .tab-list2 li {
    width: 4%;
    height: 4%;
    margin-right: 0.6%;
    margin-left: 0.6%;
    border: 0.3px solid #fff;
  }

  #ev.page #type .tab .tab-list2 li.current {
    width: 5%;
    height: 5%;
  }

}


@media only screen and (max-width: 414px) {

  #ev.page #type .tab .tab-list li {
    font-size: 4vw;
  }

  #ev.page #type .tab .tab-list .current {
    font-size: 5vw;
  }

  #ev.page #type .tab .content-box .flex .right .title {
    font-size: 4.6vw;
  }

  #ev.page #type .tab .content-box .flex .right .txt {
    font-size: 4vw;
  }

  #ev.page #type .lower .txt {
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }
}

/* #comparison
----------------------------------------------- */

#ev.page #comparison {
  background-image: url(./images/ev_comparison_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#ev.page #comparison h3 {
  margin-bottom: 80px;
}

#ev.page #comparison ul {
  width: 65%;
}

#ev.page #comparison ul li {
  position: relative;
  padding-left: 3%;
  font-size: 18px;
  font-weight: bold;
}

#ev.page #comparison ul li::before {
  content: "";
  width: 3%;
  position: absolute;
  top: 0;
  left: 0%;
}

#ev.page #comparison ul li:first-child::before {
  content: "*1";
}

#ev.page #comparison ul li:nth-child(2)::before {
  content: "*2";
}

#ev.page #comparison ul li:nth-child(3)::before {
  content: "*3";
}

#ev.page #comparison ul li:nth-child(4)::before {
  content: "*4";
}


@media only screen and (max-width: 1200px) {

  #ev.page #comparison h3 {
    margin-bottom: 7%;
  }

  #ev.page #comparison h3 img {
    width: 60%;
  }

  #ev.page #comparison ul li {
    padding-left: 5%;
    font-size: 1.6vw;
  }

  #ev.page #comparison ul li::before {
    width: 5%;
  }

}


@media only screen and (max-width: 768px) {

  #ev.page #comparison {
    background-image: url(./images/ev_comparison_bg01_sp.jpg)
  }

  #ev.page #comparison h3 img {
    width: 100%;
  }

  #ev.page #comparison ul {
    width: 80%;
  }

  #ev.page #comparison ul li {
    padding-left: 7%;
    ;
    font-size: 2.6vw;
  }

  #ev.page #comparison ul li::before {
    width: 7%;
  }

}

/* #space
----------------------------------------------- */

#ev.page #space {
  background-image: url(./images/ev_space_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: auto 30%;
  background-size: auto 30%;
}

#ev.page #space h3 {
  text-align: center;
  color: #fff;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  -moz-text-shadow: 5px 5px 2px rgba(0, 0, 0, 0.2);
  -webkit-text-shadow: 5px 5px 2px rgba(0, 0, 0, 0.2);
  -ms-text-shadow: 5px 5px 2px rgba(0, 0, 0, 0.2);
  text-shadow: 5px 5px 2px rgba(0, 0, 0, 0.2);
  margin-bottom: 60px;
}

#ev.page #space .top {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 60px;
}

#ev.page #space .orange {
  text-align: center;
  color: #ffb400;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 60px;
}

#ev.page #space .type01 {
  width: 80%;
  margin: 0 auto;
  margin-bottom: 40px;
}

#ev.page #space .type01 .img {
  width: 50%;
  padding: 0 10px;
}

#ev.page #space .type02 {
  width: 80%;
  margin: 0 auto;
  margin-bottom: 60px;
}

#ev.page #space .type02 .img {
  width: 33%;
  padding: 0 10px;
}

#ev.page #space .txt01 {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 80px;
}

#ev.page #space .txt01 .line {
  display: inline-block;
  color: #007d67;
  font-weight: bold;
  background-image: linear-gradient(transparent 50%, #fbfd3b 50%);
}

#ev.page #space .option h4 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#ev.page #space .option .table {
  width: 90%;
  margin: 0 auto;
  margin-bottom: 60px;
}

#ev.page #space .option .table .wrapper {
  justify-content: center;
}

#ev.page #space .option .table .wrapper #sclollcontent {
  display: flex;
  width: 66%;
}

#ev.page #space .option .table p {
  font-size: 24px;
  line-height: 1.2;
  text-align: center;
}

#ev.page #space .option .table .unit p {
  height: 120px;
}

#ev.page #space .option .table .content {
  width: 33%;
}

#ev.page #space .option .table .content00 {
  display: none;
}

#ev.page #space .option .table .content01 p {
  font-weight: bold;
}

#ev.page #space .option .table .content02,
#ev.page #space .option .table .content03 {
  flex-grow: 0.5;
}

#ev.page #space .option .table .content .head p {
  background: #2ea79b;
  color: #fff;
  padding: 15px 10px;
  position: relative;
}

/* #ev.page #space .option .table .content .head p::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 10px;
  margin-top: -8px;
  width: 16px;
  height: 16px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
} */

/* #ev.page #space .option .table .content .head p::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 10px;
  margin-top: -8px;
  width: 16px;
  height: 16px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
} */

#ev.page #space .option .table .content01 .head p::before,
#ev.page #space .option .table .content01 .head p::after {
  content: none;
}

#ev.page #space .option .table .content .unit {
  padding: 10px;
  display: table;
  width: 100%;
  border-bottom: 2px solid #007d67;
}

#ev.page #space .option .table .content .unit p {
  background: #e7fefc;
  display: table-cell;
  width: 100%;
  vertical-align: middle;
  padding: 10px;
}

#ev.page #space .txt02 {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 60px;
}

#ev.page #space .txt02 .line {
  display: inline-block;
  font-size: 34px;
  font-weight: bold;
  font-style: oblique;
  background-image: linear-gradient(transparent 60%, #fbfd3b 40%);
}

#ev.page #space .notice {
  text-align: center;
  font-size: 20px;
  line-height: 1.4;
  color: #ff0000;
}

@media only screen and (max-width: 1200px) {

  #ev.page #space h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #ev.page #space .top {
    font-size: 2.7vw;
    margin-bottom: 5%;
  }

  #ev.page #space .orange {
    font-size: 3.4vw;
    margin-bottom: 5%;
  }

  #ev.page #space .type01 {
    margin-bottom: 4%;
  }

  #ev.page #space .type02 {
    margin-bottom: 5%;
  }

  #ev.page #space .txt01 {
    font-size: 2.4vw;
    margin-bottom: 7%;
  }

  #ev.page #space .option h4 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #ev.page #space .option .table {
    margin-bottom: 5%;
  }

  #ev.page #space .option .table p {
    font-size: 2vw;
  }

  #ev.page #space .option .table .content .head p {
    padding: 5% 4%;
  }

  #ev.page #space .option .table .content .unit p {
    height: 100px;
  }

  #ev.page #space .txt02 {
    font-size: 2.4vw;
    margin-bottom: 5%;
  }

  #ev.page #space .txt02 .line {
    font-size: 2.8vw;
  }

  #ev.page #space .notice {
    font-size: 1.8vw;
  }

}

@media only screen and (max-width: 768px) {

  #ev.page #space h3 {
    font-size: 8vw;
  }

  #ev.page #space .top {
    font-size: 4.2vw;
  }

  #ev.page #space .orange {
    font-size: 5vw;
  }

  #ev.page #space .type01 .img {
    width: 100%;
  }

  #ev.page #space .type01 .img01 {
    margin-bottom: 4%;
  }

  #ev.page #space .type02 {
    width: 100%;
  }

  #ev.page #space .type02 .img {
    padding: 0 5px;
  }

  #ev.page #space .txt01 {
    font-size: 3.4vw;
  }

  #ev.page #space .option h4 {
    font-size: 7vw;
  }

  #ev.page #space .option .table p {
    font-size: 16px;
  }

  #ev.page #space .option .table .content {
    width: 356px;
  }

  #ev.page #space .option .table .content .head p {
    padding: 15px 10px;
  }

  #ev.page #space .option .table .content .unit {
    white-space: nowrap;
    padding: 8px 5px;
  }

  #ev.page #space .option .table .content .unit p {
    height: 75px;
  }

  #ev.page #space .txt02 {
    font-size: 3.4vw;
  }

  #ev.page #space .txt01 {
    font-size: 3.4vw;
  }

  #ev.page #space .txt02 .line {
    font-size: 4.2vw;
  }

  #ev.page #space .notice {
    font-size: 2.4vw;
  }

  #ev.page #space .option .table .wrapper {
    width: 100%;
    flex-wrap: nowrap;
  }

  #ev.page #space .option .table .wrapper #sclollcontent {
    overflow: scroll;
    width: 347px;
  }

  #ev.page #space .option .table .content01 {
    /* position: absolute;
    top: 0;
    left: 0;
    width: 200px; */
    width: 300px;
    z-index: 1;
    border-right: 8px solid #66b1a4;
    background: #fff;
  }

}

@media only screen and (max-width: 650px) {

  #ev.page #space .option .table {
    width: 100%;
    position: relative;
  }

  #ev.page #space .option .table .scroll {
    overflow-x: scroll;
  }

  #ev.page #space .option .table .content00 {
    display: block;
  }

}

@media only screen and (max-width: 440px) {

  #ev.page #space h3,
  #ev.page #space .type02 {
    margin-bottom: 8%;
  }

  #ev.page #space .txt01 {
    margin-bottom: 11%;
  }

  /* #ev.page #space .option .table .wrapper {
    width: 450px;
  } */

  #ev.page #space .option .table .content01 {
    width: 152px;
    border-right: 5px solid #66b1a4;
  }

  #ev.page #space .option .table p {
    font-size: 14px;
  }

  #ev.page #space .option .table .content .head p {
    padding: 10px 5px;
  }

  #ev.page #space .option .table .content .unit p {
    height: 72px;
  }

  #ev.page #space .option .table .content .unit {
    padding: 8px 5px 8px 0px;
  }
}

/* #convenience
----------------------------------------------- */

#ev.page #convenience {
  background: url(./images/ev_convenience_bg01.jpg);
}

#ev.page #convenience h3 {
  text-align: center;
  color: #fff;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#ev.page #convenience h3 .orange {
  font-weight: 900;
  color: #ffb400;
  text-shadow:
    2px 2px 2px #fff, -2px -2px 2px #fff,
    -2px 2px 2px #fff, 2px -2px 2px #fff,
    2px 0px 2px #fff, -2px -0px 2px #fff,
    0px 2px 2px #fff, 0px -2px 2px #fff;
}

#ev.page #convenience .flex01 {
  width: 80%;
  flex-wrap: wrap;
  margin: 0 auto;
}

#ev.page #convenience .flex01 li {
  width: 50%;
  padding: 0 10px;
  margin-bottom: 30px;
}

#ev.page #convenience .flex01 li .img {
  position: relative;
  max-width: 432px;
  margin: 0 auto;
}

#ev.page #convenience .flex01 li .img .txt {
  position: absolute;
  top: 50%;
  left: 10px;
  text-align: left;
  font-size: 20px;
}


#ev.page #convenience .flex01 li .img .txt {
  position: absolute;
  top: 55%;
  left: 8%;
  text-align: left;
  font-size: 20px;
  width: 82%;
}

#ev.page #convenience .flex01 li .img03 .txt,
#ev.page #convenience .flex01 li .img04 .txt {
  top: 50%;
}


@media only screen and (max-width: 1200px) {

  #ev.page #convenience h3 {
    font-size: 5vw;
    margin-bottom: 6%;
  }

  #ev.page #convenience .flex01 li .img {
    max-width: initial;
  }

  #ev.page #convenience .flex01 li .img img {
    max-width: initial;
    width: 100%;
  }

  #ev.page #convenience .flex01 li .img .txt {
    font-size: 1.6vw;
  }


}

@media only screen and (max-width: 768px) {

  #ev.page #convenience h3 {
    font-size: 6.5vw;
    margin-bottom: 8%;
  }

  #ev.page #convenience .convenience_slider_items {
    width: 85%;
    margin: 0 auto 10%;
  }

  #ev.page #convenience .convenience_slider_items img {
    width: 100%;
    padding-left: 3%;
  }

  #ev.page #convenience .convenience_slider_items .img {
    position: relative;
  }

  #ev.page #convenience .convenience_slider_items .img .txt {
    position: absolute;
    top: 55%;
    left: 9%;
    text-align: left;
    font-size: 3.6vw;
    width: 82%;
  }

  #ev.page #convenience .convenience_slider_items .img03 .txt,
  #ev.page #convenience .convenience_slider_items .img04 .txt {
    top: 50%;
  }

  #ev.page #convenience .slick-dots {
    bottom: -10%;
  }

  #ev.page #convenience .slick-dots li,
  #ev.page #convenience .slick-dots li button {
    width: 30px;
    height: 30px;
    padding: 0;
  }

  #ev.page #convenience .slick-dots li button::before {
    content: "";
    width: 20px;
    height: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    border: 2px solid #fff;
    opacity: 1;
  }

  #ev.page #convenience .slick-dots li.slick-active button:before {
    background: #fff;
  }

  #ev.page #convenience .slick-prev,
  #ev.page #convenience .slick-next {
    width: 36px;
    height: 50px;
  }

  #ev.page #convenience .slick-prev {
    left: -36px;
  }

  #ev.page #convenience .slick-next {
    right: -36px;
  }

  #ev.page #convenience .convenience_slider_items .slick-prev:before {
    content: "";
    display: block;
    width: 36px;
    height: 50px;
    aspect-ratio: 36 / 50;
    background-image: url(./images/ev_convenience_prev.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

  #ev.page #convenience .convenience_slider_items .slick-next:before {
    content: "";
    display: block;
    width: 36px;
    height: 50px;
    aspect-ratio: 36 / 50;
    background-image: url(./images/ev_convenience_next.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

}

@media only screen and (max-width: 480px) {

  #ev.page #convenience .convenience_slider_items {
    width: 100%;
  }

  #ev.page #convenience .convenience_slider_items .img .txt {
    font-size: 4.4vw;
  }

  #ev.page #convenience .slick-prev,
  #ev.page #convenience .slick-next {
    width: 20px;
    height: 26px;
  }

  #ev.page #convenience .slick-prev {
    left: -10px;
  }

  #ev.page #convenience .slick-next {
    right: -10px;
  }

  #ev.page #convenience .convenience_slider_items .slick-prev:before,
  #ev.page #convenience .convenience_slider_items .slick-next:before {
    width: 20px;
    height: 26px;
  }

  #ev.page #convenience .convenience_slider_items .slick-dots li,
  #ev.page #convenience .convenience_slider_items .slick-dots li button {
    width: 25px;
    height: 25px;
  }

  #ev.page #convenience .convenience_slider_items .slick-dots li button::before {
    width: 15px;
    height: 15px;
    border: 1px solid #fff;
  }
}

/* #recommendation
----------------------------------------------- */

#ev.page #recommendation {
  background: #e6f2f4;
  padding: 0;
}

#ev.page #recommendation .left {
  width: 43%;
}

#ev.page #recommendation .right {
  width: 57%;
}

#ev.page #recommendation .left {
  background-image: url(./images/ev_recommendation_img01.jpg);
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#ev.page #recommendation .right {
  padding: 100px 10% 100px 5%;
}

#ev.page #recommendation .right h3 {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 30px;
}

#ev.page #recommendation .right h3 span {
  color: #00be86;
  font-weight: bold;
}

#ev.page #recommendation .right .txt {
  font-size: 18px;
}


@media only screen and (max-width: 1600px) {

  #ev.page #recommendation .right {
    padding: 5% 10% 5% 4%;
  }

}

@media only screen and (max-width: 1400px) {

  #ev.page #recommendation .right {
    padding: 5% 5% 5% 3%;
  }

}

@media only screen and (max-width: 1200px) {

  #ev.page #recommendation .right h3 {
    font-size: 2.6vw;
    margin-bottom: 5%;
  }

  #ev.page #recommendation .right .txt {
    font-size: 1.6vw;
  }

}

@media only screen and (max-width: 768px) {

  #ev.page #recommendation .item {
    width: 100%;
  }

  #ev.page #recommendation .left {
    margin: 10% 3% 6%;
    padding: 0 0 56%;
  }

  #ev.page #recommendation .right {
    padding: 0 3% 10%;
  }

  #ev.page #recommendation .right h3 {
    font-size: 4.8vw;
  }

  #ev.page #recommendation .right .txt {
    font-size: 3.2vw;
  }

}


/* #business
----------------------------------------------- */

#ev.page #business {
  background: #e6f2f4;
}

#ev.page #business h3 {
  text-align: center;
  margin-bottom: 40px;
}

#ev.page #business .txt01 {
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  margin-bottom: 60px;
}

#ev.page #business .txt01 span {
  color: #00be86;
  font-weight: bold;
}

#ev.page #business .flex .item {
  width: 49%;
}

#ev.page #business .flex {
  margin-bottom: 80px;
}

#ev.page #business .flex ul li {
  position: relative;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.4;
  padding: 20px 10px;
  padding-left: 9%;
}

#ev.page #business .flex ul li::before {
  content: "";
  width: 6%;
  height: 0;
  padding: 0 0 6%;
  background-image: url(./images/ev_business_icon01.png);
  aspect-ratio: 31 / 31;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#ev.page #business .flex ul li::after {
  content: "";
  width: 100%;
  height: 4px;
  background-image: url(./images/ev_business_line.png);
  background-repeat: repeat-x;
  position: absolute;
  bottom: -4px;
  left: 0;
}

#ev.page #business .case {
  width: 1000px;
  margin: 0 auto;
  border: 3px solid #00be86;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  background: #fff;
  padding: 40px;
}

#ev.page #business .case h4 {
  text-align: center;
}

#ev.page #business .case h4 span {
  display: inline-block;
  position: relative;
  font-size: 30px;
  font-weight: bold;
  color: #00be86;
  line-height: 1;
  margin-bottom: 40px;
}

#ev.page #business .case h4 span::after {
  content: "";
  width: 12%;
  height: 0;
  padding: 0 0 12%;
  background-image: url(./images/ev_business_icon02.png);
  aspect-ratio: 32 / 29;
  background-position: center;
  background-repeat: no-repeat;
  -moz-background-size: contain;
  background-size: contain;
  position: absolute;
  top: -60%;
  right: -10%;
}

#ev.page #business .case .txt {
  font-size: 22px;
}

@media only screen and (max-width: 1200px) {

  #ev.page #business h3 {
    margin-bottom: 4%;
  }


  #ev.page #business h3 img {
    width: 80%;
  }

  #ev.page #business .txt01 {
    font-size: 3.4vw;
    margin-bottom: 5%;
  }

  #ev.page #business .flex ul li {
    font-size: 1.8vw;
    padding: 3% 2% 3% 9%;
  }

  #ev.page #business .flex {
    margin-bottom: 8%
  }

  #ev.page #business .case {
    width: 86%;
    padding: 4%;
  }

  #ev.page #business .case h4 span {
    font-size: 3vw;
    margin-bottom: 4%;
  }

  #ev.page #business .case .txt {
    font-size: 2vw;
  }

}

@media only screen and (max-width: 768px) {

  #ev.page #business .txt01 {
    font-size: 6vw;
    line-height: 1.4;
    margin-bottom: 6%;
  }

  #ev.page #business .flex .item {
    width: 100%;
  }

  #ev.page #business .flex .img {
    order: 1
  }

  #ev.page #business .flex ul {
    margin-bottom: 6%;
  }

  #ev.page #business .flex ul li {
    font-size: 4vw;
  }

  #ev.page #business .case {
    width: 100%;
  }

  #ev.page #business .case h4 span {
    font-size: 5vw;
  }

  #ev.page #business .case .txt {
    font-size: 3vw;
  }

}

/* ==============================================
 インターホン修理・工事
=============================================== */

#interphone.page #pagemv {
  background-image: url(./images/pagemv_interphone.jpg);
}

@media only screen and (max-width: 768px) {

  #interphone.page #pagemv {
    background-image: url(./images/pagemv_interphone_sp.jpg);
  }

}

/* #tips
----------------------------------------------- */

article.service.page #tips h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1;
  margin-bottom: 40px;
}

article.service.page #tips .top {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 60px;
}

article.service.page #tips ul.tb {
  display: none;
}

article.service.page #tips ul {
  width: 89%;
  margin: 0 auto 80px;
}

article.service.page #tips ul li {
  margin-bottom: 40px;
}

article.service.page #tips ul li .box {
  -moz-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
}

article.service.page #tips ul li .box h4 {
  background: #007d67;
  color: #fff;
  text-align: center;
  padding: 15px 10px;
  font-size: 36px;
  font-weight: bold;
}

article#consent.service.page #tips ul li:first-child .box h4 {
  line-height: 4;
}

article#tansou3.service.page #tips ul li:nth-child(2) .box h4 {
  line-height: 4;
}

article.service.page #tips ul li .box .flex p {
  width: 50%;
  background: #fff;
}

article.service.page ul li .box .flex .img img {
  max-width: initial;
  width: 100%;
}

article.service.page #tips ul li .box .flex .txt {
  padding: 20px;
  font-size: 18px;
}

article.service.page #tips ul li .box .flex.order .img {
  order: 1;
}

article.service.page #tips .sbbtm {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 40px;
}

article.service.page #tips .btm {
  text-align: center;
  line-height: 1.2;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  color: #3fbeb1;
}

article.service.page #tips .btm .orange {
  font-size: 72px;
  font-weight: 900;
  color: #ffae00;
}

article.service.page #tips .btm .store {
  font-size: 72px;
  font-weight: 900;
  color: #007d67;
}

@media only screen and (max-width: 1200px) {

  article.service.page #tips h3 {
    font-size: 5vw;
    margin-bottom: 4%;
  }

  article.service.page #tips .top {
    font-size: 2.4vw;
    margin-bottom: 7%;
  }

  article.service.page #tips ul {
    margin-bottom: 8%;
  }

  article.service.page #tips ul li {
    margin-bottom: 5%;
  }

  article.service.page #tips ul li .box h4 {
    font-size: 3vw;
    padding: 2%;
  }

  article.service.page #tips ul li .box .flex .txt {
    font-size: 1.45vw;
    padding: 2%;
  }


  article.service.page #tips .sbbtm {
    font-size: 2.4vw;
    margin-bottom: 4%;
  }

  article.service.page #tips .btm {
    font-size: 5vw;
  }

  article.service.page #tips .btm .orange,
  article.service.page #tips .btm .store {
    font-size: 6vw;
  }

}

@media only screen and (max-width: 768px) {

  article.service.page #tips ul.tb {
    display: block;
  }

  article.service.page #tips ul.pc {
    display: none;
  }

  article.service.page #tips h3 {
    font-size: 7vw;
    margin-bottom: 6%;
  }

  article.service.page #tips .top {
    font-size: 4vw;
  }

  article.service.page #tips ul {
    width: 85%;
    margin: 0 auto;
  }

  article.service.page #tips ul li {
    padding: 0 10px;
  }

  article.service.page #tips ul li .box .flex p {
    width: 100%;
  }

  article.service.page #tips ul li .box .flex.order .img {
    order: 0;
  }

  article.service.page #tips ul li .box h4 {
    align-items: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 18%;
    font-size: 2vw;
  }

  article.service.page #tips ul li .box .flex .txt {
    font-size: 3.6vw;
    padding: 3%;
  }

  article.service.page #tips .slick-dots {
    width: 100%;
    bottom: 3%;
  }

  article.service.page #tips .slick-dots li,
  article.service.page #tips .slick-dots li button {
    width: 30px;
    height: 30px;
    padding: 0;
  }

  article.service.page #tips .slick-dots li button::before {
    content: "";
    width: 20px;
    height: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    border: 2px solid #007d67;
    opacity: 1;
  }

  article.service.page #tips .slick-dots li.slick-active button:before {
    background: #007d67;
  }

  article.service.page #tips .slick-prev,
  article.service.page #tips .slick-next {
    width: 29px;
    height: 35px;
  }

  article.service.page #tips .slick-prev {
    left: -35px;
  }

  article.service.page #tips .slick-next {
    right: -35px;
  }

  article.service.page #tips ul .slick-prev:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_prev.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

  article.service.page #tips ul .slick-next:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_next.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

  article.service.page #tips .sbbtm {
    font-size: 4.4vw;
    margin-bottom: 5%;
  }

  article.service.page #tips .btm {
    font-size: 8vw;
  }

  article.service.page #tips .btm .orange,
  article.service.page #tips .btm .store {
    font-size: 9vw;
  }

}

@media only screen and (max-width: 767px) {
  article.service.page #tips ul li .box h4 {
    font-size: 4vw;
    height: 11rem;
  }
}

@media only screen and (max-width: 480px) {

  article.service.page #tips ul li .box h4 {
    font-size: 5vw;
  }

  article.service.page #tips ul li .box .flex .txt {
    font-size: 4vw;
    line-height: 1.8;
  }


  article.service.page #tips ul .slick-prev,
  article.service.page #tips ul .slick-next {
    width: 15px;
    height: 18px;
  }

  article.service.page #tips ul .slick-prev {
    left: -18px;
  }

  article.service.page #tips ul .slick-next {
    right: -18px;
  }

  article.service.page #tips ul .slick-prev:before,
  article.service.page #tips ul .slick-next:before {
    width: 15px;
    height: 18px;
  }

  article.service.page #tips ul .slick-dots li,
  article.service.page #tips ul .slick-dots li button {
    width: 25px;
    height: 25px;
  }

  article.service.page #tips ul .slick-dots li button::before {
    width: 15px;
    height: 15px;
    border: 1px solid #007d67;
  }

}

@media only screen and (max-width: 414px) {
  article#tansou3.service.page #tips ul li:nth-child(2) .box h4 {
    line-height: 1.6;
  }
}

/* ==============================================
 照明の交換・取付
=============================================== */

#light.page #pagemv {
  background-image: url(./images/pagemv_light.jpg);
}

@media only screen and (max-width: 768px) {

  #light.page #pagemv {
    background-image: url(./images/pagemv_light_sp.jpg);
  }

}

/* useful
----------------------------------------------- */


#light.page #useful ul li .contents .box p {
  display: flex;
  align-items: center;
}

#light.page #useful ul li .contents .box p img {
  width: 34%;
  margin-right: 10px;
}

#light.page #useful ul li .contents .box p span {
  width: 64%;
}


/* ==============================================
 4K・8K受信工事
=============================================== */

#work4k8k.page #pagemv {
  background-image: url(./images/pagemv_4k8k.jpg);
}

@media only screen and (max-width: 768px) {

  #work4k8k.page #pagemv {
    background-image: url(./images/pagemv_4k8k_sp.jpg);
  }

}

/* #sec02
----------------------------------------------- */

#work4k8k.page #sec02 {
  background-image: url(./images/4k8k_sec02_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#work4k8k.page #sec02 .free {
  background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(44, 167, 154, 1) 60%, rgba(255, 255, 255, 0) 100%);
}

#work4k8k.page #sec02 .price_list {
  justify-content: center;
}

#work4k8k.page #sec02 .price_list .box {
  padding: 0;
}

#work4k8k.page #sec02 .price_list li {
  width: 460px;
}

#work4k8k.page #sec02 .price_list .box h4 {
  background: #007d67;
  text-align: center;
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  padding: 20px 10px;
  line-height: 1;
}

#work4k8k.page #sec02 .price_list .contents {
  padding: 20px;
}

#work4k8k.page #sec02 .price_list li .box .menu_title {
  font-size: 20px;
  border-left: none;
  padding-left: 0;
  text-align: center;
}

article.service.page#work4k8k #sec02 .price_list li .box .price {
  text-align: center;
  margin-bottom: 20px;
}

article.service.page#work4k8k #sec02 .price_list li .box .price span {
  font-size: 48px;
  font-weight: bold;
}

#work4k8k.page #sec02 .price_list .contents .txt span {
  color: #ff0000;
  font-weight: bold;
  font-size: 24px;
}


@media only screen and (max-width: 1200px) {

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 20px;
  }

}

@media only screen and (max-width: 768px) {

  #work4k8k.page #sec02 {
    background-image: url(./images/4k8k_sec02_bg01_sp.jpg);
  }

  #work4k8k.page #sec02 .price_list .box h4 {
    font-size: 5vw;
  }

  #work4k8k.page #sec02 .price_list li {
    width: 80%;
  }

  #work4k8k.page #sec02 .price_list li .box .menu_title {
    font-size: 3.6vw;
  }

  article.service.page#work4k8k #sec02 .price_list li .box .price {
    font-size: 3.5vw;
  }

  article.service.page#work4k8k #sec02 .price_list li .box .price span {
    font-size: 8vw;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 3vw;
  }

  #work4k8k.page #sec02 .price_list .contents .txt span {
    font-size: 4vw;
  }

}

@media only screen and (max-width: 414px) {

  #work4k8k.page #sec02 .price_list .box h4 {
    font-size: 6vw;
  }

  #work4k8k.page #sec02 .price_list li {
    width: 100%;
  }

  #work4k8k.page #sec02 .price_list li .box .menu_title {
    font-size: 5vw;
  }

  article.service.page#work4k8 #sec02 .price_list li .box .price {
    font-size: 5.5vw;
  }

  article.service.page#work4k8 #sec02 .price_list li .box .price span {
    font-size: 12vw;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 4vw;
  }

  #work4k8k.page #sec02 .price_list .contents .txt span {
    font-size: 5vw;
  }
}

/* ==============================================
 オール電化
=============================================== */

#alldenka.page #pagemv {
  background-image: url(./images/pagemv_alldenka.jpg);
}

@media only screen and (max-width: 768px) {

  #alldenka.page #pagemv {
    background-image: url(./images/pagemv_alldenka_sp.jpg);
  }

}

/* #about
----------------------------------------------- */

#alldenka.page #about {
  background-image: url(./images/alldenka_about_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#alldenka.page #about .box {
  width: 85%;
  margin: 0 auto;
  -moz-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
}

#alldenka.page #about .box h3 {
  text-align: center;
  background: #007d67;
  color: #fff;
  font-size: 32px;
  font-weight: bold;
  line-height: 1;
  padding: 20px 10px;
}

#alldenka.page #about .box .contents {
  background: #fff;
  padding: 30px;
}

#alldenka.page #about .box .contents .img {
  margin-bottom: 30px;
}

#alldenka.page #about .box .contents .txt {
  font-size: 20px;
}

@media only screen and (max-width: 480px) {

  #alldenka.page #about .box {
    width: 95%;
  }

  #alldenka.page #about .box .contents {
    background: #fff;
    padding: 20px 10px;
  }

  #alldenka.page #about .box h3 {
    font-size: 26px;
  }

  #alldenka.page #about .box .contents .img {
    margin-bottom: 20px;
  }

  #alldenka.page #about .box .contents .txt {
    font-size: 16px;
    line-height: 1.8;
  }

}


/* #type
----------------------------------------------- */

#alldenka.page #type {
  /* background: #2ca79a; */
  background: url(./images/cta_section_bg01.jpg);
}

#alldenka.page #type .txt01 {
  text-align: center;
  font-size: 28px;
  margin-bottom: 40px;
  line-height: 1.4;
  color: #fff;
}

#alldenka.page #type h3 {
  text-align: center;
  font-size: 60px;
  font-weight: bold;
  font-style: oblique;
  margin-bottom: 20px;
  color: #fff;
  line-height: 1.4;
}

#alldenka.page #type .tab {
  width: 85%;
  margin: 0 auto;
}

#alldenka.page #type .tab .content-box {
  display: none;
}

#alldenka.page #type .tab .tab-list {
  display: flex;
}

#alldenka.page #type .tab .tab-list li {
  width: 50%;
  -webkit-border-top-left-radius: 40px;
  -webkit-border-top-right-radius: 40px;
  -moz-border-radius-topleft: 40px;
  -moz-border-radius-topright: 40px;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  padding: 10px;
  padding-top: 15px;
  line-height: 1;
}

#alldenka.page #type .tab .tab-list .current {
  font-size: 30px;
  padding-top: 10px;
}

#alldenka.page #type .tab .tab-list .menu01 {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #c0b02e;
  background-color: hwb(42deg 0% 0% / 70%);
}

#alldenka.page #type .tab .tab-list .menu01.current {
  background: #ffb400;
}

#alldenka.page #type .tab .tab-list .menu02 {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1279aa;
  background-color: hwb(206deg 0% 32% / 70%);
}

#alldenka.page #type .tab .tab-list .menu02.current {
  background: #0063ad;
}

#alldenka.page #type .tab .content-box {
  background: #fff;
}

#alldenka.page #type .tab .content-box .flex .item {
  width: 50%;
  padding: 40px;
  color: #fff;
}

#alldenka.page #type .tab .content-box.box01 .flex .item.right {
  padding-left: 0;
}

#alldenka.page #type .tab .content-box.box01 .flex .item {
  background-color: #ffb400;
}

#alldenka.page #type .tab .content-box.box02 .flex .item {
  background-color: #0063ad;
}

#alldenka.page #type .tab .content-box.box01 .flex .left {
  /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
}

#alldenka.page #type .tab .content-box.box02 .flex .left {
  order: 1;
  /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 30%, #fff 30%, #fff 100%); */
  background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
}

#alldenka.page #type .tab .content-box .flex .right .title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 10px;
}

#alldenka.page #type .tab .content-box .flex .right .txt {
  font-size: 18px;
  line-height: 1.6;
}

#alldenka.page #type .tab .tab-list2 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 28px;
}

#alldenka.page #type .tab .tab-list2 li {
  width: 21px;
  aspect-ratio: 1/1;
  height: 21px;
  border-radius: 50%;
  border: #fff 3px solid;
  margin-right: 2.5px;
  margin-left: 2.5px;
}

#alldenka.page #type .tab .tab-list2 li.current {
  width: 28px;
  aspect-ratio: 1/1;
  height: 28px;
  border-radius: 50%;
  background-color: #FFF;
}

.alldenka_br02 {
  display: none;
}

@media only screen and (max-width: 1200px) {

  #alldenka.page #type .txt01 {
    font-size: 2.5vw;
    margin-bottom: 4%;
  }

  #alldenka.page #type h3 {
    font-size: 5vw;
    margin-bottom: 2%;
  }

  #alldenka.page #type .tab .content-box .flex .item,
  #alldenka.page #type .tab .content-box.box01 .flex .item.right {
    padding: 4%;
  }

  #alldenka.page #type .tab .content-box .flex .right .title {
    font-size: 2.2vw;
  }

  #alldenka.page #type .tab .content-box .flex .right .txt {
    font-size: 1.6vw;
  }

}

@media only screen and (max-width: 768px) {

  #alldenka.page #type .txt01 {
    font-size: 3vw;
    margin-bottom: 8%;
  }

  #alldenka.page #type h3 {
    font-size: 7vw;
    margin-bottom: 4%;
  }

  #alldenka.page #type .tab .tab-list li {
    font-size: 3vw;
    padding-top: 18px;
  }

  #alldenka.page #type .tab .tab-list .current {
    font-size: 4vw;
    padding-top: 15px
  }

  #alldenka.page #type .tab {
    width: 100%;
  }

  /* #alldenka.page #type .tab .content-box.box01 .flex .item,#alldenka.page #type .tab .content-box.box02 .flex .item {
    background-color: #fff;
  } */

  #alldenka.page #type .tab .content-box.box01 .flex .left {
    /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 55%, #fff 55%, #fff 100%); */
    /* background: linear-gradient(180deg, #ffb400 0%, #ffb400 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #ffb400 0%, #ffb400 100%, #fff 100%, #fff 100%);
  }

  #alldenka.page #type .tab .content-box.box02 .flex .left {
    order: 1;
    /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 55%, #fff 55%, #fff 100%); */
    /* background: linear-gradient(180deg, #0063ad 0%, #0063ad 86%, #fff 86%, #fff 100%); */
    background: linear-gradient(180deg, #0063ad 0%, #0063ad 100%, #fff 100%, #fff 100%);
  }

  #alldenka.page #type .tab .content-box .flex .item {
    width: 100%;
    /* color: #000; */
  }

  #alldenka.page #type .tab .content-box .flex .left {
    padding: 10% 5% 0;
  }

  #alldenka.page #type .tab .content-box .flex .right {
    padding: 5% 5% 10%;
  }

  #alldenka.page #type .tab .content-box .flex .right .title {
    font-size: 4.2vw;
  }

  #alldenka.page #type .tab .content-box .flex .right .txt {
    font-size: 3.6vw;
  }

  #alldenka.page #type .tab .content-box.box02 .flex .left {
    order: 0;
  }

  #alldenka.page #type .tab .tab-list li {
    -webkit-border-top-left-radius: 20px;
    -webkit-border-top-right-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-topright: 20px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }

  #alldenka.page #type .tab .tab-list2 li.current {
    width: 5%;
    height: 5%;
  }

}


@media only screen and (max-width: 414px) {

  #alldenka.page #type .tab .tab-list li {
    font-size: 4vw;
  }

  #alldenka.page #type .tab .content-box .flex .right .title {
    font-size: 4.6vw;
  }

  #alldenka.page #type .tab .content-box .flex .right .txt {
    font-size: 4vw;
  }
}

@media only screen and (max-width: 355px) {
  #alldenka.page #type .tab .tab-list .current {
    font-size: 4.2vw;
  }
}

@media only screen and (max-width: 334px) {
  #alldenka.page #type .tab .tab-list .current {
    font-size: 5vw;
  }

  .alldenka_br01 {
    display: none;
  }

  .alldenka_br02 {
    display: inline;
  }
}

/* #sample
----------------------------------------------- */

#alldenka.page #sample {
  background-image: url(./images/alldenka_sample_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#alldenka.page #sample h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  margin-bottom: 40px;
}

#alldenka.page #sample .txt01 {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.4;
  text-shadow:
    2px 2px 2px #fff, -2px -2px 2px #fff,
    -2px 2px 2px #fff, 2px -2px 2px #fff,
    2px 0px 2px #fff, -2px -0px 2px #fff,
    0px 2px 2px #fff, 0px -2px 2px #fff;
  margin-bottom: 60px;
}

#alldenka.page #sample ul {
  justify-content: center;
}

#alldenka.page #sample ul li {
  width: 33%;
  padding: 0 10px;
}

#alldenka.page #sample ul li .box {
  -moz-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.1);
}

#alldenka.page #sample ul li .box h4 {
  text-align: center;
  background: #007d67;
  font-size: 28px;
  font-weight: bold;
  color: #fff;
  padding: 15px 10px;
}

#alldenka.page #sample ul li .box .contents {
  background: #fff;
  padding: 10px;
}

#alldenka.page #sample ul li .box .contents h5 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

#alldenka.page #sample ul li .box .contents .txt {
  font-size: 18px;
  margin-bottom: 10px;
}

@media only screen and (max-width: 1200px) {

  #alldenka.page #sample ul li {
    width: 45%;
    max-width: 390px;
  }

}

@media only screen and (max-width: 768px) {

  #alldenka.page #sample h3 {
    font-size: 8vw;
    margin-bottom: 5vw;
  }

  #alldenka.page #sample .txt01 {
    font-size: 3.6vw;
    margin-bottom: 8%;
    text-shadow:
      1px 1px 1px #fff, -1px -1px 1px #fff,
      -1px 1px 1px #fff, 1px -1px 1px #fff,
      1px 0px 1px #fff, -1px -0px 1px #fff,
      0px 1px 1px #fff, 0px -1px 1px #fff;
  }

  #alldenka.page #sample ul {
    width: 85%;
    margin: 0 auto 15%;
  }

  #alldenka.page #sample ul li {
    max-width: initial;
    width: 100%;
  }

  #alldenka.page #sample ul li .img img {
    max-width: initial;
    width: 100%;
  }

  #alldenka.page #sample .slick-dots {
    width: 100%;
    bottom: -25%;
  }

  #alldenka.page #sample .slick-dots li,
  #alldenka.page #sample .slick-dots li button {
    width: 30px;
    height: 30px;
    padding: 0;
  }

  #alldenka.page #sample .slick-dots li button::before {
    content: "";
    width: 20px;
    height: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    border: 2px solid #007d67;
    opacity: 1;
  }

  #alldenka.page #sample .slick-dots li.slick-active button:before {
    background: #007d67;
  }

  #alldenka.page #sample .slick-prev,
  #alldenka.page #sample .slick-next {
    width: 29px;
    height: 35px;
  }

  #alldenka.page #sample .slick-prev {
    left: -35px;
  }

  #alldenka.page #sample .slick-next {
    right: -35px;
  }

  #alldenka.page #sample ul .slick-prev:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_prev.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

  #alldenka.page #sample ul .slick-next:before {
    content: "";
    display: block;
    width: 29px;
    height: 35px;
    aspect-ratio: 29 / 35;
    background-image: url(./images/gyoumuyouaircon_resolution_next.png);
    background-position: center;
    background-repeat: no-repeat;
    -moz-background-size: contain;
    background-size: contain;
  }

}


@media only screen and (max-width: 480px) {

  #alldenka.page #sample ul {
    width: 100%;
  }

  #alldenka.page #sample ul li .box h4 {
    font-size: 22px;
  }

  #alldenka.page #sample ul li .box .contents h5 {
    font-size: 18px;
  }

  #alldenka.page #sample ul li .box .contents .txt {
    font-size: 16px;
  }

  #alldenka.page #sample .slick-prev,
  #alldenka.page #sample .slick-next {
    width: 15px;
    height: 18px;
  }

  #alldenka.page #sample .slick-prev {
    left: -18px;
  }

  #alldenka.page #sample .slick-next {
    right: -18px;
  }

  #alldenka.page #sample ul .slick-prev:before,
  #alldenka.page #sample ul .slick-next:before {
    width: 15px;
    height: 18px;
  }

  #alldenka.page #sample .slick-dots {
    bottom: -20%;
  }

  #alldenka.page #sample ul .slick-dots li,
  #alldenka.page #sample ul .slick-dots li button {
    width: 25px;
    height: 25px;
  }

  #alldenka.page #sample ul .slick-dots li button::before {
    width: 15px;
    height: 15px;
    border: 1px solid #007d67;
  }
}


/* #useful
----------------------------------------------- */

#alldenka.page #useful h4 {
  width: 840px;
  margin: 0 auto 15px;
  text-align: center;
  color: #fff;
  padding: 30px 20px;
  font-size: 36px;
  font-weight: bold;
  background: #007d67;
}

#alldenka.page #useful ul li .contents .box p span {
  font-weight: bold;
}

#alldenka.page #useful ul li .contents .box p span.fs_b {
  font-size: 120%;
  font-weight: bold;
}

@media only screen and (max-width: 1200px) {

  #alldenka.page #useful h4 {
    width: 75%;
    padding: 20px 10px;
    font-size: 24px;
  }

}

@media only screen and (max-width: 768px) {

  #alldenka.page #useful h4 {
    width: 100%;
    margin-bottom: 10px;
    font-size: 20px;
  }

}

@media only screen and (max-width: 414px) {

  #alldenka.page #useful h4 {
    padding: 15px 10px;
    font-size: 18px;
  }

}


/* #merit
----------------------------------------------- */

#alldenka.page #merit {
  background: #2ca79a;
  margin-top: 90px;
}

#alldenka.page #merit .txt {
  text-align: center;
  font-size: 72px;
  font-weight: 900;
  color: #1c867b;
  font-style: oblique;
  line-height: 1;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
  margin-bottom: 20px;
}

#alldenka.page #merit .topsub {
  color: #fff;
  font-size: 24px;
  text-align: center;
  margin-bottom: 40px;
}

#alldenka.page #merit .img01 {
  margin-bottom: 80px;
}

#alldenka.page #merit .btm {
  text-align: center;
  color: #fff;
  font-size: 30px;
  line-height: 1.4;
}

@media only screen and (max-width: 1200px) {

  #alldenka.page #merit .txt {
    font-size: 6.6vw;
    margin-bottom: 3.5%;
  }

  #alldenka.page #merit .topsub {
    font-size: 3.6vw;
    margin-bottom: 4.5%;
  }

  #alldenka.page #merit .img01,
  #alldenka.page #merit .img02 {
    margin-bottom: 7%;
  }

  #alldenka.page #merit .img01 img,
  #alldenka.page #merit .img02 img {
    width: 65%;
  }

  #alldenka.page #merit .btm {
    font-size: 2.4vw;
  }

}

@media only screen and (max-width: 768px) {


  #alldenka.page #merit {
    margin-top: 15%;
  }

  #alldenka.page #merit .txt {
    font-size: 9vw;
  }

  #alldenka.page #merit .img01,
  #alldenka.page #merit .img02 {
    margin-bottom: 9%;
  }

  #alldenka.page #merit .img01 img,
  #alldenka.page #merit .img02 img {
    width: 90%;
  }

  #alldenka.page #merit .btm {
    font-size: 4vw;
  }

}


@media only screen and (max-width: 414px) {


  #alldenka.page #merit .txt {
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }
}


/* #point
----------------------------------------------- */

#alldenka #point {
  background: #e7fefc;
}

#alldenka #point h3 {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  color: #3fbeb1;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
  margin-bottom: 60px;
}

#alldenka #point h3 .fs_b {
  font-size: 72px;
  font-weight: 900;
}

#alldenka #point h3 .orange {
  color: #ffae00;
}

#alldenka.page #point ul {
  width: 89%;
  margin: 0 auto 80px;
}

#alldenka.page #point ul li {
  margin-bottom: 40px;
}

#alldenka.page #point ul li .box {
  -moz-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 3px 3px rgba(0, 0, 0, 0.1);
}

#alldenka.page #point ul li .box h4 {
  background: #007d67;
  color: #fff;
  text-align: center;
  padding: 15px 10px;
  font-size: 36px;
  font-weight: bold;
}

#alldenka.page #point ul li .box .flex p {
  width: 50%;
  background: #fff;
}

#alldenka.page ul li .box .flex .img img {
  max-width: initial;
  width: 100%;
}

#alldenka.page #point ul li .box .flex .txt {
  padding: 20px;
  font-size: 18px;
}

#alldenka.page #point ul li .box .flex.order .img {
  order: 1;
}


#alldenka #point .btm {
  text-align: center;
  font-size: 48px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  text-shadow:
    5px 5px 3px #fff, -5px -5px 3px #fff,
    -5px 5px 3px #fff, 5px -5px 3px #fff,
    5px 0px 3px #fff, -5px -0px 3px #fff,
    0px 5px 3px #fff, 0px -5px 3px #fff;
}

#alldenka #point .btm span {
  color: #007d67;
  font-weight: 900;
}

@media only screen and (max-width: 1200px) {

  #alldenka #point h3 {
    font-size: 4vw;
    margin-bottom: 5%;
  }

  #alldenka #point h3 .fs_b {
    font-size: 6vw;
  }


  #alldenka #point .btm {
    font-size: 5vw;
  }
}


@media only screen and (max-width: 1200px) {

  #alldenka.page #point ul {
    margin-bottom: 8%;
  }

  #alldenka.page #point ul li {
    margin-bottom: 5%;
  }

  #alldenka.page #point ul li .box h4 {
    font-size: 3vw;
    padding: 2%;
  }

  #alldenka.page #point ul li .box .flex .txt {
    font-size: 1.5vw;
    padding: 2%;
  }

}

@media only screen and (max-width: 768px) {

  #alldenka #point h3 {
    font-size: 6vw;
    margin-bottom: 8%;
  }

  #alldenka #point h3 .fs_b {
    font-size: 8vw;
  }

  #alldenka.page #point ul {
    width: 85%;
    margin: 0 auto;
  }

  #alldenka.page #point ul li {
    padding: 0 10px;
  }

  #alldenka.page #point ul li .box .flex p {
    width: 100%;
  }

  #alldenka.page #point ul li .box .flex.order .img {
    order: 0;
  }

  #alldenka.page #point ul li .box h4 {
    font-size: 4vw;
  }

  #alldenka.page #point ul li .box .flex .txt {
    font-size: 3.6vw;
    padding: 3%;
  }

  #alldenka #point .btm {
    font-size: 7vw;
  }

}

@media only screen and (max-width: 480px) {

  #alldenka #point h3,
  #alldenka #point .btm {
    text-shadow:
      3px 3px 3px #fff, -3px -3px 3px #fff,
      -3px 3px 3px #fff, 3px -3px 3px #fff,
      3px 0px 3px #fff, -3px -0px 3px #fff,
      0px 3px 3px #fff, 0px -3px 3px #fff;
  }

  #alldenka.page #point ul li .box h4 {
    font-size: 5vw;
  }

  #alldenka.page #point ul li .box .flex .txt {
    font-size: 4vw;
    line-height: 1.8;
  }

}

/* ==============================================
 ブレーカーの交換・修理
=============================================== */

#breaker.page #pagemv {
  background-image: url(./images/pagemv_breaker.jpg);
}

@media only screen and (max-width: 768px) {

  #breaker.page #pagemv {
    background-image: url(./images/pagemv_breaker_sp.jpg);
  }

}


/* ==============================================
 防犯カメラ交換・取り付け
=============================================== */

#camera.page #pagemv {
  background-image: url(./images/pagemv_camera.jpg);
}

@media only screen and (max-width: 768px) {

  #camera.page #pagemv {
    background-image: url(./images/pagemv_camera_sp.jpg);
  }

}

/* #sec02
----------------------------------------------- */

#camera.page #sec02 {
  background-image: url(./images/camera_sec02_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#camera.page #sec02 .free {
  background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(44, 167, 154, 1) 60%, rgba(255, 255, 255, 0) 100%);
}

#camera.page #sec02 .price_list {
  justify-content: center;
  width: 75%;
}

#camera.page #sec02 .price_list .box {
  padding: 0;
}

#camera.page #sec02 .price_list .box h4 {
  background: #007d67;
  text-align: center;
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  padding: 20px 10px;
  line-height: 1;
}

#camera.page #sec02 .price_list .contents {
  padding: 20px;
}

#camera.page #sec02 .price_list li .box .menu_title {
  font-size: 26px;
  border-left: none;
  padding-left: 0;
  text-align: center;
  position: relative;
}

#camera.page #sec02 .price_list li .box .menu_title::before {
  content: "";
  width: 80%;
  height: 3px;
  background: red;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}

#camera.page #sec02 .price_list li .box .menu_title span {
  font-size: 140%;
  font-weight: bold;
}

article.service.page#camera #sec02 .price_list li .box .price {
  text-align: center;
  margin-bottom: 20px;
}

article.service.page#camera #sec02 .price_list li .box .price span {
  font-size: 48px;
  font-weight: bold;
}

#camera.page #sec02 .price_list .contents .txt span {
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 3%;
}


@media only screen and (max-width: 1200px) {

  #camera.page #sec02 .price_list {
    width: 100%;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 20px;
  }

}

@media only screen and (max-width: 768px) {

  #camera.page #sec02 {
    background-image: url(./images/4k8k_sec02_bg01_sp.jpg);
  }

  #camera.page #sec02 .price_list .box h4 {
    font-size: 5vw;
  }

  #camera.page #sec02 .price_list li {
    width: 80%;
  }

  #camera.page #sec02 .price_list li .box .menu_title {
    font-size: 3.6vw;
  }

  article.service.page#camera #sec02 .price_list li .box .price {
    font-size: 3.5vw;
  }

  article.service.page#camera #sec02 .price_list li .box .price span {
    font-size: 8vw;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 3vw;
  }

  #camera.page #sec02 .price_list .contents .txt span {
    font-size: 4vw;
  }

}

@media only screen and (max-width: 414px) {

  #camera.page #sec02 .price_list .box h4 {
    font-size: 6vw;
  }

  #camera.page #sec02 .price_list {
    width: 90%;
  }

  #camera.page #sec02 .price_list li {
    width: 100%;
  }

  #camera.page #sec02 .price_list li .box .menu_title {
    font-size: 5vw;
  }

  article.service.page#camera #sec02 .price_list li .box .price {
    font-size: 5.5vw;
  }

  article.service.page#camera #sec02 .price_list li .box .price span {
    font-size: 12vw;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 4vw;
  }

  #camera.page #sec02 .price_list .contents .txt span {
    font-size: 5vw;
  }
}


/* ==============================================
 給湯器の修理・交換
=============================================== */

#ecocute.page #pagemv {
  background-image: url(./images/pagemv_ecocute.jpg);
}

@media only screen and (max-width: 768px) {

  #ecocute.page #pagemv {
    background-image: url(./images/pagemv_ecocute_sp.jpg);
  }

}


#ecocute.page #fv .img {
  position: relative;
}

#ecocute.page #fv .img img {
  max-width: initial;
  width: 100%;
}

#ecocute.page #fv .price {
  color: #d40409;
  text-shadow:
    3px 3px 3px #fff, -3px -3px 3px #fff,
    -3px 3px 3px #fff, 3px -3px 3px #fff,
    3px 0px 3px #fff, -3px -0px 3px #fff,
    0px 3px 3px #fff, 0px -3px 3px #fff;
  font-size: 1.8vw;
  font-weight: bold;
  font-style: oblique;
  line-height: 1;
  position: absolute;
  top: 80%;
  left: 18%;
}

#ecocute.page #fv .price span {
  font-size: 2.8vw;
  font-weight: bold;
}

@media only screen and (max-width: 768px) {

  #ecocute.page #fv .price {
    font-size: 4.8vw;
    top: 59%;
    left: 4%;
  }

  #ecocute.page #fv .price span {
    font-size: 7.8vw;
  }

}

#ecocute.page #fv .img {
  position: relative;
}

#ecocute.page #fv .img img {
  max-width: initial;
  width: 100%;
}

#ecocute.page #fv .price {
  color: #d40409;
  text-shadow:
    3px 3px 3px #fff, -3px -3px 3px #fff,
    -3px 3px 3px #fff, 3px -3px 3px #fff,
    3px 0px 3px #fff, -3px -0px 3px #fff,
    0px 3px 3px #fff, 0px -3px 3px #fff;
  font-size: 1.8vw;
  font-weight: bold;
  font-style: oblique;
  line-height: 1;
  position: absolute;
  top: 80%;
  left: 18%;
}

#ecocute.page #fv .price span {
  font-size: 2.8vw;
  font-weight: bold;
}

@media only screen and (max-width: 768px) {

  #ecocute.page #fv .price {
    font-size: 4.8vw;
    top: 59%;
    left: 4%;
  }

  #ecocute.page #fv .price span {
    font-size: 7.8vw;
  }

}


/* #maker
----------------------------------------------- */

#ecocute.page #maker {
  padding-bottom: 0;
  background-image: url(./images/ecocute_maker_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: 100% auto;
  background-size: 100% auto;
}

#ecocute.page #maker h3 {
  text-align: center;
  font-size: 60px;
  font-weight: 900;
  font-style: oblique;
  line-height: 1.2;
  margin-bottom: 60px;
}

#ecocute.page #maker ul {
  justify-content: space-around;
  flex-wrap: wrap;
  width: 640px;
  margin: 0 auto 60px;
}

#ecocute.page #maker ul li {
  width: 50%;
  max-width: 300px;
  margin-bottom: 40px;
}

#ecocute.page #maker ul li .name {
  text-align: center;
  position: relative;
  z-index: 1;
  margin-bottom: -20px;
}

#ecocute.page #maker ul li .name span {
  display: inline-block;
  width: 100%;
  background: #007d67;
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  padding: 10px;
}

#ecocute.page #maker ul li .img img {
  -moz-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 3px 3px 5px 5px rgba(0, 0, 0, 0.1);
}


#ecocute.page #maker .logo {
  text-align: center;
  position: relative;
  z-index: 1;
  padding-right: 5%;
}

@media only screen and (max-width: 1200px) {

  #ecocute.page #maker h3 {
    font-size: 5vw;
    margin-bottom: 5%;
  }

  #ecocute.page #maker ul {
    margin-bottom: 6%;
  }

  #ecocute.page #maker ul li {
    margin-bottom: 5%;
  }

  #ecocute.page #maker ul li .name {
    margin-bottom: -10%;
  }

  #ecocute.page #maker ul li .name span {
    font-size: 2.2vw;
  }

  #ecocute.page #maker .logo img {
    width: 60%;
  }

}

@media only screen and (max-width: 768px) {

  #ecocute.page #maker h3 {
    font-size: 8vw;
    margin-bottom: 5%;
  }

  #ecocute.page #maker ul {
    width: 90%;
  }

  #ecocute.page #maker ul li {
    padding: 0 10px;
  }

  #ecocute.page #maker ul li .name span {
    font-size: 3.2vw;
  }

  #ecocute.page #maker .logo {
    padding-right: 0;
  }

  #ecocute.page #maker .logo img {
    width: 94%;
  }

  #ecocute.page #maker .sky_block .inner::after {
    width: 45%;
    height: 0;
    padding: 0 0 52%;
  }

  article.service.page .sky_block .inner {
    position: relative;
    padding: 25% 0 5% 5%;
  }

}


/* #trouble_ranking
----------------------------------------------- */

#ecocute.page #trouble_ranking ul li .box {
  height: 900px;
}

#ecocute.page #trouble_ranking ul li:nth-child(2) .box {
  height: 960px;
}

@media only screen and (max-width: 1080px) {

  #ecocute.page #trouble_ranking ul li .box {
    height: 800px;
  }

  #ecocute.page #trouble_ranking ul li:nth-child(2) .box {
    height: 860px;
  }

}

@media only screen and (max-width: 880px) {

  #ecocute.page #trouble_ranking ul li .box {
    height: 700px;
  }

  #ecocute.page #trouble_ranking ul li:nth-child(2) .box {
    height: 760px;
  }

}

@media only screen and (max-width: 768px) {

  #ecocute.page #trouble_ranking ul li .box {
    height: auto;
  }

  #ecocute.page #trouble_ranking ul li:nth-child(2) .box {
    height: auto;
  }

}


/* ==============================================
 換気扇、レンジフードの交換・取り付け
=============================================== */

#fan.page #pagemv {
  background-image: url(./images/pagemv_fan.jpg);
}

@media only screen and (max-width: 768px) {

  #fan.page #pagemv {
    background-image: url(./images/pagemv_fan_sp.jpg);
  }

}


/* ==============================================
 コンセントの交換・取付
=============================================== */

#consent.page #pagemv {
  background-image: url(./images/pagemv_consent.jpg);
}

@media only screen and (max-width: 768px) {

  #consent.page #pagemv {
    background-image: url(./images/pagemv_consent_sp.jpg);
  }

}

/* ==============================================
 LAN配線・電気配線工事
=============================================== */

#lan.page #pagemv {
  background-image: url(./images/pagemv_lan.jpg);
}

@media only screen and (max-width: 768px) {

  #lan.page #pagemv {
    background-image: url(./images/pagemv_lan_sp.jpg);
  }

}

/* ==============================================
 漏電調査・漏電修理
=============================================== */

#rouden.page #pagemv {
  background-image: url(./images/pagemv_rouden.jpg);
}

@media only screen and (max-width: 768px) {

  #rouden.page #pagemv {
    background-image: url(./images/pagemv_rouden_sp.jpg);
  }

}

/* ==============================================
 スイッチの交換・取付
=============================================== */

#switch.page #pagemv {
  background-image: url(./images/pagemv_switch.jpg);
}

@media only screen and (max-width: 768px) {

  #switch.page #pagemv {
    background-image: url(./images/pagemv_switch_sp.jpg);
  }

}

/* ==============================================
 単相3線式切り替え工事
=============================================== */

#tansou3.page #pagemv {
  background-image: url(./images/pagemv_tansou3.jpg);
}

@media only screen and (max-width: 768px) {

  #tansou3.page #pagemv {
    background-image: url(./images/pagemv_tansou3_sp.jpg);
  }

}


/* #sec02
----------------------------------------------- */

#tansou3.page #sec02 {
  background-image: url(./images/tansou3_sec02_bg01.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  background-size: cover;
}

#tansou3.page #sec02 .free {
  background: linear-gradient(0deg, rgba(44, 167, 154, 1) 0%, rgba(44, 167, 154, 1) 60%, rgba(255, 255, 255, 0) 100%);
}

#tansou3.page #sec02 .price_list {
  justify-content: center;
}

#tansou3.page #sec02 .price_list .box {
  padding: 0;
}

#tansou3.page #sec02 .price_list li {
  width: 460px;
}

#tansou3.page #sec02 .price_list .box h4 {
  background: #007d67;
  text-align: center;
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  padding: 15px 10px;
  line-height: 1.5;
}

#tansou3.page #sec02 .price_list .contents {
  padding: 10px 20px 30px 20px;
}

#tansou3.page #sec02 .price_list li .box .menu_title {
  font-size: 20px;
  border-left: none;
  padding-left: 0;
  text-align: center;
}

article.service.page#tansou3 #sec02 .price_list li .box .price {
  text-align: center;
  margin-bottom: 20px;
}

article.service.page#tansou3 #sec02 .price_list li .box .price span {
  font-size: 48px;
  font-weight: bold;
}

#tansou3.page #sec02 .price_list .contents .txt span {
  color: #ff0000;
  font-weight: bold;
  font-size: 24px;
}


@media only screen and (max-width: 1200px) {

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 20px;
  }

}

@media only screen and (max-width: 768px) {

  #tansou3.page #sec02 .price_list .box h4 {
    font-size: 5vw;
  }

  #tansou3.page #sec02 .price_list li {
    width: 80%;
  }

  #tansou3.page #sec02 .price_list li .box .menu_title {
    font-size: 3.6vw;
  }

  article.service.page#tansou3 #sec02 .price_list li .box .price {
    font-size: 3.5vw;
  }

  article.service.page#tansou3 #sec02 .price_list li .box .price span {
    font-size: 8vw;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 3vw;
  }

  #tansou3.page #sec02 .price_list .contents .txt span {
    font-size: 4vw;
  }

}

@media only screen and (max-width: 414px) {

  #tansou3.page #sec02 .price_list .box h4 {
    font-size: 6vw;
  }

  #tansou3.page #sec02 .price_list li {
    width: 100%;
  }

  #tansou3.page #sec02 .price_list li .box .menu_title {
    font-size: 5vw;
  }

  article.service.page#tansou3 #sec02 .price_list li .box .price {
    font-size: 5.5vw;
  }

  article.service.page#tansou3 #sec02 .price_list li .box .price span {
    font-size: 12vw;
  }

  article.service.page #sec02 .price_list li .box .txt {
    font-size: 4vw;
  }

  #tansou3.page #sec02 .price_list .contents .txt span {
    font-size: 5vw;
  }
}



/* ==============================================
 toppage menu
=============================================== */

/* title
----------------------------------------------- */

/*
 aspect-ratio: 147 / 147;

ev_type_icon01.png
 aspect-ratio: 44 / 24;
*/

@media only screen and (max-width: 768px) {}


@media only screen and (max-width: 414px) {}

.grecaptcha-badge {
  z-index: 1000 !important;
}





/* =============================================================
【営業・セールスのお電話はご遠慮くださいテキスト追加】
=============================================================== */
.cta_section .contact_block .fix_annotation_sp {
  display: none;
}

.fix_annotation_pc {
  display: block;
  text-align: center;
  margin-top: 8px;
}

.fix_annotation_pc_txt {
  font-size: clamp(14px, 1.6vw, 18px);
  font-weight: bold;
  color: #fff;
}

@media screen and (max-width:768px) {
  .cta_section .contact_block .fix_annotation_sp {
    display: block;
    font-size: clamp(14px, 2.6vw, 18px);
    margin: 0 auto;
    font-weight: bold;
    color: #fff;
  }

  .cta_section .fix_annotation_pc {
    display: none;
  }
}