
/* ========================================================== */
/* 			            01. GENERAL LAYOUT                    */
/* ========================================================== */
/*
body {
background-image: url("../images/prism.png");
}	
*/
	
ul, ol { list-style: none; list-style-image: none; margin: 0; padding: 0;
	color:#777;
	font-size: 14px;
	line-height:24px;
	margin-bottom:20px;
}
	
ul li, ol li{
	font-size: 14px;
	line-height: 28px;
}

ul li i{
	vertical-align: middle;
}

ul.features-list li{
	float:left;
	font-size:14px;
	line-height:24px;
	margin:10px 0;
}

ul.features-list li img{
	max-width:55px;
	margin-right:20px;
	float:left;
}

p {font-size: 14px;
	line-height: 24px;
	font-weight: 400;
	color: #777;
	margin-bottom:25px;
}

a,
a:hover,
a:focus {
	text-decoration: none;
	outline: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-weight: 700;
  line-height: 1.2;
  letter-spacing:2px;
  margin-bottom:20px;
}

/*
h1 {
	font-size: 42px;
}

h2 {
	font-size: 34px;
}

h3 {
	font-size: 28px;
}

h4 {
	font-size: 18px;
}

h5 {
	font-size: 16px;
}

h6 {
	font-size: 14px;
}
*/

h1.topcopy{
	font-size:25px;
	line-height: 1.8;
	color: #000;
	margin-bottom:30px;
	padding-bottom:10px;
	text-align: center;
}

h1.topcopy02{
	font-size:23px;
	line-height: 1.8;
	color: #000;
	padding-bottom:10px;
	text-align: center;
}

p.section-txt{
	color: #5E5D5D;
    font-size: 16px;
    line-height: 2;
	text-align: left;
/*		letter-spacing: 1px;*/
}

h2.section-title01{
	font-size:25px;
	color: #065fbd;
	position:relative;
	margin:0;
	padding-bottom:10px;
	text-align: center;
	text-transform: uppercase;
}

h2.section-title01::after{
	position: absolute; content: "";
	background-color: #ffd52e;
	height: 3px;
	width: 20%;
	bottom: -1px;
	left: 40%;
}

h3.subtitle01{
	color: #065fbd;
	text-transform:uppercase;
    font-size: 20px;
    line-height: 1.8;
	text-align: center;
	margin: 0 0 20px;
}

h4.section-title{
	color: #5E5D5D;
    font-size: 25px;
/*    line-height: 1.8;*/
	text-align: left;
	margin: 0;
	padding-bottom: 20px;
}
/*h4.section-title a {color:#f9f9f9; }*/


p.section-txt02{
	color: #5E5D5D;
    font-size: 23px;
	line-height: 1.5;
	text-align: center;
	font-weight: 600;
}


/*コンタクトページ用*/
h2.section-title02{
	font-size:25px;
	color: #fff;
	position:relative;
	margin:0;
	padding-bottom:10px;
	text-align: center;
	text-transform: uppercase;
}

h2.section-title02::after{
	position: absolute; content: "";
	background-color: #fff;
	height: 3px;
	width: 20%;
	bottom: -1px;
	left: 40%;
}

h3.subtitle02{
	color: #fff;
	text-transform:uppercase;
    font-size: 20px;
    line-height: 1.8;
	text-align: center;
	margin: 0 0 20px;
}

iframe{
	max-width:100%;
	border:none;
}

.width-100 {
	width: 100%;
}

.medium {
	font-weight: 400;
}

.bold {
	font-weight: 700;
}

.red {
    color: #B8162C;
}

.grey{
	color:#ddd;
}

.white{
	color:#fff;
}


/* margin and padding classes */

.margin-right-25 {
	margin-right: 25px !important;
}

.margin-top-110 {
	margin-top: 110px !important;
}

.margin-top-100 {
	margin-top: 100px !important;
}

.margin-top-90 {
	margin-top: 90px !important;
}

.margin-top-80 {
	margin-top: 80px !important;
}

.margin-top-70 {
	margin-top: 70px !important;
}

.margin-top-60 {
	margin-top: 60px !important;
}

.margin-top-50 {
	margin-top: 50px !important;
}

.margin-top-40 {
	margin-top: 40px !important;
}

.margin-top-30 {
	margin-top: 30px !important;
}

.margin-top-20 {
	margin-top: 20px !important;
}

.margin-top-10 {
	margin-top: 10px !important;
}

