@charset "utf-8";

html { margin:0; padding:0; border:none; /*overflow:auto;/* border-top: 5px solid #ffce00; */}
body {
	margin:0; padding:0; border:none;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;
	font-weight:500;
	
}


.de-black {color:#000000;}
.de-red {color:#D60021;}
.de-yellow {color:#FFB500;}


/* +++++++++++++++++++++++++++++++++++++
	Additional Universal
*/

.sosaicon { font-family: 'SosaIcon'; }
@font-face {
    font-family: 'SosaIcon';
    src: url('./fonts/SosaIcon.woff') format('woff'),
		url('./fonts/SosaIcon.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

#rewind { /*ページトップへ戻る用*/
	display: none; position: fixed;
	bottom: 10px; right: 10px;
	width:3.25em; height:3.25em;
    background:rgba(125,125,125,0.6);
    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;
}


.hr-box {width:100%; margin: 0; padding:0; box-sizing: border-box;}
.hr-box * {box-sizing: border-box;}
.hr-box.pd-top{padding:3.5em 0 0 0;}
.hr-box.pd-btm, .hr-box.pd-bottom {padding:0 0 4em 0;}
.hr-box.pd-both {padding:3.5em 0 4em;}

.bg-white {background:#fff;}
.bg-black {background:#000;}
.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;/*#eee;*/}
.bg-dgray {background: #666;}

.mara {margin:auto;}
.lim88 {max-width:880px;}
.lim77 {max-width:770px;}
.lim66 {max-width:660px;}
.lim55 {max-width:550px;}
.lim44 {max-width:440px;}
.lim33 {max-width:330px;}
.lim28 {max-width:280px;}
.lim22 {max-width:220px;}

a {color:royalblue;}
a:hover {color:salmon;}

.beni {color:#E50024;} /*rgba(229,0,36,1)*/

a.btn-ds {
	box-shadow: 0 3px 5px rgba(20,20,20,0.3);
	transition:all 0.14s linear 0s;
}
a.btn-ds:hover {
	box-shadow:0 1px 2px rgba(20,20,20,0.4); 
	transform:translateY(4px); transition:all 0.2s linear 0s;
}

a.btn-beni {display:inline-block; color:#FFF; margin:1em 0; padding:0.75em 1em; border:2px solid transparent; background:rgba(229,0,36,1.0);}
a.btn-beni-small {display:inline-block; color:#FFF; margin:0.5em 0; padding:0.25em 0.5em; border:1px solid transparent; background:rgba(229,0,36,1.0);}
a.btn-beni-xsmall {display:inline-block; color:#FFF; margin:0; padding:0.15em 0.5em; border:1px solid transparent; background:rgba(229,0,36,1.0);}
a.btn-beni:hover {color:#E50024; background:rgba(229,0,36,0.25); border:2px solid rgba(229,0,36,1.0);}
a.btn-beni-small:hover {color:#E50024; background:rgba(229,0,36,0.25); border:1px solid rgba(229,0,36,1.0);}
a.btn-beni-xsmall:hover {color:#E50024; background:rgba(229,0,36,0.25); border:1px solid rgba(229,0,36,1.0);}

a.btn-black {display:inline-block; color:#FFF; margin:1em 0; padding:0.75em 1em; border:2px solid transparent; background:rgba(30,30,30,1.0);}
a.btn-black-small {display:inline-block; color:#FFF; margin:0.5em 0; padding:0.25em 0.5em; border:1px solid transparent; background:rgba(30,30,30,1.0);}
a.btn-black-xsmall {display:inline-block; color:#FFF; margin:0; padding:0.15em 0.5em; border:1px solid transparent; background:rgba(30,30,30,1.0);}
a.btn-black:hover {color:#000; background:rgba(30,30,30,0.25); border:2px solid rgba(30,30,30,1.0);}
a.btn-black-small:hover {color:#000; background:rgba(30,30,30,0.25); border:1px solid rgba(30,30,30,1.0);}
a.btn-black-xsmall:hover {color:#000; background:rgba(30,30,30,0.25); border:1px solid rgba(30,30,30,1.0);}

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);}
a.btn-frost-small {display:inline-block; color:#333; margin:0.5em 0; padding:0.25em 0.5em; border:1px solid transparent; background:rgba(255,255,255,0.8);}
a.btn-frost:hover {color:#fff; background:rgba(40,40,40,0.5); border:2px solid #FFF;}
a.btn-frost-small:hover {color:#fff; background:rgba(40,40,40,0.5); border:1px solid #FFF;}

a.gbtn-white {display:inline-block; color:#fff; margin:1em 0; padding:0.75em 1em; border:1px solid #fff; background:transparent;}
a.gbtn-white-small {display:inline-block; color:#fff; margin:0.5em 0; padding:0.25em 0.5em; 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-black {display:inline-block; color:#000; margin:1em 0; padding:0.75em 1em; border:1px solid #000; background:transparent;}
a.gbtn-white:hover, a.gbtn-white-small:hover {color:#2d2d2d !important; 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 img.opa, a.opa img {
	opacity:1.0;
	filter: alpha(opacity=100);
	transition: 0.36s linear all;
}
a img.opa:hover, a.opa img:hover {
	opacity:0.75;
	filter: alpha(opacity=75);
	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 3px 0; line-height:1.0;
}

h2.larger {text-align:center; font-size:235%; margin:1em auto; letter-spacing:0.15em;}





#primary ul  { list-style:square; padding-left:1.5em; text-align: left;}
#primary ul li { line-height:1.5em; margin:0.75em 0.5em;}
#primary ul.ez-toc-list {list-style:none; padding-left:0em;}
#primary ul.ez-toc-list li {list-style:none; line-height:1.5em; margin:0.25em;}

#primary ul.listCity { display: block; margin:0; padding: 0; padding-left: 0px; overflow: hidden;}

#primary ol  { counter-reset: my-counter;  list-style: none;  padding: 0; text-align: left;}
#primary ol li {
	position: relative;
	margin-bottom: 0.6em;  padding-left: 2em;
}
#primary 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-style:italic; font-weight:bold;
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;	
	display: block;  float: left; text-align: center;
	line-height: 1.55em; margin-left: -2em;  height: 1.5em; width: 1.5em;
	border-radius: 100%;
}





/* +++++++++++++++++++++++++++++++++++++
	Additional Common
*/

header {
	position:relative; text-align:center; margin:0 auto;
	/*background:url(../../uploads/2017/11/top_1-e1530787756995.jpg);*/
	/*background:url(../../uploads/photo-gallery/augsburg_24.jpg);*/
	background-repeat:no-repeat; background-position:center center; background-size:cover;
	min-height: 535px;
}

.header-logo-wrapper {text-align:center; padding:1.5rem 0 0;}
.toppage .header-logo-wrapper {text-align:center; padding:3.5rem 0 0;}
.header-logo-mark {
	margin:auto; width:280px; height:auto; /*box-shadow:0 2px 4px 1px rgba(0,0,0,0.35);*/
	filter: drop-shadow( 0 0 6px rgba(255,255,255,0.95) );
}
.toppage .header-logo-mark {width:360px;}

header h1, header h2.main_title, header .h1alt {
	display:block; width:100%;
	font-size:3rem; font-weight:bold; margin:1.5em auto 3em; padding:0 1rem; text-align:center;
	color:#fff; font-feature-settings:"palt";
	text-shadow: 
    #111 2px 0px,  #111 -2px 0px,
    #111 0px -2px, #111 0px 2px,
    #111 2px 2px , #111 -2px 2px,
    #111 2px -2px, #111 -2px -2px,
    #111 1px 2px,  #111 -1px 2px,
    #111 1px -2px, #111 -1px -2px,
    #111 2px 1px,  #111 -2px 1px,
    #111 2px -1px, #111 -2px -1px;	
}

.toppage header h1 {font-size:2rem; margin:2.5em auto 3.5em; text-align:left;}


header .dateTime {position:relative; line-height:1.35; height:120px; margin:0 auto 2em; padding:8px; border-radius:6px; background:rgba(255,255,255,0.7);}
header .dateTime div {position:absolute; top:0; right:0; left:0; margin-left:-0.25em; margin-top:0.25em; width:100%; height:2em; text-align:center;}
header .dateTime iframe {position:absolute; bottom:0; right:0; left:0; width:100%; text-align:center;}
.header-cta .btn-ds {width:130px; font-size:90%; margin:0.5rem; text-align:center; border-radius:5px; }
.header-cta .sns-icon {
	width:40px; height:40px; margin:0.5rem; 
	border-radius:5px; box-shadow: 0 3px 5px rgba(20,20,20,0.3);
	transition:all 0.14s linear 0s;
}
.header-cta .sns-icon:hover {box-shadow:0 1px 2px rgba(20,20,20,0.4); opacity:0.8; transform:translateY(4px); transition:all 0.2s linear 0s;}

#sticker {
	margin: 0; padding:0.375em 0;
	background:rgba(0,0,0,0.6);/*#3a3a3a;*/
	box-shadow: 0 5px 5px -5px rgba(0, 0, 0, 0.5);
	z-index: 10000; 
	transition:all 0.22s linear 0s;
	position:fixed; top:0; left:0; width:100%; height:auto; padding:0.25em 0; z-index: 10000;
}
#sticker.fixed {
	background:rgba(0,0,0,0.85); transition:all 0.22s linear 0s;
}

/*
#main {padding-top:3em;}
.toppage #main {padding-top:0;}
*/
.pnkz {
	font-size:0.75rem;
	padding-top:1rem;
	padding-bottom:3rem;
}
.pnkz a {
	font-weight:normal !important;
}


footer ul.sns-link li {
	display:inline-block; margin-right:0.75em;
}
footer .sns-icon {
	width:32px; height:32px; margin:0.5rem auto; 
	border-radius:3px; box-shadow: 0 3px 5px rgba(20,20,20,0.3);
	transition:all 0.14s linear 0s;
}

#gblnavi-pc {}
#gblnavi-pc .cell {
	position:relative; width:10%;/*11.1111%;/*14.2857%;*/ height:77px; padding:0.5rem; color:#fff;
	background-repeat:no-repeat !important; background-position:center 17.5% !important; background-size:44px 44px !important;
	transition:all 0.33s linear 0s;
}
#gblnavi-pc .cell:hover::before {content:""; display:block; position:absolute; top:0; right:0; bottom:0; left:0; background:rgba(255,255,255,0.15);}

#gblnavi-pc .cell > li > a {position:absolute; top:0; right:0; bottom:0; left:0; display:block;width:100%; height:100%; color:#fff; padding-top:44px; font-size:0.77rem; transition:all 0.33s linear 0s;}
#gblnavi-pc .cell > li li > a {font-size:0.9rem;}

#sticker.fixed #gblnavi-pc .cell {
	height:50px; padding:0.5rem; color:#fff;
	background-position:center 10% !important; background-size:30px 30px !important;
	transition:all 0.33s linear 0s;
}
#sticker.fixed #gblnavi-pc .cell > li > a { font-size:0.7rem; padding-top:24px; transition:all 0.33s linear 0s;}

/*
#sticker #contact-us {display:none; transform:translateY(-100px); transition:all 0.5s ease 0s;}
#sticker.fixed #contact-us {display:block; transform:translateY(0); transition:all 0.5s ease 0s;}
*/


#gblnavi-pc .cell:first-child {background:url(./img/icon/navi/home.svg);}
#gblnavi-pc .cell:nth-child(2) {background:url(./img/icon/navi/chat.svg);}
#gblnavi-pc .cell:nth-child(3) {background:url(./img/icon/navi/temple.svg);}
#gblnavi-pc .cell:nth-child(4) {background:url(./img/icon/navi/jet.svg);}
#gblnavi-pc .cell:nth-child(5) {background:url(./img/icon/navi/person.svg);} 
#gblnavi-pc .cell:nth-child(6) {background:url(./img/icon/navi/tie.svg);} 
#gblnavi-pc .cell:nth-child(7) {background:url(./img/icon/navi/certified.svg);} 
#gblnavi-pc .cell:nth-child(8) {background:url(./img/icon/navi/camera.svg);} 
#gblnavi-pc .cell:nth-child(9) {background:url(./img/icon/navi/planner.svg);} 
#gblnavi-pc .cell:last-child {background:url(./img/icon/navi/mail.svg);}

/*
#gblnavi-pc .cell:last-child:before {content:""; position:absolute; top:0; right:0; bottom:0; left:0; width:100%; height:100%; background:#E50024; }
*/


/*
#gblnavi-pc .cell:first-child {background:#F29B9B;}
#gblnavi-pc .cell:nth-child(2) {background:#F4B59D;}
#gblnavi-pc .cell:nth-child(3) {background:#F8F8A2;}
#gblnavi-pc .cell:nth-child(4) {background:#B9F7A0;}
#gblnavi-pc .cell:nth-child(5) {background:#9ED2F4;}
#gblnavi-pc .cell:nth-child(6) {background:#9AA3F1;}
#gblnavi-pc .cell:last-child {background:#DDDDDD;}
*/

#gblnavi-pc ul.main-menu li {position:relative; text-align:center;} 

#gblnavi-pc ul.sub-menu {
	display:none; position:absolute; overflow:visible;
	top:64px; left:-61px;/*-55px;/*-42.5%;*/ width:226px; margin:0; padding:5px 8px;
	background:rgba(0,0,0,0.85);/*#09090d;*/
}

#sticker.fixed #gblnavi-pc ul.sub-menu {margin-top:-24px;/*-19px;*/}

#gblnavi-pc ul.sub-menu:after {
	display:block; position:absolute; top:-16px; left:50%; margin-left:-4px;
	content:""; width:0px; height:0px;
	border:8px solid transparent;
	border-bottom:8px solid rgba(0,0,0,0.85);
}

#gblnavi-pc ul.main-menu li:hover > ul.sub-menu {display:block; z-index:10001;}

#gblnavi-pc ul.sub-menu > li {
	position:relative; display:block; width:100%; height:2.5em; margin:0; text-align:center;
}

#gblnavi-pc ul.sub-menu > li > a {
	display:block; white-space:nowrap;
	position:absolute; top:0; right:0; bottom:0; left:0; width:100%; height:2.35em;
	padding:8px; color:#fff; 
}

#gblnavi-pc ul.sub-menu > li > a:hover {background:rgba(89,89,103,0.85);}



#gblnavi-mobile {}
#sticker .logo-mark-mobile {width:auto; height:50px;margin:4px auto 0;}

.menu-trigger-wrapper {margin:-0.25em 0.25em 0;}
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative; cursor:pointer;
	width: 32px; height: 24px;
	margin-bottom:4px; margin-left:0px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #fff;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: calc(50% - 2px);
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
/* animation */
.menu-trigger.active {width: 32px; height: 32px;}
.menu-trigger.active span {
	background-color:#FFCE00; /*#B8222D; /*#FFCE00*/
	z-index:1001 !important;
}
.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(14px) rotate(-225deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-14px) rotate(225deg);
}
.menu-trigger::after {
	position: absolute;
	left:-1.35em; top:24px;
	content: 'menu';
	display: block;
	width: 200%;
	color: #fff;
	font-size: 0.8em;
	text-decoration: none;
	text-align: center;
	transition: all 0.4s;
	z-index:1001 !important;
}
.menu-trigger.active::after {
	content: 'close'; 
	left:-1.3em; top:26px;
	width: 200%;
	font-size:0.8em; color:#fff;
	transition: all 0.4s;
}


.menu-closer-wrapper {padding:0.25em;}
.menu-closer,
.menu-closer span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-closer {
	position: relative; cursor:pointer;
	width: 32px; height:32px;
	margin-bottom:4px; margin-left:4px;
}
.menu-closer span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color:#fff;/*#FFCE00;/* #B8222D;*/
	border-radius: 4px;
}
.menu-closer span:nth-of-type(1) {
	top: 0;
	transform: translateY(14px) rotate(-45deg); transform-origin:center;
}
.menu-closer span:nth-of-type(2) {
	opacity: 0;
}
.menu-closer span:nth-of-type(3) {
	bottom: 0;
	transform: translateY(-14px) rotate(45deg); transform-origin:center;
}
.menu-closer::after {
	content: 'close'; 
	left:-1.3em; top:26px;
	width: 200%;
	font-size:0.8em; color:#111;
	transition: all 0.4s;
}



#mail-btn-mobile {position:relative;}
.icon-mail-mobile {width:44px; height:44px;}
#mail-btn-mobile::after {
	position: absolute;
	left:-1.8em; top:33px;
	content: 'contact';
	display: block;
	width: 200%;
	color: #fff;
	font-size: 0.8em;
	text-decoration: none;
	text-align: center;
	transition: all 0.4s;
	z-index:1001 !important;
}



/* ++++++++++++++++++++++++++++++++++++
	slidemenu-settings 
++++++++++++++++++++++++++++++++++++++*/
/*#whole-wrapper {z-index: 9991; background:#fff;}*/
.slidemenu {
	position: fixed; top:0; bottom:0; left:0; width: 280px; padding:0;
	background:#f0f0f0; 	border-right:2px solid rgba(0,0,0,0.2);
	z-index: 9990;
	transform:translateX(-290px);
	transition:all 0.76s ease 0s;
	text-align:left;
}
.slidemenu.reveal {
	transform:translateX(0);
	transition:all 0.53s ease 0s;
}
.slidemenu.scrolled {padding-top:0;}
.backward-z {z-index:-100 !important; transition:all 0.53s ease 0s; overflow:hidden !important; opacity:0.35;}
.ofh {overflow:hidden !important;}
#mobile-menu-underlay {z-index:-100; position:fixed; top:0; right:0; bottom:0; left:0; width:100vw; height:100vh; background:rgba(0,0,0,0); transition:all 0.76s ease 0s;}
#mobile-menu-underlay.reveal {background:rgba(0,0,0,0.55); transition:all 0.53s ease 0s; z-index:100;}

.slidemenu .slidemenu-header {
	height:60px; /*50px; background:#aaa;*/
}

.slidemenu .slidemenu-body {
	height:calc(100vh - 100px); padding:24px 8px; 
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	position: relative;
}
.slidemenu .slidemenu-body .slidemenu-content {
	position: relative; padding-left:1em; padding-right:0.75em;
}

.slidemenu a {color:royalblue;}
.slidemenu a:hover {color:salmon;}

.slidemenu ul {font-size:1.1em; text-align:left;}


.slidemenu ul.glonavi li {padding-left:0.65em !important;}
.slidemenu ul.catnavi {padding-left:0.65em !important;}

.slidemenu ul.search li {line-height:1.35; margin:1.25em 0 !important;}
.slidemenu ul.search li input {padding:0.25em 0; height:3.25em;}
.slidemenu #MakeShopTopSearchButton {margin:1px 0 0 4px; height:2.05em; vertical-align:top;}

.slidemenu ul.glonavi li, .slidemenu ul.catnavi li {line-height:1.5em; margin:1.25em 0 !important;}
.ul-label {display:block; line-height:1.5em; margin:1.25em 0; font-size:1.1em;}

.parent-page.gohome > li {
	background:url(./img/icon/navi/home-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.gg9 > li {
	background:url(./img/icon/navi/chat-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.uni > li {
	background:url(./img/icon/navi/temple-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.depa > li {
	background:url(./img/icon/navi/jet-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.life > li {
	background:url(./img/icon/navi/person-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.job > li {
	background:url(./img/icon/navi/tie-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.insu > li {
	background:url(./img/icon/navi/certified-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.reiz > li {
	background:url(./img/icon/navi/camera-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.about > li {
	background:url(./img/icon/navi/planner-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}
.parent-page.contact-us > li {
	background:url(./img/icon/navi/mail-dgray.svg) no-repeat 0 0;
    background-size: 2.0em 2.0em;
    padding: 0.25em 0 0.5em 2.25em;
}

.slidemenu ul.child-page {padding-left:1em !important;}
.slidemenu ul.child-page li {font-size:0.925rem; margin:1.25rem 0 !important; font-weight:normal !important;}

.menu-button-left {left: 0px; position:relative;}
.opener-left { width: auto; height: 40px; display: block; cursor:pointer; font-size:18px;}


/* ++++++++++++++++++++++++++++++++++++
	slideToggleMenu-settings 
++++++++++++++++++++++++++++++++++++++*/
#tel-menu-smp {margin-right:8px;}
.slideToggle-switch {cursor:pointer;}
.slideToggle-target, .slideToggle-target ul li {text-align:center; margin:auto;}
.slideToggle-closer {cursor:pointer; margin:1.5em auto 2em; width:6em; padding:0.5em 0; background:rgba(255,255,255,0.2); border-radius:100%; text-align:center;}
.icon-tel {position:relative; width:30px; height:30px;} 
.icon-tel img {width:30px; height:30px; margin-top:-4px; margin-left:-4px;}
.icon-tel::after { 
	position: absolute;
	left:-2.2em; top:19px;
	content: '問い合わせ';
	display: block;
	width: 200%;
	color: #fff;
	font-size: 0.6em;
	text-shadow:1px -1px 0 #111, 1px -1px 1px #111;
	text-decoration: none;
	text-align: center;
	letter-spacing: -0.05em;
	transition: all 0.4s;
}

.slideToggle-target {display:none; color:#fff;}
.slideToggle-target .icon-mail {width:32px; margin:4px; transform:rotate(-10deg) translateY(-4px);}
.slideToggle-target .phone-number {
	font-family:'LinLibertine-RBG';
	font-size:125%;
	color: #fff;
	margin-right:8px;
}

.call-wrapper {margin:1.5em auto 1em;}
.call-wrapper .caption {display:block; margin:1em auto 0; font-size:80%;}

.push-to-call {position:relative; width:32px; height:32px;} 
.push-to-call img {width:32px; height:32px; margin-top:-10px;}
.push-to-call::after { 
	position: absolute;	left:-1.75em; top:14px; 
	content: '電話する';
	display: block;
	width: 200%;
	color: #fff; letter-spacing:0.05em;
	font-size: 0.6em;
	text-shadow:1px -1px 0 #111, 1px -1px 1px #111;
	text-decoration: none;
	text-align: center;
	transition: all 0.4s;
}

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

.slideToggle-target ul {margin:0 auto 1em !important; padding:0 !important;}
.slideToggle-target ul li {line-height:1.9em; margin:1.5em auto;}
.slideToggle-target .push-to-call {margin-top:-10px;}





.boxLink {padding:4em 0 5em !important; /* overWrite */}

.boxLink-kai {background: url(images/bg/bg-gray.jpg) repeat;/*background:#eae8e6;*/}
.boxLink-kai ul:not(.nopad) {padding-left: 1.5em;}
.boxLink-kai ul.nopad {padding-left: 0;}
.boxLink-kai ul,ol  { text-align: left;}
.boxLink-kai ul li {list-style:none; line-height:1.5em; margin:0.75em 0.5em;}
.boxLink-kai ul li.sq {list-style: square;} 
.boxLink-kai ul li.sm {list-style: circle;} 
.boxLink-kai ul li.km {list-style: disc;} 
.boxLink-kai ul li.tn {list-style: none; margin:0; text-align:center;} 
.boxLink-kai ul li.tn img {width:150px; height:150px; vertical-align:middle; margin:8px auto; box-shadow:0 1px 5px 1px rgba(0,0,0,0.25);}

.boxLink-kai  h3 {
    margin: 0.5em 0 1em;
    padding: 0.4em 0.5em 0.25em 0.75em;
    font-size: 120%;
    line-height: 1.7;
    border-left: 6px solid #FBCB00;
    background: #f7f7f3;
}



div#footer {padding:2em 0;}




/* +++++++++++++++++++++++++++++++++++++
	TopPage
*/


#intro-navi {padding-bottom:1.5rem;}

#intro-navi .cell {position:relative; }
#intro-navi .cell:first-child {background:#F29B9B;}
#intro-navi .cell:nth-child(2) {background:#F4B59D;}
#intro-navi .cell:nth-child(3) {background:#F8F8A2;}
#intro-navi .cell:nth-child(4) {background:#B9F7A0;}
#intro-navi .cell:nth-child(5) {background:#9ED2F4;}
#intro-navi .cell:nth-child(6) {background:#9AA3F1;}
/*#intro-navi .cell:last-child {background:#DDDDDD;}*/
#intro-navi .cell:after {
	position:absolute; right:1em; bottom:1em;
	content:""; width:9em; height:9em; /*border-radius:100%;*/
	background:rgba(0,0,0,0.15); background-repeat:no-repeat; background-position:center center; background-size:cover;	
	z-index:9;
}
#intro-navi .cell:first-child::after {background:url(../../uploads/2017/07/goethe_01-150x150.jpg);}
#intro-navi .cell:nth-child(2)::after {background:url(../../uploads/2017/07/sommerkurs-150x150.jpg);}
#intro-navi .cell:nth-child(3)::after {background:url(../../uploads/2018/01/abreise-150x150.jpg);}
#intro-navi .cell:nth-child(4)::after {background:url(../../uploads/2017/10/information_top-150x150.jpg);}
#intro-navi .cell:nth-child(5)::after {background:url(../../uploads/2017/10/arbeit_top-150x150.jpg);}
#intro-navi .cell:nth-child(6)::after {background:url(../../uploads/2017/10/versicherung_top2-1-150x150.jpg);}

#intro-navi .cell a {color:#111;}
#intro-navi .cell a:hover {color:#777;}
#intro-navi .cell h2 {
	position:relative; z-index:11;
	font-size:1.7em; color:#fff;
	text-shadow: 
    #111 2px 0px,  #111 -2px 0px,
    #111 0px -2px, #111 0px 2px,
    #111 2px 2px , #111 -2px 2px,
    #111 2px -2px, #111 -2px -2px,
    #111 1px 2px,  #111 -1px 2px,
    #111 1px -2px, #111 -1px -2px,
    #111 2px 1px,  #111 -2px 1px,
    #111 2px -1px, #111 -2px -1px;
}

#intro-navi .cell ul {position:relative; padding:1em 0 1em 1em; font-size:0.85em; height:85%; z-index:10;}
#intro-navi .cell ul li {padding:0.25em 0.5em;}
#intro-navi .cell:first-child ul li a {background:rgba(242, 155, 155, 0.7);}
#intro-navi .cell:nth-child(2) ul li a {background:rgba(244, 181, 157, 0.7);}
#intro-navi .cell:nth-child(3) ul li a {background:rgba(248, 248, 162, 0.7);}
#intro-navi .cell:nth-child(4) ul li a {background:rgba(185, 247, 160, 0.7);}
#intro-navi .cell:nth-child(5) ul li a {background:rgba(158, 210, 244, 0.7);}
#intro-navi .cell:nth-child(6) ul li a {background:rgba(154, 163, 241, 0.7);}



.toppage #whats-new {
	margin:3em auto;
	width:94%; max-width:750px; height:auto;
}
.toppage #whats-new #history {
	height:10em; overflow:auto; padding:1.5em 0.5em; line-height:1.5; font-size:90%;
	border:1px solid #dcdcdc; background:#fff;
	box-shadow:0 1px 3px 0 rgba(50,50,50,0.3) inset;
}

.toppage #the-content {line-height:1.7;}
.toppage #the-content article {width:96%; max-width:830px; margin:0 auto; text-align:left;}
.toppage #the-content h3 {margin:2em 0 0.5em; padding:0.4em 0.5em 0.25em 0.75em; font-size:120%; line-height:1.7; border-left:6px solid #FBCB00; background:#f7f7f3;}
.toppage #the-content p {padding:0.25em 0.75em;}


.toppage .school-intro h3 {margin:1em 0; font-size:1.5em;}

.school-intro .cell {
	position:relative; 
	line-height:1.5;
	box-shadow:0 1px 4px 1px rgba(50,50,50,0.3);
	overflow:hidden;
	transition:all 0.22s linear 0s;	
}
.school-intro .cell:hover {
	box-shadow:0 1px 8px 1px rgba(50,50,50,0.2);
	transform:scale(1.035);
	transition:all 0.1s linear 0s;
}
.school-intro .cell:before {content:""; display: block; padding-top:100%;}
.school-intro .cell a {
	position:absolute; top:0; right:0; bottom:0; left:0; 
	width:100%; height:100%; margin:0; 
	display:block; color:#fff;
	background-repeat:no-repeat !important;
	background-position:center center !important;
	background-size:cover !important;
}

.school-intro .cell div.name {position:absolute; right:0; bottom:0; left:0; background:rgba(0,0,0,0.5); padding:0.5rem;}
.school-intro .cell span {display:block; width:100%; }
.school-intro .cell span.jp {font-size:0.9em;}
.school-intro .cell span.de {font-size:0.75em;}


/* - - - - - #sprachschule - - - - - - */
#sprachschule .map-jp {margin:auto; width:100%; max-width:380px;}

/* - - - - - #universitaet - - - - - - */
.school-intro #wien {background:url(../../uploads/2017/12/wien-640x340.jpg);}
.school-intro #wuerzburg {background:url(../../uploads/2018/05/wuerzburg_top-640x340.jpg);}
.school-intro #goettingen {background:url(../../uploads/2017/10/main-12-640x340.jpg);}
.school-intro #tuebingen {background:url(../../uploads/2017/12/uni_tuebingen_top-640x340.jpg);}
.school-intro #dresden {background:url(../../uploads/2017/11/dresden-640x340.jpg);}
.school-intro #heidelberg {background:url(../../uploads/2017/12/uni_heidelberg_top-640x340.jpg);}
.school-intro #bonn {background:url(../../uploads/2017/11/uni_bonn_top-640x340.jpg);}
.school-intro #muenchen {background:url(../../uploads/2017/11/uni_muc_top-640x340.jpg);}
.school-intro #freiburg {background:url(../../uploads/2017/11/uni_freiburg_top-640x340.jpg);}
.school-intro #fu_berlin {background:url(../../uploads/2018/02/fu_berlin_top-640x340.jpg);}


.toppage #reise .map-de {width:97%; max-width:350px; margin:0 auto 1em;}
.toppage #reise ul {padding:0;}
.toppage #reise ul li {position:relative; display:block; line-height:1.9; margin:0; padding:0 0.25em 0.5em; font-size:0.9em; line-height:1.35; font-feature-settings:"palt";}
.toppage #reise ul li a {position:relative; display:block; margin:0; width:100%; height:100%; padding:0.4em 0.5em 0.25em; color:#fff; background:rgba(0,0,0,0.3); border:1px solid transparent; transition:all 0.33s linear 0s; }
.toppage #reise ul li a:hover {background:rgba(225,225,225,0.75); color:#111; border:1px  solid rgba(0,0,0,0.55); transition:all 0.14s linear 0s;}
.toppage #reise span.de {font-size:0.75em; font-weight:normal; display:block; width:100%;}



/* +++++++++++++++++++++++++++++++++++++
	Post
*/
.sidebar-widget ul {padding:0 0 1em 1em;}
.sidebar-widget ul li {padding:0.5em 0 0;}
.sidebar-widget ul.children {font-size:0.9em !important;}


/* +++++++++++++++++++++++++++++++++++++
	CustomPost - School
*/
.detailSchool {
	display: block;
	margin: 0;
	padding: 0;
	font-family: Meiryo!important;
}
.detailSchool .h1-alt {
	display: block;
	font-size: 25px; font-weight:bold;
	color: #000;
	margin: 15px 0 0;
	padding: 0;
}
.detailSchool h2,
.detailSchool .machi h3 {
	display: block;
	border-top: 5px solid #ffce00;
	border-bottom: 1px solid #ddd;
	background: url(images/icon/img-sq1.png) 0 45% no-repeat;
	padding: 10px 0 10px 30px;
	font-size: 20px;
	font-weight: bold;
	margin: 2.5em 0 15px;
}
.detailSchool h3 {
	display: block;
	background: url(images/icon/img-sq2.png) 0 45% no-repeat;
	padding: 10px 0 10px 20px;
	font-size: 14px;
	font-weight: bold;
	margin: 15px 0 0px;
}
/*
.detailSchool h4 {
	display: block;
	padding: 10px 0 10px 0px;
	font-size: 14px;
	font-weight: bold;
	margin: 15px 0 0px;
}
*/
.detailSchool h4:not(.titlePrice) {
	display: block;
	background: url(images/icon/img-sq2.png) 0 45% no-repeat;
	padding: 10px 0 10px 20px;
	font-size: 14px;
	font-weight: bold;
	margin: 15px 0 0px
}
.detailSchool .txtDetail {
	font-size: 14px;
	color: #1e1e1e;
	margin-bottom: 15px;
}
.detailSchool .txtDetail p {
	margin: 0;
	padding: 0;
}
.video-container {margin:1em auto; max-width:640px;}
.video-container .vWrap {display:block; width:100%; height:100%;}
.video-container .vWrap iframe {width:100%; height:360px; background:rgba(0,0,0,0.1);}

@media only screen and (min-width: 320px) and (max-width: 667px) {
	.detailSchool {
		display: block;
		margin: 0 auto;
		padding: 0;
		font-family: Meiryo!important;
		width: 98%
	}
}
@media only screen and (max-width: 767px) {
	.vWrap{
		position: relative;
		margin: 0.5em 0 1.2em;
		padding:69px 0 50%;
		overflow: hidden;
	}
	.vWrap iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}

#brochure {margin:2em 0;}
#brochure .open-pdf {padding:0.5em 1em;}


/* xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
	Media Query
*/

@media only screen and (min-width:1000px) {
	#mobile-menu-underlay {display:none;}
	#gblnavi-pc {display:block;}
	#gblnavi-mobile, #nav-mobile {display:none;}
}
@media only screen and (max-width:999px) {
	#gblnavi-pc {display:none;}
	#gblnavi-mobile, #nav-mobile {display:block;}
	#sticker, #sticker.fixed {height:auto; padding:0 4px 2px;}
	.header-logo-wrapper {display:none;}
	.header-logo-mark, .toppage .header-logo-mark {width:auto; height:60px; margin:6px 4px 0; filter: drop-shadow( 0 0 0px rgba(255,255,255,0.95) );}
	header h1, header .h1alt {padding:2em 1em 0; font-size:2.2em;}	
}
@media only screen and (max-width:768px) {
	.header-logo-mark, .toppage .header-logo-mark {width:auto; height:50px; margin:6px 4px 0;}
	header h1, header .h1alt {padding:1em 0.5em 0; font-size:2em;}
	.toppage header h1 {font-size:1.85rem; margin:2.25em auto 3.25em;}	
	.toppage h2.larger {font-size:200%; margin:1em auto; letter-spacing:0.15em;}
}
@media only screen and (max-width: 767px) {
	.container { max-width:100vw !important; width:auto !important; }
}
@media only screen and (max-width:600px) {
	header h1, header .h1alt {font-size:1.5em; line-height:1.5;}
	.toppage header h1 {font-size:1.65rem; margin:2.25em auto 3.25em;}	
	.toppage h2.larger {font-size:180%;  letter-spacing:0;}
}
@media only screen and (max-width:479px) {
	.header-logo-mark, .toppage .header-logo-mark {width:auto; height:40px; margin:12px 0 0;}
	header h1, header .h1alt {font-size:1.65em; line-height:1.5;}
	.toppage header h1 {font-size:1.5rem; margin:1.25em auto 2.5em;}	
	.toppage h2.larger {font-size:160%;  letter-spacing:0;}
	.header-cta .sns-icon {display:none;}
	#intro-navi .cell:after {right:0.5em; top:1em; width:8em; height:8em;}
	#intro-navi .cell h2 {margin-top:0.5em; font-size:1.4em;}
	#intro-navi .cell ul {padding:0.75em 0 0.5em 0.25em;}		
	#intro-navi .cell ul li {display:inline-block; width:49%; padding:0.5em 0;}	
	#rewind {width:2.75em; height:2.75em; padding: 2px 6px 8px; right:6px; bottom:6px;}
}

