/*
    Theme Name: Squadfree
    Theme URL: https://bootstrapmade.com/squadfree-free-bootstrap-template-creative/
    Author: BootstrapMade
    Author URL: https://bootstrapmade.com
*/

/* ==== Google font ==== */
@import url('https://fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic|Montserrat:700|Merriweather:400italic');


body {
    width: 100%;
    height: 100%;
    font-family: "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 300;
    color: #333;
    background-color: #fff;
}

html {
    width: 100%;
    height: 100%;
}

ul,li{
    margin:0;
    padding: 0;
}

li{
    list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 30px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
}

h2 {
			margin-bottom:15px;
}

p {
    font-size: 14px;
    line-height: 1.6em;
}

p:not(:last-child){
    margin-bottom:20px;
}

p.lead {
	font-weight: 600;
}

a {
    color: #1788e9;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

a:hover,
a:focus {
    text-decoration: none;
    color: #176e61;
}

.img{
    width:100%;
}

.light {
    font-weight: 400;
}

.pc {
	display: block;
}

.navbar-header{
    position: relative;
}

.navbar-right{
    float:right;
}

.navbar {
    margin-bottom: 0;
    border-bottom: 1px solid rgba(255,255,255,.3);
	
}

.navbar-brand {
    font-weight: 700;
}
.navbar-brand {
  height: 40px;
  padding: 5px 15px;
  font-size: 18px;
  line-height: 1em;
}

.navbar-brand h1{
	color: #fff;
  font-size: 20px;
  line-height: 40px;
}

.navbar-brand:focus {
    outline: 0;
}

.nav.navbar-nav {
    /*background-color: rgba(255,255,255,.4);*/
}

.navbar-custom.top-nav-collapse .nav.navbar-nav {
    background-color: rgba(0,0,0,0);
}


.navbar-custom ul.nav li a {
	font-size: 14px;
	letter-spacing: 1px;
    color: #fff;
	text-transform: uppercase;
	font-weight: bold;
}

.navbar-custom ul.nav li.active a,
.navbar-custom ul.nav li:hover a,
.navbar-custom ul.nav li:focus a{
    color:#333;
}

.navbar-custom.top-nav-collapse ul.nav li a {
	    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
	color: #333;
}

.navbar-custom ul.nav ul.dropdown-menu {
	  border-radius: 0;	
}

.navbar-custom ul.nav ul.dropdown-menu li {
	border-bottom: 1px solid #f5f5f5;

}

.navbar-custom ul.nav ul.dropdown-menu li:last-child{
	border-bottom: none;
}

.navbar-custom ul.nav ul.dropdown-menu li a {
	padding: 10px 20px;
}

.navbar-custom ul.nav ul.dropdown-menu li a:hover {
	background: #fefefe;
}

.navbar-custom.top-nav-collapse ul.nav ul.dropdown-menu li a {
	color: #666;
}

.navbar-custom .nav li a {
    -webkit-transition: background .3s ease-in-out;
    -moz-transition: background .3s ease-in-out;
    transition: background .3s ease-in-out;
}

.navbar-custom .nav li a:hover,
.navbar-custom .nav li a:focus,
.navbar-custom .nav li.active {
    outline: 0;
    background-color: rgba(255,255,255,.8);
}
.navbar-custom .nav li a:hover,
.navbar-custom .nav li a:focus,
.navbar-custom .nav li.active {
    outline: 0;
    background-color: rgba(255,255,255,.8);
}

.navbar-toggle {
    padding: 4px 6px;
    font-size: 20px;
    color: #fff;
}

.navbar-toggle:focus,
.navbar-toggle:active {
    outline: 0;
}

.top-nav-collapse{
    background:#72b9f6 !important;
}


/* loader */
#preloader {
    background: #ffffff;
    bottom: 0;
    height: 100%;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 999;
}


#loaderInner {
    background:#ffffff url(../img/spinner.gif) center center no-repeat;
    height: 60px;
    left: 50%;
    margin: -50px 0 0 -50px;
    position: absolute;
    top: 50%;
    width: 60px;
}

@keyframes boxSpin{
  0%{
    transform: translate(-10px, 0px);
  }
  25%{
    transform: translate(10px, 10px);
  }
  50%{
    transform: translate(10px, -10px);
  }
  75%{
    transform: translate(-10px, -10px);
  }
  100%{
    transform: translate(-10px, 10px);
  }
}