.margin-top-5 {
	margin-top: 5px !important;
}

.margin-top-0 {
	margin-top: 0px !important;
}

.margin-bottom-0 {
	margin-bottom: 0px !important;
}

.margin-bottom-10 {
	margin-bottom: 10px !important;
}

.margin-bottom-20 {
	margin-bottom: 20px !important;
}

.margin-bottom-30 {
	margin-bottom: 30px !important;
}

.margin-bottom-40 {
	margin-bottom: 40px !important;
}

.margin-bottom-50 {
	margin-bottom: 50px !important;
}

.margin-bottom-60 {
	margin-bottom: 60px !important;
}

.margin-bottom-70 {
	margin-bottom: 70px !important;
}

.margin-bottom-80 {
	margin-bottom: 80px !important;
}

.margin-bottom-90 {
	margin-bottom: 90px !important;
}

.margin-bottom-100 {
	margin-bottom: 100px !important;
}

.margin-bottom-110 {
	margin-bottom: 110px !important;
}

.margin-bottom-120 {
	margin-bottom: 120px !important;
}

.margin-bottom-130 {
	margin-bottom: 120px !important;
}

.margin-bottom-140 {
	margin-bottom: 140px !important;
}

.padding-top-0 {
	padding-top: 0px !important;
}

.padding-top-10 {
	padding-top: 10px !important;
}

.padding-top-20 {
	padding-top: 20px !important;
}

.padding-top-30 {
	padding-top: 30px !important;
}

.padding-top-40 {
	padding-top: 40px !important;
}

.padding-top-50 {
	padding-top: 50px !important;
}

.padding-top-60 {
	padding-top: 60px !important;
}

.padding-top-70 {
	padding-top: 70px !important;
}

.padding-top-80 {
	padding-top: 80px !important;
}

.padding-top-90 {
	padding-top: 90px !important;
}

.padding-top-100 {
	padding-top: 100px !important;
}

.padding-top-110 {
	padding-top: 110px !important;
}

.padding-bottom-110 {
	padding-bottom: 110px !important;
}

.padding-bottom-100 {
	padding-bottom: 100px !important;
}

.padding-bottom-90 {
	padding-bottom: 90px !important;
}

.padding-bottom-80 {
	padding-bottom: 80px !important;
}

.padding-bottom-70 {
	padding-bottom: 70px !important;
}

.padding-bottom-60 {
	padding-bottom: 60px !important;
}

.padding-bottom-50 {
	padding-bottom: 50px !important;
}

.padding-bottom-40 {
	padding-bottom: 30px !important;
}

.padding-bottom-30 {
	padding-bottom: 30px !important;
}

.padding-bottom-20 {
	padding-bottom: 20px !important;
}

.padding-bottom-10 {
	padding-bottom: 10px !important;
}

.padding-bottom-0 {
	padding-bottom: 0px !important;
}


/* -----  Photos Hover Animations ----- */
.popup-wrapper{ display:block; position:relative; overflow:hidden;}

.popup-gallery{
	display:inline-block;
	position:relative;
}

.first-gallery{
	margin-bottom:15px;
}

.popup-gallery img {
	z-index:10;
	width: 100%;
	height: auto;
}

.popup-gallery a span.eye-wrapper,
.popup-gallery a span.eye-wrapper2 {
	background-color:rgba(6,95,189,0.7);
	position: absolute;
	display: block;
	overflow:hidden;
	z-index: 2;
	height:100%!important;
	top: 0%;
	margin-top: 0px;
	left: 0%;
	right: 0%;
	color:#fff;
	text-align: center;
	font-weight:300;
	opacity: 0;
}

.popup-gallery a span.eye-wrapper i.eye-icon, .popup-gallery a span.eye-wrapper2 i.eye-icon{
	position: absolute;
	display: inline-block;
	font-size:48px;
	z-index: 3;
	top: 50%!important;
	margin-top: -24px!important;
	left: 0%;
	right: 0%;
}

.popup-gallery a:hover span{
	opacity: 1;
}

.popup-gallery img,
.popup-gallery a span {
	-webkit-transition: all 0.25s ease-in-out;
	-moz-transition: all 0.25s ease-in-out;
	-ms-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}

.image-wrapper {
  display: inline-block;
  position: relative;
}

.image-wrapper:before {
  display: block;
  content: '';
  position: absolute;
  top: 10px;
  right: 10px;
  bottom: 10px;
  left: 10px;
  border: 1px solid rgba(255, 255, 255, 0.7);
}

