@charset "UTF-8";
@import "base.css";
@import "fonts.css";

/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&family=Open+Sans:wght@300;400;600;700;800&display=swap'); */
/*==========================================================*/
/*  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  */
/*==========================================================*/
/* CUSTOM FONT - TEXT */
h1,
h2,
h3,
h4,
h5,
h6,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
pre,
address,
li,
dt,
dd {
  font-size: 160%
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.4em
}

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

a {
  color: #111111;
  transition: all .2s;
  text-decoration: none
}

table {
  width: 100%
}

p {
  margin: 0 0 1.5em
}

p:last-child {
  margin-bottom: 0
}

p,
dd,
td,
th,
li {
  line-height: 1.875
}

/* CUSTOM ALL */
html {
  background: #fff
}

body {
  color: #111111;
  -webkit-text-size-adjust: none;
  min-width: 320px;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

* {
  box-sizing: border-box;
  outline: none
}

::before,
::after {
  box-sizing: border-box
}

#wrapper {
  min-width: 1260px;
  overflow: hidden;
  margin: 0 auto;
}

.inner {
  width: 1200px;
  margin: 0 auto
}

.inner02 {
  width: 1300px;
  margin: 0 auto
}

.h3-underStyle {
  position: relative;
  margin-bottom: 30px;
  font-size: 34px;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  line-height: 1.3em;
  /*background: url("../images/bg_t3.png") no-repeat center top;*/
  padding: 65px 0 50px;
  z-index: 1;
}

.title-R {
  font-size: 46px;
}

/* CUSTOM HAMBUGER */
.hamburger {
  font: inherit;
  display: block;
  overflow: visible;
  margin: 0;
  padding: 10px 8px 5px;
  cursor: pointer;
  transition-timing-function: linear;
  transition-duration: .15s;
  transition-property: opacity, filter;
  text-transform: none;
  color: inherit;
  border: 0
}

.hamburger-box {
  position: relative;
  display: inline-block;
  width: 35px;
  height: 24px
}

.hamburger-inner {
  top: 50%;
  display: block;
  margin-top: -2px
}

.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
  position: absolute;
  width: 35px;
  height: 2px;
  transition-timing-function: ease;
  transition-duration: .15s;
  transition-property: transform;
  border-radius: 4px;
  background-color: #fff
}

.hamburger-inner:after,
.hamburger-inner:before {
  display: block;
  content: ""
}

.hamburger-inner:before {
  top: -10px
}

.hamburger-inner:after {
  bottom: -10px
}

.hamburger--3dxy .hamburger-box {
  perspective: 80px
}

.hamburger--3dxy .hamburger-inner {
  transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0 cubic-bezier(0.645, 0.045, 0.355, 1) .1s
}

.hamburger--3dxy .hamburger-inner:after,
.hamburger--3dxy .hamburger-inner:before {
  transition: transform 0 cubic-bezier(0.645, 0.045, 0.355, 1) .1s
}

.hamburger--3dxy.is-active .hamburger-inner {
  transform: rotateX(180deg) rotateY(180deg);
  background-color: transparent !important
}

.hamburger--3dxy.is-active .hamburger-inner:before {
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy.is-active .hamburger-inner:after {
  transform: translate3d(0, -10px, 0) rotate(-45deg)
}

.hamburger--3dxy-r .hamburger-box {
  perspective: 80px
}

.hamburger--3dxy-r .hamburger-inner {
  transition: transform .15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0 cubic-bezier(0.645, 0.045, 0.355, 1) .1s
}

.hamburger--3dxy-r .hamburger-inner:after,
.hamburger--3dxy-r .hamburger-inner:before {
  transition: transform 0 cubic-bezier(0.645, 0.045, 0.355, 1) .1s
}

.hamburger--3dxy-r.is-active .hamburger-inner {
  transform: rotateX(180deg) rotateY(180deg) rotate(-180deg);
  background-color: transparent !important
}

.hamburger--3dxy-r.is-active .hamburger-inner:before {
  transform: translate3d(0, 10px, 0) rotate(45deg)
}

.hamburger--3dxy-r.is-active .hamburger-inner:after {
  transform: translate3d(0, -10px, 0) rotate(-45deg)
}

/* CUSTOM CLASS */
.section {
  padding: 0 0 30px
}

.section .section {
  padding: 0 0 10px
}

.image-l {
  float: left;
  margin: 0 16px 8px 0
}

.image-r {
  float: right;
  margin: 0 0 8px 16px
}

.position-rel {
  position: relative
}

.box_sp {
  display: none;
}

.box_pc {
  display: block;
}

.flex {
  display: flex
}

.flex-wrap {
  display: flex;
  flex-wrap: wrap
}

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

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

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

.flex-col {
  display: flex;
  flex-direction: column;
}

.flex-col-center {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.bold {
  font-weight: 700 !important;
}

.left {
  text-align: left !important
}

.center {
  text-align: center !important
}

.right {
  text-align: right !important
}

.auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.box-640,
.box-560,
.box-520,
.box-460,
.box-420,
.box-360 {
  display: none !important
}

.btn-primary.center a {
  margin-left: auto;
  margin-right: auto;
}

.btn-primary a {
  width: 260px;
  height: 64px;
  display: flex;
  align-items: center;
  font-size: 20px;
  line-height: 1.5;
  color: #fff;
  background: #2c86cc;
  position: relative;
  border-radius: 10px;
  padding-left: 25px;
  letter-spacing: 0.25rem;
  font-weight: 600;
}

.btn-primary a:hover {}

.btn-primary.h a {
  background: #2c86cc;
}

.btn-primary.tel a {
  background: #2c86cc;
}

.btn-primary {
  position: relative;
  z-index: 2;
}

.btn-primary a::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 17px;
  background: url('../images/ic-right-btn.png') no-repeat center /cover;
  top: calc(50% - 8px);
  right: 20px;
  z-index: 1;
}

.btn-primary a::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background-color: #2c86cc;
  bottom: -5px;
  left: 0;
  z-index: -1;
}

.btn-primary.big a {
  width: 480px;
  height: 90px;
  line-height: 1;
  font-size: 30px;
  justify-content: center;
  padding-left: 0;
  border-radius: 20px;
  letter-spacing: 0.14rem;
  padding-right: 17px;
  padding-bottom: 6px;
}

.btn-primary.big a::after {
  border-radius: 20px;
  bottom: -6px;
}

.btn-primary.big a::before {
  width: 15px;
  height: 24px;
  right: 30px;
  top: calc(50% - 12px);
  background: url('../images/ic-right-btn-big.png') no-repeat center /cover;
}

/*==========================================================
                       H E A D E R
==========================================================*/
#header {
  background: #fff
}

#header .box-header {
  width: 100%;
  left: 0;
}

#header h1 {
  font-size: 12px;
  color: #c4c4c4;
  max-width: 85%;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  letter-spacing: 0.05rem;
  margin-bottom: 2px;
}

.logo {
  display: block;
  margin: auto 0;
  margin-right: 8px;
  margin-bottom: 0;
  padding-bottom: 6px;
  max-width: 280px
}

.h-information {
  width: 100%;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  height: 100%;
}

.box-header.idx-fixed {
  /*  background: unset !important;*/
  width: 100%
}

.heacer-construction {
  width: 350px;
  margin-right: 49px;
  margin-bottom: 0;
  height: 75px;
  position: relative;
}

.header-phone {
  white-space: nowrap;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-right: 15px;
  margin-bottom: 0;
  padding-top: 2px;
  margin-left: auto
}

.header-phone .slogan {
  line-height: 1.6;
  padding-left: 18px;
}

.header-phone .slogan span {
  font-size: 16px;
  font-weight: bold;
  color: #2c86cc;
  text-align: center;
  position: relative;
  letter-spacing: 0.1rem;
}

.header-phone .slogan span::before,
.header-phone .slogan span::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 1px;
  background-color: #333333;
}

.header-phone .slogan span::before {
  right: -17px;
  bottom: 10px;
  transform: rotate(-57deg);
}

.header-phone .slogan span::after {
  left: -24px;
  bottom: 10px;
  transform: rotate(59deg);
}

.header-phone .numm {
  font-size: 35px;
  font-weight: bold;
  line-height: 1;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  padding-left: 35px;
  position: relative;
  letter-spacing: -0.08rem;
  margin-bottom: -5px;
}

.header-phone .numm::before {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  background: url('../images/ic-tel.png') no-repeat center /cover;
  left: 3px;
  top: calc(50% - 13px);
}

.header-phone .time {
  font-size: 14px;
  letter-spacing: 0.09rem;
  padding-left: 42px;
}

.header-contact {
  margin-left: 22px;
  /* margin-left: 10px; */
  margin-top: 23px;
}

.header-contact a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  flex-direction: column;
  background-color: #2c86cc;
  width: 250px;
  height: 100px;
  position: relative;
  padding-bottom: 4px;
  padding-right: 18px;
}

.header-contact a::before,
.header-contact a::after {
  content: '';
  position: absolute;
}

.header-contact a::before {
  width: 60px;
  height: 60px;
  background: url("../images/header-contact-ic1.png") no-repeat center /cover;
  left: -25px;
  top: 3px;
  z-index: 1;
}

.header-contact a::after {
  width: 46px;
  height: 45px;
  background: url("../images/header-contact-ic2.png") no-repeat center /cover;
  right: 13px;
  bottom: 18px;
  z-index: 1;
}

.header-contact a span {
  position: relative;
  z-index: 2;
}

.header-contact a .sm {
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  margin-bottom: 4px;
  letter-spacing: 0.2rem;
  padding-left: 12px;
}

.header-contact a .lg {
  font-size: 18px;
  font-weight: bold;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff, 1px 1px 2px #fff, 1px 1px 3px #fff, 1px 1px 3px #fff, 1px 1px 3px #fff;
  color: #c91c1d;
  line-height: 1.3;
  letter-spacing: 0.09rem;
}

.h-infomation-box {
  display: flex;
  flex-direction: column;
  width: 306px;
}

.box-logo {
  display: flex;
  align-items: center;
  margin-bottom: 2px;
}

/*==========================================================
                        S L I D E R
==========================================================*/
/* ============== SLIDER 01 ============== */
#wrap-slider {
  position: relative;
  margin: 0 auto;
}

#wrap-slider #slider {
  margin: 0 auto 10px;
  overflow: hidden;
  margin-bottom: 0;
  height: 645px;
}

#wrap-slider #slider li {
  opacity: 0.7;
}

#wrap-slider #slider .slick-active {
  opacity: 1;
}

#wrap-slider .slick-dots li:hover:not(.slick-active) {
  opacity: 1 !important;
}

/*========= DOT SLIDER =======*/
#wrap-slider .slick-dots {
  position: relative;
  /* height: 115px; */
  bottom: inherit;
  margin-top: 15px;
}

#wrap-slider .slick-dots li {
  width: 245px;
  height: auto;
  margin: 0 20px;
}

#wrap-slider .slick-dots li:hover {
  opacity: .6
}

#wrap-slider .slick-dots li.slick-active:hover {
  opacity: 1
}

/*========= MENU FIXED EFFECT =======*/
/*==========================================================
                       M A I N
==========================================================*/
h3 {
  font-weight: bold;
}

.text-shadow {
  text-shadow: #fff 3px 0px 0px, #fff 2.83487px 0.981584px 0px, #fff 2.35766px 1.85511px 0px, #fff 1.62091px 2.52441px 0px, #fff 0.705713px 2.91581px 0px, #fff -0.287171px 2.98622px 0px, #fff -1.24844px 2.72789px 0px, #fff -2.07227px 2.16926px 0px, #fff -2.66798px 1.37182px 0px, #fff -2.96998px 0.42336px 0px, #fff -2.94502px -0.571704px 0px, #fff -2.59586px -1.50383px 0px, #fff -1.96093px -2.27041px 0px, #fff -1.11013px -2.78704px 0px, #fff -0.137119px -2.99686px 0px, #fff 0.850987px -2.87677px 0px, #fff 1.74541px -2.43999px 0px, #fff 2.44769px -1.73459px 0px, #fff 2.88051px -0.838247px 0px;
}