@keyframes shadowSpin{
  0%{
    box-shadow: 10px -10px #39CCCC, -10px 10px #FFDC00;
  }
  25%{
    box-shadow: 10px 10px #39CCCC, -10px -10px #FFDC00;
  }
  50%{
    box-shadow: -10px 10px #39CCCC, 10px -10px #FFDC00;
  }
  75%{
    box-shadow: -10px -10px #39CCCC, 10px 10px #FFDC00;
  }
  100%{
    box-shadow: 10px -10px #39CCCC, -10px 10px #FFDC00;
  }
}

#load {
	z-index: 9999;
  background-color: #FF4136;
  opacity: 0.75;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%;
  margin: -5px auto 0 auto;
  left: 0;
  right: 0;
  border-radius: 0px;
  border: 5px solid #FF4136;
  box-shadow: 10px 0px #39CCCC, 10px 0px #01FF70;
  animation: shadowSpin 1s ease-in-out infinite;
}

/* misc */
hr {
  margin-top: 10px;
}

.share_button {
    vertical-align: middle;
    margin-top:10px;
}

.share_button > * {
    vertical-align: bottom;
}

/* margins */
.marginbot-0{margin-bottom:0 !important;}
.marginbot-10{margin-bottom:10px !important;}
.marginbot-20{margin-bottom:20px !important;}
.marginbot-30{margin-bottom:30px !important;}
.marginbot-40{margin-bottom:40px !important;}
.marginbot-50{margin-bottom:50px !important;}

/* p style */
.caption{
    color:#777777;
    text-align: right;
    font-size:12px;
}

/* a style */
.link_text{
    color:#1788e9;
    text-decoration: underline;
}

/* i style */
i.before{
    margin-right:5px;
}

i.after{
    margin-left:5px;
}

/* table style */
th,td{
    text-align: left;
    vertical-align: top;
    padding-bottom:20px;
}

table td> span{
    font-weight: bold;
    font-size:18px;
}

/* ===========================
--- General sections
============================ */

.home-section {
    padding-top: 60px;
    padding-bottom: 110px;
	display:block;
    position:relative;
    z-index:120;
}



.section-heading h2 img{
    height: 46px;	
}


/* --- section bg var --- */

.bg-white {
	background: #fff;
}

.bg-gray {
	background: #f8f8f8;
}

.bg-dark {
	background: #575757;
}

/* --- section color var --- */

.text-light {
	color: #fff;
}



/* ===========================
--- Intro
============================ */

.intro {
    position: relative;

}

.intro .page-scroll {
	text-align: center;
}

.intro .main_bg{
    background: url(../img/bg1.jpg) no-repeat top center;
    background-size: cover;
    width:100%;
    height: 100%;
    position: absolute;
    top:0;
    z-index: -2;
}

.intro .main_grd{
    background: linear-gradient(315deg, rgba(94,223,142,.6), rgba(84,188,238,.6), rgba(56,139,236,.6));
    background-size: 600% 600%;
    -webkit-animation: AnimationName 10s ease infinite;
    -moz-animation: AnimationName 10s ease infinite;
    animation: AnimationName 10s ease infinite;
    width:100%;
    height: 100%;
    position: absolute;
    top:0;
    z-index: -1;
}
@-webkit-keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@-moz-keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}


/* ===========================
--- news
============================ */

.heading-about{
    margin-bottom:60px;
}

.news_list li{
    border-bottom:1px solid #ccc;
    list-style:none;
    text-align: left;
    width:100%;
    padding-bottom:10px;
}

.news_list li:not(:last-child){
    margin-bottom:20px;
}

.news_list span{
    display: inline-block;
    width:120px;
}




/* ===========================
--- about
============================ */

#about .about_inner{
    text-align: left;
    margin-bottom:40px;
}

.about_inner .title{
    font-size:24px;
}

#about th{
    width:100px;
}

#about dl{
    margin-top:20px;
}

.about_list{
    margin-top:20px;
}

.about_list li:not(:last-child){
    margin-bottom:10px;
}

.about_list li span{
    display: inline-block;
    width:155px;
}

