@import url("topImage.css");

/*						*/
/*		body			*/
/*						*/

body {
    width: 100%;
    height: 100%;
	font-family: 'kozuka-mincho-pro', serif;	
	font-weight:300;	
	font-size:14px;
	color:#333;
	background-image: url(../img/back.svg);	
	background-size:3em;
}



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

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 0;
	font-weight: 500;
    letter-spacing: 1px;
}

thead th{
	border-bottom:0 !important;
}


h3 {
	font-size:1.2em;
	margin-bottom:0.8em;
	margin-top:0.4em;
}

h4 {
	font-size:1.2em;
	margin-bottom:0.5em;
}

p{
	line-height:1.8em;
}

.lead{
	font-size:1.2em;
}

i {
	margin-right:0.25em;
}

caption{
	font-size:0.9em;
}

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

a:hover{
    text-decoration: none;
}

img {
	width:100%;
}




/*						*/
/*		menu			*/
/*						*/
nav{
	z-index:100;
}

.navbar-custom {
	padding-top: 30px;
	padding-bottom:30px;
	-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-top:4px;
	padding-bottom:0;
	border-bottom: 1px solid #227799;
	background: #227799;
}



nav .logo{
	display: inline;
	width:280px;
	text-align:left;
	margin-left:1em;
	margin-right:1em;
}

nav a.logo:hover{
	opacity:0.6;
}


nav .logo .svg_logo{
	width:280px;
   -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;		
}


.st0{opacity:0.75;}
.st1{opacity:0.5;}


.navbar-light .svg_logo {
	fill:#000;

}
.navbar-dark .svg_logo {
	fill:#fff;
}


.dropdown-item.active, .dropdown-item:active{
	background-color:#227799;
}

@media (max-width: 767.98px) {
	.navbar-custom {
		padding-top: 15px;
		padding-bottom:15px;
		border-bottom: 1px solid #227799;
		background: #227799;
	}

	nav .logo{
		position:absolute;
		margin-left:10px;
		margin-right:0;		
		text-align:center;	
		left:50%;
		transform: translateX(-50%);
		top:7px;
	}
	
	.navbar-nav{
		margin-top:1em;
	}
}
@media (max-width: 575.98px) {
}


/*						*/
/*		main			*/
/*						*/

main a {
	color:#227799;
}

main a:hover{
	color:#227799;	
	opacity:0.6 !important;
}

main .container{
	background-color:#fff;
}


main h2 {
	font-size:1.5em;
	margin:0 0 1em 0;
	line-height:1.4em;
}



/*						*/
/*		greeting		*/
/*						*/
.greeting h1{
	text-align:center;
	font-size:2.5em;
	margin-top:2em;
	margin-bottom:2em;
	line-height:2em;
}

.greeting h1 b{
	font-family:a-otf-gothic-bbb-pr6n, sans-serif;
	font-size:1.5em;
}
.greeting h1 em{
	color:#cc0000;
	font-style:normal;
}

.greeting h3{
	font-size:1.2em;
	line-height:1.4em;
	text-align:center;
}

@media (max-width: 991.98px) {
	.greeting h1{
		font-size:2em;
	}
	
}
	
	
@media (max-width: 767.98px) {
	.greeting h1{
		margin-top:1em;
		margin-bottom:1em;
		font-size:2.7em;

	}
}

@media (max-width: 575.98px) {
	.greeting h1{		
		font-size:6vw;
	}
}


/*						*/
/*		title			*/
/*						*/



#title {
	height:160px;	/*200px*/
	background-color:#ffb240;
	position: relative;
	padding-top:53px;
	
	margin-bottom:3em;
	color:#fff;
}


#title h2{
	position: relative;
	
	letter-spacing:0.1em;	
	font-size:2em;
	line-height:1.2em;
	text-align:center;
	
	height:60px;
	width:240px;
	
	padding:10px 0;
	
	top:50%;
	left:50%;
	
	border:1px solid #fff;
	border-radius: 3px;
	transform:translate(-50%,-50%);		
}


#title h2::before,
#title h2::after { /* 三角 */
  content: '';
  border: 12px solid transparent;
  position: absolute;
  left: 50%;
  margin-left: -12px;
}
#title h2::before { /* 線になる部分 */
  border-top-color: #fff; /* 吹き出しの線の色と同じ色 */
  bottom: -24px;
}
#title h2::after { /* 地の部分 */
  border-top-color: #ffb240; /* 吹き出しの背景色と同じ色 */
  bottom: -22px;
}


main .checkList {
	border:1px solid #dc3545;
	border-radius: 3px;
	background-color:#fff;
	color:#dc3545;
	box-shadow: .2rem .2rem .4rem rgba(0, 0, 0, .1);
	margin-bottom:1.5em;
	position: relative;
	overflow: hidden;
}

main .checkList ul, main .checkList ol{
	padding:0;
	margin:0.75em 1em 1em 2.75em ;
	list-style: none;
	position: relative;
	z-index:10;
}


main .checkList li{
	list-style-position:outside;
	margin:0 0 0.5em 0;
	font-size:1.1em;
	text-shadow: 0 0 8px #fff, 0 0 8px #fff; 
}

main .checkList li i{
	position: absolute;
	left:0;
	margin:0.35em 0 0 -1.25em;
}

main .checkList li span{
	position: absolute;
	left:0;
	margin:0.1em 0 0 1em;
}



@media (max-width: 767.98px) {
}