.big40 {
  font-size: 40px;
}

.big50 {
  font-size: 50px;
}

.blue {
  color: #2c86cc;
}

.box-list-news {
  width: 100%;
  padding: 0 0 21px;
  margin-top: -5px;
}

.box-list-news1 {
  width: 100%;
  padding: 0 0 21px;
  margin-top: 35px;
}

.box-list-news .inner {
  display: flex;
  align-items: center;
  height: 70px;
}

.list-news-tt::after {
  content: '';
  position: absolute;
  width: 18px;
  height: 18px;
  background-color: #4e9fd4;
  transform: rotate(45deg);
  right: -9px;
  top: calc(50% - 9px);
  z-index: -1;
}

.list-news-tt {
  font-size: 20px;
  font-weight: bold;
  color: #FFF;
  width: 240px;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  position: relative;
  z-index: 2;
  background-color: #4e9fd4;
  margin-bottom: 0;
}

.list-news {
  position: relative;
  z-index: 1;
  padding: 10px 33px;
  background-color: #fff5c9;
  height: 100%;
  width: calc(100% - 240px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.list-news li {
  letter-spacing: 0.05rem;
  padding-top: 2px;
  display: flex;
  align-items: center;
}

.list-news .date {
  font-weight: bold;
  flex-shrink: 0;
  margin-right: 32px;
}

.list-news .tt {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.box-banner-top {
  padding: 82px 30px 90px;
}

.box-banner-top .inner {
  padding: 33px 30px 17px 36px;
  background-color: #fad23c;
}

.box-banner-top .inner {
  display: flex;
  justify-content: space-between;
}

.box-banner-top .slogan {
  font-size: 20px;
  font-weight: bold;
  position: relative;
  white-space: nowrap;
  background: url('../images/box-banner-slogan-bkg.png') no-repeat center /cover;
  width: 636px;
  height: 46px;
  display: flex;
  align-items: center;
  padding-left: 37px;
  letter-spacing: 0.06rem;
  margin-bottom: 11px;
}

.box-banner-top .slogan::after {
  content: '';
  position: absolute;
  width: 128px;
  height: 122px;
  background: url('../images/box-banner-slogan-ic.png') no-repeat center /cover;
  right: 10px;
  bottom: -63px;
  z-index: 1;
}

.box-banner-top .tt01 {
  margin-bottom: 6px;
}

.box-banner-top .tt03 {
  margin-bottom: 15px;
}

.box-banner-top .tt01,
.box-banner-top .tt03 {
  font-size: 36px;
  font-weight: bold;
  color: #FFF;
  padding-left: 12px;
  letter-spacing: 0.1rem;
  line-height: 1.5;
}

.box-banner-top .tt02 {
  margin-bottom: 1px;
  margin-left: 7px;
}

.box-banner-top .des {
  color: #FFF;
  letter-spacing: 0.2rem;
}

.banner-top-map .map {
  margin-bottom: -30px;
}

.banner-top-map .btn-primary {
  margin-bottom: 10px;
}

.banner-top-map .btn-primary a {
  width: 360px;
  height: 70px;
  margin: 0 auto;
  letter-spacing: 0;
  padding-left: 0;
  justify-content: center;
  padding-right: 10px;
  padding-top: 2px;
}

.banner-top-map .btn-primary a::after {
  display: none;
}

/*==================== SEC01 ===================*/
#sec01 {
  padding: 60px 0;
  background: url('../images/sec01-bkg.jpg') no-repeat left top;
  height: 825px;
  max-width: 1920px;
  margin: 0 auto;
}

.sec01-box {
  max-width: 864px;
  margin-left: auto;
}

.sec01-title {
  margin-left: 12px;
  margin-bottom: -5px;
}

.sec01-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 5px;
  margin-right: 13px;
}

.sec01-logo>p {
  margin-bottom: 0 !important;
}

.sec01-logo>p:not(:last-child) {
  margin-right: 20px;
}

.sec01-logo img {
  max-width: 245px;
  height: auto;
}

.sec01-sub {
  width: 100%;
  max-width: 350px;
  margin: 0 auto 10px auto;
  font-size: 10px;
  padding-left: 30px;
  white-space: nowrap;
  line-height: 1.6;
}

/*==================== SEC02 ===================*/
#sec02 {
  padding: 75px 0 100PX;
  /* background: url(../images/sec02-bkg.jpg) repeat; */
  background: #2c86cc;
}

.sec02-box {
  display: flex;
  justify-content: space-between;
  padding-left: 5px;
}

.sec02-box .sec02-title {
  position: relative;
  width: 47%;
}

.sec02-box .sec02-video {
  width: 48%;
  margin-top: 15px;
  max-width: 620px;
}

.sec02-h3 {
  font-size: 34px;
  margin-bottom: 14px;
  letter-spacing: 0.08rem;
}

.sec02-title p {
  color: #fff;
}

.sec02-title-slogan {
  margin-bottom: 8px;
}

.sec02-video {
  position: relative;
}

/*.sec02-video::after {
    content: "";
    position: absolute;
    width: 191px;
    height: 123px;
    bottom: -86px;
    right: -39px;
    z-index: 1;
    background: url('../images/sec02-video-ic.png') no-repeat center /cover;
}*/
.sec02-video-box {
  position: relative;
  border: 8px solid #FFF;
  overflow: hidden;
}

.sec02-video-box::after {
  content: "";
  position: absolute;
  width: 98px;
  height: 98px;
  left: calc(50% - 49px);
  top: calc(44% - 49px);
  z-index: 1;
  background: url('../images/sec02-video-btn.png') no-repeat center;
}

.sec02-video-tt {
  position: absolute;
  z-index: 2;
  top: calc(50% + 33px);
  left: calc(50% - 104px);
  width: 209px;
  height: 44px;
}

/*==================== SEC03 ===================*/
#sec03 {
  padding: 61px 0 77px;
  background: url('../images/sec03-bkg.jpg') repeat;
}

.sec03-h3 {
  margin-bottom: 17px;
  padding-right: 25px;
}

.sec03-banner {
  margin-bottom: 30px;
  padding-right: 9px;
}

.sec03-banner img,
.sec03-h3 img {
  display: block;
  margin: 0 auto;
}

.sec03-list {
  padding: 36px 54px 48PX 48px;
  border-radius: 20px;
  -webkit-box-shadow: 0px 0px 15px 0px rgba(50, 50, 50, 0.1);
  -moz-box-shadow: 0px 0px 15px 0px rgba(50, 50, 50, 0.1);
  box-shadow: 0px 0px 15px 0px rgba(50, 50, 50, 0.1);
  margin-bottom: 51px;
  background-color: #FFF;
}

.sec03-list .sec03-item:not(:last-child) {
  margin-bottom: 24px;
}

.sec03-item {
  display: flex;
}

.sec03-item-img {
  flex-shrink: 0;
  margin-bottom: 0;
}

.sec03-item:nth-of-type(odd) {
  justify-content: flex-start;
}

.sec03-item:nth-of-type(even) {
  justify-content: flex-end;
}

.sec03-item:nth-of-type(even) .sec03-item-img {
  margin-left: 44px;
}

.sec03-item:nth-of-type(odd) .sec03-item-img {
  margin-right: 44px;
}

.sec03-item .title {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 20px;
  letter-spacing: 0.1rem;
}

/* 5つの理由のカテゴリ差別化色：青(main)／黄(accent)／ティール／ピンク／紫 */
.sec03-item-green .title span,
.sec03-item-green .sec03-item-content::before {
  color: #2c86cc;
}

.sec03-item-orange .title span,
.sec03-item-orange .sec03-item-content::before {
  color: #e8be2a;
}

.sec03-item-blue .title span,
.sec03-item-blue .sec03-item-content::before {
  color: #17a2b8;
}

.sec03-item-pink .title span,
.sec03-item-pink .sec03-item-content::before {
  color: #f76e9f;
}

.sec03-item-purple .title span,
.sec03-item-purple .sec03-item-content::before {
  color: #a1459e;
}