#about table{
    font-size:16px;
    line-height: 1.8em;
}
/* ===========================
--- report
============================ */
.report p{
	margin-bottom:0.5em;
}
.report img{
	margin-bottom:4px;
}
.report h5 .report-name{
	display:block;
	font-size:18px;
	margin-top:8px;
	margin-bottom:-5px;
	font-weight: bold;
}
.report h5 .report-name2{
	display:block;
	font-size:18px;
	margin-top:14px;
	margin-bottom:-5px;
	font-weight: bold;
}
.report h5 .title{
/* 	margin-top:22px; */
	font-size:24px;
	display:inline-block;
	background-color:#72b9f6;
	padding:8px 3px;
	line-height:3.0rem;
}
.report .text-center{
	display:block;
}
.col-sm-12 .kansou ul li{
	list-style-type:disc;
	margin-bottom:0.5em;
}
.col-sm-12 .kansou{
	border: #72b9f6 solid 1px;
	padding:10px 10px;
    border-radius:7px;
	background-color: #e3f1fd;
	margin-top: 1em;
}
.col-sm-12 .kansou h6{
	font-size:14px;
	margin-bottom:13px;
	margin-top:0.3em;
	margin-left: 0.2em;
}

.report h5{
    border-top:1px solid #ccc;
    font-weight: normal;
    margin-bottom:25px;
    position: relative;
	
}

.report h5 .bu{
/*     background:#f8f8f8; */
    background:#fff;
    position: relative;
    top:-7px;
}
.report-name  span{
	font-size:15px;
}.report-name2  span{
	font-size:15px;
}
.col-sm-8 .col-sm-12{
	padding:0;
}
.graf{
	margin-top:50px;
}
.link strong{
	display:inline-block;
	margin-bottom:0.5em;
	color:#666;
}



/* ===========================
--- program
============================ */

.program-desc{
    text-align: left;
    width:700px;
    margin:0 auto 20px;
}

.program-desc h5{
    border-top:1px solid #ccc;
    font-weight: normal;
    margin-bottom:15px;
    position: relative;
}

.program-desc h5 span{
    background:#fff;
    padding: 0 15px;
    position: relative;
    top:-7px;
}

.program-desc_inner{
    overflow: hidden;
}

.program-desc .title{
       font-size:24px;
       margin-bottom:5px;
}

.program-desc .time{
    margin-top:10px;
}

.program-desc .time img{
    height: 23px;
}

.program-desc .name{
    font-size:16px;   
}

.program-desc .name span{
    font-size:14px;
}
.q img{
	width:40%;
}


/* ===========================
--- speaker
============================ */

.boxed-grey {
	background: #f9f9f9;
	padding: 40px 20px;
}

.team h5 {
	margin-bottom: 10px;
}

.team .name {
    font-size:24px;
	margin-bottom: 10px;
}

.avatar {
	margin-bottom: 20px;
}

.avatar img{
    margin:0 auto;
}

.row2{
    overflow: hidden;
    width:66.6666666%;
    margin:0 auto;
}


/* ===========================
--- access
============================ */
.access_detail{
    font-size:14px;
    text-align: left;
}

.access_detail p{
    margin-bottom:30px;
}

.access_detail span{
    font-size: 18px;
    font-weight: bold;
}

.access_detail .train{
    background: url(../img/icon_train.png) no-repeat left top;
    padding-left:40px;
}

.access_detail .car{
    background: url(../img/icon_car.png) no-repeat left top;
    padding-left:40px;
}

.access_photo img{
    margin-bottom:20px;
}

.access_photo img{
    width:100%;
}
/* ===========================
  --- partners
  ============================ */
  
.heading-partners{
    margin-bottom:30px;
}

.boxed-blue{
	background-color:rgba(234,237,241,0.6);
	padding:15px 15px 3px 15px;
	border-radius:7px;
}
.company{
	font-size:15px;
	display:inline-block;
	border-top:solid 1px rgba(55,55,55,0.2);
	border-bottom:solid 1px rgba(55,55,55,0.2);
	margin:17px auto;
	padding:5px 2px;
	color:black;
}

.company a {
	color:black;
}
#partners .row{
	margin-bottom:30px;
}
.company a:hover{
	background-color:#e3f1fd;
	color:#176e61;
/* 	color:black; */
}
.company:visited{
/* 	color:black; */
}

/* ===========================
--- Footer
============================ */

footer {
    background:#72B9F6 !important;
	text-align: center;
	padding: 50px 0 ;
	
}

footer p {
	color: #f8f8f8;
}

.credits, .credits a {
    color: #fff;
}

/* ==========================
Parallax
============================= */

#parallax1{	
	background-image: url(../img/parallax/1.jpg);
}

