﻿@charset "utf-8";


:root {
	--acc-color:#168c4a;
	--link-color:royalblue;
	--hover-color:#048;
	--fb-link-color:#4df;
	--fb-hover-color:#aff;
}
	


/* =============================================================================
   Site Styles
   ========================================================================== */

body {
	font-family: Verdana, Helvetica, "メイリオ", Meiryo, 
				"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", 
				"ＭＳ Ｐゴシック", sans-serif,
				"Takao Pゴシック", "TakaoPGothic", sans;
	line-height:1.7em;
	font-size:17px;
	/*background: #fefefe; color:#444;*/
	padding-top: 0px;
	color:#444;

	
	text-align:center;
}

/* box-sizing */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

p {margin:1.5em auto;}
p.slim {margin:0.75em auto;} 
p.wide {margin:2.25em auto;} 


hr {
	clear:both;
	border: 0 !important; height: 0 !important;
    border-top: 1px solid rgba(0, 0, 0, 0.15) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.35) !important;
	margin:1.5em 0;
}

img {width:auto; max-width:100%; vertical-align:middle;}
	
#main { height: 100%; text-align:left;}

.hr-box {width:100%; margin: 0; padding:0;}

.hr-box.pd-top:before, .hr-box.pd-both:before {
	content:" ";
	display:block; width:100%; height:72px !important;
}
.hr-box.pd-btm:after, .hr-box.pd-both:after {
	content:" ";
	display:block; width:100%; height:48px !important;
}


/*#main-column img {width: 100%;}*/

#logo img.site-logo {width:120px; vertical-align:0%; margin-right:10px; opacity:0.8; transition:all 0.65s linear 0s;}
#logo img.site-logo:hover { 
	opacity:1; transition:all 0.15s linear 0s;
}
.fixed #logo img.site-logo {width:55px; margin-top:0.25em;transition:all 0.65s linear 0s;}


#logo span {margin:0; font-family:'Geosans-L'; font-size:32px;}

#sliderWrapper, #kanban-inner { position:relative; z-index:881;}

/*
#sliderInner {
	position:relative;
	width:90%; height: 90%;
	z-index:882;
	margin: 0px auto;
}

#kanbanInner {
	position:absolute; top:56px; left:56px;
	font-size:48px; color:#111;
	z-index:882;
}
*/

#logo h1 { color:#fff; font-size:13px; font-weight:normal; text-align: right; margin:0px;}

h2, h3, h4, h5, h6 { color:#444;}

h2 {
	font-weight:bold;
	font-size:175%;
	color:rgb(48,117,80);/* rgb(48,107,80); rgb(23,142,76);*/
	text-shadow: 2px 2px 3px rgba(0,0,0,0.4);
	margin:0.5em 0;
	line-height:1.35em;
}
h2.jp {
	font-size:235%;
	letter-spacing:0.25em;
	text-align:center;
}
h2.en {
	font-weight:bold;
	font-family: 'Tenderness'; /*'Geosans-L';*/
	font-size:310%;
	color:rgb(48,117,80);
	text-shadow: 2px 2px 3px rgba(0,0,0,0.4);
	letter-spacing:0.25em;
	text-align:center;	
}



h2.tac {padding-left:0; padding-right:0; text-align:center;}

h3 { 
	color:#444; line-height:1.5em; font-size:22px;
	margin-top:1em; /*padding:0.1em 0.5em; border-left:6px solid #6DBEC6;/*#E0531C;/*#4CD6BC;*/
	/*background:rgba(255,255,119,0.05);*/	
}
.fixed-page h3 { border-left: 6px solid rgb(135,207,136); padding-left: 0.5em;}


h2.link {font-size:26px}


a {
	color:var(--link-color);
	text-decoration: none;
	transition: 0.38s linear all;	
}
a img.opa, a.opa img {
	opacity:1.0;
	filter: alpha(opacity=100);
	transition: 0.36s linear all;
}

@media (hover: hover) {
	a:hover {
		color:var(--hover-color);
		text-decoration: none;
		text-shadow:0 0 1px #fff, 0 0 2px #4bf, 0 0 5px #4bf;
		transition: 0.22s linear all;	
	}
	a img.opa:hover, a.opa img: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;	
	}
}

a span.outbound::after {
	content: "p"; 
	font-family: "SosaIcon";
	font-size:110%; font-weight:bold; color:#9ac;
	vertical-align:35%; margin:0 0 0 3px; line-height:1.0;
}

