﻿@charset "utf-8";

@import "./css/normalize.css";
@import "./css/base.css";
@import "./css/grid.css";
@import "./css/univ.css";

@import "./js/boxer/jquery.fs.boxer.css";

/*
Responsive 996px grid system ~ Style CSS.
Copyright 2013, Josh Cope
*/

/* =============================================================================
   Site Styles
   ========================================================================== */

body {
	font-family: Verdana, Helvetica, "メイリオ", Meiryo, 
				"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", 
				"ＭＳ Ｐゴシック", sans-serif,
				"Takao Pゴシック", "TakaoPGothic","sans";
	line-height:1.7em;
	font-size:17px;
	background: #fefefe url(./img/bg/wallpaper.jpg);
	/*background: #BEEB5A;*/
	color:#444;
}

.#main { }
.container {/*height: 100%;*/}
.hr-box {width:100%; margin: 0; padding: 0;}


#logo img {
	width: 100%;
	max-width:400px;
}

#sliderWrapper {
	position:relative;
	z-index:881;
}

#sliderInner {
	position:relative;
	width:90%; height: 90%;
	z-index:882;
	margin: 0px auto;
}


h1 { color:#fff; font-size:12px; font-weight:normal; text-align: right; margin: 0px;}

h2, h3, h4, h5, h6 { color:#333;}

h2 { 
	line-height:2.0em;
	vertical-align: baseline;
	color:#222; text-shadow: 1px 1px 0 #fff;
	border-left:10px solid #E0551F;
	border-bottom:1px solid #aaa;
    /*font-weight: normal;*/
    margin: 1.25em 0px 0.75em 0px;
	padding-top: 0.15em;
    padding-right: 0.1em;
	padding-bottom: 0.25em;	
    padding-left: 0.5em;
}

h3 {line-height:2.0em; font-size:22px;}
/*
h3.toggler {line-height:2.0em; padding-left: 2.4em; font-size:22px; background: url(./img/icon/folder.png) no-repeat; background-size: 36px auto;}
*/

h3 + p {margin-top: 0;}
section.br6 h3 {margin-bottom: 0;}
section.br6 h3+p {margin-bottom: 1.5em;}

h4 {margin-bottom: 0.5em;}

.bdr-red { /*for h2, h3, h4*/
	border-left: 8px solid #C04641;
	padding-left: 8px;
}

/* iro */
.anoiro {
	color:#928b83;
}


a {
	color: #2B6EB5;/*#00f;*/
	/*text-decoration: underline;	*/
	-webkit-transition: 0.22s linear all;
	-moz-transition: 0.22s linear all;
	transition: 0.22s linear all;	
}

a:hover {
	color: #FFCC26;/*darkorange;*/
	text-decoration: none; /*underline;/*none;*/
	-webkit-transition: 0.22s linear all;
	-moz-transition: 0.22s linear all;
	transition: 0.22s linear all;	
}

a img.opa {
	opacity:1.0;
	filter: alpha(opacity=100);
	-webkit-transition: 0.36s linear all;
	-moz-transition: 0.36s linear all;
	transition: 0.36s linear all;	
}
a img.opa:hover {
	opacity:0.75;
	filter: alpha(opacity=75);
	-webkit-transition: 0.18s linear all;
	-moz-transition: 0.18s linear all;
	transition: 0.18s linear all;	
}

.wakupika {
	box-shadow: none;
	-webkit-transition: 0.36s linear all;
	-moz-transition: 0.36s linear all;
	transition: 0.36s linear all;
}
.wakupika:hover {
	box-shadow: 0 0 3px 3px rgba(255,255,255,0.7); 
	-webkit-transition: 0.18s linear all;
	-moz-transition: 0.18s linear all;
	transition: 0.18s linear all;
}

dd {margin: 0.5em 0 0 1.0em;}

ul {padding: 0;}

ul,ol  { text-align: left;}

li {list-style:none;}

ul li.sq {
	list-style: square;
	margin-left:1.5em;
}

li.chk-xl {
	line-height:1.15em;
	height: auto; font-size:36px;
	background: url(./img/icon/chk.png) no-repeat 0 0;
	background-size:48px 48px;
	padding: 4px 0 6px 1.5em;
	margin: 0.3em 0;
}
li.chk {
	line-height:1.15em;
	height: auto; font-size:32px;
	background: url(./img/icon/chk.png) no-repeat 0 0;
	background-size:40px 40px;
	padding: 2px 0 4px 1.5em;
	margin: 0.3em 0;
}

ol {font-weight:norm;}

ol li {
	list-style-type: decimal;
	margin-left:0.5em;
	margin-right:0.5em;
	font-size:15px;
}

li.lalph {
	color:#333;/*#606060;*/
	list-style-type: lower-alpha;
	margin-left:3.5em;
}

/*
*/
header {
	color:#fff;
	position:relative;
	float:left;
	top:0; left:0; 
	width:100%;
	border:none;
	height:auto;
		/*background: rgba(0,79,39,0.85);*/

	background: rgba(0,79,39,0.9) url(./img/bg/back_logo.png) no-repeat 0 0;
	background-size: 145px auto;
	
	border-top:4px solid #004F27;
	/*border-bottom:4px solid #004F27;*/
	
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
	z-index:1000;

}
#kanban {z-index:-1;}
	
nav {max-width: 996px; margin: 0 auto; text-align: left;}

nav ul {
	font-size: 17px;
	color:#E5C990;/*#444;*/
	font-weight:normal;
}

header a, nav a {
	color: #fff; /*#009245; /*928b83;/*fff;*/
	font-size:19px;
	text-decoration:none;
}

header a:hover, nav a:hover {text-decoration:none; border-bottom: 1px dotted #FFCC26;}

nav#gblnavi-pc ul {
	text-align: left/*center*/;
	margin: 0; padding: 0;
}

nav#gblnavi-pc ul li {
	display:inline-block;
	margin:12px 30px 12px 10px;
	text-align: left;
	font-size:15px;
}

nav#gblnavi-pc ul li.mar { margin: 0 0 0 20px; }

footer {
	clear:both;
	position:relative;
	left:0; right:0; bottom:0;
	padding:10px 20px;
	text-align:center;
	font-size:12px;
	min-height:150px;
	color:#fff;/*#444;*/
	background: rgba(0,79,39,0.9);
	border-top:4px solid #004F27;
}

footer hr {
	clear:both;
	margin:32px;
}

#footer-inner {
	width:96%;
	max-width:970px;
	text-align:left;
	/*text-shadow: 1px 1px 0 #111;*/
	/*
	background: rgba(255,255,255,0.5);
	box-shadow: 0 0 20px 10px rgba(255,255,255,0.5);
	position:absolute;
	top:0; right:0;
	*/
	margin:0 auto;
}

