@charset "UTF-8";
/*----------------------------------------------------*/
/*                      color                         */
/*----------------------------------------------------*/
/*----------------------------------------------------*/
/*                      common                        */
/*----------------------------------------------------*/
.pagenation {
  color: #fff;
  font-size: 20px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 60px;
}
.pagenation .current {
  width: 55px;
  border: 1px solid #3085c3;
  padding: 15px 0;
  background: #3085c3;
  text-align: center;
}
.pagenation a {
  color: #3085c3;
  width: 55px;
  padding: 15px 0;
  border: 1px solid #3085c3;
  text-align: center;
  display: block;
  transition: 0.3s;
}
.pagenation a:hover {
  background: #3085c3;
  color: #fff;
}

/*パンくず
=========================================================*/
#bread-clumb {
  width: 100%;
  margin: 0 auto;
  padding: 20px 0 0 0;
  z-index: 10;
}
#bread-clumb li {
  position: relative;
  font-size: 14px;
  float: left;
  margin-right: 20px;
}
#bread-clumb li:after {
  content: ">";
  position: absolute;
  display: block;
  right: -15px;
  top: 0;
}
#bread-clumb li:last-child {
  margin-right: 0;
}
#bread-clumb li:last-child:after {
  display: none;
}

.caution img {
  width: 235px;
}

.content-u {
  padding: 80px 0;
}

