/*
Template:generic
Theme Name:generic-child
*/

/* 子テーマ デフォルトスタイル */

body {
  background: #fff !important;
  color: #252525;
  font-family: 'Noto Sans JP', sans-serif, "Noto Sans CJK JP",
  Arial,
  "Hiragino Kaku Gothic ProN",
  "Hiragino Sans",
  Meiryo,
  sans-serif;
  font-size: 16px;
  letter-spacing: 1px;
}

#container {background: #fff !important}

.page #content p, .single-post #content p {
  font-size: 16px;
  letter-spacing: 1px;
  font-family: 'Noto Sans JP', sans-serif, "Noto Sans CJK JP",
  Arial,
  "Hiragino Kaku Gothic ProN",
  "Hiragino Sans",
  Meiryo,
  sans-serif;
}

a:hover {opacity: .7;}

.single-post table td,
.single-post table th {border: 1px solid #767676;}

.entry-content ul,
.widget-container ul,
.comment-body ul {
  list-style-type: circle;
  text-indent: 0;
}

.entry-content ul li:before,
.widget-container ul li:before,
.comment-body ul li:before {content: none;}

.entry-content ol, .widget-container ol, .comment-body ol {
  list-style-type: decimal;
  margin-left: 40px !important;
}

.entry-content ul li, .widget-container ul li, .comment-body ul li,
.entry-content ol li, .widget-container ol li, .comment-body ol li {
  line-height: 180%;
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif, "Noto Sans CJK JP",
  Arial,
  "Hiragino Kaku Gothic ProN",
  "Hiragino Sans",
  Meiryo,
  sans-serif;
  letter-spacing: 1px;
}

.list-cnt {margin-left: 50px !important;}
.list-cnt li {
  list-style-type: none;
  counter-increment: cnt;
  line-height: 180%;
  margin: 0;
  text-indent: -1em;
}

.list-cnt li::before {
  content: "(" counter(cnt) ") ";
  display: inline-block;
  width: 1.2em;
}

h1 {
  font-weight: 700;
  font-size: 1.8em;
}

.page-id-7 h1 {
  font-weight: 600;
  font-size: 2.188em;
}

.page-id-20 .entry-title {display: none;}
.first-hd {margin-top: 0;}

h2 {
  font-weight: 400;
  font-size: 1.625em;  
}

.page-id-7 h2 {
  font-weight: 600;
  font-size: 1.875em;
}

.app-container h2 {padding-bottom: 1.3em;}

.page-id-20 h2 {
  border-bottom: 3px dotted #ffbc2e;
  padding: .8em .5em;
}

h3 {
  font-weight: 400;
  font-size: 1.375em;  
}

h4 {
  font-weight: 400;
  font-size: 1.25em;  
}

h5 {
  font-weight: 400;
  font-size: 1.125em;  
}

h6 {
  font-weight: 400;
  font-size: 1em;  
}

.page-id-7 h1, .page-id-7 h2, .page-id-7 h3,
.page-id-7 h4, .page-id-7 h5, .page-id-7 h6 {
  margin-top: 0;
  margin-bottom: 0;
}

#app-icon01, #app-icon02, #app-icon03, #app-icon04, #app-icon05 {
  border-bottom: 2px dotted #ffbc2e;
  font-weight: 600;
  padding: 1.5em 0.5em 0.5em 0.5em;
}

#app-icon01:before {content: url('../../uploads/2023/12/topicon01.jpg');}
#app-icon02:before {content: url('../../uploads/2023/12/topicon02.jpg');}
#app-icon03:before {content: url('../../uploads/2023/12/topicon03.jpg');}
#app-icon04:before {content: url('../../uploads/2023/12/topicon04.jpg');}
#app-icon05:before {content: url('../../uploads/2023/12/topicon05.jpg');}


#app-icon01:before, #app-icon02:before, #app-icon03:before,
#app-icon04:before, #app-icon05:before {
  position: relative;
  top: 4px;
  padding-right: 10px;
}

#header, #container, #footer {
  padding: 0;
  overflow: hidden;
}

.header-layer {
  overflow: hidden;
  margin: 0 auto;
  padding: 0 3%;
  width: 100%;
}

.top-layer {
  display: block;
  padding: 1em 0;
  text-align: center;
}

.pc-image-container:after, .mb−image-container:after,
.app-container:before {
  content: "";
  display: block;
  background-image: url('../../../wp-content/uploads/2023/12/gray-line.png');
  background-repeat: repeat-x;
  height: 10px;
}


