@charset "utf-8";
@media screen and (max-width: 768px) {
body {
	min-width: 320px;
}
.pc {
	display: none;
}
.main_contents p,
.main_contents li,
.main_contents a {
	font-size: 3.4vw;
	line-height: 1.5;
}
 
/* ========================================================================
	header
======================================================================== */
  img {
    width: 100%;
  }
  .nav {
    width: 100%;
    z-index: 999;
    background: #fff;
  }
  .fixed {
    position: fixed;
    top: 0px;
    left: 0;
    border-top: 2px solid #dc0000;
    width: 100%;
  }
  header {
    border-top: 4px solid #dc0000;
    z-index: 100;
  }
  header .inner {
    position: relative;
    width: 100% !important;
  }
  header .inner::before {
    content: "";
    display: block;
    height: 15vw
  }
  header h1 {
	  font-size: 2.4vw;
	  position: absolute;
	  top: 4%;
	  left: 2%;
  }
  header .logo {
    padding: 0 0 0 5px;
    width: 30%;
    position: absolute;
    left: 1%;
    top: 34%;
  }
  header p.service {
    display: none;
  }
  .header_tel_sp {
	display: block;
    width: 46%;
    position: absolute;
    left: 33%;
    top: 40%;
  }
  .header_tel_pc {
	display: none;
  }
  /* ----------------------------------------
	nav
---------------------------------------- */
  #menu .dl-trigger {
    position: absolute;
    top: 0.3%;
    right: 0;
    cursor: pointer;
  }
  #menu .dl-trigger img {
    height: 15vw;
  }
  .global-nav {
    position: fixed;
    right: -100%; /* これで隠れる */
    top: calc(15vw + 4px);
    width: 71vw; /* スマホに収まるくらい */
    height: 100vh;
    background-color: #fff;
    transition: all .6s;
    z-index: 200;
    overflow-y: auto; /* メニューが多くなったらスクロールできるように */
    font-size: 3.5vw;
  }
  .hamburger {
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
    z-index: 300;
  }
  .hamburger img {
    height: 15vw;
    width: auto;
  }
  .nav-open .hamburger {
    position: fixed;
    top: 4px;
  }
  .global-nav__list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .global-nav .menu_ttl {
    background: #e3e3e3;
    padding: 5%;
    font-weight: bold;
    border-bottom: 2px solid #cbc7c4;
  }
  .global-nav__item a {
    display: block;
    padding: 5% 5% 5% 14%;
    background: url(../img/common/icon_nav.png) no-repeat 5% 50%;
    background-size: 6%;
    border-bottom: 2px solid #cbc7c4;
    text-decoration: none;
    color: #111;
  }
  .global-nav__item a:hover {
    background-color: #eee;
  }
  .black-bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 100;
    background-color: #000;
    opacity: 0;
    visibility: hidden;
  }
  /* 表示された時用のCSS */
  .nav-open .global-nav {
    right: 0;
    top: calc(15vw + 4px);
  }
  .nav-open .black-bg {
    opacity: .8;
    visibility: visible;
    border-top: 4px solid #dc0000;
  }
  header p#js-black-bg {
    display: none;
  }
  /*----×のclose-----*/
  .nav-open header p#js-black-bg {
    display: block;
    position: fixed;
    right: 76vw;
    top: 13%;
    z-index: 101;
    cursor: pointer;
    width: 6vw;
  }
  /*------CV  ---------------*/
  .cv .btn_area {
    position: relative;
  }
  .cv .btn_area .btn {
    width: 85%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 20%;
  }
  .cv .text {
    position: absolute;
    left: 17%;
    bottom: 37.5%;
    color: #fff;
    font-weight: bold;
    font-size: 3.4vw;
  }
  /*=====SP key==============*/
  section.key .inner {
    position: relative;
  }
  section.key .inner .text {
    position: absolute;
    font-weight: bold;
    font-size: 4vw;
    line-height: 1.2;
    top: 3%;
    left: 2%;
  }
  /*===========================
section.media
==========================*/
  /* list
---------------------------------------- */
  .media .list {
    width: 96%;
    padding: 0.3em;
    border: 0.2em solid #d8d8d8;
    margin: 0.8em auto 1.5em auto;
    display: flex;
    justify-content: space-between;
  }
  .media .list ul.sp {
    display: flex;
    flex-wrap: wrap;
    padding: 0 2px 0 0;
  }
  .media .list ul li {
    padding: 0 0 0 1em;
    background: url("../img/top/bg_list.gif") no-repeat 0px 0.8em;
    font-size: 2vw;
    font-weight: bold;
    line-height: 2;
    background-size: 0.5em;
    letter-spacing: -1px;
  }
  .list ul li:nth-child(1), .list ul li:nth-child(3), .list ul li:nth-child(5), .list ul li:nth-child(7), .list ul li:nth-child(9), .list ul li:nth-child(11), .list ul li:nth-child(13) {
    width: 59%;
  }
  .list ul li:nth-child(2), .list ul li:nth-child(4), .list ul li:nth-child(6), .list ul li:nth-child(8), .list ul li:nth-child(10), .list ul li:nth-child(12), .list ul li:nth-child(14) {
    width: 41%;
  }
  .list ul li:nth-child(15) {
    width: 100%;
  }
}
/*=========================================*/
@media screen and (max-width: 374px) {
  .media .list ul.sp {
    display: block;
  }
  .media .list ul li {
    font-size: 3vw;
    width: 100% !important;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 768px) {
  .media p.postscript {
    line-height: 1.8;
    margin: 1em 0 2.5em 0;
    font-size: 2.9vw;
    padding: 0 1em;
  }
  .media p.postscript span {
    display: block;
    margin-top: 0.5em;
    margin-left: 0.5em;
  }
  .flow ul {
    display: flex;
    flex-wrap: wrap;
  }
  .flow ul li {
    width: 50%;
    position: relative;
  }
  .flow ul li .text {
    position: absolute;
    font-size: 2.9vw;
    line-height: 1.3;
    font-weight: bold;
  }
  .flow ul li:nth-child(odd) .text {
    left: 15.5%;
    bottom: 11%;
  }
  .flow ul li:nth-child(even) .text {
    left: 9%;
    bottom: 11%;
  }
  /*===========================
section.three_reasons
==========================*/
  section.three_reasons h2 {
    margin-bottom: 5%;
  }
  section.three_reasons .flex {
    display: flex;
    justify-content: space-between;
  }
  section.three_reasons .box ul li {
    margin: 0 auto 6% auto;
    background: #ffffff;
    border: 0.8vw solid #af4949;
    width: 94%;
  }
  section.three_reasons li .left {
    width: 53%
  }
  section.three_reasons li:first-child .left h3 {
    width: 112%
  }
  section.three_reasons li .image {
    width: 44%
  }
  section.three_reasons .box ul li p.text {
    font-size: 3.2vw;
    font-weight: bold;
    padding: 1em;
    line-height: 1.5;
  }
  section.three_reasons .box ul li p.lead {
    display: inline-block;
    padding: 0.3em 0.5em;
    border: 2px solid #ae0000;
    font-size: 4.3vw;
    font-weight: bold;
    color: #ae0000;
    margin: 0 0 1em 1em;
    line-height: 1.2;
  }
  section.three_reasons .box ul li:nth-child(2) p.lead {
    font-size: 4vw;
  }
  /*===============FAQ==============================*/
  section.faq {
    background: #f3f3f3;
    padding-bottom: 1.5em;
  }
  .accordion-container .accordion-title {
    position: relative;
    padding: 1.6em 2em 1.6em 5.2em;
    font-size: 3.8vw;
    font-weight: bold;
    cursor: pointer;
    background: url(../img/top/bg_question_close.jpg);
    background-size: 100%;
    background-repeat: no-repeat;
    margin-top: 1em;
    transition: 0.3s;
  }
  .accordion-container .accordion-title.open {
    display: block;
    padding: 1.5em 2em 1.5em 5.2em;
    background: url(../img/top/bg_question_open.jpg);
    background-repeat: no-repeat;
    background-size: 100%;
    transition: 0.3s;
  }
  .accordion-container .accordion-title.two_line {
    padding: 1em 2em 1.02em 5.2em;
    transition: 0.3s;
  }
  .accordion-container .accordion-title.two_line.open {
    padding: 1em 2em 0.9em 5.2em;
    background-size: 100%;
    transition: 0.3s;
  }
  .accordion-container .accordion-content {
    background: url(../img/top/bg_answer1.jpg), url(../img/top/bg_answer2.jpg);
    background-repeat: no-repeat, repeat-y;
    background-position: left 0, left 0;
    font-size: 3.5vw;
    font-weight: bold;
    background-size: 100%;
  }
  .accordion-container .accordion-content p {
    padding: 0.8em 1.2em 0.8em 1.8em;
  }
  .accordion-container .accordion-content::after {
    content: "";
    display: block;
    border-bottom: 1px solid #c51717;
    width: 94.6%;
    margin: 0 auto;
  }
  .accordion-container .accordion-content p {
    line-height: 1.5;
  }
  /*==SP section.trouble2===============*/
  section.trouble2 li {
    position: relative;
  }
  section.trouble2 li .text {
    position: absolute;
    width: 46%;
    font-size: 3.5vw;
    line-height: 1.3;
    font-weight: bold;
  }
  section.trouble2 li:first-child .text {
    right: 8.5%;
    bottom: 24%;
  }
  section.trouble2 li:nth-child(2) .text {
    right: 8.5%;
    bottom: 32%;
  }
  section.trouble2 li:last-child .text {
    right: 8.5%;
    bottom: 28%;
  }
  /*==SP  section.service======*/
  section.service .postscript {
    font-size: 63%;
    margin: 0.5em 0 5em 1.5em;
  }
  /*SP  section.area*/
  section.area .text1 {
    font-size: 2.5vw;
    font-weight: bold;
    line-height: 1.6;
    text-align: justify;
    padding: 0 1.5em 1.5em 1.5em;
    background: #d6eefa;
  }
  /*===========================
  section.about 
==========================*/
  section.about .text p {
    font-size: 3.5vw;
    padding: 0 1.5em 2em 1.5em;
    line-height: 1.8;
  }
  /*===========================
  section.call_center 
==========================*/
  section.call_center {
    padding-bottom: 2em;
    background: #f3f3f3;
  }
  section.call_center .now {
    background: #353434;
    padding: 2.5% 2.5% 2.5% 25%;
    position: relative;
    width: 94.8%;
    margin: 0 auto;
  }
  section.call_center .now img {
    position: absolute;
    bottom: 0;
    left: 5%;
    width: 18%;
  }
  section.call_center .now p {
    text-align: center;
    background: #fff;
    border-radius: 0.2em;
    padding: 0.5em;
    font-weight: bold;
    font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    font-size: 3.5vw;
  }
  section.call_center .now p span {
    color: #e20000;
    font-size: 3.7vw;
  }
  /*==SP section.payment===============*/
  section.payment h2, section.promise h2 {
    margin-bottom: 6%;
  }
  section.payment ul, section.promise ul {
    width: 90%;
    margin: 0 auto;
  }
  section.payment ul li, section.promise ul li {
    margin-bottom: 10%;
  }
  section.payment .flex, section.promise .flex {
    display: flex;
    justify-content: space-between;
  }
  section.payment .left, section.promise .left {
    width: 69%;
    padding-right: 0.7em;
  }
  section.payment .left .text, section.promise .left .text {
    line-height: 1.5;
    font-size: 3.2vw;
    font-weight: bold;
  }
  section.payment .left .postscript {
    font-weight: lighter;
    font-size: 60%;
    margin-top: 1em;
  }
  section.payment .img, section.promise .img {
    width: 54%;
  }
  section.payment h3, section.promise h3 {
    color: #414e77;
    font-weight: bold;
    margin: 0 0 0.8em 0em;
    padding-left: 2.5em;
    background: url(../img/top/icon_check.gif) no-repeat 0% 50%;
    font-size: 4.5vw;
  }
  section.promise h3.last {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
  }
  section.group_works .inner {
    background: url("../img/top/bg.jpg");
    padding: 6px;
  }
  /*==SP section.group_work===============*/
  section.group_works {
    padding-bottom: 12%;
    width: 94%;
    margin: 0 auto;
  }
  section.group_works .inner {
    background: url("../img/top/bg.jpg");
    padding: 1%;
  }
  section.group_works .text {
    background: #fff;
    padding: 0 1em 0.5em 1em;
    line-height: 1.5;
    font-size: 3.8vw;
  }
  /*=================================
  footer
  ===================================*/
  footer {
    background: #353535;
    position: relative;
  }
  footer .inner {
    width: 94%;
    margin: 0 auto;
    padding: 2em 0.5em;
  }
  footer .inner .pagetop a {
    display: block;
    padding: 1em 1em 1em 2.5em;
    background: url(../img/top/icon_triangle.gif) no-repeat 6% 50% #353535;
    color: #fff;
    border-radius: 6px 6px 0 0;
    font-size: 12px;
  }
  footer a {
    color: #fff;
    font-size: 3.73vw;
  }
  footer a span {
    text-decoration: underline;
  }
  footer ul {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto 5% auto;
  }
  footer ul li {
    flex-basis: 50%;
    margin-bottom: 1.5em;
  }
  footer ul li:last-child {
    width: 100%;
  }
	footer ul a {
		position: relative;
		padding: 0 0 0 10%;
	}
  footer ul li a::before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin: 0 8px 0 0;
	position: absolute;
	top: 31%;
	left: 0;
  }
  footer .copyright {
    color: #fff;
    text-align: center;
    font-size: 14px;
  }
  /*-----------------------------------
  .breadcrumb
  -----------------------------------*/
  .breadcrumb {
    width: 94%;
    margin: 0.7em auto 2em auto;
    font-size: 16px;
  }
  .breadcrumb ul {
    display: flex;
  }
  .breadcrumb ul li a {
    color: #00528c;
    border-bottom: 1px solid #00528c;
    padding: 0 0 0em 0;
  }
  .breadcrumb ul li::after {
    content: "＞";
    margin: 0 0.8em;
  }
  .breadcrumb ul li.current::after {
    content: "";
  }
  /* ======= SP  #fee  =========  */
  #fee .inner {
    width: 94%;
    margin: 0 auto;
  }
  #fee .key {
    background: url("../img/fee/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
  #fee .key .inner {
    width: 100%;
  }
	#fee .key p,
	#fee .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #fee .key p {
    font-size: 3.5vw;
    line-height: 1.2;
  }
  #fee .key .key_head {
    font-size: 8vw;
  }
  #fee .key .ttl_wrap {
    padding: 12% 0 10% 5%;
  }
  #fee .explain h2 {
    color: #252424;
    font-size: 6vw;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 0.5em 0;
  }
  #fee .explain h2 .red {
    color: #dd0505;
  }
  #fee .explain h2 .small {
    font-size: 80%;
  }
  #fee .explain .right p {
    width: 70%;
    margin: 1.5em auto 0;
  }
  #fee .kei .right, #fee .kogata .right, #fee .futu .right {
    width: 50%;
    margin: 1.5em auto;
  }
  #fee h3 {
    font-size: 6.93vw;
    color: #fff;
    font-weight: bold;
    font-style: italic;
    margin-bottom: 1em;
  }
  #fee .kei h3 {
    padding: 4% 0 4% 21%;
    background: url(../img/fee/icon_kei.png) no-repeat 3.5% 50% #dd0505;
    background-size: 13vw;
  }
  #fee .kogata h3 {
    padding: 4% 0 4% 23%;
    background: url(../img/fee/icon_kogata.png) no-repeat 3.5% 50% #dd0505;
    background-size: 15vw;
  }
  #fee .futu h3 {
    padding: 4% 0 4% 23%;
    background: url(../img/fee/icon_futsu.png) no-repeat 3.5% 50% #dd0505;
    background-size: 16vw;
  }
  #fee .kei h3 img {
    width: 40%;
  }
  #fee .kogata h3 img {
    width: 50%;
  }
  #fee .futu h3 img {
    width: 50%;
  }
  #fee .trip_fee {
    margin-bottom: 1em;
  }
  #fee .trip_fee .inner {
    border: 2px solid #dd0505;
  }
  #fee .trip_fee .inner h3 {
    color: #fff;
    background: #dd0505;
    text-align: center;
    font-weight: bold;
    padding: 0.3em;
    font-size: 6.5vw;
    font-style: normal;
	  margin: 0;
  }
  #fee .trip_fee .inner .left {
    padding: 1em;
  }
  #fee .trip_fee p {
    margin: 0em 0 1.5em 0;
  }
  #fee .trip_fee .right {
    width: 86%;
    margin: 0 auto 2em auto;
  }
  #fee .trip_fee li {
    padding-left: 1em;
    background: url(../img/top/bg_list.gif) no-repeat 0 0.5em;
    margin-bottom: 0.5em;
    line-height: 1.5;
  }
  /*  =======SP  #voice  =========  */
  #voice .inner {
    width: 94%;
    margin: 0 auto;
  }
  #voice .key .inner {
    width: 100%;
  }
  #voice .key {
    background: url("../img/voice/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
  #voice .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #voice .key .key_head {
    font-size: 8vw;
  }
  #voice .key .ttl_wrap {
    padding: 15% 0 13% 5%;
  }
  #voice h2 {
    text-align: center;
    font-size: 5.2vw;
    font-weight: bold;
    margin-bottom: 1.8em;
  }
  #voice h2 span {
    color: #dd0505;
  }
  #voice li.img_area {
    position: relative;
    margin-bottom: 2em;
  }
  #voice li.img_area.right .comment {
    position: absolute;
    left: 26%;
    top: 5%;
    font-size: 3.8vw;
    font-weight: bold;
    line-height: 1.3;
  }
  #voice li.img_area .comment span {
    color: #dd0505;
  }
  #voice li.img_area p.text span {
    color: #dd0505;
  }
  #voice li.img_area.left .comment {
    position: absolute;
    left: 4%;
    top: 5%;
    font-size: 3.8vw;
    font-weight: bold;
    line-height: 1.2;
  }
  #voice li.img_area.right p.text {
    margin-top: 1em;
  }
  #voice .cv {
    margin-bottom: 2em;
  }

  /*  =======SP  #open  =========  */
  #open .inner {
    width: 94%;
    margin: 0 auto;
  }
  #open .key .inner {
    width: 100%;
  }
  #open .key {
    background: url("../img/time/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
	#open .key p,
	#open .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #open .key p {
    font-size: 3.5vw;
    line-height: 1.2;
  }
  #open .key .key_head {
    font-size: 8vw;
  }
  #open .key .ttl_wrap {
    padding: 12% 0 10% 5%;
  }
  #open .top h2 {
    font-size: 6vw;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 0.5em 0;
  }
  #open .top h2 .red {
    color: #dd0505;
  }
  #open .top h2 .small {
    font-size: 80%;
  }
  #open .top .right {
    text-align: center;
    margin-top: 1em;
  }
  #open .top .right img {
    width: 60%
  }
	#open .case .case_box{
		border: 2px solid #e30606;
		padding: 5%;
		margin-bottom: 36px;
	}
  #open .case h3 {
	font-size: 5.86vw;
	font-weight: bold;
	margin: 0 0 5%;
	background-repeat: no-repeat;
	background-position: 0 0;
	  background-size: 70px;
  }
	#open .case h3 br{
		display: none;
  }
	#open .case .case_sttl01{
		background-image: url("../img/time/icon_case01.gif");
		padding: 0.2em 0 0.4em 3.6em;
	}
	#open .case .case_sttl02{
		background-image: url("../img/time/icon_case02.gif");
		padding:0.4em 0 0.4em 3.6em;
	}
	#open .case .case_sttl03{
		background-image: url("../img/time/icon_case03.gif");
		padding: 0.2em 0 0.2em 3.6em;
	}
	#open .case h3 span {
    color: #dd0505;
}
  #open .case p.text {
	font-size: 3.73vw;
	margin: 0 auto 5%;
  }

 /*=======SP #contact=====*/
 /* ----------------------------------------
	form
---------------------------------------- */
  #contact .inner {
    width: 94%;
    margin: 0 auto;
  }
  #contact .key .inner {
    width: 100%;
  }
  #contact .key {
    background: url("../img/contact/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
  #contact .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #contact .key .key_head {
    font-size: 8vw;
  }
  #contact .key .ttl_wrap {
    padding: 15% 0 13% 5%;
  }
  #contact table {
    margin: 0 0 0 0;
    background: #ececec;
  }
  #contact table th {
    display: block;
    padding: 4%;
    text-align: left;
    font-weight: bold;
  }
  #contact table th.middle {
    vertical-align: middle;
  }
  #contact table th span {
    margin: 0 0 0 5px;
    padding: 0 4px;
    background: #c90000;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    font-size: 83.3%;
    font-weight: normal;
    color: #ffffff;
    line-height: 14px;
  }
  #contact table td {
    display: block;
    padding: 1em;
    font-size: 92.3%;
    line-height: 1.4;
    border-bottom: 2px solid #fff;
  }
  #contact table td .agree_txt {
      display: block;
    padding: 0.8em 1em;
    border: 1px solid #abadb3;
    font-size: 80%;
    background: #fff;
   
  }
  #contact table td table {
    margin: 0;
  }
  #contact table td table th {
    padding: 0 0 4px 0;
    font-size: 100%;
    font-weight: normal;
  }
  #contact table td table td {
    padding: 0 0 10px 0;
    font-size: 100%;
    border-bottom: none;
  }
  #contact table td table tr:last-child td {
    padding: 0;
  }
