@charset "UTF-8";
@import url("common.css");




/************************************
** 基本設定（General Setting）
************************************/
html{
  font-size: 62.5%; /* 62.5%を指定すると「1.0 rem = 10px」 */
}
html, body {
  margin: 0;
  padding: 0;
}
body {
  font-family:"Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    font-size: 16px;
    font-size: 1.6rem;
    color: #362014;
    letter-spacing: 1.5px;
}
a.fadeIn.animated :hover,a:hover {
    opacity: 0.6;
}

img{
  border-width:0;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
      image-rendering: -webkit-optimize-contrast;
      width: 100%;
}
.bk_image{
  -webkit-backface-visibility: hidden;
  image-rendering: -webkit-optimize-contrast;
}
figure,
main figure{
  margin: 0;
}
.article{
  position: relative;
}
/*記事・カテゴリ中の画像を要素内に収める*/
.article img,
.category-description img,
.wp-caption,
.hover-image{
  max-width:100%;
  height:auto;
}
.aligncenter{
  clear:both;
}
.cf:after{
  content: "";
  clear: both;
  display: block;
}
.ft14 {
  font-size: 1.4rem;
}
.ft16 {
  font-size: 1.6rem;
}
.ft18 {
  font-size: 1.8rem;
}
.ft20 {
  font-size: 2rem;
}
.ft22 {
  font-size: 2.2rem;
}
.ft26 {
  font-size: 2.6rem;
}
.ft28 {
  font-size: 2.8rem;
}
.ft36 {
  font-size: 3.6rem;
}
.ft43 {
  font-size: 4.3rem;
}
.w95 {
	width: 95%;
	margin: 0 auto;
}

.tc {
  text-align: center;
}

.tr{
  text-align: right;
}

.tl {
  text-align: left;
}

.df {
	display: flex;
  align-items: center;
  }

  .sp {
    display: none;
  }
.zenkaku {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-style: normal;
  }

  .zenkaku_a {
    font-family: "Zen Kaku Gothic Antique", sans-serif;
    font-weight: 400;
    font-style: normal;
  }

.sans {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

h1,h2,h3 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  text-align: center;
}
a {
  text-decoration: none;
}

p,li,a,dt,dd,th,td {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #323940;
}

.fadeIn {
  transform: translate3d(0, 30px, 0);
  transition: 3s;
  opacity: 0;
}

.fadeIn.animated {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}


.m0 {
  margin: 0 auto;
}

.fbl {
  font-weight: 900;
}

.black {
  color: #323940;
}

.red {
  color: #e84a4b;
}
.red2 {
  color: #db717b;
}

.pink {
  color: #ff9999 !important;
}

.white {
  color: #ffffff;
}
.bg_red {
  background-color: #e84a4b;
}
.bg_red02 {
  background-color: rgba(232,74,75,0.12);
}
.bg_gray {
  background-color: #f8f8f8;
}

.arrow {
  display: inline-block;
  vertical-align: middle;
  color: #ffffff;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.8rem 0.9rem;
  border-left-color: currentColor;
  border-right: 0;
}

.arrow01 {
  display: inline-block;
  margin-left: 44%;
  vertical-align: middle;
  color: #ffffff;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.6rem 0.6rem;
  border-left-color: currentColor;
  border-right: 0;
}

.arrow_red {
  display: inline-block;
  vertical-align: middle;
  color: #e84a4b;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 0.6rem 1rem;
  border-left-color: currentColor;
  border-right: 0;
  margin-right: 8%;
}

.w_small_arrow {
  display: inline-block;
  width: 10px;
  height: 10px;
  position: relative;
  margin-left: -4%;
}

.w_small_arrow:before, .w_small_arrow:after {
  content: "";
  width: 7px;
  height: 1px;
  background: #323940;
  position: absolute;
  top: 31%;
  left: 8px;
  transform: rotate(35deg);
  transform-origin: calc(100%) 50%;
}

.w_small_arrow:after {
  transform: rotate(-35deg);
}

.w_arrow {
  display: inline-block;
  width: 10px;
  height: 10px;
  position: relative;
  margin-left: 0;
}

.w_arrow:before, .w_arrow:after {
  content: "";
  width: 7.1px;
  height: 1px;
  background: #323940;
  position: absolute;
  top: 31%;
  left: 1px;
  transform: rotate(35deg);
  transform-origin: calc(100%) 50%;
}

.w_arrow:after {
  transform: rotate(-35deg);
}

.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  background-color: #e84a4b;
  width: 53.5%;
  padding: 14.5px 3.5% 14.5px 6%;
  border-radius: 26px;
  box-sizing: border-box;
  /* max-width: 316px; */
  position: relative;
  transition: color .25s ease;
  cursor: pointer;
}


.btn:hover:before {
  transform: scaleX(1);
  transform-origin: left;
}

.btn:before {
  width: 100%;
  display: block;
  content: '';
  position: absolute;
  border: 1px solid #e84a4b;
  padding: 14.5px 3.5% 14.5px 6%;
  box-sizing: border-box;
  inset: 0;
  background-color: #ffffff;
  border-radius: 26px;
  transition: transform 0.6s ease;
  transform: scaleX(0);
  transform-origin: right;
  z-index: -1;
}

.btn:hover {
  color: #e84a4b;
}

.btn:hover .arrow,.btn:hover .arrow01 {
  color: #e84a4b;
}


/*----------------------------------------------------

下層ヘッダー

-----------------------------------------------------*/

.kaso_piano_header {
  position: relative;
}

.kaso_piano_header01 {
  background: linear-gradient(to right, rgba(50, 57, 64, 0) 0%, rgba(50, 57, 64, 0.8) 32%, rgba(50, 57, 64, 0.8) 68%, rgba(50, 57, 64, 0) 100%), url(../../../images/header_piano.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 33.5vw;
}

.kaso_piano_header02 {
  background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 40%, rgba(255, 255, 255, 0.6) 75%, rgba(255, 255, 255, 0) 100%),url(../../../images/header_piano02.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 33.5vw;
}

.kaso_piano_header03 {
  background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 40%, rgba(255, 255, 255, 0.6) 75%, rgba(255, 255, 255, 0) 100%),url(../../../images/header_company.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 33.5vw;
}

.kaso_piano_header03_02 {
    background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 46%, rgba(255, 255, 255, 0.6) 75%, rgba(255, 255, 255, 0) 100%), url(../../../images/header_qa.png);
    background-size: cover;
    background-position: right;
    background-repeat: no-repeat;
    height: 33.5vw;
}