.pc-image-container {
  display: inline-block;
  position: relative;
  text-align: center;
}

.pc-image-container img {
  max-width: 100%;
  height: auto;
}

.pc-eyecatch-btn-container {
  position: absolute;
  bottom: 13%;
  right: 0;
  transform: translate(-100%, 0);
}

.pc-eyecatch-btn {display: inline-block;}

.container-1200 {
  max-width: 1200px;
  margin: 0;
  margin: 0 auto;
  overflow: hidden;
  padding: 4em 2%;
}

.container-1100 {
  max-width: 1100px;
  margin: 0;
  margin: 0 auto;
  overflow: hidden;
  padding: 4em 2%;
}

.manual-container {padding: 2em 0;}

.manual-layer {
  max-width: 1000px;
  margin: 0 auto;
  overflow: hidden;
  padding-top: 1em;
  padding-bottom: 1em;
}

.manual-box, .manual-box-last {padding: 3em 2% !important;}

.app-container-inner {
  max-width: 1100px;
  margin: 0;
  margin: 0 auto;
  overflow: hidden;
  padding: 4em 2% 0 2%;
}

.dl-container:before {
  content: url('../../uploads/2023/12/yellow-arrow.png');
  position: absolute;
  left: 44%;
  margin-top: -10px;
}

.dl-layer {
  max-width: 900px;
  margin: 0;
  margin: 0 auto;
  overflow: hidden;
  padding: 4em 2%;
}

.dl-layer p {margin-top: 0;}

.dl-layer strong span {background:linear-gradient(transparent 70%, #fece6a 0%);}

.app-layer {
  display: flex !important;
  justify-content: space-around !important;
}

.app-box, .app-box-last {
  display: flex !important;
  flex-direction: column !important;
  margin: 10px 1%;
  padding: 10px;
  height: 840px;
}

.app-box-last {height: auto !important}

.normal-btn {margin: 2em 0 !important;}

.normal-btn a {font-size: 1.375em;}

.footer-container {
  overflow: hidden;
  width: 100%;
}

.footer-layer {
  max-width: 840px;
  margin: 0;
  margin: 0 auto;
  overflow: hidden;
  padding: 4em 2%;
}

#content {
  padding: 4em 3%;
  float: none;
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
  max-width: 1200px !important;
}

.page-id-7 #content {
  padding: 0;
  max-width: 100% !important;
  margin-top: 0;
}

.page-id-22 #content {
  padding: 4em 3%;
  float: none;
  margin: 0 auto;
  overflow: hidden;
  width: 100%;
  max-width: 860px !important; 
}

.google-maps {
  position: relative;
  padding-bottom: 50%;
  height: 0;
  overflow: hidden;
  margin-top: 0.3em;
}

.google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

select,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
textarea {
  background: #fff;
  border: 1px solid #f3f3f3;
  width: 100% !important;
  margin: 0 !important;
}

input[type="submit"] {
  background-color: #ffbc2e;
  border-radius: 50px;
  color: #fff;
  font-size: 1.125em;
  font-weight: 400;
  font-family: 'Noto Sans JP', sans-serif, "Noto Sans CJK JP",
  "Helvetica Neue",
  Arial,
  "Hiragino Kaku Gothic ProN",
  "Hiragino Sans",
  Meiryo,
  sans-serif;
  letter-spacing: .1em;
  margin: 1em auto 3em auto !important;
  padding: .7em 4em .7em 5em;
}

.tb-contact p {margin: 0;}
.tb-contact th {
  background: #fbf9f7;
  font-weight: 500;
  vertical-align: middle;
  text-align: left;
  width: 36%;
}

.tb-company th {
  background: #fbf9f7;
  border: 1px solid #dcdcdc;
  font-weight: 500;
  vertical-align: middle;
  width: 36%;
  text-align: justify;
  text-align-last: justify;
  padding: 1em 11em 1em 1em;
}

.tb-contact th, .tb-contact td,
.tb-company td {
  border: 1px solid #dcdcdc;
  padding: 1em;
}

.tb-contact th strong {
  background: #ffbc2e;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  float: right;
  padding: 0 5px;
}

.tb-contact th .qst-txt {
  position: relative !important;
  margin-top: -10px !important;
}

#menu {
  overflow: hidden;
  margin: 0 auto;
  width: 100%;
}

#menu {background: #fbf9f7;}
#menu a {
  color: #000;
  margin-right: 0;
  padding: 1em;
}

#menu div:first-of-type {float: none;}
.page-id-7 .entry-title, .wpcf7-spinner {display: none;}
.align-c {text-align: center;}

