@charset "utf-8";
/*=========================================
        　リセットcss
=========================================*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
body{
    overflow-x: hidden;
    /*    TBUDMincho Std M*/
    /*font-family: tbudmincho-std, sans-serif;*/
    font-family: sans-serif;
/*    font-weight: 500;*/
    font-style: normal;


    /*TBUDMincho Std H*/
    /*font-family: tbudmincho-std, sans-serif;*/
    /*font-style: normal;*/
}

html{
  margin-top: 0!important;
  overflow-x: hidden;
  max-width: 1650px;
  min-width: 1200px;
}
@media screen and (max-width: 1024px){
  html{
    min-width: auto;
  }
}
a:hover{
  cursor: pointer;
}
li{
    list-style:none;
}
a{
    text-decoration: none;
    color:#000;
}
p {
    font-size: 17px;
}
.fix-flex{
  display: flex;
}
.section-title{
  font-size: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  line-height: 50px;
}
.section-title span{
  font-size: 21px;
}
.sub-section{
  margin-top: 170px;
}
main {
    width: 75%;
}
aside {
    width: 25%;
}
/*footer*/
footer{
  background-color: #1d1d1d;
  padding: 30px 0;
}
footer *{
  color: #fff;
}
.footer-title{
  text-align: center;
  margin-bottom: 50px;
}
footer div.fix-flex{
  width: 75%;
  margin:0 auto;
    margin-bottom: 50px;
}
.footer-info,.footer-link{
  width: 50%;
  display: flex;
  flex-direction: column;
}
.footer-info {
  align-items: flex-start;
}
.footer-info *{
  margin-bottom: 10px;
}
.footer-info a:last-child{
  border-bottom: solid 1px #fff;
  display: inline; 
  width: auto;
}
.footer-link{
  align-items: flex-end;
}
.footer-tel{
  font-size: 40px;
  margin-bottom: 10px;
}
.footer-tel span{
  font-size: 18px;
}

.footer-form{
  border:solid 2px #fff;
  font-size: 25px;
  padding: 10px 20px;
}
.copy-light{
  border-top: solid 1px #fff;
  text-align: center;
  padding-top: 30px;
font-size: 16px;
}

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

  p {
      font-size: 16px;
      line-height: 150%;
  }
}
@media screen and (max-width: 768px){

  .section-title {
      font-size: 30px;
      line-height: 150%;
      }
      .section-title span {
      font-size: 16px;
  }
  footer div.fix-flex {
      width: 75%;
      margin: 0 auto;
      margin-bottom: 50px;
      flex-direction: column;
  }
  .footer-info, .footer-link {
      width: 100%;
      display: flex;
      flex-direction: column;
  }
  .footer-link {
      align-items: center;
  }
  .copy-light {
      font-size: 14px;
  }
  .header-nav__list li a {
      font-size: 15px;
  }
}

@media screen and (max-width: 500px){
  main {
      width: 100%;
  }
  aside {
      width: 100%;
      margin-top: 60px;
  }
.section-title {
    font-size: 23px;
    line-height: 150%;
}
.footer-tel {
    font-size: 25px;
    margin-bottom: 10px;
}
.footer-form {
    border: solid 2px #fff;
    font-size: 16px;
    padding: 10px 20px;
}
.footer-info * {
    margin-bottom: 20px;
    font-size: 13px;
}
.footer-title {
    text-align: center;
    margin-bottom: 30px;
}
.copy-light {
    font-size: 11px;
}
.sp-none{
  display: none;
}
.sub-section {
    margin-top: 120px;
}
.contact-form__link p {
    font-size: 14px;
}
}
@media screen and (max-width: 320px){
  .footer-tel {
    font-size: 21px;
    margin-bottom: 10px;
}
.footer-form {
    border: solid 2px #fff;
    font-size: 14px;
    padding: 10px 20px;
}
.footer-info * {
    margin-bottom: 10px;
    font-size: 12px;
}
}