.kaso_piano_header04 {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 66%, rgba(255, 255, 255, 0.7) 100%), url(../../../images/header_piano03.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.kaso_piano_header05 {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 66%, rgba(255, 255, 255, 0.7) 100%), url(../../../images/header_piano04.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.kaso_piano_header06 {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 66%, rgba(255, 255, 255, 0.7) 100%), url(../../../images/header_piano05.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.kaso_piano_header07 {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 66%, rgba(255, 255, 255, 0.7) 100%), url(../../../images/header_piano06.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.kaso_main {
  height: 38.2vw;
}

.kaso_title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.kaso_title_left {
  position: absolute;
  left: 5%;
  transform: translate(0, -50%);
}

.kaso_title_right {
  width: fit-content;
  position: absolute;
  /* right: 0%; */
  left: 61%;
  transform: translate(0, -50%);
}

.kaso_title_right h1 {
  margin-bottom: 3%;
}

.kaso_title p {
  margin: 0;
}
/*----------------------------------------------------

トップページ

-----------------------------------------------------*/


#h-top {
  justify-content: space-between;
  align-items: center;
  padding: 1% 3%;
}

.header_left {
  width: 25%;
}

.header_left h1 {
  max-width: 361px;
  margin: 0;
}

.header_right {
  width: 70%;
  justify-content: right;
  align-items: end;
}

.header_tel {
  margin-right: 5%;
}

.header_tel p {
  margin: 0;
}

.header_tel a {
  line-height: 1;
}

.header_tel a span.db {
  margin-top: 1.5%;
  margin-bottom: -2%;
}
.header_contact {
  width: 32.5%;
  max-width: 316px;
}

.header_contact a {
  width: 100%;
  border-radius: 26px;
  color: #ffffff;
  justify-content: space-around;
  padding: 3.7% 3%;
  line-height: 1.3;
}

.header_contact a img {
  width: 15%;
}

.header_contact a span {
 margin-left: -3%;
 margin-right: 5%;
}

.hero_area {
  background: linear-gradient(-151.1111deg,rgba(255,255,255,0)0%,rgba(255,255,255,0.5)66.2712%,rgba(255,255,255,0.7)100%),url(../../../images/hero.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 41.5vw;
  position: relative;
}

.hero_text p {
  position: absolute;
  left: 5%;
  bottom: 10%;
  text-shadow: 0 0 4px rgba(52.9%, 18%, 20%, 0.98);
  margin: 0;
}

#navi {
  background-color: #f8f8f8;
}

.navi_list ul {
  margin: 0;
  justify-content: center;
  padding-left: 0;
}

.navi_list ul li {
  width: 17%;
}

.navi_list ul li a {
  display: inline-block;
  width: 100%;
  height: 100%;
  color: #323940;
  padding: 11% 0;
}

.navi_list ul li a span {
  font-weight: 100;
  font-size: 1rem;
  margin-top: 2%;
}

.top_about h2 {
  margin: 3% auto 4.5%;
}

.top_about_inner {
  justify-content: space-between;
}

.top_about_left {
    width: 42%;
    padding-left: 5%;
}

.top_about_text a {
  margin-top: 7%;
}

.top_about_right {
  background-image: url(../../../images/top_about.jpg);
  width: 43.5%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 44.5vw;
  position: relative;
}

.top_about_sub01,.top_about_sub02 {
  position: absolute;
}

.top_about_sub01 {
  width: 40%;
  bottom: -11%;
  left: -5%;
}

.top_about_sub02 {
  width: 28%;
  bottom: -13.5%;
  left: 38%;
}

.top_service,.top_cleaning,.top_buying {
  width: 100%;
  height: 35vw;
  position: relative;
}

.top_service {
  background: linear-gradient(to right,rgba(255,255,255,0)0%,rgba(255,255,255,0.5)66.2712%,rgba(255,255,255,0.7)100%),url(../../../images/top_service.jpg);
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}

.top_cleaning {
  background: linear-gradient(to right,rgba(255,255,255,0)0%,rgba(255,255,255,0.5)66.2712%,rgba(255,255,255,0.7)100%),url(../../../images/top_cleaning.jpg);
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}

.top_buying {
  background: linear-gradient(to right,rgba(255,255,255,0)0%,rgba(255,255,255,0.5)66.2712%,rgba(255,255,255,0.7)100%),url(../../../images/top_buying.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}


.service_list {
  margin-top: 12%;
}

.service_list  .arrow01 {
  margin-left: 28%;
}

.service_title {
  background-color: #f8f8f8;
  padding: 3% 0;
}

.service_title p {
 margin: 0;
}

.top_service_text.service_btn {
  display: none;
}

.service_btn {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.top_service_text {
  width: 39%;
  position: absolute;
  top: 48%;
  transform: translate(0, -50%);
  right: 5%;
}

.top_service_text h2 {
  margin: 0;
}

.top_service_text p {
  margin: 2.5% auto 7.5%;
}

.sub_information {
  margin-top: 5%;
  align-items: start;
  width: 97%;
  margin: 6.5% auto;
}

.sub_info_box {
  width: calc(98% / 3);
  height: 35vw;
  margin-right: 1%;
  display: block;
}

.sub_info_box:last-of-type {
  margin-right: 0;
}

.sub_info_img {
  width: 100%;
  height: 20vw;
}

.sub_info01 {
  background-image: linear-gradient(to right, rgba(255,255,255,0.32),rgba(255,255,255,0.32)),url(../../../images/top_sub01.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.sub_info02 {
  background-image: linear-gradient(to right, rgba(255,255,255,0.32),rgba(255,255,255,0.32)),url(../../../images/top_sub02.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.sub_info03 {
  background-image: linear-gradient(to right, rgba(255,255,255,0.32),rgba(255,255,255,0.32)),url(../../../images/top_sub03.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.sub_info_text h3 {
  position: relative;
  margin-bottom: 10%;
}

.sub_info_text h3:before {
  content: "";
  position: absolute;
  bottom: -52%;
  left: 50%;
  transform: translate(-50%, 0);
  width: 37px;
  height: 3px;
  background-color: #e84a4b;
}

.recruit {
  height: 20vw;
  border: 0.75px solid #dddddd;
  padding: 10px;
}

.recruit_image {
  background-image: url(../../../images/recruit.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 19.5vw;
  display: inline-block;
  position: relative;
}

.recruit_image a.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #ffffff;
    width: fit-content;
    padding: 8.5px 3.5% 8.5px 3.5%;
    border-radius: 56px;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 3%;
    transition: color .25s ease;
    cursor: pointer;
}

.recruit_image a.btn .fa-external-link {
  color: #e84a4b;
}

.recruit_image a.btn:before {
    width: 100%;
    display: block;
    content: '';
    position: absolute;
    border: 1px solid #ffffff;
    padding: 14.5px 3.5% 14.5px 6%;
    box-sizing: border-box;
    inset: 0;
    background-color: #e84a4b;
    border-radius: 26px;
    transition: transform 0.6s ease;
    transform: scaleX(0);
    transform-origin: right;
    z-index: -1;
}

.top_news {
  background-color: #f8f8f8;
  padding: 1% 0;
}

.top_news_left,.top_news_right {
  padding: 3% 2%;
}

.top_news_left {
  width: 15%;
  border-right: 1px solid #323940;
}

.top_news_left h3,.top_news_left p {
  margin: 0;
}

.top_news_left p {
  width: fit-content;
  border-bottom: 1px dashed #323940;
  margin-top: 7%;
  padding-bottom: 2%;
}

.top_news_right {
  width: 85%;
  padding-left: 3%;
}

.top_news_right dl dd {
  margin-left: 0;
  padding-left: 1%;
}

.top_news_right dl dd:first-child {
  border-bottom: 1px dashed #323940;
}


.top_news_right dl dd p.day {
  width: fit-content;
  margin-right: 5%;
}

.contact {
  background: linear-gradient(to right, rgba(0, 0, 0, 0.56), rgba(0, 0, 0, 0.56)), url(../../../images/top_contact.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 43vw;
  padding: 4% 0;
  box-sizing: border-box;
}

.contact_title h2 {
  margin: 0;
}

.contact_title p {
  margin: 0 auto 4%;
}

.contact_inner {
  justify-content: space-around;
}

.contact_left, .contact_right {
  width: 45.5%;
  /* height: 24.2vw; */
  padding-bottom: 2.5%;
  background-color: rgba(255, 255, 255, 0.64);
}

.contact_left {
  margin-right: 3%;
}

.contact_left h3,.contact_right h3 {
  background-color: #ffffff;
  margin: 2.5% 0 2%;
  padding: 3.5% 0;
}

.contact_left a {
  display: block;
  width: fit-content;
  margin: 0 auto;
}

.btn:hover .mail_logo {
  background-color: #e84a4b;
}

.mail_logo {
  display: inline-block;
  width: 45px;
  height: 30px;
  -webkit-mask-image: url(../../../images/mail.png);
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-image: url(../../../images/mail.png);
  background-color: #fff;
	mask-size: contain;
	mask-repeat: no-repeat;
	mask-position: center;
}

.contact_left a:first-of-type {
  text-shadow: 0 0 5px #ffffff;
  font-weight: 900;
}

.contact_left a span.db {
  width: fit-content;
  margin-bottom: -9%;
  text-shadow: none;
}

.contact a.btn {
  max-width: 375px;
  width: 59.5%;
  padding: 14px 3.5% 14px 6%;
  margin-top: 0.7%;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
}

.contact_left a.btn span {
  line-height: 1.2;
  margin-right: 15px;
}

.contact_right a.btn {
  padding: 13.2px 3.5% 13.2px 3%;
  margin-top: 6.5%;
}

.btn:hover .buy_logo {
  background-color: #e84a4b;
}

.buy_logo {
  display: inline-block;
  width: 58px;
  height: 40px;
  -webkit-mask-image: url(../../../images/assess.png);
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-image: url(../../../images/assess.png);
  background-color: #fff;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}


footer {
  margin-top: 5%;
}
.footer_inner {
  justify-content: space-between;
}

.footer_left {
  width: 30%;
}

.footer_left p:last-child {
  letter-spacing: -0.01em;
}


.footer_right {
  width: 65%;
  margin-bottom: 1.5%;
}

.footer_logo {
  display: block;
  max-width: 361px;
  margin: 0 auto;
}

.footer_information p.ft12 {
  margin-top: 0;
}

.footer_right_image {
  width: calc(96%/3);
  height: 14.2vw;
  margin-right: 2%;
  position: relative;
}

.footer_right_image p {
  width: 100%;
  padding: 2% 0;
  margin: 0;
  position: absolute;
  bottom: 0;
  left: 0;
}
.footer_right_image03 {
  margin-right: 0;
}

.footer_right_image01,.sitemap_image01 {
  background: linear-gradient(to right,rgba(255,255,255,0.38),rgba(255,255,255,0.38)),url(../../../images/footer_01.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.footer_right_image02,.sitemap_image02 {
  background: linear-gradient(to right,rgba(255,255,255,0.38),rgba(255,255,255,0.38)),url(../../../images/footer_02.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.footer_right_image03,.sitemap_image03 {
  background: linear-gradient(to right,rgba(255,255,255,0.38),rgba(255,255,255,0.38)),url(../../../images/footer_03.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.footer_right_top  {
  margin-bottom: 6%;
}

.footer_right_top a {
  display: block;
}

.footer_right_bottom {
  margin: 4% auto 5%;
}

.footer_right_bottom ul {
  justify-content: center;
}

.footer_right_bottom ul:first-child {
  margin-bottom: 3%;
}

.footer_right_bottom ul li {
  border-right: 1px solid #323940;
  padding: 0 2%;
  line-height: 1;
}

.footer_right_bottom ul li a {
    display: inline-block;
    text-align: center;
    text-decoration: none;
    outline: none;
    border-bottom: 1px;
    position: relative;
    padding: 3% 0;
}

.footer_right_bottom ul li a:after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #e84a4b;
  bottom: -10px;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform 0.5s;
}

.footer_right_bottom ul li a:hover:after {
  transform: scale(1, 1);
  transform-origin: left top;
}

.footer_right_bottom ul li:last-child {
  border-right: none;
  padding-right: 0;
}

#copyright {
  background-color: #e84a4b;
}

.credit p {
  margin: 0;
  padding: 1.5% 0;
}

#page-top {
  position: fixed;
  right: 10px;
  bottom: 10px;
}

#page-top a {
  background-color: #e84a4b;
  border: 1px solid #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  width: 35px;
  height: 40px;
  padding: 3% 2% 3% 2.5%;
}

.fa-angle-double-up:before {
  content: "\f102";
  color: #ffffff;
}

/*----------------------------------------------------
  パンくずリスト
 -----------------------------------------------------*/

 #breadcrumb {
  padding: 1.5% 0 0 2%;
}

.breadcrumb-home span img {
  width: 30px;
}

.breadcrumb-home a {
  display: inline-block;
  margin-left: 14%;
}

.breadcrumb-home a span {
  white-space: nowrap;
}

.breadcrumb-item {
  margin-left: 3%;
  line-height: 1;
}

.fa-angle-right {
  margin-left: 17%;
}

.fa-angle-right:before {
  color: #323940;
}



/*----------------------------------------------------

下層共通

-----------------------------------------------------*/

.sub_kaso_title01 {
  font-size: 2.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  color: #ffffff;
  background-color: #e84a4b;
  padding: 2% 5%;
  position: relative;
  text-align: left;
  margin: 0;
}

.sub_kaso_title01:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 3.5%;
  width: 4px;
  height: 50%;
  background-color: #ffffff;
}


/*----------------------------------------------------

  プライバシーポリシー

-----------------------------------------------------*/


.page-id-30 .entry-content {
    margin-top: 20%;
  }

.privacy-contents {
    margin: 5% auto 9%;
  }

.privacy_inner p {
  padding-left: 3%;
}

.privacy_inner dl {
    margin-top: 5%;
  }


.privacy-contents dl dt {
  border-bottom: 1px solid #e8e8e8;
  padding: 0 0 1.5% 3%;
  position: relative;
}

.privacy-contents dl dt:before {
  position: absolute;
  top: 37%;
  transform: translate(0, -50%);
  left: 0.5%;
  content: "";
  width: 4px;
  height: 75%;
  background-color: #e84a4b;
}

.privacy-contents dl dd {
  width: 96%;
  margin: 0 auto 4%;
  font-weight: 400;
}

.privacy-contents dl dd:last-child {
  margin-top: -3%;
}

.privacy-contents dl dd.dd1 {
  margin-bottom: 2%;
}


/*----------------------------------------------------

  サイトマップ

-----------------------------------------------------*/

.sitemap {
  margin: 6% auto 9%;
}

.sitemap_top {
  width: 81.5%;
  margin: 0 auto;
}

.sitemap_top a {
  width: calc(95% / 3);
  height: 17vw;
  margin-right: 2.5%;
  position: relative;
}

.sitemap_top a:last-of-type {
  margin-right: 0;
}

.sitemap_top a p {
  width: 100%;
  padding: 3% 0;
  margin: 0;
  position: absolute;
  bottom: 0;
  left: 0;
}

.sitemap_bottom ul {
  flex-wrap: wrap;
  margin-top: 5%;
  padding-left: 0;
}

.sitemap_bottom ul li {
  width: 48%;
  margin-right: 4%;
  border: 1px solid #e8e8e8;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.12);
  box-sizing: border-box;
  margin-bottom: 2%;
}

.sitemap_bottom ul li:nth-child(even) {
  margin-right: 0;
}

.sitemap_bottom ul li a {
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 4.5% 0 4.5% 8%;
  box-sizing: border-box;
  position: relative;
  line-height: 1;
}
.sitemap_bottom ul li a:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 3%;
  transform: translate(0, -50%);
  width: 4px;
  height: 50%;
  background-color: #e84a4b;
}

/*----------------------------------------------------

  お知らせ

-----------------------------------------------------*/

.information {
  margin: 6% auto 8%;
}

.information-inner {
  align-items: flex-start;
  justify-content: space-between;
}

#list {
  width: 70%;
}

#list h2.ft30 {
  color: #323940;
  padding: 0 0 3% 6%;
  position: relative;
  border-bottom: 1px solid #e6e6e6;
}

#list h2.ft30:before {
  content: "";
  width: 4px;
  height: 70%;
  background-color: #e84a4b;
  position: absolute;
  top: 34%;
  transform: translate(0, -50%);
  left: 3%;
}

#list h2.ft30 span {
  display: inline-block;
  margin-left: 3%;
}


.entry-card-content header .entry_inner {
  padding: 1.3% 0.5%;
  align-items: flex-start;
  justify-content: space-between;
  border-bottom: 1px dashed #e6e6e6;
}


.entry-card-content header h2 {
  margin: 0;
  line-height: 1;
}

.post-meta {
  line-height: 1;
  text-align: center;
  width: 10%;
  margin: 8px 0 0;
}

.post-meta span {
  display: block;
}

.post-meta .category {
  padding: 4% 1%;
  margin: 8% auto 0;
}

.post-meta .category a {
  color: #ffffff;
}

.info_article {
  width: 86%;
}

.info_article p {
  margin: 1% 0 0 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

#sidebar {
  width: 25%;
}

#categories-2 {
  margin-bottom: 16%;
}

.side_title {
  padding: 5.8% 0;
  position: relative;
}

.side_title:before,.side_title:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #ffffff;
  position: absolute;
  left: 0;
}

.side_title:before {
  top: 7%;
}

.side_title:after {
  bottom: 7%;
}


.side_title h3,.side_title p {
  margin: 0;
}

.side_ul {
  padding-left: 0;
}


.side_ul li.current a, .side_ul li a:hover {
  background: #e5e5e5;
}

.side_ul li a {
  display: inline-block;
  width: 100%;
  border-radius: 12px;
  box-sizing: border-box;
  padding: 3% 0 3% 8%;
  margin-bottom: 5%;
}

.side_ul li:last-child a {
  margin-bottom: 0;
}

#new_popular-2 {
  margin-bottom: 20%;
}
.new-entrys {
  padding-left: 0;
}

.new-entrys li {
  border-bottom: 1px dashed #e6e6e6;
  padding: 4% 5% 4% 10%;
  position: relative;
}

.new-entrys li:before {
  content: "";
  width: 4px;
  height: 69%;
  background-color: #e84a4b;
  position: absolute;
  top: 51%;
  transform: translate(0, -50%);
  left: 4.5%;
}

.sidebar_widget_title {
  display: none;
}

#side-archive .side_title {
  margin-bottom: 16%;
}

#archives-dropdown-2 {
  display: block;
  margin-top: 5%;
  border: solid 1px #e6e6e6;
  padding: 5% 3%;
  width: 95%;
  margin: 5% auto 0;
  box-sizing: border-box;
  border-radius: 10px;
}

.pagination {
    padding-left: 0;
    display: flex
;
    justify-content: center;
    margin-top: 4.5%;
}

.pagination li.first a,.pagination li.first span, .pagination li.last,.pagination li.last span, .pagination li.previous span, .pagination li.next span {
  display: none;
}

.pagination li.first a::before, .pagination li.last a::after, .pagination li.previous a::before, .pagination li.next a::after {
  display: inline-block;
  font-family: Fontawesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: translate(0, 0);
}

.pagination a, .pagination span {
  font-weight: 500;
  text-decoration: none;
  border: none;
  width: 38px;
  height: 38px;
  color: #333;
  display: block;
  line-height: 38px;
  margin-left: 9px;
  border: 1px solid #323940;
  text-align: center;
}

.pagination li.previous a,.pagination li.next a {
  border: none;
}

/* .pagination li.previous a::before {
  content: "\f104";
}

.pagination li.next a::after {
  content: "\f105";
} */

.pagination li.current span {
  background-color: #e84a4b;
  border: 1px solid #e84a4b;
  color: #ffffff;
  cursor: default;
  pointer-events: none;
}


.pagination li.previous a,.pagination li.next a {
  position: relative;
  display: inline-block;
  width: 12px;
  height: 38px;
}

.pagination li.next a::before,
.pagination li.next a::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  right: 0;
  width: 10px;
  height: 1px;
  border-radius: 9999px;
  background-color: #323940;
  transform-origin: calc(100% - 0.5px) 50%;
}

.pagination li.next a::before,.pagination li.previous a::before  {
  transform: rotate(60deg);
}

.pagination li.next a::after,.pagination li.previous a::after {
  transform: rotate(-60deg);
}

.pagination li.previous a::before,
.pagination li.previous a::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  left: 0;
  width: 10px;
  height: 1px;
  border-radius: 9999px;
  background-color: #323940;
  transform-origin: 0.5px 50%;
}


/*----------------------------------------------------

  お知らせ

-----------------------------------------------------*/

.single_page {
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 5.5%;
  margin-bottom: 8%;
}

.single_left {
  width: 70%;
}

.single_left .entry-title {
  padding: 3.8% 4.6%;
    margin: 0;
}

.single_page .post-meta .category {
  display: none;
}

.single_page .post-meta {
  line-height: 1;
  margin: 2% 0 0 0;
  display: block;
  width: 100%;
  text-align: right;
  padding-right: 2%;
  box-sizing: border-box;
}

.single_page .entry-content p {
  margin-top: 5%;
}

/************************************
** バイラルボタン
************************************/
.sns-group-viral ul.snsb{
  box-sizing: border-box;
}

.sns-group-viral ul.snsb li{
  box-sizing: border-box;
  width: 27%;
  margin-right: 1%;
}

.sns-group-viral ul.snsb li a {
  box-sizing: border-box;
  width: 100%;
  height: 38px;
  border-radius: 3px;
  margin-bottom: 5px;
  text-align: center;
  font-size: 16px;
}


.sns-group-viral ul.snsbs li a .social-count{
  font-size: 12px;
  bottom: 2px;
  font-weight: bold;
  background-color: transparent;
}

.sns-group-viral .social-icon:after{
  margin-left: 7px;
  position: relative;
  top: -2px;
  font-family: arial;
}

.sns-group-viral .fa-comment:after{
  top: 0;
}


.sns-group-viral .icon-twitter:after{
  content: 'Twitter';
}

.sns-group-viral .icon-facebook:after{
  content: 'Facebook';
}

.sns-group-viral .icon-googleplus:after{
  content: 'Google+';
}

.sns-group-viral .icon-hatena:after{
  content: 'Hatena';
}

.sns-group-viral .icon-pocket:after{
  content: 'Pocket';
}

.sns-group-viral .icon-line:after{
  content: 'Line';
}

.sns-group-viral .icon-evernote:after{
  content: 'Evernote';
}

.sns-group-viral .icon-feedly:after{
  content: 'Feedly';
}

.sns-group-viral .icon-push7:after{
  content: 'Push';
}

.sns-group-viral .fa-comment:after{
  content: 'Comment';
}

/************************************
** バイラルボタン（シェアバー）
************************************/
#sharebar .sns-group-viral ul.snsb li{
  width: 100%;
}