.app-use {
  border: 3px solid #dcdcdc;
  border-radius: 10px;
  max-width: 50% !important;
  margin: 0 auto;
  margin-top: 14px;
}

.page-id-20 .app-use img {border-radius: 10px !important;}

.aff-btn-layer {margin-top: 10px;}
.aff-btn {margin: 5px 0 !important;}


.page-id-7 :where(.wp-block-columns.is-layout-flex),
.page-id-20 :where(.wp-block-columns.is-layout-flex) {gap: 0 !important;}

#footer {
  overflow: hidden;
  text-align: center;
}

.footer-left {float: left;}

.footer-right {
  float: right;
  font-size: 1.125em;
}

.footer-right strong {font-size: 1.5em;}

.sub-txt {padding: 1em 0;}

.sns-btn a {
  display: inline-block;
  padding: 0 .2em;
}

#copyright {
  background: #000;
  color: #fff;
  display: block;
  font-size: 14px;
  text-align: center;
  letter-spacing: 1px;
  padding: 2em 0;
  overflow: hidden;
  width: 100%;
}

.mb−image-container, .mb-eyecatch-btn, .mb-blk {display: none;}
.mg-bottom {margin-bottom: 30px !important;}


@media(max-width:1600px) {
  .pc-eyecatch-btn-container {
    position: absolute;
    bottom: 13%;
    right: 0;
    transform: translate(-50%, 0);
  }

}


@media(max-width:1230px) {
   .pc-eyecatch-btn-container {
    transform: translate(-30%, 0);
  }

 .mb−image-container, .mb-eyecatch-btn, .mb-blk {display: none;}

}

@media(max-width: 1140px) {

  .pc-image-container, .pc-eyecatch-btn {display: none;}

  .mb−image-container, .mb-eyecatch-btn {display: block;}
  
  .mb−image-container:after {
    content: "";
    display: block;
    background-image: url('../../../wp-content/uploads/2023/12/gray-line.png');
    background-repeat: repeat-x;
    height: 10px;
  }
  

  .mb−image-container, .mb-eyecatch-btn {text-align: center !important;}
  .mb−eyecatch-btn {display: inline-block;}
  .mb-image-container img {
    max-width: 100%;
    height: auto;
  }

  .mb−eyecatch-btn-container {margin-bottom: 4em !important;}
  .page-id-22 #content {width: 100% !important;}

}


@media(max-width:740px) {

  h1 {font-size: 1.6em !important;}
  h2, .mb-toptxt strong {font-size: 24px !important;}

  .normal-btn strong {font-size: 18px !important}
  h3 {font-size: 1.3em !important;}
  h4 {font-size: 1.2em !important;}
  h5, .mb-toptxt p {font-size: 1.1em !important;}
  h6 {font-size: 1.05em !important;}

  .normal-btn a {font-size: 1.2em !important;;}
  .footer-right strong {font-size: 1.3em !important;}
  .dl-layer p strong {font-size: 22px !important;}
  .dl-layer {text-align: center;}
  .dl-container:before, .mb-none {display: none;}

  .mb-blk {display: block;}
  .footer-left, .footer-right {
    float: none;
    text-align: center;
  }

  #menu-gn {display: block !important;}
  #menu-gn li a {
    border-bottom: 1px solid #dcdcdc;
    display: block !important;
    text-align: center;
  }

   #menu-gn li a:last-chlid {border-bottom: none;}

  .app-layer, .app-box, .footer-layer, .app-box-last {
    display: display !important;
    height: auto;
    width: 100%;
  }

  .app-box-last {margin-top: 1em !important;}

  .app-box {
    background: #fff;
    border-radius: 10px;
    border: 1px solid #dcdcdc;
    padding: 2em 3% !important;
    margin: 1em 0 !important;
  }

  .app-container-inner {padding: 4em 2%;}

  .manual-container {padding: 0;}
  .manual-box, .manual-box-last {padding: .5em 2% 3em 2%!important;}
  .manual-box {border-bottom: 1px solid #dcdcdc;}
  .manual-box-last {border: none;}

  .sns-btn {margin-top: 10px;}

  .tb-contact th, .tb-contact td {
    display: block;
    width: 100%;
  }

  .tb-company th {
    padding: 1em !important;
    width: 40% !important;
  }
  
  .reversebox {flex-direction: column;}
  .order1 {order: 1;}
  .order2 {order: 2;}


 .app-use {
    max-width: 100% !important;
  }

}