blockquote {
	font-style:italic; 
	background:rgba(0,0,0,0.075);
	padding:40px 20px;
	border-radius:0 30px 0 30px;
	position: relative;
}
blockquote::before {
    color: #fff;
    content: "“";
    font-family: serif;
    font-size: 500%;
    line-height: 1em;
    position: absolute;
    left:-4px; top: 0;
}
blockquote:after {
    color: #fff;
    content: "”";
    font-family: serif;
    font-size: 500%;
    line-height: 0;
    position: absolute;
    right: 10px; bottom:0;
}

dt,dd {margin:0; padding:0.5em;}


figure.hover-cap {
	position: relative;
	overflow: hidden;
	height:auto; /*max-height:300px;*/ min-height:200px;
	color:#fff;
	background-size:cover; background-position:center center;
}
figure.hover-cap img {width:100%; height:auto; z-index:-1;}
figure.hover-cap h3 {margin-top:1.5em; color:#fff;}
figure.hover-cap figcaption {
	position: absolute;
	top: -150%;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	-webkit-transition: .5s;
	transition: .5s;
	opacity: 1;
}
/* media Query --- PConly! 
figure.hover-cap:hover figcaption { top: 0; left: 0;}
*/

ul:not(.nopad) {padding-left: 1.5em;}
ul.nopad {padding-left: 0;}


ul,ol  { text-align: left;}

li {list-style:none; line-height:1.5em; margin:0.75em 0.5em;}

ul li.sq {list-style: square;}  /*sq=square*/
ul li.sm {list-style: circle;} /*sm=siro-maru*/
ul li.km {list-style: disc;} /*km=kuro-maru*/

ul li.que, ul li.ans {padding-left:1.5em; padding-right:0.5em; line-height:1.75em;}
ul li.que {margin-top:1.5em; margin-bottom:0.5em;}
ul li.ans {margin-top:0.5em; margin-bottom:1.5em;}
ul li.que:before {content:"Q"; font-weight:bold; padding:3px 8px 6px 8px; margin-right:8px; border:1px solid #aaa; border-radius:100%; background:#bbb; color:#666;}
ul li.ans:before {content:"A"; font-weight:bold; padding:3px 8px 6px 8px; margin-right:8px; border:1px solid #aaa; border-radius:100%; background:#eee; color:#333;}

ul.gallery li {display:block; float:left;}

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 {
	position:relative;
	float:left;
	top:0; left:0; 
	width:100%;
	border:none;
	height:auto;
	/*box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);*/
	z-index:1000;
	background:transparent;/*#fff;/*#559EA5;*/
}
	
nav { max-width: 1320px; margin: 0 auto; text-align: left;}

nav ul { font-size: 20px; color:#444; font-weight:normal;}

nav a {
	color: #444;/*#333; /*#009245; /*928b83;/*fff;*/
	font-size:17px; /*font-family:'Geosans-L';*/ 
	/*text-shadow:none;*/
}

.site-logo {margin-left:0.5em;}
nav#gblnavi-pc ul {
	text-align: center;
	margin: 0 0.5em 0 0; padding: 0;
}

nav#gblnavi-pc ul li {
	display:inline-block;
	margin:0.25em;
	text-align: left;
}

#sticker nav#gblnavi-pc ul li img { background:rgba(165,245,185,0.35); width:70px; border-radius:50%; transition:all 0.29s linear 0s; opacity:0.85;}
#sticker nav#gblnavi-pc ul li img:hover { background:rgba(65,145,85,0.01); opacity:1; border-radius:5%; transform:scale(1.175); transition:all 0.33s linear 0s;} 

#sticker.fixed nav#gblnavi-pc ul li img { width:55px; height:auto; transition:all .29s linear 0s;}


nav#gblnavi-pc ul li.mar { margin: 0 0 0 20px; }

nav#gblnavi-pc ul li.right-end { margin-right: 0; }


#menu-smptbl { 
	position:relative; float:right; right:2px; top:-48px;text-align:center;
	z-index:29996;
}
#menu-smptbl a { color: #fff;}
#menu-smptbl .sidr h1, .sidr h2, .sidr h3, .sidr h4, .sidr h5, .sidr h6 {
	font-size:120%; font-weight:bold;
	line-height:2.0em;
	margin:0;
}


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;
	height:auto; min-height:300px;
	background:#444;
}