.ttl01 {
  font-size: 34px;
  font-weight: 700;
  text-align: center;
  padding-bottom: 20px;
  margin-bottom: 40px;
  position: relative;
}
.ttl01::before {
  content: "";
  width: 60px;
  height: 4px;
  background: #222222;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.btn01 a {
  font-weight: 700;
  display: block;
  width: 340px;
  padding: 25px 0;
  border-radius: 10px;
  background: #f4e869;
  box-shadow: inset 0px -6px 0px 0px #beb552;
  text-align: center;
  margin: 0 auto;
  position: relative;
  transition: 0.3s;
}
.btn01 a::before {
  content: "";
  width: 22px;
  height: 22px;
  background: url("/img/common/btn-arw.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  transition: 0.3s;
}
.btn01 a:hover {
  box-shadow: none;
  transform: translateY(6px);
}
.btn01 a:hover::before {
  right: 10px;
}

.dot-bg {
  padding: 80px 0;
  background: url("/img/common/pattern03.jpg") repeat center/auto;
}

/*----------------------------------------------------*/
/*                      header                        */
/*----------------------------------------------------*/
#header .hd-wrap .hd-logo {
  position: absolute;
  top: 0;
  left: 0;
  gap: 30px;
  padding: 30px 40px;
}
#header .hd-wrap .hd-logo .logo-ttl {
  padding: 5px;
  display: inline-block;
  border-top: 1px dotted #222222;
  border-bottom: 1px dotted #222222;
}
#header .hd-wrap .wrap-r {
  padding-right: 40px;
  padding-bottom: 20px;
}
#header .hd-wrap .wrap-r .tel {
  margin-left: 20px;
}
#header .hd-wrap .wrap-r .tel .cnt {
  padding-left: 50px;
  position: relative;
}
#header .hd-wrap .wrap-r .tel .cnt::before {
  content: "";
  width: 40px;
  height: 40px;
  background: url("/img/common/tel.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#header .hd-wrap .wrap-r .hd-nav {
  margin-top: 20px;
}
#header .hd-wrap .wrap-r .hd-nav .hd-nav-list {
  gap: 35px;
}
#header .hd-wrap .wrap-r .hd-nav .hd-nav-list .hd-nav-item a {
  transition: 0.3s;
  position: relative;
}
#header .hd-wrap .wrap-r .hd-nav .hd-nav-list .hd-nav-item a::before {
  content: none;
  transition: 0.3s;
}
#header .hd-wrap .wrap-r .hd-nav .hd-nav-list .hd-nav-item a:hover {
  color: #3085c3;
}
#header .hd-wrap .wrap-r .hd-nav .hd-nav-list .hd-nav-item a:hover::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #3085c3;
  position: absolute;
  top: 50%;
  left: -13px;
  transform: translateY(-50%);
}
#header #mv .vis-cnt {
  position: relative;
}
#header #mv .vis-cnt .catch {
  width: 35.9%;
  text-align: center;
  position: absolute;
  bottom: -24px;
  left: 50%;
  transform: translateX(-50%);
}
#header #mv .vis-cnt .catch img:nth-child(n+2) {
  margin-top: 20px;
}
#header #mv .vis-cnt .vis-deco .deco01 {
  width: 11.5%;
  position: absolute;
  bottom: 40px;
  left: 21%;
}
#header #mv .vis-cnt .vis-deco .deco02 {
  width: 16%;
  position: absolute;
  bottom: 30px;
  right: 19%;
}
#header #mv .vis-cnt #slider {
  z-index: -1;
}
#header #mv .vis-cnt #slider img {
  width: 100%;
  height: 560px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#header #mv .mv-contact {
  padding: 50px 0;
  background: url("/img/common/pattern01.jpg") repeat center/auto;
}
#header #mv .mv-contact .px1280 {
  position: relative;
}
#header #mv .mv-contact .wrap {
  gap: 25px;
}
#header #mv .mv-contact .sale {
  letter-spacing: 0.2em;
  text-shadow: rgb(255, 255, 255) 7px 0px 0px, rgb(255, 255, 255) 6.92869px 0.996602px 0px, rgb(255, 255, 255) 6.71622px 1.9729px 0px, rgb(255, 255, 255) 6.36692px 2.909px 0px, rgb(255, 255, 255) 5.8879px 3.78584px 0px, rgb(255, 255, 255) 5.28893px 4.58555px 0px, rgb(255, 255, 255) 4.5822px 5.29183px 0px, rgb(255, 255, 255) 3.78212px 5.8903px 0px, rgb(255, 255, 255) 2.90498px 6.36876px 0px, rgb(255, 255, 255) 1.96865px 6.71747px 0px, rgb(255, 255, 255) 0.992221px 6.92932px 0px, rgb(255, 255, 255) -0.00442571px 7px 0px, rgb(255, 255, 255) -1.00098px 6.92806px 0px, rgb(255, 255, 255) -1.97715px 6.71498px 0px, rgb(255, 255, 255) -2.91303px 6.36508px 0px, rgb(255, 255, 255) -3.78956px 5.88551px 0px, rgb(255, 255, 255) -4.58889px 5.28603px 0px, rgb(255, 255, 255) -5.29472px 4.57885px 0px, rgb(255, 255, 255) -5.89269px 3.77839px 0px, rgb(255, 255, 255) -6.3706px 2.90095px 0px, rgb(255, 255, 255) -6.71871px 1.96441px 0px, rgb(255, 255, 255) -6.92995px 0.98784px 0px, rgb(255, 255, 255) -6.99999px -0.00885142px 0px, rgb(255, 255, 255) -6.92743px -1.00536px 0px, rgb(255, 255, 255) -6.71372px -1.98139px 0px, rgb(255, 255, 255) -6.36324px -2.91705px 0px, rgb(255, 255, 255) -5.88311px -3.79328px 0px, rgb(255, 255, 255) -5.28313px -4.59223px 0px, rgb(255, 255, 255) -4.57551px -5.29762px 0px, rgb(255, 255, 255) -3.77466px -5.89507px 0px, rgb(255, 255, 255) -2.89692px -6.37243px 0px, rgb(255, 255, 255) -1.96016px -6.71995px 0px, rgb(255, 255, 255) -0.983458px -6.93057px 0px, rgb(255, 255, 255) 0.0132771px -6.99999px 0px, rgb(255, 255, 255) 1.00974px -6.92679px 0px, rgb(255, 255, 255) 1.98564px -6.71247px 0px, rgb(255, 255, 255) 2.92107px -6.36139px 0px, rgb(255, 255, 255) 3.797px -5.88071px 0px, rgb(255, 255, 255) 4.59557px -5.28022px 0px, rgb(255, 255, 255) 5.30051px -4.57215px 0px, rgb(255, 255, 255) 5.89746px -3.77094px 0px, rgb(255, 255, 255) 6.37426px -2.89289px 0px, rgb(255, 255, 255) 6.72119px -1.95591px 0px, rgb(255, 255, 255) 6.93119px -0.979076px 0px;
}
#header #mv .mv-contact .tel {
  width: 320px;
  padding: 20px 0;
  border: 4px solid #fff;
  border-radius: 10px;
  background: #faf2d3;
  text-align: center;
}
#header #mv .mv-contact .tel .cnt {
  display: inline-block;
  padding-left: 50px;
  position: relative;
}
#header #mv .mv-contact .tel .cnt::before {
  content: "";
  width: 40px;
  height: 40px;
  background: url("/img/common/tel.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#header #mv .mv-contact .contact a {
  display: block;
  width: 320px;
  padding: 31px 0;
  border: 4px solid #fff;
  border-radius: 10px;
  background: #50b5c6;
  position: relative;
  text-align: center;
  transition: 0.3s;
}
#header #mv .mv-contact .contact a span {
  display: inline-block;
  padding-top: 30px;
  position: relative;
}
#header #mv .mv-contact .contact a span::before {
  content: "";
  width: 29px;
  height: 20px;
  background: url("/img/common/mail.png") no-repeat center/contain;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#header #mv .mv-contact .contact a:hover {
  opacity: 0.7;
}
#header #mv .mv-contact .deco-left {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#header #mv .mv-contact .deco-right {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
#header #sv .sv-ttl {
  font-size: 45px;
  text-shadow: rgb(255, 255, 255) 8px 0px 0px, rgb(255, 255, 255) 7.93758px 0.997398px 0px, rgb(255, 255, 255) 7.7513px 1.97923px 0px, rgb(255, 255, 255) 7.44406px 2.93018px 0px, rgb(255, 255, 255) 7.02066px 3.8354px 0px, rgb(255, 255, 255) 6.4877px 4.68078px 0px, rgb(255, 255, 255) 5.85351px 5.45311px 0px, rgb(255, 255, 255) 5.12797px 6.14035px 0px, rgb(255, 255, 255) 4.32242px 6.73177px 0px, rgb(255, 255, 255) 3.44941px 7.21814px 0px, rgb(255, 255, 255) 2.52258px 7.59188px 0px, rgb(255, 255, 255) 1.55638px 7.84714px 0px, rgb(255, 255, 255) 0.565898px 7.97996px 0px, rgb(255, 255, 255) -0.433417px 7.98825px 0px, rgb(255, 255, 255) -1.42597px 7.87189px 0px, rgb(255, 255, 255) -2.39627px 7.63269px 0px, rgb(255, 255, 255) -3.32917px 7.27438px 0px, rgb(255, 255, 255) -4.21013px 6.80256px 0px, rgb(255, 255, 255) -5.02539px 6.22459px 0px, rgb(255, 255, 255) -5.76223px 5.54948px 0px, rgb(255, 255, 255) -6.40915px 4.78778px 0px, rgb(255, 255, 255) -6.95606px 3.95136px 0px, rgb(255, 255, 255) -7.39442px 3.05329px 0px, rgb(255, 255, 255) -7.71739px 2.10757px 0px, rgb(255, 255, 255) -7.91994px 1.12896px 0px, rgb(255, 255, 255) -7.9989px 0.132735px 0px, rgb(255, 255, 255) -7.95304px -0.865561px 0px, rgb(255, 255, 255) -7.78307px -1.85035px 0px, rgb(255, 255, 255) -7.49165px -2.80627px 0px, rgb(255, 255, 255) -7.08333px -3.71839px 0px, rgb(255, 255, 255) -6.56448px -4.57249px 0px, rgb(255, 255, 255) -5.94318px -5.35524px 0px, rgb(255, 255, 255) -5.22915px -6.05442px 0px, rgb(255, 255, 255) -4.43352px -6.65912px 0px, rgb(255, 255, 255) -3.5687px -7.15991px 0px, rgb(255, 255, 255) -2.6482px -7.54898px 0px, rgb(255, 255, 255) -1.68637px -7.82024px 0px, rgb(255, 255, 255) -0.698222px -7.96947px 0px, rgb(255, 255, 255) 0.300817px -7.99434px 0px, rgb(255, 255, 255) 1.29516px -7.89446px 0px, rgb(255, 255, 255) 2.2693px -7.67139px 0px, rgb(255, 255, 255) 3.20802px -7.32862px 0px, rgb(255, 255, 255) 4.09668px -6.87148px 0px, rgb(255, 255, 255) 4.92142px -6.30711px 0px, rgb(255, 255, 255) 5.66936px -5.64432px 0px, rgb(255, 255, 255) 6.32883px -4.89346px 0px, rgb(255, 255, 255) 6.88954px -4.06623px 0px, rgb(255, 255, 255) 7.34274px -3.17555px 0px, rgb(255, 255, 255) 7.68136px -2.23532px 0px, rgb(255, 255, 255) 7.90012px -1.26021px 0px, rgb(255, 255, 255) 7.9956px -0.265434px 0px, rgba(34, 34, 34, 0.7) 0 12px 5px;
}
#header #sv .vis-cnt {
  padding: 20px 0;
  background: #faf2d3;
  overflow: hidden;
}
#header #sv .vis-cnt .inbox {
  position: relative;
}
#header #sv .vis-deco .deco01 {
  width: 183px;
  position: absolute;
  top: 50%;
  left: -220px;
  transform: translateY(-50%);
}
#header #sv .vis-deco .deco02 {
  width: 180px;
  position: absolute;
  bottom: 0;
  right: -125px;
}
#header #sv .vis img {
  border-radius: 10px;
  border: 6px solid #fff;
}
#header .sidebtn .side-contact {
  overflow: hidden;
  position: fixed;
  top: 180px;
  right: -255px;
  z-index: 50;
  transition: 0.4s;
}
#header .sidebtn .side-contact:hover {
  right: 0;
}