/*						*/
/*		about			*/
/*						*/

#about{
	background-color:#333;
	color:#fff !important;
	padding-top:6em;
	margin-top:-3.25em;
	padding-bottom:2em;	
	position: relative;
	overflow: hidden;
}

#about .container{
	background-color:#333;
}


#about .row{
	position: relative;	
	z-index:15;
}

#about img.musou{
	width:155px;
}

#about img.joseikai{
	width:56px;
}

#about hr{
	border-color:#fff;
}


@media (max-width: 767.98px) {
}
@media (max-width: 575.98px) {
	#about{
		padding-bottom:0.5em;
	}

	#about img.musou{
		width:125px;
	}
}


#contact .group h2{
	position: relative;
	left:50%;
	right:50%;
	transform:translate(-50%,0);
	
	padding:0 0.5em;
	display:inline-block;
	
	text-align:center;
	line-height:0.5em;	
	border-bottom:7px solid #ffcc80; /*	blue 75%	*/
	margin-bottom:0;
	
}


#contact .group .row{
	margin: 0 -25px;
}

#contact .group .col-lg-3, #contact .group .col-md-3{
	padding-right: 10px;
	padding-left: 10px;
}

#contact .group img{
	filter: drop-shadow(0 3px 3px rgba(0,0,0,0.2));		
}

@media (max-width: 1199.98px ) and (min-width: 768px) { 
	#contact .group .row{
		margin: 0 -20px;
	}
	
	#contact .group .col-lg-3, #contact .group .col-md-3{
		padding-right: 5px;
		padding-left: 5px;
	}
}

@media (max-width: 767.98px) {
	#contact .group .row{
		margin: 0 -20px;
	}
		
	#contact .group .col-6{
		padding-right: 5px;
		padding-left: 5px;
	}
}



/*								*/
/*		menu 					*/
/*								*/
.menu h1{
	font-size:2em;
	padding:0.2em 0 0.3em 0;
	margin-bottom:0.75em;
	text-align:center;
	color:#fff;
}

main .menu p{
	font-size:1.1em;
}

main .menu img{
	margin-top:86px;
	margin-bottom:2em;
	height:600px;
}

main .menu .object-fit{
	object-fit: cover;
	font-family: 'object-fit: cover;object-position: 50% 50%;';
	object-position:50% 50%;
}



@media (max-width: 767.98px) {
	main .menu img{
		height:auto;
	}

	.menu h1.short{
		font-size:1.66em;
	}
	
}

@media (max-width: 575.98px) {
	.menu h1{
		font-size:5vw;
	}
	.menu h1.short{
		font-size:4vw;
	}
}


/*								*/
/*		performance 			*/
/*								*/

#performance .card-header{
	margin-bottom:-1px !important;
	cursor:pointer;
	padding-bottom:1em !important;
	background-color:#fffaf2;
	border-color:#ffb240;
}

#performance .card{
	border-color:#ffb240;
	margin-bottom:1.5em;
}



#performance ul.card {
	list-style:none;
	padding:0;
}

#performance ul > li{
	padding:0.75em 1em 0.75em 1em;
}

#performance ol{
	margin:1em 0 0 0;
}



/*						*/
/*		map				*/
/*						*/
#access .row{
	padding-top:6em;
	margin-top:-3em;	
}


#map {
    width: 100%;
	height: 300px;
	border-top:1px solid #90bbcc;
	border-bottom:1px solid #90bbcc;
}

@media (max-width: 767.98px) {

	#access p {
		text-align:center;
	}	
}

/*						*/
/*		price			*/
/*						*/
#price th{
	width:8em;
	font-weight:normal;
}

/*						*/
/*		contact			*/
/*						*/
#contact .row{
	padding-top:2em;
}


#contact .timeTbl td, #contact .timeTbl th{
	width:14%;
	text-align:center;
}
@media (max-width: 575.98px) {
	#contact .timeTbl td, #contact .timeTbl th{
		font-size:3vw;
	}
}


main #contact h2, main #access h2{
	text-align:right;
}

@media (max-width: 767.98px) {
	main #contact h2, main #access h2{
		text-align:center;		
	}
}
#contact th{
	font-weight:300;
	width:10em;
}


#contact .tel{
	text-align:center;
	font-size:3.6em;
	line-height:1em;
	color:#227799;
	font-family:"Poppins",sans-serif;	
}

#contact .tel i{
	position: relative;
	margin-top:-0.2em;
	font-size:0.6em;
	vertical-align:middle;
	opacity:0.6;	
}


#contact .tel a {
	color:#227799 !important;
}

#contact .tel a:hover {
	opacity:0.6;
}




@media (max-width: 575.98px) {
	#contact .tel{
		font-size:2.8em;
	}
}


/*						*/
/*		フッター		*/
/*						*/
footer{
	background-color:#227799;
	color:#fff;
	text-align:center;
	padding-top:2em;
	padding-bottom:1em;
}

footer .logo{
	text-align:center;
	margin-bottom:1em;
}

footer .logo img{
	width:220px;
}

footer .logo a:hover{
	opacity:0.6;
}


footer .copyright{
	border-top:1px solid #fff;
	color:#fff;
	font-size:0.9em;
	padding:1em 0 1em 0;
}

@media (max-width: 575.98px) {
	footer .link .br{
		display:block;
	}
	
	footer{
		font-size:16px;
		line-height:1.8em;
	}
}