.sec03-item-green .btn-primary a {
  background-image: linear-gradient(to top, #165690, #1e6ca8, #2c86cc, #4e9fd4, #5ba2d7);
}

.sec03-item-orange .btn-primary a {
  background-image: linear-gradient(to top, #c89800, #e8be2a, #fad23c, #fce072, #fff5c9);
}

.sec03-item-blue .btn-primary a {
  background-image: linear-gradient(to top, #0c6674, #128a9f, #17a2b8, #37b6c9, #5fc9d9);
}

.sec03-item-pink .btn-primary a {
  background-image: linear-gradient(to top, #f13c6f, #f55483, #f76995, #f87ca7, #f98eb7);
}

.sec03-item-purple .btn-primary a {
  background-image: linear-gradient(to top, #772273, #873583, #984694, #a858a5, #b969b6);
}

.sec03-item .btn-primary a::after {
  background-color: #dadada;
}

.sec03-item-green .sec03-item-content {
  padding-top: 25PX;
}

.sec03-item-orange .sec03-item-content {
  padding-top: 15px;
}

.sec03-item-blue .sec03-item-content {
  padding-top: 29PX;
}

.sec03-item-pink .sec03-item-content {
  padding-top: 37PX;
}

.sec03-item-purple .sec03-item-content {
  padding-top: 25PX;
}

.sec03-item-content {
  position: relative;
  max-width: 660px;
  padding-top: 25px;
}

.sec03-item-content .des {
  letter-spacing: 0.1rem;
}

.sec03-item-content::before {
  position: absolute;
  opacity: 0.3;
  font-size: 130px;
  font-weight: 900;
  bottom: 58px;
  right: -5px;
  letter-spacing: 0.8rem;
}

.sec03-item-content .slogan {
  border-radius: 10px;
  text-align: center;
  background-color: #4e9fd4;
  color: #FFF;
  font-size: 20px;
  font-weight: bold;
  width: 250px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding-bottom: 3px;
  letter-spacing: 0.2rem;
  margin-bottom: 2px;
}

.sec03-item-content .slogan::after {
  content: "";
  position: absolute;
  border-top: 13px solid #4e9fd4;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  z-index: 1;
  left: calc(50% - 7px);
  bottom: -13px;
}

.sec03-item-green .sec03-item-content::before {
  content: '職人';
}

.sec03-item-orange .sec03-item-content::before {
  content: '実力';
  bottom: 36px;
  right: -20px;
}

.sec03-item-blue .sec03-item-content::before {
  content: '親身';
}

.sec03-item-pink .sec03-item-content::before {
  content: '安心';
}

.sec03-item-purple .sec03-item-content::before {
  content: '保証';
}

.sec03-item-content .btn-primary {
  position: relative;
}

.sec03-item-content .btn-primary::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 13px;
  background: url('../images/sec03-content-bkg.jpg') repeat-x;
  bottom: -60px;
  left: 0;
}

/*==================== SEC04 ===================*/
#sec04 {
  padding: 105px 0;
  background: url('../images/sec04-bkg.jpg') no-repeat center top / 100% auto;
}

.sec04-h3 {
  font-size: 40px;
  color: #FFF;
  margin-bottom: 10px;
  letter-spacing: 0.15rem;
}

.sec04-des {
  color: #FFF;
  max-width: 550px;
  letter-spacing: 0.01rem;
  margin-bottom: 36px;
}

.sec04-list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 45px;
}

.sec04-list dl {
  -webkit-box-shadow: 0px 1px 6px 0px rgba(50, 50, 50, 0.2);
  -moz-box-shadow: 0px 1px 6px 0px rgba(50, 50, 50, 0.2);
  box-shadow: 0px 1px 6px 0px rgba(50, 50, 50, 0.2);
  position: relative;
  width: 368px;
  background: #FFF;
}

.sec04-list .cate {
  width: 160px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFF;
  font-size: 18px;
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #ccc;
  padding-bottom: 2px;
  cursor: pointer;
}

.sec04-list .cate.cate1 {
  background-color: #2c86cc;
}

.sec04-list .cate.cate2 {
  background-color: #4e9fd4;
}

.sec04-list .cate.cate3 {
  background-color: #fad23c;
}

.sec04-list dl dt {
  overflow: hidden;
}

.sec04-list dl dt img {
  display: block;
  transition: all 0.3s;
}

.sec04-list dl .tt {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 7px;
}

.sec04-list dl dd {
  padding: 11px 29px 29px 29px;
}

.sec04-list dl dd p {
  letter-spacing: 0.1rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sec04-list dl .adr-name {
  margin-bottom: 0;
}

.sec04-slogan {
  font-size: 28px;
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
  letter-spacing: 0.14rem;
  margin-left: 12px;
}

.sec04-slogan>span {
  position: relative;
}

.sec04-slogan>span::before,
.sec04-slogan>span::after {
  content: "";
  position: absolute;
  width: 33px;
  height: 43px;
  top: -6px;
}

.sec04-slogan>span::before {
  background: url('../images/sec04-slogan-before.png') no-repeat center /cover;
  left: -36px;
}

.sec04-slogan>span::after {
  background: url('../images/sec04-slogan-after.png') no-repeat center /cover;
  right: -32px;
}

.sec04-slogan span span {
  color: #2c86cc;
}

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

.group-btn>p {
  margin-bottom: 0;
}

.group-btn>p:not(:last-child) {
  margin-right: 20px;
}

/*==================== SEC05 ===================*/
#sec05 {
  padding: 85px 0;
  background: url("../images/sec05-bkg.jpg") no-repeat center /cover;
}

.sec05-h3 {
  font-size: 28px;
  text-align: center;
  color: #FFF;
  margin-bottom: 43px;
  letter-spacing: 0.1rem;
}

.sec05-h3 span {
  font-size: 40px;
}

.yellow {
  color: #fad23c;
}

.sec05-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 42px;
}

.sec05-list li a {
  display: block;
  width: 480px;
  height: 325px;
  padding: 21px 25px 45px;
  background: url('../images/sec05-item-bkg.jpg') repeat left -50px top -40px;
  position: relative;
  transition: all 0.3s;
}

.sec05-list li .tt {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 17px;
  letter-spacing: 0.1rem;
  line-height: 1.6;
}

.sec05-list li:nth-of-type(-n + 3) {
  margin-bottom: 25px;
}

.sec05-list li a p {
  z-index: 1;
  position: relative;
  letter-spacing: 0.02rem;
}

.sec05-list li a::after {
  content: "";
  position: absolute;
  width: 100px;
  height: 100px;
  right: 14px;
  bottom: 0;
  z-index: 0;
}

.sec05-list li.item01 a::after {
  background: url('../images/sec05-ic1.png') no-repeat center /cover;
}

.sec05-list li.item02 a::after {
  background: url('../images/sec05-ic2.png') no-repeat center /cover;
  right: 0;
}

.sec05-list li.item03 a::after {
  background: url('../images/sec05-ic3.png') no-repeat center /cover;
}

.sec05-list li.item04 a::after {
  background: url('../images/sec05-ic4.png') no-repeat center /cover;
}

.sec05-list li.item05 a::after {
  background: url('../images/sec05-ic5.png') no-repeat center /cover;
  right: 0;
}

.sec05-list li.item06 a::after {
  background: url('../images/sec05-ic6.png') no-repeat center /cover;
}

.sec05-btn a {
  background-color: #fff;
  border-radius: 20px;
  color: #111111;
  width: 390px;
  height: 70px;
  justify-content: center;
  padding-right: 28px;
  letter-spacing: 0.1rem;
}

.sec05-btn a::before {
  background: url('../images/sec05-btn-right.png') no-repeat center /cover;
  width: 10px;
  height: 16px;
}

.sec05-btn a::after {
  border-radius: 20px;
  bottom: -6px;
}

/*==================== SEC06 ===================*/
#sec06 {
  padding: 60px 0 110px;
}

.sec06-inner {
  padding: 8px 30px 8px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #06c755;
  border: 3px solid #111111;
  cursor: pointer;
}

.sec06-img {
  flex-shrink: 0;
  margin-right: 10px;
  transform: translateY(7px);
}

.sec06-phone {
  flex-shrink: 0;
  margin-left: -40px;
}

.sec06-slogan {
  margin-bottom: 15px !important;
  display: flex;
  justify-content: center;
  line-height: 1.875 !important;
}

.sec06-slogan span {
  display: inline-block;
  font-size: 20px;
  padding: 1px 36px 2px;
  border-radius: 30px;
  background-color: #fad23c;
  text-align: center;
  letter-spacing: 0.12rem;
  margin-left: -20px;
}

.sec06-h3 {
  font-size: 45px !important;
  line-height: 1.2 !important;
  text-align: center !important;
  color: #FFF;
  margin-bottom: 15px !important;
  background: none !important;
  padding: 0 !important;
}

.sec06-des {
  font-size: 18px;
  color: #FFF;
  text-align: center;
  margin-bottom: 20px !important;
  flex-direction: column;
  letter-spacing: 0.15rem;
}

.sec06-btn a {
  background-color: #FFF;
  width: 400px;
  height: 60px;
  justify-content: center;
  padding-right: 5px;
  font-weight: bold;
  color: #111111 !important;
  letter-spacing: 0.1rem;
  padding-left: 0;
  text-decoration: none !important;
}

.sec06-btn a span {
  color: #06c755;
}

.sec06-btn a::before {
  width: 15px;
  height: 24px;
  background: url('../images/sec06-btn-right.png') no-repeat center /cover;
  top: calc(50% - 12px);
}

.sec06-btn a::after {
  display: none;
}

.sec06-box {
  flex-shrink: 0;
}

/*==================== SEC07 ===================*/
#sec07 {
  padding: 0 0 85px;
  background-color: #e2edef;
}

.se07-inner {
  width: 1500px;
}

.sec07-h3 {
  font-size: 38px;
  text-align: center;
  position: relative;
  border-radius: 20px;
  border: 3px solid #2c86cc;
  border-bottom-width: 7px;
  padding: 20px 20px 23px 31px;
  background-image: linear-gradient(to top, #fff5c9, #fff);
  width: 100%;
  max-width: 1066px;
  margin: 0 auto 11px auto;
  transform: translateY(-36px) !important;
  letter-spacing: 0.18rem;
}

.sec07-h3 span {
  color: #2c86cc;
}

.sec07-h3::before {
  content: "";
  position: absolute;
  width: 58px;
  height: 34px;
  background: url('../images/sec07-h3-ic.png') no-repeat center /cover;
  left: calc(50% - 29px);
  bottom: -34px;
  z-index: 1;
}

.sec07-h3::after {
  content: "";
  position: absolute;
  width: 50px;
  height: 7px;
  background-color: #fff5c9;
  left: calc(50% - 25px);
  bottom: -4px;
}

.sec07-tt {
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  height: 126px;
  padding-bottom: 35px;
  letter-spacing: 0.15rem;
  margin-bottom: 3px;
}

.sec07-tt .sm {
  font-size: 24px;
  margin-bottom: 5px;
}

.sec07-tt .lg {
  font-size: 45px;
  color: #2c86cc;
  line-height: 1;
}

.sec07-item.item02 .sec07-tt .lg {
  color: #4e9fd4
}

.sec07-des {
  font-weight: bold;
  text-align: center;
  font-size: 18px;
  letter-spacing: 0.1rem;
  margin-bottom: 12px;
}

.sec07-list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 7px;
}

.sec07-item {
  width: 730px;
  -webkit-box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
  -moz-box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
  box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 25px 5px 40px;
  background-color: #FFF;
}

.sec07-item.item01 .sec07-tt {
  background: url("../images/sec07-tt01.png") no-repeat center;
}

.sec07-item.item02 .sec07-tt {
  background: url("../images/sec07-tt02.png") no-repeat center;
}

.sec07-banner img {
  display: block;
  margin: 0 auto;
}

.sec07-banner img:hover {
  opacity: 0.7;
}

.sec07-list-bnn dl {
  width: 690px;
  height: 95px;
  border: 3px solid;
  display: flex;
  align-items: center;
}

.sec07-list-bnn dl:not(:last-child) {
  margin-bottom: 10px;
}

.sec07-list-bnn dl dt {
  padding: 5px 10px 5px 4px;
  font-size: 18px;
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  -moz-text-orientation: upright;
  -ms-text-orientation: upright;
  text-orientation: upright;
  color: #FFF;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0.1rem;
  white-space: normal;
  padding-bottom: 0px;
}

.sec07-list-bnn dl dd {
  padding: 5px;
  display: flex;
  align-items: center;
  width: 100%;
}

.sec07-list-bnn dl dd p,
.sec07-list-bnn dl dd span {
  white-space: nowrap;
  margin-bottom: 0;
  line-height: 1;
}

.sec07-list-bnn dl .title {
  margin-right: auto;
  flex-shrink: 0;
  font-weight: bold;
}

.sec07-list-bnn dl .title span {
  display: block;
}

.sec07-list-bnn dl .title .lg {
  font-size: 28px;
  margin-bottom: 10px;
  letter-spacing: -0.15rem;
}

.sec07-list-bnn dl.item01 .title .lg {
  letter-spacing: 0;
}

.sec07-list-bnn dl.item02 .title .lg {
  letter-spacing: 0.15rem;
}

.sec07-list-bnn dl.item03 .title .lg {
  letter-spacing: -0.15rem;
}

.sec07-list-bnn dl.item04 .title .lg {
  letter-spacing: -0.05rem;
}

.sec07-list-bnn dl.item05 .title .lg {
  letter-spacing: 0.15rem;
}

.sec07-list-bnn dl.item06 .title .lg {
  letter-spacing: -0.16rem;
}

.sec07-list-bnn dl.item07 .title .lg {
  letter-spacing: 0.15rem;
}

.sec07-list-bnn dl.item08 .title .lg {
  letter-spacing: 0.15rem;
}

.sec07-list-bnn dl .title .sm {
  font-size: 16px;
  letter-spacing: 0.08rem;
}

.sec07-list-bnn dl .durability {
  margin-right: 20px;
  display: flex;
  align-items: center;
  flex-direction: column;
}

.sec07-list-bnn dl .durability .key {
  font-size: 14px;
  border: 1px solid #dcdcdc;
  width: 100px;
  height: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  margin-bottom: 5px;
}

.sec07-list-bnn dl .durability .val {
  font-size: 27px;
  font-weight: 800;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
}

.sec07-list-bnn dl .durability .val span {
  font-size: 18px;
  font-weight: bold;
}

.sec07-list-bnn dl .box-money {
  margin-bottom: 3px;
}

.sec07-list-bnn dl .money {
  display: flex;
  align-items: center;
  margin-bottom: 3px;
}

.sec07-list-bnn dl .money .numm {
  font-size: 45px;
  font-weight: 700;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  color: #c91c1d;
  display: flex;
  align-items: flex-end;
}

.sec07-list-bnn dl .money .numm .sm {
  font-size: 30px;
  font-weight: 800;
}