footer li {
    display: inline-block;
    height: 24px;
    margin:12px 20px 12px 0;
}

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

footer a:hover { border-bottom: 1px dotted #FFCC26;}

p {line-height:1.7em;}

table {
	clear:both;
	text-align:left;
	margin:16px 0px; 
	word-break:break-word;/*break-all;*/
	font-size:18px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	width:96%;
}
caption {text-align: left; padding:0.5em 0.5em 0.5em 1.5em ; font-size:1.2em; color: #fff; font-weight:bold; background: rgba(0,0,0,0.6);/*(40,60,200,0.6);*/ border:1px solid #777;}

th,td {
	padding:0.5em 1em;
	font-weight:normal;
	line-height:1.8em;
	text-align:left;
	word-break:break-word;/*break-all;*/
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	border:1px solid #777;
}
	
th {
	background:rgba(200,200,200,0.6);
}
td {
	background:rgba(255,255,255,0.8);
}

td.nobdr {border:none;}


.line {/*吹き出し風*/ background: #fff; font-size:21px; padding:10px 15px; border-radius: 10px;
	position: relative; }
.line:before {content:""; display:block; width: 0; height: 0; 
	border: 10px solid transparent; border-right: 10px solid #fff;
	position: absolute; top:15px; left: -20px;}

#main th.tp, #main td.tp {
	background:transparent;
	border:none;
	width:auto;
	padding:8px;
	line-height:1.8em;
	vertical-align: middle;
}

#main th.tp {
	width:15%;
	max-width:100px;	
}