/*----------------------------------------------------*/
/*                      footer                        */
/*----------------------------------------------------*/
#footer .ft-contact {
  padding: 60px 0;
  background: url("/img/common/pattern01.jpg") repeat center/auto;
  text-align: center;
}
#footer .ft-contact .wrap {
  margin-top: 35px;
}
#footer .ft-contact .sale {
  width: 500px;
  padding: 25px 0 20px;
  background: #3085c3;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
#footer .ft-contact .sale::before, #footer .ft-contact .sale::after {
  content: "";
  width: 30px;
  height: 100%;
  background: url("/img/common/sale-side-nami.png") no-repeat center/contain;
  position: absolute;
  top: 0;
}
#footer .ft-contact .sale::before {
  left: -12px;
}
#footer .ft-contact .sale::after {
  right: -12px;
}
#footer .ft-contact .sale .ribon {
  width: 414px;
  padding: 13px 0 34px;
  text-align: center;
  background: url("/img/common/sale-ribon.png") no-repeat center/auto;
  position: absolute;
  top: -34px;
  left: 50%;
  transform: translateX(-50%);
}
#footer .ft-contact .sale .deco {
  width: 205px;
  position: absolute;
  bottom: 0px;
  left: -145px;
}
#footer .ft-contact .tel {
  text-align: center;
}
#footer .ft-contact .tel .cnt {
  padding-left: 100px;
  position: relative;
}
#footer .ft-contact .tel .cnt::before {
  content: "";
  width: 86px;
  height: 86px;
  background: url("/img/common/tel.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#footer .ft-contact .tel .cnt .time {
  padding: 5px 0;
  border-top: 2px solid #222222;
  border-bottom: 2px solid #222222;
  text-align: center;
}
#footer .ft-contact .tel .caution {
  margin-top: 5px;
  margin-left: 85px;
}
#footer .ft-contact .contact-btn {
  margin-top: 20px;
}
#footer .ft-contact .contact-btn a {
  display: block;
  width: 480px;
  padding: 20px 0;
  border-radius: 10px;
  border: 4px solid #fff;
  background: #50b5c6;
  text-align: center;
  margin: 0 auto;
  transition: 0.3s;
}
#footer .ft-contact .contact-btn a span {
  padding-left: 45px;
  position: relative;
}
#footer .ft-contact .contact-btn a span::before {
  content: "";
  width: 29px;
  height: 20px;
  background: url("/img/common/mail.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#footer .ft-contact .contact-btn a:hover {
  opacity: 0.7;
}
#footer .ft-wrp {
  padding: 70px 0 0 0;
  background: #faf2d3;
}
#footer .ft-wrp .wrap-l .ft-address {
  margin-top: 30px;
}
#footer .ft-wrp .ft-nav {
  gap: 40px;
}
#footer .ft-wrp .ft-nav .ft-nav-list .ft-nav-item:nth-child(n+2) {
  margin-top: 15px;
}
#footer .ft-wrp .ft-nav .ft-nav-list .ft-nav-item a {
  transition: 0.3s;
}
#footer .ft-wrp .ft-nav .ft-nav-list .ft-nav-item a:hover {
  color: #3085c3;
}
#footer .ft-wrp .ft-sub {
  border-top: 1px solid #222222;
  padding: 25px 0;
  margin-top: 40px;
}
#footer .ft-wrp .ft-sub .inbox {
  position: relative;
}
#footer .ft-wrp .ft-sub .site-btn {
  text-align: right;
}
#footer .ft-wrp .ft-sub .site-btn a {
  transition: 0.3s;
}
#footer .ft-wrp .ft-sub .site-btn a span {
  padding-right: 25px;
  padding-bottom: 5px;
  border-bottom: 1px solid #222222;
  position: relative;
}
#footer .ft-wrp .ft-sub .site-btn a span::before {
  content: "";
  width: 13px;
  height: 13px;
  background: url("/img/common/site-arw.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
#footer .ft-wrp .ft-sub .site-btn a:hover {
  color: #3085c3;
}
#footer .ft-wrp .ft-sub .site-btn a:hover span {
  border-bottom: 1px solid #3085c3;
}
#footer .ft-wrp .ft-sub .copy {
  position: absolute;
  top: 0;
  left: 0;
}