/* ========================================================== */
/* 			                02. HEADER                        */
/* ========================================================== */

#navbar-collapse-02 li.selected a{
    color: #065fbd!important;
}

#navbar-collapse-02 .current a {
    color: #065fbd!important;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.navbar-fixed-top {background: linear-gradient(#065fbd 0%,#fff 15%)!important;transition: all 0.25s ease-in-out;}
.navbar-fixed-top.opaque {background: linear-gradient(#065fbd 0%,#fff 15%)!important;transition: all 0.25s ease-in-out;}

.navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > a:hover{
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

/* ========================================================== */
/* 			                03. FOOTER                        */
/* ========================================================== */

/* ----- 1. Footer General Styles ----- */
.footer{
	width:100%;
/*	position:relative;*/
	background-color: #00428d;
	margin: 80px auto 0;
/*	border-top: 1px solid #E0C187;*/
	padding: 10px 0;
}

.footer-top{
	padding:10px 0;
	border-bottom:2px dotted #fff;
}

.footer-bottom{
/*	padding:5px 0;*/
/*	background-color: #00428d;*/
	margin-top: 10px;
}

/*
a.top-scroll {
	position:relative;
	padding:7px 14px;
	font-size:20px;
	line-height:20px;
	color:#fff!important;
	background-color: #00428d;
    border-color: #fff;
	transition: all .50s ease-in-out;
	-moz-transition: all .50s ease-in-out;
	-webkit-transition: all .50s ease-in-out;
}

a.top-scroll:before {
	display: block;
	content: '';
	position: absolute;
	top: 3px;
	right: 3px;
	bottom: 3px;
	left: 3px;
	border: 1px solid #fff;
}
*/

/*
a.top-scroll:hover {
	background-color: #E0A538;
	opacity: 0.7;
}
*/

.footer h4{
	font-size:16px;
/*	position:relative;*/
	color: #fff;
	text-align: center;
	margin-bottom: 10px;
}

/*
.footer h4::after{
	position: absolute;
	content: "";
	background-color: #00428d;
	height: 3px;
	width: 15%;
	bottom: -1px;
	margin: 0 auto;
	left: 45%;
	display: block;
	text-align: center;
}
*/


.footer address {
  font-size: 14px;
  line-height:20px;
  text-align: center;
  color: #fff;
}

.footer address a{
	color:#fff;
    text-decoration:none;
}

.footer p, .footer a {
	color: #fff;
}

.footer-bottom p {
	color: #fff;
	text-align: center;
	font-size: 11px;
	font-weight: 300;
	letter-spacing: 0.5px;
	margin: 0;
	padding: 0;
}


/* ========================================================== */
/* 			              04. HERO SECTIONS                   */
/* ========================================================== */

.home-hero-section{
	margin-top:78px;
}

.contact-hero-section{
	width:100%;
	position:relative;
	background: url(../images/hero_bg_contact.jpg);
	background-position: center center;
	background-repeat: no-repeat;
    background-size: cover;
/*	color: white;*/
	margin: 0 auto;
	padding: 210px 0 90px 0;
}
.contact-hero-section .image-overlay{
	background: rgba(17, 17, 17, 0.55);
	position: absolute;
	z-index:10;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
}

.image-section-inside{
	position:relative;
	z-index:100;
}

/* ========================================================== */
/* 						   services-item                      */
/* ========================================================== */


.services-item{
	position:relative;
	text-align:center;
	margin-bottom:30px;
/*    background-color: #f9f9f9;*/
    transition: all .50s ease-in-out;
    -moz-transition: all .50s ease-in-out;
    -webkit-transition: all .50s ease-in-out;
}


.services-item-inner{
	padding:0 15px 10px;
}
.services-item-inner p{
	margin:5px 0 20px 0;
	text-align: left;
	font-size: 16px;
}

h3.services-title{
	font-size:23px;
	line-height: 1.8;
	color: #000;
	margin-top:10px;
	margin-bottom:1px;

}


/* ========================================================== */
/* 					       07. REGISTER                       */
/* ========================================================== */


/* ========================================================== */
/* 						    08. CONTACT                       */
/* ========================================================== */




/* ========================================================== */
/* 		    topページ〜Our services事業内容と他背景設定             */
/* ========================================================== */

.section-bg{
	padding:30px 0 80px;
	margin-bottom: 60px;
	border-bottom: 1px solid #888888;
}
.section-bg02{
	padding:30px;
/*	margin-bottom: 60px;*/
/*	border-bottom: 1px solid #888888;*/
}
.pr-bg{
	background-color:#ffd52e;
	padding:80px;
}

.section-bg03{
	padding:40px;
}


/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

/* ========================================================== */
/* 		    campany             */
/* ========================================================== */

/* 会社概要テーブル↓ */
.company_table {
/*  background-color: #ffffff;*/
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #5E5D5D;
}

.company_table td,
.company_table th {
  padding: 15px 20px;
}

.company_table th {
  font-size: 15px;
/*  font-size: 1.5rem;*/
  font-weight: bold;
  text-align: center;
  color: #5E5D5D;
  border-bottom: 1px solid #5E5D5D;
  border-right: 1px solid #5E5D5D;
  white-space: nowrap;
}

.company_table td {
  font-size: 15px;
  text-align: left;
  color: #5E5D5D;
  border-bottom: 1px solid #5E5D5D;
}

.company_table td:last-child {
  border-right: 0;
}

/*.company_table tbody tr:nth-child(2n+1){background-color:#f7f7f7; }*/

.company_table a {color:#5E5D5D; }



/* ========================================================== */
/* 		                  recruitボタン                        */
/* ========================================================== */

.btn4 a {
  background-color: #065fc1;
  color: #fff;
  font-size: 110%;
  font-weight: 700;
  padding: 12px 30px;
  border-radius: 30px;
  transition: all 0.3s;
  display: block;
  text-align: center;
  margin: 50px auto;
  width: 50%;
  }

.btn4 a:hover {
  opacity: 0.7;}

/* ========================================================== */
/* 		    top動画            */
/* ========================================================== */

.topimg2 {
	position: relative;
	height: 100%;
	overflow: hidden;
/*    margin-top: 110px;*/
/*	top:-180px;*/
/*	margin-bottom: 50px;*/
}


video{
	width: 100%;
}
 @media screen and (max-width: 1080px) {
.topimg2 {
	top:0;
	height: 100%;
    width: auto;
	 }
}

/* ========================================================== */
/* 		    Background Images - max-width: 1024px             */
/* ========================================================== */

@media only screen and (max-width: 1024px) {
	.image-section, .featured-menu-section, .home-menu-section, .first-menu-section, .menu-hero-section, .about-hero-section, .gallery-hero-section, .works-hero-section,.company-hero-section, .recruit-hero-section, .reservation-hero-section, .hero-gallery-section, .contact-hero-section, .contact2-hero-section, .footer {
		background-attachment: scroll!important;
		background-size: cover!important;
		background-repeat: no-repeat!important;
	}
}

/* ========================================================== */
/* 					    19. MOBILE DEVICES                    */
/* ========================================================== */

@media handheld, only screen and (max-width: 800px) {
	
	.home-hero-section{
	margin-top:70px;
}
	.navbar-default .navbar-brand {
  margin-top:5px;
}
	.navbar-default {
  padding-bottom:10px;
}	
	
	h1.topcopy{
	font-size:24px;
	line-height: 1.5;
	text-align: center;
	padding-bottom: 40px;
	border-bottom: 1px solid #888888;
	margin-bottom: 10px;
}

h1.topcopy02{
	font-size:22px;
	padding-bottom:5px;
}

p.section-txt{
	color: #5E5D5D;
    font-size: 16px;
    line-height: 1.8;
	text-align: left;
		letter-spacing: 0;
}
	
	h2.section-title02::after{
	width: 60%;
		left: 20%;}
	
	h3.section-title{
    font-size: 20px;
    line-height: 1.5;
	margin-bottom: 20px;
}
	p.section-txt{
    font-size: 16px;
    line-height: 1.9;
	letter-spacing: 1px;
}

p.section-txt02{
    font-size: 20px;
	line-height: 1.5;
}
	
.section-bg{
	padding:20px 0;
	margin-bottom: 30px;
}	
	
.section-bg02{
	padding:20px 0;
	margin-top: 20px;
}
	
.pr-bg{
	padding:30px;
}

.section-bg03{
	padding:40px 0;
}	
	
.btn4 a {
	width: 90%;
	margin:0 auto 30px;
	font-size: 90%;
	}
	
	h4.section-title{
    font-size: 25px;
    line-height: 1.5;
}

	
	
}