#main th.bb, #main td.bb {
	background:transparent;
	border:none;
	width:auto;
	padding:8px;
	line-height:1.8em;
	vertical-align: middle;	
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
	box-shadow: 0px 3px 2px -2px rgba(255,255,255,0.85);
	-webkit-box-shadow: 0px 3px 2px -2px rgba(255,255,255,0.85);
	-moz-box-shadow: 0px 3px 2px -2px rgba(255,255,255,0.85);
}
#main th.bb {
	width:auto;
}

/*+++*/
	@media only screen and (max-width: 479px) { 
		table {width: 100%; margin: 8px auto; padding: 0;}
		th.var ,td.var {font-size:13px;}
	}
/*+++*/

hr {
	clear:both;
	height:1px;
	border: 1px solid #aaa;
	margin: 12px 8px;
}
hr.dot {
	clear:both;
	height:1px;
	border: 1px dotted #aaa;
	margin: 12px 8px;
}
hr.dash {
	clear:both;
	height:1px;
	border: 0.5px dashed #aaa;
	margin: 12px 8px;
}
hr.incise {
	border: 0;
    height: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.15);
    border-bottom: 1px solid rgba(255, 255, 255, 0.35);
}

hr.hori-gra {
    border: 0;
    height: 1px;
    background-image: -webkit-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.65), rgba(0,0,0,0));
    background-image:    -moz-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.65), rgba(0,0,0,0));
    background-image:     -ms-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.65), rgba(0,0,0,0));
    background-image:      -o-linear-gradient(left, rgba(0,0,0,0), rgba(0,0,0,0.65), rgba(0,0,0,0));
}

button {
	cursor:pointer;
}


.inline {display:inline-block;}
		
.note {font-size:0.7em; color:#009146;/*#563018;/*#fc9245;*/}
.dred-note {font-size:0.7em; color:crimson;}

.o-moji {font-size:32px;}

.tilt {
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
}

.slant:hover {
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
	-webkit-transition: 0.18s linear all;
	-moz-transition: 0.18s linear all;
	transition: 0.18s linear all;
}
.slant {
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: 0.38s linear all;
	-moz-transition: 0.38s linear all;
	transition: 0.38s linear all;
	transition-timing-function:ease-in-out;
	transition-delay:0.3s;
}




.r360:hover {
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);	
	-webkit-transition: 0.48s linear all;
	-moz-transition: 0.48s linear all;
	transition-timing-function:ease-in-out;
	transition: 0.48s linear all;
}
.r360 {
	-webkit-transform: rotate(-360deg);
	-moz-transform: rotate(-360deg);
	-o-transform: rotate(-360deg);
	-ms-transform: rotate(-360deg);
	transform: rotate(-360deg);	
	-webkit-transition: 0.98s linear all;
	-moz-transition: 0.98s linear all;
	transition: 0.98s linear all;
	transition-timing-function:ease-in-out;
	transition-delay:0.3s;
}


.siro-maru {
	display:inline-block;
	font-family:cooper;
	font-weight:bold;
	text-align: center;
	height:1.5em; width: 1.5em;
	padding-top:0.25em;
	margin: 0 0.5em;
	border-radius:50%;
	background: #fff;
	box-shadow: 1px 1px  3px #777;
}

.cengo {
	font-family: 'CenturyGothic';
	line-height:1.7em;
}
.geosans {
	font-family: 'Geosans-L';
	line-height:1.7em;
}
.kaushan { 
	font-family: 'Kaushan';
	line-height:1.7em;
}
.lithos {
	font-family: 'LithosPro';
	line-height:1.7em;
}

.sosaicon { font-family: 'SosaIcon'; }

.azukiss { 
	font-family: 'Azukiss';
	line-height:1.7em;
}
.azukipss { 
	font-family: 'AzukiPss';
	line-height:1.7em;
}

.dsha-green {text-shadow: 0 0 4px #116013;}

.bsha-choi { box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);}
.bsha-choin { box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.2) inset;}