/*----------------------------------------------------*/
/*                        top                         */
/*----------------------------------------------------*/
#top-voice {
  padding: 80px 0;
  background: url("/img/top/voice-bg.png") no-repeat bottom center/auto;
}
#top-voice .voice-list {
  gap: 30px;
}
#top-voice .voice-list .voice-item a img {
  width: 340px;
  height: 240px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: 10px;
  border: 4px solid #3085c3;
  box-shadow: inset 0px -6px 0px 0px rgba(34, 34, 34, 0.3);
  transition: 0.3s;
}
#top-voice .voice-list .voice-item a:hover img {
  border: 4px solid #f4e869;
}
#top-voice .btn01 {
  margin-top: 40px;
}

#top-reason {
  padding: 100px 0;
  background: url("/img/common/pattern02.jpg") repeat center/auto;
}
#top-reason .thx-ttl {
  text-align: center;
  padding: 55px 0 0 0;
  margin-bottom: 40px;
  background: url("/img/top/reason-ttl-deco.png") no-repeat top left 150px/auto, url("/img/top/reason-deco-top.png") no-repeat bottom right/auto;
}
#top-reason .wrap .img {
  position: relative;
}
#top-reason .wrap .img::before {
  content: "";
  width: 155px;
  height: 175px;
  background: url("/img/common/chara-right.png") no-repeat center/contain;
  position: absolute;
  bottom: -20px;
  left: -50px;
}
#top-reason .wrap .txt {
  margin-left: 30px;
}
#top-reason .reason-cnt {
  margin-top: 80px;
  padding: 130px 0 70px;
  border-radius: 20px;
  background: #fff;
  position: relative;
}
#top-reason .reason-cnt .reason-ttl {
  width: 560px;
  padding: 30px 0;
  border-radius: 10px;
  background: #50b5c6;
  text-align: center;
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
}
#top-reason .reason-cnt .reason-list {
  gap: 60px 120px;
}
#top-reason .reason-cnt .reason-list .reason-item .item-ttl {
  margin-top: 25px;
  text-align: center;
}
#top-reason .reason-cnt .btn01 {
  margin-top: 60px;
}

#top-service {
  padding: 80px 0;
  background: url("/img/common/pattern03.jpg") repeat center/auto;
  overflow: hidden;
}
#top-service .inbox {
  position: relative;
}
#top-service .inbox .bottom-illust01 {
  position: absolute;
  bottom: -80px;
  left: -20px;
}
#top-service .inbox .bottom-illust02 {
  position: absolute;
  bottom: -80px;
  right: -50px;
}
#top-service .service-style {
  width: 520px;
  padding: 260px 0 40px;
  border-radius: 20px;
  background: #fff;
  box-shadow: inset 0px -6px 0px 0px rgba(34, 34, 34, 0.38);
  position: relative;
}
#top-service .service-style:nth-child(1) .deco {
  position: absolute;
  top: 70px;
  left: -137px;
}
#top-service .service-style:nth-child(2) .deco {
  position: absolute;
  top: 115px;
  right: -110px;
}
#top-service .service-style .illust {
  width: 300px;
  position: absolute;
  top: -62px;
  left: 50%;
  transform: translateX(-50%);
}
#top-service .service-style .txt-cnt {
  padding: 0 40px;
}
#top-service .service-style .txt-cnt .service-ttl {
  margin-bottom: 45px;
  text-align: center;
}
#top-service .service-style .txt-cnt .service-ttl span {
  padding-bottom: 15px;
  border-bottom: 4px dotted #3085c3;
}
#top-service .service-style .txt-cnt .btn01 {
  margin-top: 30px;
}
#top-service .btn-cnt {
  width: 800px;
  border-radius: 20px;
  padding: 40px 0;
  background: #fff;
  box-shadow: inset 0px -6px 0px 0px rgba(34, 34, 34, 0.3);
  margin: 80px auto 0;
}
#top-service .btn-cnt .btn-list {
  gap: 40px;
}
#top-service .btn-cnt .btn-list .greeting-btn span {
  padding-left: 30px;
  position: relative;
}
#top-service .btn-cnt .btn-list .greeting-btn span::before {
  content: "";
  width: 25px;
  height: 30px;
  background: url("/img/top/greeting-icn.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#top-service .btn-cnt .btn-list .qa-btn span {
  padding-left: 35px;
  position: relative;
}
#top-service .btn-cnt .btn-list .qa-btn span::before {
  content: "";
  width: 29px;
  height: 27px;
  background: url("/img/top/qa-icn.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

#top-contact {
  border-top: 6px solid #222222;
  border-bottom: 6px solid #222222;
  background: url("/img/common/pattern01.jpg") repeat center/auto;
  padding: 80px 0;
  overflow: hidden;
}
#top-contact .contact-ttl {
  text-align: center;
  margin-bottom: 40px;
}
#top-contact .contact-ttl .sub {
  display: inline-block;
  padding: 15px 30px;
  border-radius: 50px;
  background: #3085c3;
}
#top-contact .contact-ttl .border {
  display: inline-block;
  padding: 0 20px 10px 20px;
  margin-top: 15px;
  background: linear-gradient(transparent 70%, rgba(127, 206, 244, 0.6) 60%);
}
#top-contact .area {
  width: 500px;
  border-radius: 10px;
  padding-bottom: 40px;
  border: 4px solid #3085c3;
  background: #fff;
  text-align: center;
  position: relative;
}
#top-contact .area .ttl {
  padding: 15px 0;
  background: #3085c3;
}
#top-contact .area .area-map {
  margin-top: 30px;
}
#top-contact .area .area-list {
  margin-top: 30px;
  padding: 0 50px;
}
#top-contact .area .area-deco {
  position: absolute;
  bottom: 200px;
  left: -70px;
}
#top-contact .txt-cnt {
  position: relative;
}
#top-contact .sale {
  width: 500px;
  padding: 25px 0 20px;
  background: #3085c3;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