#sharebar .sns-group-viral ul.snsb li a{
  width: 80px;
}

#sharebar .sns-group-viral .social-icon:after{
  display: none;
}


/************************************
** SNSに関するスタイルシートの設定
************************************/

/************************************
** SNSシェアボタン
************************************/
#sns-group{
  clear: both;
}

ul.snsb{
  padding:10px 0;
  margin-bottom:0;
  font-family: sans-serif;
}

.snsb li {
  float: left;
  list-style-type: none;
  margin-right: 7px;
  margin-top: 2px;
  margin-bottom: 5px;
}

ul.snsbs li{
  margin-right:5px;
  margin-bottom:5px;
}

ul.snsbs li a{
  color:#fff;
  text-decoration:none;
  font-size:25px;
  background-color:#000;
  display:block;
  padding:7px 6px 3px 6px;
  border-radius:5px;
  width:25px;
  height:30px;
  position:relative;
  text-align: center;
}

ul.snsbs li a .social-count{
  font-size:10px;
  background-color:#555;
  width:auto;
  padding:1px 3px;
  border-radius:5px;
  position:absolute;
  display:inline-block;
  right:0;
  bottom:0;
  height:12px;
  line-height:12px;
  font-family: Arial;
}

ul.snsbs a.twitter-btn-icon-link{background-color:#55acee;}
ul.snsbs a.facebook-btn-icon-link{background-color:#3b5998;}
ul.snsbs a.google-plus-btn-icon-link{background-color:#dd4b39;}
ul.snsbs a.hatena-btn-icon-link{background-color:#3C7DD1;}
ul.snsbs a.pocket-btn-icon-link{background-color:#EE4257;}
ul.snsbs a.line-btn-icon-link{background-color:#00c300;}
ul.snsbs a.evernote-btn-icon-link{background-color:#51b125;}
ul.snsbs a.feedly-btn-icon-link{background-color:#87bd33;}
ul.snsbs a.push7-btn-icon-link{background-color:#eeac00;}
ul.snsbs a.comments-btn-icon-link{
  background-color:#555;
  padding-top: 4px;
  padding-bottom: 6px;
}


.snsbs li a:hover{
  opacity: 0.7;
}

.snsbs li img {
  border-radius:10px;
}
img.line-btn-img{
  height:62px;
}

img.line-btn-img-mini{
  display:none;
}

img.evernote-btn-img{
  min-height:62px;
}

img.evernote-btn-img-mini{
  display:none;
}

/************************************
** タイトル下SNSボタン
************************************/
#sns-group-top ul{
  padding:0;
  line-height:20px;
}

#sns-group-top ul li{
  margin-top: 2px;
  margin-bottom: 2px;
}

#sns-group-top .sns-share-msg{
  display:none;
}

#sns-group-top .twitter-btn{
  width:100px;
}

#sns-group-top .facebook-btn{
  width: 127px;
}

#sns-group-top .google-plus-btn{
  width: 65px;
  margin-top:-2px;
}

#sns-group-top .pocket-btn{
  width:90px;
}

#sns-group-top img.line-btn-img{
  display:none;
}

#sns-group-top img.line-btn-img-mini{
  display:block;
  height: 20px;
}

