@charset "utf-8";
/* CSS Document */
.small{font-size:0.8em }
.f24{font-size: 24px!important}
.f26{font-size: 26px!important}
.f28{font-size: 28px!important}
.f30{font-size: 30px!important}
.f34{font-size: 34px!important}
@media screen and (max-width:1000px){
.f24{font-size: 22px!important}
.f26{font-size: 24px!important}
.f28{font-size: 24px!important}
.f30{font-size: 24px!important}
.f34{font-size: 24px!important}
}

ol li{margin-bottom:25px}

h3{font-weight: 900}
.program{color: #3d5a80;position: relative;padding-left: 25px;font-size: 28px;margin-bottom: 30px}
.program:before{content: "";height: 10px;width: 20px;background: #3d5a80;display: inline-block;top: 25%;left: 0;position: absolute;margin-right: 20px}
.listcheck li{list-style: none;border-bottom: 1px solid #000;position: relative;padding-left: 35px;margin-bottom: 20px;}
.listcheck li:before{content: "";position: absolute;background: url("../img/check.svg") no-repeat;width: 30px;height: 23px;left: 0;top: 25%}
ol {counter-reset:number;list-style-type: none!important;}
ol li.privacy {position: relative;padding-left: 30px;line-height: 1.5em;border-bottom: 1px solid #000;padding-bottom:20px;}
li.privacy:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*以下数字のデザイン変える*/
  display:inline-block;
  background: #3d5a80;
  color: white;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 30%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.marginindent{margin-left:40px}

ol.tokuten {counter-reset:number;list-style-type: none!important;}
ol.tokuten li {position: relative;padding-left:0px;;border-bottom: 0;margin-bottom: 50px!important}
ol.tokuten li:before{top: 18px;
  font-size:inherit;position: relative;
  counter-increment: number;padding: 10px 0;
  content: "特典" counter(number) ;
  background: #B9A86D;display: block;
  color: white;
  font-weight:bold;
  border-radius: 10px;
  width: 100px;
height: 40px;line-height:20px;
margin-bottom: 30px!important;
	text-align:center;
}

#que1, #que3, .bgg{background: #f6f6f6}
a img{transition: ease all .3s}
a img:hover{opacity: 0.5}
.pbottom0{padding-bottom: 0px!important}
@media screen and (max-width:1300px){.p-half{padding: 5.5rem 0 0 0!important}.mbnon{margin-bottom: 10px!important}}
.triangle {
  position: relative;
  background: #2c3e50;
  height: auto;
}

.triangle::before {
  content: '';
  position: absolute;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 43px 43px 0 43px;
  border-color: #2c3e50 transparent transparent transparent;
  left: 50%;
  transform: translateX(-50%) translateY(100%);
}
.p-7rem{padding: 7rem 0;}
.mb-7rem{margin-bottom: 7.5rem}

/* Background color */
.bg-red {background-color: #3d5a80;}
.bg-white {color: #ffffff;}
.bg-black{background: #202020;}
/* Text color */
.text-red {color: #a62317;}
.text-black{color: #202020;}
.text-white{color: #ffffff;}

/* Text color */
.text-blue {color: #0061d4;}
.text-yellow {color: #d2d400;}
.text-pink {color: #ad227a;}
.text-orange {color: #de6605;}
.text-black{color: #040608;}
.text-white{color: #ffffff;}

@media screen and (max-width: 1399px) {
.p-7rem{padding: 6rem 0;}
.mb-7rem{margin-bottom: 3rem}
.triangle {
  position: relative;
  background: #2c3e50;
  height: auto;
}

    section {
        padding: 6rem 0;
    }
    .btn.btn-medium {
        font-size: 14px;
        padding: 14px 40px;
    }
    .loader-bg svg {
        width: 80px;
    }
    .navbar-top-default {
        background: #202020;
    }
    .header-appear .navbar-top-default {
        background: #202020;
    }

    /* Side Menu */
    .side-menu {
        width: 100%;
    }
    .side-footer p{
        font-size: 12px;
    }
    .side-nav .navbar-nav .nav-link {
        font-size: 1.1rem;
    }
    .side-menu .side-nav {
        margin-bottom: 0;
    }
    .sidemenu_btn {
        right: 10px;
        margin-right: 0;
    }
    .side-menu .btn-close {
        right: 15px;
    }
    .header-appear .navbar-top-default {
        height: 75px;
    }

    /* Banner */
    .area-heading p {font-size: 18px;}
    .slider-area, .slider-area2 {
        display: block;
        height: auto;
    }
    .author-skills {
        position: relative;
    }
    .slider-image img {
        top: 30px;
    }
    .slider-area .content-margin, .slider-area2 .content-margin {margin-bottom: 0;}
    .slider-image {margin: 0;top: 0!important;}

    /* About */
    h2.heading {
        font-size: 28px;
    }
    .about-heading .info {
        font-size: 16px;
    }

    /* Stats */
    .stats-sec .circular-wrap>div {
        padding-bottom: 90px;
    }
    .stats-sec .circular-wrap>div:nth-child(3) {
        padding-bottom: 0;
    }
    .circle canvas {
        height: 160px!important;
        width: 160px!important;
    }
    .stats-sec .circular-wrap p {
        font-size: 16px;
    }
    .stats-sec .circular-wrap h4 {
        font-size: 22px;
    }

    /* Portfolio */
    .project-sec .project-area .project-detail .project-heading {
        font-size: 28px;
    }
    .project-sec .project-area .project-detail .project-text {
        font-size: 14px;
    }
    .project-sec .project-area .project-img {
        height: auto;
    }
    .project-sec .project-area .project-detail {
        position: relative;
        transform: translateY(0%);
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .portfolio {
        padding-top: 6rem;
    }
    .project-sec .project-links-right a i, .project-sec .project-links-left a i {
        display: none;
    }
    .project-sec .owl-item.active .project-area .project-detail .animate-fade{
        animation: none;
    }

    /* Testimonials */
    .owl-testimonial {
        margin-top: 35px;
    }
    .heading-area .heading {
        font-size: 34px;
    }
    .testimonial_img {
        left: 37%;
    }
    #testimonials .text1 {
        left: 32%;
    }

    /* Clients */
    .clients-area .heading {
        font-size: 34px;
    }
    .clients-area .sub-para {
        font-size: 16px;
    }

    /* Contact */
    .contact-sec {
        margin-bottom: 0;
    }
}

@media (min-width: 576px) and (max-width: 790px) {
    /*Testimonial */
    .testimonial_img {
        position: absolute;
        left: 43%;
        top: 60%;
    }

    #testimonials .text1 {
        position: absolute;
        text-align: center;
        top: 86%;
        left: 40%;
    }
}


.publication li{padding: 10px; border: 2px solid #8b5c02;display: block;list-style: none;
margin-bottom: 5px;border-radius: 5px}
.publication li:last-child{margin-bottom: 0}

.timeline {list-style: none;}
.timeline > li {margin-bottom: 60px;}
/* for Desktop */
@media ( min-width : 640px ){
  .timeline > li {
    overflow: hidden;
    margin: 0;
    position: relative;
  }
  .timeline-date {
    width: 130px;
    float: left;
    margin-top: 20px;
  }
  .timeline-content {
    width: 80%;
    float: left;
    border-left: 1px #333 solid;
    padding-left: 30px;
    padding-bottom: 40px
  }
  .timeline-content:before {
    content: '';
    width: 10px;
    height: 10px;
    background: #ee6c4d;
    position: absolute;
    left: 125px;
    top: 24px;
    border-radius: 100%;
  }
}

/* ================ Timeline Media Queries ================ */

@media screen and (max-width: 660px) {
.timeline > li {
    overflow: hidden;
    margin: 0;
    position: relative;
}
.timeline > li {margin-bottom:20px;}
.timeline {width: 100%;padding: 1em 0 1em 0;}
.timeline li {padding: 0.5em 0;}
.timeline-content {position: relative;
    width: 99%;
    float: left;
    padding-left: 20px;
}
  .timeline-content:before {
    content: '';
    width: 10px;
    height: 10px;
    background: #ee6c4d;
    position: absolute;
    left: 0px;
    top: 5px;
    border-radius: 100%;
  }
.direction-l,
.direction-r {
	float: none;
	width: 100%;

	text-align: center;
}

.flag-wrapper {
	text-align: center;
}

.flag {
	background: rgb(255,255,255);
	z-index: 15;
}

.direction-l .flag:before,
.direction-r .flag:before {
  position: absolute;
  top: -30px;
	left: 50%;
	content: ' ';
	display: block;
	width: 12px;
	height: 12px;
	margin-left: -9px;
	background: #fff;
	border-radius: 10px;
	border: 4px solid rgb(255,80,80);
	z-index: 10;
}

.direction-l .flag:after,
.direction-r .flag:after {
	content: "";
	position: absolute;
	left: 50%;
	top: -8px;
	height: 0;
	width: 0;
	margin-left: -8px;
	border: solid transparent;
	border-bottom-color: rgb(255,255,255);
	border-width: 8px;
	pointer-events: none;
}

.time-wrapper {
	display: block;
	position: relative;
	margin: 4px 0 0 0;
	z-index: 14;
}

.direction-l .time-wrapper {
	float: none;
}

.direction-r .time-wrapper {
	float: none;
}

.desc {
	position: relative;
	margin: 1em 0 0 0;
	padding: 1em;
	background: rgb(245,245,245);
	-webkit-box-shadow: 0 0 1px rgba(0,0,0,0.20);
	-moz-box-shadow: 0 0 1px rgba(0,0,0,0.20);
	box-shadow: 0 0 1px rgba(0,0,0,0.20);
	
  z-index: 15;
}

.direction-l .desc,
.direction-r .desc {
	position: relative;
	margin: 1em 1em 0 1em;
	padding: 1em;
	
  z-index: 15;
}

}

@media screen and (min-width: 400px ?? max-width: 660px) {

.direction-l .desc,
.direction-r .desc {
	margin: 1em 4em 0 4em;
}

}


/* ===================================
   Scroll Top
====================================== */

.go-top {
    position: fixed;
    cursor: pointer;
    bottom: 80px;
    right: 15px;
    color: #202020;
    border-radius: 50%;
    z-index: 4;
    width: 40px;
    text-align: center;
    height: 42px;
    line-height: 42px;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .9s;
    -o-transition: .9s;
    transition: .9s;
    -webkit-transform: translateY(150px);
    -ms-transform: translateY(150px);
    transform: translateY(150px);
}

.go-top.active {
    -webkit-animation: fadeIn 2s;
    animation: fadeIn 2s;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

.go-top::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: #202020;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    border-radius: 50%;
}

.go-top:hover::before, .go-top:focus::before {
    opacity: 1;
    visibility: visible;
}