#top-contact .sale::before, #top-contact .sale::after {
  content: "";
  width: 30px;
  height: 100%;
  background: url("/img/common/sale-side-nami.png") no-repeat center/contain;
  position: absolute;
  top: 0;
}
#top-contact .sale::before {
  left: -12px;
}
#top-contact .sale::after {
  right: -12px;
}
#top-contact .sale .ribon {
  width: 414px;
  padding: 13px 0 34px;
  text-align: center;
  background: url("/img/common/sale-ribon.png") no-repeat center/auto;
  position: absolute;
  top: -34px;
  left: 50%;
  transform: translateX(-50%);
}
#top-contact .tel {
  margin-top: 30px;
  text-align: center;
}
#top-contact .tel .cnt {
  padding-left: 100px;
  position: relative;
}
#top-contact .tel .cnt::before {
  content: "";
  width: 86px;
  height: 86px;
  background: url("/img/common/tel.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#top-contact .tel .cnt .time {
  padding: 5px 0;
  border-top: 2px solid #222222;
  border-bottom: 2px solid #222222;
  text-align: center;
}
#top-contact .tel .caution {
  margin-top: 5px;
  margin-left: 85px;
}
#top-contact .contact-btn {
  margin-top: 20px;
}
#top-contact .contact-btn a {
  display: block;
  width: 480px;
  padding: 45px 0;
  border-radius: 10px;
  border: 4px solid #fff;
  background: #50b5c6;
  text-align: center;
  margin: 0 auto;
  transition: 0.3s;
}
#top-contact .contact-btn a span {
  padding-left: 45px;
  position: relative;
}
#top-contact .contact-btn a span::before {
  content: "";
  width: 29px;
  height: 20px;
  background: url("/img/common/mail.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#top-contact .contact-btn a:hover {
  opacity: 0.7;
}
#top-contact .deco {
  width: 215px;
  position: absolute;
  bottom: -34px;
  right: -135px;
}

#top-infomation {
  padding: 80px 0;
  background: url("/img/common/pattern03.jpg") repeat center/auto;
}
#top-infomation .cnt {
  padding: 80px 0;
  border-radius: 20px;
  background: #fcfaf0;
}
#top-infomation .cnt .info-tbl {
  width: 540px;
}
#top-infomation .cnt .info-tbl tr:nth-child(n+2) th {
  border-top: 1px solid #fff;
}
#top-infomation .cnt .info-tbl tr:nth-child(n+2) td {
  border-top: 1px solid #50b5c6;
}
#top-infomation .cnt .info-tbl tr:first-child th {
  border-radius: 10px 0 0 0;
}
#top-infomation .cnt .info-tbl tr:first-child td {
  border-radius: 0 10px 0 0;
}
#top-infomation .cnt .info-tbl tr:last-child th {
  border-radius: 0 0 0 10px;
}
#top-infomation .cnt .info-tbl tr:last-child td {
  border-radius: 0 10px 0 0;
}
#top-infomation .cnt .info-tbl tr th,
#top-infomation .cnt .info-tbl tr td {
  padding: 20px;
}
#top-infomation .cnt .info-tbl tr th {
  width: 120px;
  color: #fff;
  background: #3085c3;
}
#top-infomation .cnt .info-tbl tr td {
  background: #fff;
}
#top-infomation .cnt .map {
  width: 490px;
  height: 400px;
  border-radius: 10px;
  border: 4px solid #3085c3;
}
#top-infomation .cnt .map iframe {
  width: 100%;
  height: 100%;
  border-radius: 10px;
}

#top-news {
  padding-bottom: 80px;
  background: url("/img/common/pattern03.jpg") repeat center/auto;
}
#top-news .cnt {
  width: 100%;
  padding: 45px 0;
  border: 4px solid #222222;
  background: #fff;
  position: relative;
}
#top-news .cnt .wrap {
  gap: 70px;
}
#top-news .cnt .news-list {
  width: 540px;
}
#top-news .cnt .news-list .news-item {
  margin-top: 15px;
}
#top-news .cnt .news-list .news-item .time-tag {
  gap: 15px;
}
#top-news .cnt .news-list .news-item .time-tag .tag-list {
  gap: 10px;
}
#top-news .cnt .news-list .news-item .news-ttl {
  width: 100%;
  margin-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #222222;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
#top-news .cnt .deco {
  position: absolute;
  bottom: 0;
  left: -100px;
}

