/*
Theme Name: TAKAYA Akihiro
Theme URI: 
Description: 
Version: 3.2
Author: 
Author URI: 
Tags: 
License:
License URI:
*/


/*-----------------------------------
Gloval
-----------------------------------*/
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
*:before,
*:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html {
width: 100%; 
font-size: 100%; 
-webkit-appearance: none;
-webkit-text-size-adjust: 100%; 
-ms-text-size-adjust: 100%; 
text-rendering: optimizelegibility; 
}


/*-----------------------------------
Setting
-----------------------------------*/
body {
font-family: Verdana, 'Noto Sans JP', "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, Meiryo, sans-serif;
font-size: 0.95rem;
line-height: 1.52;
min-width: 320px;
color: #432f2f;
background-color: #fff;
}
* html body { 
font-family: "MS PGothic", Sans-Serif;  /*for ie*/
}

a,
a:active,
a.active { 
text-decoration: none;
border: none;
color: #005ca0;/*#f4b3c2;*/
}

a:hover,
a:focus { 
text-decoration: none; 
border: none;
color: #0081cc;
-moz-transition: 0.3s ease;
-o-transition: 0.3s ease;
-webkit-transition: 0.3s ease;
}

a:focus {
outline: thin dotted;
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}


/*-----------------------------------
UNIT
-----------------------------------*/
.units-container {
max-width: 1024px;
margin: 0 auto;
}
.units-row {
margin-bottom: 0!important;
}
.pages {
background: rgba(255,255,255,1);
padding: 2em 3em;
}
@media all and (max-width: 640px) {
	.units-container {
	width: 94%;
	margin: 0 3%;
	}
	.pages {
	padding: 2em 1em;	
	}
}
main#pages {
padding-top: 82px;
}	
/*outer-inner*/
.outer100 {
display: table;
width: 100%;
}
.outer {
display: table;
}
.inner {
display: table-cell;
vertical-align: middle;
}
/*box*/
.inbox {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.block:after {
content: ".";
display: block;
visibility: hidden;
height: 0.1px;
font-size: 0.1em;
line-height: 0;
clear: both;
}
.fb-box,
.tw-box {
min-height: 520px;
max-width: 100%!important;
}
iframe {
max-width: 100%;
}
.iframe-box {
max-width: 100%;
border: 1px solid #dcdcdc;
}
.wid80 {
width: 80%;
margin: 0 auto;
}
@media all and (max-width: 640px) {
	.wid80 {
	width: 98%;
	margin: 0 auto;
	}
}
/*-----------------------------------
Margin Reset
-----------------------------------*/
#header .units-row,
#footer .units-row {
margin-bottom: 0;
}

/*-----------------------------------
Lang Style
-----------------------------------*/
.ja,
.go {
font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, Meiryo, sans-serif;
font-size: 0.8rem;
padding-left: 0.5em;
padding-right: 0.5em;
}
.wa,
.min {
font-family: 'Klee One', cursive;
}
.en {
font-family: 'Roboto', sans-serif;
}
.email,
.phone {
font-family: 'Roboto', sans-serif;
}

/*----------------------------------------
	Text Align
----------------------------------------*/
.right, .t-right, .text-right {
	text-align: right;
}
.left, .t-left, .text-left {
	text-align: left;
}
.center, .t-center, .text-center {
	text-align: center;
}
@media all and (max-width: 640px) {
	.m-center,
	.mobi-center {
	text-align: center;
	}
}

