@charset "utf-8";

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

   second

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

.sp {
  display: none;
}

.pc {
  display: block;
}


@media all and (max-width: 1200px) {
  .container {
    width: 95%;
  }

  header .header-top .info-call .title-phone {
    display: none;
  }

  #ptop {
    right: 20px;
    top: 140px;
  }
}

@media all and (max-width: 1025px) {
  header .header-top .container {
    width: 100%;
    padding-left: 20px;
  }
}

@media all and (max-width: 1024px) {

  .sp {
    display: block;
  }
  
  .pc {
    display: none;
  }

  nav.pc,
  header .header-top .info-call,
  header .header-top .info-contact {
    display: none;
  }

  .flex {
    display: block;
  }

 

  body {
    font-size: 15px;
  }

  .container {
    width: 90%;
  }

  
/*--------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------*/

  header .header-top .container {
    width: 95%;
    padding-left: 0;
  }

  header .header-top .logo {
    padding-bottom: 5px;
  }

  header .header-top .logo img {
    width: 80px;
  }

  header .header-top .logo .text {
    margin-left: 15px;
    margin-right: 0;
    border-right: none;
    display: inline-block;
    font-size: 14px;
    margin-top: 0;
  }

  header .header-top .logo .text .title {
    font-size: 18px;
  }

  nav {
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    padding: 0;
    background:#a40000;
    z-index: 9999;
		display:none;
    border-bottom: none;
  }

  .menubt {
    z-index: 3;
    width: 42px;
    height: 42px;
    display: block;
    right: 10px;
    top: 15px;
    position: absolute;
    background: #ae0a0a;
    background-size: contain;
  }
  
  .menubt span {
    width: 25px;
    height: 2px;
    display: block;
    background: #fff;
    border-radius: 0;
    position: absolute;
    right: 8px;
    top: 20px;
    transition: all 0.4s;
    transform: rotate(0deg);
  }
  
  .menubt .top {
    -webkit-transform: translateY(-250%);
    -ms-transform: translateY(-250%);
    transform: translateY(-250%);
  }
  
  .menubt .bottom {
    -webkit-transform: translateY(250%);
    -ms-transform: translateY(250%);
    transform: translateY(250%);
  }
  
  .menubt .menuclick1 {
    transform: rotate(-215deg);
  }
  
  .menubt .menuclick2 {
    background-color: rgba(255,255,255,0);
  }
  
  .menubt .menuclick3 {
    transform: rotate(215deg);
  }

  nav .container {
    width: 100%;
  }

  nav li {
    border-top: 1px solid #fff;
    padding: 0;
    width: 100%;
  }

  nav li a {
    color: #fff;
    padding: 12px 0;
    text-align: center;
    font-size: 16px;
  }

  nav .menu-privacy {
    width: 100%;
  }

  nav li:last-child a {
    border-right: none;
  }

.sp-tel {
  font-size: 12px;
  margin-bottom: 30px;
}

.btn-new {
  padding: 10px 20px;
  color: #fff;
  font-size: 13px;
  background-color: #ae0a0a;
  display: inline-block;
  border-radius: 7px;
}

.btn-new-2 {
  padding: 5px 10px;
  color: #fff;
  font-size: 13px;
  background-color: #ae0a0a;
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 10px;
}


.company-btn {
  margin-bottom: 50px;
}

.aligncenter {
  width: 250px;
}

.aligncenter figcaption {
  font-size: 13px;
}

.breadcumb a,
.breadcumb span {
  font-size: 14px;
  display: inline-block;
}

.breadcumb a {
  padding-right: 25px;
  position: relative;
}


.breadcumb a::before {
  content: ">";
  position: absolute;
  right: 5px;
}



/*--------------------------------------------------------------------------------------------
  content
--------------------------------------------------------------------------------------------*/

.banner-top {
  height: 340px;
  background: url(../image/banner-index-sp.png) no-repeat right;
  text-shadow: 3px 3px 3px #000;
  color: #fff;
}

.banner-top h2 {
  font-size: 22px;
  padding-top: 220px;
}

.banner-top p {
  font-size: 18px;
}

#content-top ul {
  margin: 40px 0 46px 0;
}

#content-top ul li {
  text-align: center;
  padding: 20px 0;
}

#content-top li h4 {
  font-size: 24px;
}

#news-list .info {
  margin: 15px 0 55px 0;
}

#news-list .info li {
  padding: 10px 24px 12px 12px; 
}

h3 .font-Oswald {
  font-size: 18px;
  margin-right: 10px;
  display: inline-block;
}