/*----------------------------------------------------*/
/*                     beginner                       */
/*----------------------------------------------------*/
#beginner #reason .reason-style:nth-child(n+3) {
  margin-top: 35px;
}
#beginner #reason .reason-style .txt-cnt {
  width: 615px;
}
#beginner #reason .reason-style .txt-cnt .reason-ttl {
  padding-bottom: 15px;
  border-bottom: 4px dotted #50b5c6;
  margin-bottom: 20px;
}
#beginner #price .price-tbl {
  width: 100%;
}
#beginner #price .price-tbl tr:nth-child(n+2) th {
  border-top: 1px solid #fff;
}
#beginner #price .price-tbl tr:nth-child(n+2) td {
  border-top: 1px solid #50b5c6;
}
#beginner #price .price-tbl tr:first-child th {
  border-radius: 10px 0 0 0;
}
#beginner #price .price-tbl tr:first-child td {
  border-radius: 0 10px 0 0;
}
#beginner #price .price-tbl tr:last-child th {
  border-radius: 0 0 0 10px;
}
#beginner #price .price-tbl tr:last-child td {
  border-radius: 0 10px 0 0;
}
#beginner #price .price-tbl tr th,
#beginner #price .price-tbl tr td {
  padding: 20px;
}
#beginner #price .price-tbl tr th {
  color: #fff;
  background: #3085c3;
}
#beginner #price .price-tbl tr td {
  background: #fff;
}
#beginner #greeting .wrap {
  position: relative;
}
#beginner #greeting .txt {
  width: 515px;
}
#beginner #greeting .deco {
  position: absolute;
  top: -105px;
  right: 0;
}
#beginner #qa .qa-list .qa-item {
  background: #fff;
  border-radius: 10px;
}
#beginner #qa .qa-list .qa-item:nth-child(n+2) {
  margin-top: 30px;
}
#beginner #qa .qa-list .qa-item .q-cnt {
  padding: 25px;
  border-radius: 10px 10px 0 0;
  background: #3085c3;
}
#beginner #qa .qa-list .qa-item .a-cnt {
  padding: 25px;
}