/*-----------------------------------
Headings Size
-----------------------------------*/
h1, h2, h3, h4, h5, h6 {
font-weight: normal;
}
h1 {
font-size: 1rem;
}
h2 {
font-size: 2em!important;
line-height: 1.7;
margin: 0!important;
padding: 1.7em 0 2em 0!important;
background: rgba(33,160,59,1.0);
color: #fafafa!important;
}
h2.single {
font-size: 1.5em!important;
margin: 0.5em 0 1.5em 0!important;
padding: 0!important;
background: none;
text-align: center;
color: rgba(33,160,59,1.0)!important;
}
h2 span.en {
font-family: 'Roboto', sans-serif;	
font-weight: 700;
font-size: 0.9em!important;
}
h2.main-copy {
font-size: 2.5em!important;
line-height: 1.7;
background: #fff;
font-family: 'Klee One', cursive;
padding: 0.5em 0!important;
}
h3 {
font-size: 1.32em;
}
h3 span {
font-size: 0.9em;
color: #5a5a5a!important;
padding-left: 0.5em;
}
h3.large {
font-size: 2em;
margin: 0.3em 0;
}
h3.sub-copy {
font-size: 1.7em!important;
font-family: 'Klee One', cursive;
}
h3.h3 {
font-size: 1.1em;
border-bottom: 1px solid #dcdcdc;
}
h3.line {
font-size: 1.2em;
border-bottom: 1px solid #dcdcdc;
}
h4 {
font-size: 1em;
margin: 0.1em;
}
h4.h4 {
font-size: 1.15em;
}
h5 {
font-size: 1em;
}
h6 {
font-size: 0.9em;
}
p.nobo1 {
margin-bottom: 0.4em!important;
padding-left: 1em;
}
@media all and (max-width: 640px) {
	h2 {
	font-size: 1.32em!important;
	padding: 1em 0!important;
	}

	h2 span.en {
	font-family: 'Roboto', sans-serif;	
	font-weight: 700;
	font-size: 1.15em!important;
	}
	h2.main-copy {
	font-size: 1.32em!important;
	}
	h3 {
	font-size: 1.21em;
	}
	h3 span {
	font-size: 0.8em;
	}
	h3.large {
	font-size: 1.32em;
	margin: 0.3em 0;
	}
	h3.sub-copy {
	font-size: 1.32em!important;
	}
}


/*-----------------------------------
Title Style
-----------------------------------*/
h2.title {
text-align: center;
}
h2,h3,h4,h5,h6,
h2 a, h3 a, h4 a, h5 a, h6 a {
color: #00885a
}


/*-----------------------------------
Paragraphs
-----------------------------------*/
p,li,td,dd {
color: #432f2f;
line-height: 1.52;
}
p.note {
text-indent: 0.95em;
}
small {
font-size: 0.8em;
}
strong,
b {
font-weight: bold;
color: #1a1a1a;
}
.small {
font-size: 0.8em;
line-height: 1.37;
}
.more-small {
font-size: 0.7em;
}
.large {
font-size: 1.21em;
}
.more-large {
font-size: 1.38em;
}
p.nomabo {
margin-bottom: 0;
}
p.blue,
span.blue {
color: #043c78;
}

/*-----------------------------------
Image Reset
-----------------------------------*/
img {
/* Responsive images (ensure images don't scale beyond their parents) */
max-width: 100%;
/* Part 1: Set a maxium relative to the parent */
width: auto\9;
/* IE7-8 need help adjusting responsive images */
height: auto;
/* Part 2: Scale the height according to the width, otherwise you get stretching */
vertical-align: middle;
border: 0;
}

/*-----------------------------------
Contents Design
-----------------------------------*/
.pages p {
margin-bottom: 1em;
}
.pages li {
margin-bottom: 0.3em;
}

/*-----------------------------------
Parallax
-----------------------------------*/
.parallax-window {
background: transparent;
}
.parallax-slider {
top: 0;
left: 0;
}
/*-----------------------------------
Background Fix
-----------------------------------*/
.bg-fixed {
background-repeat: no-repeat;
background-attachment: fixed;
background-position: center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
}
/*-----------------------------------
Fadein 
-----------------------------------*/
.fadein {
opacity : 0.3;
transform: translateY(20px);
transition: all 1s;
}

/*-----------------------------------
Header
-----------------------------------*/
#header{
width: 100%;
}
.header-line {
position: fixed;	
width: 100%;
background: rgba(255,255,255,0.9);
border-bottom: 3px solid rgba(33,160,59,1.0);
z-index: 1000;
}

#header h1 {
display: inline-block;
width: 15em;
padding: 0;
margin: 5px 0 7px 0;
font-size: 1em!important;
text-align: center;
}
/*Navi*/
#gloval-navi {
margin-top: 1px;
z-index: 3000;
}
#gloval-navi ul {
/*background: #0081cc;*/
float: right;
padding: 8px 0 9px 0;
margin: 0;
}
#gloval-navi li {
display: inline-block;
margin: 0 10px;
}
#gloval-navi li a {
color: #111;
font-size: 0.95rem;
border: none;
}
#gloval-navi li a:hover {
color: #2ca9e1;
text-decoration: none;
}
#gloval-navi li.current a {
color: #2ca9e1;
}