#contact table td input[type="text"],
#contact table td input[type="email"] {
    width: 100%;
    padding: 0 10px;
}
#contact table td input.size {
	width: 100px;
}
#contact table td select {
	height: 25px;
}
#contact table td textarea {
	width: 100%;
	padding: 10px;
}
#contact table td input[type="checkbox"] {
	margin: -2px 10px 0 0;
}

/* ----------------------------------------
	btn
---------------------------------------- */
#contact .btn {
	text-align: center;
	margin: 7% 0 12% 0;
}
#contact .btn button,
#contact .submit-btn input[type=button]{
    width: 40%;
    margin: 0 6px 10px;
    background: -webkit-linear-gradient(top, #e2e2e2 0%, #c8c8c8 100%);
    background: -moz-linear-gradient(top, #e2e2e2 0%, #c8c8c8 100%);
    background: linear-gradient(to bottom, #e2e2e2 0%, #c8c8c8 100%);
    border: 1px solid #aaaaaa;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: 0px 1px 1px rgb(0 0 0 / 40%), inset 1px 1px 0px rgb(255 255 255 / 40%);
    -moz-box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4), inset 1px 1px 0px rgba(255, 255, 255, 0.4);
    box-shadow: 0px 1px 1px rgb(0 0 0 / 40%), inset 1px 1px 0px rgb(255 255 255 / 40%);
    font-size: 107.7%;
    font-weight: bold;
    padding: 0.5em;
  }
  #contact .btn button[type="submit"] {
    background: -webkit-linear-gradient(top, #db0000 0%, #c90000 100%);
    background: -moz-linear-gradient(top, #db0000 0%, #c90000 100%);
    background: linear-gradient(to bottom, #db0000 0%, #c90000 100%);
    border-color: #c90000;
    color: #ffffff;
  }
  #contact .btn button[type="submit"][disabled] {
	  cursor: default;
	  opacity: 0.5;
  }
  #contact .btn button span {
    padding: 0 0 0 4.5vw;
    background: url(../img/contact/icon_play.png) no-repeat left center;
    /* -webkit-background-size: 11px auto; */
    -moz-background-size: 11px auto;
    background-size: 16%;
    background-position: 1% 50%;
  }
  
#contact .main_contents.error{
    margin: 10% auto;
    width:94%;
  }
  #contact .main_contents.error h1{
    font-size:150%;
    margin: 1em 0;
  }
  #contact .main_contents.error #form{
    margin-top: 1.5em;
  }
  #contact .main_contents p.submit-btn{
	 display: flex;
	  justify-content: center;
    margin-top: 1.5em;
  }
    #contact .error table th{
    padding: 4% 4% 0 4%;
  }
   #contact .error table td{
	padding: 2% 2% 2% 4%;
  }
  
    #contact .main_contents.confirm{
    margin: 10% auto;
    width:94%;
  }
  #contact .main_contents.confirm h1{
    font-size:150%;
    margin: 1em 0;
  }
  #contact .main_contents.confirm #form{
    margin-top: 1.5em;
  }
  #contact .confirm table th{
    padding: 4% 4% 0 4%;
  }
   #contact .confirm table td{
  padding: 2% 2% 2% 4%;
  }
  

      /*------------------------------*/
  
    #contact .main_contents.end{
    margin: 10% auto;
    width:94%;
  }
  #contact .main_contents.end h1{
    font-size:150%;
    margin: 1em 0;
  }
  #contact .main_contents.end #form{
    margin-top: 1.5em;
  }
    #contact .end table th{
    padding: 4% 4% 0 4%;
  }
   #contact .end table td{
  padding: 2% 2% 2% 4%;
  }
  #contact .end #form p.end{
    margin-bottom: 1.5em;
  }
  

  
  
