@charset "utf-8";

/* ---------------------------------------------------------
   #global-header
----------------------------------------------------------*/

#global-header {
  padding:8px 0;
  background:#ff5c01;
  color:#FFFFFF;
}

#site-title p {
  font-size:10px;
}

#site-title img {
  width:140px;
}

.global-header-nav {
  margin-top:4px;
}

.global-header-nav li {
  display:inline-block;
  vertical-align:top;
}

.global-header-nav li.global-header-nav-btn {
  width:36px;
}

.global-header-tel a {
  color:#ff6600;
}

.global-header-tel i {
  font-size:28px;
  line-height:38px;
  background:#fff;
  border-radius:10px;
  width:36px;
  height:36px;
  text-align:center;
}

@media screen and (min-width: 768px) {
    #global-header {
      padding:20px 0;
    }
    
    #site-title p {
      font-size:12px;
    }
    
    #site-title img {
      width:211px;
    }
    .global-header-nav li.global-header-nav-btn {
      width:60px;
    }
    
    .global-header-tel {
      font-size:12px;
    }
    
    .global-header-tel-number {
      font-size:34px;
      line-height:1.4;
      font-family:'Comfortaa', sans-serif;
      font-weight:700;
    }
}



/* ---------------------------------------------------------
   fixed-footer
----------------------------------------------------------*/

.fixed-footer {
  position:fixed;
  left:0px;
  bottom:0px;
  width:100%;
  background:#42be39;
  text-align:center;
  -moz-box-shadow: 0px -1px 1px rgba(0, 0, 0, 0.15);
  -webkit-box-shadow: 0px -1px 1px rgba(0, 0, 0, 0.15);
  box-shadow: 0px -1px 1px rgba(0, 0, 0, 0.15);
  z-index: 10;
}

.fixed-footer a {
  display:block;
}

.fixed-footer img {
  max-width:320px;
}

@media screen and (min-width: 768px) {
    .fixed-footer img {
      max-width:400px;
    }
}

/* ---------------------------------------------------------
   #page-top
----------------------------------------------------------*/

#page-top {
  clear:both;
  position:fixed;
  right:10px;
  bottom:70px;
  z-index:999;
}

#page-top a {
  display:block;
  width:50px;
  height:50px;
  line-height:50px;
  text-align:center;
  color:#fff;
  background:#000;
  text-transform:uppercase;
  font-family: 'Comfortaa', sans-serif;
  font-weight:700;
  border-radius:50%;
  border:2px solid #fff;
}

#page-top a:hover {
  text-decoration:none;
}

@media screen and (min-width: 768px) {
    #page-top {
      right:20px;
    }
    #page-top a {
      width:80px;
      height:80px;
      line-height:80px;
    }
}


/* ---------------------------------------------------------
   #global-footer
----------------------------------------------------------*/

#global-footer {
  clear:both;
  padding:15px 0;
  font-size:12px;
}

#copyright {
  color:#999999;
  font-size:10px;
}

@media screen and (min-width: 768px) {
    #copyright {
      text-align:right;
    }
}

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

#content {
  clear:both;
}


/* ---------------------------------------------------------
   #main
----------------------------------------------------------*/

.section {
  clear:both;
  margin-bottom:30px;
}

.section-color {
  background-color: #fffae3;
}

@media screen and (min-width: 768px) {
     .section {
       margin-bottom:60px;
      }
}

.section p,
.section figure {
  margin-bottom:15px;
}
 
@media screen and (min-width: 768px) {
     .section p,
     .section figure {
       margin-bottom:30px;
     }

}

.section-main {
  padding:0 0 30px;
  margin-bottom:0;
  background:#000 url(../img/bg_main.jpg) center top no-repeat;
  background-size:100% auto;
}

.section-main h1 {
  text-align:center;
  padding:100px 20px;
}

@media screen and (min-width: 768px) {
    .section-main {
      background:#000 url(../img/bg_main_pc.jpg) center top no-repeat;
      background-size:cover;
    }
}

