.f14 td{font-size:15px;
}
.mark{background: linear-gradient(transparent 0%, #f6ff5f 0%);}
blockquote {
    position: relative;
    padding: 10px 15px 10px 50px;
    box-sizing: border-box;
    font-style: italic;
    font-weight: bold;
    color: #aa4444;
    background: #fff4db;
    border: solid 4x #ffd596;
}

blockquote:before{
    display: inline-block;
    position: absolute;
    top: 10px;
    left: 0;
    content: "“";
    font-family: Arial;
    color: #aa4444;
    font-size: 40px;
    line-height: 1;
}

blockquote p {
    padding: 0;
    margin: 10px 0;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #ffd596;
    font-size: 0.9em;
}

.timetable td{display: table-cell;font-size:16px;vertical-align:bottom;}
.verticalmiddle{line-height:50px;}
div.timetable h1{font-size:21px;}

.moreLink{display:none;}
.moreLink.right{display:block;}
iframe, table {
width: 100%;
}
.calendar {position: relative;}
.calendar::before {
  content: "";
  display: block;
  padding-top: calc(100% * 3 / 4);
}
.calendar iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
h1 {margin:4px;line-height:115%;}
p{font-size:125%; line-height:145%;}
h1{font-size:80%;}
h2{font-size:21px;}
.infoList{display:none;}
.serviceicon{font-size:22px;color:#f4b400;}
.button {
  display: inline-block;
	font-size:21px;
	font-weight:bold;
	padding:18px 24px 18px 24px;
  text-align: center;
  text-decoration: none;
  outline: none;
	border:none;	
	background-color: #f4b400;
  color: #fff;
	margin:auto;
	cursor: pointer;
	cursor: hand;
}
.button::before,
.button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button,
.button::before,
.button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.button:hover {
  background-color: #ffdf00;
}
.membermenu{
	font-size:12px;
	font-weight:bold;
}
.titlebutton{
	font-size:20px;
	width:100%;
	height:40px;
	padding:1px;
	border:none;
	margin-bottom:9px;
}
.kyozai{
	background-color:#1da1f2;
}
.kyozai:hover{
	background-color:#0095f2;
}
div.member-box{
	border-top: 2px solid #cccccc;
	padding-top:9px;
}
.table{
	width:100%;
	table-layout:fixed;
}
.table td, th{
	font-size:14px;
	text-align:center;
}
div.su-spoiler-title{font-size:18px;}
.formular{
    position:relative;
    width:100%;
    height:1000px;
    padding-top:75%;
}
.formular #question{
	height:750px;
}
.formular iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.g-slide{
position: relative;
overflow: hidden;
margin: 15px 0 20px 0;
padding-bottom: 50%;
padding-top: 65px;
}
.g-slide iframe {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.orange{
	color:orange;
	background-color:#fafaff;
	width:100%;
	padding:8px;
	text-shadow:2px 2px #fff;
}
.black{
	color:black;
	background-color:#fff;
	width:100%;
	padding:0;
	text-shadow:none;}
.clearfix{
	display:block;
	width:100%;
	height:1px;
	clear:both;
}
.thumbnail img{
	width:150px;
	height:150px;
	border:solid 2px #fafaff;
	display:block;
	float:left;
	margin:5px;
}



h1.emphasize:first-letter {
  font-size: 150%;
  color: #f00;
}

h1.emphasize{
		font-size:18px;
  position: relative;
  padding: 1rem 2rem;
}

h1.emphasize:before{
	position: absolute;
  bottom: -6px;
  left: 0;
  width: 8%;
  height: 6px;
  content: '';
  background: #f00;
}


.title-light {
  padding: 0.25em 0.5em;
  color: #000;
  border-left: solid 5px #f00;
	font-weight:bold;
	font-size:1.25em;
}
.bar2{
	display:block; 
	width:100%;
	height:5px;
	background-color:#fff;
	border-top: 4px solid #333;
	padding-bottom: 50px;
	
}

h1.logo:before {
    content: '';/*何も入れない*/
  display: inline-block;/*忘れずに！*/
  width: 40px;/*画像の幅*/
  height: 35px;/*画像の高さ*/
  background-image: url(https://soroban-schule.de/wp-content/uploads/2021/05/logo-hand.png);
  background-size: contain;
  vertical-align: middle;
	margin-right:2px;
}
.bar1{
display:block; width:60%;margin:30px auto;padding:10px 0; text-align: center;border-bottom: solid 3px #ff9900;
}

.bar3 {
  display:block;
  width: 100%;
  height: 3px;
  border: 0;
  border: 1px solid #cacaca;
  -webkit-border-radius: 3px;
  background: #005500; /* Old browsers */
  background: -moz-linear-gradient(red,pink,red); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, right top, color-stop(0%,orange), color-stop(50%,pink),color-stop(100%,orange)); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(left,  orange 0%,pink 50%,orange 100%); /* Chrome10+,Safari5.1+ */
  background: linear-gradient(to right,  orange 0%,pink 50%,orange 100%); /* W3C */
}
div.shinkyu{
	width:150px;
	height:90px;
	padding:16px 0px 3px 0px;
	font-weight:bold;
	line-height:1.3em;
	text-align:center;
	float:left;
	margin:1px;
	border:solid 1px #CCC;
	border-radius:3px;
	background-image:url(https://soroban-schule.de/wp-content/uploads/2021/05/0b800f1c0b45fa07365d97c2d94171ad.jpg);
	background-size:contain;
}


.hand-point-title {
  position: relative;
  padding-left: 4em;
	font-size:1.2em;
	font-weight:bold;
	padding-bottom:6px;
}

.hand-point-title span {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 2rem;
  color: #ffffff;
  background: #ff0000;
	margin-right:50px;
}

.hand-point-title span:after {
  position: absolute;
  top: calc(50% - 7px);
  right: -11px;
  width: 0;
  height: 0;
  content: '';
  border-width: 7px 0 7px 12px;
  border-style: solid;
  border-color: transparent transparent transparent #ff0000;
}
div.su-tabs-nav span{font-size:125%;}
div.su-tabs-nav span.su-tabs-current{
	font-size:160%;
	font-weight:bold;
	background-color: #ffffee;
	border-bottom:solid 5px #efaa00;
}

.mobile-small{
	font-size:145%;
}


h1.h1-title{display:block;background-color:#ff2200;padding:20px 20px;color:#ffffff;font-size:28px;}
h1.h1-title2{display:block;width:100%;border-left:solid 15px #fff;background-color:
#4285F4;padding:15px 20px;color:
#ffffff;}
h1.h1-title3{display:block;width:95%;border-left:solid 15px #fff;background-color:
#4285F4;padding:15px 20px;color:
#ffffff;}
p.emphasize{display:block;background-color:
#4285F4;padding:20px;color:
#ffffff;}

.iframe-wrap{
    position:relative;
    width:100%;
    height:450px;
}
.iframe-wrap iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:450px;
}


@media screen and (max-width:480px) {
	div.timetable h1{font-size:18px;}
	.timetable{font-size:11pt;}
	.verticalmiddle{font-size:11pt;line-height:15px;}
	.mobile-small{
	font-size:13px;
	color:blue;
}
	h1.logo,h1.h1-title {font-size:18px;padding:15px 15px;
	}
	h1.h1-title3, h1.h1-title2{
		font-size:18px;	
		width:95%;
		border:none;
		padding:15px 5px;
	}
	.bar1{font-size:18px;}
	.iframe-wrap{
    position:relative;
    width:100%;
    height:200px;
}
.iframe-wrap iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:200px;
}
.iframe{position:relative;
width:100%;
height:0;
padding-top:75%;
}
.iframe iframe{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}
}
@media (max-width: 800px){
	.bar1{
width:100%;
}
	.title-light {
  padding: 0.25em 0.1em;
}
	h1.emphasize{
  padding: 1rem 0rem;
}
	h1.emphasize:before{
  width: 15%;
}
		.iframe-wrap{
    position:relative;
    width:100%;
    height:250px;
}
.iframe-wrap iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:250px;
}

}
.member-navbar{
	width: 100%;   
      color: #fff;
      display: flex; /* 横並びにする */
      justify-content: space-between; /* 両端を揃える */
      align-items: center; /* 垂直方向に中央揃え */
      padding: 10px 0;
}
.navmenu{
	flex: 1; /* 同じ幅に自動調整 */
  padding: 10px;
	background-color: #aaa;
	border:solid 1px;
	text-align: center; /* 中央揃え */

	
	
}
.navmenu a {
display: block;
  text-decoration: none;
  color: #fff;
  font-size: calc(1em + 0.5vw); /* 最小フォントサイズを1emに設定 */
  line-height: 1.5;
  width: fit-content; /* ボタン内のコンテンツに合わせて幅を調整 */
  flex-grow: 1; /* 余分なスペースを分配 */
  white-space: nowrap; /* 文字の折り返しを禁止 */
    }
.navmenu:hover{
		background-color: #ccc;
}
.navmenu a:hover{
	color:#fff;
}
    /* レスポンシブデザイン */
    @media screen and (max-width: 600px) {
      .navmenu {
        flex-direction: column; /* 小さい画面では縦並び */
      }
    }
#myDiv {
  display: none;
}