/* ----------------------------------------
	flow
---------------------------------------- */
#contact .step{
margin: 1em 0 ;
    padding: 1em 0 0px 0;
    border-top: 1px dotted #abadb3;
    display: flex;
}

#contact .step li{

	width:33.3%;
	background:url(../img/contact/flow.png) no-repeat center;
	background-size:90% auto;
	text-align:center;
	font-size:84.6%;
	line-height:30px;
}

#contact .step li.now{
	background-image:url(../img/contact/flow_current.png);
	font-weight:bold;
	color:#ffffff;
}

  
  
  /*===============================
  
  SP 出張地域 #area
  
  =================================*/
  #area .inner {
    width: 94%;
    margin: 0 auto;
  }
  #area .key .inner {
    width: 100%;
  }
  #area .key {
    background: url("../img/area/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
  #area .key .inner {
    width: 100%;
  }
	#area .key p,
	#area .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #area .key p {
    font-size: 3.5vw;
    line-height: 1.2;
  }
  #area .key .key_head{
    font-size: 8vw;
  }
  #area .key .ttl_wrap {
    padding: 12% 0 10% 5%;
  }
  #area .top h2 {
    font-size: 6vw;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 0.5em 0;
  }
  #area .top h2 .red {
    color: #dd0505;
  }
  #area .top h2 .small {
    font-size: 80%;
  }
  #area .top .img {
    width: 70%;
    margin: 5% auto;
  }
  #area .point li h3 {
    font-size: 6vw;
    font-weight: bold;
  }
  #area .point li h3 .red {
    color: #dc0505;
  }
	#area .point li {
		border: #dd0505 solid 2px;
		padding: 5%;
		margin: 0 0 8%;
}
  #area .point li:first-child h3 {
    padding: 3% 5% 3% 20%;
    background-image: url(../img/area/point1.png);
    background-position: left 0 top 57%;
    background-repeat: no-repeat;
    background-size: 18%;
  }
  #area .point li:nth-child(2) h3 {
    padding: 3% 5% 3% 20%;
    background-image: url(../img/area/point2.png);
    background-position: left 0 top 57%;
    background-repeat: no-repeat;
    background-size: 18%;
  }
  #area .point li:last-child h3 {
    padding: 3% 5% 3% 20%;
    background-image: url(../img/area/point3.png);
    background-position: left 0 top 57%;
    background-repeat: no-repeat;
    background-size: 18%;
  }
  #area .point .img {
    width: 100%;
    margin: 5% auto 0;
  }
  /*===============================
  
  SP プライバシー #privacy
  
  =================================*/
  #privacy .inner {
    width: 94%;
    margin: 0 auto;
  }
  #privacy .key .inner {
    width: 100%;
  }
  #privacy .key {
    background: url("../img/privacy/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
  #privacy .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #privacy .key .key_head {
    font-size: 7vw;
  }
  #privacy .key .ttl_wrap {
    padding: 11% 0 11% 5%;
  }
  
     #privacy dt{
    font-weight: bold;
    margin: 1.5em 0 0.5em 0;
  }
  #privacy .main_contents dt,
  #privacy .main_contents dd,
  #privacy .main_contents li,
  #privacy .main_contents .date{
    line-height: 1.5;
    font-size: 3.4vw;
  }
   #privacy dd.indent18{
     padding-left: 2em;
    text-indent: -2em;
    margin-bottom: 1.8em;
  }
  #privacy .main_contents ul{
    margin-top: 0.5em;
  }
  #privacy ul.pdl2{
    padding-left: 1em;
  }
  #privacy ul.pdl3{
    padding-left: 2em;
  }
  #privacy ul.pdl2 ul{
  padding-left: 1em;
  }
   #privacy ul.pdl3 ul{
  padding-left: 1em;
  }
  #privacy li.point{
    list-style-type: disc;
    padding-left: 0.5em;
    text-indent: 0em;
  }
  
  #privacy section.main_contents{
    margin-bottom: 7em;
  }
  /*===============================
  
  SP 会社概要 #company
  
  =================================*/
  #company .inner {
    width: 94%;
    margin: 0 auto;
  }
  #company .key .inner {
    width: 100%;
  }
  #company .key {
    background: url("../img/company/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
  #company .key .key_head{
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #company .key .key_head {
    font-size: 8vw;
  }
  #company .key .ttl_wrap {
    padding: 15% 0 13% 5%;
  }
  #company table {
    border: #919191 1px solid;
    margin-bottom: 30%;
    text-align: justify;
  }
  #company table th {
    background: #ececec;
    padding: 1em;
    display: block;
    border: none;
    font-size: 16px;
    text-align: center;
  }
  #company table td {
    padding-left: 1.3em;
    line-height: 1.3;
    display: block;
    padding: 1em;
    border: none;
    font-size: 16px;
  }
  /*===============================
  
  SP 特商法 #transaction
  
  =================================*/
  #transaction .inner {
    width: 94%;
    margin: 0 auto;
  }
  #transaction .key .inner {
    width: 100%;
  }
  #transaction .key {
    background: url("../img/transaction/bg_key_sp.jpg") no-repeat;
    background-size: 100%;
  }
  #transaction .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #transaction .key .key_head {
    font-size: 7vw;
  }
  #transaction .key .ttl_wrap {
    padding: 12% 0 12% 5%;
  }
  #transaction table {
    border: #919191 1px solid;
    margin-bottom: 30%;
    text-align: justify;
  }
  #transaction table th {
    width: 100%;
    display: block;
    background: #ececec;
    padding: 1em;
    border: none;
    font-size: 16px;
    text-align: center;
  }
  #transaction table td {
    display: block;
    padding: 1em;
    line-height: 1.5;
    border: none;
    font-size: 16px;
  }
  #transaction .price_top {
    margin-bottom: 1em;
  }
  #transaction li span.list_style {
    padding-left: 1.3em;
    background: url("../img/transaction/icon_circle.png") 0 50% no-repeat;
  }
  #transaction table p {
    font-size: 16px;
  }
  #transaction table li {
    margin-bottom: 0.5em;
    font-size: 16px;
  }
  #transaction .indent {
    padding-left: 1em;
    text-indent: -1em;
  }
  #transaction li .pdl1 {
    padding-left: 0.5em;
  }
  #transaction table a {
    color: #00528c;
    text-decoration: underline;
    font-size: 16px;
  }
  #transaction table td.pdb {
    padding-bottom: 1.5em;
  }
  #transaction table td.pdt {
    padding-top: 1.5em;
  }
  #transaction .cancel li {
    padding-left: 1.3em;
    background: url("../img/transaction/icon_circle.png") 0 0.5em no-repeat;
    line-height: 1.5;
  }
}
@media screen and (min-width: 769px) {
  /* ========================================================================
	layout
======================================================================== */
  .sp {
    display: none;
  }
  section p {
    line-height: 1.8;
  }
  body {
    background: #fff;
    min-width: 1080px
  }
  section {
    max-width: 1600px;
    margin: 0 auto;
    width: 100%;
  }
  .main_contents .inner, footer .inner {
    width: 1000px;
    margin: 0 auto;
    position: relative;
  }
  /* ========================================================================
	header
======================================================================== */
  header {
    background: url(../img/common/bg_header.png) no-repeat center top;
    border-top: 3px solid #dc0000;
    border-bottom: 2px solid #a0a1a3;
  }
  header .inner {
    width: 1080px;
    margin: 0 auto;
    position: relative;
    background-position: 95% 100%;
  
  }
  header h1 {
    padding: 6px 0 10px;
    font-size: 11px;
  }
  header .logo {
    width: 268px;
  }
  header p.service {
    position: absolute;
    top: 26px;
    left: 280px;
  }
  header p.tel {
    position: absolute;
    top: 30px;
    left: 625px;
  }
  .telfree {
    display: none;
  }
  header p.service {
    position: absolute;
    top: 26px;
    left: 290px;
  }
  .header_tel_sp {
	display: none;
  }
  .header_tel_pc {
	display: block;
	position: absolute;
	top: 32px;
	left: 631px;
	z-index: 1;
  }
  
  #top header{
    padding-bottom: 33px;
  }
  /* ----------------------------------------
	nav
---------------------------------------- */
  #top header nav{
	  display: none;
  }
  header nav{
    background: url("../img/common/bg_nav.jpg") repeat-x;
      margin-top: 33px;
     border-top: 2px solid #c4c4c4;
  }
  ul.global-nav__list {
    width:1080px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
   
  }
  ul.global-nav__list li {
    width: 14.2%;
    text-align: center;
  }
  ul.global-nav__list a {
    padding: 20px 0;
    display: block;
    font-size:17px;
  }
  ul.global-nav__list a:hover {
    text-decoration: none;
  }
  ul.global-nav__list li a {
 background: url(../img/common/nav_line.jpg) right 0% top 50% no-repeat;
    font-weight: bold;
  }
  ul.global-nav__list li:first-child a {
    background: url(../img/common/nav_line.jpg), url(../img/common/nav_line.jpg) ;
    background-repeat: no-repeat;
background-position: left 0% top 50%,right 0% top 50%;
  }
  /*-----------------------------------
  .breadcrumb
  -----------------------------------*/
  .breadcrumb {
    width: 1000px;
    margin: 0.7em auto 80px auto;
    font-size: 16px;
  }
  .breadcrumb ul {
    display: flex;
  }
  .breadcrumb ul li a {
    color: #00528c;
    border-bottom: 1px solid #00528c;
    padding: 0 0 0em 0;
  }
  .breadcrumb ul li::after {
    content: "＞";
    margin: 0 0.8em;
  }
  .breadcrumb ul li.current::after {
    content: "";
  }
  /*===========================
section.key
  ==========================*/
  section.key {
    background: url("../img/top/bg_key.jpg") center top no-repeat;
    margin-bottom: 7px;
  }
  section.key .inner {
    width: 1080px;
    margin: 0 auto;
    position: relative;
  }
  section.key .inner .text {
    position: absolute;
    font-weight: bold;
    font-size: 36px;
    line-height: 1.2;
    top: 30px;
    left: 30px;
  }
  /*===========================
section.cv
  ==========================*/
  section.cv {
    padding: 17px 0 88px 0;
    position: relative;
  }
  .cv .text {
    position: absolute;
    left: 265px;
    bottom: 127px;
    font-weight: bold;
    font-size: 26px;
  }
  /*===========================
section.trouble
  ==========================*/
  section.trouble h2 {
    margin-bottom: 50px;
  }
  section.trouble {
    background: url("../img/top/bg_trouble_ttl.jpg") center top no-repeat #f2f1f1;
  }
  section.trouble ul {
    display: flex;
    justify-content: space-between;
  }
  section.trouble {
    margin-bottom: 0px;
  }
  /*===========================
section.media
==========================*/
  section.media h2 {
    margin-bottom: 47px;
  }
  /* list
---------------------------------------- */
  .media .list {
    padding: 25px;
    border: 6px solid #d8d8d8;
    margin: 48px 0 56px 0;
    display: flex;
    justify-content: space-between;
  }
  .media .list ul {
    padding: 0 2px 0 0;
  }
  .media .list ul li {
    padding: 0 0 0 16px;
    background: url("../img/top/bg_list.gif") no-repeat 3px center;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.933;
  }
  .media p.postscript {
    margin: 1em 0 5em 0;
    font-size: 13px;
  }
  .media p.postscript span {
    display: block;
    margin-top: 1em;
  }
  /*===========================
section.flow
==========================*/
  section.flow {
    background: url("../img/top/bg_flow.jpg") no-repeat center top;
    margin-bottom: 7px;
  }
  section.flow ul {
    display: flex;
    flex-wrap: wrap;
  }
  section.flow ul li {
    position: relative;
  }
  section.flow ul li p.text {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    position: absolute;
    top: 74%;
    left: 5%;
    line-height: 1.3;
    font-size: 17px;
    font-weight: bold;
  }
  section.flow ul li:nth-child(4) p.text, section.flow ul li:nth-child(5) p.text, section.flow ul li:nth-child(6) p.text {
    top: 72%;
  }