/*----------------------------------------------------*/
/*                       sorting                      */
/*----------------------------------------------------*/
#sorting #problem .cnt,
#collect #problem .cnt {
  padding-bottom: 35px;
  position: relative;
}
#sorting #problem .cnt .wrap:first-child,
#collect #problem .cnt .wrap:first-child {
  gap: 30px;
}
#sorting #problem .cnt .wrap .problem-style,
#collect #problem .cnt .wrap .problem-style {
  width: 340px;
  text-align: center;
  padding: 35px 0 60px;
}
#sorting #problem .cnt .wrap .problem-style:first-child,
#collect #problem .cnt .wrap .problem-style:first-child {
  background: url("/img/common/problem-huki-bg01.png") no-repeat center/auto;
}
#sorting #problem .cnt .wrap .problem-style:nth-child(2),
#collect #problem .cnt .wrap .problem-style:nth-child(2) {
  background: url("/img/common/problem-huki-bg02.png") no-repeat center/auto;
}
#sorting #problem .cnt .illust,
#collect #problem .cnt .illust {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#sorting #about .wrap .img img,
#collect #about .wrap .img img {
  border: 4px solid #3085c3;
  border-radius: 10px;
}
#sorting #about .wrap .txt-cnt,
#collect #about .wrap .txt-cnt {
  width: 540px;
}
#sorting #about .wrap .txt-cnt .about-sub-ttl,
#collect #about .wrap .txt-cnt .about-sub-ttl {
  padding: 15px 0;
  border-top: 4px dotted #3085c3;
  border-bottom: 4px dotted #3085c3;
  margin-bottom: 20px;
  text-align: center;
}
#sorting #works .works-cnt .works-style,
#collect #works .works-cnt .works-style {
  border-radius: 20px;
  background: url("/img/common/pattern02.jpg") repeat center/auto;
  position: relative;
}
#sorting #works .works-cnt .works-style:nth-child(n+2),
#collect #works .works-cnt .works-style:nth-child(n+2) {
  margin-top: 30px;
}
#sorting #works .works-cnt .works-style .wrap,
#collect #works .works-cnt .works-style .wrap {
  padding: 40px;
  gap: 30px;
}
#sorting #works .works-cnt .works-style .wrap .txt-cnt,
#collect #works .works-cnt .works-style .wrap .txt-cnt {
  width: 465px;
}
#sorting #works .works-cnt .works-style .wrap .txt-cnt .ttl,
#collect #works .works-cnt .works-style .wrap .txt-cnt .ttl {
  padding-bottom: 15px;
  border-bottom: 4px dotted #fff;
  margin-bottom: 30px;
}
#sorting #works .works-cnt .works-style .wrap .txt-cnt .txt,
#collect #works .works-cnt .works-style .wrap .txt-cnt .txt {
  margin-bottom: 20px;
}
#sorting #works .works-cnt .works-style .wrap .txt-cnt dl,
#collect #works .works-cnt .works-style .wrap .txt-cnt dl {
  display: flex;
  align-items: center;
}
#sorting #works .works-cnt .works-style .wrap .txt-cnt dl dt,
#collect #works .works-cnt .works-style .wrap .txt-cnt dl dt {
  display: inline-block;
  background: #50b5c6;
  padding: 5px;
}
#sorting #works .works-cnt .works-style .wrap .txt-cnt dl dd,
#collect #works .works-cnt .works-style .wrap .txt-cnt dl dd {
  padding-left: 15px;
}
#sorting #works .works-cnt .works-style .deco,
#collect #works .works-cnt .works-style .deco {
  position: absolute;
  bottom: 40px;
  right: 40px;
}
#sorting #works #content,
#collect #works #content {
  background: #faf2d3;
  border-radius: 20px;
  border: 8px solid #50b5c6;
  padding: 110px 70px;
  margin-top: 120px;
  position: relative;
}
#sorting #works #content .content-ttl,
#collect #works #content .content-ttl {
  width: 560px;
  border-radius: 10px;
  padding: 30px 0;
  background: #50b5c6;
  text-align: center;
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
}
#sorting #works #content .inbox,
#collect #works #content .inbox {
  gap: 30px;
}
#sorting #works #content .inbox:nth-child(n+3),
#collect #works #content .inbox:nth-child(n+3) {
  margin-top: 30px;
}
#sorting #works #content .inbox .content-style,
#collect #works #content .inbox .content-style {
  width: 340px;
  border-radius: 10px;
  padding: 30px 0;
  background: #fff;
  border: 6px solid #50b5c6;
}
#sorting #works #content .inbox .content-style .img,
#collect #works #content .inbox .content-style .img {
  text-align: center;
}
#sorting #works #content .inbox .content-style .img img,
#collect #works #content .inbox .content-style .img img {
  border-radius: 10px;
}
#sorting #works #content .inbox .content-style .txt-cnt,
#collect #works #content .inbox .content-style .txt-cnt {
  margin-top: 20px;
  padding: 0 30px;
}
#sorting #works #content .inbox .content-style .txt-cnt .item-ttl,
#collect #works #content .inbox .content-style .txt-cnt .item-ttl {
  padding-bottom: 15px;
  margin-bottom: 20px;
  border-bottom: 4px dotted #50b5c6;
  text-align: center;
}
#sorting #works #content .content-tbl tr:nth-child(n+2) th,
#collect #works #content .content-tbl tr:nth-child(n+2) th {
  border-top: 1px solid #fff;
}
#sorting #works #content .content-tbl tr:nth-child(n+2) td,
#collect #works #content .content-tbl tr:nth-child(n+2) td {
  border-top: 1px solid #50b5c6;
}
#sorting #works #content .content-tbl tr:first-child th,
#collect #works #content .content-tbl tr:first-child th {
  border-radius: 10px 0 0 0;
}
#sorting #works #content .content-tbl tr:first-child td,
#collect #works #content .content-tbl tr:first-child td {
  border-radius: 0 10px 0 0;
}
#sorting #works #content .content-tbl tr:last-child th,
#collect #works #content .content-tbl tr:last-child th {
  border-radius: 0 0 0 10px;
}
#sorting #works #content .content-tbl tr:last-child td,
#collect #works #content .content-tbl tr:last-child td {
  border-radius: 0 10px 0 0;
}
#sorting #works #content .content-tbl tr th,
#sorting #works #content .content-tbl tr td,
#collect #works #content .content-tbl tr th,
#collect #works #content .content-tbl tr td {
  padding: 20px;
}
#sorting #works #content .content-tbl tr th,
#collect #works #content .content-tbl tr th {
  width: 220px;
  color: #fff;
  background: #50b5c6;
}
#sorting #works #content .content-tbl tr td,
#collect #works #content .content-tbl tr td {
  background: #fff;
}
#sorting #flow .flow-list .flow-item,
#collect #flow .flow-list .flow-item {
  border-radius: 10px;
  background: #fff;
}
#sorting #flow .flow-list .flow-item:nth-child(n+2),
#collect #flow .flow-list .flow-item:nth-child(n+2) {
  margin-top: 30px;
}
#sorting #flow .flow-list .flow-item .ttl-cnt,
#collect #flow .flow-list .flow-item .ttl-cnt {
  padding: 25px 70px;
  border-radius: 10px 10px 0 0;
  background: #3085c3;
  position: relative;
}
#sorting #flow .flow-list .flow-item .ttl-cnt .nm,
#collect #flow .flow-list .flow-item .ttl-cnt .nm {
  position: absolute;
  top: -20px;
  left: -20px;
}
#sorting #flow .flow-list .flow-item .txt,
#collect #flow .flow-list .flow-item .txt {
  padding: 25px 40px;
}
#sorting #flow .flow-list .wrap,
#collect #flow .flow-list .wrap {
  padding: 25px 40px;
  gap: 30px;
}
#sorting #flow .flow-list .wrap .img img,
#collect #flow .flow-list .wrap .img img {
  border-radius: 10px;
}
#sorting #flow .flow-list .wrap .txt-cnt,
#collect #flow .flow-list .wrap .txt-cnt {
  width: 650px;
}
#sorting #flow .flow-list .wrap .txt-cnt .txt,
#collect #flow .flow-list .wrap .txt-cnt .txt {
  padding: 0;
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt {
  gap: 20px;
  margin-top: 20px;
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt .tel,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt .tel {
  width: 320px;
  padding: 20px 0;
  border-radius: 10px;
  background: #faf2d3;
  text-align: center;
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt .tel .cnt,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt .tel .cnt {
  display: inline-block;
  padding-left: 50px;
  position: relative;
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt .tel .cnt::before,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt .tel .cnt::before {
  content: "";
  width: 40px;
  height: 40px;
  background: url("/img/common/tel.png") no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a {
  display: block;
  width: 320px;
  padding: 31px 0;
  border: 4px solid #fff;
  border-radius: 10px;
  background: #50b5c6;
  position: relative;
  text-align: center;
  transition: 0.3s;
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a span,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a span {
  display: inline-block;
  padding-top: 30px;
  position: relative;
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a span::before,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a span::before {
  content: "";
  width: 29px;
  height: 20px;
  background: url("/img/common/mail.png") no-repeat center/contain;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#sorting #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a:hover,
#collect #flow .flow-list .wrap .txt-cnt .contact-cnt .contact a:hover {
  opacity: 0.7;
}

/*----------------------------------------------------*/
/*                       voice                        */
/*----------------------------------------------------*/
#voice #all-voice .voice-list {
  gap: 30px;
}
#voice #all-voice .voice-list .voice-item a {
  transition: 0.3s;
}
#voice #all-voice .voice-list .voice-item a .img img {
  width: 340px;
  height: 240px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: 10px;
  border: 4px solid #3085c3;
  transition: 0.3s;
}
#voice #all-voice .voice-list .voice-item a .voice-ttl {
  margin-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #222222;
}
#voice #all-voice .voice-list .voice-item a:hover .img img {
  border: 4px solid #f4e869;
}
#voice #detail-wrp .voice-ttl {
  margin-bottom: 40px;
  padding-bottom: 10px;
  border-bottom: 3px solid #222222;
}
#voice #detail-wrp .img {
  width: 540px;
}
#voice #detail-wrp .img img {
  border-radius: 10px;
  border: 4px solid #3085c3;
}
#voice #detail-wrp .txt-cnt {
  width: 500px;
}
#voice #detail-wrp .txt-cnt dl {
  display: flex;
  align-items: center;
  padding: 15px 0;
  border-bottom: 1px solid #3085c3;
}
#voice #detail-wrp .txt-cnt dl dt {
  width: 120px;
}