#sns-group-top .evernote-btn-img{
  display:none;
}

#sns-group-top .evernote-btn-img-mini{
  display:block;
}

#sns-group-top .evernote-btn-img-mini{
  height:20px;
  width:auto;
}

.social-icon {
  line-height: 1.5;
}

/************************************
** SNSページフォロー
************************************/
.sns-follow-msg{
  margin: 8px 0 0 0;
  font-size:medium;
}

.sns-share-msg {
  display: none;
}

#header .sns-follow-msg{
  display:none;
}

ul.snsp{
  list-style:none;
  padding-left:0;
  margin:10px 0 15px;
}

ul.snsp li{
  display:inline;
  margin-right:5px;
}

ul.snsp li a{
  font-size:19px;
  line-height:170%;
  text-decoration:none;
}

/*ul.snsp li.push7-page a span {
  font-size: 26px;
  background-color: transparent;
  width: 30px;
  height: 30px;
  background-color: #666;
  padding: 2px 2px 3px;
  color: #fff;
  position: relative;
  top: -4px;
}

ul.snsp li.push7-page a{
  text-align: center;
  border-radius: 4px;
  display: inline-block;
  position: relative;
}*/

/*Facebookコメント欄が表示されない不具合修正*/
.fb-like iframe {
    max-width: none;
}

/*アイコフォントの大きさ*/
ul.snsp li {
  display: inline-block;
  margin-right: 5px;
}

ul.snsp li a {
  text-decoration: none;
}

ul.snsp li a span {
  display: block;
  font-size: 33px;
  width: 33px;
  height: 33px;
  overflow: hidden;
  border-radius: 4px;
  background-color: #666;
  color: #fff;
}

/*feedly、LINEアイコンは自作なので少し大きかったので調整*/
ul.snsp li a span.icon-feedly-square,
ul.snsp li a span.icon-line-square,
ul.snsp li a span.icon-push7-square,
ul.snsp li a span.icon-hatebu-square{
  font-size:34px;
  position: relative;
}

#sns-group ul.snsp li a:hover{
  color: #fff;
}

ul.snsp li.twitter-page a span:hover{
  background-color:#55acee;
}

ul.snsp li.facebook-page a span:hover{
  background-color:#3b5998;
}

ul.snsp li.google-plus-page a span:hover{
  background-color:#dd4b39;
}

ul.snsp li.instagram-page a span:hover{
  background-color:#3f729b;
}

ul.snsp li.hatebu-page a span:hover{
  background-color:#008fde;
}

ul.snsp li.pinterest-page a span:hover{
  background-color:#cc2127;
}

ul.snsp li.youtube-page a span:hover{
  background-color:#e52d27;
}

ul.snsp li.flickr-page a span:hover{
  background-color:#1d1d1b;
}

ul.snsp li.github-page a span:hover{
  background-color:#24292e;
}

ul.snsp li.feedly-page a span:hover{
  background-color:#87bd33;
}

ul.snsp li.push7-page a span:hover{
  background-color: #eeac00;
}

ul.snsp li.line-page a span:hover{
  background-color:#00c300;
}

ul.snsp li.rss-page a span:hover{
  background-color:#fe9900;
}


ul.snsp li.feedly-page a img{
  margin-bottom:-3px;
  width:32.5px;
  height:32.5px;
  border-radius:7px;
  border-width:0px;
}

#sns-group {
  width: 90%;
  margin:  0 auto;
}

.navigation {
  clear: both;
  margin-top: 10%;
  border-top: 3px solid #e84a4b;
}

.fa-arrow-left:before,.fa-arrow-right:before {
  content: "\f060";
  color: #dddddd;
}

.prev,.single_page .next {
  border-bottom: 1px solid #e8e8e8;
  padding: 1% 0;
  line-height: 2;
}

.prev {
  padding-left: 3.5%;
}

.fa.pull-left {
  margin-right: 3%;
}

.single_page .next {
  display: block;
  width: 100%;
  text-align: right;
  padding-right: 8%;
  box-sizing: border-box;
  position: relative;
}

.single_page .next .fa.pull-left {
  position: absolute;
  right: 3%;
  margin-right: 0;
}

/*----------------------------------------------------

耐震・防振・防音対策

-----------------------------------------------------*/

.page-id-1513 #the-content {
  width: 100%;
}
.sulator_lead {
  margin-bottom: 9%;
}


.sulator_inner {
  justify-content: space-between;
}

.sulator_lead_left {
  width: 43%;
  margin-left: 5%;
}