/*===========================
  section.three_reasons
==========================*/
	
  section.three_reasons {
    background: url("../img/top/bg_3reasons_ttl.jpg") top center no-repeat;
  }
  section.three_reasons ul.flex {
    display: flex;
  }
  section.three_reasons .box ul {
    padding: 37px 14px 14px 15px;
    border: 2px solid #ffffff;
  }
  section.three_reasons .box ul li {
    position: relative;
    margin: 0 0 40px 0;
    background: #ffffff;
    border: 4px solid #af4949;
    display: flex;
    justify-content: space-between;
  }
  section.three_reasons .box ul li .left {
    width: 520px;
  }
  section.three_reasons .box ul li p {
    padding: 0 0 0px 24px;
    font-size: 17px;
  }
  section.three_reasons .box ul li p.lead {
    display: inline-block;
    padding: 5px 16px 0 16px;
    border: 2px solid #ae0000;
    font-size: 32px;
    font-weight: bold;
    color: #ae0000;
    margin: 0 0 20px 24px;
    line-height: 1.5;
  }
  section.three_reasons .box ul li:nth-child(2) p.lead {
    font-size: 24px;
  }
  section.three_reasons .box ul li:nth-child(3) p.lead {
    font-size: 28px;
  }
  /*===========================
section.faq
==========================*/
  section.faq {
    background: #f3f3f3;
    padding-top: 20px;
  }
  section.faq ul {
    display: flex;
    flex-wrap: wrap;
  }
  section.faq ul li {
    position: relative;
  }
  section.faq ul li .text {
    position: absolute;
    font-size: 16px;
    width: 92%;
  }
  section.faq ul li:nth-child(odd) .text {
    left: 3.5%;
    top: 53%;
  }
  section.faq ul li:nth-child(even) .text {
    left: 6%;
    top: 53%;
  }
  section.faq ul li:nth-child(4) .text {
    left: 6%;
    top: 47%;
  }
  section.faq ul li:nth-child(7) .text {
    left: 4%;
    top: 43%;
  }
  section.faq ul li:nth-child(8) .text {
    left: 6%;
    top: 43%;
  }
  /*===========================
section.trouble2
  ==========================*/
  section.trouble2 {
    background: url("../img/top/bg_trouble2.jpg") center top no-repeat;
    padding-bottom: 72px;
  }
  section.trouble2 ul {
    display: flex;
  }
  section.trouble2 ul li {
    position: relative;
  }
  section.trouble2 ul li p.text {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    position: absolute;
    top: 76%;
    line-height: 1.5;
  }
  section.trouble2 ul li p {
    font-size: 20px;
  }
  section.trouble2 ul li:first-child p.text {
    width: 80%;
    left: 7%;
    top: 400px;
  }
  section.trouble2 ul li:nth-child(2) p.text {
    width: 80%;
    left: 6%;
    top: 396px;
  }
  section.trouble2 ul li:last-child p.text {
    width: 80%;
    left: 8%;
    top: 405px;
  }
  /*===========================
  section.service 
==========================*/
  section.service {
    padding: 83px 0 0 0;
    background: url("../img/top/bg_service.jpg") center bottom no-repeat;
  }
  section.service h2 {
    margin-bottom: 86px;
  }
  section.service .postscript_area {
    position: relative;
  }
  section.service .postscript {
    font-size: 13px;
    position: absolute;
    left: 0;
    bottom: 25px;
    line-height: 1.4;
  }
  /*===========================
  section.area 
==========================*/
  section.area {
    padding: 39px 0 0 0;
    background: url("../img/top/bg_area.jpg") top center;
  }
  section.area .text_area {
    position: relative;
  }
  section.area .text1 {
    position: absolute;
    left: 0;
    bottom: 264px;
    font-size: 16px;
  }
  section.area .text2 {
    width: 71%;
    position: absolute;
    left: 265px;
    bottom: 63px;
    font-size: 19px;
    text-align: justify;
  }
  /*===========================
section.about
  ==========================*/
  section.about {
    background: #f3f3f3;
  }
  section.about .key_head {
    margin-bottom: 22px;
  }
  section.about .flex {
    display: flex;
    justify-content: space-between;
    padding-bottom: 54px;
  }
  section.about .flex .text {
    width: 488px;
  }
  section.about .flex .img {
    width: 478px;
  }
  section.about p {
    color: #121212;
  }
  /*===========================
  section.call_center 
==========================*/
  section.call_center {
    padding-bottom: 50px;
    background: #f3f3f3;
  }
  section.call_center .now {
    background: #353434;
    padding: 15px 15px 15px 124px;
    position: relative;
  }
  section.call_center .now img {
    position: absolute;
    bottom: 0;
    left: 20px;
    width: 89px;
  }
  section.call_center .now p {
    background: #fff;
    border-radius: 10px;
    padding: 0.5em;
    font-weight: bold;
    font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"
  }
  section.call_center .now p span {
    color: #e20000;
  }
  /*===========================
section.payment  
 ==========================*/
  section.payment {
    padding-bottom: 60px;
    background: #f3f3f3;
  }
  section.payment .inner {
    padding: 0 54px 30px 54px;
    border: 2px solid #db0000;
    background: #fff;
  }
  section.payment h2 {
    background: #db0000;
    position: relative;
    width: 1000px;
    margin: 0 auto;
  }
  section.payment h2 .icon {
    position: absolute;
    left: 2%;
    top: -6%;
    width: 108px;
  }
  section.payment ul {
    display: flex;
    justify-content: space-between;
    padding-top: 50px;
  }
  section.payment li {
    width: 276px;
  }
  section.payment li .img {
    margin-bottom: 23px;
  }
  section.payment h3 {
    color: #414e77;
    font-weight: bold;
    margin-bottom: 23px;
    padding-left: 2.5em;
    background: url("../img/top/icon_check.gif") no-repeat 2% 50%;
  }
  section.payment li p.text {
    font-size: 14px;
    padding: 0 0.3em;
  }
  section.payment li p.postscript {
    font-size: 12px;
    margin-top: 3em;
  }
  /*===========================
section.promise  
 ==========================*/
  section.promise {
    padding-bottom: 60px;
    background: #f3f3f3;
  }
  section.promise .inner {
    padding: 0 54px 30px 54px;
    border: 2px solid #db0000;
    background: #fff;
  }
  section.promise h2 {
    background: #db0000;
    position: relative;
    width: 1000px;
    margin: 0 auto;
  }
  section.promise h2 .icon {
    position: absolute;
    left: 7%;
    top: -12%;
    width: 89px;
  }
  section.promise ul {
    display: flex;
    justify-content: space-between;
    padding-top: 50px;
  }
  section.promise li {
    width: 276px;
  }
  section.promise li .img {
    margin-bottom: 23px;
  }
  section.promise h3 {
    color: #414e77;
    font-weight: bold;
    margin-bottom: 23px;
    padding-left: 2.5em;
    background: url(../img/top/icon_check.gif) no-repeat 2% 50%;
    padding: 1em 0 1em 2.5em;
    margin-top: -1em;
  }
  section.promise li p.text {
    font-size: 14px;
    padding: 0 0.3em;
  }
  /*===========================
section.group_works  
  ==========================*/
  section.group_works {
    background: #f3f3f3;
    padding-bottom: 100px;
  }
  section.group_works .inner {
    background: url("../img/top/bg.jpg");
    padding: 6px;
  }
  section.group_works .inner_inner {
    background: #fff;
  }
  section.group_works h2 {
    margin-bottom: 30px;
  }
  section.group_works .flex {
    display: flex;
    justify-content: space-between;
  }
  section.group_works .flex1 {
    padding: 50px 50px 20px 50px;
  }
  section.group_works .flex1 .left {
    width: 483px;
  }
  section.group_works .flex1 p {
    font-size: 15px;
  }
  section.group_works .flex2 {
    padding: 0px 16px 50px 50px;
  }
  /*===========================
  footer 
  ==========================*/
  footer {
    background: #353535;
    margin: 0 auto;

  }
  footer .copyright {
    text-align: center;
    color: #fff;
    font-size: 13px;
  }
  footer .inner {
    position: relative;
    padding: 50px 0;
  }
  footer .inner .pagetop {
    position: absolute;
    top: -37px;
    right: 0;
  }
  footer .inner .pagetop a {
	 background-color: #353535;
	display: block;
	padding: 10px 10px 10px 29px;
	color: #fff;
	border-radius: 6px 6px 0 0;
	height: 37px;
	font-size: 14px;
	position: relative;
  }
  footer .inner .pagetop a::before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 5.5px 9px 5.5px;
	border-color: transparent transparent #ffffff transparent;
	position: absolute;
	top: 13px;
	left: 9px;
  }
  footer ul {
    display: flex;
    justify-content: space-between;
    margin-bottom: 68px;
  }
  footer ul a {
	color: #fff;
	padding: 0.5em 0;
	font-size: 14px;
	position: relative;
	 padding: 0 0 0 14px;
  }
  footer ul a::before {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin: 0 8px 0 0;
    position: absolute;
    top: 31%;
    left: 0;
}
  /*============================================
  料金ページ#fee
  ===========================================*/
  #fee .key .inner {
    width: 1000px
  }
  #fee .flex {
    display: flex;
    justify-content: space-between;
  }
  #fee .key {
    background: url("../img/fee/bg_key.jpg") top center no-repeat;
  }
  #fee .key p,
	#fee .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #fee .key p {
    font-size: 26px;
    line-height: 1.2;
  }
  #fee .key .key_head {
    font-size: 60px;
	  line-height: 1;
  }
  #fee .key .ttl_wrap {
    padding: 76px 0 76px 0;
    margin-left: -10px;
  }
  #fee .explain h2 {
    color: #252424;
    font-size: 50px;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 30px 22px;
  }
  #fee .explain h2 .red {
    color: #dd0505;
  }
  #fee .explain h2 .small {
    font-size: 80%;
  }
  #fee .explain .flex .left {
    width: 573px;
    padding-top: 12px;
  }
  #fee .explain .flex .left .text {
    padding-left: 26px;
    font-size: 17px;
  }
  #fee .explain .flex .right {
	  margin: 0 90px 0 0;
  }
  #fee h3 {
    font-size: 34px;
    color: #fff;
    font-weight: bold;
    font-style: italic;
    margin-bottom: 1em;
  }
  /*---軽自動車---------------------------------*/
  #fee .kei h3 {
    margin-bottom: 40px;
    padding: 16px 0 16px 132px;
    background: url(../img/fee/icon_kei.png) no-repeat 3.5% 50% #dd0505;
  }
  #fee .kei .flex {
    margin-bottom: 65px;
  }
  #fee .kei .flex .left {
    width: 662px;
    padding-left: 20px;
  }
  #fee h3 {
    font-size: 34px;
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  /*---小型自動車---------------------------------*/
  #fee .kogata h3 {
    margin-bottom: 40px;
    padding: 16px 0 16px 132px;
    background: url("../img/fee/icon_kogata.png") no-repeat 3.5% 50% #dd0505;
  }
  #fee .kogata .flex {
    margin-bottom: 65px;
  }
  #fee .kogata .flex .left {
    width: 662px;
    padding-left: 20px;
  }
  /*---普通自動車---------------------------------*/
  #fee .futu h3 {
    margin-bottom: 40px;
    padding: 16px 0 16px 154px;
    background: url("../img/fee/icon_futsu.png") no-repeat 3.5% 50% #dd0505;
  }
  #fee .futu .flex {
    margin-bottom: 65px;
  }
  #fee .futu .flex .left {
    width: 662px;
    padding-left: 20px;
  }
  /*------出張料-----*/
  #fee .trip_fee .inner {
    border: 2px solid #dd0505;
  }
  #fee .trip_fee h3 {
    text-align: center;
    color: #fff;
    background: #dd0505;
    font-weight: bold;
    padding: 0.3em 0;
    font-size: 40px;
    font-style: normal;
  }
  #fee .trip_fee .left {
    width: 520px;
    margin-bottom: 26px;
  }
  #fee .trip_fee .right {
    margin-top: -50px;
  }
  #fee .trip_fee ul {
    margin-top: 18px;
    padding: 0 20px 0 60px;
  }
  #fee .trip_fee li {
    padding-left: 1em;
    background: url("../img/top/bg_list.gif") no-repeat 0 12px;
    margin-bottom: 13px;
    font-size: 20px;
    line-height: 1.5;
  }
  /*--------------#fee .cv----------------*/
  #fee .cv {
    margin: 78px 0;
  }
  /*============================================
  お客様の声ページ#voice
  ===========================================*/
  #voice .key .inner {
    width: 1000px;
    margin: 0 auto;
  }
  #voice .key {
    background: url("../img/voice/bg_key.jpg") top center no-repeat;
  }
  #voice .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
    font-size: 60px;
	  line-height: 1;
  }
  #voice .key .ttl_wrap {
    padding: 91px 0;
    margin-left: -10px;
  }
  #voice h2 {
    text-align: center;
    font-size: 44px;
    font-weight: bold;
    margin-bottom: 70px;
  }
  #voice h2 span {
    color: #dd0505;
  }
  #voice li.img_area {
    position: relative;
  }
  #voice li.img_area.right .comment {
    position: absolute;
    left: 269px;
    top: 52px;
    font-size: 33px;
    font-weight: bold;
    line-height: 1.2;
  }
  #voice li.img_area .comment span {
    color: #dd0505;
  }
  #voice li.img_area.right p.text {
    width: 772px;
    margin: -51px 0 100px 228px;
  }
  #voice li.img_area p.text span {
    color: #dd0505;
  }
  #voice li.img_area.left .comment {
    position: absolute;
    right: 380px;
    top: 52px;
    font-size: 33px;
    font-weight: bold;
    line-height: 1.2;
  }
  #voice li.img_area.left p.text {
    width: 772px;
    margin: -51px 228px 100px 0;
  }
  #voice .cv {
    margin-bottom: 100px;
  }
  /*============================================
  営業時間ページ #open
  ===========================================*/
  #open .key {
    background: url("../img/time/bg_key.jpg") center top no-repeat;
  }
  #open .key .inner {
    width: 1000px;
    margin: 0 auto;
  }
  #open .key p,
	#open .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #open .key p {
    font-size: 26px;
    line-height: 1.2;
  }
	.open_txt{
		margin: 0 0 0 26px;
	}
	.open_img{
		margin: 0 90px 0 0;
	}
  #open .key .key_head {
    font-size: 60px;
	  line-height: 1;
  }
  #open .key .ttl_wrap {
    padding: 76px 0 76px 0;
    margin-left: -10px;
  }
  #open .top h2 {
    font-size: 50px;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 30px 22px;
  }
  #open .top h2 .red {
    color: #dd0505;
  }
  #open .top h2 .small {
    font-size: 80%;
  }
  #open section.top .inner {
    display: flex;
    justify-content: space-between;
  }
  #open .case .case_box {
    border: 4px solid #e30606;
    padding: 30px;
    margin-bottom: 36px;
  }
  #open .case h3 {
	border-bottom: dotted 4px #7b7a80;
	margin: 0em 0 0.8em 0;
	font-size: 40px;
	font-weight: bold;
	background-repeat: no-repeat;
	background-position: 0 0;
  }
	#open .case .case_sttl01{
		background-image: url("../img/time/icon_case01.gif");
		padding: 0.2em 0 0.4em 3.6em;
	}
	#open .case .case_sttl02{
		background-image: url("../img/time/icon_case02.gif");
		padding:0.4em 0 0.4em 3.6em;
	}
	#open .case .case_sttl03{
		background-image: url("../img/time/icon_case03.gif");
		padding:0.6em 0 1.2em 3.6em;
	}
  #open .case h3 span{
	  color: #dd0505;	
  }
  #open .case .case_box_detail {
    display: flex;
  }
  #open .case .case_box_detail .text {
    width: 57%;
    margin-right: 1.5em;
  }
  #open .cv {
    margin-bottom: 90px;
  }
  /*=================================
  お問合せページ#contact
  ==================================*/
  #contact .key .inner {
    width: 1000px;
    margin: 0 auto;
  }
  #contact .key {
    background: url("../img/contact/bg_key.jpg") top center no-repeat;
  }
  #contact .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
    font-size: 60px;
	  line-height: 1;
  }
  #contact .key .ttl_wrap {
    padding: 91px 0;
    margin-left: -10px;
  }
  /* ----------------------------------------
	form
---------------------------------------- */
  #contact section.form {
    margin-top: 130px;
  }
  #contact table {
    margin: 0 0 0 0;
    background: #ececec;
    padding: 10px;
    box-sizing: border-box;
  }
  #contact table tr {
    border-bottom: 2px #fff solid;
  }
  #contact table table tr {
    border: none;
  }
  #contact table th {
    width: 250px;
    padding: 25px 0 0px 30px;
    text-align: left;
    vertical-align: top;
    font-size: 20px;
  }
  #contact table th.middle {
    vertical-align: middle;
  }
  #contact table th span {
    float: right;
    margin: -4px 0 0 0;
    padding: 0 6px;
    background: #c90000;
    border-radius: 4px;
    font-size: 77.8%;
    font-weight: normal;
    color: #ffffff;
    line-height: 27px;
  }
  #contact table td {
    padding: 15px 20px 15px 10px;
  }
  #contact table .agree {
    padding: 15px 20px 30px 10px;
  }
  #contact table td .agree_txt {
    display: block;   
    padding: 15px;
    border: #bbbbbb 1px solid;
    font-size: 75%;
    line-height: 1.6;
    background: #fff;
	margin-bottom: 20px;
  }
  #contact table td div {
    display: block;
    margin: 0 0 10px 0;
    padding: 8px 0 18px 0;
    border-bottom: 1px dotted #abadb3;
    font-size: 75%;
    line-height: 1.6;
    float: left;
    width: 20%;
  }
  #contact table td table {
    margin: 0;
  }
  #contact table td table th {
    width: 106px;
    padding: 0 0 10px 0;
    font-size: 100%;
    font-weight: normal;
    display: block;
  }
  #contact table td table th::after {
    content: "";
    display: block;
  }
  #contact table td table td {
    padding: 0 0 10px 0;
    font-size: 100%;
    display: block;
  }