/*----------------------------------------------------*/
/*                       blog                         */
/*----------------------------------------------------*/
#blog #blog-cnt {
  padding: 150px 0;
}
#blog #blog-cnt .category-btn {
  margin-top: 40px;
  padding: 40px 0;
  border: 1px solid #3085c3;
}
#blog #blog-cnt .category-btn .category-list {
  padding: 0 25px;
  gap: 20px;
}
#blog #blog-cnt .category-btn .category-list .category-item a {
  color: #fff;
  font-size: 18px;
  padding: 5px 15px;
  background: #3085c3;
  transition: 0.3s;
}
#blog #blog-cnt .category-btn .category-list .category-item a:hover {
  opacity: 0.7;
}
#blog #blog-cnt .blog-list {
  margin-top: 60px;
}
#blog #blog-cnt .blog-list .blog-item {
  padding: 35px 0;
  border-top: 1px solid #3085c3;
}
#blog #blog-cnt .blog-list .blog-item:last-child {
  border-bottom: 1px solid #3085c3;
}
#blog #blog-cnt .blog-list .blog-item .thumbnail-on .thumb img {
  width: 250px;
  height: 250px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#blog #blog-cnt .blog-list .blog-item .thumbnail-on .txt-cnt {
  width: 790px;
}
#blog #blog-cnt .blog-list .blog-item time {
  font-weight: 700;
  color: #3085c3;
}
#blog #blog-cnt .blog-list .blog-item .blog-ttl {
  font-weight: 500;
  margin-top: 15px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: 0.3s;
}
#blog #blog-cnt .blog-list .blog-item .tag-list {
  gap: 10px;
  margin-top: 18px;
}
#blog #blog-cnt .blog-list .blog-item .tag-list .tag-item span {
  color: #fff;
  padding: 3px 15px;
  background: #3085c3;
}
#blog #blog-cnt .blog-list .blog-item a {
  transition: 0.3s;
}
#blog #blog-cnt .blog-list .blog-item a:hover {
  padding-left: 10px;
}
#blog #blog-cnt .blog-list .blog-item a:hover .blog-ttl {
  padding-left: 10px;
}

#detail-wrp {
  padding-bottom: 150px;
}
#detail-wrp .blog-tag-list {
  gap: 8px;
  margin-bottom: 15px;
}
#detail-wrp .blog-tag-list .blog-tag-item span {
  color: #fff;
  padding: 3px 15px;
  background: #3085c3;
}
#detail-wrp .blog-ttl {
  margin-bottom: 10px;
}
#detail-wrp .blog-time {
  color: #3085c3;
  text-align: right;
}
#detail-wrp .txt {
  margin-top: 20px;
}

.page-btn {
  margin-top: 120px;
  position: relative;
}
.page-btn .left {
  left: 0;
  position: absolute;
  font-weight: 600;
}
.page-btn .text-c {
  text-align: center;
}
.page-btn .right {
  right: 0;
  position: absolute;
  font-weight: 600;
}
.page-btn a {
  transition: 0.3s;
}
.page-btn a:hover {
  color: #3085c3;
}

/*----------------------------------------------------*/
/*                       complete                     */
/*----------------------------------------------------*/
#complete .complete-box {
  padding-bottom: 150px;
  margin-top: 30px;
  text-align: center;
}

/*----------------------------------------------------*/
/*                      privacy                       */
/*----------------------------------------------------*/
#privacy .privacy {
  padding-bottom: 150px;
}
#privacy .privacy .privacy-box {
  margin-top: 50px;
}
#privacy .privacy .privacy-box p {
  margin-top: 15px;
}
#privacy .privacy .privacy-box .ttl04 {
  color: #3085c3;
  padding-bottom: 10px;
  border-bottom: 2px solid #3085c3;
}

/*----------------------------------------------------*/
/*                       sitemap                      */
/*----------------------------------------------------*/
#site .content-u {
  padding-bottom: 150px;
}
#site .content-u ul {
  width: 810px;
  margin: 45px auto 0;
}
#site .content-u ul li:nth-child(n+2) {
  border-top: 2px dotted #3085c3;
  margin-top: 15px;
  padding-top: 15px;
}
#site .content-u ul li a {
  font-size: 20px;
  padding-left: 20px;
  position: relative;
  transition: 0.3s;
}
#site .content-u ul li a::before {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid #3085c3;
  border-right: 1px solid #3085c3;
  position: absolute;
  top: 50%;
  left: 0;
  transform: rotate(45deg) translateY(-50%);
}
#site .content-u ul li a:hover {
  padding-left: 25px;
}

/*----------------------------------------------------*/
/*                        404                         */
/*----------------------------------------------------*/
#notfound .item-box {
  text-align: center;
  padding-bottom: 150px;
}
#notfound .not-found-txt {
  margin-top: 30px;
}/*# sourceMappingURL=style.css.map */