.sulator_lead_right {
  width: 43.4%;
  height: 26.5vw;
  position: relative;
  background-image: url(../../../images/piano_sulator01.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.sulator_lead_right img {
  position: absolute;
  bottom: -22%;
  left: -12%;
  width: 14vw;
}

.piano_sulator {
  margin-top: 6%;
}

.sulator_box .sulator_inner {
  width: 90%;
  margin: 0 auto;
  justify-content: space-around;
  align-items: flex-start;
  padding: 4% 0 6.5%;
}



.sulator_left {
  width: 40%;
  position: relative;
}

.sulator_left p {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  bottom: -15%;
  width: 100%;
}

.piano_sulator .sulator_left {
  background-image: url(../../../images/piacatch.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 27.5vw;
}

.new_stop .sulator_left {
  background-image: url(../../../images/super_safety.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 27.5vw;
}

.new_stop_02 .sulator_left {
  background-image: url(../../../images/piano_stop.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 27.5vw;
}

.sulator_right {
  width: 50%;
}

.sulator_right h3 {
  border-bottom: 1px dashed #d1d1d1;
  padding-bottom: 2%;
  position: relative;
  padding-left: 4%;
  text-align: left;
  margin-top: 0;
}

.sulator_right h3:before {
  content: "";
  position: absolute;
  top: 39%;
  left: 1%;
  width: 4px;
  height: 70%;
  transform: translate(0, -50%);
  background-color: #e84a4b;
}

.sulator_right ul li {
  position: relative;
  padding-left: 23px;
  display: flex;
  align-items: flex-start;
}

.sulator_right ul li:before {
  content: "";
  position: absolute;
  top: 10px;
  /* transform: translate(0, -50%); */
  left: 0;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background-color: #e84a4b;
}

.sulator_btn {
  width: 80%;
  margin: 6% auto 0;
  box-sizing: border-box;
  border-radius: 26px;
  position: relative;
}

.sulator_btn a {
  padding: 3.2% 8%;
  box-sizing: border-box;
  width: 100%;
  justify-content: space-between;
}

.sulator_btn a .fa-external-link {
  margin-left: 5%;
  margin-top: 1.7%;
}

/*----------------------------------------------------

会社案内

-----------------------------------------------------*/

.about {
  margin-top: 4%;
  margin-bottom: 6.5%;
}

.company {
  margin-bottom: 7%;
}

.company_inner table {
  width: 100%;
  margin-top: 4%;
  border-collapse: collapse;
}

.company_inner table tbody tr {
  text-align: left;
  border-bottom: 0.5px solid #dddddd;
}

.company_inner table tbody tr:first-child {
  border-top: 0.5px solid #dddddd;
}

.company_inner table tbody td.fb {
  width: 20%;
  vertical-align: top;
  position: relative;
  padding: 3.25% 0 3.25% 2%;
}

.company_inner table tbody tr td.fb:before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0,-50%);
  right: 0;
  width: 0.5px;
  height: 43%;
  background-color: #dddddd;
}

.company_inner table tbody tr:nth-child(6) td,.company_inner table tbody tr:nth-child(8) td {
  line-height: 200%;
}


.company_inner table tbody tr:nth-child(6) td.fb:before,.company_inner table tbody tr:nth-child(8) td.fb:before {
  height: 80%;
}

.company_inner table tbody tr td {
  width: 75%;
  padding: 3.25% 0 3.25% 4.5%;
  box-sizing: border-box;
  line-height: 1;
}

/* .company_inner table tbody tr td a {
  display: inline-block;
  width: 100%;
  height: 100%;
} */

.company_inner table tbody td span {
  display: block;
  margin-top: 2%;
}

.access p {
  margin: 3% 6%;
}

.fa-map-marker-alt {
  font-size: 29px;
  margin-right: 0.5%;
}

iframe {
  width: 100%;
}

/*----------------------------------------------------

よくある質問

-----------------------------------------------------*/

.page-id-1547 #breadcrumb {
  padding: 2% 0 3.5% 2%;
}

.faq01 {
  margin-bottom: 8%;
}

.faq02 {
  margin-bottom: 12%;
}

.accordion {
  position: relative;
}

.accordion_title.first {
  border-top: 0.5px solid #dddddd;
  margin-top: 3.5%;
}

.accordion_title,.accordion_content p {
  display: flex;
  align-items: center;
}

.accordion_title {
  cursor: pointer;
  position: relative;
  border-bottom: 0.5px solid #dddddd;
  line-height: 1;
  margin: 0;
  padding: 1% 2%;
  color: #323940;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}

.accordion_title:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  width: 32px;
  height: 32px;
  margin: auto;
  border-radius: 50%;
  background-color: #ff9999;
}

.accordion_title:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 31px;
  width: 0;
  height: 0;
  margin: auto;
  border-top: 6px solid #ffffff;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-bottom: 0 solid transparent;
  transform: translateY(1px);
  box-sizing: border-box;
}

.accordion_title.open::after {
  top: -2%;
  border-top: none;
  border-bottom: 6px solid #ffffff;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
}

.accordion_title span {
  margin-top: -5px;
  margin-right: 1.2%;
  line-height: 1;
  font-size: 6rem;
}

.accordion_content {
  display: none;
  border-bottom: 0.5px solid #dddddd;
}

.accordion_content p {
  margin: 0;
  background-color: #fce6e6;
  padding: 1.9% 3%;
  box-sizing: border-box;
  line-height: 200%;
  display: flex;
  justify-content: space-between;
}

.accordion_content p span:first-child {
  font-size: 4.9rem;
  display: inline-block;
  width: 66px;
  height: 66px;
  background-color: #fff;
  border-radius: 50%;
  text-align: center;
  line-height: 55px;
  margin-right: 1.5%;
  padding-left: 4px;
  box-sizing: border-box;
}

.accordion_content p span:nth-child(2) {
  width: 90%;
}

/*----------------------------------------------------

中古ピアノ買い取り

-----------------------------------------------------*/

.main_lead {
  justify-content: space-between;
  margin-top: 5%;
  margin-bottom: 6%;
}

.used_piano_left {
  width: 47%;
  padding-left: 5%;
}

.used_piano_left h3 {
  text-align: left;
}

.main_piano_right {
  width: 43.4%;
  height: 31.55vw;
}

.used_piano_right {
  background-image: url(../../../images/old_piano.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.campaign h2 {
  background-color: #f8f8f8;
  padding: 3.1% 0;
  margin: 0;
}

.campaign dl {
  width: 80%;
  margin: 4% auto;
}

.campaign dl dt {
  display: flex;
  align-items: center;
}

.campaign dl dt span.campaign_info_title,.campaign dl dd {
  display: inline-block;
  width: 90%;
}

.campaign dl dt span.ft36 {
  font-size: 3.6rem;
  display: inline-block;
  margin-right: 30px;
  width: 83px;
  height: 83px;
  line-height: 75px;
  padding-left: 6px;
  box-sizing: border-box;
  border-radius: 50%;
  background-color: rgba(249, 235, 212, 0.39);
}

.campaign dl dd {
  padding-left: 75px;
  margin-bottom: 5%;
}

.campaign dl dd:last-child {
  margin-bottom: 3%;
}


.used_piano_bottom {
  width: 84.85%;
  margin: 0 auto 9%;
  position: relative;
  box-shadow: 0 0 7px rgba(0, 0, 0, 0.08);
  padding: 3% 0 3.9%;
}
.used_piano_bottom h3 {
  margin: 0;
}

.used_piano_bottom:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: -121%;
  justify-content: center;
  left: 50%;
  margin: 0 auto;
  transform: translate(-50%, -0);
  width: 0;
  height: 0;
  margin: auto;
  border-top: 50px solid #e84a4b;
  border-right: 60px solid transparent;
  border-left: 60px solid transparent;
  border-bottom: 0 solid transparent;
  box-sizing: border-box;
}


/*----------------------------------------------------

ピアノクリーニング

-----------------------------------------------------*/

.cleaning_lead {
  justify-content: space-between;
}

.cleaning_lead_left {
  width: 45%;
  padding-left: 5%;
}

.cleaning_lead_left h3 {
  text-align: left;
}

.cleaning_lead_right {
  background-image: url(../../../images/cleaning_lead.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.piano_damage {
  background-color: #f8f8f8;
  padding: 2.5% 0 2%;
}

.piano_damage h2 {
  border-top: 2px solid #e84a4b;
  border-bottom: 2px solid #e84a4b;
  margin: 0 0 2.2% 0;
  padding: 2.25% 0;
}

.damage_box {
  align-items: flex-start;
  margin-top: 3.8%;
}

.damage_item {
  width: calc(89.5% / 4);
  margin-right: 3.5%;
}

.damage_item_last {
  margin-right: 0;
}

.damege_image {
  height: 12.7vw;
}

.damege_image01 {
  background-image: url(../../../images/damage01.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.damege_image02 {
  background-image: url(../../../images/damage02.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.damege_image03 {
  background-image: url(../../../images/damage03.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.damege_image04 {
  background-image: url(../../../images/damage04.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}


.cleaning_about {
 margin: 4% 0 6%;
}

.cleaning_about p {
  margin-top: 2.5%;
  margin-bottom: 4%;
}

.before_after {
  justify-content: space-between;
  width: 65%;
  margin: 0 auto;
}

.before, .after {
  width: 44.7%;
  height: 27.2vw;
}

.before {
  background-image: url(../../../images/cleaning_before.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}

.after {
  background-image: url(../../../images/cleaning_after.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.before:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0%;
  justify-content: center;
  left: 109%;
  margin: 0 auto;
  width: 0;
  height: 0;
  margin: auto;
  border-top: 43px solid transparent;
  border-bottom: 43px solid transparent;
  border-left: 32px solid #e84a4b;
  box-sizing: border-box;
}

.cleaning_flow p {
  margin: 2% auto;
}

.flow_item {
  box-shadow: 0 0 7px rgba(0, 0, 0, 0.08);
  position: relative;
  width: 85%;
  margin: 0 auto;
  padding: 3%;
}

.flow_arrow {
  position: relative;
  display: flex;
  justify-content: center;
  margin: 3% auto;
}

.flow_arrow span {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 32px 43px 0 43px;
    border-color: #e84a4b transparent transparent transparent;
}

/* .cleaning_flow_item:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: -167%;
  justify-content: center;
  left: 50%;
  margin: 0 auto;
  transform: translate(-50%, -0);
  width: 0;
  height: 0;
  margin: auto;
  border-top: 31px solid #e84a4b;
  border-right: 41px solid transparent;
  border-left: 41px solid transparent;
  border-bottom: 0 solid transparent;
  box-sizing: border-box;
} */

.cleaning_flow_last {
  margin-bottom: 6.5%;
}

.cleaning_flow_last:after {
  display: none;
}


.flow_item h3,.cleaning_flow_item p {
  margin: 0;
  padding-left: 1.8%;
}

.flow_item h3 {
  border-bottom: 0.5px solid #dddddd;
  line-height: 1;
  padding-bottom: 1.5%;
  text-align: left;
  margin-bottom: 2%;
}

.flow_item h3 span {
  margin-left: 2%;
}

.piano_tuning {
  margin-top: 5.5%;
}

.piano_tuning_inner {
  justify-content: space-between;
  margin-top: 4%;
  margin-bottom: 7.7%;
}


.piano_tuning_left {
  width: 43.5%;
  height: 31.6vw;
  background-image: url(../../../images/tuning.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.piano_tuning_right {
  width: 42.8%;
  padding-right: 5%;
}


/*----------------------------------------------------

ピアノ運送サービス

-----------------------------------------------------*/

.transportation_lead {
  justify-content: space-between;
}

.transportation_lead_left {
  width: 44%;
  padding-left: 5%;
}

.transportation_lead_right {
  background-image: url(../../../images/piano_transportation01.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.transportaion_example {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 54.5%, rgba(255, 255, 255, 0.6) 63%, rgba(255, 255, 255, 0.6) 100%), url(../../../images/piano_transportation_02.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  height: 35vw;
  margin-top: 5%;
}

.transportation_example_inner {
  position: absolute;
  top: 0;
  right: 2%;
  width: 40%;
}


.transportation_example_inner ul li span {
  width: 36px;
  height: 36px;
  margin-right: 2%;
}

.transportation_example_inner p.ft16 {
  margin-right: 18%;
}

.transportation_info_inner {
  justify-content: space-between;
  padding: 3% 0 6.5%;
}

.transportation_info {
  margin-top: 3.5%;
}

.transportation_info h2 {
  padding: 2.2% 0;
  margin: 0;
}

.transportation_right {
  background-image: url(../../../images/piano_transportation03.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  width: 39.2%;
  height: 24.5vw;
}

.transportation_left {
  width: 56%;
}

.transportation_info_item {
  margin-bottom: 4%;
}

.transportation_info_item dt {
  width: 30%;
  padding: 2.8% 3%;
  box-sizing: border-box;
}

.transportation_info_item dd {
  width: 70%;
}

.taishin {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 54.5%, rgba(255, 255, 255, 0.8) 63%, rgba(255, 255, 255, 0) 100%), url(../../../images/piano_transportation04.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 23vw;
  border-top: 2px solid #e84a4b;
  border-bottom: 2px solid #e84a4b;
  margin-bottom: 4.5%;
}

.taishin  {
  position: relative;
  height: 30vw;
}

.taishin a {
  display: inline-block;
  width: 100%;
  height: 100%;
}

.transportation_taishin_inner {
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 7%;
}

.transportation_taishin_inner h3 {
  margin: 0 auto 5%;
}

.transportation_taishin_inner .btn {
  width: 39.4%;
  padding: 2% 3.5% 2% 4%;
}

.transportation_taishin_inner  .arrow01 {
  margin-left: 30%;
}

.page-id-1595 .flow_box {
  padding: 3% 0;
}

.page-id-1595 .flow_item {
  box-shadow: 0 0 7px rgba(0, 0, 0, 0.08);
  position: relative;
  width: 79.3%;
  margin: 0 auto;
  padding: 2.05% 2.8%;
  justify-content: space-between;
}

.page-id-1595  .flow_last {
  margin-bottom: 0;
}

.page-id-1595 .flow_left {
  width: 16.8vw;
  height: 10.1vw;
  max-width: 300px;
  max-height: 177px;
}

.page-id-1595 .flow_right {
  width: 60vw;
}

.flow_left01 {
  background-image: url(../../../images/transportation_flow01.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.flow_left02 {
  background-image: url(../../../images/transportation_flow02.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.flow_left03 {
  background-image: url(../../../images/transportation_flow03.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.flow_left04 {
  background-image: url(../../../images/transportation_flow04.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.flow_left05 {
  background-image: url(../../../images/transportation_flow05.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.flow_left06 {
  background-image: url(../../../images/transportation_flow06.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/*----------------------------------------------------

無料見積り・お問合せ

-----------------------------------------------------*/



.contact_page p.ft16:first-child {
  padding: 3% 0;
}

.contact_page .contact {
  background: none;
  padding: 0;
  height: auto;
  margin-bottom: 6.5%;
}

.page-id-1607 .contact_page .contact_left a {
  position: relative;
}

.page-id-1607 .contact_page .contact_left a .arrow {
  position: absolute;
  bottom: -40%;
  left: 50%;
  transform: translate(-50%, 0);
  width: 0;
  height: 0;
  border-left: 0.8rem solid transparent;
  border-right: 0.8rem solid transparent;
  border-top: 0.9rem solid #e84a4b;
}

.contact_page .contact_left,.contact_page .contact_right {
  background-color: #ffffff;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.08);
}

.contact_page .contact_left h3,.contact_page .contact_right h3 {
  background-color: #e84a4b;
  color: #ffffff;
}

.contact_page .contact h2,.contact_page .contact p.ft22 {
  display: none;
}

.contact_form h2.ft30 {
  padding: 3% 0 3% 6%;
  position: relative;
  text-align: left;
  margin-bottom: 0;
}

.contact_form h2.ft30:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 3.5%;
  transform: translate(0, -50%);
  width: 4px;
  height: 48%;
  background-color: #e84a4b;
}

.contact_form_inner {
  margin: 2.5% auto 6%;
  padding: 0 3.5%;
  box-sizing: border-box;
}

.contact_form_inner p.ft18 {
  width: fit-content;
  border-radius: 26px;
  margin: 0;
  padding: 1.16% 4.2%;
}

.contact_form_inner ul {
  padding-left: 0;
}

.contact_form_inner ul li {
  list-style: disc;
}

form h3 {
  padding: 1.7% 2%;
  margin: 0;
}

.medium_border .df,.long_border .df {
  justify-content: space-between;
  align-items: flex-start;
  padding: 3.5% 3%;
  position: relative;
}

.long_border .df:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 21.5%;
  width: 0.5px;
  height: 84%;
  background-color: rgba(175, 161, 158, 0.6);
}

.medium_border .df:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  left: 21.5%;
  width: 0.5px;
  height: 64%;
  background-color: rgba(175, 161, 158, 0.6);
}

.contact_form_item .df dt {
  width: 25%;
}

.contact_form_item .df dd {
  width: 75%;
  margin-left: 0;
}

.contact_address .df dd input,.contact_address .df dd select {
  margin-bottom: 24px;
}

#city {
  width: 72%;
}

.contact_form_item .df dd p {
  margin-bottom: 3px;
}

.contact_form_item .df dd p.ft12 {
  color: #827f7f;
}

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

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

.radio01,.radio02 {
  padding-left: 2%;
}

.radio01 {
  border-bottom: 0.5px solid #afa19e;
  padding-bottom: 3.5%;
  margin-bottom: 3%;
  box-sizing: border-box;
}

.radio02 span.mwform-checkbox-field {
  display: block;
}

input[type="radio"] {
  border: 0.8px solid #dddddd;
}

input[type="radio"]:checked {
  accent-color: #e84a4b;
}


#contact_select03 {
  padding: 1%;
  border: 1px solid #dddddd;
  display: block;
  margin-top: 1.5%;
  margin-left: 50px;
}

span.grand_piano {
  display: none;
}

select[name="contact_select03" value="グランドピアノ"]:checked + span.grand_piano {
  display: block;
}

span.piano_type {
  display: none;
}

select[name="contact_select03" value="アップライトピアノ","エレクトーン","グラビノーバ"]:checked + span.piano_type {
  display: block;
}


span.about_size {
  display: none;
}

select[name="contact_select03" value="大型家具","コピー機","金庫","その他"]:checked + span.about_size {
  display: block;
}

span.about_size input {
  width: 15%;
  margin-top: 1.5%;
}

span.elevator,
span.elevator_v2 {
  display: none;
}

input[type="radio" children="エレベーター"]:checked + span.elevator{
  display:block;
}

span.other {
  display: none;
}

input[type="radio" children="その他"]:checked + span.other{
  display:block;
}


input, select,textarea {
  padding: 10px 20px;
  border: 1px solid #dddddd;
  margin-left: 6px;
}

textarea {
  width: 74.7%;
  height: 8vw;
}
#zip,#zip1,#zip2,#zip3,#zip4,#zip5 {
  width: 10%;
}

.border_bottom {
  border-bottom: 0.5px solid rgba(175, 161, 158, 0.6);
}

label {
  width: 50%;
}
 
 /* label input[type="radio"] {
  opacity:0;
  appearance: none;
  position: absolute;
}
  */
label .text {
  display: inline-block;
  position: relative;
  padding-left: 26px;
  line-height: 2.2;
}
 
 label .text::before {
  position: absolute;
  top: 8px;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #eee;
  background: #fff;
  content: "";
  border-radius: 50%;
}
 
 label.text::after {
  position: absolute;
  top: 11px;
  left: 3px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #ca353b;
  content: "";
  opacity: 0;
  transition: all 0.3s;
}
 
 label input:focus + span::before {
  box-shadow: 0 0 4px #ca353b;
}
 
 label input:checked + span::after {
  opacity: 1;
}

.radio01 span.mwform-radio-field  {
  display: block;
}

.mwform-radio-field {
  margin-right: 2%;
}

.formbottom-text p {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}

.formbottom-text input.check {
  position: absolute;
  left: -38px;
  /* top: 35px; */
  bottom: 2.7vw;
  width: 25px;
  height: 25px;
}

.contact_form_inner ul li a,.formbottom-text p a {
  border-bottom: 1px solid #e84a4b;
}

input[type="submit"] {
  width: 450px;
  height: 0;
  background: url(../../../images/submit_btn.jpg) no-repeat center;
  background-size: 100%;
  padding-top: 165px;
  border: none;
  overflow: hidden;
  line-height: 80px;
  margin-top: -4%;
  cursor: pointer;
}


.page-id-1619 .contact_page .contact_right a {
  position: relative;
}

.page-id-1619 .contact_page .contact_right a .arrow {
  position: absolute;
  bottom: -40%;
  left: 50%;
  transform: translate(-50%, 0);
  width: 0;
  height: 0;
  border-left: 0.8rem solid transparent;
  border-right: 0.8rem solid transparent;
  border-top: 0.9rem solid #e84a4b;
}

.page-id-1619 .medium_border .df,.page-id-1619 .long_border .df {
  justify-content: space-between;
  align-items: flex-start;
  padding: 3.5% 3%;
  position: relative;
  border-bottom: 0.5px solid rgba(175, 161, 158, 0.6);
}

.piano_situation span.mwform-checkbox-field {
  display: inline-block;
  margin-right: 3%;
  margin-bottom: 3%;
}

.piano_situation span.mwform-checkbox-field:nth-of-type(4) {
  display: inline-block;
  margin-left: 0%;
  margin-right: 3%;
  margin-bottom: 3%;
}

#piano_other {
  width: 30%;
}
.mwform-radio-field label,
.mwform-checkbox-field label{
  font-size: 16px;
}
#granp_size{
  max-width: 100px;
}
@media screen and (max-width: 680px) {

  br.sp {
    display: block;
  }
  .ft16 {
    font-size: 1.4rem;
  }
  .ft18 {
    font-size: 1.6rem;
  }
  .ft22 {
    font-size: 1.8rem;
  }

  .ft26,.ft28 {
    font-size: 2rem;
  }

  .ft36 {
    font-size: 2.8rem;
  }

  .btn {
    width: 82%;
  }

  .df {
    display: block;
  }


  /*--------------------------------------------

  下層ヘッダー、下層共通

  --------------------------------------------*/

  #breadcrumb,.breadcrumb-home {
    display: flex;
  }

  .breadcrumb-home span {
    display: flex;
    align-items: center;
  }

  .breadcrumb-home span img {
    width: 20px;
}

  #breadcrumb {
    padding: 2.5% 0 0 3%;
}

  .breadcrumb-home a {
    display: inline-block;
    margin-left: 6%;
  }

  .fa-angle-right {
      margin-left: 2%;
  }

  .kaso_piano_header01,.kaso_piano_header02 {
    height: 50vw;
  }

  .kaso_piano_header01 .kaso_title p.ft42 {
    font-size: 2.8rem;
  }

  .kaso_piano_header03,.kaso_piano_header03_02 {
    height: 50vw;
}

.kaso_piano_header03 {
  background-position: 96%;
}

.kaso_piano_header03_02 {
  background-position: 74%;
}

.kaso_main {
    height: 62vw;
}

.kaso_piano_header06 {
  background-size: cover;
  background-position: 34%;
  background-repeat: no-repeat;
}

.kaso_title, .kaso_title_left h1, .kaso_title_left p {
    width: fit-content;
    white-space: nowrap;
    margin: 0 auto;
}

  .kaso_title p {
    font-size: 1.8rem;
  }

  .kaso_title h1 {
    margin-top: 1.5%;
    margin-bottom: 0;
  }

  .sub_kaso_title01 {
    font-size: 2.2rem;
    padding: 5% 8%;
}

.kaso_title_right,.kaso_title_left {
    left: 50%;
    transform: translate(-50%, -50%);
}

  /*--------------------------------------------

  トップページ

  --------------------------------------------*/

#h-top {
  padding: 3% 0;
  height: auto;
}

.header_left {
    width: 60%;
    margin: 0 auto;
}

.header_left h1 {
        position: relative;
        margin: 0 auto;
        height: 49.8px;
    }

.header_left h1 a {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.header_right {
  display: none;
}

.hero_area {
  height: 150vw;
}

.hero_text p {
  white-space: nowrap;
}

.top_about {
    padding: 5% 2%;
}

.top_about_inner {
justify-content: space-between;
flex-direction: column-reverse;
display: flex;
}
.top_about_left,.top_about_right {
  width: 100%;
}

.top_about_right {
    height: 95.5vw;
    margin-top: 5%;
}

.top_about_left {
    margin-top: 13%;
    width: 95%;
    margin: 13% auto 0;
    padding-left: 0;
}

.service_title {
    background-color: #f8f8f8;
    padding: 6% 0;
}


.top_service, .top_cleaning, .top_buying {
    width: 100%;
    height: 85vw;
    position: relative;
}

.top_service br, .top_cleaning br, .top_buying br {
  display: none;
}

.top_service {
    background: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.5) 100%), url(../../../images/top_service.jpg);
    background-position: 40%;
}

.top_service_text {
    width: 88%;
    position: absolute;
    margin: 0 auto;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    height: auto;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 6% 3%;
  }

.top_service_text h2 {
    margin: 0;
    font-size: 2.8rem;
    line-height: 1;
}

.top_service_text p {
    margin: 2.5% auto 1.5%;
}

.sub_information {
    margin-top: 5%;
    align-items: start;
    width: 97%;
    margin: 6.5% auto 0;
}

.sub_info_box {
    width: 100%;
    height: auto;
    padding-bottom: 12%;
    margin-right: 0;
}

.sub_info_img {
    width: 100%;
    height: 56vw;
}

.recruit {
    height: 27vw;
}

.recruit_image {
  height: 26.5vw;
}

.recruit_image a.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    background-color: #ffffff;
    width: fit-content;
    padding: 8.5px 4% 8.5px 4%;
    border-radius: 56px;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 8%;
    transition: color .25s ease;
    cursor: pointer;
    /* margin: 0 auto; */
}

.top_news {
    padding: 6% 0;
}

.top_news_left {
    width: 100%;
    border-right: none;
    box-sizing: border-box;
    padding: 0 2% 0;
}

.top_news_left h3,.top_news_left a {
  display: inline-block;
  width: 100%;
  text-align: center;
}

.top_news_left h3 {
  font-size: 2.8rem;
}

.w_small_arrow {
  margin-left: -1%;
}

.top_news_right dl dd p.day {
  display: flex;
}

.top_news_right {
  width: 100%;
  padding-left: 0;
}

.contact {
  padding: 8% 0;
  height: 200vw;
}

.contact a.btn {
    width: 90.5%;
}

.contact a.btn span.df {
  display: flex;
}

.contact_left {
  margin-right: 0;
  margin-bottom: 10%;
}

.contact_left, .contact_right {
    width: 100%;
    height: auto;
    padding-bottom: 8.5%;
    background-color: rgba(255, 255, 255, 0.64);
}

.contact_left h3, .contact_right h3 {
    background-color: #ffffff;
    margin: 2.5% 0 2%;
    padding: 5.5% 0;
}

.contact_left p, .contact_right p {
      width: 91%;
      margin: 5% auto 0;
      text-align: left;
}
.contact_left a span.db {
    margin-bottom: -5%;
}

footer {
  margin-top: 0;
}

.footer_information,.footer_right {
  display: none;
}

.footer_left {
      width: 100%;
      padding: 3% 0;
  }

  .footer_logo {
      width: 60%;
  }

  .credit p {
    font-size: 0.7rem;
}

div#footer-in  {
    justify-content: space-between;
    margin-bottom: 14.5%;
}


#footer-mobile-buttons {
    top: auto;
    bottom: 0;
    background-color: #e84a4b;
    z-index: 100000000000000000000000000000000000;
}

#footer-mobile-buttons a {
  color: #ffffff;
}

/*--------------------------------------------

プライバシーポリシー

--------------------------------------------*/

#breadcrumb a.ft14 {
  font-size: 0.8rem;
}

.breadcrumb-item {
  margin-top: -5px;
}

.privacy_inner p {
    padding-left: 0;
}

.privacy-contents dl dt {
    border-bottom: 1px solid #e8e8e8;
    padding: 0 0 3.5% 8%;
    position: relative;
}


.privacy-contents dl dt:nth-of-type(3):before {
    top: 43%;
    height: 80%;
}

/*--------------------------------------------

サイトマップ

--------------------------------------------*/

.sitemap_top {
    width: 100%;
}

.sitemap_top a {
    display: block;
    width: 100%;
    height: 45vw;
    margin-right: 0;
    position: relative;
    margin-bottom: 6%;
    }

.sitemap_top p,.sitemap_top p a {
  display: none;
}

.sitemap_top p.ft18 {
  display: block;
}

.sitemap_bottom ul li {
  width: 100%;
}

.sitemap_bottom ul li a {
  padding: 5% 0 5% 8%;
}

.accordion_title {
    padding: 4% 11% 4% 0;
    line-height: 1.5;
    text-align: left;
}
.accordion_title:before {
    right: 3px;
}

.accordion_title:after {
    right: 14px;
}

.accordion_title span {
    margin-top: -8px;
    margin-right: 1.2%;
    line-height: 1;
    font-size: 4rem;
}

.accordion_content p span:first-child {
    font-size: 3.5rem;
    width: 51px;
    height: 48px;
    line-height: 39px;
    box-sizing: border-box;
}

.faq01 {
    margin-bottom: 15%;
}

.faq02 {
    margin-bottom: 20%;
}

.accordion_content p {
    display: flex;
    align-items: flex-start;
}

/*--------------------------------------------

会社案内

--------------------------------------------*/

.company_inner table tbody td.fb {
    padding: 4.25% 0 4.25% 2%;
    text-align: left;
    line-height: 1.5;
}

.company_inner table tbody tr td {
    padding: 4.25% 0 4.25% 4.5%;
    line-height: 1.2;
}

.company_inner table tbody tr td.fb:before {
    height: 50%;
}

.company_inner table tbody tr:nth-child(7) td.fb:before {
    height: 71%;
}

.company_inner table tbody tr:nth-child(8) td.fb:before {
    height: 88%;
}

.access p {
    margin: 7% 6%;
}

.fa-map-marker-alt {
    font-size: 22px;
    margin-right: 0.5%;
}

/*--------------------------------------------

ピアノ運送サービス

--------------------------------------------*/

.transportation_lead {
  width: 90%;
  margin: 0 auto;
}

.transportation_lead_left h3 {
  font-size: 1.9rem;
}

.transportation_lead_left p br {
  display: none;
}

.transportation_lead_right {
  height: 66vw;
}

.transportation_lead_left,.transportation_lead_right {
  width: 100%;
  padding-left: 0;
}


.transportaion_example {
  background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0.6) 63%, rgba(255, 255, 255, 0.6) 100%), url(../../../images/piano_transportation_02.png);
  background-size: cover;
  background-position: -8%;
  background-repeat: no-repeat;
  position: relative;
  height: 130vw;
  margin-top: 5%;
}

.transportation_example_inner {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: -8%;
    width: 96%;
}

.transportation_example_inner ul li span {
  display: inline-block;
  width: 20px;
  height: 20px;
}

.transportation_info h2 {
  padding: 6.2% 0;
  margin: 0;
  font-size: 1.8rem;
}

.transportation_info_inner {
  display: flex;
  flex-direction: column-reverse;
}

/* .transportation_info_item {
  display: flex;
} */

.transportation_info_item dt,.transportation_info_item dd {
  width: 100%;
}

.transportation_info_item dd {
  margin-left: 0;
  font-size: 1.4rem;
  padding: 2% 1.5%;
}


.transportation_left,.transportation_right {
  width: 100%;
}

.transportation_right {
  height: 62.5vw;
}

.transportation_taishin_inner .btn {
  width: 78%;
  padding: 4% 3.5% 4% 5%;
  margin: 0 auto;
  display: block;
}

.taishin {
  position: relative;
  background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 22.5%, rgba(255, 255, 255, 0.6) 63%, rgba(255, 255, 255, 0) 100%), url(../../../images/piano_transportation04.png);
  background-position: 78%;
  height: 68vw;
  }

.transportation_taishin_inner {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  left: 50%;
  width: 100%;
}

.transportation_taishin_inner p {
  margin-bottom: 0;
}

.page-id-1595 .flow_box {
  padding: 8% 0 16%;
}

.page-id-1595 .flow_right {
    width: 100%;
}

.page-id-1595 .flow_left {
    width: 70%;
    margin: 0 auto;
    height: 32vw;
}
.flow_item h3 {
    padding: 5% 0;
    text-align: center;
    margin-bottom: 2%;
    font-size: 2rem;
}

.main_lead {
  width: 90%;
  margin: 0 auto;
}

.cleaning_lead_left,.cleaning_lead_right {
  width: 100%;
}

.cleaning_lead_right {
  height: 66vw;
}

.cleaning_lead_left {
  padding-left: 0;
}

.cleaning_lead_left h3 {
  font-size: 1.9rem;
}

.piano_damage {
  margin-top: 5%;
  padding: 7% 0;
}

.piano_damage h2 {
  margin: 0 0 2.2% 0;
  padding: 5.25% 0;
}

.piano_damage p {
  width: 90%;
  margin: 0 auto;
  text-align: left;
}

.damage_box {
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  margin-bottom: 5%;
}

.damage_item {
  width: 48%;
  margin-right: 4%;
}

.damage_item:nth-child(2n) {
  margin-right: 0;
}

.damege_image {
  height: 34.7vw;
}

.damage_item p {
    text-align: center;
    font-size: 1.3rem;
    padding: 3.5% 0 4.3%;
}

.cleaning_about {
  margin: 12% 0 6%;
}

.cleaning_about p {
  margin-top: 2.5%;
  margin-bottom: 4%;
  width: 90%;
  margin: 0 auto;
  font-size: 1.5rem;
  padding: 5% 0;
}

.before_after {
  display: flex;
  width: 90%;
  margin: 0 auto;
}

.before, .after {
  width: 44.7%;
  height: 37.2vw;
}

.before:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0%;
  left: 105.5%;
  margin: auto;
  border-top: 30px solid transparent;
  border-bottom: 30px solid transparent;
  border-left: 20px solid #e84a4b;
  box-sizing: border-box;
}

.cleaning_about {
  margin: 12% 0 10%;
}

.cleaning_flow p:first-of-type {
  margin: 6% auto;
}

.cleaning_flow p {
  margin: 2% auto 4%;
}

.piano_tuning {
  margin-top: 14.5%;
}

.piano_tuning_left,.piano_tuning_right {
  width: 90%;
  margin: 0 auto;
}

.piano_tuning_left {
  height: 66vw;
}

 .piano_tuning_right {
  padding-right: 0;
}

.piano_tuning_inner {
  justify-content: space-between;
  margin-top: 6%;
  margin-bottom: 15.7%;
}

.piano_tuning_right p br {
  display: none;
}

.piano_tuning_right p br.sp {
  display: block;
}

/*------------------------------------------------

中古ピアノ買取

-------------------------------------------------*/

.used_piano_left,.used_piano_right {
  width: 100%;
}

.used_piano_right {
  height: 66vw;
}

.used_piano_left {
  padding-left: 0;
}

.campaign {
  margin-top: 6%;
}

.campaign dl {
  width: 90%;
  margin: 4% auto;
}

.campaign dl dt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.campaign dl dd {
    width: 100%;
    padding-left: 0;
    margin: 4% 0 6%;
    margin-left: 0;
}

.campaign dl dd:nth-of-type(3), .campaign dl dd:nth-of-type(4) {
  width: fit-content;
  margin: 4% auto 6%;
  display: block;
}

.campaign dl dt span.ft36 {
  width: 60px;
  height: 60px;
  line-height: 55px;
  padding-left: 6px;
  margin-right: 4%;
  margin-bottom: 2%;
}

.campaign dl dt span.campaign_info_title {
  width: fit-content;
}

.used_piano_bottom {
    width: 90%;
    margin: 0 auto 24%;
    position: relative;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.08);
    padding: 6% 4% 7.9%;
    box-sizing: border-box;
}

.campaign h2 {
    padding: 5.1% 0;
}

.campaign p.ft18 {
    width: 90%;
    margin: 5% auto 6%;
    text-align: left;
}

/*------------------------------------------------

耐震・防振・防音対策

-------------------------------------------------*/

.sulator_inner {
  width: 90%;
  margin: 0 auto;
}

.sulator_lead .sulator_inner {
  display: flex;
  flex-direction: column-reverse;
}

.sulator_lead {
  margin-bottom: 14%;
}

.sulator_lead h3 {
  line-height: 130%;
}

.sulator_lead_left,.sulator_lead_right {
  width: 100%;
}

.sulator_lead_left {
  margin-left: 0;
}

.sulator_lead_right {
  height: 66vw;
  margin-bottom: 5%;
}

.sulator_lead_right img {
  position: absolute;
  bottom: -11%;
  left: -3%;
  width: 28vw;
}

.page-id-1513 .sub_kaso_title01 {
  font-size: 2.2rem;
  padding: 4% 8%;
  text-align: center;
}

.page-id-1513 .sub_kaso_title01:before {
  display: none;
}

.sulator_box .sulator_inner {
  padding: 4% 0 16.5%;
}

.piano_sulator .sulator_left,.new_stop_02 .sulator_left,.new_stop .sulator_left   {
  height: 66vw;
}
.new_stop_02 .sulator_left .tc{
  bottom: -20%;
}
.new_stop_02 .sulator_right{
  margin-top: 18%;
}
.sulator_left,.sulator_right {
  width: 100%;
}

.sulator_right {
  margin-top: 14%;
}

.sulator_right h3 {
  padding-left: 6%;
}

.sulator_right h3:before {
  top: 42%;
  left: 1%;
  height: 80%;
}

.sulator_right ul {
  padding-left: 0;
}

.sulator_right ul li:before {
  top: 9px;
  left: 0;
  width: 13px;
  height: 13px;
}

.sulator_btn {
  width: 100%;
  margin: 6% auto 0;
  box-sizing: border-box;
  border-radius: 26px;
  position: relative;
}

.sulator_btn a {
  display: flex;
  padding: 3.2% 6%;
  box-sizing: border-box;
  width: 100%;
  justify-content: space-between;
}

.fa-external-link {
  color: #ffffff;
}

.sulator_btn a:hover .fa-external-link {
  color: #e84a4b;
}

.sulator_left p {
  font-size: 1.1rem;
}

/*------------------------------------------------

お知らせ一覧

-------------------------------------------------*/

.information {
  width: 90%;
  margin: 0 auto;
}

div#sidebar {
   display: none;
}

#list {
  width: 100%;
}

.post-meta {
  display: flex;
  align-items: center;
}

.post-meta .category {
  padding: 4% 1%;
  margin: 0 0 0 2%;
  width: fit-content;
}

.info_article {
  width: 95%;
  margin: 3% auto;
}

.post-meta .category {
  padding: 6% 24%;
  margin: 0 0 0 22%;
  width: fit-content;
  white-space: nowrap;
}

.entry-card-content header h2 {
  margin: 2% 0 1.5% 0;
  line-height: 1;
}

.pagination {
  padding-left: 0;
  display: flex;
  justify-content: center;
  margin: 9% 0 11%;
}

.single_page {
  width: 90%;
  margin: 0 auto;
}

.single_left {
  width: 100%;
  margin-top: 6%;
}

#list h2.ft30 {
  padding: 0 0 3% 8%;
}

#list h2.ft30:before {
  height: 80%;
  left: 2%;
  top: 38%;
}

.prev, .single_page .next {
  padding: 4% 0;
}

.prev a,.next a {
  text-decoration: none;
  display: block;
  width: 90%;
  font-size: 14px;
  text-align: left;
}

.navigation {
  margin: 22% 0;
}

/*------------------------------------------------

無料見積もり・問合せ

-------------------------------------------------*/

.contact_page p.ft16:first-of-type {
  padding: 3% 0;
  width: 90%;
  margin: 0 auto;
  text-align: left;
}

.contact_page .contact_inner {
  width: 90%;
  display: flex;
  flex-direction: column-reverse;
}

.page-id-1619 .contact_page .contact_inner {
  flex-direction: column;
}

.contact_page .contact_left {
  margin-right: 0;
  margin-bottom: 0;
  margin-top: 8%;
}

.contact_form_inner {
    margin: 5.5% auto 7%;
    padding: 0 3.5%;
    box-sizing: border-box;
}

.contact_form h2.ft30 {
  box-sizing: border-box;
  width: 100%;
  padding: 4% 0 4% 6%;
  margin-top: 10%;
  }

  .contact_form h2.ft30:before {
    display: none;
  }

input, select,textarea  {
  padding: 3% 0;
  border: 1px solid #dddddd;
  margin: 0 auto;
  width: 95%;
  box-sizing: border-box;
}

textarea {
  height: auto;
}

#name,#furi_name,#tel,#mail,textarea {
  display: block;
}

input[type="submit"] {
  width: 280px;
  padding-top: 77px;
}

.long_border .df:after,.medium_border .df:after {
  display: none;
}

.contact_form_item .df dt {
width: 100%;
border-bottom: 2px solid #afa19e;
padding-bottom: 3%;
margin-bottom: 3%;
line-height: 1;
}

.medium_border .df, .long_border .df {
padding: 4.5% 3%;
}

.contact_form_item .df dt br {
  display: none;
}

.contact_form_item .df dd {
  width: 100%;
  margin-left: 0;
  margin: 0 auto;
  display: block;
  padding: 3%;
  box-sizing: border-box;
}


.contact_form_item h3 {
  padding: 3%;
}

input[type="radio"],input[type="checkbox"] {
  width: fit-content;
}

form h3 {
  padding: 2.5% 2%;
}

#contact_select03 {
  padding: 4.5%;
  display: block;
  margin-top: 1.5%;
  margin-left: 0;
}

#zip, #zip1, #zip2, #zip3,#zip4,#zip5 {
  width: 25%;
}

.contact_address .df dd input,.contact_address .df dd select {
    margin: 4px 0 8px;
}

select#pref,select#pref2,select#pref3,select#contact_select04,#contact_select04_2,select#contact_select07,select#contact_select03 {
  width: 70%;
}

#city,#city2,#city3{
  width: 100%;
}