#contact table td input[type="text"],
#contact table td input[type="email"] {
    width: 100%;
    padding: 5px 10px;
    line-height: 33px;
    border: #bbbbbb 1px solid;
  }
  #contact table td input.size {
    width: 130px;
  }
  #contact table td select {
    height: 35px;
  }
  #contact table td textarea {
    width: 100%;
    padding: 10px;
    border: #bbbbbb 1px solid;
  }
  #contact table td input[type="checkbox"] {
    margin: -2px 10px 0 0;
  }
  #contact table td input[type="radio"] {
    margin: -2px 10px 0 0;
    float: left;
  }
  #contact .btn {
    display: flex;
    justify-content: space-between;
    width: 490px;
    margin: 100px auto 260px auto;
  }
  /* ----------------------------------------
	btn
---------------------------------------- */
	#contact .btn button,
	#contact .submit-btn input[type=button]{
    width: 210px;
    height: 60px;
    margin: 0 10px;
    background: -webkit-linear-gradient(top, #e2e2e2 0%, #c8c8c8 100%);
    background: -moz-linear-gradient(top, #e2e2e2 0%, #c8c8c8 100%);
    background: linear-gradient(to bottom, #e2e2e2 0%, #c8c8c8 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e2e2e2', endColorstr='#c8c8c8', GradientType=0);
    border: 1px solid #aaaaaa;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4), inset 1px 1px 0px rgba(255, 255, 255, 0.4);
    -moz-box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4), inset 1px 1px 0px rgba(255, 255, 255, 0.4);
    box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.4), inset 1px 1px 0px rgba(255, 255, 255, 0.4);
    font-size: 153.8%;
    font-weight: bold;
  }
  #contact .btn button[type="submit"] {
    background: -webkit-linear-gradient(top, #db0000 0%, #c90000 100%);
    background: -moz-linear-gradient(top, #db0000 0%, #c90000 100%);
    background: linear-gradient(to bottom, #db0000 0%, #c90000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#db0000', endColorstr='#c90000', GradientType=0);
    border-color: #c90000;
    color: #fff;
  }
  #contact .btn button[type="submit"][disabled] {
	  cursor: default;
	  opacity: 0.5;
  }
  #contact .btn button[type="submit"][disabled] {
	  cursor: default;
	  opacity: 0.5;
  }
  #contact .btn button span {
    padding: 0 0 0 24px;
    background: url(../img/contact/icon_play.png) no-repeat left center;
    -webkit-background-size: 16px auto;
    -moz-background-size: 16px auto;
    background-size: 16px auto;
  }
  
  