/*Mobile*/
#nav-drawer {
	position: relative;
}
/*チェックボックス等は非表示に*/
.nav-unshown {
	display: none;
}
/*アイコンのスペース*/
#nav-open {
	display: none;
}
@media screen and (max-width: 640px) {
	#nav-open {
	display: inline-block;
	width: 24px;
	height: 24px;
	vertical-align: middle;
	background-image: url("images/jquery.fs.naver-icon.png");
	background-size: 24px 24px;
	margin-top: 6px;
	}
	#nav-open span {
	cursor: pointer;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
	display: none;/*はじめは隠しておく*/
	position: fixed;
	z-index: 99;
	top: 0;/*全体に広がるように*/
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	transition: .3s ease-in-out;
	}
	/*ナビゲーションエリア*/
	#nav-content {
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 50%;
	max-width: 300px;
	height: 100%;
	background: #fff;
	transition: .3s ease-in-out;
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%);/*左に隠しておく*/
	}
	#nav-content ul {
	margin: 0.8em 0;
	width: 100%;
	text-align: left;
	}
	#nav-content ul li {
	margin: 0;
	display: block;
	padding: 1em 1em 1em 3em;
	border-bottom: 1px solid #dcdcdc;
	}
	#nav-content ul li:last-child {
	border-bottom: none;
	}
	/*チェックが入ったら表示*/
	#nav-input:checked ~ #nav-close {
	display: block;/*カバーを表示*/
	opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);/*右へスライド*/
	box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
	}
}
/*SinglePage*/
ul.g-navi {
padding: 0;
margin: 0;
list-style: none;
}
ul.g-navi li {
display: inline-block;
margin: 7px;
list-style: none;
}
ul.g-navi li a {
color: #fff;
font-size: 1em;
border: none;
text-decoration: none;
}
ul.g-navi li a:hover {
color: #dcdcdc;
}
/*-----------------------------------
Page Design
-----------------------------------*/
.linebox {
width: 90%;
padding: 0.8em 1.5em;
margin: 2em auto 1.5em;
border: 1px solid #dedede;
}
.linebox p {
margin-bottom: 0;
}
/*List DotStyle*/
ul.dot {
list-style: none;
list-style-image: none;
padding: 0 0 0 0;
margin: 0 0 0 0;
}
ul.dot li {
font-size: 1.04em;
list-style: none;
line-height: 1.37;
margin: 0;
position: relative;
padding: 0 0 0.4em 1.3em;
}
ul.dot li::before {
display: block;
position: absolute;
top: 0.4em;
left: 0.2em;
content: " ";
width: 8px;
height: 8px;
/*line-height: 18px;*/
background-color: #1e50a2;
border-radius: 100%;
font-size: 0.9em;
}
ul.dot.reds li::before {
background-color: #fdeff2;
color: #fdeff2;
}
ul.dot.orange li::before {
background-color: #ff6600;
color: #ff6600;
}
ul.dot.reds li::before {
background-color: #fdeff2;
color: #fdeff2;
}
ul.dot.orange li::before {
background-color: #ff6600;
color: #ff6600;
}
/*ナンバーズ*/
ol.numbers {
list-style: none;
list-style-image: none;
counter-reset: li_count; /*Reset*/
}
ol.numbers li {
padding-left: 1.4em;
}
ol.numbers li:before {
counter-increment: li_count;
content: counter(li_count)".";
font-size: 1.12em;
font-weight: bolder;
padding-top: 6.5px;
border: none;
color: #333333 !important;
background: none;
}
@media all and (max-width: 640px) {
	.main ol.numbers li:before {
	font-size: 1.15em;
	padding-top: 3.5px;
	}
}
/*List CheckMark*/
ul.check {
list-style-type: none;
}
ul.check li {
position: relative;
line-height: 1.37;
padding: 0 0 0.4em 1.5em;
}
ul.check li:after, ul.check li:before {
position: absolute;
content: '';
display: block;
background: #dc143c;
top: 0.35em;
left: 0.5em;
height: 13px;
width: 4px;
border-radius: 12px;
transform: rotate(45deg);
}
ul.check li:before {
top: 0.6em;
left: 0.2em;
height: 8px;
transform: rotate(-45deg);
}
/*Faq*/
dl.faq {
margin: 1em 0 2em 0;
}
dl.faq dt,dl.faq dd {
margin:0;
}
dl.faq dt {
font-size: 1em;
font-weight: bold;
color: #1c305c;
margin-bottom: 0.5em;
position: relative;
padding-left: 2em;
}
dl.faq dt::before {
position: absolute;
top: 0;
left: 0;
content: "Q";
width: 24px;
height: 24px;
font-weight: normal;
line-height: 24px;
background-color:#00885a;
border-radius: 12px;
color: #ffffff !important;
font-size: 0.9em;
text-align: center;
}
dl.faq dd {
padding-left: 2em;
font-size: 1em;
margin-bottom: 1em;
position: relative;
}
dl.faq dd:before {
position: absolute;
top: 0;
left: 0;
content: "A";
width: 24px;
height: 24px;
line-height: 24px;
background-color: #e4007f;
border-radius: 12px;
color: #ffffff !important;
font-size: 1em;
text-align: center;
}
/*-----------------------------------
Prfile Page
-----------------------------------*/
dl.pr {
width: 100%;
padding: 0;
}
dl.pr dt {
font-size: 1em;
margin: 0;
line-height: 1.3;
width: 5em;
clear: left;
float: left;
padding: 7px 0 0 0;
vertical-align: top;
}
dl.pr dd {
font-size: 1em;
margin: 0;
line-height: 1.3;
margin-left: 5em;
padding: 7px 0 0 0;
vertical-align: top;
}