#parallax1:after {	
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWNgYGD4z0AswK4SAFXuAf8EPy+xAAAAAElFTkSuQmCC);
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
	opacity: 0.7;
	z-index: -1;
}


#parallax2{	
	background-image: url(../img/parallax/2.jpg);

}

#parallax2:after  {	
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAEklEQVQImWNgYGD4z0AswK4SAFXuAf8EPy+xAAAAAElFTkSuQmCC);
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
	opacity: 0.7;
	z-index: -1;
}


/* ===========================
--- Elements
============================ */

.btn {
	border-radius: 0;
    text-transform: uppercase;
    font-family: Montserrat,sans-serif;
    font-weight: 400;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}


.btn-circle {
    width: 70px;
    height: 70px;
    margin-top: 15px;
    padding: 3px 16px;
    border: 2px solid #fff;
    border-radius: 50%;
    font-size: 40px;
    color: #fff;
    background: 0 0;
    -webkit-transition: background .3s ease-in-out;
    -moz-transition: background .3s ease-in-out;
    transition: background .3s ease-in-out;
}

.btn-circle.btn-dark {
    border: 2px solid #666;
    color: #666;
}


.btn-circle:hover,
.btn-circle:focus {
    outline: 0;
    color: #fff;
    background: rgba(255,255,255,.1);
}

.btn-circle.btn-dark :hover,
.btn-circle.btn-dark :focus {
    outline: 0;
    color: #999;
    background: #fff;
}

.btn-circle.btn-dark :hover i,
.btn-circle.btn-dark :focus i{
    color: #999;
}

.page-scroll .btn-circle i.animated {
    -webkit-transition-property: -webkit-transform;
    -webkit-transition-duration: 1s;
    -moz-transition-property: -moz-transform;
    -moz-transition-duration: 1s;
}

.page-scroll .btn-circle:hover i.animated {
    -webkit-animation-name: pulse;
    -moz-animation-name: pulse;
    -webkit-animation-duration: 1.5s;
    -moz-animation-duration: 1.5s;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
}

@-webkit-keyframes pulse {    
    0 {
        -webkit-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-moz-keyframes pulse {    
    0 {
        -moz-transform: scale(1);
        transform: scale(1);
    }

    50% {
        -moz-transform: scale(1.2);
        transform: scale(1.2);
    }

    100% {
        -moz-transform: scale(1);
        transform: scale(1);
    }
}


#text {
    color: #fff;
    background: #ffcc00;
}

#map {
	height: 500px;
}


.btn-skin:hover,
.btn-skin:focus,
.btn-skin:active,
.btn-skin.active {
  color: #fff;
  background-color: #666;
  border-color: #666;
}


.btn-default:hover,
.btn-default:focus {
    border: 1px solid #28c3ab;
    outline: 0;
    color: #000;
    background-color: #28c3ab;
}

.btn-huge {
    padding: 25px;
    font-size: 26px;
}

.banner-social-buttons {
    margin-top: 0;
}

.contact_btn{
    max-width:290px;
    margin: 0 auto;
}