.bdrb-dot-gr8 {border-bottom: 2px dotted #888;}
.bdrb-dot-wh {border-bottom: 2px dotted #fff;}
.bdrb-dot-r {border-bottom: 2px dotted #e0531c;}
.bdrb-dot-y {border-bottom: 2px dotted #E8C080;}
.bdrb-dot-g {border-bottom: 2px dotted #009146;}
.bdrb-dot-b {border-bottom: 2px dotted #009FE8;}

.bg-r {background: #FBE2D8;}
.bg-y {background: #FEE6A5;}
.bg-g {background: #DCDFCE;}
.bg-b {background: #C1DAE5;}

.bg-aqua {background: #DFF2FC;}
.bg-sky {background: #3A9CDD;}
.bg-orange {background: #FF7800;}
.bg-lime {background: #67C54B;}

img.ban-bosh {width: 100%; max-width: 310px;}


/* =============================================================================
   Navi Styles with jQuery
   ========================================================================== */

/*navトップ固定用*/
#sticker {
	border-bottom:4px solid #004F27;
	box-shadow: 0 4px 4px -4px rgba(0, 0, 0, 0.7);
	-webkit-box-shadow: 0 4px 4px -4px rgba(0, 0, 0, 0.7);
	-moz-box-shadow: 0 4px 4px -4px rgba(0, 0, 0, 0.7);	
}
.fixed {
	background: rgba(0,79,39,0.9);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}

#rewind { /*ページトップへ戻る用*/
	display: none;
	position: fixed;
	bottom: 10px;
	right: 10px;
    background: rgba(0,0,0,0.5);
    border-radius: 3px 3px 3px 3px;
    color: #FFFFFF;
    cursor: pointer;
    padding: 10px;
	z-index:25252;
}

#to-contact {
	display: none;
	position: fixed;
	bottom: 10px;
	left: 10px;
	background: rgba(0,0,0,0.5);
	border-radius: 3px 3px 3px 3px;
	color: #FFFFFF;
	cursor: pointer;
	padding: 10px;
	z-index:25262;
}



/* =============================================================================
   Page Styles
   ========================================================================== */

img.logo-sf { width: 100%; max-width: 310px; }

.container section {margin-bottom: 16px; margin-top: 10px;}

/*
#infection {background: rgba(255,255,255,0.7) url(./img/fig/injection.png) no-repeat right center;}
*/
#infection {background: rgba(255,255,255,0.7) url(./img/photo/injector.jpg) no-repeat right center; background-size:cover;}

#bengoshi-pic { float:right; width: 175px; margin-right: 20px;}
#takainde {width:50%;}

#sub-column section {margin-bottom: 24px;}
#sub-column ul { margin: 0; padding: 0; }
#sub-column ul li { margin-top: 10px; padding: 0; }


.toggler {cursor:pointer;}

/* =============================================================================
   Media Queries
   ========================================================================== */

/* PC display 996px */
@media only screen and (min-width: 995px) {
	
	.smponly, .tblonly, .smptbl {display:none;}
	
	#gblnavi-mobile {display:none;}
	#gblnavi-pc {	display:block;}
	
	#point p.desc {height: auto; min-height: 175px;}

}

/* Tablet Portrait size to Base 996px */
@media only screen and (min-width: 768px) and (max-width: 995px) {

	.smponly, .smptbl, .maxonly  {display:none;}

	body {min-height: 1024px;}

	#gblnavi-mobile {display:none;}
	#gblnavi-pc {	display:block;}
	
	#point p.desc {height: auto; min-height: 236px;}
	
}

/* All Mobile Sizes */
@media only screen and (max-width: 767px) {

	.maxonly, .pconly, .smponly, .tblonly {display:none;}
	.smptbl {display:block;}

	#gblnavi-pc {	display:none;}
	/*#gblnavi-pc, #bg1-sub {	display:none;}*/
	/*#gblnavi-mobile {display:block;}*/

	table {font-size:15px;}

	nav#gblnavi-mobile {
		position: relative;
		top:4px;  margin-bottom: 4px;
	}
		
	nav#gblnavi-mobile ul {
		text-align: center;
		display:hidden;
		padding: 10px 0;
	}

	nav#gblnavi-mobile ul li {
		text-align: left;/*right;/*left;/*center;*/
		margin: 1.5em 12px;
		font-size: 16px;
		/*border-bottom: 1px solid rgba(0,0,0,0.2);
		background: rgba(0,0,0,0.2);*/
		position:relative;
	}

	nav#gblnavi-mobile ul li div {
		width: 100%; height:24px;
			/*padding-top: 16px;*/
		background: url(./img/icon/arrow-r.png) no-repeat right 30%;
		background-size:12px auto;
	}

	nav#gblnavi-mobile ul li div:hover {
		/*
		background: url(./img/icon/pick-red-s.png) no-repeat top right;
		background-size: contain;
		*/
	}

	#home-banner-menu div img { float:left; margin-right: 16px;} 

}

/* Mobile Landscape Size to Tablet Portrait */
@media only screen and (min-width: 480px) and (max-width: 767px) {

	.pconly {display:none;}
	.tblonly {display:block;}

	h3 {font-size:21px; background-size: 44px auto;} 
	
	.o-moji {font-size:25px;}
	
	#bengoshi-pic { margin-right: 0px;}

}

/* Mobile Portrait Size to Mobile Landscape Size */
@media only screen and (max-width: 479px) {
	
	body { font-size:15px; }

	.pconly, .tblonly, .tblpc, #bg1-sub {display:none;}
	.smponly {display:block;}
	
	h3 {font-size:1.25em;}

	.o-moji {font-size:22px; line-height:1.5em;}

	li.chk-xl {
		line-height:1.15em;
		height: auto; font-size:26px;
		background: url(./img/icon/chk.png) no-repeat 0 0;
		background-size:30px 30px;
		padding: 0 0 6px 1.5em;
		margin: 0.3em 0;
	}
	li.chk {
		line-height:1.15em;
		height: auto; font-size:20px;
		background: url(./img/icon/chk.png) no-repeat 0 0;
		background-size:24px 24px;
		padding: 0 0 4px 1.5em;
		margin: 0.3em 0;
	}

	table { margin:8px 0; width:100%;}
	th, td {display:block; width: 100%;}
	th {border-bottom: none;}
	td {border-top: none;}
	
	#bengoshi-pic { width: 110px; margin-right: 0px; margin-top: 12px; margin-left: 12px; border-radius: 5px;}
	
	.line {/*吹き出し風*/ font-size:17px; }
	.line:before { top:65%; left: -20px;}

	#rewind {
		padding: 0 6px;
		right:2px; bottom:2px;
	}

	#to-contact {
		padding: 0 6px;
		left:2px; bottom:2px;
	}

	img.logo-sf { width: 240px; }

}


/* +++ PRINT SETTING +++ */
@media print{

	#gblnavi-mobile, .smponly, .tblonly, .smptbl {display:none;}

}



/* =============================================================================
   Font-Face
   ========================================================================== */
/* This is the proper syntax for an @font-face file*/


@font-face {
    font-family: 'SosaIcon';
    src: url('./fonts/SosaIcon.woff') format('woff'),
		url('./fonts/SosaIcon.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
/*
@font-face {
    font-family: 'CenturyGothic';
    src: url('./fonts/CenturyGothic.woff') format('woff'),
         url('./fonts/CenturyGothic.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
*/
@font-face {
    font-family: 'Geosans-L';
    src: url('./fonts/GeosansLight.woff') format('woff'),
         url('./fonts/GeosansLight.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
/*
@font-face {
    font-family: 'Azukiss';
    src: url('./fonts/Azukiss.woff') format('woff'),
         url('./fonts/Azukiss.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'AzukiPss';
    src: url('./fonts/AzukiPss.woff') format('woff'),
         url('./fonts/AzukiPss.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
/*
@font-face {
    font-family: 'HoneyScript-SB';
    src: url('./fonts/HoneyScript-SemiBold.woff') format('woff'),
         url('./fonts/HoneyScript-SemiBold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
*/
@font-face {
    font-family: 'Kaushan';
    src: url('./fonts/KaushanScript-Regular.woff') format('woff'),
         url('./fonts/KaushanScript-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'LithosPro';
    src: url('./fonts/LithosPro-Regular.woff') format('woff'),
         url('./fonts/LithosPro-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}


/* @font-face {
font-family: 'FontName';
src: url('./fonts/FontName.eot');
src: url('./fonts/FontName.eot?iefix') format('embedded-opentype'),
url('./fonts/FontName.woff') format('woff'),
url('./fonts/FontName.ttf') format('truetype'),
url('./fonts/FontName.svg#FontName') format('svg');
font-weight: normal;
font-style: normal; }
*/