.sec07-list-bnn dl .money .numm .lg {
  font-weight: 800;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

.sec07-list-bnn dl .money span {
  display: block;
}

.sec07-list-bnn dl .money .val {
  font-size: 12px;
  font-weight: bold;
}

.sec07-list-bnn dl .money .val .lg {
  font-size: 22px;
  font-weight: 800;
}

.sec07-list-bnn dl .box-money .vat {
  font-size: 18px;
  font-weight: bold;
  color: #c91c1d;
  letter-spacing: 0.14rem;
}

.sec07-list-bnn dl.item-blue {
  border-color: #fad23c;
}

.sec07-list-bnn dl.item-blue dt {
  background-color: #fad23c;
}

.sec07-list-bnn dl.item-blue .title .lg {
  color: #fad23c;
}

.sec07-list-bnn dl.item-orange {
  border-color: #4e9fd4;
}

.sec07-list-bnn dl.item-orange dt {
  background-color: #4e9fd4;
}

.sec07-list-bnn dl.item-orange .title .lg {
  color: #4e9fd4;
}

.sec07-list-bnn dl.item-pink {
  border-color: #f76e9f;
}

.sec07-list-bnn dl.item-pink dt {
  background-color: #f76e9f;
}

.sec07-list-bnn dl.item-pink .title .lg {
  color: #f76e9f;
}

.sec07-list-bnn dl.item-pink .title .sm {
  letter-spacing: 0;
}

.sec07-list-bnn dl.item-purple {
  border-color: #a1459e;
}

.sec07-list-bnn dl.item-purple dt {
  background-color: #a1459e;
}

.sec07-list-bnn dl.item-purple .title .lg {
  color: #a1459e;
}

/*==================== SEC08 ===================*/
#sec08 {
  padding: 77px 0 119px;
}

.sec08-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.sec08-image {
  flex-shrink: 0;
  margin-right: 50px;
  margin-left: -210px;
  border: 10px solid #FFF;
  position: relative;
  -webkit-box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
  -moz-box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
  box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
}

.sec08-image::after,
.sec08-image::before {
  content: "";
  position: absolute;
}

.sec08-image::before {
  content: "";
  position: absolute;
  width: 447px;
  height: 139px;
  background: url('../images/sec08-img-ic.png') repeat center /cover;
  bottom: -93px;
  left: -99px;
  z-index: 1;
}

.sec08-image::after {
  content: "";
  position: absolute;
  width: calc(100% + 20px);
  height: 100%;
  background-color: #fff5c9;
  bottom: -30px;
  left: -30px;
  z-index: -1;
}

.sec08-title {
  position: relative;
  margin-bottom: 28px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-right: 19px;
}

.sec08-title::after {
  content: "";
  position: absolute;
  width: 561px;
  height: 379px;
  background: url("../images/sec08-tt-after.png");
  z-index: -1;
  bottom: -170px;
  left: 40px;
}

.sec08-des {
  margin-bottom: 44px;
  letter-spacing: 0.1rem;
}

.sec08-box {
  width: 650px;
  padding-bottom: 36px;
}

.sec08-btn {
  margin-left: -15px;
}

.sec08-btn .btn-primary:not(:last-child) {
  margin-right: 10px;
}

.sec08-btn .btn-primary a {
  width: 210px;
  height: 60px;
  border-radius: 20px;
  letter-spacing: 0;
}

.sec08-btn .btn-primary a::after {
  border-radius: 20px;
  bottom: -6px
}

/*==========================================================
                        F O O T E R
==========================================================*/
/*==================== SEC09 ===================*/
#sec09 {
  background-color: #2c86cc;
}

.sec09-inner {
  position: relative;
  padding-top: 90px;
  padding-bottom: 87px;
}

.sec09-h3 {
  color: #FFF;
  line-height: 1.6 !important;
  letter-spacing: 0.15rem;
  padding-left: 7px;
  margin-bottom: 20px !important;
  text-align: left !important;
  background: none !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.sec09-h3 span {
  display: inline-block;
  position: relative;
  z-index: 1;
}

.sec09-h3 span::before {
  content: "";
  position: absolute;
  z-index: 0;
}

.sec09-h3 .sm::before {
  width: 130px;
  height: 94px;
  background: url('../images/sec09-tt-ic1.png') no-repeat center /cover;
  right: -480px;
  top: 0px;
}

.sec09-h3 .lg::before {
  width: 130px;
  height: 94px;
  background: url('../images/sec09-tt-ic2.png') no-repeat center /cover;
  right: -360px;
  top: -90px;
}

.sec09-h3 .lg:after {
  content: "";
  position: absolute;
  width: 783px;
  height: 30px;
  background: url('../images/sec09-tt-bkg.png') no-repeat center /cover;
  z-index: -1;
  left: -7px;
  bottom: -6px;
}

.sec09-h3 .sm {
  font-size: 42px;
  text-shadow: rgb(250, 107, 2) 3px 0px 0px, rgb(250, 107, 2) 2.83487px 0.981584px 0px, rgb(250, 107, 2) 2.35766px 1.85511px 0px, rgb(250, 107, 2) 1.62091px 2.52441px 0px, rgb(250, 107, 2) 0.705713px 2.91581px 0px, rgb(250, 107, 2) -0.287171px 2.98622px 0px, rgb(250, 107, 2) -1.24844px 2.72789px 0px, rgb(250, 107, 2) -2.07227px 2.16926px 0px, rgb(250, 107, 2) -2.66798px 1.37182px 0px, rgb(250, 107, 2) -2.96998px 0.42336px 0px, rgb(250, 107, 2) -2.94502px -0.571704px 0px, rgb(250, 107, 2) -2.59586px -1.50383px 0px, rgb(250, 107, 2) -1.96093px -2.27041px 0px, rgb(250, 107, 2) -1.11013px -2.78704px 0px, rgb(250, 107, 2) -0.137119px -2.99686px 0px, rgb(250, 107, 2) 0.850987px -2.87677px 0px, rgb(250, 107, 2) 1.74541px -2.43999px 0px, rgb(250, 107, 2) 2.44769px -1.73459px 0px, rgb(250, 107, 2) 2.88051px -0.838247px 0px;
}

.sec09-h3 .lg {
  font-size: 45px;
  text-shadow: rgb(201, 28, 29) 4px 0px 0px, rgb(201, 28, 29) 3.87565px 0.989616px 0px, rgb(201, 28, 29) 3.51033px 1.9177px 0px, rgb(201, 28, 29) 2.92676px 2.72656px 0px, rgb(201, 28, 29) 2.16121px 3.36588px 0px, rgb(201, 28, 29) 1.26129px 3.79594px 0px, rgb(201, 28, 29) 0.282949px 3.98998px 0px, rgb(201, 28, 29) -0.712984px 3.93594px 0px, rgb(201, 28, 29) -1.66459px 3.63719px 0px, rgb(201, 28, 29) -2.51269px 3.11229px 0px, rgb(201, 28, 29) -3.20457px 2.39389px 0px, rgb(201, 28, 29) -3.69721px 1.52664px 0px, rgb(201, 28, 29) -3.95997px 0.56448px 0px, rgb(201, 28, 29) -3.97652px -0.432781px 0px, rgb(201, 28, 29) -3.74583px -1.40313px 0px, rgb(201, 28, 29) -3.28224px -2.28625px 0px, rgb(201, 28, 29) -2.61457px -3.02721px 0px, rgb(201, 28, 29) -1.78435px -3.57996px 0px, rgb(201, 28, 29) -0.843183px -3.91012px 0px, rgb(201, 28, 29) 0.150409px -3.99717px 0px, rgb(201, 28, 29) 1.13465px -3.8357px 0px, rgb(201, 28, 29) 2.04834px -3.43574px 0px, rgb(201, 28, 29) 2.83468px -2.82216px 0px, rgb(201, 28, 29) 3.44477px -2.03312px 0px, rgb(201, 28, 29) 3.84068px -1.11766px 0px, rgb(201, 28, 29) 3.9978px -0.132717px 0px, rgb(255, 230, 15) 6px 0px 0px, rgb(255, 230, 15) 5.91686px 0.995377px 0px, rgb(255, 230, 15) 5.66974px 1.96317px 0px, rgb(255, 230, 15) 5.2655px 2.87655px 0px, rgb(255, 230, 15) 4.71532px 3.71022px 0px, rgb(255, 230, 15) 4.03447px 4.44106px 0px, rgb(255, 230, 15) 3.24181px 5.04883px 0px, rgb(255, 230, 15) 2.35931px 5.51667px 0px, rgb(255, 230, 15) 1.41143px 5.83163px 0px, rgb(255, 230, 15) 0.424423px 5.98497px 0px, rgb(255, 230, 15) -0.574341px 5.97245px 0px, rgb(255, 230, 15) -1.55719px 5.79441px 0px, rgb(255, 230, 15) -2.49688px 5.45578px 0px, rgb(255, 230, 15) -3.36738px 4.96596px 0px, rgb(255, 230, 15) -4.14455px 4.33852px 0px, rgb(255, 230, 15) -4.80686px 3.59083px 0px, rgb(255, 230, 15) -5.33596px 2.74364px 0px, rgb(255, 230, 15) -5.71718px 1.8204px 0px, rgb(255, 230, 15) -5.93995px 0.84672px 0px, rgb(255, 230, 15) -5.99811px -0.150428px 0px, rgb(255, 230, 15) -5.89004px -1.14341px 0px, rgb(255, 230, 15) -5.61874px -2.1047px 0px, rgb(255, 230, 15) -5.19172px -3.00766px 0px, rgb(255, 230, 15) -4.62082px -3.82727px 0px, rgb(255, 230, 15) -3.92186px -4.54081px 0px, rgb(255, 230, 15) -3.11421px -5.12852px 0px, rgb(255, 230, 15) -2.22026px -5.57409px 0px, rgb(255, 230, 15) -1.26477px -5.86518px 0px, rgb(255, 230, 15) -0.274238px -5.99373px 0px, rgb(255, 230, 15) 0.723898px -5.95617px 0px, rgb(255, 230, 15) 1.70197px -5.75355px 0px, rgb(255, 230, 15) 2.63288px -5.39147px 0px, rgb(255, 230, 15) 3.49082px -4.87998px 0px, rgb(255, 230, 15) 4.25202px -4.23324px 0px, rgb(255, 230, 15) 4.89538px -3.46919px 0px, rgb(255, 230, 15) 5.40307px -2.60899px 0px, rgb(255, 230, 15) 5.76102px -1.67649px 0px, rgb(255, 230, 15) 5.95932px -0.697531px 0px;
}

.sec09-des {
  color: #fff;
  letter-spacing: 0.08rem;
}

.sec09-box {
  max-width: 780px;
  margin-bottom: 44px;
}

.idx_exterior {
  text-align: center;
  padding: 80px 0 80px 0;
}

.idx_exterior .sec09-banner02 {
  position: relative;
}

.idx_exterior .sec09-banner02 a {
  position: absolute;
  left: 0;
  right: 0;
  width: 480px;
  height: 60px;
  bottom: 0;
  margin: 0 auto;
  line-height: 1;
  font-size: 26px;
  font-weight: bold;
  justify-content: center;
  padding-left: 0;
  border-radius: 8px;
  letter-spacing: 0.14rem;
  padding-right: 17px;
  padding-bottom: 6px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: #ff7a59;
}

.idx_exterior .sec09-banner02 a:hover {
  opacity: .85;
}

.idx_exterior .sec09-banner02 a::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 17px;
  background: url('../images/ic-right-btn.png') no-repeat center /cover;
  top: 50%;
  transform: translateY(-75%);
  right: 20px;
  z-index: 1;
}

.idx_exterior .sec09-banner02 a::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  background-image: linear-gradient(to top, #ff7a59, #ff7a59, #fad23c, #fad23c, #fad23c);
  bottom: 5px;
  left: 0;
  z-index: -1;
}

