﻿/*
Theme Name: soso2020b
Theme URI: /wp-content/themes/soso2020b/
Author: Yuichiro Hayashi
Author URI: https://16deza.com/
Description: White, Clean, Book
Version: 1.0.0
License: 
License URI: 
*/

@charset "utf-8";

/*

.emerald
#4ad6c8 = rgba(74,214,200,1)

.deepsea
#41B2A8 = rgba(65,178,168,1)

*/



.lbeige {color:#e1d6ca;}
.mbeige {color:#41B2A8;}
.beige {color:#41B2A8;} 
.lwine {color:#ed1e79;}
.wine {color:#9e005d;} 
.enji {color:#7A0910;}
.ivory {color:#FFF5E4;}

.bg-ivory {background:#FFF5E4;}
.bg-green-gra {
	background : linear-gradient(45deg, rgba(11,57,57,0.7) 0%, rgba(16,190,191,0.7) 74.68%, rgba(240,243,166,0.7) 100%);
}
.bg-wine-gra {
	background : linear-gradient(150deg, rgba(237,30,121,1) 10%, rgba(158,0,93,1) 56.9%, rgba(158,0,93,1) 100%);	
}
.is-pc .bg-foggy {
	background-image:
		linear-gradient(135deg, rgba(255,234,210,0.5) 0%, rgba(234,224,215,0.85) 100%),
		url(./img/bg/foggy.jpg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
	background-attachment:fixed;
}
.is-mobile .bg-foggy {
	background-image:
		linear-gradient(150deg, rgba(255,247,240,0.75) 0%, rgba(255,245,228,0.25) 100%),
		url(./img/bg/foggy.jpg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
	background-attachment:scroll;
}



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

html {overflow:auto;}
body { 
	font-family:
	"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;
	/*"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	
	font-weight:500; line-height:1.7em; font-size:17px; padding-top:0px; color:#444; 
	background:#fff;/*#888;*/
	text-align:center; max-width:100vw; overflow:hidden;
	top:0 !important;
}
@media all and (-ms-high-contrast:none){ /* IE11 bug fix */
    *::-ms-backdrop, body {font-family: Verdana, Helvetica, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;}
}


header,#main,footer {opacity:0;}



* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.palt {font-feature-settings:"palt";}
.pkna {font-feature-settings:"pkna";}

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;
}

.hr {
	border-top: 1px solid rgba(255, 255, 255, 0.85) !important;
    box-shadow:0 -1px 0 0 rgba(0, 0, 0, 0.15) !important;
}

img {width:auto; height:auto; max-width:100%; vertical-align:middle;}


#main { height: 100%; text-align:left; background:#fff; clear:both;}

.hr-box {clear:both; width:100%; margin: 0; padding:0;}
.hr-box.pd-top{padding:5em 0 0 0;}
.hr-box.pd-btm, .hr-box.pd-bottom {padding:0 0 5em 0;}
.hr-box.pd-both {padding:5em 0;}



h2 {
	color:#222;
	margin:0.5em 0 0.5em;
	line-height:1.35em;
	position: relative;
	/*padding: 0.25em 0 0.25em 1.25em;*/
	padding:0;
	font-size:225%; font-weight:600;
	font-family:
	/*"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;	*/
	/*"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
}

h2.en {
	font-weight:400; font-size:260%; 
	font-family:'PT Serif'; 
	margin:0 0 0.5em; letter-spacing:0.3em; 
}
h2.jp {
	font-weight:600; font-size:255%; 
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	letter-spacing:0.25em; 
}
h2.tac {padding-left:0; padding-right:0; text-align:center; text-indent:0.15em;}
h2.en.tac {text-indent:0.3em;}
h2.jp.tac {text-indent:0.25em;}

.single-post-page h2 {
	margin:2em 0 0.5em; line-height:1.5em;
}
.single-post-page h2:first-child {margin-top:0;}

h3, h4, h5, h6 { color:#333;}
h4, h5, h6 { margin:1em 0;}
h3+p, h4+p, h5+p, h6+p {margin-top:0.75em;} 

h3 { line-height:1.5em; font-size:157%; margin-top:0.75em; margin-bottom:0.75em;}
h3.jp { font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; letter-spacing:0.25em; }
h3.jp.tac {text-indent:0.25em;}
h3.en {	font-size:187%; font-family:'PT Serif', serif;}

h4 {font-size:1.2em;}
h5 {font-size:1em;}



a {
	color:#41B2A8;
	text-decoration:none;
	transition: 0.38s linear all;	
}

a:hover {
	color:#222;
	text-shadow: 0 0 2px rgba(85,255,225,0.9) , 0 0 10px rgba(85,255,225,0.75);
	transition: 0.22s linear all;
}

a .opa, a.opa {
	opacity:1.0;
	filter: alpha(opacity=100);
	transition: 0.36s linear all;
}
a .opa:hover, a.opa:hover {
	opacity:0.75;
	filter: alpha(opacity=75);
	transition: 0.18s linear all;	
}
a span.outbound::after,
#page-body a[target="_blank"]::after,
#single-body a[target="_blank"]::after {
	/*
	content: "p"; 
	font-family: "SosaIcon";
	*/
	content:"open_in_new";
	font-family:'Material Icons';
	font-size:110%; font-weight:normal; color:#9ac;
	vertical-align:-18%; margin:0 0 0 2px; line-height:1.0;
}


blockquote {
	font-style:italic; 
	background:rgba(0,0,0,0.075);
	margin:1em 0;
	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:-10px; top:10px;
}
blockquote:after {
    color: #fff;
    content: "”";
    font-family: serif;
    font-size: 500%;
    line-height: 0;
    position: absolute;
    right:20px; bottom:10px;
}

dt,dd {margin:0; padding:0.5em;}



ul:not(.nopad, .wp-block-gallery) {padding-left: 1.5em;}
ul.nopad {padding-left: 0;}

table td ul {padding:0 0 0 0.75em !important; margin:0 !important;}

ul,ol  { text-align: left;}

li {list-style:none; line-height:1.5em; margin:0.75em 0.5em;}

ul li.sq {list-style: square;} 
ul li.sm {list-style: circle;} 
ul li.km {list-style: disc;}

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;
}
*/
ol {  counter-reset: my-counter;  list-style: none;  padding: 0;}
ol li {
	position: relative;
	margin-bottom: 0.6em;  padding-left: 2em;
}
ol li:before {
	content: counter(my-counter);  counter-increment: my-counter;
	background: linear-gradient(-45deg, rgba(193,193,204,0.95), rgba(255,255,255,0.95)); 
	color: #222;  font-family:'Julius Sans One';
	display: block;  float: left; text-align: center;
	line-height: 1.5em; margin-left: -2em;  height: 1.5em; width: 1.5em;
	border-radius: 50%;
}
ol li > ol {   counter-reset: my-counter-child;  list-style: none;  padding: 0; font-size:0.88em;}
ol li > ol li{
	position: relative;
	margin-bottom: 0.6em;  padding-left: 2em;
}
ol li > ol li:before {
	content: counter(my-counter-child);  counter-increment: my-counter-child;
	background: linear-gradient(-45deg, rgba(193,193,204,0.35), rgba(255,255,255,0.15)); 
	color: #777;  font-family:'Julius Sans One';
	display: block;  float: left; text-align: center;
	line-height: 1.5em; margin-left: -2em;  height: 1.5em; width: 1.5em;
	border:1px solid #eee;
	border-radius: 50%;
}


.tdlt  {text-decoration: line-through;}


.hr-scrollable {
	position:relative;
	height: auto;
	margin:1em 0;
	width: 100%;
	max-width: 100.5em;
	text-align: center;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}
.scrollable-indicator {display:none; margin-top:-1.25em; color:hotpink; font-size:12px; text-align:center;}
.scrollable-indicator.indicate {display:block; width:100%;}
.scrollable-indicator.indicate + .hr-scrollable {margin-top:0 !important;}
.scrollable-indicator .material-icons {font-size:150%; margin:0 0.25em; vertical-align:-28%;}
/*
.hr-scrollable table {margin-bottom:0; font-size:88%;}
.hr-scrollable table caption {text-align:center;}
.hr-scrollable table th, .hr-scrollable table td {
	min-width:5em !important; max-width:auto !important; 
	border:1px solid rgba(0,0,0,0.2);
	word-break:keep-all; line-height:1.4;
}
*/
table.compare td {text-align:center;}
table.nowrap td {white-space:nowrap;}
table.cell-wrap td {white-space:normal;}
.hr-scrollable p {margin-top:0; font-size:80%; color:#888;}






header {
	position:relative;
	top:0; left:0; 
	width:100%;
	border:none;
	height:auto;
	background:transparent;
}

.logo-header {width:200px; height:auto; margin:2rem auto;}

#subpage-logo {
	position:fixed;
	top:4px; left:8px;
	z-index:9990;
	/*mix-blend-mode: difference;*/
	opacity:0;
}
.logo-header-subpage {
	width:140px; height:auto; margin:1rem;
} 
	
nav { margin: 0 auto; text-align: left;}





 /* win7+IE11 bug fix (of aspect ratio) */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	/*img[src$=".svg"] {width:100%;}*/
	nav img[src$=".svg"], #concept img[src$=".svg"], .fixed-page-post img[src$=".svg"] {width:100%;}
	#gblnavi-pc img[src$=".svg"] {width:250px; height:65px;}
}


.is-mobile #logo {margin:0.25em 0.75em; width:auto; max-width:280px; line-height:1.25em; text-align:center; transition:all 0.3s linear 0s; }
.is-mobile #logo .header-logo {height:60px;}



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

.bg-transparent { background:transparent !important; box-shadow:none !important;}

.smallen {transform:scale(0); transition:all 0.1s linear 0s;}
.backward-z {z-index:-100 !important; transition:all 0.1s linear 0s;}

.slight-shadow {filter: drop-shadow( 0 0 3px rgba(87,69,8,0.7) ); /* drop-shadow( 0 0 3px rgba(187,89,8,0.7) ); */ }





#btn-contact {
	background:#fff;
	padding:3.5em 0 3em; margin:0;
	border-top: 1px solid rgba(0,0,0,0.15);
	width:100%; text-align:center;
}
	
footer {
	clear:both;
	position:relative;
	left:0; right:0; bottom:0;
	padding:3em 0;
	text-align:center;
	font-size:14px;
	color:#222;
	height:auto; min-height:450px;
	background-image:
		linear-gradient(0deg,rgba(255,255,255,0.75),rgba(255,255,255,0.75)),
		url(./img/bg/footer.jpg);
	background-repeat:repeat;
	background-position:center 0%;
	background-size:cover;
	height:auto;
	min-height:100vh;
}

#footer-inner {
	/*width:clamp(280px, 30%, 500px);*/
	width:27.5%; min-width:280px; max-width:500px;
	margin:6vh auto 0; padding:4em 1em;
	text-align:left;
}

#footer-logo {margin:4em 0 4em;}
#footer-logo img.site-logo {width:auto; height:40px;  margin:0;}

footer ul {padding:0; margin:0.75em auto; text-align:left;}
footer ul li {margin-right:0; margin-left:0;}
footer ul li {
    display: block;
	font-size:1.1rem;/*0.9rem;*/
    margin:1.75rem 0em;
	letter-spacing:0.1em; text-indent:0em;
	text-align:left;
	font-family:'Rokkitt'; /*'texGyre';*/ font-weight:400;
}
footer ul li a {
	display:inline-block; width:auto; height:100%; color:#222;
	font-feature-settings : "pkna";
}
footer ul li a:hover {
	text-shadow: 0 0 2px rgba(85,255,225,0.9) , 0 0 10px rgba(85,255,225,0.75);	
}

footer ul.sns-link {margin:3rem auto 0; padding:0; text-align:left;}
footer ul.sns-link li {display:inline-block; margin:1rem 1.5rem 1rem 0; text-align:left;}
footer img.sns-icon { width:auto; height:24px; transition:all .14s linear 0s;} 
footer img.sns-icon:hover { transform:scale(1.1); transition:all .07s linear 0s;}

#footer-address {margin-top:6em; text-align:center;}
#footer-address address {margin:0; font-style:normal; font-size:1rem; color:#bcbcbc; font-size:0.85rem;} 
#footer-address span.ib {margin-right:1em;}
#copyright {color:#bcbcbc; margin:1rem auto;}



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:100%;
}
caption {
	text-align: left; padding:0.5em 0.5em 0.5em 1.5em ; font-size:1.2em; color: #222;
	font-weight:bold;border-radius:6px 6px 0 0;
	margin: 0;
	background:rgba(94,172,194,0.35)
}
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);}
th.nowrap {white-space:norwap;} 
td { border-bottom:1px solid rgba(0,0,0,0.2);}
td.nobdr {border:none;}

.post-body th { border-bottom:1px solid rgba(0,0,0,0.2); background:rgba(65,178,168,0.1);}



/*+++*/
	@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.8em; font-weight:normal;  color:#9e8173; line-height:1.5;}
.pink-note {font-size:0.8em; color:hotpink;}
.dred-note {font-size:0.8em; color:crimson;}

.bgreen {color:#4fb;}

.awhite {color:#fdf6ee; /*antiquewhite;*/}
.owhite {color:rgb(247,246,243);/* rgb(251,248,241) #f7f4f0;*/}
.awhite {color:#fdf6ee; /*antiquewhite;*/}
.lime {color:#66B048;}
.laqua {color:#DDF2FA;}
.aqua {color:#65BAF7;}



.bg-photo, .bg-photo-light, .bg-photo-dark {
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
}
.bg-fixed {background-attachment:fixed;}

.bg-white {background:#fff;}
.bg-owhite {background:rgb(247,246,243);/* rgb(251,248,241) #f7f4f0;*/}
.bg-awhite {background:#fdf6ee; /*antiquewhite;*/}
.bg-gray {background: #ddd;}
.bg-llgray {background: #f5f5f5;}
.bg-lgray {background: #f3f3f3;}
.bg-dgray {background: #666;}


.bg-photo-dark *, .bg-green *, .bg-mgreen *, .bg-dmgreen *, .bg-dgray *
	{color:#fff;} 
.bg-dgray h2:before , .bg-gray h2:before {	border: 2px solid rgba(255,255,255,0.9);}
.bg-dgray h2:after , .bg-gray h2:after {	border: 2px solid rgba(255,255,255,0.65);}


.marker-pink { box-shadow:0 -0.4em 0 0 rgba(255,164,215,0.65) inset;}
.marker-aqua { box-shadow:0 -0.4em 0 0 rgba(51,181,246,0.6) inset;}
.marker-green { box-shadow:0 -0.4em 0 0 rgba(74,214,200,0.5) inset;}
.marker-k1 { box-shadow:0 -0.4em 0 0 rgba(0,0,0,0.1) inset;}
.marker-w10 { box-shadow:0 -0.4em 0 0 rgba(255,255,255,1.0) inset;}
.marker-w7 { box-shadow:0 -0.4em 0 0 rgba(255,255,255,0.7) inset;}
.marker-w5 { box-shadow:0 -0.4em 0 0 rgba(255,255,255,0.5) inset;}

.kakomi {padding:0.5em 1em; border-radius:5px; margin:1.5rem 0;}
.kakomi.w10 {background:rgba(255,255,255,0.8);}
.kakomi.w8 {background:rgba(255,255,255,0.8);}
.kakomi.ow {background:#f7f6f3;}
.kakomi.lg {background:#F3F3F3;}
.kakomi.k0 {background:rgba(0,0,0,0.05);}
.kakomi.waku {border:1px solid #ededed;} 



#rewind { 
	display:none; position:fixed;
	bottom:10px; right:10px;
	width:3.25em; height:3.25em;
    background:rgba(188,188,188,0.9);/*rgba(141, 201, 170, 1);*/
    cursor: pointer;
    border-radius: 100%;
	z-index:2;
	mix-blend-mode: multiply;
}
#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
   ========================================================================== */

.pnkz {font-size:0.75em; letter-spacing:0.05em; line-height:2.2; font-feature-settings:"palt";}
.pnkz a, .pnkz span.here {display:inline-block;}
.pnkz ul, .pnkz li {display:inline-block; padding:0; margin:0;}
.pnkz ul.children {position:relative; padding-left:0.75em;}
.pnkz ul.children::before {content:" › "; position:absolute; top:0; left:0;} 


.elip {overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}

.sq-frame {
	display:block; width:100% !important; margin:0; vertical-align:top; overflow:hidden; 
	background-repeat:no-repeat; background-size:cover !important; background-position:center center !important;
}
.sq-frame::after { content:""; display:block; padding-top:100%;}

.link-img dt {font-size:14px;}
.link-img .post-date {font-size:13px;}
.link-img dt h3 {text-align:left !important; line-height:1.35em; margin:0.5em 0 0; padding:0 0.75em; font-size:100%; font-weight:normal;} 
.link-img dd > p {text-align:left; } 
.link-img figcaption { display:flex;  justify-content:center; align-items:center; }
.link-img figcaption span {display:block; text-align:center; font-size:15px; transition:all 0.3s linear 0s;}



#single-body .solo, #blog-home .solo {max-width:800px; margin:auto;}
#sub-column {max-width:900px; margin:auto;}
.post article {text-align:left;}
#appendix {margin:0 auto; padding:3em 0 4.5em; background:#F5F0EA;/*#f7f6f3;*/}
.blog #appendix h3 {border-left:6px solid #41B2A8; padding-left:0.5em; text-align:left; font-size:1.25rem;}
	
.related-post-column .rel-one {
	border-radius:0px; text-align:left; 
	transition:all 0.3s linear 0s;
}
.related-post-column .rel-one:hover {background:rgba(255,255,255,0.9); 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);}


#sidebar {/* #sidebar = included "sidebar.php" @ home.php (---blog home) */
	padding:2em auto;
}
#sidebar h2 { font-size:1.6em; letter-spacing:0.25em; }

#sub-column { /* #sub-column = @ single.php (---blog each post) */ }
#sub-column h2 { margin:0.5em 0 0.5em; font-size:1.3em; letter-spacing:0.15em;}
#sub-column th, #sub-column 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;
}

#sub-column .sb-blog-list-widget_archive ul,
#sub-column .sb-blog-list-widget_categories ul {
    margin-top: 0;
    height: auto;
    max-height: 300px;
    overflow: auto;
	font-size:90%;
   transition: all 0.33s linear 0s;
    -webkit-overflow-scrolling: touch;
}
#sub-column .sb-blog-list-widget_archive ul:hover,
#sub-column .sb-blog-list-widget_categories ul:hover {
    background: rgba(255,255,255,0.5);
    transition: all 0.33s linear 0s;
}


.tagcloud { margin-bottom:40px;}
.tagcloud a { 
    display:inline-block !important;
    line-height:1.2em !important; 
    padding:5px !important;
}

.searchform div {display:flex; max-width:220px; border:1px solid #cdcdcd; overflow:hidden; border-radius:6px; margin:auto;}
.searchform div input#s {width:calc(100% - 36px); height:36px !important; padding-left:0.5em; border:none !important; border-radius:0;}
.searchform div input#searchsubmit {
	width:36px; height:36px !important; margin:0 !important; padding:6px 12px; border:none !important;
	background:#41B2A8 url(./img/icon/search-wh.svg) no-repeat 0 0; background-size:contain; color:transparent;
	transition:all 0.33s linear 0s;
	border-radius:0;
}
.searchform div input#searchsubmit:hover {
	background:#aaa url(./img/icon/search-wh.svg) no-repeat 0 0; background-size:contain; transition:all 0.165s linear 0s;
}
@media all and (-ms-high-contrast:none){ /* IE11 bug fix */
	.searchform div {border:none;}
	.searchform div input#s {width:164px; border-radius:6px 0 0 6px;}
	.searchform div input#searchsubmit {border-radius:0 6px 6px 0;}
}	

.searchform label.screen-reader-text {display:none;}



/* =============================================================================
   Post Styles
   ========================================================================== */

.mara {margin:auto;}
.lim88 {max-width:880px;}
.lim80 {max-width:800px;}
.lim77 {max-width:770px;}
.lim70 {max-width:700px;}
.lim66 {max-width:660px;}
.lim60 {max-width:600px;}
.lim55 {max-width:550px;}
.lim50 {max-width:500px;}
.lim44 {max-width:440px;}
.lim40 {max-width:400px;}
.lim33 {max-width:330px;}
.lim28 {max-width:280px;}
.lim22 {max-width:220px;}




.subpage.page-std #page-body {padding:2em 0 4em;}


.post-body {text-align:left;}

.single .post-body {background:#fff; padding:1em 0.5em;}

.blog .post-body {width:100%; max-width:754px; margin:auto; }

.fixed-page-post {}

.fixed-page-post:not(.wide-format) {padding-bottom:2.5em;} 
.fixed-page-post.wide-format {padding:0 0 0;} 


.post-body img {padding:0; width:auto; height:auto; max-width:100%;}
.post-body blockquote { padding:40px 20px;}

.post-body p  {margin:0.5em 0 1.5em;}
.post-body ul {margin:0.5em 0 1.5em; padding-left:1.5em;}
.post-body ul li {list-style:square; margin:0 0.5em 0.75em;}
.post-body .wp-block-cover + p,
.post-body .wp-block-cover + ul,
.post-body .wp-block-image + p,
.post-body .wp-block-image + ul {margin:1em 0 1.5em;}


.post-body h2 { margin:2em 0 0.75em; padding-left:1.25em; /*line-height:1.5em; */ text-align:left; font-feature-settings:"palt";}
.post-body h2:first-child { margin-top:0.5em;}
.post-body .wp-block-group h2 { margin-top:2em;}

.post-body h2::before, 
.post-body h2::after {
	content: "";
	position: absolute;
	width: 0.5em;
	height: 0.5em;
	margin: auto;
}
.post-body h2::before {
	top: 0.25em; left: 0em;
	border: 2px solid #41B2A8;	
}
.post-body h2::after {
	top: 0.5em; left: 0.25em;
	border: 2px solid #ccc;
	border-radius:100%;
}


.blog-home #appendix h2 {padding-left:1.25em; font-size:225%;}
.blog-home #appendix h2::before, 
.blog-home #appendix h2::after {
	content: "";
	position: absolute;
	width: 0.5em;
	height: 0.5em;
	margin: auto;
}
.blog-home #appendix h2::before {
	top: 0.325em; left: 0em;
	border: 2px solid #41B2A8;	
}
.blog-home #appendix h2::after {
	top: 0.525em; left: 0.25em;
	border: 2px solid #ccc;
	border-radius:100%;
}




.post-body h3 { margin:1.5em 0 1rem; border-bottom:2px dotted #888; }
.post-body h3:first-child { margin-top:0.5em;}

.fixed-page-post table th {background:rgba(94,94,94,0.125);}
.fixed-page-post table td {background:rgba(255,255,255,0.55);}
.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;}




.post-meta { 
	text-align:left;
	font-size:12px; color:#bcbcbc; line-height:2.0em; font-weight:noamal;
	margin: 0 0 2em; padding:8px 4px; 
	border-bottom:1px dotted #aaa;
}

.post-meta span.row {display:inline-block; margin:0 16px 0 0;}
.post-meta span.post-date, .post-meta span.modified-date { font-family: 'Julius Sans One'; font-size:15px; color:#888; }
.post-meta span.author {color:#888;}
.post-meta span.category,
.post-meta span.tags { font-family: 'SosaIcon'; font-size:20px; color:#ddd; }
.post-meta span.icon { font-family: 'SosaIcon'; font-size:1.75em; color:#bbb; margin-right:0.25rem; font-weight:normal;}
.post-meta span.commented { font-family: 'SosaIcon'; font-size:20px; color:#fff;}

.blog-home .post-meta { 
	color:#555; line-height:1.5em; font-weight:bold;
	margin: 0 0 2em; padding: 0px 16px; 
	border-bottom:none;
}
.blog-home .post-meta span.row { margin:0 16px 0 0;}
.blog-home .post-meta span.post-date { font-family: 'Julius Sans One'; font-size:15px; color:#777; }
.blog-home .post-meta span.category,
.blog-home .post-meta span.tags, .blog-home .post-meta span.comments { font-family: 'SosaIcon'; font-size:20px; color:#bcbcbc;}

.single-post-page {text-align:left;}

.archive .each-post .post-title {font-size:120%;}


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;}


.browseback {
	width:100%; margin:2.25rem auto 0; text-align:center;
	font-family:'PT Serif'; font-size:1.15em; letter-spacing:0.2em;
}
.browseback .material-icons {	font-size:160%;  vertical-align:-27.5%;}

@media (max-width:479px) {
	.browseback .material-icons {font-size:160%;  vertical-align:-30%;}
}




/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
	Gutenberg
*/
.fixed-page-post .wp-block-image figcaption {
	text-align:center;
	font-size:0.7em;
}

.wp-block-gallery .blocks-gallery-image figcaption, .wp-block-gallery .blocks-gallery-item figcaption {line-height:1.5;}
.wp-block-gallery figure { cursor: pointer; }
.is-pc .wp-block-gallery figure {transition:all 0.3s linear 0s;}
.is-pc .wp-block-gallery figure:hover {transform:scale(1.025); box-shadow:0 2px 1.15em 2px rgba(0,0,0,0.25); transition:all 0.14s linear 0s;}
/*.wp-block-gallery + p {margin-top:calc(1.5em - 32px);}*/

.wp-block-embed { margin-bottom: 1em;}
.wp-block-embed-youtube {
	position:relative; text-align:center; 
	margin:1.5em auto 0;
}
.wp-block-embed__wrapper iframe {
	max-width:100%;
	margin:auto;
}
.wp-block-embed-youtube + .caption { 
	/*text-align:center;*/
	margin-top:-0.5em; padding:0 0.25em;
	font-size:90%; line-height:1.6;
}
ul.blocks-gallery-grid {padding:0;}

.wp-block-cover__inner-container {line-height: 1.5;}

.wp-block-column {}

.wp-block-cover, .wp-block-cover-image {height:auto; max-height:430px;}





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
	Pagination
*/
.pagination {
	clear:both;
	position:relative;
	margin:0 8px 16px;
	text-align:center;
	font-family: 'Julius Sans One';
	font-size:80%;
}
 
.pagination span.current, .pagination a  {
	display: inline-block;
	text-align:center;
	width:48px; height:48px;
	font-size:20px; font-family:'Julius Sans One'; line-height:1.5;
	padding-top:9px;
	padding-bottom:8px;
	margin:7px;
	border-radius:100%;
}
 
.pagination a {background:#fff; color:#999; border:1px solid #999; }
.pagination a:hover {text-shadow:none;}
/* 
 !!!!!! memo: hover effect = PConly, wrote in media query !!!!!
*/

.pagination .current{
	background:#999;
	color:#fff;
	/*border:1px solid rgba(100,200,255,0.85);/*#aaa*/;
}

.pagination span.dot {
	color:#999;
	display: inline-block;
	text-align:center;
	width:20px;
	height:48px;
	font-size:28px;
	padding-top:9px;
	padding-bottom:8px;
	margin:5px;
	border-radius:100%;
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
	Std - Pager //  Pagination @ Search.php
*/

.prev.page-numbers,
.next.page-numbers {display:none;}

.page-numbers {
	padding:0;
	clear:both;
	position:relative;
	margin:0 8px 16px;
	text-align:center;
	font-family: 'Julius Sans One';
}
.page-numbers li {
	display: inline-block;
	text-align:center;
	width:auto; height:auto;
	margin:0;
}
.page-numbers a {
	display:block; width:100%; height:100%;
	padding-top:9px;
	padding-bottom:8px;
	width:48px; height:48px; margin:7px;
	font-size:20px; font-family:'Julius Sans One'; line-height:1.5;
	border-radius:100%;
	background:#fff; color:#999; border:1px solid #999; 
}
.page-numbers a:hover {text-shadow:none;}

.page-numbers.current {
	display:block; width:100%; height:100%;
	padding-top:9px;
	padding-bottom:8px;
	width:48px; height:48px; margin:7px;
	font-size:20px; font-family:'Julius Sans One'; line-height:1.5;
	border-radius:100%;
	background:#999; color:#fff;
}

.page-numbers.dots {
	color:#999;
	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 {padding:1em; background:rgba(188,188,188,0.2);}
.wpcf7-form input{width: 245px; font-size:1.2em;} /*名前、メール、題名*/
.wpcf7-form span.age input{width: 80px; } 
.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[name^="address"] {width: 99%; max-width: 600px;}
.wpcf7-form input[name^="url"] {width: 99%; max-width: 600px;}


.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 :placeholder-shown {color: #cdcdcd;}
.wpcf7-form ::-moz-placeholder { color: #cdcdcd; opacity: 1; }
.wpcf7-form :-ms-input-placeholder { color: #cdcdcd;}
.wpcf7-form ::-webkit-input-placeholder { color: #cdcdcd;}


.wpcf7-form .confirm-msg {position:relative; width: 99%; padding:1em; background:rgba(100,100,100,0.2); border-radius:4px; font-size:13px; color:#f4b; font-weight:bold; line-height:1.5;}
.wpcf7-form .confirm-msg .label-cbx-confirm input {display:none;}
.wpcf7-form .label-cbx-confirm .wpcf7-list-item-label {position:relative; padding-left:2.25em;}
.wpcf7-form .label-cbx-confirm .wpcf7-list-item-label::before{
	content:""; display:block; position:absolute; 
	top:0; left:0; /*bottom:0;*/ margin:auto;
	width:1.25em; height:1.25em;
	background:#fff; border:2px solid #f4b; border-radius:4px;
	transition:all 0.14s linear 0s;
}
.wpcf7-form .label-cbx-confirm {display:block; width:100%; height:100%;}
.wpcf7-form .label-cbx-confirm input:checked + .wpcf7-list-item-label{
	color:#365E79; font-weight:bold; 
}
.wpcf7-form .label-cbx-confirm input:checked + .wpcf7-list-item-label::before{
	border:2px solid #41B2A8; border-radius:100%; transition:all 0.33s linear 0s;
}
.wpcf7-form .label-cbx-confirm input:checked + .wpcf7-list-item-label::after{
	content:""; display:block; position:absolute; 
	top: -0.5em; left: 0.35em; width:0.7em; height:1.4em;
	border-bottom: 3px solid #365E79; border-right: 3px solid #365E79;
	transform:rotate(40deg); 
	box-shadow:1px 1px 0 0 #fff;
}


.wpcf7-form .wpcf7-submit {
	width:auto !important;
    font-size: 1.4em !important;
	margin:1.5em 1.5em 0.5em !important;
    padding: 12px 32px !important;
    color: #fff !important; font-weight:bold;
	border-radius:4px !important;
	border:1px solid rgba(255,255,255,0.5); 
	background:#111;
}
.wpcf7-form .wpcf7-submit:hover {
	background:#41B2A8 url(./img/bg/pattern.png); cursor: pointer;
}

.wpcf7-response-output {
	font-size: 15px;
	text-align: center;
}

div.wpcf7-validation-errors {
	margin:1em 0 !important;
	padding: 10px !important;
    background: #111;/*#965755;*/
	font-weight: bold;
	color: #f7e700;/*#fff;*/
	border-radius:6px;
}
span.wpcf7-not-valid-tip {
    color: #111 !important;
    font-size: 1rem !important;
    font-weight: bold !important; 
    display: inline-block !important;
	margin:0.125rem 0.25rem !important;
	box-shadow:0 -0.8em 0 0 #f7e700 inset;
}
div.wpcf7-mail-sent-ok {
	margin:1em 0 !important;
	padding: 10px !important;
    background: #225A4B;	
	font-weight: bold;
	color: #fff;
	border-radius:6px;
	border: 2px solid lime !important; /*#398f14;*/
}


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:#41B2A8; 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; }




/*============================
* button / ghost button
*/
a.btn-ds,
a.wp-block-button__link {box-shadow: 0 3px 5px rgba(20, 20, 20, 0.3);
	/*0 2px 4px rgba(20, 20, 20, 0.2);*/
	transition:all 0.14s linear 0s;
}
a.btn-ds:hover,
a.wp-block-button__link:hover {box-shadow:0 1px 2px rgba(20,20,20,0.4); 
	transform:translateY(4px);/* scale(0.95);*/
	transition:all 0.2s linear 0s;
}

a span.ssi, a span.tsi {display:inline-block; position:relative; padding-left:1.25em; font-family:'PT Serif', serif; font-size:1.1em;}
a span.ssi::before {position:absolute;top:0.1em; left:0; content:"S"; font-family:"SosaIcon"; font-size:95%;} 
a span.tsi::before {position:absolute;top:0.1em; left:0; content:"T"; font-family:"SosaIcon"; font-size:95%;} 

a.gbtn-white {display:inline-block; color:#fff; margin:1em 0; padding:0.75em 1em; border:1px solid #fff; background:transparent;}
a.gbtn-ivory {display:inline-block; color:#fff5e4; margin:1em 0; padding:0.75em 1em; border:1px solid #fff5e4; background:transparent;}
a.gbtn-gray {display:inline-block; color:#aaa;/*#666;*/ margin:1em 0; padding:0.75em 1em; border:1px solid #aaa;/*#797979;*/ background:transparent;}
a.gbtn-black {display:inline-block; color:#000; margin:1em 0; padding:0.75em 1em; border:1px solid #000; background:transparent;}

a.gbtn-accent {display:inline-block; color:#41B2A8; margin:1em 0; padding:0.75em 1em; border:1px solid #41B2A8; background:transparent;}

a.btn-black {display:inline-block; color:#FFF; margin:1em 0; padding:0.75em 1em; border:2px solid transparent; background:#111;}

a.btn-accent {
	display:inline-block; color:#FFF; margin:1em 0; padding:0.75em 1em;
	background : linear-gradient(135deg, rgba(169,228,192,1) 0%, rgba(16,190,191,1) 74.68%, rgba(65,178,168,1) 100%);
}

a.btn-large {width:240px !important; margin:1em !important; padding:1em auto !important;}
a.btn-small {margin:0.5em 0 !important; padding:0.25em 0.5em !important;}
a.btn-slim {margin:0.5em 0 !important; padding:0.1em 0.75em !important; }
a.btn-more {font-family:'PT Serif'; font-size:1.25rem; letter-spacing:0.25em;}


a.btn-ivory {display:inline-block; color:#41B2A8; margin:1em 0; padding:0.75em 1em; border:2px solid transparent; background:#fff5e4;}


a.gbtn-frost {display:inline-block; color:rgba(255,255,255,0.8); margin:1em 0; padding:0.75em 1em; border:2px solid rgba(255,255,255,0.8); background:transparent;}
a.btn-frost {display:inline-block; color:#333; margin:1em 0; padding:0.75em 1em; border:2px solid transparent; background:rgba(255,255,255,0.8);}


/* hover-effect::*/
a.gbtn-white:hover, a.gbtn-white-small:hover {color:#222; background:rgba(255,255,255,0.9);}
a.gbtn-gray:hover {color:#fff; background:rgba(0,0,0,0.3);}
a.gbtn-black:hover {color:#fff; background:rgba(0,0,0,0.55);}

a.gbtn-accent:hover {color:#fff; background:#41B2A8;}

a.btn-accent:hover {text-shadow: 0 0 2px rgba(85,255,225,0.9) , 0 0 10px rgba(85,255,225,0.75);}

a.btn-ivory:hover {color:#fff5e4; background:rgba(40,40,40,0.5); border:2px solid #FFF5e4;}


a.btn-frost:hover {color:#fff; background:rgba(40,40,40,0.5); border:2px solid #FFF;}
a.gbtn-frost:hover {color:#111; background:rgba(255,255,255,1);}

a img.btn-icon-inside {width:40px; margin:0px 8px 0 0; vertical-align:-50%;}
a img.mail-icon-inside {width:40px; margin:0px 5px 0 0; vertical-align:-50%;}
a img.icon-inside {width:40px; margin:0px 6px 0 0; vertical-align:-50%;}




/* **************************************************** 
	navigation
*/ 


.pointer {cursor:pointer}


.menu-overlay,
.menu-underlay {
	position:fixed; top:0, left:0; width:100vw; height:100vh;
	/*transform:scale(0.3);  transform-origin:100% 0%;*/
	transition:all 0.5s linear 0s; opacity:0; z-index:-1;
		/*IE 8,9=>*/ width:100%\9; height:100%\9; display:none\9;
}
.menu-overlay h2 {font-family: 'Roboto', sans-serif; font-style:italic; font-weight:500; color:rgba(255,255,255,0.6);}
.is-pc .menu-overlay h2 {display:inline-block; font-size:350%;}
.is-mobile .menu-overlay h2 {display:block; font-size:225%; text-align:left;}
.menu-overlay h2 + span {font-style:italic; font-weight:600; color:rgba(255,255,255,0.6); }
.is-pc .menu-overlay h2 + span {display:inline-block; font-size:125%; margin-left:1em;}
.is-mobile .menu-overlay h2 + span {display:block; font-size:85%; line-height:1; text-align:left; margin-bottom:1.5em;}

.menu-overlay ul {padding-left:0 !important;}
.menu-overlay ul li {margin-left:0;}
.is-pc .menu-overlay ul li a:hover {
	text-shadow: 0 0 2px rgba(255,255,255,1) , 0 0 10px rgba(255,255,255,0.9);
	text-decoration: none;
	transition: 0.22s linear all;
}

.reveal {
	transform:scale(1);
	transition:all 0.28s linear 0s; opacity:1; z-index:99900;
		/*IE 8,9=>*/ display:block\9;
}
.disappear {
	transform:scale(0); opacity:0;
	transition:all 0.28s linear 0s; 
}

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

#burger-menu {
	position:fixed; top:0; right:0; bottom:0;
	width:min(100vw, 400px); 
	height:100%; 
	background:rgba(255,255,255,0.95); 
	padding:10vh 0 0;
	color:#222;
	box-shadow: -5px 0px 5px -1px rgba(0,0,0,0.25);
	transform:translateX(300px);
	transition:all 0.5s linear 0s; opacity:0;  z-index:9990;
	pointer-events: none;
}
@supports ((backdrop-filter: blur()) or (-webkit-backdrop-filter: blur())) {
	#burger-menu {
		background:rgba(255,255,255,0.55);
		-webkit-backdrop-filter: blur(8px);	
		backdrop-filter: blur(8px);
	}
}

#burger-menu a {color:#222;}

#burger-menu.reveal {
	transform:translateX(0); 
	transition:all 0.28s linear 0s; opacity:1; z-index:99900;
	pointer-events: auto;
	overflow:auto;
}

#sticker { /* .burger.menu-opener */
    position:fixed; top:0; right:0; float:none;
	width:60px; height:60px; margin:10px; padding:auto;
	border-radius:100%;
	cursor:pointer;
	transition:all .3s linear 0s;	
	z-index: 10000;
	mix-blend-mode: difference;/*exclusion;/* color-burn;*/
}

.subpage #sticker {
	/*background:rgba(0,0,0,1);*/
}

.burger.menu-opener {opacity:0;}
	
#sticker img {
	position:absolute; top:0; right:0; bottom:0; left:0; 
	width:32px; height:40.819px; margin:auto;
	transition:all 0.55s linear 0s;
}

@media (max-width:479px) {
	#sticker {width:50px; height:50px; margin:4px 2px;}
	/*#sticker img {width:25.6px; height:32.655px; margin:auto; }*/.
}


.menu-closer {cursor:pointer;}
#burger-menu .menu-closer {
	position:fixed; right:1.375em; top:1.1em; width:32px; height:44.207px;
	background:url(./img/icon/batten-close.svg);
	background-repeat:no-repeat; background-position:0 0;
	background-size:32px 44.207px;
}

#burger-menu ul {padding:0;}
ul.glo-navi li {
	font-family:'Rokkitt'; /*'texGyre';*/
	font-weight:400; font-size:110%;
	letter-spacing:0.2em; line-height:1.2;
	margin:1.75em 0;
	transform:translateX(2.5em);
	opacity:0;
	transition:all 0.88s linear 0s;
}
ul.glo-navi.reveal li {
	transform:translateX(0); 
	opacity:1;
	transition:all 0.22s ease 0s;
}
ul.glo-navi.reveal li:first-child {transition-delay: .1s; }
ul.glo-navi.reveal li:nth-child(2) {transition-delay: .2s; }
ul.glo-navi.reveal li:nth-child(3) {transition-delay: .3s; }
ul.glo-navi.reveal li:nth-child(4) {transition-delay: .4s; }
ul.glo-navi.reveal li:nth-child(5) {transition-delay: .5s; }
ul.glo-navi.reveal li:nth-child(6) {transition-delay: .6s; }
ul.glo-navi.reveal li:last-child(7) {transition-delay: .7s; }
ul.glo-navi.reveal li:last-child(8) {transition-delay: .8s; }
ul.glo-navi.reveal li:last-child(9) {transition-delay: .9s; }
ul.glo-navi.reveal li:last-child(10) {transition-delay: 1.0s; }


ul.glo-navi li a:hover {
	text-shadow: 0 0 2px rgba(85,255,225,0.9) , 0 0 10px rgba(85,255,225,0.75);
	text-decoration: none;
	transition: 0.22s linear all;
}

#burger-menu .segment {width:80%; max-width:216px; margin:0 auto;}
#burger-menu .segment ul:not(.glo-navi) {margin-top:2.5em;}
#burger-menu .segment ul:not(.glo-navi) li {margin:1em 0;}


.is-pc #burger-menu .segment ul.sns-icons {margin-top:4em;}
#burger-menu .segment ul.sns-icons li {display:inline-block; margin:0 1em;}
#burger-menu .segment ul.sns-icons li:first-child {margin-left:0;}
#burger-menu .segment ul.sns-icons li:last-child {margin-right:0;}

#burger-menu .phone-number {font-size:137%; font-family:'Julius Sans One';}

#burger-menu .logo-burger-menu {width:160px; height:auto;}
#burger-menu .sns-icon {width:32px; height:32px;}





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

@media only screen and (min-width: 1078px) {



	img.site-logo-small-device {display:none; }
}

@media only screen and (max-width: 1077px) {
	
	body {position:relative;}
	.bg-fixed {background-attachment:scroll;}

	footer {
		background-attachment:scroll;
		background-position:center center;
		background-size:cover;
	}

	img.site-logo-small-device {display:block; width:100%; max-width:420px; margin:25vh auto; vertical-align:0%; opacity:1; filter: drop-shadow( 0 0 5px rgba(87,69,8,0.8) );  }
	

	.push-to-call {position:relative; width:32px; height:32px;} 
	.push-to-call img {width:32px; height:32px; margin-top:-8px; margin-left:8px;}
	.push-to-call::after { 
		position: absolute;	left:-1.75em; top:22px; 
		content: '電話する';
		display: block;
		width: 200%;
		color: #222; letter-spacing:0.05em;
		font-size: 0.6rem;
		text-decoration: none;
		text-align: center;
		transition: all 0.4s;
		font-feature-settings:"palt";
	}

	.bg-transparent .push-to-call::after { color:#fff; text-shadow:none;}


}
   


@media only screen and (max-width: 1220px) {

	.maxonly {display:none;}


	#subpage-logo{
		position:absolute;
	}

}

@media only screen and (min-width: 995px) {
	
	.smponly, .tblonly, .smptbl {display:none;}

	#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;
	}

}


@media only screen and (max-width: 899px) {
	
	
	.rel-one {width:47%; margin-right:1%; margin-left:1.5%;}
	
	#mobile-menu ul li {font-size:165%;}

}



@media only screen and (min-width: 801px) {

	.hover-zoom {transition:all 0.33s linear 0s;}
	.hover-zoom:hover {transform:scale(1.05); transition:all 0.14s linear 0s;}
	.hover-shrink {transition:all 0.26s linear 0s;}
	.hover-shrink:hover {transform:scale(0.975); transition:all 0.1s linear 0s;}

	.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,
	.page-numbers a:hover {
		transform: scale(1.133);
		transition: all 0.1s linear 0s;
	}

}


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

	.smponly, .smptbl, .wideonly, .maxonly  {display:none;}
	
	body {min-height: 1024px;}

	#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;*/
		box-sizing:border-box;
	}

}




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

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

	.hr-box.pd-top{padding:3em 0 0 0;}
	.hr-box.pd-btm, .hr-box.pd-bottom {padding:0 0 3em 0;}
	.hr-box.pd-both {padding:3em 0 3em;}	

	table {font-size:15px;}
	th, td { padding:4px 8px; }

	#footer-logo,	#footer-caption {width:100%; text-align:center;}
	footer ul {text-align:center; margin-bottom:3em; padding-left:0 !important;}
	footer {padding:2.5em 1% 1em;}

	.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% !important; border-bottom:none;}
	.flex-table td {padding-bottom:1em;}

	.container section {margin-bottom:24px !important;}
	.container .upper, .wide-container .upper, .full-container .upper {margin-bottom:2em !important;}	

	#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;
	}


	#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%;
	}



}

@media only screen and (min-width: 640px) and (max-width: 768px){
	.is-mobile #logo {max-width:320px;}
}
@media only screen and (max-width: 640px) {
	.is-mobile #logo {max-width:290px;}
}
@media only screen and (min-width: 601px){
	.toppage #btn-contact { background:#fff/*#DDF2FA;*/}
}	
@media only screen and (max-width: 599px) {
	.rel-one {width:100%;}
	.wp-block-column {margin-bottom:3.5em !important;}
	.wp-block-columns {margin-bottom:0 !important;}
}
@media only screen and (min-width: 501px){
	.kwsk-mr {margin-top:1.5em !important; margin-bottom:1.5em !important;}
}
/* Mobile Landscape Size to Tablet Portrait */
@media only screen and (min-width: 480px) and (max-width: 768px) {

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

	h3 {line-height:2.0em; font-size:24px;}
	


	.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) {
	
	.pconly, .tblonly, .tblpc {display:none;}
	.smponly {display:block;}
	.smponly.ib {display:inline-block !important;}
	
	
	body { font-size:15px;}


	#subpage-logo{
		position:absolute;
		top:10px; left:8px;
	}
	.logo-header-subpage {
		width:110px; height:auto; margin:0;
	} 
	

	#burger-menu {padding:0 0 0; display:flex; align-items:center;}
	
	#burger-menu .container {width:100%; margin-top:-2.5em;}

	.is-mobile #burger-menu .menu-closer {
		position:fixed; right:6px; top:10px; width:42px; height:42px;
		background-size:42px 42px;
	}

	ul.glo-navi li {font-size:1.2rem;}
	#burger-menu .logo-burger-menu {width: 140px; height: auto;}
	#burger-menu .phone-number {font-size:150%;}
	
	h2 {line-height:1.65em; font-size:200%;}
	h2.en {line-height:1.25em; font-size:200%; /*letter-spacing:0.05em;*/}
	h2.bg-subcolor-solid {font-size:24px; text-align: center; padding-left: 0;}
	h3 {line-height:1.45em; font-size:21px;}
	
	table { margin:8px 0; width:100%;}

	.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;}

	.table-toppage-info:before, .table-toppage-info:after { content: " "; display: table;}
	.table-toppage-info:after { clear: both;}
	.table-toppage-info {*zoom: 1; margin-top:0;}
	.table-toppage-info th {float:left; width:100% !important; border-bottom:none; padding-top:1em; padding-bottom:0;}
	.table-toppage-info td {float:left; width:100% !important; padding-top:0; padding-bottom:0.5em; line-height:1.2em;}


	ul  { padding-left:1.5em;}
	ol  { padding-left:0;}
	ul.nopad, ol.nopad  { padding-left:0; margin-left:0;}



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


	img.logo-sf { width: 240px; }
	
	footer {
		background-image:
			linear-gradient(0deg,rgba(255,255,255,0.75),rgba(255,255,255,0.75)),
			url(./img/bg/footer.jpg),
			linear-gradient(0deg,rgba(239,239,239,1),rgba(239,239,239,1));
		background-position:0 0, center 0, 0 0;
		background-repeat:repeat, no-repeat, repeat;
		background-size: cover, 300% auto, cover;
	}
	#footer-inner {
		padding:0.5rem 7.5%;
	}	
	
	#footer-logo {width:100%; text-align:center;}	
	
	footer ul {padding:0; width:100%;margin:1em auto; text-align:left;}
	footer ul.navi-main li {
		display:flex; justify-content:center; align-items:center;  
		position:relative; width:100%; height:auto; margin:0; padding:0;
		text-align:left; font-size:120%;
		border-bottom:1px solid rgba(200,200,200,0.5);
	}
	footer ul.navi-main li:first-child {border-top:1px solid rgba(200,200,200,0.5);}
	footer ul.navi-main li a {display:block; font-size:100%; width:100%; height:100%; padding:1em 1em;}
	footer ul.navi-sub {margin:1em auto; padding:0; text-align:center;}
	footer ul.sns-link {margin:1.5em auto; padding:0; text-align:center;}
	footer ul.sns-link li {display:inline-block; margin:1.5rem 1rem;}
	footer ul.sns-link li a {padding:0;}
	footer ul.navi-main li a::after {
		content:" "; width:10px; height:10px;
		position:absolute; right:10px; top:50%; margin-top:-5px;
		border-right:2px solid #41B2A8;	border-top:2px solid #41B2A8;
		transform:rotate(45deg);
		transition:all 0.14s linear 0s;
	}
	#footer-address address {font-size:0.8rem;}

	#main-column #blog-pickup {text-align: center;}
	#main-column #blog-pickup div.post-cell {text-align: center;}

	.post-body {padding:1em 0.5em;}

	div.tweet-button { margin:0.4em 0 0 1em;}

}



/* Mobile Vertical Long Type Like iPhoneX */
@media (max-width: 479px) and (min-height: 751px) {
	
	ul.glo-navi li {font-size:1.3rem;}
	#burger-menu .logo-burger-menu {width: 170px; height: auto; margin:1.25rem 0;}
	#burger-menu .phone-number {font-size: 165%;}

}




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

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

}



/* =============================================================================
   Font-Face
   ========================================================================== */

.serif {
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.sans, .sans-serif {	
	font-family:"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;
}	

.meiryo {	
	font-family: Verdana, Helvetica, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;
}

 /* Google Fonts */
 .ptserif { font-family: 'PT Serif'; }
@font-face {	font-family: 'PT Serif', serif;} 
.rokkitt { font-family: 'Rokkitt';}
@font-face {	font-family: 'Rokkitt', serif;} 
.julius { font-family: 'Julius Sans One';}
@font-face {	font-family: 'Julius Sans One', sans-serif, sans;} 

  
/* This is the proper syntax for an @font-face file*/
.sosaicon { font-family: 'SosaIcon'; }
.geosans {font-family: 'Geosans-L';}
.texgyre {font-family:'TexGyre';}

@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: '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: 'TexGyre';
    src: url('./fonts/TexGyreCursor-Regular.woff') format('woff'),
		url('./fonts/TexGyreCursor-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