.contact_page  .formbottom-text p.ft16:first-of-type {
  width: fit-content;
  margin: 0 0 0 28%;
  display: flex;
}

.page-id-1619 .contact_page .formbottom-text p.ft16:first-of-type {
  width: fit-content;
  margin: 4% 0 0 28%;
}

.mwform-radio-field {
  margin-right: 2%;
  display: block;
}

.mwform-checkbox-field {
  display: block;
}

.piano_situation br {
  display: none;
}

.mwform-checkbox-field label, .mwform-radio-field label {
  font-weight: normal;
  margin-bottom: 0;
  display: block;
}

label {
  width: 100%;
}

.piano_situation span.mwform-checkbox-field {
  display: inline-block;
  margin-right: 3%;
  margin-bottom: 3%;
  width: 100%;
}

.contact_form_item .df dd p span:nth-child(3) {
  position: relative;
}

.contact_form_item .df dd p span:nth-child(3) input#piano_other  {
  position: absolute;
  top: 0;
  right: 0;
  width: 40%;
}

#piano_other {
  width: 95%;
}

.piano_situation span.mwform-checkbox-field:nth-of-type(4) {
  margin-left: 0;
}

.formbottom_text .mwform-checkbox-field span {
  display: inline-block;
}

.page-id-1617 h2,.page-id-1630 {
  white-space: nowrap;
}