/*
.sec09-banner {
    border: 8px solid #FFF;
    position: relative;
    background: rgba(255, 255, 255, 0.9);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 15px 44px 22px;
    -webkit-box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
    -moz-box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1);
    box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.1)
}

.sec09-banner:before {
    content: "";
    position: absolute;
    background: url('../images/sec09-banner-ic.png') no-repeat center /cover;
    width: 162px;
    height: 129px;
    left: -8px;
    top: -8px;
    z-index: 1;
}

.sec09-banner::after {
    content: "";
    position: absolute;
    background: url('../images/sec09-banner-ic02.png') no-repeat center /cover;
    width: 115px;
    height: 133px;
    right: -6px;
    top: -31px;
    z-index: 1;
}

.sec09-banner-tt {
    text-align: center;
    font-size: 38px;
    font-weight: bold;
    text-shadow: rgb(255, 255, 255) 3px 0px 0px, rgb(255, 255, 255) 2.83487px 0.981584px 0px, rgb(255, 255, 255) 2.35766px 1.85511px 0px, rgb(255, 255, 255) 1.62091px 2.52441px 0px, rgb(255, 255, 255) 0.705713px 2.91581px 0px, rgb(255, 255, 255) -0.287171px 2.98622px 0px, rgb(255, 255, 255) -1.24844px 2.72789px 0px, rgb(255, 255, 255) -2.07227px 2.16926px 0px, rgb(255, 255, 255) -2.66798px 1.37182px 0px, rgb(255, 255, 255) -2.96998px 0.42336px 0px, rgb(255, 255, 255) -2.94502px -0.571704px 0px, rgb(255, 255, 255) -2.59586px -1.50383px 0px, rgb(255, 255, 255) -1.96093px -2.27041px 0px, rgb(255, 255, 255) -1.11013px -2.78704px 0px, rgb(255, 255, 255) -0.137119px -2.99686px 0px, rgb(255, 255, 255) 0.850987px -2.87677px 0px, rgb(255, 255, 255) 1.74541px -2.43999px 0px, rgb(255, 255, 255) 2.44769px -1.73459px 0px, rgb(255, 255, 255) 2.88051px -0.838247px 0px, 0px 0px 6px rgba(0, 0, 0, 0.3);
    margin-bottom: 14px;
    letter-spacing: 0.14rem;
    padding: 0 60px;
    white-space: nowrap
}

.sec09-banner-tt span {
    position: relative;
}

.sec09-banner-tt span:before {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    background-color: #fad23c;
    border-radius: 50%;
    top: -9px;
    left: calc(50% - 6px);
}
*/
.sec09-group {
  display: flex;
  align-items: center;
}

.sec09-phone {
  flex-shrink: 0;
  margin-bottom: 0;
  text-align: center;
  padding-left: 53px;
  margin-right: 29px;
}

.sec09-phone span {
  display: block;
}

.sec09-phone .phone {
  font-size: 60px;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 1px;
  position: relative;
}

.sec09-phone .phone:before {
  content: "";
  position: absolute;
  width: 50px;
  height: 50px;
  background: url('../images/sec09-ic-phone.png') no-repeat center /cover;
  left: -54px;
  top: calc(50% - 25px);
}

.sec09-phone .time {
  letter-spacing: 0.06rem;
}

.sec09-group-btn .btn-primary:not(:last-child) {
  margin-right: 10px;
}

.sec09-btn a {
  width: 310px;
  height: 70px;
  padding-left: 18px;
  letter-spacing: 0.05rem;
}

.btn-line a {
  background-color: #06c755;
}

.sec09-btn a::after {
  background-color: #dadada;
  bottom: -5px;
}

.sec09-btn a::before {
  right: 10px
}

.sec09-inner>div {
  position: relative;
  z-index: 1;
}

.sec09-image {
  position: absolute;
  bottom: 0;
  right: -40px;
  z-index: 0;
}

.sec-review {
  padding: 70px 0;
}

.b03_info {
  background: #fff;
  position: relative;
  z-index: 2;
  -webkit-box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.1);
  border-radius: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.pc {
  display: block;
}

.under #content .b03_info p {
  margin-bottom: 0;
}

.b03_info a {
  text-decoration: none;
}

.b03_info:before {
  content: '';
  position: absolute;
  background: url("../images/b03_icon01.svg") no-repeat center center/100% auto;
  width: 91px;
  height: 88px;
  left: 80px;
  top: -17px;
  z-index: 3;
}

.b03_info_ttl {
  margin: 0;
  font-size: 35px;
  color: #fff;
  background: #1e6ca8;
  line-height: 1.4em;
  font-weight: 700;
  height: 289px;
  display: flex;
  align-items: center;
  padding: 48px 0 20px 34px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  position: relative;
  letter-spacing: -0.02em;
}

.b03_info_ttl:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 144.5px 0 144.5px 45px;
  border-color: transparent transparent transparent #1e6ca8;
  top: 0;
  right: -45px;
  pointer-events: none;
}

.b03_info_tel {
  margin: 0 34px 21px auto;
  font-size: 17px;
  color: #2c86cc;
  font-weight: 500;
  text-align: center;
  letter-spacing: -0.1em;
}

.b03_info_tel_num {
  display: block;
  text-decoration: none !important;
  font-size: 258.82%;
  font-weight: 700;
  line-height: 1.2em;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
  margin: 0 0 1px;
  color: #2c86cc;
}

.b03_info_tel_num:before {
  display: inline-block;
  content: '';
  position: relative;
  background: url("../images/ic-tel.png") no-repeat center / cover;
  width: 30px;
  top: 2px;
  height: 30px;
  margin-right: 10px;
}

.b03_info_txt {
  display: block;
  border: 1px solid;
  font-size: 141.17%;
  font-weight: 700;
  margin-bottom: 7px;
  padding: 1px 2px 3px;
}

.b03_info_time {
  letter-spacing: -0.035em;
  margin: 0 0 6px;
  display: block;
  font-weight: 500;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
}

.b03_info_note {
  display: block;
  font-size: 188.23%;
  font-weight: 700;
  margin-bottom: 15px;
}

.b03_24h .b03_info_note {
  text-align: center;
  margin-right: 45px;
  color: #2c86cc;
  font-size: 25px;
}

.b03_info_btn {
  margin-right: 45px;
  margin-bottom: 0;
}

.b03_info_btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none !important;
  width: 414px;
  text-align: center;
  font-size: 23.64px;
  font-weight: 700;
  line-height: 1.6em;
  background: #e8be2a;
  color: #fff !important;
  border-radius: 50px;
  padding: 18px 15px 21px;
  border: 2px solid #e8be2a;
  transition: all 0.3s;
}

.b03_info_note .idx_point {
  margin: 0 -10px;
}

.b03_info_btn li:nth-child(1) a {
  padding: 0 15px 0;
  height: 64px;
}

.b03_info_btn li:nth-child(2) a {
  background: #03c555;
  border-color: #03c555;
  padding: 0 15px 0;
  height: 64px;
}

.b03_info_btn li:nth-child(3) a {
  background: #2864d2;
  border-color: #2864d2;
  font-size: 20px;
  padding: 0 15px 0;
  height: 64px;
}

.b03_info_btn li:not(:last-child) {
  margin-bottom: 15px;
}

.b03_info_btn a:before {
  content: '';
  position: relative;
  display: inline-block;
  background: url("../images/idx_icon_mail.svg") no-repeat center center/100% auto;
  width: 30px;
  height: 22px;
  margin: 0 23px 0 11px;
  transition: all 0.3s;
  top: 3px;
}

.b03_info_btn li:nth-child(2) a:before {
  background-image: url("../images/idx_icon_line.svg");
  width: 47px;
  height: 47px;
  margin: 0 15px 0 -10px;
  top: 0;
}

.b03_info_btn li:nth-child(3) a:before {
  background-image: url("../images/idx_icon_yen.png");
  width: 30px;
  height: 29px;
  margin: 0 20px 0 5px;
  top: 0;
}

/* ============== FT-BNN ============== */
#ft-bnn {
  padding: 61px 0 49px;
}

.ft-bnn-list {
  display: flex;
  justify-content: center;
  align-items: center;
}

.ft-bnn-list p:not(:last-child) {
  margin-right: 62px;
  margin-bottom: 0;
}

.ft-bnn-list .bnn-txt {
  border: 1px solid #dadada;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  font-size: 20px;
  overflow: clip;
}

/* ============== FT-LINK ============== */
#ft-link {
  padding: 68px 0;
  /*background: url('../images/ft-bkg.png') no-repeat center /cover;*/
  min-height: 510px;
}

#ft-link .inner {
  display: flex;
  justify-content: space-between;
}

.ft-link-company {
  margin-right: 98px;
  flex-shrink: 0;
  height: 100%;
  margin-top: 8px;
}

.ft-logo {
  margin-bottom: 27px;
  max-width: 348px;
}

.ft-logo img {
  max-width: 348px !important;
  width: 100% !important;
  height: auto !important;
  display: block;
}

.ft-add {
  font-size: 15px;
  padding-left: 10px;
  line-height: 2;
  letter-spacing: 0.05rem;
  margin-bottom: 108px;
}

.ft-copy {
  font-size: 12px;
  color: #4e9fd4;
  padding-left: 4px;
  letter-spacing: 0.06rem;
}

.ft-link-url {
  display: flex;
}

.ft-link-url-col {
  width: 260px;
}

.ft-link-url-col:not(:last-child) {
  margin-right: 25px;
}

.ft-link-url li {
  font-size: 14px;
  letter-spacing: 0.07rem;
  line-height: 1.4;
}

.ft-link-url .big {
  font-weight: bold;
  font-size: 15px
}

.ft-link-url .ft-link-url-col ul:not(:last-child) {
  margin-bottom: 42px;
}

.ft-link-url .ft-link-url-col ul li:not(:last-child) {
  margin-bottom: 19px;
}

/*============================= TO TOP =============================*/
.to-top-img {
  display: none
}

.to-top img {
  width: 100%
}

.to-top {
  position: fixed;
  z-index: 100;
  width: 60px;
  height: 60px;
  bottom: 20px;
  right: 20px;
  cursor: pointer;
  transition: all .2s;
  opacity: 0;
  visibility: hidden
}

.to-top.show {
  transform: scale(1);
  opacity: 1;
  visibility: visible
}

#box-contact-pc {
  height: 140px;
  background: rgba(17, 17, 17, 0.6);
  padding: 20px 0;
  transition: all 0.4s;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  transform: translateY(145px);
  display: none;
}

#box-contact-pc.active {
  transform: translateY(0);
  display: block;
}

#box-contact-pc dl {
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#box-contact-pc dl dt {
  height: 100%;
  background-image: linear-gradient(to top,
      #165690,
      /* 濃い深緑 */
      #1e6ca8,
      /* 標準的な緑 */
      #4e9fd4,
      /* やや明るい緑 */
      #7ab0e0,
      /* ライトグリーン */
      #fff5c9
      /* 黄緑寄りの明るい緑 */
    );
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #FFF;
  font-size: 22px;
  font-weight: bold;
  width: 220px;
  letter-spacing: 0.1rem;
}

#box-contact-pc dl dd {
  background-color: #FFF;
  display: flex;
  width: auto;
  height: 100%;
  align-items: center;
  padding: 1px 10px 4px;
}

.contact-pc-phone {
  padding-left: 53px;
  text-align: center;
  margin-bottom: 0;
  margin-right: 25px;
}

.contact-pc-phone span {
  display: block;
}

.contact-pc-phone .numm {
  font-size: 30px;
  font-weight: bold;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  margin-bottom: 0;
  line-height: 1;
  position: relative;
  white-space: nowrap;
  display: inline-block !important;
  margin-top: 8px;
}

.contact-pc-phone .numm::before {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  background: url('../images/ic-tel-contact-pc.png') no-repeat center /cover;
  left: -46px;
  top: calc(50% - 20px);
}

.contact-pc-group-btn .btn-primary a {
  width: 300px;
  height: 70px;
  letter-spacing: 0;
  padding-left: 52px;
  padding-bottom: 6px;
  padding-top: 4px;
}

.contact-pc-group-btn .btn-primary:not(:last-child) {
  margin-right: 10px;
}