footer a {display:inline-block; color:#bbb; transition:all 0.3s linear 0s;}
@media (hover: hover) {
	footer a:hover {color:#fff; transition:all 0.3s linear 0s;}
}

footer hr {
	clear:both;
	margin:32px;
}

#footer-inner {
	width:96%;
	max-width:970px;
	text-align:left;
	margin:0 auto;
}

footer ul li {
    display: inline-block; height: 64px;
	font-size:15px;
    margin:0.25em 1em 0.25em 0;
}

footer ul li a {display:inline-block; width:100%; height:100%;}
footer ul li a img { width:64px; height:auto; transition:all .14s linear 0s;}
footer ul li a img:hover { transform:translate(-2px,-4px); transition:all .14s linear 0s;}




table {
	clear:both;
	text-align:left;
	margin:16px 0px; 
	word-break:normal;/*break-word;/*break-all;*/
	font-size:15px;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	width:99%;
}
caption {
	text-align: left; padding:0.5em 0.5em 0.5em 1.5em ; font-size:1.2em; color: #fff; font-weight:bold;border-radius:6px 6px 0 0;
	margin: 0;
	background-color: transparent;
	background-image: -webkit-linear-gradient(-45deg, rgba(50,50,50,0.3) 25%, transparent 25%, transparent 50%, rgba(50,50,50,0.3) 50%, rgba(50,50,50,0.3) 75%, transparent 75%, transparent);
	background-image: -moz-linear-gradient(-45deg, rgba(50,50,50,0.3) 25%, transparent 25%, transparent 50%, rgba(50,50,50,0.3) 50%, rgba(50,50,50,0.3) 75%, transparent 75%, transparent);
	background-image: linear-gradient(-45deg, rgba(50,50,50,0.3) 25%, transparent 25%, transparent 50%, rgba(50,50,50,0.3) 50%, rgba(50,50,50,0.3) 75%, transparent 75%, transparent);
	background-size: 12px 12px;
	text-shadow:1px 1px 2px rgba(0,0,0,0.3);
}

th,td {
	padding:0.5em 1em;
	font-weight:normal;
	line-height:1.8em;
	text-align:left;
	word-break:normal;/*break-word;/*break-all;*/
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
th { border-bottom:1px solid rgba(0,0,0,0.2);}
td { border-bottom:1px solid rgba(0,0,0,0.2);}

td.nobdr {border:none;}

#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;}
	}
/*+++*/

button {
	cursor:pointer;
}


.inline {display:inline-block;}
		
.note {font-size:0.7em; color:#fc9245;/*#009146; #563018;*/}
.dred-note {font-size:0.7em; color:crimson;}

.tilt {
	-webkit-transform: rotate(-5deg);
	-moz-transform: rotate(-5deg);
	-o-transform: rotate(-5deg);
	-ms-transform: rotate(-5deg);
    transform: rotate(-5deg);
}



.bg-photo {
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
}
.bg-fixed {background-attachment:fixed;}

.bg-white, .bg-wh {background:#fff;;}
.bg-black, .bg-bk {background:#000;}
.bg-bk1 {background:#111;}
.bg-bk2 {background:#222;}
.bg-bk3 {background:#333;}

.bg-lime {background:#66B048}
.bg-lgreen {background:#E1F3E1;}
.bg-bluegreen {background:#339164;}
.bg-green {background:#168C4A;}
.bg-gray {background: #ddd;}
.bg-lgray {background: #eee;}
.bg-dgray {background: #666;}
.bg-brown {background: brown;}

.bg-sky {background: 6BA1F8;/*#87C1E5;/*#6EBAEA/*#3A9CDD*/;}
.bg-orange {background: #FF7800;}


.bg-photo *, .bg-green *, .bg-dgray * , .bg-brown * 
	{color:#fff !important;} 

/*
.bg-white a {color:#666;}
.bg-white h2 {color:#bbb;}
.bg-white h3 {color:#444;}
.bg-white p {color:#444;}
*/

.bg-vgreen h3 {border-left:6px solid hotpink; /*#fea;*/}

.ac-vyellow {color:#FBB03B;}
.ac-vgreen {color:#4CD6BC;}
.ac-violet {color:#944CFE;}
.ac-aqua {color:#00A7E7;}
.ac-cyan {color:#0ff;}
.ac-vpink {color:hotpink;}

.dgreen {color:rgb(48,117,80);}



/* =============================================================================
   Navi Styles with jQuery
   ========================================================================== */

/*navトップ固定用*/
#sticker {
	margin: 0;
	transition:all .3s linear 0s;
}
.fixed {
    position:fixed; top:0; left:0; width:100%;
	z-index: 10000;
	/*opacity:0.95;*/
}
.colored {
	box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.5);
	-webkit-box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.5);
	-moz-box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.5);
	background:rgba(11,136,66,0.95);
	transition:all .3s linear 0s;
}


#rewind { /*ページトップへ戻る用*/
	display: none; position: fixed;
	bottom: 10px; right: 10px;
	width:3.25em; height:3.25em;
    background:rgba(100,100,100,0.5);
    cursor: pointer;
    border-radius: 100%;
	z-index:2;
}

#rewind::after {
	position:absolute; top:0.25em; right:0; bottom:0; left:0;
	display:block; content:""; width:0.75em; height:0.75em;
	margin:auto;
	border-top:3px solid #fff; border-left:3px solid #fff;
	transform:rotate(45deg);
	z-index:3;
}



/* =============================================================================
   Page Styles
   ========================================================================== */

#topics table span {display:inline-block; margin-right: 16px; padding-bottom: 4px;}
#topics table span.info {width:90px; text-align: center; color:#fff; font-size:12px; padding: 2px 6px; }
#topics table span.omega {margin-right: 0;}

.pnkz {font-size:13px; /*margin:1.5em 0;/*margin-bottom:20px; margin-top: 0px;*/}

.vWrap p { padding:0; margin:0;}

.ytimgWrapper {display:block; position:relative; cursor: pointer; text-align:center; width:100%; height:100%; margin:0;}
.ytimgWrapper:after {
	position:absolute;
	content:""; text-align:center; margin:auto auto;
	top:0; left:0; right:0; bottom:0; width:80px; height:60px;
	/*background:royalblue url(./img/icon/play-button.svg) no-repeat 55% center;*/
	background:#007AeF url(./img/icon/play-button.svg) no-repeat 55% center;
	background-size:20px 20px;
	opacity:0.8;
	border-radius:100%;
	transition:all 0.22s linear 0s;
		/*background:rgba(11,136,66,0.95);*/ /*#168C4A*/

}

.elip {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

#related-post-column .rel-one {
	border-radius:0px; text-align:left; margin:0 1em 1em 0;
	transition:all 0.3s linear 0s;
}
#related-post-column .rel-one:hover {background:rgba(0,0,0,0.1);/*rgba(76,214,188,0.5);/*rgba(155,215,180,0.4);*/ transition:all 0.3s linear 0s;}



#related-post-column th, #related-post-column td {border:none;}
#related-post-column th {width:auto; max-width:130px;} 
#related-post-column td {width:auto; min-width:180px; text-align:left;} 
#related-post-column span.no-eyechatch {display:inline-block; width:100px; height:100px; background:rgba(0,0,0,0.2);}
.side-banner li {text-align: center;}
.side-banner img {width: 100%; max-width: 320px; margin: 0 auto;}

#sidebar-inner h2 {
	border:none; /*-left:6px solid rgb(148,76,254);/* rgb(76,214,188); /*none;*/ 
	color: rgb(48,117,80);
	line-height:2.0em; margin: 32px 0 12px 0;
	font-size:20px; padding: 0.15em 0.5em 0; 
}
#sidebar-inner table { width:100%; max-width: 280px; }
#sidebar-inner th, #sidebar-inner td {
	width:auto; max-width: 14.28%;
	/*padding:0.25em 0.5em;*/
	font-weight:normal;
	line-height:1.4em;
	text-align:center;
	word-break:normal;/*break-word;/*break-all;*/
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}




/* =============================================================================
   Post Styles
   ========================================================================== */

.fixed-page-post h2 { 
	/*background:rgba(76,214,188,1.0);*/ 
	font-family: Verdana, Helvetica, "メイリオ", Meiryo, 
				"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", 
				"ＭＳ Ｐゴシック", sans-serif,
				"Takao Pゴシック", "TakaoPGothic", sans;
	margin-top:1.5em; margin-bottom:1em;
	padding-bottom:0.2em;
	border-bottom:1px solid rgb(135,207,136);
}
.fixed-page-post section {margin-bottom:6em;}
.fixed-page-post section:last-child {margin-bottom:1.5em;}
.fixed-page-post h3 { margin:3em 0 0.85em; border-left:6px solid rgb(135,207,136); padding-left:0.5em;}
.fixed-page-post table th {background:rgba(135,207,136,0.25);}
.fixed-page-post table th, .fixed-page-post table td { vertical-align:top; padding-top:0.75em; padding-bottom:0.75em; }
.fixed-page-post table h4, .fixed-page-post table p {margin-top:0;}

.fixed-page-post dl.border {border:1px solid #bbb; padding:0.75em 0.5em; border-radius:6px;}
.fixed-page-post dl.border dt {font-weight:bold; border-bottom: 2px dotted #bbb;}
.fixed-page-post dl.point { background: rgba(135,207,136,0.25); padding:1em; border-radius:6px;}
.fixed-page-post dl.point dt {font-weight:bold; font-size:125%; border-bottom: 2px dotted #aaa;}

.single-post-page .post-body {background:#fff;}
.post-body {padding:1em;}
.post-body img {margin:8px 8px 8px 0; padding:0; width:auto; max-width:100%;}
.post-body blockquote {	padding:40px 20px;}

.post-body .wp-caption { width:auto; max-width:100% !important; height:auto !important; border:1px solid #bababa; border-radius:4px; padding:0.5em; margin:1em auto;}
.post-body .wp-caption img { margin:0 !important; width:auto; max-width:100% !important; height:auto; }
.post-body .wp-caption p {margin:0.5em auto; text-align:center; font-size:80%;}

.post-meta { 
	font-size:12px; color:#555; line-height:2.0em; font-weight:bold;
	margin: 0 0 2em; padding: 8px 16px; 
	background-color: rgba(100,100,100,0.25);
}
.post-meta span.row { margin:0 16px 0 0;}
.post-meta span.post-date { font-family: 'Geosans-L'; font-size:15px; color:#fff; }
.post-meta span.category, .post-meta span.author,
.post-meta span.tags, .post-meta span.comments { font-family: 'SosaIcon'; font-size:20px; color:#f3f3f3;/*#eee;*/ }

.author, .author p {text-align:right !important;}
.author img {width: 35vw; max-width: 100px; border-radius: 100%; margin:auto 1em;}
.author img.kondo {transform: rotate(15deg);}




div.sns-button {background:#fff; padding:0 0.5em 0.5em;}
div.fb-share-button { float:right; display:inline-block; margin:0 0 0 16px;}
div.fb-like { float:right; display:inline-block; margin:0;}
div.tweet-button { float:right; display:inline-block; margin:8px 0 12px 12px;}

aside.side-banner img {margin-bottom:12px;}
aside.side-banner ul {margin:0; text-align:center;} 

#searchform div {display:flex; border:1px solid #bcbcbc; overflow:hidden; border-radius:6px;/*box-shadow:0 2px 4px rgba(20,20,20,0.2);*/ }
#searchform div input#s {width:calc(100% - 36px); height:36px !important; border:none !important; padding-left:0.5em;}
#searchform div input#searchsubmit {
	width:36px; height:36px !important; margin:0 !important; padding:6px 12px; border:none !important;
	background:#4984FC url(./img/icon/search-wh.svg) no-repeat 0 0; background-size:contain; color:transparent;
}
#searchform label.screen-reader-text {display:none;}


div.tagcloud { margin-bottom:40px; }
div.tagcloud a { 
    display:inline-block !important;
    line-height:1.2em !important; 
    padding:5px !important;
}

input#searchsubmit { padding:6px 12px;}

	
.custom-posts-area * {margin:0 inherit !important;}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
	Pagenation
*/
.pagination {
	clear:both;
	position:relative;
	margin:0 8px 16px;
	text-align:center;
	font-family: 'Geosans-L';
}
 
.pagination span.current, .pagination a  {
	display: inline-block;
	text-align:center;
	width:48px;
	height:48px;
	font-size:20px;
	padding-top:9px;
	padding-bottom:8px;
	margin:7px;
	border-radius:100%;
}
 
.pagination a {background:#fff; color:#377eb4; border:1px solid #377eb4; }
.pagination a:hover {text-shadow:none;}
/* 
 !!!!!! memo: hover effect = PConly, wrote in media query !!!!!
*/

.pagination .current{
	background:#377eb4;
	color:#fff;
	/*border:1px solid rgba(100,200,255,0.85);/*#aaa*/;
}

.pagination span.dot {
	color:#377eb4;
	display: inline-block;
	text-align:center;
	width:20px;
	height:48px;
	font-size:28px;
	padding-top:9px;
	padding-bottom:8px;
	margin:5px;
	border-radius:100%;
}



/* =========================== 
 　ContactForm7
*/
.wpcf7-form input{width: 245px; font-size:1.2em;} /*名前、メール、題名*/
.wpcf7-form span.postal-code1 input, .wpcf7-form span.postal-code2 input,
.wpcf7-form span.postal-code2 input, .wpcf7-form span.postal-code4 input {width: 50px; font-size:1.2em;} /*日付*/
.wpcf7-form span.yen input{width: 130px; font-size:1.5em;} /**/
.wpcf7-form textarea{width: 99%; font-size:1.2em;/*max-width:500px:;*/} /*本文*/

.wpcf7-form input[type=radio], .wpcf7-form input[type=checkbox] {width:20px;}
.wpcf7-form input[type=radio]+span, .wpcf7-form input[type=checkbox]+span {display:inline-block; margin-right:20px;}

.wpcf7-form input:focus {background:#dff; transition:all 0.3s linear 0s; }
.wpcf7-form textarea:focus {background:#dff; transition:all 0.3s linear 0s; }

.wpcf7-form .wpcf7-submit {
	width:auto !important;
    font-size: 1.4em !important;
    padding: 12px 32px !important;
    color: #fff !important;
	border-radius:4px !important;
	border:1px solid rgba(155,155,155,0.4); 
	background:#38e;/*rgb(23,142,76);*/
}
.wpcf7-form .wpcf7-submit:hover {
	background: #999 url(./img/bg/pattern.png); cursor: pointer;
}

.wpcf7-response-output {
	font-size: 15px;
	text-align: center;
}

.wpcf7-validation-errors {
	padding: 10px;
    background: #965755;
	font-weight: bold;
	color: #fff;	
	border-radius:6px;
}
/*
.wpcf7-not-valid-tip {
	display:inline-block !important;
	font-size:0.7em !important;
}
*/
.wpcf7-mail-sent-ok {
	padding: 10px;
    background: #225A4B;	
	font-weight: bold;
	color: #fff;
	border-radius:6px;
}


span.hissu{
	display:inline-block;color:#fff;font-weight:bold;font-size:12px;padding:0px 5px;
	border-radius:3px;margin:0 6px 2px 0; background:#FF69B1; vertical-align:7.5%;
	text-shadow:none;
}
span.ninni{
	display:inline-block;color:#fff;font-weight:bold;font-size:12px;padding:0px 5px;
	border-radius:3px;margin:0 6px 2px 0; background:#aaa; vertical-align:7.5%;
	text-shadow:none;
}
input::-webkit-input-placeholder { color: #ddd !important; }
input:-moz-placeholder { color: #ddd !important; opacity: 1; }
input::-ms-input-placeholder { color: #ddd !important; }


/*============================
* fb like-box
*/
div.fb-like-box,
div.fb-like-box iframe[style],
div.fb-like-box span {
    width: 100% !important;
}

div.fb-like-box a {
	color: #2020DC !important;
}
div.fb-like-box a:hover {
	color: #DC2020 !important;
}

.toggler {cursor:pointer;}


/*============================
* ghost button
*/
a.gbtn-white {display:inline-block; color:#fff; margin:1em 0; padding:0.75em 1em; border:1px solid #fff; background:transparent;}
a.gbtn-gray {display:inline-block; color:#666; margin:1em 0; padding:0.75em 1em; border:1px solid #797979; background:transparent;}
a.gbtn-aqua {display:inline-block; color:#007AFF; margin:1em 0; padding:0.75em 1em; border:1px solid #007AFF; background:transparent;}
a.gbtn-black {display:inline-block; color:#000; margin:1em 0; padding:0.75em 1em; border:1px solid #000; background:transparent;}
/* hover-effect::media query min-width:995px */

a.btn-aqua {display:inline-block; color:#fff; background:#007AFF; margin:1em 0; padding:0.75em 1em; border:1px solid #007AFF; box-shadow: 0 3px 5px rgba(20, 20, 20, 0.3); transition:all 0.14s linear 0s;}
a.btn-aqua-small {display:inline-block; color:#fff; background:#007AFF; margin:0.5em 0; padding:0.35em 0.75em; border:1px solid #007AFF; box-shadow: 0 2px 4px rgba(20, 20, 20, 0.3); transition:all 0.14s linear 0s;}

.btn-dummy {display:inline-block; color:#666; background:#ddd; margin:1em 0; padding:0.75em 1em; border:1px solid #ddd;}
.btn-dummy-small  {display:inline-block; color:#666; background:#ddd; margin:0.5em 0; padding:0.35em 0.75em; border:1px solid #ddd;}

a.menu-btn {display:inline-block; margin:0; padding:0 10px 0 4px; color:#fff;}
.fixed a.menu-btn, #front-page-navi a.menu-btn { color:#222;}



/* ^^^^^^^^^^^^^^^^^^^^^^^^^^
	hamburger menu
^^^^^^^^^^^^^^^^^^^^^^^^^^ */
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 32px; height: 28px;
	margin-top:4px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #333;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 12px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}

/* animation */
.menu-trigger.active span { background-color:#0e4;}
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(12px) rotate(-225deg);
	-moz-transform: translateY(12px) rotate(-225deg);
	transform: translateY(12px) rotate(-225deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-12px) rotate(225deg);
	-moz-transform: translateY(-12px) rotate(225deg);
	transform: translateY(-12px) rotate(225deg);
}
.menu-trigger::after {
	position: absolute;
	left: 38px; top:-1px;
	content: 'menu';
	display: block;
	width: 100%;
	color: #333;
	font-size: 22px;
	font-family:'Geosans-L';
	text-decoration: none;
	text-align: center;
	transition: all 0.4s;
}
.menu-trigger.active::after {
	/*content: 'close';*/
	font-size:30px; color:#ccc;
	left:36px; top:-2px;
	transition: all 0.4s;
}



/* =============================================================================
   Media Queries
   ========================================================================== */

@media only screen and (max-width: 1220px) {

	.maxonly {display:none;}

}

@media only screen and (min-width: 995px) {
	
	.smponly, .tblonly, .smptbl {display:none;}
	
	#gblnavi-mobile {display:none;}
	#gblnavi-pc {	display:block;}

	#sidebar-inner table { width:100%;}
	#sidebar-inner th, #sidebar-inner td {
		padding:0.25em 0.5em;
		font-size:12px;
		font-weight:normal;
		line-height:1.4em;
		text-align:center;
		word-break:normal;/*break-word;/*break-all;*/
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
	}

	.fixed2-aside {
		position: fixed;
		top: 60px;
		z-index: 90;
	}
	
	
	
	a.gbtn-white:hover {color:#6B6B6B; background:rgba(255,255,255,0.9);}
	a.gbtn-gray:hover {color:#fff; background:rgba(0,0,0,0.3);}
	a.gbtn-aqua:hover {color:#fff; background:rgba(0,122,255,0.75);}
	a.btn-aqua:hover, a.btn-aqua-small:hover {color:#FFF; background:#44BBFF; box-shadow:0 1px 2px rgba(20,20,20,0.4); transform:translateY(4px);	transition:all 0.2s linear 0s;}

}



@media only screen and (max-width: 899px) {
	.rel-one {width:47%; margin-right:1%; margin-left:1.5%;}
}



@media only screen and (min-width: 801px) {
	
	figure.hover-cap:hover figcaption { top: 0; left: 0;}

	.ytimgWrapper:hover:after {
		background:#4bf url(./img/icon/play-button.svg) no-repeat 55% center;
		background-size:20px 20px;
		opacity:1; transition:all 0.22s linear 0s;
	}

	.pagination a:hover {
		-webkit-transform: scale(1.133);
		/*-webkit-transform: translate(0); /* to avoid bug - overflow:hidden */ 
		-ms-transform: scale(1.133);
		-moz-transform: scale(1.133);
		-o-transform: scale(1.133);
		transform: scale(1.133);
		transition: all 0.1s linear 0s;
	}
	
}


/* Tablet Portrait size to Base 996px */
@media only screen and (min-width: 768px) and (max-width: 995px) {

	.smponly, .smptbl, .wideonly, .maxonly  {display:none;}

	body {min-height: 1024px;}

	#gblnavi-mobile {display:none;}
	#gblnavi-pc {	display:block;}

	#main-column #blog-pickup div.cnt-4 {display:none;}

	#sidebar-inner table { width:100%;}
	#sidebar-inner th, #sidebar-inner td {
		padding:0.15em 0.3em;
		font-weight:normal;
		line-height:1.2em;
		font-size:11px;
		text-align:center;
		word-break:normal;/*break-word;/*break-all;*/
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
	}

	.fixed2-aside {
		position: fixed;
		top: 120px;
		z-index: 90;
	}
	
	

}

/* not wide enough */
@media only screen and (max-width: 850px) {
	#sticker nav#gblnavi-pc ul li img { width:64px; height:auto; }
}

/* All Mobile Sizes */
@media only screen and (max-width: 768px) {

	.maxonly, .wideonly, .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;}
	th, td { padding:4px 8px; }

	.flex-table:before, .flex-table:after { content: " "; display: table;}
	.flex-table:after { clear: both;}
	.flex-table {border:1px solid rgba(0,0,0,0.2);  *zoom: 1;}
	.flex-table th, .flex-table td {float:left; width:100%;}
	.flex-table th {border-bottom:none;}
	.flex-table tr:last-child td:last-child {border-bottom:none;}

	.container section {margin-bottom:24px;}

	#sidebar-inner table { width:100%; max-width: 280px; }
	#sidebar-inner th, #sidebar-inner td {
		width:auto; max-width: 14.28%;
		/*padding:0.25em 0.5em;*/
		font-weight:normal;
		line-height:1.4em;
		text-align:center;
		word-break:normal;/*break-word;/*break-all;*/
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
	}

	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 {
		display:inline-block; width:auto;
		text-align: left;/*right;/*left;/*center;*/
		margin: 1.5em 0.25em;
		font-size: 16px;
		position:relative;
	}

	nav#gblnavi-mobile ul li img { width:80px; }

	
	nav#gblnavi-mobile ul li a { color:#fff;}
	.fixed nav#gblnavi-mobile ul li a { color:#222;}
	nav#gblnavi-mobile .mobile-menu {clear:both; width:100%; background:rgba(11,136,66,0.75);}
	.colored nav#gblnavi-mobile .mobile-menu {background:transparent;}
	nav#gblnavi-mobile ul li a {color:#222;}
	
	nav#gblnavi-mobile ul li div {
		width: 100%; height:24px;
			/*padding-top: 16px;*/
		background: url(./img/icon/arrow-r.png) no-repeat right 10% / 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;} 

	.vWrap{
		position: relative;
		margin-top: 0.5em 0 1.2em;
		padding:69px 0 50%;
		overflow: hidden;
	}

	.vWrap iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.fixed-page-post h3 { font-size:20px; line-height:1.35em; margin-left:-0.25em; padding-left:0.4em;}

	.container .upper, .wide-container .upper, .full-container .upper {margin-bottom:2em !important;}	

}

@media only screen and (max-width: 599px) {
	.rel-one {width:100%;}
}

/* Mobile Landscape Size to Tablet Portrait */
@media only screen and (min-width: 480px) and (max-width: 768px) {

	.pconly {display:none;}
	.tblonly {display:block;}

	h3 {line-height:2.0em; font-size:24px;}
	
	#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;
	}

	.side-banner ul.first li {display:block; width: 100%; text-align: center;}
	.side-banner ul.first li img {width: 100%; max-width: 350px; margin: 5px auto;}

	.side-banner ul.second li {display:inline-block; width: 48%; max-width: 290px; text-align: center;}
	.side-banner ul.second li img {margin: 0 auto;}
	

}

/* Mobile Portrait Size to Mobile Landscape Size */
@media only screen and (max-width: 479px) {
	
	body { font-size:15px; 

	}

	#sticker {

	}
	
	.pconly, .tblonly, .tblpc {display:none;}
	.smponly {display:block;}
	
	h2 {line-height:1.65em; font-size:180%;}
	h2.bg-subcolor-solid {font-size:24px; text-align: center; padding-left: 0;}
	h3 {line-height:2.0em; font-size:22px;}
	
	table { margin:8px 2px; width:98%;}

	.flex-table-smp:before, .flex-table-smp:after { content: " "; display: table;}
	.flex-table-smp:after { clear: both;}
	.flex-table-smp { *zoom: 1;}
	.flex-table-smp th, table.flex-table-smp td {float:left;}


	ul, ol  { padding-left:1.5em;}
	ul.nopad, ol.nopad  { padding-left:0; margin-left:0; font-size:13px;}

	aside.side-banner ul {padding-left:0;}

	#logo img {width:175px; vertical-align:-40%; margin-right:6px;}
	#logo span {font-size:30px;}

	#kanbanInner {
		position:absolute; top:24px; left:8px;
		font-size:24px;
	}
	
	#rewind {
		padding: 2px 6px 8px;
		right:2px; bottom:2px;
	}

	#to-contact {
		padding: 0 6px;
		left:2px; bottom:2px;
	}

	img.logo-sf { width: 240px; }
	
	
	#footer-inner {text-align:center;}
	footer ul {
		width:100%; max-width:340px;
		margin:2.5em auto !important; padding:0; 
		text-align:center;
	}
	footer ul li {
		display:inline-block; width:auto; 
		margin:0.5em 3%;
	}
	
	
	#main-column #blog-pickup {text-align: center;}
	#main-column #blog-pickup div.post-cell {text-align: center;}

	.post-meta span.row { display:block; margin:0;}

	div.tweet-button { margin:0.4em 0 0 1em;}

}


/* +++ PRINT SETTING +++ */
@media print{

	#gblnavi-mobile, .smponly, .tblonly, .smptbl {display:none;}

}



/* =============================================================================
   Font-Face
   ========================================================================== */
/* This is the proper syntax for an @font-face file*/

.sosaicon { font-family: 'SosaIcon'; }

.courier { 
	font-family: 'CourierNew';
}
.geosans {
	font-family: 'Geosans-L';
}
.cengo {
	font-family: 'CenturyGothic';
}

/*
.tender {font-family: 'Tenderness';}
*/

@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: 'CourierNew';
    src: url('./fonts/CourierNew.woff') format('woff'),
		url('./fonts/CourierNew.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: 'CenturyGothic';
    src: url('./fonts/CenturyGothic.woff') format('woff'),
         url('./fonts/CenturyGothic.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Tenderness';
    src: url('./fonts/tenderness.woff') format('woff'),
		url('./fonts/tenderness.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
}

/*
@font-face {
    font-family: 'Tenderness';
    src: url('./fonts/tenderness.woff') format('woff'),
		url('./fonts/tenderness.otf') format('opentype');
    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: 'CenturyGothic';
    src: url('./fonts/CenturyGothic.woff') format('woff'),
         url('./fonts/CenturyGothic.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: '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; }
*/