.page-id-1617 p br,.page-id-1630 p br {
  display: none;
}

.page-id-1617 p br.sp,.page-id-1630 p br.sp {
  display: block;
}

#container {
  margin-bottom: 0!important;
}

/*---------------------------------------------------

ナビゲーション

----------------------------------------------------*/

.sidr {
  box-shadow: none;
}

div#navi {
  background: #ffffff;
  padding: 5% 0;
}

#navi-in .header_logo {
  width: 90%;
  margin: 0 auto;
}

.navi-box {
  margin-top: 8%;
  margin-bottom: 15%;
}

.navi-box h2 {
  margin-bottom: 0;
}

#navi p.ft18 {
  margin-top: 0;
}

#navi .sitemap_top a {
  display: block;
  width: 90%;
  height: 30vw;
  position: relative;
  margin: 0 auto;
  margin-bottom: 6%;
}

div#navi ul li:first-child {
  border-top: 0.5px solid #e84a4b;
}

div#navi ul li {
  float: none;
  border-top: 0px;
  line-height: 25px !important;
  border-bottom: 0.5px solid #e84a4b;
  width: 90%;
  margin: 0 auto;
}

.sidr ul li a, .sidr ul li span {
  padding: 0 4px;
  display: block;
  text-decoration: none;
  color: #333;
  line-height: 1.5;
}

#navi ul li a span {
  font-size: 1.4rem;
}

#navi ul li a  span.ft12 {
  font-size: 1.2rem;
  line-height: 1;
}

#navi .ft20 {
  font-size: 1.4rem;
}

#navi .ft28 {
  font-size: 1.8rem;
}

#navi .ft43 {
  font-size: 2.5rem;
}

#navi .ft54 {
  font-size: 3rem;
}

#navi .contact .ft36 {
  font-size: 2.2rem;
}

#navi .mail_logo {
  width: 35px;
  height: 20px;
}

#navi .contact {
  padding: 12% 0 15%;
  height: auto;
}

#navi .contact_left a.btn span {
  line-height: 1.2;
  margin-right: 10px;
}

#navi .buy_logo {
width: 40px;
height: 28px;
}

.navi-box03 {
  height: 85vw;
}
.mwform-radio-field {
  margin-right: 2%;
  display: block;
  margin-bottom: 5px;
}

.mwform-checkbox-field {
  display: block;
  margin-bottom: 5px;
}



}