.contact-pc-group-btn .btn-primary a::after {
  background-color: #dadada;
}

.btn-contact a {
  background-color: #4e9fd4;
}

.btn-contact a::before {
  width: 30px;
  height: 18px;
  background: url('../images/ic-mail.png') no-repeat center /cover;
  right: inherit;
  left: 15px;
  top: calc(50% - 9px);
}

.contact-pc-group-btn .btn-line a::before {
  width: 45px;
  height: 45px;
  background: url('../images/ic-line.png') no-repeat center /cover;
  right: inherit;
  left: 4px;
  top: calc(50% - 24px);
}

/*==========================================================
                        FIX-IE
==========================================================*/
@media screen\0 {
  .header-contact {
    margin-left: 18px;
  }

  .btn-primary a {
    padding-bottom: 3px;
  }
}

/* EGDE */
@supports (-ms-ime-align: auto) {}

/* FIREFOX */
@-moz-document url-prefix() {}

/* Safari 10.1+ (which is the latest version of Safari at this time) */
@media not all and (min-resolution: 0.001dpcm) {}

.box-logo .heacer-construction .first_img {
  width: 137px;
  position: absolute;
  right: 177px;
}

.box-logo .heacer-construction .second_img {
  width: 100px;
  position: absolute;
  right: 18px;
}

.logo.first_img {
  padding-top: 6px;
  min-width: 95px;
}

.logo.second_img {
  width: 100%;
  margin-left: auto;
  /* min-width: 100px; */
  margin: 5px 0 0 10px;
}

.grecaptcha-badge {
  bottom: 200px !important;
}

@media screen and (min-width: 1260px) and (max-width: 1520px) {
  #wrap-slider {
    padding-bottom: 20px;
  }
}

.to-top.lg {
  bottom: 400px;
  width: 88px;
  right: 10px;
  height: auto;
}

.to-top.lg img {
  height: auto;
}

.to-top.youtube {
  bottom: 80px;
  width: 262px;
  height: auto;
  right: 10px;
}

.to-top.youtube.bnr_fix {
  bottom: 260px;
  width: 232px;
}

.footer-test.to-top.lg {
  bottom: 470px;
  width: 232px;
}

.footer-test.to-top.youtube.bnr_fix {
  bottom: 324px;
}

.footer-test.to-top.youtube {
  bottom: 125px;
}

.to-top.floating {
  width: 200px;
  bottom: 105px;
}

#index .lb-data .lb-details {
  display: none;
}

#index .lb-nav {
  display: none !important;
}

#platinum .til_price {
  min-height: 150px;
}

/*.under #content .ttl_01*/
#platinum #content .ttl_01 {
  padding: 0;
  background: none;
}

#platinum #content .ttl_01 a {
  background: #4e9fd4;
  padding: 10px;
  text-align: center;
  color: #fff;
  display: block;
  text-decoration: none;
  position: relative;
}

#platinum #content .ttl_01 a:before {
  content: "";
  position: absolute;
  width: 10px;
  height: 17px;
  background: url("../images/ic-right-btn.png") no-repeat center /cover;
  top: calc(50% - 8px);
  right: 20px;
  z-index: 1;
}

@media screen and (max-width: 750px) {
  #platinum #content .col-3 li {
    width: 25%;
  }
}

@media screen and (min-width: 601px) and (max-width: 725px) {
  #platinum .til_price {
    min-height: 227px;
  }
}

@media screen and (max-width: 600px) {
  #platinum #content .col-3 li {
    width: 100%;
  }
}

/*.box_image_modify .case_twenty{*/
/*    display: flex;*/
/*    align-items: center;*/
/*    justify-content: center;*/
/*    gap: 90px;*/
/*    position: relative;*/
/*}*/
/*.box_image_modify .case_twenty:before{*/
/*    position: absolute;*/
/*    content: "";*/
/*    left: 50%;*/
/*    bottom: 50%;*/
/*    transform: translate(-50%, 50%) rotate(90deg);*/
/*    width: 30px;*/
/*    height: 30px;*/
/*    background-size: 30px 30px;*/
/*    background-image: url("../images/topscroll.png");*/
/*}*/
.box_image_modify .case_twenty span {
  /*position: relative;*/
  /*max-width: 300px !important;*/
  /*height: 200px;*/
  /*display: flex;*/
  /*background-color: #e1e1e1;*/
}

/*.box_image_modify .case_twenty span img{*/
/*    object-fit: contain;*/
/*}*/
/*.box_image_modify .case_twenty span{*/
/*    position: relative;*/
/*}*/
/*.box_image_modify .case_twenty span:before{*/
/*    position: absolute;*/
/*    content: "";*/
/*    left: 5px;*/
/*    top: 5px;*/
/*    padding: 5px 10px;*/
/*    background-color: #2c86cc;*/
/*    font-weight: bold;*/
/*    font-size: 14px;*/
/*    color: #fff !important;*/
/*}*/
/*.box_image_modify .case_twenty span.before:before{*/
/*    content: "Before";*/
/*}*/
/*.box_image_modify .case_twenty span.after:before{*/
/*    content: "After";*/
/*}*/
/*.box_image_modify .case_twenty img{*/
/*    max-width: 300px !important;*/
/*    width: 100%;*/
/*}*/
.case_twenty.twentytwenty-container {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
}

/*.case_twenty.twentytwenty-container img{*/
/*    width: 100%;*/
/*    height: 100%;*/
/*    object-fit: cover;*/
/*}*/
.box_image_modify .twentytwenty-horizontal .twentytwenty-after-label:before {
  right: 20%;
  top: 30px;
  background-color: #2c86cc;
  font-size: 20px;
}

.box_image_modify .twentytwenty-horizontal .twentytwenty-before-label:before {
  left: 20%;
  top: 30px;
  background-color: #2c86cc;
  font-size: 20px;
}

.box_process_photo .process {
  display: flex;
  /*align-items: center;*/
  justify-content: center;
  gap: 30px;
}

.box_process_photo .process p {
  margin-bottom: 0 !important;
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 400px;
}

.box_process_photo .process span {
  display: block;
  padding: 10px;
}

.box_process_photo .process span.txt {
  width: 80%;
  text-align: center;
}

.box_process_photo .process span.img {
  /*max-width: 350px !important;*/
  height: 350px;
  display: flex;
  /*background-color: #e1e1e1;*/
}

.box_process_photo .process span.img img {
  object-fit: contain;
}

.footer-test.to-top {
  /*position: relative;*/
}

.footer-test.to-top .close,
.cp-sp .close {
  position: absolute;
  right: 0px;
  top: 0;
  background-image: url("../images/close.png");
  width: 20px;
  height: 20px;
  background-size: 14px 14px;
  background-repeat: no-repeat;
  background-color: #000;
  /*border-radius: 50%;*/
  background-position: center center;
  z-index: 2;
}

.footer-test.to-top.hidden {
  display: none !important;
}

.cp-sp.hidden {
  opacity: 0;
}

.hover:hover {
  opacity: .8;
}

table.tb_block td .col2 {
  display: flex;
  gap: 80px;
}

.mv {
  position: relative;
  padding: 0;
}

.mv .inner {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 9;
  margin: 0 auto;
  height: 100%;
}

.mv_bg.init {
  opacity: 1
}

.mv_video {
  height: calc(100vh - 180px);
  overflow: hidden;
}

.mv_video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  position: relative;
  bottom: -1px;
  top: -1px
}

.mv_video iframe {
  width: 100%;
  height: 100%;
}

.mv_txt {
  position: absolute;
  z-index: 2;
  /*top: 40%;*/
  bottom: 180px;
  left: 50%;
  transform: translate(-50%, -40%);
  width: 100%;
  height: auto;
  padding-left: 12px;
}

.mv_txt h2 {
  font-size: 50px;
  color: #fff;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: 0.12em;
  margin-bottom: 18px;
  text-shadow: 2px 0px 10px rgba(0, 0, 0, 0.3);
}

.mv_txt h2:first-line {
  letter-spacing: 0.17em;
}

.mv_txt h2 .point {
  position: relative;
}

.mv_txt h2 .point:before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fad23c;
  left: calc(50% - 46px);
  right: 0;
  top: -3px;
  margin: 0 auto;
}

.sec01_mv {
  display: none;
}

.catch_tt {
  font-size: 20px;
  color: #fff;
  text-shadow: 2px 0px 6px rgba(0, 0, 0, 0.3);
  letter-spacing: 0.14em;
  padding-left: 5px;
}

/* .top-test .box-list-news {
    margin-top: 50px;
} */
.box01-item {
  display: none !important;
}

.a_hv a:hover {
  opacity: .8;
}

.box01-list {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.box01-list li {
  width: 180px;
  height: 180px;
  border-radius: 50%;
}

.box01-list li img {
  width: 100%;
  height: auto;
}

.box01-tt,
.box01-list li {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.yane_a a:hover {
  opacity: .8;
}

#kuchikomi_fv01 {
  position: relative;
  overflow: hidden;
  padding: 0;
  border-right: none;
  border-left: none;
  /*transition:all 1s;*/
  height: 0;
  margin: 0 auto;
  box-sizing: border-box;
}

#kuchikomi_fv01.widget_show {
  height: 48px !important;
}

#kuchikomi_fv01 a:hover .g_logo img {
  opacity: 1;
}

#kuchikomi_fv01:hover {
  opacity: 0.8;
  transition: none !important;
}

#kuchikomi_fv01 a:hover {
  text-decoration: none;
}

#kuchikomi_fv01 .fa {
  color: #fff;
  position: absolute;
  left: 19px;
  zoom: 1.8;
}

#kuchikomi_fv01 .head {
  z-index: 0;
  padding: 10px 0px 7px 77px;
  height: auto;
  width: 293px;
  position: relative;
  background: none;
  box-sizing: border-box;
  max-width: 940px;
  margin: 0 auto;
}

#kuchikomi_fv01 .result_info>div {
  display: block;
  margin: 0;
}

#kuchikomi_fv01 .result_title {
  font-size: 12px;
  display: none;
}

#kuchikomi_fv01 .result_info {
  margin: 9px 0;
  overflow: hidden;
  font-weight: bold;
}

#kuchikomi_fv01 .result_info .star-num {
  font-size: 13px;
  line-height: 13px;
  float: left;
}

#kuchikomi_fv01 .result_info .star-rating {
  font-size: 13px;
  line-height: 13px;
  margin: 0 0 0 10px;
  position: relative;
  /*width: 5em;*/
  height: 1em;
  float: left;
  font-weight: bold;
}

#kuchikomi_fv01 .star-rating-front {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 100;
  /*20220704*/
  letter-spacing: 0;
}

#kuchikomi_fv01 .star-rating-back {
  color: #ddd;
  /*20220704*/
  letter-spacing: 0;
}

#kuchikomi_fv01 .result_info .result_review {
  font-size: 13px;
  line-height: 13px;
  float: left;
}

#kuchikomi_fv01 .g_logo {
  box-sizing: border-box;
  width: 70px;
  background: #fff;
  padding: 6px 8px 5px;
  left: -5px;
  margin-right: 3px;
  position: absolute;
  border-radius: 15px;
}

#kuchikomi_fv01 .g_logo img {
  display: block;
  width: 60px;
}

#kuchikomi_fv01 .g_logo:before {
  content: '';
  border: 14px solid transparent;
  border-bottom-color: #FFF;
  position: absolute;
  top: -2px;
  left: -8px;
  transform: rotate(-23deg);
  z-index: -1;
}

#kuchikomi_fv01 .kuchi_num {
  font-weight: bold;
  background: #ff2323;
  color: #fff;
  padding: 3px;
  font-size: 10px;
  display: inline-block;
  line-height: 1em;
  border-radius: 10px;
  position: absolute;
  border: solid 1px #fff;
  top: -8px;
  right: -7px;
  min-width: 1em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  #kuchikomi_fv01 {
    display: block;
  }
}