h3 .font-jp {
  font-size: 15px;
  padding-left: 10px;
}

footer .coppy {
  padding: 10px 0 14px 0;
  font-size: 12px;
}

footer .info address {
  line-height: 1.4;
  font-size: 12px;
  margin-top: 10px;
}

footer .info .logo {
  font-size: 20px;
}

footer .info .btn-contact {
  margin-right: 0;
  margin-top: 15px;
  padding: 0px 60px;
  font-size: 12px;
  line-height: 30px;
  height: 30px;
  width: 200px;
}

.banner-page h2 {
  font-size: 22px;
}

.banner-page h2,
.banner-page p {
  text-shadow: 3px 3px 3px #fff;
}

.breadcumb {
  margin-top: 15px;
}

#company-box {
  margin: 60px 0 42px 0;
}

#company-box .desc {
  margin: 16px 0 45px 0;
}

#company-box .title {
  font-size: 14px;
  margin-bottom: 15px;
}

#company-box .map {
  max-width: 100%;
}

#company-box .ul-flex {
  text-align: center;
} 

#company-box .partner-desc li {
  margin: 10px;
}

#company-box ol li {
  padding-left: 14px;
}

#solicitation-box {
  margin-top: 40px;
  padding-bottom: 40px;
}

#solicitation-box .info {
  margin-bottom: 45px;
  padding: 20px 18px 20px 18px;
}

#solicitation-box .info h4 {
  font-size: 16px;
}

#solicitation-box .info h4::before { 
  width: 7px;
  height: 25px;
}

#product-box .menu-product {
  padding: 30px 0 30px 0;
  text-align: center;
  line-height: 25px;
}
#product-box .menu-product a{
  margin-right: 30px;
    margin-left: 30px;
}

.agree-area .bottom-ar{
  margin: auto;
}

#company-box .desc p, .desc-web a { 
    font-size: 15px;
  }
#product-box h3 {
  margin-bottom: 16px;
  padding-top: 40px;
  padding-right: 50px;
}

#product-box h3 span{
  display: none;
}

h3 {
  font-size: 18px;
}

h3 .font-jp::before { 
  display: none;
}

#product-box .desc {
  margin-bottom: 25px; 
  font-size: 13px;
}

#product-box .desc .font-red {
  font-size: 15px;
}

.contact-page .desc {
  margin: 17px 0 30px 0 !important;
}

.contact-page .desc-web {
  margin-left: 20px!important;
}

.contact-page .list-link a, .contact-page .list-link span {
  margin: 0 8px;
  line-height: 35px;
  display: inline-block;
  font-size: 14px;
}

.news-page {
  padding: 50px 0;
}

.news-page .info {
  margin: 10px 0 20px 0px !important;
}

#news-detail {
  margin: 60px 0 45px 0;
}

#news-detail .info h4 {
  font-size: 15px;
  line-height: 1.6;
  min-height: 44px;
}

#news-detail .info h4 {
  margin-bottom: 20px;
}

#news-detail .info h4 {
  padding: 10px 0 20px 70px;
}

#contact-form-page form {
  width: 100%;
  padding: 20px 10px;
}

#contact-form-page form th,
#contact-form-page form td {
  width: 100%;
  float: left;
  text-align: left;
  padding: 7px 0;
}

#contact-form-page form td span {
  margin-right: 7px;
}

#contact-form-page .text .desc {
  margin: 16px 0 20px 0;
}

.banner-company {
  background: url(../image/banner-company-sp.png) no-repeat left center;
  background-size: cover;
}

.banner-contact {
  background: url(../image/banner-contact-sp.png) no-repeat left center;
  background-size: cover;
}

.banner-solicitation {
  background: url(../image/banner-product-sp.png) no-repeat left center;
  background-size: cover;
}

.banner-customer {
  background: url(../image/banner-product-sp.png) no-repeat left center;
  background-size: cover;
}

.banner-service {
  background: url(../image/banner-service-sp.png) no-repeat left center;
  background-size: cover;
}


.banner-accident {
  background: url(../image/banner-accident-sp.png) no-repeat left center;
  background-size: cover;
}

.banner-news {
  background: url(../image/banner-news-sp.png) no-repeat left center;
  background-size: cover;
}

.banner-privacy {
  background: url(../image/banner-news-sp.png) no-repeat left center;
  background-size: cover;
}

.banner-product {
  background: url(../image/banner-product-sp.png) no-repeat left center;
  background-size: cover;
}


.footer-nav_li{
  display: block;
  font-size: 10px;
  margin: 30px 0 30px 0;
}