.list-block {
  margin-bottom:20px;
}

.list-block-item {
  font-weight:bold;
  text-align:center;
  padding:10px 5px 10px 20px;
  background:#fff;
  margin-bottom:2px;
  position:relative;
}

.list-block-item:before {
  font-family: FontAwesome;
  content: "\f00c";
  font-size:20px;
  line-height:1;
  position:absolute;
  top:25%;
  left:15px;
  color:#42be39;
}

@media screen and (min-width: 768px) {
    .list-block-item:before {
      top:32%;
    }
}

.section-header {
  margin-bottom:25px;
}

.section-title {
  font-size:16px;
  line-height:1.4;
  font-weight:bold;
  padding:15px 20px;
  text-align:center;
  color:#fff;
  background:#ff6e1d;
}

.section-eyecatch {
  text-align:center;
}

.section-lead {
  font-size:18px;
  background:#fff5cc;
  padding:20px;
  max-width:960px;
  margin:0 auto;
}

@media screen and (min-width: 768px) {
    .section-title {
      font-size:36px;
    }
    .section-lead {
      font-size:24px;
    }
}

@media screen and (min-width: 992px) {
    .section-title {
      margin-bottom:40px;
    }
    .section-eyecatch {
      margin-bottom:40px;
    }
    .section-eyecatch img {
      border-radius:20px;
    }
    .section-lead {
      text-align:center;
    }
}

.detail h3 {
  font-size:16px;
  font-weight:bold;
  color:#ff6600;
}

.detail h3:before {
  content:"●";
  margin-right:5px;
  color:#ffcc00;
  font-size:20px;
}

.detail-item {
  border-top:1px solid #e5e5e5;
  padding-top:10px;
}

.detail > [class^="col-"]:first-child .detail-item {
  border:none;
}

@media screen and (min-width: 768px) {
    .detail h3 {
      font-size:20px;
      margin-bottom:15px;
    }
    .detail-item {
      border:none;
    }
}

.voice-detail {
  position:relative; 
  margin: 0 0 20px 0;
}

.voice-detail h3 {
  font-size:16px;
  margin-bottom:5px;
  font-weight:bold;
}

.voice-detail .voice-detail-content {
  position:relative;
  padding:15px 20px;
  margin:0 0 15px;
  border-radius: 10px;
  background: #f5f5f5;
}

.voice-detail .voice-detail-content *:last-child {
  margin-bottom:0;
}

.voice-detail .voice-detail-content:before {
  position: absolute;
  bottom: -20px; 
  left: 50%;
  display: block;
  width: 0;
  height: 0;
  content: '';
  border: 10px solid transparent;
  border-top-color: #f5f5f5;
  margin-left:-5px;
}

.voice-detail-speaker {
  text-align:center;
}

.voice-detail-speaker img {
  padding-right:10px;
  width:70px;
  vertical-align:middle;
}

@media screen and (min-width: 768px) {
    .voice-detail-speaker {
      font-size:14px;
    }
}

.dl-faq dt {
  margin:0 0 15px 60px;
  position:relative;
  background:#fff;
  padding:10px 15px;
  border-radius:5px;
  border:2px solid #cccccc;
}