/* ----------------------------------------
	flow
---------------------------------------- */
#contact .step{
	padding:30px 0 50px 0;
	border-top:1px dotted #abadb3;
  display:flex;
  
}

#contact .step li{

	width:240px;
	margin:0 0 0 10px;
	background:url(../img/contact/flow.png) no-repeat center;
	text-align:center;
	font-size:153.8%;
	line-height:74px;
}

#contact .step li.now{
	background-image:url(../img/contact/flow_current.png);
	font-weight:bold;
	color:#ffffff;
}

#contact .step li:first-child{
	margin-left:0;
}


  
  /*------------------------------*/
  
  #contact .main_contents.error{
    margin: 100px auto;
    width:1000px;
  }
  #contact .main_contents.error h1{
    font-size:150%;
    margin: 20px 0;
  }
  #contact .main_contents.error #form{
    margin-top: 50px;
  }
  #contact .main_contents p.submit-btn{
    margin-top: 30px;
  }
   #contact .error table th{
    padding: 15px 0 15px 30px;
  }
    
  /*------------------------------*/
  
  #contact .main_contents.confirm{
    margin: 100px auto;
    width:1000px;
  }
  #contact .main_contents.confirm h1{
    font-size:150%;
    margin: 20px 0;
  }
  #contact .main_contents.confirm #form{
    margin-top: 50px;
  }
 #contact .main_contents p.submit-btn{
	display: flex;
	justify-content: center;
	margin-top: 30px;
  }
  #contact .confirm table th{
    padding: 15px 0 15px 30px;
  }
  
    
  /*------------------------------*/
  
  #contact .main_contents.end{
    margin: 100px auto;
    width:1000px;
  }
  #contact .main_contents.end h1{
    font-size:150%;
    margin: 20px 0;
  }
 
  
  #contact .end table th{
    padding: 15px 0 15px 30px;
  }
  #contact .end #form p.end{
      margin-bottom: 50px;
  }

  
  
  
  /*============================================
  privacy policyページ#privacy
  ===========================================*/
  #privacy .key .inner {
    width: 1000px;
    margin: 0 auto;
  }
  #privacy .key {
    background: url("../img/privacy/bg_key.jpg") top center no-repeat;
  }
  #privacy .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
    font-size: 44px;
	  line-height: 1;
  }
  #privacy .key .ttl_wrap {
  padding: 105px 0;
    margin-left: -10px;
  }
   #privacy dt{
    font-weight: bold;
    margin: 1.5em 0 0.5em 0;
  }
  #privacy .main_contents dt,
  #privacy .main_contents dd,
  #privacy .main_contents li,
  #privacy .main_contents .date{
    line-height: 1.5;
  }
   #privacy dd.indent18{
    padding-left: 1.8em;
    text-indent: -1.8em;
     margin-bottom: 1.8em;
  }
  #privacy .main_contents ul{
    margin-top: 0.5em;
  }
  #privacy ul.pdl2{
    padding-left: 2em;
  }
  #privacy ul.pdl3{
    padding-left: 3em;
  }
  #privacy ul.pdl2 ul{
  padding-left: 1em;
  }
   #privacy ul.pdl3 ul{
  padding-left: 1em;
  }
  #privacy li.point{
    list-style-type: disc;
    padding-left: 0.5em;
    text-indent: 0em;
  }
  
  #privacy section.main_contents{
    margin-bottom: 7em;
  }
  /*============================================
  出張地域ページ#area
  ===========================================*/
  #area .key {
    background: url("../img/area/bg_key.jpg") center top no-repeat;
  }
  #area .key .inner {
    width: 1000px;
    margin: 0 auto;
  }
	#area .key p,
	#area .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
  }
  #area .key p {
    font-size: 26px;
    line-height: 1.2;
  }
  #area .key .key_head {
    font-size: 60px;
	  line-height: 1;
  }
  #area .key .ttl_wrap {
    padding: 76px 0 76px 0;
    margin-left: -10px;
  }
  #area .top h2 {
    font-size: 50px;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 30px 22px;
  }
  #area .top h2 .red {
    color: #dd0505;
  }
  #area .top h2 .small {
    font-size: 80%;
  }
  #area section.top .inner {
    display: flex;
    justify-content: space-between;
  }
  #area section.top .left {
    width: 520px;
  }
  #area section.top .right {
    margin-top: -70px;
  }
  #area .point li {
    border: #dd0505 solid 4px;
    margin-bottom: 40px;
    padding-bottom: 20px;
  }
  #area .point li h3 {
    font-size: 40px;
    font-weight: bold;
  }
  #area .point li h3 .red {
    color: #dc0505;
  }
  #area .point li:first-child h3 {
    padding: 50px 10px 50px 160px;
    background-image: url(../img/area/point1.png), url(../img/area/point1_ttl_icon.jpg);
    background-position: left 3% top 65%, right 4% top 50%;
    background-repeat: no-repeat;
    background-size: 12%, 14%;
  }
  #area .point li .flex {
    display: flex;
    width: 92%;
    margin: 0 auto;
    border-top: 2px dotted #6b6a70;
    padding-top: 1.5em;
  }
  #area .point li .flex .text {
    width: 55%;
    padding-right: 2em;
  }
  #area .point li:nth-child(2) h3 {
    padding: 34px 10px 34px 160px;
    background-image: url(../img/area/point2.png), url(../img/area/point2_ttl_icon.jpg);
    background-position: left 3% top 53%, right 4% top 50%;
    background-repeat: no-repeat;
    background-size: 12%, 14%;
  }
  #area .point li:first-child {
    padding-bottom: 0;
  }
  #area .point li:last-child h3 {
    padding: 34px 10px 34px 160px;
    background-image: url(../img/area/point3.png), url(../img/area/point3_ttl_icon.jpg);
    background-position: left 3% top 53%, right 6% top 50%;
    background-repeat: no-repeat;
    background-size: 12%, 16%;
  }
  /*============================================
  会社概要ページ#company
  ===========================================*/
  #company .key .inner {
    width: 1000px;
    margin: 0 auto;
  }
  #company .key {
    background: url("../img/company/bg_company.jpg") top center no-repeat;
  }
  #company .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
    font-size: 60px;
	  line-height: 1;
  }
  #company .key .ttl_wrap {
    padding: 91px 0;
    margin-left: -10px;
  }
  #company table {
    border: #919191;
    margin-bottom: 200px;
  }
  #company table th {
    width: 280px;
    background: #ececec;
    padding: 1.2em;
  }
  #company table td {
    padding-left: 35px;
  }
  /*============================================
  特商法ページ#transaction
  ===========================================*/
  #transaction .sp {
    display: none;
  }
  #transaction .key .inner {
    width: 1000px;
    margin: 0 auto;
  }
  #transaction .key {
    background: url("../img/transaction/bg_key.jpg") top center no-repeat;
  }
  #transaction .key .key_head {
    color: #fff;
    font-weight: bold;
    font-style: italic;
    font-size: 60px;
	  line-height: 1;
  }
  #transaction .key .ttl_wrap {
    padding: 55px 0px;
    margin-left: -10px;
  }
  #transaction table {
    border: #919191;
    margin-bottom: 200px;
  }
  #transaction table th {
    width: 280px;
    background: #ececec;
    padding: 1.2em;
  }
  #transaction table td {
    padding-left: 35px;
    padding-right: 1.5em;
    line-height: 1.5;
  }
  #transaction .price_top {
    margin-bottom: 1em;
  }
  #transaction li span.list_style {
    padding-left: 1.3em;
    background: url("../img/transaction/icon_circle.png") 0 50% no-repeat;
  }
  #transaction table li {
    margin-bottom: 0.5em;
  }
  #transaction .indent {
    padding-left: 1em;
    text-indent: -1em;
  }
  #transaction li .pdl1 {
    padding-left: 1em;
  }
  #transaction table a {
    color: #00528c;
    text-decoration: underline
  }
  #transaction table td.pdb {
    padding-bottom: 1.5em;
  }
  #transaction table td.pdt {
    padding-top: 1.5em;
  }
  #transaction .cancel li {
    padding-left: 1.3em;
    background: url("../img/transaction/icon_circle.png") 0 0.5em no-repeat;
    line-height: 1.5;
  }
  
 
  /*======↓↓↓=@media screen and (min-width: 768px)  END　===↓↓↓======   */
}