/*-----------------------------------
Contact Page
-----------------------------------*/
ul.contact {
margin-top: 11px;
list-style:none;
}
.contact li {
margin-bottom:7px;
padding: 5px 7px 5px 30px;
line-height: 1.5;
list-style:none;
}
.contact li:last-child {
margin-bottom:0;
}
.contact li.address {
background:url(images/home2.png) 0 7px no-repeat;
font-size: 1.2em;
}
.contact li.phone {
background:url(images/oldphone.png) 0 7px no-repeat;
font-family: 'Montserrat', sans-serif;
font-size: 1.2em;
}
.contact li.email {
background:url(images/email.png) 0 7px no-repeat;
font-family: 'Montserrat', sans-serif;
font-size: 1.2rem;
}
.contact li a {
/*color: #56AEEB;*/
text-decoration:none;
}
.contact li a:hover {
/*color: #56AEEB;*/
text-decoration:none;
}

/*-----------------------------------
Press Page
-----------------------------------*/
dl.news dt {
width: 35%;	
float: left;
}
dl.news dt img {
max-width: 98%;
}
dl.news dd {
margin-left: 37%;		
}

/*-----------------------------------
Pagetop
-----------------------------------*/
#to-top {
position: fixed;
bottom: 2em;
right: 0.7em;
width: 3em;
height: 3em;
font-size: 100%;
z-index: 111;

}
#to-top a {
background: #544a47;
text-decoration: none;
color: #fff;
width: 3em;
height: 3em;
line-height: 2.8em;
text-align: center;
display: block;
border: 1px solid #fff;
border-radius: 1.5em;
-webkit-border-radius: 1.5em; 
-moz-border-radius: 1.5em; 
filter: alpha(opacity=80);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=50)";
-moz-opacity: 0.80;
opacity: 0.80;
}
#to-top a:hover {
text-decoration: none;
background: #111111;
}

/*-----------------------------------
Footer
-----------------------------------*/
#footer {
background: rgba(33,160,59,1.0);
color: #fff;
text-align: center;
font-size: 0.9em;
padding: 20px 0 20px 0;
z-index: 1000;
}
#footer .copy {
color: #fff!important;
font-size: 0.85em;
}
#footer a {
color: #fff;
}
/*Navi*/
ul.f-navi {
padding: 0;
margin: 0 0 1em 0;
list-style: none;
}
ul.f-navi li {
display: inline-block;
margin: 7px;
list-style: none;
}
ul.f-navi li a {
color: #fff;
font-size: 0.95em;
border: none;
text-decoration: none;
}
ul.f-navi li a:hover {
color: #dcdcdc;
}