.dl-faq dt:after, .dl-faq dt:before {
  right: 100%;
  top: 20px;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.dl-faq dt:after {
  border-color: rgba(255, 255, 255, 0);
  border-right-color: #fff;
  border-width: 5px;
  margin-top: -5px;
}

.dl-faq dt:before {
  border-color: rgba(204, 204, 204, 0);
  border-right-color: #cccccc;
  border-width: 8px;
  margin-top: -8px;
}

.dl-faq dt img {
  width:50px;
  position:absolute;
  top:0;
  left:-60px;
}

.dl-faq dd {
  margin-bottom:30px;
}

.movie {
  clear:both;
}

.movie h2 {
  color:#fff;
  background:#000;
  text-align:center;
  padding:10px;
}

.partner h3 {
  font-weight:bold;
  margin-bottom:20px;
  text-align:center;
}

@media screen and (min-width: 768px) {
    .partner h3 {
      font-size:24px;
    }
}

.section-media {
  padding:50px 0;
  margin-bottom:30px;
  text-align:center;
  background:url(../img/pic_media.jpg) center center repeat-x;
  background-size:auto 100%;
  border-top:5px solid #ffe401;
  border-bottom:10px solid #ffe401;
}

.section-media p img {
  width:80%;
}

@media screen and (min-width: 992px) {
    .section-media {
      padding:178px 0;
      border-top:10px solid #ffe401;
    }
    .section-media {
      background-size:auto;
    }
    .section-media p img {
      width:auto;
    }
}

.section-cta {
  background-color: #ffe401;
  padding:20px 0;
}

.section-cta-lead {
  text-align:center;
  font-weight:bold;
  padding-bottom:70px;
  background:url(/wp-content/uploads/2025/07/pic_cta-2.jpg) bottom repeat-x;
  background-size:auto 55px;
  margin-bottom:25px;
 }
 
 .cta-header {
   margin-bottom:30px;
 }
 
.cta-header h2 {
  text-align:center;
  margin-bottom:5px;
  font-size:18px;
  font-weight:bold;
}

.cta-header h2 span {
  font-size:24px;
}

.cta-header cta-catalog {
  text-align:center;
}
 
.cta-header cta-catalog img {
  width:70%;
  margin-bottom:20px;
}


@media screen and (min-width: 768px) {
    .section-cta {
      padding:50px 0;
    }
     
    .section-cta-lead {
      font-size:16px;
      background-size:auto;
      padding-bottom:220px;
      margin-bottom:40px;
    }
    
    .cta-header h2 {
      font-size:26px;
      line-height:1.3;
      margin-bottom:20px;
      text-align:left;
    }
    .cta-header h2 span {
      font-size:40px;
    }
    
    .cta-header .cta-catalog {
      text-align:right;
    }
     
    .cta-header .cta-catalog img {
      width:240px;
      margin-bottom:0;
      margin-top:-15px;
    }
}

@media screen and (min-width: 992px) {
    .section-cta-lead {
      font-size:20px;
    }
    .cta-header h2 {
      font-size:36px;
    }
    .cta-header h2 span {
      font-size:60px;
    }
    .cta-header .cta-catalog img {
      margin-top:-5px;
    }
}

.price {
	text-align: center;
	background: #f5f5f5;
	padding: 20px 0 10px;
	margin-bottom: 20px;
}

.price dt {
	font-size: 16px;
	margin-bottom: 5px;
	font-weight: bold;
}

.price dd p {
	margin-bottom: 5px;
}

.price dd p:first-child {
	font-size: 24px;
}

@media screen and (min-width: 768px) {
	.price dt {
		font-size: 18px;
		}
	.price dd p:first-child {
		font-size: 36px;
		}
}

.request-detail {
  clear:both;
  background:#fff;
  padding:0 10px;
  border:2px solid #ff6600;
  margin-bottom:10px;
}

.request-detail h3 {
  margin:0 -10px;
  text-align:center;
  font-size:16px;
  font-weight:bold;
  color:#fff;
  background:#ff6600;
  padding:10px 0;
  cursor:pointer;
}

.request-detail h3:before {
  font-family: FontAwesome;
  content: "\f105";
  line-height: 1;
  display: inline-block;
  color:#fff;
  margin-right:10px;
}

.request-detail h3.selected:before {
    content: "\f107";
}

.request-content {
  margin-top:20px;
}

@media screen and (min-width: 768px) {
    .request-detail {
      font-size:16px;
      padding:0 30px;
    }
    
    .request-detail h3 {
      margin:0 -30px;
      font-size:20px;
    }
    
    .request-content {
      margin-top:30px;
    }
    
    .request-detail .form table th {
      width:240px;
    }
}
