@import "https://use.fontawesome.com/releases/v5.13.0/css/all.css";

*,*:before,*:after {-webkit-box-sizing: inherit;box-sizing: inherit;}
html {-webkit-box-sizing: border-box;box-sizing: border-box;font-size: 62.5%;}
body{margin:0;padding:0;position:relative;}
h1{color:#2f4f4f;}
h2{font-size: 60px;letter-spacing:2px;margin:0;color:#333;text-shadow: 2px 2px 0px #fff;text-align:center;padding: 0 5px;}
.noto-serif-jp-font {font-family: "Noto Serif JP", serif;font-optical-sizing: auto;font-weight: 400;font-style: normal;}

.hcw{width:100%;max-width:980px;padding:20px 0;margin:0 auto;}
.hcw:after{content:"";clear:both;display:block;}
.cw{width:100%;max-width:980px;padding:20px 0;margin:0 auto;}
.cw:after{content:"";clear:both;display:block;}
.header_wrap{text-align:left;border-bottom:1px solid #efefef;padding-left: 15px;background:rgba(255,255,255,.95);width: 100%;z-index:3;}
.header_wrap.header_fix{position:fixed;}
.header_wrap h1{margin:0;display: inline-block;font-size: 30px;}
#header_line{margin:0;font-size: 16px;color:#2f4f4f;}
#main_wrap{padding:0;}
#top_wrap{background: url("../img/top_bg.jpg") no-repeat;background-size: 2000px; background-position: center;padding:10px 0 40px;}
#free_dial_wrap{background: #fff;border: 2px solid #eee;/*border-radius: 3px;*/padding: 0;max-width:640px;float:left;}
#free_dial_wrap:after{content:"";clear:both;display:block;width:1px;height:1px;}
#free_dial_wrap img{width:100%;max-width:980px;}
#free_dial_link{display: block;margin:10px;}
#free_dial_title{background: #2f4f4f;font-size: 24px;color: #fff;text-align: center;font-weight: bold;letter-spacing: 2px;padding: 10px;margin: 0;}
#line_qr_wrap{width:100%;height:auto;float:right;max-width: 340px; color: #fff;border-top: 2px solid #fff;}
#line_qr_title{font-size:24px;text-align:center;font-weight: bold;letter-spacing: 2px; padding: 10px; margin: 0;}
#line_qr_area{background:#fff;width:200px;margin:0 auto;padding:5px;text-align:center;border-radius: 10px;}
#line_qr_msg{font-size:16px;text-align:center;font-weight: bold;margin:10px 0;}
#line_qr_img{width:100%;max-width:120px;margin:5px auto 10px;display:block;}
.line_bg{background: #06c755;}

.gray_back {background:rgba(47,79,79,0.1);padding: 50px 0;}
.gray_label {background: #aaa;color: #fff;font-size: 12px;padding: 0 10px 5px;font-weight: normal;margin-left: 10px;}

.h4_ttl_center {font-weight: bold;width: fit-content;margin: 0 auto;text-align: center;position: relative;padding: 50px 3em;font-size: 35px;letter-spacing: 2px;text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;}
.h4_ttl_center:before, .h4_ttl_center::after {content: '';background: #4c9ac0;width: 2em;height: 3px;position: absolute;top: 50%;transform: translateY(-50%);-webkit-transform: translateY(-50%);-ms-transform: translateY(-50%);}
.h4_ttl_center:after {right: 0;}
.h4_ttl_center:before {left: 0;}

#top_list_wrap ul{font-size: 30px;padding-left: 10px;margin:50px 0;}
#top_list_wrap ul li{margin-bottom: 25px;text-shadow: 0 0 10px #fff;text-shadow: 2px 2px 0px #fff;background: url("../img/icon_check.png") left 0px top 2px no-repeat;background-size: 45px auto;padding-left: 50px;list-style: none;letter-spacing: 1px;}
#top_list_wrap ul li span{background:linear-gradient(transparent 80%, rgba(255, 240, 150) 80%);font-weight: 600;color: #333;}
.content_wrap{width:100%;max-width:980px;margin:0 auto;/*padding:5px;*/}
.caution_line{font-size:60%;}
.caution_wrap p{margin:0;}

.heading_title {position: relative;padding-top: 50px;padding-bottom: 50px;font-size: 35px;text-align: center;letter-spacing: 2px;text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;margin: 50px auto 0;}
.heading_title span {position: relative;z-index: 2;}
.heading_title::before {content: attr(data-en);position: absolute;top: -10%;left: 50%;transform: translateX(-50%);color: rgba(47,79,79,0.1);font-size: 80px;font-style: italic;z-index: -1;}
.heading_title::after {content: '▼';position: absolute;bottom: 0;left: 50%;color: rgba(47,79,79,0.1);}

.heading_title_white {position: relative;padding-top: 50px;padding-bottom: 50px;font-size: 35px;text-align: center;letter-spacing: 2px;/*text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;*/margin: 50px auto 0;z-index: 0;}
.heading_title_white span {position: relative;z-index: 2;}
.heading_title_white::before {content: attr(data-en);position: absolute;top: -10%;left: 50%;transform: translateX(-50%);color: #f9f9f9;font-size: 80px;font-style: italic;z-index: -1;}
.heading_title_white::after {content: '▼';position: absolute;bottom: 0;left: 50%;color: #f9f9f9;}

#service_wrap{margin-bottom:60px;}
.product_block{width:31.3%;margin:1%;background:#2f4f4f;color:#fff;float:left;text-align: center;padding: 35px;/*height: 200px;*/border-radius: 20px;text-decoration: none;}
.product_block i{font-size:60px;}
.product_name{font-size:21px;margin: 10px;}
.fa-angle-down{font-size:40px !important;font-weight:100 !important;}

.box {position: relative;padding: 1.5rem 1rem 0.6rem;border-radius: 10px;border: 1rem solid #535353;background-color: white;max-width: 640px;	margin: 0 auto;}
.box::after {position: absolute;top: -2rem;left: 50%;width: 60px;height: 30px;background-image: repeating-linear-gradient(-45deg, rgba(124, 249, 249, .5) 0 5px, transparent 5px 10px);border-left: 2px dashed rgba(0, 0, 0, .1);border-right: 2px dashed rgba(0, 0, 0, .1);box-shadow: 0 0 5px rgba(0, 0, 0, .2);padding: 0.25em 2em;color: #65513f;transform: translateX(-50%) rotate(-5deg);content: '';}
.box p {font-size:19px;background-image:linear-gradient(90deg, rgba(204, 204, 204, 0) 0%, rgba(204, 204, 204, 0) 50%, #fff 0%, #fff 100%), linear-gradient(180deg, rgba(204, 204, 204, 0) 0%, rgba(204, 204, 204, 0) 95%, #ccc 100%);background-size: 8px 100%,100% 2em;line-height: 2;margin: 20px;}

.box img{width: 80%;  margin: 15px auto;  display: block;}

#trouble_wrap{background: url("../img/trouble_bg.png") no-repeat;background-size:355px 300px;background-position: center bottom;padding-bottom: 50px;margin-bottom:50px;width:100%;}

#left_trouble_list{float:left;padding: 0;}
#right_trouble_list{float:right;padding: 0;}
#left_trouble_list li, #right_trouble_list li{background:rgba(255,255,255,.95);list-style: none;  margin: 30px 0;  padding: 15px 10px;  text-align: center;  border: 3px solid #333333;  border-radius: 10px;  font-size: 18px;}

.scroll { padding-top: 90px; position: relative; text-align: center;}
.scroll::before { animation: scroll 1.5s infinite; border-bottom: 2px solid #000; border-left: 2px solid #000; content: ""; height: 40px; left: 0; margin: auto; position: absolute; right: 0; top: 0; width: 40px;}

#solutions_wrap{margin-top:60px;padding-bottom:50px;}
#trouble_bg02_img{width:100%;max-width:640px;margin:0 auto;display:block;}

#type_area{position:relative;}
.content_line{font-size:24px;text-align:center;line-height: 45px;}
.stamp{position: absolute;  bottom: -50px;  right: 20px;  width: 75px;visibility:hidden;}
.stamp_on{animation: stamp_anime 2s both;}

.textSplitLoad {display: none;}
.split {visibility: hidden;}

.qa-list{padding-bottom: 50px;}
.qa-list dl {position: relative;margin: 30px 0 0;cursor: pointer;border: 1px solid #DDD;font-size:18px;}
.qa-list dl:first-child {  margin-top: 0;}
.qa-list dl::after {position: absolute;top: 27px;right: 26px;display: block;width: 7px;height: 7px;margin: auto;content: '';transform: rotate(135deg);border-top: 2px solid #fff;border-right: 2px solid #fff;}
.qa-list .open::after {transform: rotate(-45deg);}
.qa-list dl dt {position: relative;margin: 0;padding: 20px 20px 20px 60px;font-weight: bold;background: #2f4f4f; color:#fff;}
.qa-list dl dt::before {font-size: 22px;line-height: 1;position: absolute;top: 20px;left: 20px;display: block;content: 'Q.';color: #fff;}
.qa-list dl dd::before {font-size: 22px;line-height: 1;position: absolute;left: 20px;display: block;content: 'A.';font-weight: bold;color: #f68276;}
.qa-list dl dd {position: relative;margin: 0;padding: 20px 20px 20px 60px;}
.qa-list dl dd p {margin: 30px 0 0;}
.qa-list dl dd p:first-child{margin-top: 0;}
.qa-list dl dd p b{background:linear-gradient(transparent 70%, rgba(255, 240, 150) 70%);}

.voice_wrap{float:left;width:44%;position:relative;border:5px solid #2f4f4f;margin:3%;background: #fff;}
.voice_icon{position: absolute;  top: -25px;  left: -20px;  display: block;  width: 80px;  height: auto;  background: #fff;  border-radius: 40px;border: 5px solid #2f4f4f;}
.voice_title{background:#2f4f4f;font-size:21px;color:#fff;margin:0;padding: 0 0 5px 65px;}
.voice_line{padding: 10px 20px;  font-size: 16px;line-height: 26px;}

#manager_left{float:left;width:46%;margin:2%;}
#manager_left p{font-size:18px;text-align:center;line-height: 30px;}
#manager_thumbnail{width:200px;height:auto;margin:0 auto;display: block;}

#manager_table{float:right;width:46%;margin:2%;border-collapse: collapse;font-size:18px;}
#manager_table th, #manager_table td {border: 2px solid #fff;background-color: rgba(47,79,79,0.1);border-radius: 0 15px 15px 0;padding: 1em;}
#manager_table th {background-color: #2f4f4f;color: #fff;font-weight: bold;text-align: center;border-radius: 15px 0 0 15px;/*width: 20%;*/min-width: 4em;position: relative;}
#manager_table th::before {content: '';position: absolute;top: 50%;left: 100%;transform: translateY(-50%);border: 10px solid transparent;border-left: 10px solid #2f4f4f;z-index: 2;}
#manager_table th::after {content: '';position: absolute;top: 50%;left: calc(100% + 2px);transform: translateY(-50%);border: 12px solid transparent;border-left: 12px solid #fff;z-index: 1;}

.plan_table {border-collapse: collapse;table-layout: fixed;width: 100%;min-width: 700px;/*font-weight: bold;*/text-align: center;font-size:21px;margin: 50px 0;}
.plan_table thead th {padding: 1em .8em;border-right: 2px solid#fff;}
.plan_table td {color: #4d9bc1;padding: 1em;}
.plan_table thead th:not(:first-child) {background: #4d9bc1;color: #fff;/*font-size: 1.5rem;*/padding: 0.5em;}
.plan_table thead th:nth-child(3) {background-color: #f88400;position: relative;}
.plan_table thead th:nth-child(3)::before {content: '';width: 100%;height: 10px;position: absolute;background-color: #f88400;left: 0;bottom: 100%;}
.plan_table thead th:nth-child(3)::after {content: 'おすすめプラン';width: max-content;color: #f88400;font-size: 12px;padding: 0.3em 1em;background: #fff;border: 2px solid #f88400;border-radius: 100vh;position: absolute;top: -25px;left: 50%;transform: translateX(-50%);}
.plan_table tbody th, .plan_table tbody td {border: 2px solid #fff;}
.plan_table tbody th {background-color: #4d9bc1;color: #fff;}
.plan_table tbody td {background-color: #e6f1f6;}
.plan_table tbody td span {font-size: 16px;}
.plan_table td:nth-child(3) {color: #f88400;background: #fef1e3;}
.plan_table td:hover {transform: scale(1.05);outline: 2px solid #4d9bc1;}
.plan_table td:nth-child(3):hover {transform: scale(1.05);outline: 2px solid #f88400;}
.table_price{font-size:30px;font-style: italic;font-weight: bold;}

.flow_design {display: flex;justify-content: center;align-items: center;margin:50px 0 50px 20px;font-size: 18px;}
.flow_design ul {padding: 0;}
.flow_design li {list-style-type: none;}
.flow_design dt {font-size: 21px;}
.flow_design dd {margin-left: 0;}
.flow {position: relative;}
.flow::before {content: "";width: 15px;height: 100%;background: #fff;margin-left: -129px;display: block;position: absolute;top: 0;left: 120px;border-radius: 20px;}
.flow > li {position: relative;}
.flow > li:not(:last-child) {margin-bottom: 60px;}
.flow > li .icon {width: 2em;height: 2em;line-height: 2;text-align: center;font-weight: bold;border-radius: 100vh;color: #fff;background: #8EB83C;display: inline-block;margin-right: 0.3em;}
.flow > li dl {padding-left: 70px;position: relative;}
.flow > li dl::before,.flow > li dl::after {content: "";display: block;position: absolute;top: 15px;}
.flow > li dl::before {width: 7px;height: 7px;margin-top: -3px;background: #8EB83C;border-radius: 50%;left: -4px;}
.flow > li dl::after {width: 50px;border-bottom: 1px dashed #999;position: absolute;left: 5px;}
.flow > li dl dt {font-weight: 600;color: #8EB83C;margin-bottom: 0.5em;display: flex;align-items: center;}

footer{background-color: #2f4f4f;color:#fff;padding-bottom: 85px;/*margin-top:50px;*/}
#copy_right{text-align:center;font-size:21px;}

.fix_navi{position:fixed;bottom:-100px;left:0;width:100%;/*max-width:980px;*/padding:5px;margin:0 auto;opacity:0;transition: 0.5s;background:rgba(255,255,255,.8);z-index: 2;}
.fix_navi.navi_on{opacity:1;bottom:0;left:0;}
.fix_navi:after{content:"";clear:both;display:block;}

.contact-bg {/*background: #e4eeef;padding: 100px 0;margin: 100px auto 0;*/margin:0 auto;}
.contact-message {text-align: center;font-size: 14px;line-height: 2;margin-bottom: 50px;}
.message-notice {color: #c10811;font-size: 14px;}
.essential {background: #c10811;color: #fafafa;font-size: 12px;padding: 0 10px 5px;font-weight: normal;margin-left: 10px;}
.contact-area {background: #fafafa;padding: 90px;margin: 0 auto;width: 100%;}
.contact-table {width: 100%;}
.table-list {display: flex;justify-content: space-between;font-family: 'Noto Sans JP', sans-serif;letter-spacing: 0.05em;width: 100%;margin-bottom: 40px;}
.table-list th {font-size: 13px;font-weight: bold;width: 250px;text-align: right; padding: 10px;}
.table-list-address {flex-wrap: wrap;}
.table-list-address .input-area {margin-bottom: 10px;}
.input-area {font-family: 'Noto Sans JP', sans-serif;letter-spacing: 0.05em;padding: 0 10px;border: none;width: 550px;height: 40px;box-sizing: border-box;border: 1px solid #c4c4c4;}
.table-list td {font-size: 13px;width: calc(100% - 250px);}
input::placeholder {color: #bfbfbf;font-size: 12px;font-weight: bold;}
textarea {border: none;width: 550px;height: 200px;padding: 0;border: 1px solid #c4c4c4;resize: vertical; /* 横方向のみサイズを固定する */}
textarea::placeholder {color: #bfbfbf;font-size: 12px;}
input[type="text"] {-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;}
.contact-area .text {font-size: 13px;text-align: center;margin-bottom: 100px;}
.contact-area .text a {color: #000;border-bottom: 1px solid #000;transition: all .3s;text-decoration: none;}
.contact-area .text a:hover {border-bottom: 1px solid #777;padding-bottom: 5px;color: #777;}
.submit-button {box-sizing: border-box;position: relative;display: block;margin: 30px auto 0;background-color: #e4eeef;cursor: pointer;border: 1px solid #e4eeef;color: #000;text-align: center;text-decoration: none;line-height: 1.5;outline: none;-webkit-transition: all .3s;transition: all .5s;padding: 20px 50px;}
.submit-button:hover {background: #cae1e3;color: #000;border: 1px solid #cae1e3;}

#privacy_wrap{width:100%;max-width:640px;margin: 50px auto 0;}
#privacy_title{font-size: 16px;}
#privacy_policy{font-size: 12px;  width: 100%;  height: 150px;  padding: 10px;}

.service_cate_line{text-align:right;padding:0 10px;}
.service_cate{background:#2f4f4f;color:#fff;padding:5px;font-size:12px;margin:5px 0 0 5px;border-radius:5px;display: inline-block;}






/*===========
inview
===========*/

.fadeIn_left {opacity: 0;transform: translate(-50%, 0);transition: 1s;}
.fadeIn_left.is-show {transform: translate(0, 0);opacity: 1;}
.fadeIn_right {opacity: 0;transform: translate(50%, 0);transition: 1s;}
.fadeIn_right.is-show {transform: translate(0, 0);opacity: 1;}
.invd01{transition-delay: .1s;}
.invd02{transition-delay: .2s;}
.invd03{transition-delay: .3s;}
.invd04{transition-delay: .4s;}
.invd05{transition-delay: .5s;}

/***********/
/* BTN_CSS */
/***********/
.btn,a.btn,button.btn {font-size: 1.6rem;font-weight: 700;line-height: 1.5;position: relative;display: inline-block;padding: 1rem 4rem;cursor: pointer;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-transition: all 0.3s;transition: all 0.3s;text-align: center;vertical-align: middle;text-decoration: none;letter-spacing: 0.1em;color: #212529;border-radius: 0.5rem;}
.btn-wrap {margin: 20px 0 10px;text-align: center;}
a.btn-c {font-size: 2.2rem;position: relative;padding: 0rem 1rem 1.5rem 2.5rem;color: #fff;background: #eb6100;-webkit-box-shadow: 0 5px 0 #d44114;box-shadow: 0 5px 0 #d25600;margin:0 auto;width: 100%; max-width: 500px;}
a.btn-c span {font-size: 1.5rem;position: absolute;top: -1.25rem;left: calc(50% - 150px);display: block;width: 300px;padding: 0.2rem 0;color: #d44114;border: 2px solid #d44114;border-radius: 100vh;background: #fff;-webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);animation: floating-y 1s ease-in-out infinite alternate-reverse;}
a.btn-c span:before,a.btn-c span:after {position: absolute;left: calc(50% - 10px);content: "";}
a.btn-c span:before {bottom: -10px;border-width: 10px 10px 0 10px;border-style: solid;border-color: #d44114 transparent transparent transparent;}
a.btn-c span:after {bottom: -7px;border-width: 10px 10px 0 10px;border-style: solid;border-color: #fff transparent transparent transparent;}
a.btn-c i {margin-right: 1rem;}
a.btn-c:hover {-webkit-transform: translate(0, 3px);transform: translate(0, 3px);color: #fff;background: #eb6100;-webkit-box-shadow: 0 2px 0 #d44114;box-shadow: 0 2px 0 #d25600;}

.btn-wrap-pc-sp {display: -webkit-box;display: -ms-flexbox;display: flex;max-width: 435px;margin: 0 auto;-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
a.btn-pc-sp {line-height: 1.4;width: 49.5%;padding: 1.25rem 0;color: #ffff;}
a.btn-pc-sp--contact {color: #fff;background: #eb6100;}
a.btn-pc-sp--tel {color: #fff;background: #094;}
.fa-position-right {position: absolute;top: calc(50% - 0.5em);right: 1rem;}
a.btn-pc-sp {width: 49.5%;padding-right: 1.5rem;color: #ffff;}
a.btn-pc-sp--contact {color: #fff;}
a.btn-pc-sp--contact.btn-pc-sp--2 {border-bottom: 5px solid #d25600;background: #eb6100;}
a.btn-pc-sp--tel.btn-pc-sp--2 {border-bottom: 5px solid #008039;background: #094;}
a.btn-pc-sp .number {font-size: 1.4rem;letter-spacing: 0.05em;}

/***********/
/* BTN_CSS */
/***********/

.marker,.top_marker {background:linear-gradient(transparent 75%, rgba(255, 150, 0) 75%); display: inline; background-repeat: no-repeat; background-size: 0% 100%; transition:background-size 1.5s;}
.marker.on,.top_marker.on { background-size: 100% 100%;}

@keyframes floating-y {
  0% {
    transform: translateY(-10%);
  }
  100% {
    transform: translateY(10%);
  }
}
@keyframes scroll {
	0% { opacity: 0;  transform: rotate(-45deg) translate(0, 0); }
	40% { opacity: 1; }
	80% { opacity: 0;  transform: rotate(-45deg) translate(-20px, 20px); }
	100% { opacity: 0; }
}
@keyframes stamp_anime {
  0% {
	visibility:visible;
	opacity: 0;
	transform:  rotate(-30deg) scale(2.5);
  }
  30% {
	visibility:visible;
	opacity: 0.8;
	transform:  rotate(5deg) scale(1.04);
  }
  100% {
	visibility:visible;
	opacity: 1.0;
	transform: rotate(0deg);
  }
}


@media(max-width:1200px) {
	.contact-area {width: 90%;padding: 60px;}
}
@media(max-width:1024px) {
	.contact-area {padding: 50px 15px;}
	.table-list th {width: 180px;text-align:left;padding:0;}
	.table-list td {width: 100%;}
	.input-area {width: 500px;height: 40px;}
	textarea {width: 500px;height: 200px;}
	.contact-message {margin-bottom: 30px;}
	.contact-area .text {margin-bottom: 30px;}
}
@media screen and (max-width: 980px) {
	#free_dial_wrap{max-width: 750px;float: unset;margin: 10px auto 0;}
	.line_bg{background:unset;}
	#line_qr_wrap{display:none;}
	.qa-list dl{margin: 30px auto 0;width: 95%;}
	#manager_left{float: unset;width: 96%;}
	#manager_left p{font-size: 20px;  text-align: center;  line-height: 32px;}
	#manager_table{float: unset;  width: 96%;  margin: 2% auto;max-width: 640px;}
}
@media screen and (max-width: 900px) {
	#left_trouble_list, #right_trouble_list{float: unset;width: 95%;  max-width: 640px;  margin: 0 auto;}
	#trouble_wrap{padding-bottom: 300px;}
	.content_line{font-size: 18px;line-height: 40px;}
	.product_name{font-size: 18px;}
	.fa-angle-down{font-size: 25px !important;}
	.fadeIn_left, .fadeIn_right {opacity: 0;transform: translate(0, 0);}
	.fadeIn_left.is-show, .fadeIn_right.is-show {opacity: 1;}
}
@media(max-width:834px) {
//	.contact-bg {margin: 50px auto 0;padding: 50px 0;}
	.contact-area {margin: 30px auto;padding: 30px 20px;}
	.check-box label {width: 100%;}
	.input-area {width: 100%;height: 30px;}
	textarea {width: 100%;height: 150px;}
	.table-list {flex-wrap: wrap;margin-bottom: 20px;}
	.table-list th {font-size: 12px;width: 200px;margin-bottom: 10px;}
	.table-list td {font-size: 12px;}
	.table-list td {width: 100%;}
	.contact-message {font-size: 13px;}
	.contact-area .text {font-size: 13px;}
}
@media screen and (max-width: 787px) {
	h2{font-size: 50px;}
	#top_list_wrap ul{font-size: 25px;margin: 30px 0;  padding-left: 30px;}
	#top_list_wrap ul li{background-size: 35px auto;padding-left: 40px;}
	.caution_wrap p{margin: 0 0 0 20px;}
	.table-scroll {overflow-x: auto;}
}

@media screen and (max-width: 767px) {
	.qa-list dl {margin: 10px auto 0;}
	.qa-list dl:after {top: 20px;right: 20px;width: 7px;height: 7px;}
	.qa-list dl dt {padding: 16px 16px 16px 50px;font-size: 14px;}
	.qa-list dl dt::before {font-size: 14px;top: 20px;left: 20px;}
	.qa-list dl dd::before {font-size: 14px;left: 20px;margin-top: 5px;}
	.qa-list dl dd {margin: 0;padding: 16px 16px 16px 50px;font-size: 14px;}
	.qa-list dl dd p {margin: 30px 0 0;}
	.qa-list dl dd p:first-child{margin-top: 0;}
	.product_block{padding: 20px 10px;}
	.product_block i{font-size: 50px;}
	.product_name{font-size: 16px;margin: 5px 0;}
}

@media screen and (max-width: 640px) {
	h2{font-size: 40px;}
	#top_list_wrap ul{font-size: 20px;padding-left: 25px;}
	#top_list_wrap ul li{background-size: 25px auto; padding-left: 30px;}
	#top_wrap{background: url("../img/top_bg-sp.png") no-repeat;background-size: 100%;}
	.voice_wrap{float:unset;width:90%;margin: 10% 5%;}
	.box{width: 95%;}
	.box p{font-size: 16px;}
	.plan_table{margin: 50px 0 20px;font-size: 16px;table-layout: unset;min-width: 640px;}
	.table_price{font-size: 18px;}
	.gray_back{padding: 20px 0;}
	.content_wrap{width: 95%;}
	.flow_design{margin: 20px 30px;font-size: 16px;}
	.contact-message {text-align: left;}
}

@media screen and (max-width: 500px) {
	.header_wrap h1{font-size: 21px;}
	#header_line{font-size: 14px;}
	h2{font-size: 26px;}
	#free_dial_title{font-size: 21px;}
	#top_list_wrap ul{font-size: 18px;}
	#top_list_wrap ul li{margin-bottom: 10px;background-size: 25px auto;padding-left: 30px;}
	.product_name{font-size: 14px;}
	.heading_title, .heading_title_white{padding-top: 30px;padding-bottom: 40px; font-size: 24px;}
	.heading_title::before, .heading_title_white::before{font-size: 50px;}
	.h4_ttl_center{font-size: 24px;padding: 30px 3em;}
	.content_line{font-size: 14px; line-height: 30px;}
	.contact-area .text {text-align: left;}
}

@media screen and (max-width: 425px) {
	.header_wrap h1{font-size: 18px;}
	#header_line{font-size: 12px;}
	.hcw{padding: 10px 0;}
	#top_wrap{padding: 0px 0 25px;}
	#top_list_wrap ul{font-size: 16px;padding-left: 15px;margin: 20px 0;}
	#top_list_wrap ul li{background-size: 20px auto;}
	a.btn-c{font-size: 2rem;}
	.heading_title::before, .heading_title_white::before{font-size: 40px;}
	.heading_title, .heading_title_white{font-size: 21px;}
	#left_trouble_list li, #right_trouble_list li{font-size: 14px;}
	.content_line {font-size: 16px; line-height: 35px; width: 90%; margin: 0 auto;}
	.content_line br {display: none;}
	.product_block{padding:15px 5px;}
	.product_block i{font-size: 30px;}
	.fa-angle-down{font-size: 20px !important;}
	.plan_table{font-size: 14px;min-width: 560px;}
	.voice_title{font-size: 16px;font-weight: bold;}
	#manager_left p{font-size: 16px;line-height: 30px;}
	#manager_table{font-size: 16px;}
	#copy_right{font-size: 12px;}
	#privacy_title{font-size: 12px;}
}

@media(max-width:320px) {
	.input-area {width: 100%;}
	textarea {width: 100%;}
}