#company-box ol li {
    list-style: decimal;
    margin-bottom: 10px;
}

.company-table, th, td{
  padding: 10px 20px;
  font-size: 15px;
  display: block;
}
.company-td1 {
  background-color: #f5f5f5;
  width: 100%;
  text-align: left;
}
.company-td2 {
  width: 100%;
    text-align: left;
}

.contact-cont {
  width: 100%;
}
.entry {
    font-size: 16px;
    margin-bottom: 14px;
    line-height: 1.3em;
    margin-top: 30px;
    font-weight: bold;
}

.title4:before {
    margin-right: 1rem;
}
.title4:after {
    margin-left: 1rem;
}
.title4:before, .title4:after {
    border-top: 1px solid;
    content: "";
    flex-grow: 1;
}

.midasi-acci {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 40px;
}

.midasi-acci-2 {
  margin-top: 70px;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}

.midasi-acci-3 {
  text-align: left;
  margin-top: 30px;
  font-size: 18px;
  font-weight: bold;
}
.midasi-acci-4 {
  margin: 10px 0 15px 0;
  text-align: left;
  font-size: 14px;
  font-weight: bold;
}

.midasi-acci-4:nth-child(10) {
  margin-bottom: 30px;
}

.midasi-acci-5 {
    text-align: left;
  font-size: 12px;
  font-weight: normal;
}



.midasi-tel-1 {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 50px;
}


.contact-cont {
  width: 100%;
  padding: 10px 40px;
  border: 1px solid #868686;
  border-radius: 10px;
  box-shadow: 0 7px 16px -11px rgb(0 25 50 / 100%);
}

.contact-cont2 {
  margin-top: 30px;
  font-size: 14px;
  font-weight: bold;
  text-align: left;
  padding: 0 0 5px 20px;
  border-left: solid 4px #a9a9a9;
  border-bottom: solid 1px #a9a9a9;
}
.midasi-tel-2 {
  margin-top: 10px;
  text-align: left;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 30px;
}

.font-red {
  color: #d23226;
}
.font-darkred {
  color: #ae0a0a;
}
.midasi-tel-2 {
  margin-top: 10px;
  text-align: left;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

.service-cont-li{
  margin: 0 20px;
}
.ser-text-til {
  font-size: 16px;
  font-weight: bold;
  margin: 10px 0;
}
.ser-text {
   text-align: left;
  font-size: 14px;
  margin: 10px 0 10px 0;
  padding-bottom: 30px;

}

.service-ti {
  font-size: 22px;
  font-weight: bold;
  color: #ae0a0a;
  margin: 30px;
}

.service-cont {
  padding: 30px;
  margin-top: 50px;
}
.service-cont-1 {
  background-color: #fffaf0;
  margin: 50px 0;
  padding-top: 30px;
}

.service-ti-3 {
  font-weight: bold;
  font-size: 18px;
  font-size: bold;
  margin-top: 30px;
}
.service-ti-3 span{
  color: #ae0a0a;
}

.service-ti-4 {
  font-size: 13px;
}
.btn-all {
  margin-top: 70px;
}

.btn-all-li {
    width: 94%;
    display: block;
    margin: 0;
    margin: auto;
}
.btn-all-li img{
    width: 60%;
}

.aligncenter {
  width: 100%;
  margin: 10px 0px;
}

.company-btn_list {
  display: block;
}

.company-btn_list li {
   margin-right: 0;
   margin-left: 0;
   margin: 10px auto;

 }

.btn-top {
  padding: 4px 7px;
  font-size: 12px;
  display: inline-block;
  position: absolute;
  right: 0;
  bottom: 5px;
  background-color: #ae0a0a;
  border-radius: 4px;
  color: #fff;
}

#product-box .menu-product {
  margin: 70px 0 50px;
  padding: 30px;
  border: solid 2px #be1e21;
  border-radius: 20px;
}
#product-box .menu-product a {
  display: inline-block;
  line-height: 20px;
  padding-right: 27px;
  background: url(../image/icon-next-product.png) no-repeat right center;
}

/*add202208*/
.privacyTit {
	padding: 4px;
	background-color: #FDE6E6;
}

.privacyUl {
	margin: -10px 0 20px;
	padding: 0 0 0 40px;
}

.privacyUl li {
	margin-bottom: 4px;
	list-style: disc;
}

.privacyDl {
}

.privacyDl dt {
	padding: 4px;
}

.privacyDl dd {
	padding: 0 4px 4px;
	border-bottom: 1px dotted #CCC;
}

#company-box.agree-page .desc p {
	margin-bottom: 10px;
}

}