@media screen and (max-width: 380px) {
  #kuchikomi_fv01 .result_info .star-rating {
    margin-left: 5px;
  }
}

@media screen and (min-width: 980px) {
  #kuchikomi_fv01 .head {
    width: 980px;
  }
}

#kuchikomi_fv01 .reflection {
  height: 50%;
  width: 18px;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: rgba(255, 255, 255, 0.7);
  opacity: 0;
  transform: rotate(45deg);
  animation: reflection 4s ease-in-out infinite;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflection 4s ease-in-out infinite;
}

@keyframes reflection {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }

  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }

  81% {
    transform: scale(12) rotate(45deg);
    opacity: 1;
  }

  100% {
    transform: scale(180) rotate(45deg);
    opacity: 0;
  }
}

@-webkit-keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }

  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }

  81% {
    -webkit-transform: scale(12) rotate(45deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(180) rotate(45deg);
    opacity: 0;
  }
}

@media screen and (max-width: 768px) {
  .reflection {
    background-color: #fff;
  }

  @keyframes reflection {
    0% {
      transform: scale(0) rotate(45deg);
      opacity: 0;
    }

    80% {
      transform: scale(0) rotate(45deg);
      opacity: 0.5;
    }

    81% {
      transform: scale(4) rotate(45deg);
      opacity: 1;
    }

    100% {
      transform: scale(50) rotate(45deg);
      opacity: 0;
    }
  }

  @-webkit-keyframes reflection {
    0% {
      -webkit-transform: scale(0) rotate(45deg);
      opacity: 0;
    }

    80% {
      -webkit-transform: scale(0) rotate(45deg);
      opacity: 0.5;
    }

    81% {
      -webkit-transform: scale(4) rotate(45deg);
      opacity: 1;
    }

    100% {
      -webkit-transform: scale(50) rotate(45deg);
      opacity: 0;
    }
  }
}

.swing .g_logo {
  animation: swing_logo 4s ease-in-out infinite;
  -webkit-animation: swing_logo 4s ease-in-out infinite;
  animation-delay: 3.25s;
}

@-webkit-keyframes swing_logo {

  0%,
  100% {
    -webkit-transform-origin: bottom center;
  }

  5% {
    -webkit-transform: rotate(-10deg);
  }

  10% {
    -webkit-transform: rotate(6deg);
  }

  15% {
    -webkit-transform: rotate(-3deg);
  }

  20% {
    -webkit-transform: rotate(3deg);
  }

  25% {
    -webkit-transform: rotate(-2deg);
  }

  30% {
    -webkit-transform: rotate(1deg);
  }

  35% {
    -webkit-transform: rotate(-1deg);
  }

  40% {
    -webkit-transform: rotate(1deg);
  }

  45% {
    -webkit-transform: rotate(-1deg);
  }

  50% {
    -webkit-transform: rotate(0deg);
  }
}

/*タイムラインウィジェット
  ----------------------------------------*/
#kuchikomi_wrap {
  margin: 0;
  padding: 0;
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

#kuchikomi_wrap.kuchikomi_wrap {
  position: relative;
}

#kuchikomi_wrap .head {
  width: 100%;
  ;
  box-sizing: border-box;
  max-width: 940px;
  padding: 20px 20px 20px 130px;
  margin: 0 auto;
  z-index: 0;
  background: #4e9fd4;
  position: relative;
}

#kuchikomi_wrap .footer {
  position: fixed;
  bottom: 0;
  width: 100%;
  max-width: 900px;
  padding: 20px 0;
  background: #4e9fd4;
  z-index: 9999;
}

#kuchikomi_wrap .resultcontent {
  margin: 0 auto !important;
}

#kuchikomi_wrap.kuchikomi_wrap {
  /*max-width: 940px;*/
  margin: 0 auto;
  box-sizing: border-box;
}

#kuchikomi_wrap.kuchikomi_wrap h2 {
  color: #fff;
  background: transparent !important;
  padding: 0;
  margin: 0;
  line-height: 1em;
  max-width: 100% !important;
  text-align: left !important;
}

#kuchikomi_wrap .read_more {
  text-align: right;
}

#kuchikomi_wrap .read_more a {
  text-decoration: none;
  display: inline-block;
  margin: 15px 0;
  font-size: 13px;
  line-height: 1.42;
  padding: 0.35em 0.8em;
  font-weight: normal;
  border-width: 1px;
  border-style: solid;
  background: transparent;
  background-color: transparent;
  background-image: none;
  border-radius: 0.2em;
  vertical-align: bottom;
  background-color: #E6EAEF;
  background-image: linear-gradient(0deg, #c7d0db, white);
  color: #444;
  border-color: #c7d0db;
  text-shadow: 0 1px 1px #a8b6c7;
}

#kuchikomi_wrap .result_info {
  overflow: hidden;
  margin: 10px 0 5px;
  font-weight: bold;
}

#kuchikomi_wrap .result_info .star-num {
  font-size: 22px;
  line-height: 22px;
  color: #fff;
  float: left;
}

#kuchikomi_wrap .result_info .star-rating {
  margin: 0 10px;
  font-size: 22px;
  line-height: 22px;
  float: left;
  font-weight: bold;
}

#kuchikomi_wrap .result_info .result_review {
  font-size: 22px;
  line-height: 22px;
  color: #fff;
  float: left;
}

#kuchikomi_wrap .result_info .result_review span.font_m {
  font-size: 14px;
  padding-left: 20px;
}

#kuchikomi_wrap.kuchikomi_wrap>ul {
  background-color: #fff;
  height: 250px;
  max-width: 940px;
  overflow-y: scroll;
  list-style: none;
  padding: 10px 20px;
  margin: 0;
  clear: left;
  resize: vertical;
  box-shadow: 0px 0px 7px 0px #efefef inset;
  border: solid 1px #eee;
  box-sizing: border-box;
}

#kuchikomi_wrap.kuchikomi_wrap>ul li {
  border-bottom: 1px dashed #ccc;
  padding-top: 5px;
  padding-bottom: 20px;
}

#kuchikomi_wrap .result_title {
  font-size: 18px;
  font-weight: normal;
}

#kuchikomi_wrap .star-rating {
  position: relative;
  /*width: 5em;*/
  height: 1em;
  font-size: 14px;
  margin-bottom: 12px;
  float: left;
}

#kuchikomi_wrap .star-rating-front {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  color: #fad23c;
  /*20220704*/
  letter-spacing: 0;
}

#kuchikomi_wrap .star-rating-back {
  color: #ddd;
  /*20220704*/
  letter-spacing: 0;
}

.resultcontent .star-rating-front,
.resultcontent .star-rating-back {
  line-height: 1.5;
}

#kuchikomi_wrap .result_time {
  line-height: 24px;
  height: 14px;
  margin: 0 10px 12px;
  float: left;
  font-size: 15px;
}

#kuchikomi_wrap .result_author {
  line-height: 24px;
  height: 14px;
  margin-bottom: 12px;
  /*float:left;*/
  font-size: 15px;
}

#kuchikomi_wrap .result_txt {
  clear: left;
  font-size: 15px;
}

/*readmore btn*/
#kuchikomi_wrap .result_txt_box {
  position: relative;
  margin-top: 5px;
}

#kuchikomi_wrap .result_txt_box label {
  height: 1.5em;
  /* グラデーションの高さ */
  cursor: pointer;
  text-align: center;
  font-size: 42px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  /* 以下グラデーションは「背景が白」に併せて設定しています */
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
  background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
  background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}

#kuchikomi_wrap .result_txt_box input:checked+label {
  background: inherit;
  /* 開いた時には背景グラデーションを消す */
}

#kuchikomi_wrap .result_txt_box label:after {
  content: "続きをよむ";
  /* ラベルの文字 */
  font-size: 12px;
  line-height: 28px;
  position: absolute;
  bottom: -10px;
  left: 50%;
  box-shadow: 0px 0px 5px 0px #d8d8d8;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  color: #fff;
  background-color: #4e9fd4;
  opacity: 0.9;
  width: 12rem;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

#kuchikomi_wrap .result_txt_box input {
  display: none;
}

#kuchikomi_wrap .result_txt_box .result_txt {
  overflow: hidden;
  height: auto;
  /* 文字量が足りていない場合開く前に見えている部分の高さ */
  -webkit-transition: all 0.1s;
  -moz-transition: all 0.1s;
  -ms-transition: all 0.1s;
  -o-transition: all 0.1s;
  transition: all 0.1s;
  color: #333;
}

#kuchikomi_wrap .result_txt_box label+.result_txt {
  height: 4.5em;
  /* 開く前に見えている部分の高さ */
}

#kuchikomi_wrap .result_txt_box input:checked+label {
  /* display: none ; 閉じるボタンは要らないとき */
}

#kuchikomi_wrap .result_txt_box input:checked+label:after {
  content: "閉じる";
}

#kuchikomi_wrap .result_txt_box input:checked~.result_txt {
  height: auto;
  padding-bottom: 30px;
  /* 閉じるボタンのbottomからの位置 */
  -webkit-transition: all 0.1s;
  -moz-transition: all 0.1s;
  -ms-transition: all 0.1s;
  -o-transition: all 0.1s;
  transition: all 0.1s;
  line-height: 1.5;
}

#kuchikomi_wrap .g_logo {
  top: 29px;
  left: 20px;
  box-sizing: border-box;
  width: 86px;
  background: #fff;
  padding: 8px 10px 7px;
  margin-right: 3px;
  position: absolute;
  border-radius: 19px;
}

#kuchikomi_wrap .g_logo:before {
  content: '';
  border: 14px solid transparent;
  border-bottom-color: #FFF;
  position: absolute;
  top: 6px;
  left: -5px;
  transform: rotate(-23deg);
  z-index: -1;
}

#kuchikomi_wrap .g_logo img {
  display: block;
  width: 66px;
  height: auto;
  z-index: 1;
}

@media screen and (max-width:900px) {
  #kuchikomi_wrap.kuchikomi_wrap {
    padding: 2%;
    height: 100%;
  }

  #kuchikomi_wrap.kuchikomi_wrap>ul {
    padding: 2%;
  }

  #kuchikomi_wrap .read_more a {
    margin-top: 2%;
  }

  #kuchikomi_wrap .resultcontent {
    /* margin: 0 0 5% !important; */
    /*height:100% !important; height:calc(100% - 115px) !important;*/
  }
}

@media screen and (max-width:640px) {
  #kuchikomi_wrap .result_info {
    margin: 2% 0 0 0;
  }

  #kuchikomi_wrap .result_info>div {
    display: block;
    margin-left: 0;
  }

  #kuchikomi_wrap .result_title {
    font-size: 13px;
  }

  #kuchikomi_wrap .result_info .star-num {
    font-size: 13px;
    line-height: 13px;
    color: #fff;
    float: left;
  }

  #kuchikomi_wrap .result_info .star-rating {
    margin: 0 10px;
    font-size: 13px;
    line-height: 13px;
    float: left;
    margin-bottom: 2%;
  }

  #kuchikomi_wrap .result_info .result_review {
    font-size: 13px;
    line-height: 13px;
    color: #fff;
    float: left;
    margin-bottom: 2%;
  }

  #kuchikomi_wrap .result_info .result_review span.font_m {
    font-size: 80%;
    padding-left: 2vw;
  }

  #kuchikomi_wrap .result_txt {
    font-size: 13px;
  }

  #kuchikomi_wrap .head {
    padding: 20px 10px 10px 10px;
    margin-top: 23px;
  }

  #kuchikomi_wrap .resultcontent {
    /* margin: 0 0 5% !important; */
    height: 300px !important;
    /*height:calc(98% - 60px) !important;*/
  }

  #kuchikomi_wrap .g_logo {
    border: solid 2px #4e9fd4;
    top: -22px;
    left: 7px;
    width: 110px;
    padding: 5px 20px 4px;
    border-radius: 20px;
  }

  #kuchikomi_wrap .g_logo:before {
    border: 13px solid transparent;
    border-bottom-color: #FFF;
    top: 4px;
    left: -4px;
    z-index: 0;
  }

  #kuchikomi_wrap .result_time {
    height: 12px;
    font-size: 12px;
  }

  #kuchikomi_wrap .result_author {
    height: 12px;
    font-size: 12px;
  }
}