.contact_btn a{
    display: block;
    color:#333;
    font-size:1.4em;
    background: linear-gradient(315deg, #ffaf33, #F0F260);
    border-radius:50px;
    padding:30px;
}

.contact_btn a:hover{
    opacity: .7;
}

/* Media queries */

@media(min-width:1000px) {

    .intro .slogan img{
        width:1000px;
    }
}

@media(max-width:999px) {
    .container-lg{
        width:100%;
        margin:0 auto;
        padding:0 20px;
    }

    .intro .slogan img{
        width:90%;
    }
}

@media(min-width:767px) {

    .container-md{
        width:760px;
        margin:0 auto;
    }

    .container-sm{
        width:560px;
        margin:0 auto;
    }

    .navbar {
        padding: 20px 0;
        border-bottom: 0;
        letter-spacing: 1px;
        background: 0 0;
        -webkit-transition: background .5s ease-in-out,padding .5s ease-in-out;
        -moz-transition: background .5s ease-in-out,padding .5s ease-in-out;
        transition: background .5s ease-in-out,padding .5s ease-in-out;
    }

    .top-nav-collapse {
        padding: 0;
        background-color: #000;
    }

    .navbar-custom.top-nav-collapse {
        /*border-bottom: 1px solid rgba(255,255,255,.3);*/
    }

    .btn_contact{
         position: absolute;
         top:-20px;
         right:0;
         -webkit-transition: top .5s ease-in-out;
        -moz-transition: top .5s ease-in-out;
        transition: top .5s ease-in-out;
    }

    .top-nav-collapse .btn_contact{
         top:0;
    }

    .btn_contact a{
        background:#f0f260;
        color:#333;
        display: inline-block;
        font-size: 18px;
        text-align: center;
        padding:20px 0;
        width:190px;
        height: 70px;
    }

    .btn_contact a:hover{
        background:#d7d92d;
    }
	
    .intro {
        /*height: 100%;*/
        padding: 120px 0 30px;
    }

    .intro .slogan {
        text-align: center;
        width:100%;
    }

    .brand-heading {
        font-size: 100px;
    }

    .intro-text {
        font-size: 25px;
    }

    .gmap{
        width:100%;
        height: 350px;
    }


}

@media (max-width:991px){
    .program-desc{
        text-align: center;
        width:100%;
        margin:0 auto 40px;
    }

    .program-desc .time{
        margin-bottom:15px;
    }
		
}

@media (max-width:768px) {
		
		.home-section {
		    padding-top: 50px;
		    padding-bottom: 30px;
			display:block;
		    position:relative;
		    z-index:120;
		}
		
		h2 {
			margin-bottom:15px;
		}
		
		.heading-about{
		    margin-bottom:30px;
		}

		.pc {
			display: none;
		}
		
    .container-md{
        width:100%;
    }

    .intro{
        padding:100px 0 40px;
    }

    .intro .slogan {
        text-align: center;
    }

    .intro .slogan img{
        width:90%;
    }

    .btn_contact a{
        background:#f0f260;
        color:#333;
        display: inline-block;
        font-size: 14px;
        text-align: center;
        height: 55px;
        padding:15px 0;
        width:130px;
    }

    .news_list{
        width:100%;
        padding:0 40px;
        margin:0 auto;
    }

	.team.boxed-grey {
		margin-bottom: 30px;
	}
	
	.boxed-grey {
		margin-bottom: 30px;
	}

  .navbar-right{
      float:none;
  }    

  .gmap{
      width:100%;
      height: 250px;
  }
	.access_photo div{
    text-align: center;
	}
	.access_photo img{
    max-width:230px;
	}
	
		
	
	/* ===========================
  --- speaker
  ============================ */

  .row2{
      width:auto;
      margin-left: -15px;
      margin-right: -15px;
  }
}
	/* ===========================
  --- report
  ============================ */
ul{
	margin-left:20px;
}
.balloon{
	margin-bottom:20px;
}
.q img{
	width:60%;
}
.col-sm-12 .kansou{
	margin-bottom:20px;
}
/* ===========================
  --- partners
  ============================ */

.boxed-blue {
		margin-bottom: 30px;
	}


@media (max-width:480px) {

    .container-lg{
        width:100%;
        padding:0;
    }

    .container-sm{
        width:100%;
    }

    .container > .navbar-header,
    .container > .navbar-collapse{
        margin: 0;
    }
	.navbar-custom .nav.navbar-nav {
    background-color: rgba(255,255,255,.4);
	}
	
	.navbar.navbar-custom.navbar-fixed-top {
		margin-bottom: 30px;
	}
	
	.tp-banner-container {
		padding-top:40px;
	}

	.page-scroll a.btn-circle {
		width: 40px;
		height: 40px;
		margin-top: 10px;
		padding: 7px 0;
		border: 2px solid #fff;
		border-radius: 50%;
		font-size: 20px;
	}

    .navbar-right{
        float:none;
    }

    .btn_contact{
         position: absolute;
         left:0;
    }

    .news_list{
        width:100%;
        padding:0;
    }

    .news_list span{
        display: block;
        width:120px;
    }

    /* about */
    #about th,
    #about td{
        display: block;
        width: 100%;
    }

    #about th{
        padding-bottom: 10px;
    }

    .about_list li span{
        display: block;
    }
	.q img{
	width:80%;
}
    

	/* ===========================
    --- feature
    ============================ */

    #feature table th,
    #feature table td {
        display: block;
    }

    #feature table th{
        border: none;
        width:100%;
        height: auto;
        padding:15px 0;
    }

    #feature table td{
        padding: 10px 0 20px 0; 
    }


    /* ===========================
    --- speaker
    ============================ */

    .row2{
        width:auto;
        margin-left: -15px;
        margin-right: -15px;
    }

}