/*サイドメニュー用*/
@media screen and (max-width:300px) {
  #kuchi_widget01.kuchikomi_wrap h2 {
    line-height: 1.3em;
    margin-bottom: 10px;
  }

  #kuchi_widget01 .result_info .result_review {
    line-height: 1.8em;
    font-weight: normal;
  }

  #kuchi_widget01 .result_author {
    clear: both;
  }

  #kuchi_widget01 .head {
    padding: 20px 8px 4px 8px;
    height: auto;
  }

  #kuchi_widget01 #kuchikomi_wrap ::-webkit-scrollbar {
    width: 10px;
  }

  #kuchi_widget01 #kuchikomi_wrap ::-webkit-scrollbar-track {
    background: #fff;
    border-left: solid 1px #ececec;
  }

  #kuchi_widget01 #kuchikomi_wrap ::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
    box-shadow: inset 0 0 0 2px #fff;
  }

  #kuchi_widget01.kuchikomi_wrap>ul {
    padding: 3%;
  }

  #kuchi_widget01 .resultcontent {
    /*height: calc(100% - 100px) !important;*/
  }

  #kuchi_widget01 .g_logo {
    left: 18px;
  }
}

@media screen and (min-width:768px) {
  .top-review__tab--badge {
    top: 0;
    bottom: 0;
    margin: auto;
  }
}

@media screen and (max-width: 374px) {
  #kuchikomi_fv01 .head {
    padding: 10px 0px 7px 72px;
  }
}

/*pmap sp fix*/
@media screen and (max-width:640px) {
  #kuchikomi_wrap:not(.review_aco #kuchikomi_wrap) {
    height: auto;
    max-height: 100% !important;
  }

  /* #kuchikomi_wrap.kuchikomi_wrap>ul:not(.review_aco #kuchikomi_wrap.kuchikomi_wrap > ul) {
      overflow: visible !important;
      height: auto !important;
      max-height: 100% !important;
    } */
  #kuchikomi_wrap.kuchikomi_wrap>ul li:not(.review_aco #kuchikomi_wrap.kuchikomi_wrap > ul li) {
    padding-top: .5em;
    padding-bottom: 1.5em;
  }

  /* #resultcontent:not(.review_aco #resultcontent) {
      height: auto !important;
      overflow: visible !important;
    } */
  /*#resultcontent .star-rating:not(.review_aco #resultcontent .star-rating),
   #resultcontent .result_time:not(.review_aco #resultcontent .result_time),
   #resultcontent .result_author:not(.review_aco #resultcontent .result_author),
   #resultcontent .result_txt:not(.review_aco #resultcontent .result_txt) { font-size: 2.5vw;}
   #resultcontent .star-rating:not(.review_aco #resultcontent .star-rating), 
   #resultcontent .result_time:not(.review_aco #resultcontent .result_time),
   #resultcontent .result_author:not(.review_aco #resultcontent .result_author) { margin-bottom: .8em; line-height: 1.6em;}
   #resultcontent .result_txt:not(.review_aco #resultcontent .result_txt) { margin-top: .3em;}*/
}

/*--popup--*/
.popup {
  position: fixed;
  z-index: 9999999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 20px;
}

.popup_inner {
  position: absolute;
  top: 20px;
  left: 20px;
  right: 20px;
  bottom: 20px;
  margin: auto;
  display: flex;
}

.popup_box {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 0;
  padding: 40px 25px 40px 40px;
  background-color: #ffffff;
  margin: auto;
  text-align: left;
  border-radius: 5px;
  max-height: 90vh;
  animation: showout 1s forwards;
}

@keyframes showout {
  from {
    max-width: 0;
  }

  to {
    max-width: 800px;
  }
}

.popup_box-in {
  opacity: 0;
  animation: showct 1s forwards;
  animation-delay: .75s;
}

@keyframes showct {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.popup_box-in {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: calc(90vh - 80px);
  padding-right: 15px;
}

.popup-close {
  width: 45px;
  height: 45px;
  background: #2c86cc;
  position: absolute;
  right: -15px;
  top: -15px;
  border-radius: 50%;
  border: 2px solid #fff;
  animation: closebtn 1s forwards;
  cursor: pointer;
}

@keyframes closebtn {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

.popup-close:before,
.popup-close:after {
  position: absolute;
  top: 9px;
  right: 19px;
  display: block;
  width: 2px;
  height: 24px;
  content: '';
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  background-color: #fff;
}

.popup-close:after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.popup_box h2 {
  font-size: 18px !important;
  line-height: 1.8 !important;
  margin-bottom: 20px !important;
  text-align: center;
  font-weight: bold;
  color: #3c70a0;
  padding: 0 !important;
  float: none !important;
  height: auto !important;
}

.popup_box h3 {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 20px !important;
  text-align: left !important;
  font-weight: bold;
  text-decoration: underline;
  padding: 0;
}

.popup_box p {
  font-size: 14px;
  margin-bottom: 20px;
}

.popup_box img {
  max-width: 100%;
}

.popup_box ul {
  margin: 0 0 20px;
  padding: 0;
}

.popup_box li {
  list-style: disc;
  margin: 0 0 5px 20px;
}

.txt_right {
  text-align: right;
}

.txt_red {
  color: red;
}

@media screen and (max-width: 768px) {
  .popup_box {
    padding: 30px 10px 20px;
  }

  .popup_box-in {
    padding-right: 0
  }
}

/*--end popup--*/
.logo.second_img {
  max-width: max-content;
  margin-top: 0;
  padding-bottom: 0;
}

.logo.second_img a {
  width: 196px;
  display: block;
}

.logo.second_img a img {
  height: auto;
}

.head_pdf p a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: bold;
  background: #f86f9d;
  border-radius: 5px;
  padding: 10px;
  height: 66px;
  width: 164px;
  text-align: center;
  line-height: 22px;
}

.under .popup {
  display: none;
}

.fix_foo_pdf {
  position: absolute;
  top: -100px;
  left: 50px;
}

@media screen and (max-width: 750px) {
  .head_pdf {
    display: none;
  }
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
  .logo.second_img a {
    width: 156px;
  }

  .head_pdf p a {
    width: 134px;
    height: 54px;
    line-height: 16px;
    font-size: 12px;
  }
}

@media screen and (min-width: 751px) and (max-width: 1520px) {
  .head_pdf.fix_foo_pdf {
    left: 10px;
  }

  .head_pdf.fix_foo_pdf p a {
    width: 164px;
    height: 66px;
  }
}

.btn_head_pdf a:hover {
  opacity: .8;
}

#box-contact-pc .head_pdf.fix_foo_pdf {
  display: none;
}

#box-contact-pc.active .head_pdf.fix_foo_pdf {
  display: block;
}

@media screen and (min-width: 751px) and (max-width: 1366px) {
  .h-infomation-box {
    width: 280px;
  }

  .header-phone {
    margin-right: 20px;
  }

  .header-phone .numm {
    font-size: 30px;
  }
}

#box-contact-pc .inner02 {
  width: 1400px;
  position: relative;
}

.ytb-btn-cus {
  position: absolute;
  right: 0;
  top: -80px;
}

#gnavi.main-nav .menu-cus a {
  cursor: pointer;
}

#gnavi.main-nav .menu-cus a:before {
  display: none;
}

.hide-on-load {
  display: none;
}

.box-list {
  display: flex;
  justify-content: space-between;
  box-shadow: 0px 0px 7px 0px #efefef inset;
  border: solid 1px #eee;
  box-sizing: border-box;
  padding: 30px;
  max-width: 940px;
  margin: 80px auto 0;
}

.box-list .box-item:last-child {
  margin-right: 0;
  border-right: 0;
}

.box-item {
  margin-right: 40px;
  border-right: 2px solid #4e9fd4;
  padding-right: 40px;
}

.txt-top {
  font-size: 18px;
  font-weight: bold;
}

.txt-bot {
  text-align: center;
  font-size: 16px;
  padding: 0;
  font-weight: bold;
}


/* ===============================
   PC：スクロールでヘッダー2段をまとめて消す
   =============================== */
@media screen and (min-width: 1025px) {

  /* ヘッダー一式をまとめて包むラッパー */
  #header,
  #gnavi.main-nav {
    position: fixed !important;
    left: 0;
    right: 0;
    z-index: 9999;
    transition: transform 0.3s ease;
    will-change: transform;
  }

  /* 上段と下段の表示位置 */
  #header {
    top: 0;
  }

  #gnavi.main-nav {
    top: 100px;
    /* ←ここ重要：上段ヘッダーの高さに合わせて調整 */
  }

  /* 下スクロール時（両方消える） */
  .header-hidden {
    transform: translateY(-200px) !important;
    /* 2段分まとめて上へ */
  }

  /* 上スクロール時（両方表示） */
  .header-show {
    transform: translateY(0) !important;
  }

  /* 本文のズレ防止 */
  body {
    /* padding-top: 180px !important; */ /* removed: handled by #main margin-top */

  }
}
/* ========================================================
   旧「リスペックブログ」促進バナーを非表示（CSS側フォールバック）
   画像の alt / 要素クラス名パターンから可能な限り消す。
   JSおよび the_content フィルタでも削除済みだが、多重防御。
   ======================================================== */
img[alt*="リスペックブログ"],
img[alt*="ウレタン防水の施工事例を紹介"],
img[alt*="こちらをクリック"],
img[title*="リスペックブログ"],
img[title*="こちらをクリック"],
a[href*="/blog/"] img[src*="bnr"],
a[href*="/blog/"] img[src*="banner"],
.blog-banner,
.blog_banner,
.bnr-blog,
.bnr_blog,
.brog-bnr,
.side-blog-banner,
.side_blog_banner,
[class*="blog-promo"],
[id*="blog-promo"],
[class*="btn-pop"],
.view_timer.menu-cus {
    display: none !important;
}

/* ========================================================
   SVGアイコン（絵文字の代替）
   li.icon-merit  : メリット（青チェック）
   li.icon-demerit: デメリット（コーラルバツ）
   li.icon-warning: 警告/禁止（赤バツ）
   .icon-star-3   : ⭐⭐⭐（信頼度表記）
   ======================================================== */
.icon-merit,
.icon-demerit,
.icon-warning {
    list-style: none !important;
    position: relative;
    padding-left: 32px !important;
    margin-left: 0 !important;
}
.icon-merit::before,
.icon-demerit::before,
.icon-warning::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.2em;
    width: 22px;
    height: 22px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    flex-shrink: 0;
}
.icon-merit::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='11' fill='%232c86cc'/><path d='M6.5 12.5l3.5 3.5 7.5-8' stroke='%23fff' stroke-width='2.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}
.icon-demerit::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='11' fill='%23ff7a59'/><path d='M8 8l8 8M16 8l-8 8' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'/></svg>");
}
.icon-warning::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><circle cx='12' cy='12' r='11' fill='%23c91c1d'/><path d='M8 8l8 8M16 8l-8 8' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'/></svg>");
}

/* 星アイコン */
.icon-star-3 {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    vertical-align: middle;
    margin-left: 4px;
}
.icon-star-3::before,
.icon-star-3::after,
.icon-star-3 > span {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2l2.9 6.9 7.5.6-5.7 4.9 1.8 7.3-6.5-4-6.5 4 1.8-7.3L1.6 9.5l7.5-.6z' fill='%23fad23c'/></svg>");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
