@charset "utf-8";

/*
Theme Name: 新ピアノアドヴェンチャーサイト
Author: Plusers
Description: original theme
Version： 3.0.0
*/


 { outline: 2px solid red; }


/*cssのリセット*/
html,
body,
div,
span,
object
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}


/*aリンク
-------------------------------------*/
a {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  text-decoration:none;
}

a.moji3:hover {
  color:#0000EE !important;
}

a.pankuzua2 {
  text-decoration:none!important;

}

a.pankuzua2:hover {
  color:#0000EE !important;
}

a.pankuzua {
  font-weight:bold!important;
  text-decoration:underline!important;	

}

a.pankuzua:hover {
  color:#0000EE !important;
}

a:link,
a:visited  {
    color:#666;
}



/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background-color:#000;
    color:#fff;
    width: 50px;
    padding: 10px 5px;
    text-align: center;
}
#pagetop a:hover {
    background-color:#666;
}
html {
    scroll-behavior: smooth;
}

ins {
  text-decoration: none;
  color: #000;
  background-color: #ff9;
}

mark {
  font-weight: bold;
  font-style: italic;
  color: #000;
  background-color: #ff9;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}


html {
  font-size: 16px;
}

body {
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "Noto Sans JP",
    sans-serif;
  line-height: 1.8;/*行間の指定*/
  margin: 0;
  padding: 0;
  color: #333;
}


h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;

}

img {
  max-width: 100%;
  height: auto;
}


.svgfont {
    font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif!important;	
}


.header-inner,
.footer-inner,
.container {
  
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}

.container {
  width:100%;	
  padding-top: 2rem;
  padding-bottom: 1rem;
}

h1 {
font-size: 2.5em;
padding: 0em 0em;
}



@media (min-width: 768px) {
  .two-columns {
    display: flex;
    flex-direction: row;

    gap: 2.5rem;
  }

  .two-columns .contents {
    flex: 1 1 auto;
  }

  .two-columns .sidebar {
    flex: 0 0 15.625rem;
  }
	
 .contents {
    width: 90%;
	margin:0px 20px;
	}	
	
}

/*スマホレイアウト*/
@media (max-width: 768px) {
  html {
	  font-size: 15px;}
	
.container {

  padding-bottom: 0rem;
}	
	
	
	  }


@media (max-width: 780px) {
.header-border{
  position: fixed;
  top: 55px!important;               /* ヘッダーの高さ */
  left: 0;
  width: 100%;
  height: 8px;
  background: #f17816;
  z-index: 10002;
  pointer-events: none;
}

	

	

	
  .container {
    padding-top: 1.4rem;
	width:100%;  
  }
	
	
	
	
}


.site-title a img {
  height: 2.5rem;
}



.header-inner {
  position: relative;
  /* padding-top: 1.25rem; */
  padding-bottom: 1.25rem;
		
}



.site-title {
  line-height: 1;
  display: inline-block;
}

.site-title a {
  display: block;
  text-decoration: none;
}

/*タイトルを画像にする場合*/
.site-title a img {
  display: block;
  width: auto;
  height: 1.75rem;
}

/*タイトルを文字列にする場合*/
.site-title a {
  font-weight: 500;
  height: 1.75rem;
  color: #000;
}



@media(min-width: 999px) {
  .navbutton {
    display: none;
  }

  .header-nav-wrap {
    width:67%;
	position: absolute;
    top: 62%;
    right: 1.5rem;
    margin-left: 0;
    transform: translateY(-50%);
    /* margin-top:35px; */
    
  }



ul.menu li {

  }
	
	
	

}

@media(max-width: 998px) {
.svgfont {
    font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;	
} 
	
.navbutton {

	position: absolute;
    z-index: 10;
    top: 55%;
    right: 1.5rem;
    display: block;
    cursor: pointer;
    transform: translateY(-90%);
    border: 0;
    background-color: transparent;

	color: #333;
  }

  .navbutton:focus {
    outline: 0;
  }

  .navbutton::after {
    font-family: "Material Symbols Outlined";
    font-size: 2.5rem;
    content: "\e5d2";
    color: #333;
  }

  .menu-active .navbutton::after {
    font-family: "Material Symbols Outlined";
    font-size: 2.5rem;
	content: "\e5cd";
    color: #fff;
  }

  .header-nav-wrap {
    position: absolute;
    z-index: 9;
    top: 0;
    left: 0;
    display: none;
    overflow-y: auto;
    width: 100%;
    height: 100vh;
    background-color: rgba(0,0,0,0.71);
	/*background: #333;*/
	color: #fff;  
  }

  .header-nav {
    padding: 3rem 0;
  }

  .header-nav li a {
    font-weight: 50;
    padding: 1.5rem;
    /* text-align: center; */
	background: #fff;  
    color: #333;
  }
}





@media(max-width: 768px) {
	
.header-nav .menu-item-has-children > a {
     padding-bottom: 1em;
}
	
.header-nav .sub-menu li a {
     position: relative;
     padding: 1rem 1rem 1rem 3.75em;
}
	
.header-nav .sub-menu li a::before {
     position: absolute;
     top: 1.25em;
     left: 2.75em;
     display: block;
     width: .5em;
     height: .5em;
     content: "";
     border-bottom: 0px solid #fff;
     border-left: 0px solid #fff;

}
	
.mo11 {
    margin-top: -80px!important; 		
	font-size:105%!important;

	}	
	
}




/*フッター*/
.footer {

}

.footer-nav-wrap {
  padding: .75rem 1rem;

}

.footer-nav ul {
  font-size: 0;
  text-align: center;
}

.footer-nav ul li {
  font-size: .875rem;
  display: inline-block;
  margin-right: 1rem;
  padding: .25rem 0;
}

.footer-nav ul li:last-child {
  margin-right: 0;
}

.footer-nav ul li a {
  text-decoration: none;
  color: #333;
}

.copyright {
  padding: 1rem;
  text-align: center;
}

.copyright p {
  font-size: .875rem;

}


/*投稿*/
.article-head .article-info {
  margin-bottom: .5rem;
}

.article-head .article-info .article-cat {
  display: inline-block;
  vertical-align: middle;
}

.article-head .article-info .article-cat a {
  font-size: .875rem;
  line-height: 1;
  display: inline-block;
  margin-right: .5rem;
  padding: .375rem .5rem;
  text-decoration: none;
  color: #fff;
  background-color: #03162f;
}

.article-head .article-info .article-date {
  font-size: 1rem;
  display: inline-block;
  vertical-align: middle;
  color: #888;
}

.article-head .article-info .article-date i {
  font-size: 1.25rem;
  position: relative;
  top: .25rem;
}

.article-head h1 {
  font-size: 2.125rem;
  font-weight: bold;
  padding: 0 .3em .5em .8em;
  text-indent: -.7em;
}

.article-head h1:before {
  background-color: #f17816;
  /*border-radius: 1em;*/
  content: "";
  display: inline-block;
  height: 1.2em;
  margin-right: .5em;
  vertical-align: middle;
  width: .3em;
}	
	
	
.topmain h2 {
  font-size: 1.6em;
  font-weight: bold;
  text-align: center;
  margin: 5px;
  line-height: 130%;
  color: #f17816;
}

.topmain {
  margin: 1em 0.5em;	
}

.article-head img {
  width: 120&;
}



.article-head .article-img {
  margin-bottom: 2rem;
}

.article-head .article-img img {
  display: block;
}

.article-foot .article-tag {
  margin-bottom: 1rem;
  text-align: right;
}

.article-foot .article-tag ul {
  list-style: none;
}

.article-foot .article-tag ul li {
  font-size: .9rem;
  display: inline-block;
  margin-right: .5rem;
  vertical-align: middle;
}

.article-foot .article-tag ul li:last-child {
  margin-right: 0;
}

.article-foot .article-tag ul li a {
  line-height: 1;
  display: block;
  padding: .25rem .5rem;
  text-decoration: none;
  color: #000;
  border: 1px solid #000;
}

.article-foot .article-tag ul li a:hover {
  opacity: .6;
}

.article-foot .article-author {
  font-weight: 500;
  line-height: 1;
  text-align: right;
  vertical-align: middle;
}

.article-foot .article-author i {
  font-size: 1.25rem;
  position: relative;
  top: .25rem;
}

@media(max-width: 768px) {
  .article-head h1 {
    font-size: 1.75rem;
  }
	
.topmain h2 {
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  margin: 10px;
  line-height: 140%;
  color: #f17816;
}	
	.editor-content dl{
   margin-bottom:20px;		
	}	
	
}

/*エディタコンテンツ*/
.editor-content p code,
.editor-content p img,
.editor-content p iframe,
.editor-content p object,
.editor-content figure img,
.editor-content figure iframe,
.editor-content figure video,
.editor-content figure audio,
.editor-content pre code {
  margin-bottom: 0;
}

.editor-content th,
.editor-content td {
  border-color: #ddd;
}

.editor-content p,
.editor-content ul,
.editor-content ol,
.editor-content table,
.editor-content dl,
.editor-content blockquote,
.editor-content pre,
.editor-content code,
.editor-content img,
.editor-content picture img,
.editor-content figure,
.editor-content iframe,
.editor-content object,
.editor-content hr,
.editor-content video,
.editor-content audio {

  letter-spacing: 1px;
}

.editor-content b,
.editor-content strong {
  font-weight: bold;
}

.editor-content a {
  text-decoration: none;
}

.editor-content ul:not([class]) {
  padding-left: 1.25em;
  list-style: disc;
}

.editor-content ol:not([class]) {
  padding-left: 1.875em;
  list-style: decimal;
}

.editor-content table {
  width: 100%;
}
.editor-content table thead {
  border: none;
}
.editor-content table th,
.editor-content table td {
  box-sizing: border-box;
  padding: .625em;
  text-align: left;
  vertical-align: middle;
  border: 1px solid #ddd;
}
.editor-content img,
.editor-content iframe,
.editor-content object,
.editor-content video,
.editor-content audio {
  line-height: 1;
}
.editor-content figure {
  max-width: 100%;
}

.editor-content iframe,
.editor-content object {
  width: 100%;
}

.editor-content blockquote {
  line-height: 1.5;
  position: relative;
  padding: 3.125em 1.875em .625em;
  color: #555;
  background-color: #f1f4f4;
}

.editor-content blockquote::before {
  font-family: "Material Symbols Outlined";
  font-size: 1.875em;
  font-weight: 900;
  position: absolute;
  top: .3125em;
  left: .9375em;
  content: "\e244";
  color: #ccc;
}

.editor-content blockquote p,
.editor-content blockquote cite {
  margin-bottom: 1em;
}

.editor-content blockquote p cite {
  margin-bottom: 0;
}
.editor-content blockquote cite {
  font-size: .6125em;
  display: block;
  text-align: right;
}

.editor-content h2,
.editor-content h3,
.editor-content h4,
.editor-content h5 {
  line-height: 1.4;
  margin: 3rem 0 2rem;
  letter-spacing: 1px;
}

.editor-content h2 {
  font-size: 1.875rem;
  padding: .75rem 0;
  border-bottom: solid 5px #f17816;
}

.editor-content h3 {
  font-size: 1.5rem;
  padding: 0 1rem;
  border-left: solid .375rem #415671;
  background: transparent;
}

.editor-content h4 {
  font-size: 1.25rem;
}

.editor-content h5 {
  font-size: 1.125rem;
}

@media (max-width: 768px) {
  .editor-content p,
  .editor-content ul,
  .editor-content ol,

  .editor-content blockquote,
  .editor-content pre,
  .editor-content code,
  .editor-content img,
  .editor-content picture img,
  .editor-content figure,
  .editor-content iframe,
  .editor-content object,
  .editor-content hr,
  .editor-content video,
  .editor-content audio {

	line-height: 115%;  
    margin-bottom: 1.5em;
  }

  .editor-content th,
  .editor-content td {
    padding: .625em;
  }

  .editor-content blockquote {
    padding: 2.5em 1.875em 1.875em;
  }

  .editor-content blockquote::before
  .editor-content blockquote::after {
    font-size: 1.25em;
  }

  .editor-content blockquote p,
  .editor-content blockquote cite {
    margin-bottom: .625em;
  }

  .editor-content h2,
  .editor-content h3,
  .editor-content h4,
  .editor-content h5 {
    margin: 2rem 0;
  }

.editor-content h2 {
  font-size: 1.5rem;
  padding: 0rem 0;
  line-height: 180%;
  border-bottom: solid 5px #f17816;
}	
	
	
	
  .editor-content h2 {
    font-size: 1.5rem;
  }
  .editor-content h3 {
    font-size: 1.375rem;
  }
  .editor-content h4 {
    font-size: 1.25rem;
  }
  .editor-content h5 {
    font-size: 1rem;
  }
  .editor-content h6 {
    font-size: .9375rem;
  }
}


@media (max-width: 768px) {
  .editor-content h2 {
    font-size: 1.25rem;
  }
  .editor-content h3 {
    font-size: 1.125rem;
  }
  .editor-content h4 {
    font-size: 1rem;
  }
  .editor-content h5 {
    font-size: .9375rem;
  }
  .editor-content h6 {
    font-size: .875rem;
  }
}

/*サイドバーウィジェット*/
.sidebar-wrapper {
  margin-bottom: 2rem;
}

.sidebar .sidebar-title,
.sidebar .wp-block-heading {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 1rem;
  padding: .375rem;
  letter-spacing: 1px;
  border: 0;
  border-bottom: .1875rem solid #1d2d43;
}

.sidebar a {
  text-decoration: none;
  color: #333;
}

.sidebar ul {
  list-style: none;
}

.sidebar li {
  border-bottom: 1px solid #ddd;
}

.sidebar li a {
  display: block;
  padding: .5rem;
}

.sidebar select {
  display: block;
  width: 100%;
  padding: .5rem;
  border: 1px solid #ddd;
}

/*ページタイトル*/
.page-title-wrap {

}

.page-title-wrap .page-title .text-warp {
  text-align: center;
}


.text-warp img {
width:100%;
}

.pan {
width:1200px;
margin: 0px 0px 0px 30px;
}

.youtube {
  width: 50%;
  aspect-ratio: 16 / 9;
  margin: 0 auto;

}
.youtube iframe {
  width: 100%;
  height: 100%;
}

p.app {
  margin-top: 20px;
}




@media(max-width: 768px) {
  .page-title-wrap{
   margin-top: 50px;
  }

.audiotop {
  padding-top: 30px!important;	
}	
	
.text-warp img {
width: 100%;
height: 100%;}
	
.schoollist img {
width: 80%!important;	
height: 80%!important;	
	}	

p.app {
  margin-top: 30px;
  text-align:left!important;
}	
	
.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}	

  .page-title-wrap .page-title .text-warp h1 {
    font-size: 2rem;
  }
}

/*記事アーカイブ*/
.article-list {
  display: grid;

  gap: 2rem;
  grid-template-columns: repeat(2, 1fr);
}

.article-list .article-item {
  position: relative;
  z-index: 1;
  border: 1px solid #ddd;
}

.article-list .article-item a {
  display: block;
  text-decoration: none;
  color: #333;
}

.article-list .article-item img {
  display: block;
  width: 100%;

  aspect-ratio: 3/2;
  object-fit: cover;
}

.article-list .article-item .text-wrap {
  padding: 1rem;
}

.article-list .article-item .article-cat {
  font-size: .875rem;
  line-height: 1;
  display: inline-block;
  margin-right: .5rem;
  padding: .25rem .5rem;
  vertical-align: middle;
  text-decoration: none;
  color: #fff;
  background-color: #03162f;
}

.article-list .article-item .article-date {
  font-size: .875rem;
  display: inline-block;
  vertical-align: middle;
  color: #888;
}

.article-list .article-item .article-date i {
  font-size: 1rem;
  position: relative;
  top: .1875rem;
  margin-right: .125rem;
}

.article-list .article-item .text-wrap h2 {
  font-size: 1rem;
  font-weight: 500;
  margin-top: .5rem;
}

@media(max-width: 768px) {
  .article-list {
    display: block;

    gap: none;
    grid-template-columns: none;
  }

  .article-list .article-item {
    margin-bottom: 2rem;
  }
}


/*ページネーション*/
.pagination {
  margin: 4rem 0;
  text-align: center;
}

.pagination ul {
  font-size: 0;
}

.pagination ul li {
  font-size: 1rem;
  display: inline-block;
  margin-right: .75rem;
}

.pagination ul li:last-child {
  margin-right: 0;
  border: 0;
}

.pagination ul li a,
.pagination ul li .current {
  font-weight: 600;
  line-height: 1;
  display: block;
  padding: .75rem .875rem;
  border: 1px solid #ddd;
}

.pagination ul li a {
  text-decoration: none;
  color: #555;
}

.pagination ul li .current {
  color: #fff;
  background-color: #1d2d43;
}

.pagination ul li .prev,
.pagination ul li .next {
  padding: .75rem .5rem;
  border: 0;
}

.pagination ul li i {
  font-size: 1rem;
  color: #1d2d43;
}

@media(max-width: 768px) {
  .pagination {
    margin: 3rem 0;
  }

  .pagination ul li a {
    padding: .5rem;
  }
}

/*home*/
.home-fv-wrap {
  margin-bottom: 2rem;
}

.home-fv-wrap img {
  display: block;
  width: 100%;
  height: min(31.25rem, 46.5vw);

  object-fit: cover;
}

.wrapper {
  margin: 0px auto 0px auto;
  width:1200px;

}
.wrapperb {
  margin: 0px auto 0px auto;
  width:1200px;

}
#wraptopa {
  width:100%;
  background-color: #fef6d9;
}
	
#wraptopb {
  width:100%;
  background-color: #edeaf5;
}

.wrapperc {
  margin: 0px auto 0px auto;
  width:1200px;

}
#wraptopc {
  width:100%;
  background-color: #fff;
}
	




@media(min-width: 768px) {
  .home-fv-wrap img {
    height: auto;
  }
  .home-article-list {
    grid-template-columns: repeat(3, 1fr);
  }
}


/*ヘッダー固定*/
header {
  position: fixed;
    z-index: 9999;
    top: 0;
    width: 100%;
    background-color: #fff;
    height: 88px;
}


.spacer {
height: 30px;
width: 0px;
}

a:hover img{
	opacity:0.5;
	-moz-opacity:0.5;
	filter:alpha(opacity = 50);
}



@media(max-width: 768px) {
header {
       height: 55px;
}
.wrapper {
  margin-top: 65px;
  width:100%;
}
.wrapperb {
  margin-top: 57px;
  width:100%;
}	
	
.wrapperc {
  margin-top: 57px;
  width:100%;
}		
	
.spacer {
height: -20px;
width: 0px;
}

div.pan {
display:none;
width:80%;
margin: auto;
}


}

.form_wrap {

	
	
}



/*ボタン*/
.border01{
     font-size:100%;
	 display:block;
     width: 150px;
     height:40px;
     padding-top:10px;
     text-align: center;
     border:solid 1px #e87949;
	 margin:0px auto;

}


.container2 {
  display: flex;
  flex-wrap: wrap;
}
.column2 {
  width: 100%;
}

@media (min-width: 768px) {
  .column2 {
    width: 50%;
  }
}



a.btn_02 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	font-weight: bold;
	border: 2px solid #27acd9;
	width:30%;
	margin: 10px auto;
	color: #27acd9;
	transition: 0.5s;
        padding:10px;
}
a.btn_02:hover {
	color: #fff;
	background: #27acd9;
}

/*FAQ*/
.accordion {
	margin: 4rem auto;
	max-width: 80%;
}

.toggle {
	display: none;
}

.faq {
	position: relative;
	margin-bottom: 2rem;
}

.question,.anser {
	transform: translateZ(0);
	transition: all 0.3s;
}

.question {
	border: solid 1px #999;
	padding: 1rem 2.2rem 1rem 1rem;
	display: block;
	color: #333;
}

.question span,.anser span {
    font-size: 160%;
    padding-right: 0.6rem;
    color: #c30a01;
    line-height: 0;
}

.question:after,.question:before {
	content: "";
	position: absolute;
	right: 1.25rem;
	top: 0;
  bottom: 0;
  margin: auto;
	width: 2px;
	height: 0.75rem;
	background-color: #999;
	transition: all 0.3s;
}

.question:after {
	transform: rotate(90deg);
}

.anser {
	max-height: 0;
	overflow: hidden;
}

.anser div {
	margin: 0;
	padding: 2rem 1rem 2rem;
	line-height: 1.8;
}

.toggle:checked + .question + .anser {
	max-height: 500px;
	transition: all 1.5s;
}

.toggle:checked + .question:before {
	transform: rotate(90deg) !important;
}




/*横並び新*/
.narabi {
display: flex;
list-style: none;
padding: 0;
width: 100%;
background: #01558d;
color: white;
}
.narabi li {
width: 100%;
text-align: center;
padding: 10px 0;
}








/*セミナー表*/
#tabledeminer th, #tableseminer td {
 
  table-layout:fixed;
  min-width:100px;
  padding: 10px;
  height: 60px;
}

.wp-block-table th {
background: #e6e6e6;
text-align: center !important;
font-weight: 900;
}

th.day {
	width:20%;
}
th.erea {
	width:10%;
}
th.shop {
	width:40%;
}
th.qa {
	width:20%;
}
th.flyer {
	width:3%;
}
th.sem {
	width:7%;
}




/* tab */
@media only screen and (max-width: 768px) {
  #tableseminer {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
  }
	
  .yokonarabe30>div.conm2{
 margin-top: 0px;  
} 	

	
	
}



/*2カラム*/
@media(min-width:768px){
  /*PC版のみ*/
  .yokonarabe{
    display:flex;
    width:100%;
    margin:0;
	padding:20px 0px 20px 0px;

  }
	
  .yokonarabe3{
   display:flex;
    width:100%;
    margin:0;
    padding:0 20px 0 20px;
 

  }
	
  .yokonarabe30{
   display:flex;
    width:100%;
    margin:0;
    padding:0 20px 0 20px;
	flex-direction: column;
	align-items: center;
 

  }	
	
  .yokonarabe30>div.conm1{
    padding:5px 0px 0px 0px;
	width:800px;
	height: 477px;
    font-size: 4em;
	font-weight: 900;
  }
  .yokonarabe30>div.conm2{
    padding:0px 0px 0px 0px;
	width:45%;

	  

  } 
	
/*園詳細*/	
	
  .yokonarabe31{
   display:flex;
   justify-content: flex-end;	  
    width:100%;
    margin-top: 10px;
    padding:0 0px 0 0px;
 

  }	
	
  .yokonarabe31>div.conm11{
    padding:0px 0px 0px 0px;
	width:50%;

  }
  .yokonarabe31>div.conm21{
    padding:0px 0px 0px 0px;
	width:50%;

	  

  } 	
	
	
	
	div.conm2 p.sc {
	 font-size: 1rem;
	 line-heignt: 100%;
	 margin-bottom: 20px;
	 		
	}
	
	div.conm2 p.sc2 {
	 font-size: 1rem;
	 line-heignt: 100%;
	 margin-bottom: 20px;
	 		
	}
	

  .yokonarabe3>div.con1{
    padding:20px 10px 20px 0px;
	width:50%;
    font-size: 4em;
	font-weight: 900;
  }
  .yokonarabe3>div.con2{
    padding:20px 10px 20px 0px;
	width:50%;
    font-size: 4em;
	font-weight: 900;
	  

  } 
	
	.sma {
	font-size: 40%;	
		
	}
	
	
	
	/*音源ページ*/
	
	
	
  .yokonarabe4{
   display:flex;
    width:100%;
    margin:0;
    padding:0px 20px 60px 20px;
  }

  .yokonarabe4>div.con15{
    padding:20px 10px 0px 0px;
	width:50%;

  }
  .yokonarabe4>div.con2{
    padding:20px 0px 20px 20px;
	width:50%;

  } 	

	
  .yokonarabe44{
   display:flex;
    width:90%;
    margin:0;
    padding:0px 0px 0px 20px;
  }

  .yokonarabe45{
   display:flex;
    width:100%;
    margin:0;
    padding:0px 20px 0px 20px;
  }
	
	
  .yokonarabe44>div.con15{
    padding:20px 10px 0px 0px;
	width:50%;

  }	
	
  .yokonarabe45>div.con16{
    padding:20px 10px 0px 0px;
	width:100%;

  }	
	

	
	

  .yokonarabe44>div.con25{
    padding:20px 10px 0px 0px;
	width:40%;

  }	
	
  .yokonarabe44>div.con26{
    padding:20px 10px 0px 0px;
	width:60%;

  }	
	
	.flexbox img {
	border: solid 1px #848383;
		
	}	
	
  .yokonarabe44>div.con35{
    padding: 10px 0px 10px 20px;
	width:26%;

  }	
	
  .yokonarabe44>div.con36{
    padding:-10px 10px 0px 0px;
	width:40%!important;

  }		
	
	
	
  .yokonarabe2{
    display:flex;
    width:80%;
    margin:auto;
	text-align:left;

  justify-content:center; /*これを指定*/  
  }
  .yokonarabe2>div.con3{
    width:100%;
	margin-right:10px;
  }
  .yokonarabe2>div.con4{

	width:30%;
  }
  .yokonarabe2>div.con5{
    width:60%;
	margin-right:20px;
  }
  .yokonarabe2>div.con6{

	width:40%;
  }

  .yokonarabe2>div.con7{
    width:60%;
	margin-right:10px;
  }
  .yokonarabe2>div.con8{

	width:40%;
  }	

  .yokonarabe2>div.con9{
    margin-top:-20px;
	width:70%;
	margin-left:5px;
	margin-right:15px;  
  }
  .yokonarabe2>div.con10{
    margin-top:-10px;
	width:30%;
  }	
	
  .yokonarabe2>div.con39{
    margin-top:-20px;
	width:80%;
	margin-left:5px;
	margin-right:0px;  
  }
  .yokonarabe2>div.con40{
    margin-top:-10px;
	width:20%;
  }		
	
  .yokonarabe2>div.con29{
    margin-top:-18px;
	padding-top:5px;
	width:55%;
	margin-left:10px;
	margin-right:15px;  
  }
  .yokonarabe2>div.con20{
    margin-top:-10px;
	width:45%;
  }		
	
	
  .yokonarabe2>div.con49{
    margin-top:-18px;
	padding-top:5px;
	width:65%;
	margin-left:10px;
	margin-right:15px;  
  }
  .yokonarabe2>div.con40{
    margin-top:-10px;
	width:35%;
  }		
	

h6 { font-size:1.1em;
	 margin:0px 0px 10px 5px;
	 font-weight: bold;
	}
	
.spacer {
	display: none !important;	
	}
.spacer2 {
	display: none !important;	
	}
	
  }

p.supp2 {
	margin-top:30px;
}

p.supp {
	margin-right:15px;
	margin-top: 8px;
}
p.app8 {
	margin-bottom:-5px;
}

.yokonarabe6{
    display:flex;
    width:80%;
    margin:-40px auto;

  }
  .yokonarabe6>div.con11{
    width:50%;
	margin: 0px 5px;  

  }

  .yokonarabe6>div.con111{
    width:50%;
	margin: 0px 5px;  

  }

  .yokonarabe6>div.con15{
    width:50%;
	margin: 0px 5px;  

  }
  .yokonarabe6>div.con12{
    margin: 0px 5px;

	width:50%;
  }

  .yokonarabe6>div.con13{
    margin: 0px 5px;
    padding-top:0px;  
	width:50%;
  }
  
  .yokonarabe5{
   display:flex;
    width:100%;
    margin:-10px auto 50px auto;

  }

  .yokonarabe5>div.con1{
    padding:5px 20px 0px 20px;
	width:49%!important;
	margin-right:10px;  
	background-color: #fef6d9;
	border-bottom:0px solid #000!important;
 
  }
  .yokonarabe5>div.con2{
    padding:5px 20px 0px 20px;
	width:49%!important;
	margin-left:10px;
    background-color: #edeaf5;
  
  }

 .yokonarabe7{
   display:flex;
    width:100%;
    margin:-30px auto 50px auto;

  }


  .yokonarabe7>div.con3{
    padding:5px 20px 0px 20px;
	width:50%!important;
	margin:0px auto;  
    border-bottom:0px solid #000!important;
	border:1px thin #ccc!important;  
  }

p.pageno {
	font-size:80%;
	color:#666;
	}

p.pageno2 {
	font-size:80%;
	color:#666;
	}

.lessontxt {
	font-size:80%;
	}

p.appu {
	margin:0px 0px -3px 15px;
	}

p.seminer {
	margin:0px 0px -3px 0px;
	}

.sp-only {
	display: none;
}
.pantop {
padding-top: 100px!important;		
	}	

.topup {
padding-top: 65px!important;		
	}

.anchor{
    display: block;
    padding-top: 88px!important;
    margin-top: -88px!important;
}

p.scale {
	margin-top: 1em;
	font-size: 110%;
	font-weight: 900;
}

.indent{
  font-size: 90%;
  text-indent: 1em;
　line-height: 70%!important;
  margin-top:-3px;
}
.indent2{
  font-size: 90%;	
　line-height: 100%!important;
}

@media(max-width:768px){
  /*すまほ*/

.indent2{
  margin: -3px opx!important;
  font-size: 90%;	
　line-height: 1!important;
}	
	
p.scale {
	margin-top: 1em;
	font-size: 80%!important;
	font-weight: 900;	
}
	
	
.anchor{
    display: block;
    padding-top: 55px!important;
    margin-top: -55px!important;
}	
	
p.topspacer {
	padding-bottom:50px!important;
}	
.topup {
padding-top: 0px!important;		
	}	

.pantop {
padding-top: 0px!important;		
	}	
	
.sp-only {
	display: block;
	font-size:100%!important;
	text-align: right;
}
	
h1 {font-size:180%!important;}
h3 {font-size:140%!important;
	font-weight:900!important;}	
	
	
p.seminer {
	margin:0px 0px 0px 0px;
	}
	
p.seminer2 {
	margin:0px 0px 0px 0px;
	}
p.appu {
	margin:0px 0px 0px 0px!important;
	}	
	
.yokonarabe5{
    display:block;
    width:100%;
    margin:0px auto 0px auto;
	padding-bottom:10px!important;

  }	
 .yokonarabe5>div.con1{
	width:100%!important;
	 padding:5px 8px!important;
	border-bottom:0px solid #000!important;
	margin-left: -8px;
  }
 .yokonarabe5>div.con2{
    margin-left: -6px;
		width:100%!important;
	 padding:5px 8px!important;

  }
	
.yokonarabe7{
    display:block;
    width:100%;
    margin:0px auto 0px auto;
	padding-bottom:80px!important;

  }	
 .yokonarabe7>div.con3{
	margn-left: 30px!important;
	width:88%!important;

  }	
	
h4.mom8 {
	color: #333;
	font-weight:900;
	text-align: center;
	font-size:140%;
}	

p.supp {
	margin-right:0px!important;
}

p.pageno {
	font-size:100%!important;
	
	}
	
p.pageno2 {
	font-size:70%!important;
	
	}	
	
  .yokonarabe4>div.con15{
    padding:0px 0px 100px 0px;
	

  }	
	

	
	
  .yokonarabe44>div.con25{
    margin:-60px 0px 0px 0px!important;
	

  }		
	
  .yokonarabe44>div.con35{
    padding:0px 0px 0px 10px!important;
	

  }	
	  .yokonarabe44>div.con36{
    padding:0px 0px 0px 0px;
	

  }	
	
  .yokonarabe44>div.con26{
    padding:0px 0px 100px 0px;
	
	  
	  

  }		
  .yokonarabe2>div.con10{
    margin-top:0px!important;
	margin-bottom:-60px!important;
  }	
	
  .yokonarabe2>div.con40{
    margin-top:0px!important;
	margin-bottom:-60px!important;
  }	
	
  .yokonarabe2>div.con20{
    margin-top:0px!important;
	margin-bottom:-60px!important;
  }		
	
.yokonarabe6{
    display:block;
    width:100%;
    margin:50px auto 0px auto;

  }
  .yokonarabe6>div.con11{
    width:100%;
	margin: 0px 0px 5px 0px;  

  }
	
  .yokonarabe6>div.con111{
	width:100%;
	margin: 0px 0px 0px 0px!important;  
	padding-top:20px!important;   
	margin-bottom:-50px!important;  
  }	
	
p.mov1 {
	margin-bottom:80px!important;
	}
  .yokonarabe6>div.con12{

	margin: 0px 0px;
	width:100%;
  }	
	
 .yokonarabe6>div.con13{; 
	margin: 0px 5px 0px 0px!important;   
	width:100%;
  }		
	
	h5.mo1 {
    margin-top: -80px!important; 		
	font-size:120%!important;

	}
	
	h5.mo11 {
    margin-top: -80px!important; 		
	font-size:120%!;

	}	
	
 .yokonarabe2>div.con9{
    margin-top: 0px!important;
	margin-bottom: -20px!important; 
	width:100%!important;
	margin-left: 0px!important;
	margin-right: 0px!important; 
	text-align: center!important;
  }	
	
 .yokonarabe2>div.con39{
    margin-top: 30px!important;
	margin-bottom: -20px!important; 
	width:100%!important;
	margin-left: 0px!important;
	margin-right: 0px!important; 
	text-align: left!important;
  }		
	
 .yokonarabe2>div.con29{
    margin-top: 30px!important;
	margin-bottom: -20px!important; 
	width:100%!important;
	margin-left: 0px!important;
	margin-right: 0px!important; 
	text-align: center!important;
  }		
	
 .yokonarabe2>div.con49{
    margin-top: 30px!important;
	margin-bottom: -20px!important; 
	width:100%!important;
	margin-left: 0px!important;
	margin-right: 0px!important; 
	text-align: center!important;
  }		
	
.uscore {
		display: none;
	}	
	
 .con1{
    position: relative;
}
 .con1 a{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    text-indent: 100%; 
    white-space: nowrap; 
    overflow: hidden; 
  }
  .con1 a:hover{
        opacity:0.6;
        filter: alpha(opacity=60);
        -ms-filter: "alpha( opacity=60 )";
        background: #fff;
  }

 .con2{
    position: relative;
}
 .con2 a{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    text-indent: 100%; 
    white-space: nowrap; 
    overflow: hidden; 
  }
  .con2 a:hover{
        opacity:0.6;
        filter: alpha(opacity=60);
        -ms-filter: "alpha( opacity=60 )";
        background: #fff;
  }

 .yokonarabe{
    position: relative;
}
 .yokonarabe a{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    text-indent: 100%; 
    white-space: nowrap; 
    overflow: hidden; 
  }
  .yokonarabe a:hover{
        opacity:0.6;
        filter: alpha(opacity=60);
        -ms-filter: "alpha( opacity=60 )";
        background: #fff;
  }	

	
	
h4.mom,
p.mom2	
	{
	margin-top:20px!important;
	text-align:left!important;

	}	
p.mom10	
	{
	margin-top:20px!important;
	text-align:center!important;

	}	
h4.mom5
	{
	text-align:left!important;
	padding:20px 0;
	}
p.mom6	
	{
	margin-bottom:-5px!important;
	text-align:left!important;
	line-height: 150%!important;
	}	
  .page-title-wrap {
    width:100%;
    margin:0 auto!important;
  }
	

 .contents {
    width: 100%;

	}	

	
 .yokonarabe{
    width:93%;
    margin:10px auto;
    padding:5px 0px; 
 
  }	

  .yokonarabe3{
    width:93%;
   padding:5px 0px; 
     margin:10px auto;

  }	
	
	
	
	
	
  .yokonarabe5{
    width:93%;
   padding:5px 10px; 
     margin:10px auto;

  }	
	
  .yokonarabe4{
    width:93%;
   padding:5px 0px; 
     margin:10px auto;

  }		
	
  .yokonarabe44{
    width:93%;
   padding:5px 0px; 
     margin:10px auto;

  }		
	
  .yokonarabe45{
    width:93%;
   padding:5px 0px; 
     margin:10px auto;

  }	
 .yokonarabe2>div.con3{
	margin:10px;
  }
 .yokonarabe2>div.con4{

	margin:10px;
  }	
	
 .yokonarabe2>div.con5{
	margin:10px;
  }
 .yokonarabe2>div.con6{

	margin:10px;
  }

.yokonarabe2>div.con7{
	margin:10px;
  }
 .yokonarabe2>div.con8{

	margin:10px;
  }	
	
  .con1{
    padding-bottom:10px;
	border-bottom:1px solid #333;
	margin-bottom:20px !important;
  }	
	
  .con2{

	margin-top:20px !important;
  }	
	
.spacer {
	margin-top:-30px;	
	}

	
.yokonarabe>div.con0{
  padding:20px;
  margin:0 0;
  border-top:0px solid #fff;
  border-left:0px solid #fff;
  border-right:0px solid #fff;
  border-bottom:0.5px solid #333;
	
	
  border-bottom:1px solid #333;  
  background:#fff;

}
.yokonarabe>div.con1{
  padding:20px;	
  margin:0 0;
  border-top:0.5px solid #333;
  border-left:0px solid #333;

  border-bottom:0.5px solid #333;
  background:#fff;
  height: 300px;
}
.yokonarabe>div.con2{
  padding:20px;
  margin:0 0;
  border-top:0.5px solid #333;
  border-left:0.5px solid #333;
  border-right:0px solid #333;
  border-bottom:0.5px solid #333;
  background:#fff;
  height: 300px;
}
	
a.adva{
	
}
a.adva:hover{
	
}
a.adva::before{
	
}
a.adva:hover::before{
}

  .yokonarabe3>div.con1{
	margin-top: -10px;  
    padding:　0px 10px 20px 0px;
	width:100%;
    font-size: 2rem;
	font-weight: 900;
  }
  .yokonarabe3>div.con2{
    padding:20px 10px 20px 0px;
	width:100%;
    font-size: 2rem;
	font-weight: 900;
	  

  } 



}



.yokonarabe3 img {
  border:1px solid #999; 
}

.yokonarabe30 img {
  border:1px solid #999; 
}
.yokonarabe5 img {
  border:1px solid #999; 
}

.con8 img {
  border:none;	
}


/*ボックスリンク*/
.linkbox {
    position: relative;
	background-color: "#cc0000"
}
.linkbox a {
    position: absolute;
    top: 0;
    left: 0;
    height:100%;
    width: 100%;
}


.linkbox a:hover{/* マウスオーバー時に色変更*/
    opacity:0.3;
    filter: alpha(opacity=60);
    -ms-filter: "alpha( opacity=60 )";
    background: #fff;

}



h3.top3 {
	font-weight: 600;
	font-size:130%;
	margin-top:20px;
	margin-bottom:20px;

}


h3.top4 {
	font-weight: 600;
	font-size:130%;
	margin-bottom:20px;

}


h5.top5 {
	font-weight: 600;
	font-size:150%!important;
	margin-bottom:0px;
	text-align: center!important;

}



.uscore {
	margin:20px 20px 0px 0px;
	width:90%;
}

.uscore img {
	border: none;
}

.uscore2 {
	margin:0px 0px 0px 0px;
	width:100%;
}

.uscore2 img {
	border: none;
}


.uscore3 {
	margin:-40px 0px 0px 0px;
	width:100%;
}

.uscore3 img {
	border: none;
}

.mom {
   font-size: 1.2em;
	
}

h4.mom8 {
	color: #333;
	font-weight:900;

}

a.adva{
	position: relative;
	text-decoration: none;
	color: #333;
	transition: 0.3s;
}
a.adva:hover{
	color: #0055df;
}
a.adva::before{
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 0;
	height: 2px;
	background: #333;
	transition: 0.3s;
}
a.adva:hover::before{
	width: 100%;
}

a.advb{
	position: relative;
	text-decoration: none;

}
a.advb:hover{

}
a.adva::before{
	content: "";
	position: absolute;

}
a.adv:hover::before{
	width: 100%;
}

/*下層ページ*/
.spacer_t90 {
	margin-top: 90px;
}
.spacer_t10 {
	margin-top: 10px;
}
.spacer_30 {
	margin: 30px;
}

.parent {display: flex;}
.child {
	width: 400px;
    margin:0 auto;
}
@media(max-width: 768px) {
.uscore3 {
	margin: -15px 0px 0px 0px!important;
	width:100%;
}
	
.parent {
    flex-wrap: wrap;
    width:100%;
}
.child {
    max-width:400px;
	margin: 0 auto;
}}


/*画像差替えリンク*/
.scorecontainer {
　　max-width: 100%;
display: block !important;
} 
.scorecontainer2 {
　　max-width: 100%;
display: none !important;
} 

.pcimg, .spimg {
　　width: 100%;
　　height: auto;
}


#siro a:hover {
  opacity: 0.7;
}


/*FAQ*/
.accordion_area {}
.accordion_area .accordion_one .ac_header {
  background-color: #fff;
  border: 1px solid #fff;
  padding: 1.5rem 4rem 1.5rem 2rem;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition: .2s;
}



.accordion_area .accordion_one .ac_header .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.accordion_area .accordion_one .ac_header .i_box:before {
  border-top: 2px solid #014897;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.accordion_area .accordion_one .ac_header .i_box:after {
  border-left: 2px solid #014897;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.accordion_area .accordion_one .ac_header.open .i_box:after {
  height: 0;
}
.accordion_area .accordion_one .ac_inner {
  display: none;
  padding: 1.5rem 2rem 1.5rem 2rem;

  box-sizing: border-box;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .accordion_area .accordion_one .ac_header {
    padding: 1.5rem 2rem 1.5rem 1.0rem;
  }
  .accordion_area .accordion_one .ac_header .i_box {
    right: 0.8rem;
    width: 15px;
    height: 15px;
    margin-top: -7px;
  }
  .accordion_area .accordion_one .ac_header .i_box:before {
    width: 15px;
  }
  .accordion_area .accordion_one .ac_header .i_box:after {
    height: 15px;
    right: 7px;
  }
  .accordion_area .accordion_one .ac_inner {
    padding: 1.5rem 1.5rem 1.5rem 1.5rem;
  }
}

/*faq*/

.p-faq__headinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.7;
}
.p-faq__headinner::before {
  position: absolute;
  left: 0;
  content: "Q．";
  color: #40b3db;
  font-size: 120%;
  font-weight: bold;
}
.p-faq__headinner p.p-faq__q-txt {
  font-size: 120%;
}

@media screen and (max-width: 768px) {
  .p-faq__headinner {
    padding-left: 25px;
  }
  .p-faq__headinner::before {
    font-size: 16px;
  }
  .p-faq__headinner p.p-faq__q-txt {
    font-size: 16px;
  }
}
.p-faq__bodyinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.p-faq__bodyinner::before {
  position: absolute;
  left: 0;
  content: "A．";
  color: #f6ab00;
  font-size: 120%;
  font-weight: bold;
}
.p-faq__bodyinner p.p-faq__a-txt {
  font-size: 120%;
}
@media screen and (max-width: 768px) {
  .p-faq__bodyinner {
    padding-left: 25px;
  }
  .p-faq__bodyinner::before {
    font-size: 16px;
  }
  .p-faq__bodyinner p.p-faq__a-txt {
    font-size: 16px;
  }
	
/*商品名*/
h4.scorename {
  font-size: 120%;

}	

h6.k3 {
	margin-top:40px!important;
	margin-bottom: 0px!important;

}	
}

/*商品名*/
h4.scorename {
  margin-top: 50px;
  position: relative;
  padding-left: 1.6em;
  line-height: 1.4;
}

h4.scorename:before {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
  font-weight: 900;
  position: absolute;
  font-size: 1.4em;
  left: 0;
  top: -0.2em;
}
.scorename:before {
  color: #333;
}

/*商品名*/
h4.scorename2 {
  margin-top: 80px;
  margin-botton:-50px;
  position: relative;
  padding-left: 1.6em;
  line-height: 1.4;
}

h4.scorename2:before {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
  font-weight: 900;
  position: absolute;
  font-size: 1.4em;
  left: 0;
  top: -0.2em;
}
.scorename2:before {
  color: #333;
}


/*BOXリンク*/
.boxtext{
  width: 100px;
  height: 100px;
  margin: 0 auto;
}
.boxtext:hover{
  opacity:0.6;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=60 )";
  background: #fff;
}


.ct {
  text-align: center!important;	
}


/*囲み枠*/
.kakomi{
	text-align: center;
	margin: -20px auto 20px auto;
}
h6.k1 {
	background:#fedb4e; 
	padding:5px 30px; 
	word-break:break-all;
	text-align: center;
	display:inline-block; 
	
}
h6.k2 {
	background:#a594c6; 
	padding:5px 30px; 
	word-break:break-all;
	text-align: center;
	color: #fff;
	display:inline-block; 
	
}

h6.k3 {
	background:#a594c6;
	padding:5px 30px; 
	word-break:break-all;
	text-align: center;
	display:inline-block; 
	margin-top:40px;
	margin-bottom: -30px!important;
	color: #fff;
}


/*セミナー*/
.seminar1 {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    background: #fff;
    border: none;
}
.column1 {
	width: 30%;
	text-align: center;
}
.column2 {
	width: 10%;
	text-align: center;	
}
.column3 {
	width: 10%;
}
.column4 {
	width: 12%;
}
.column5 {
	width: 18%;
}
.column6 {
	width: 8%;
}




.seminar1 th,
.seminar1 td {
    font-size: 14px;
    background: #fff;
    border: 1px solid #fce7d4;
    padding: 8px;
    vertical-align: middle;
    box-sizing: border-box;
}
.seminar1 td {
	text-align: center;   
}
.seminar1 th {
    font-weight: 700;
    text-align: center;
}
.seminar1 thead th {
    color: #333;
    background: #fce7d4;
	text-align: center;
}
.seminar1 thead th {
    font-weight: 900;
}

.seminar1 tbody td {
  text-align: center;
}

.pdfb {
	background:#a8311a; 
	padding:3px 10px; 
	word-break:break-all;
	text-align: center;
	display:inline-block;
	color:#fff;
	border-radius:10px;
}

.pdfb:hover{
  opacity: 0.7;
}

.seminar1 tbody td:nth-child(1) {
	
	}
@media screen and (max-width: 768px) {
.seminar1 tbody td {
  text-align: center;
}	
	
  .seminar1 thead {
    display:none;
  }
  .seminar1 tr {
    background-color: unset;
  }
  .seminar1 th, .ex_seminar1 td {
    display: block;
    width: 100%;
    border: 0;
    border-bottom: 1px solid #fce7d4;
  }
  .seminar1 tbody th{
    background: #fce7d4;
    color:#fff !important;
    text-align: center;
  }
  .seminar1 tbody tr td {
    display: flex;
    flex-direction: row;
    gap: 5px;
  }
  .seminar1 tbody tr td:before{
    content: attr(data-label);
    width: fit-content;
    padding: 0.2em 1em;
    font-size: 12px;
    background: #808080;
    color:#fff;
	margin-right: 1em;  
  }
	

  .seminar1 tbody td:last-child::before{
    content: attr(data-label);
    display: inline-block;
    margin-right: 10px;
  }
  .seminar1 tbody td:last-child{
    display: flex;

  }
	

		

}




@media only screen and (max-width: 1020px) and (min-width: 769px) {
width: 100%;
.pan {
width:90%!important;
margin: auto;
}
.wrapperb {
  margin: 0px auto 0px auto;
  width:100% !important;
	

}

.wrapperc {
  margin: 0px auto 0px auto;
  width:100% !important;
	

}

.wrapper {
  margin: 0px auto 0px auto;
  width:100% !important;

}
	
a.btn_01 {
  font-size:70% !important;

}

 
h4.mom8 {
  margin-top: 20px !important;		
	}	

.mw-wp-form dd {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;

}

.box26 {
    width: 100%!important;

	position: relative;
    margin: auto;
    padding: 0em 1em;
    border: double 15px #16c4fd;
    border-radius: 15px;
	
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -25px;

    padding: 0 9px;
    line-height: 1;
    font-size: 1em;
    background: #FFF;
    color: #16c4fd;
    font-weight: 900;
	  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.box26 p {
    margin: 0; 
    padding: 0;
}

}

/* ▼ メニュー全体のバー（下のオレンジ帯） */
#header-nav-wrap {       /* オレンジ帯 */

}

/* ▼ navタグの中身の配置 */
#header-nav {
  max-width: 70%;
  margin: 0;
  padding-top: 0; 
	
	/* タブと帯の隙間調整 */
}

/* ▼ WordPress標準メニューのul */
#header-nav .menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
 justify-content: flex-start;	

}

/* ▼ 各メニュー項目 */
#header-nav .menu > li {
  margin: 0 3px 0 0;
}

/* ▼ タブの見た目 */
#header-nav .menu > li > a {
  display: block;
  padding: 10px 20px;
  background: #ffa726;         /* タブのオレンジ */
  color: #ffffff;
  font-size: 15px;
  font-weight: bold;
  text-decoration: none;
  border-radius: 10px 10px 0 0;   /* 上だけ角丸 */
　  box-shadow:
    0 0 0 1px #f0f0f0 inset,
    0 2px 3px rgba(0,0,0,0.25);
  white-space: nowrap;          /* 折り返さない */
  margin: 0; 
}

/* ホバー・現在ページ用 */
#header-nav .menu > li > a:hover,
#header-nav .menu > li.current-menu-item > a,
#header-nav .menu > li.current-menu-ancestor > a {
  background: #ffb74d;
}

/* ▼ 「お問い合わせ」だけ色を変える場合
   管理画面でこのメニュー項目に「contact-btn」等のCSSクラスを付けてください */
#header-nav .menu > li.contact-btn {
  margin-left: 20px;  /* これで右端へ寄る */
}


#header-nav .menu > li.contact-btn > a {
  background: #444444;
  box-shadow:
    0 0 0 1px #f0f0f0 inset,
    0 2px 3px rgba(0,0,0,0.25);
  font-size: 18px;
  line-height: 1.4;	
}

#header-nav .menu > li.contact-btn > a:hover,
#header-nav .menu > li.contact-btn.current-menu-item > a {
  background: #555555;
}

#header-nav .menu > li.contact-btn > a {
    position: relative;
  top: -8px;   /* ← この数値で浮かせる量を調整（4〜6pxがおすすめ） */
	  border-radius: 0;   
}


/* お問い合わせボタンの上にテキストを表示 */
#header-nav .menu > li.contact-btn {
  position: relative;
}

/* 上のテキスト */
#header-nav .menu > li.contact-btn::before {
  content: "入学随時・体験レッスン開催中!!"; /* ←表示したい文字 */
  position: absolute;
  top: -30px;              /* ボタンとの距離 */
  left: 50%;
  transform: translateX(-50%);
  font-size: 14px;
  font-weight: bold;
  color: #000;
  white-space: nowrap;
}

/* 元の文字を非表示 */
#header-nav .menu > li.interview-nico > a {
  font-size: 0;
  line-height: 1.2;
  text-align: center;   /* ← 中央揃え */
}

/* 上段「にこにこ」 */
#header-nav .menu > li.interview-nico > a::before {
  content: "にこにこ";
  display: block;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
}

/* 下段「インタビュー」 */
#header-nav .menu > li.interview-nico > a::after {
  content: "インタビュー";
  display: block;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
   line-height: 1;     /* ← 行の高さを詰める */
  margin-bottom: 0;   /* ← 下余白を消す */
  padding-bottom: 0;  /* ← 念のため */
}


@media screen and (max-width: 999px) {

 #header-nav .menu {
    display: block;
	    padding-top: 50px;     /* ← 上の余白（調整OK） */
    padding-left: 0;
    padding-right: 0;
  } 



  #header-nav .menu > li {
    margin: 0;
	width: 100%;  
  }

  #header-nav .menu > li > a {
    color: #fff;
width: 100%;
    box-sizing: border-box;
    padding: 14px 16px;
    text-align: left;   /* 左揃え（中央にしたければ center） */
	    background: transparent !important; /* オレンジ背景OFF */
    box-shadow: none !important;
    border-radius: 0 !important;  
	  
  }

  /* にこにこインタビューを1行に戻す（必要なら） */
  #header-nav .menu > li.interview-nico > a {
    font-size: 14px;
  }
  #header-nav .menu > li.interview-nico > a::before,
  #header-nav .menu > li.interview-nico > a::after {
    content: none;
	  color: #fff;
  }



  #header-nav .menu > li.interview-nico > a{
    text-align: left !important;
    align-items: flex-start !important; /* 以前flex指定してる場合の保険 */
  }
  #header-nav .menu > li.interview-nico > a::before,
  #header-nav .menu > li.interview-nico > a::after{
    text-align: left;
  }

  #header-nav .menu > li.contact-btn > a{
	mpaddding-left: -10px!important;
    text-align: left !important;
    align-items: flex-start !important; /* 以前flex指定してる場合の保険 */
  }
  #header-nav .menu > li.contact-btn > a::before,
  #header-nav .menu > li.contact-btn > a::after{
    text-align: left;
	padding-left: -10px!important;  
  }	
	
	
}


/* =========================
   タブレットは必ず幅100%（768〜1024）
   PC側(.header-nav-wrap width:70% + absolute)を完全に無効化
========================= */
@media (min-width: 768px) and (max-width: 1199px){

#header-nav .menu > li > a {

  padding: 10px 15px;
  font-size: 14px;
	}
	
#header-nav .menu > li.contact-btn::before {

  font-size: 13px;

 
}

	}


@media screen and (orientation: portrait) {

.svgfont {
    font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;	
} 
	
.navbutton {

	position: absolute;
    z-index: 10;
    top: 55%;
    right: 1.5rem;
    display: block;
    cursor: pointer;
    transform: translateY(-90%);
    border: 0;
    background-color: transparent;

	color: #333;
  }

  .navbutton:focus {
    outline: 0;
  }

  .navbutton::after {
    font-family: "Material Symbols Outlined";
    font-size: 2.5rem;
    content: "\e5d2";
    color: #333;
  }

  .menu-active .navbutton::after {
    font-family: "Material Symbols Outlined";
    font-size: 2.5rem;
	content: "\e5cd";
    color: #fff;
  }

  .header-nav-wrap {
    position: absolute;
    z-index: 9;
    top: 0;
    left: 0;
    display: none;
    overflow-y: auto;
    width: 100%;
    height: 100vh;
    background-color: rgba(0,0,0,0.71);
	/*background: #333;*/
	color: #fff;  
  }

  .header-nav {
    padding: 3rem 0;
  }

  .header-nav li a {
    font-weight: 50;
    padding: 1.5rem;
    /* text-align: center; */
	background: #fff;  
    color: #333;
  }
}







@media screen and (orientation: portrait) {

 #header-nav .menu {
    display: block;

	    padding-top: 200px;     /* ← 上の余白（調整OK） */
    padding-left: 0;
    padding-right: 0;
  } 


  #header-nav .menu > li {
    margin: 0;
	width: 100%;  
  }

  #header-nav .menu > li > a {
    color: #fff;
width: 100%;
    box-sizing: border-box;
    padding: 14px 16px;
    text-align: left;   /* 左揃え（中央にしたければ center） */
	    background: transparent !important; /* オレンジ背景OFF */
    box-shadow: none !important;
    border-radius: 0 !important;  
	    font-size: 18px;
	 	margin: 0em 0em 0em 1em !important; 
  }

  /* にこにこインタビューを1行に戻す（必要なら） */
  #header-nav .menu > li.interview-nico > a {
    font-size: 18px;
  }
  #header-nav .menu > li.interview-nico > a::before,
  #header-nav .menu > li.interview-nico > a::after {
    content: none;
	  color: #fff;
  }



  #header-nav .menu > li.interview-nico > a{
    text-align: left !important;
    align-items: flex-start !important; /* 以前flex指定してる場合の保険 */
  }
  #header-nav .menu > li.interview-nico > a::before,
  #header-nav .menu > li.interview-nico > a::after{
    text-align: left;
  }

}

@media screen and (orientation: portrait) {
	
.header-nav .menu-item-has-children > a {
     padding-bottom: 1em;
}
	
.header-nav .sub-menu li a {
     position: relative;
     padding: 1rem 1rem 1rem 3.75em;
}
	
.header-nav .sub-menu li a::before {
     position: absolute;
     top: 1.25em;
     left: 2.75em;
     display: block;
     width: .5em;
     height: .5em;
     content: "";
     border-bottom: 0px solid #fff;
     border-left: 0px solid #fff;

}
	
.mo11 {
    margin-top: -80px!important; 		
	font-size:105%!important;

	}
 .header-nav-wrap{
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
    z-index: 9998 !important;
  }

  /* nav自体を絶対に画面内に置く（上に飛ぶ原因のtop/transformを無効化） */
  #header-nav{
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }

  /* 余白は ul に入れず、navコンテナ側で作る（ズレない） */
  .header-nav{
    padding-top: 80px !important;   /* ←ここで開始位置を固定（55pxヘッダー+余白） */
    padding-bottom: 24px !important;
  }

  /* ul側の大きすぎるpaddingを撤廃（飛んだように見える原因） */
  #header-nav .menu{
    padding-top: 0 !important;      /* ← 200px を無効化 */
    margin: 0 !important;
  }
	
  /* 開いている間はボタンを画面右上に固定して最前面に */
  .menu-active .navbutton{
    position: fixed !important;
    top: 12px !important;
    right: 12px !important;
    transform: none !important;
    z-index: 10000 !important;   /* ← オーバーレイより大きく */
    display: block !important;
  }

  /* ×アイコンを白で表示 */
  .menu-active .navbutton::after{
    content: "\e5cd" !important;
    color: #fff !important;
  }
	
	
}

/* スマホで開いた時の表示を確実に固定（×もメニューも同じ条件で） */
@media screen and (orientation: portrait) {

  /* 開いたらオーバーレイを表示 */
  .menu-active #header-nav-wrap{
    display: block !important;
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    background: rgba(0,0,0,0.71) !important;
    overflow-y: auto !important;
    z-index: 9998 !important;
    transform: none !important;
	
  }

  /* navを画面内に固定（上に飛ぶ/戻る対策） */
  .menu-active #header-nav{
    display: block !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    z-index: 9999 !important;
  }

  /* 余白はここで管理（ulのpadding-top 200pxは無効化） */
  .menu-active #header-nav.header-nav{
    padding: 80px 0 24px !important;
  }

  .menu-active #header-nav .menu{
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;  /* ← 200px を殺す */
  }

  /* 文字：白・背景なしに統一（元の白背景に戻るのを防ぐ） */
  .menu-active .header-nav li a,
  .menu-active #header-nav .menu > li > a{
    color: #fff !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 14px 16px !important;
    display: block !important;
    text-align: left !important;
	margin: 0em 0em 0em 1em !important;
  }

  /* ×ボタンを常に右上固定＆最前面 */
  .menu-active .navbutton{
    position: fixed !important;
    top: 12px !important;
    right: 12px !important;
    transform: none !important;
    z-index: 10000 !important;
    display: block !important;
  }
  .menu-active .navbutton::after{
    content: "\e5cd" !important;
    color: #fff !important;
  }
}

.header-border{
  position: fixed;
  top: 84px;              /* ヘッダーの高さ */
  left: 0;
  width: 100%;
  height: 8px;
  background: #f17816;
  z-index: 10002;
  pointer-events: none;
}

/* 通常時 */
.header-border{
  opacity: 1;
  pointer-events: none;
  transition: opacity .2s ease;
}

/* メニューを開いた瞬間〜閉じ終わるまで完全に非表示 */
.menu-active .header-border{
  opacity: 0;
}



/* =========================
   ハンバーガーメニュー表示時
   「お問い合わせ」の左ズレを解消
========================= */
@media screen and (orientation: portrait){

  .menu-active #header-nav .menu > li.contact-btn{
    margin-left: 0 !important;   /* ← これが最重要 */
    padding-left: 0 !important;
  }
	
  /* 上に浮かせる指定を無効化 */
  .menu-active #header-nav .menu > li.contact-btn > a{
    top: 0 !important;
    margin-top: 0 !important;
  }

  /* 上のキャッチ文を完全に消す */
  .menu-active #header-nav .menu > li.contact-btn::before{
    content: none !important;
    display: none !important;
  }	

}


@media screen and (max-width: 999px) {

  .menu-active #header-nav .menu > li.contact-btn{
    margin-left: 0 !important;   /* ← これが最重要 */
    padding-left: 0 !important;
  }
	
  /* 上に浮かせる指定を無効化 */
  .menu-active #header-nav .menu > li.contact-btn > a{
    top: 0 !important;
    margin-top: 0 !important;
  }

  /* 上のキャッチ文を完全に消す */
  .menu-active #header-nav .menu > li.contact-btn::before{
    content: none !important;
    display: none !important;
  }	

}


.box26 {
    width: 70%;

	position: relative;
    margin: auto;
    padding: 0em 1em;
    border: double 15px #16c4fd;
    border-radius: 15px;
	
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -25px;

    padding: 0 9px;
    line-height: 1;
    font-size: 2.5em;
    background: #FFF;
    color: #16c4fd;
    font-weight: 900;
	  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.box26 p {
    margin: 0; 
    padding: 0;
}


.lessonm {
	font-size: 28%;
	margin-right: 10%;
	text-align: right;
}

.lessone {
	font-size: 25%;
	margin-left: 30%;
	margin-bottom: -20px;
	text-align: left;
}


.course-label{
  display: inline-flex;
  align-items: center;
  gap: 8px;                 /* アイコンと文字の間隔 */
  padding: 4px 6px;         /* 画像の余白感 */
  background: #fff;
}

.course-label__icon{
  width: 24px;
  height: 24px;
  display: inline-flex;
  flex: 0 0 24px;
}

.course-label__icon svg{
  display: block;
}

.course-label__text{
  font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: #4A4A4A;
  letter-spacing: 0.02em;
  white-space: nowrap;
}



/*TOP見出し２*/
h3.moretxt {
  font-size: 2em;
  text-align: center;
  font-weight: 900;
	
}

h3.schooltxt {
  margin-top:20px;
  margin-bottom: -10px;
  font-size: 2.5em;
  text-align: center;
  font-weight: 900;
  color: #f17816;
	
}


.enmei {
  font-weight:900;
  margin-top: -10px;
  text-align: center;
}

.enmei2 {
  font-weight:900;
  margin-top: -10px;
  text-align: center;
  font-size: 120%;

}

.enmei3 {
  margin-top:-10px;
  text-align: center;
  font-size: 70%;
  font-weight: normal!important;	
}

/*ボタン部分*/

a.call_btn {
  display: inline-block;
  width: auto;
  padding: 10px 50px;
  text-align: center;
  text-decoration: none;
  line-height: 60px;
  outline: none;
  color: #FFFFFF;
  background-color: #444;
  -webkit-transition: all .3s;
  transition: all .3s;
  font-size: 2em;
  font-weight: 900;
}
.call_btn:hover {
  color: #FFFFFF;
  background-color: #444;
  opacity: 0.7;
}

/* 以下はレイアウト調整用 */
.btnbody{
  vertical-align:middle; 
  padding: 10px 0;
  text-align: center;
}


a.corse:hover {
  color: #999999;
}


.schoollist {
     width: 90%;

    margin: auto;
    padding: 2em 3em;
    border: solid 1px #fff;
    border-radius: 20px;
	  background-color: #fce7d4;	
}	



.flexbox {
    flex-wrap: wrap; /* 画面幅に合わせてカラム落ちさせる */
    display: flex;
    justify-content: space-between;
    align-items: top
}

.flexbox .box {
    width: 25%;  /* お好みの幅で指定 */
    padding:10px;  /* お好みの幅で指定 */
    /* paddingと合わせてbox-sizingも指定 */
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box
}

/* 最後のコンテンツを左寄せにする指定 */
.flexbox:after {
    content: "";
    display: block;
    width: 25%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
}

.flexbox:before {
    content: "";
    display: block;
    width: 25%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
    order: 1;  /* 疑似要素beforeの順番を必ず指定する*/
}



.bottom-border{

  bottom: 50px;              /* ヘッダーの高さ */
  left: 0;
  width: 100%;
  height: 2px;
  background: #f17816;

}


.fotwrap {
     max-width: 1200px;
	margin-top:10px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1.5rem;
  padding-left: 1.5rem;

}

.fotad {
margin-left: 3em;
	margin-top: -10px;
	
}


/*FAQ2*/
.qa-list dl {
    position: relative;
    margin: 30px 0 0;
    cursor: pointer;
    border: 1px solid #fce7d4;
}
.qa-list dl:first-child {
  margin-top: 0;
}
.qa-list dl::after {
    position: absolute;
    top: 27px;
    right: 26px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}
.qa-list .open::after {
    transform: rotate(-45deg);
}
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 20px 20px 20px 60px;
    font-weight: bold;
    background: #fce7d4;
}
.qa-list dl dt::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    top: 20px;
    left: 20px;
    display: block;
    content: 'Q.';
    color: #f17816;
}
.qa-list dl dd::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    left: 20px;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #3285bf;
}
.qa-list dl dd {
    position: relative;
    margin: 0;
    padding: 20px 20px 20px 60px;
}
.qa-list dl dd p {
    margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}

@media screen and (max-width: 768px) {
 .qa-list dl {
    margin: 10px 0 0;
}
.qa-list dl:after {
    top: 20px;
    right: 20px;
    width: 7px;
    height: 7px;
}
.qa-list dl dt {
    padding: 16px 16px 16px 50px;
    font-size: 14px;
}
.qa-list dl dt::before {
    font-size: 14px;
    top: 20px;
    left: 20px;
}
.qa-list dl dd::before {
    font-size: 14px;
    left: 20px;
    margin-top: 5px;
}
.qa-list dl dd {
    margin: 0;
    padding: 16px 16px 16px 50px;
    font-size: 14px;
}
.qa-list dl dd p {
    margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}

/*問い合わせボタン*/	
a.call_btn {
  padding: 20px 50px;	
  width: 90%!important;
  line-height: 100%!important;
  font-size: 1.3rem!important;

}

.schoollist {
     width: 90%;

    margin: auto;
    padding: 1em 1em;
    border: solid 1px #fff;
    border-radius: 20px;
	  background-color: #fce7d4;	
}	



.flexbox {
    flex-wrap: wrap; /* 画面幅に合わせてカラム落ちさせる */
    display: flex;
    justify-content: space-between;
    align-items: top
}
	

.flexbox img{	
	
	border: solid 1px #808080;}

.flexbox .box {
    width: 50%;  /* お好みの幅で指定 */
    padding:5px;  /* お好みの幅で指定 */
    /* paddingと合わせてbox-sizingも指定 */
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box
}

/* 最後のコンテンツを左寄せにする指定 */
.flexbox:after {
    content: "";
    display: block;
    width: 50%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
}

.flexbox:before {
    content: "";
    display: block;
    width: 50%;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
    order: 1;  /* 疑似要素beforeの順番を必ず指定する*/
}
	
	
/*開催教室園名*/	

.enmei2 {
  font-weight:900;
  margin-top: -30px;
  text-align: center;
  font-size: 100%;
}

.enmei3 {
  margin-top: -5px;
  text-align: center;
  font-size: 70%;
  font-weight: normal!important;	
}
	
	
	

}

/* 共通 */
*, *:before, *:after {
  box-sizing: border-box;
}

/* グリッド */
.col_3 {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 20px;
}

.col_3 > * {
  width: calc(33.333% - 11px);
}

@media screen and (max-width: 768px) {
  .col_3 > * {
    width: calc(50% - 8px);
  }
}

@media screen and (max-width: 480px) {
  .col_3 > * {
    width: 100%;
  }
}

/* カード */
.box01 {
  background: #fff;
  border-radius: 14px;
  padding: 1.4em;
  min-height: 250px;

  border: 1px solid rgba(241, 120, 22, 0.25);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);

  position: relative;
  overflow: hidden; /* ← 重要：角丸でクリップ */
}

/* 上アクセントライン（角丸一致） */
.box01::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;

  background: linear-gradient(90deg, #f17816, #ffb36b);

  /* ← ここがポイント */
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
}

/* タイトル */
.box01 > div {
  text-align: center;
  font-weight: 700;
  font-size: 1.2rem;
  color: #f17816;
  margin-bottom: 10px;
}

/* 本文 */
.box01 p {
  line-height: 1.7;
  color: #555;
  font-size: 0.95rem;
  margin: 0;
}

/* SP調整 */
@media screen and (max-width: 768px) {
  .box01 {
    padding: 1.2em;
    border-radius: 12px;
    min-height: auto;
  }

  .box01::before {
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
  }

  .box01 > div {
    font-size: 1.1rem;
  }

  .box01 p {
    font-size: 0.92rem;
  }
}

.btnbody2{
 
  padding: 5px 20px;
  text-align: center;
}
a.call_btn2 {
  display: inline-block;
  width: auto;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  line-height: 30px;
  outline: none;
  color: #FFFFFF;
  background-color: #444;
  -webkit-transition: all .3s;
  transition: all .3s;
  font-size: 1rem;
  font-weight: 900;
}
.call_btn2:hover {
  color: #FFFFFF;
  background-color: #444;
  opacity: 0.7;
}



.scwrap {
  padding: 0 20px;
}
.subta {
  /*線の種類（二重線）太さ 色*/
  margin-top:20px;
  font-size:1.5rem;
  border-bottom: double 5px #f7931e;
  margin-bottom:10px;
  font-weight: 900;	
}


/*コース*/
.corce {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    background: #fff;
    border: none;
}
.column1c {
	width: 12.5%;
	text-align: center;
}




.corce th,
.corce td {
    font-size: 14px;
    background: #fff;
    border: 1px solid #ccc;
    padding: 8px;
    vertical-align: middle;
    box-sizing: border-box;
}
.corce td {
	text-align: center;   
}
.corce th {
    font-weight: 700;
    text-align: center;
}
.corce thead th {
        color: #fff;
    background: #f17816;
	text-align: center;
}
.corce thead th {
    font-weight: 900;
}

.corce tbody td {
  text-align: center;
}

.pdfb {
	background:#a8311a; 
	padding:3px 10px; 
	word-break:break-all;
	text-align: center;
	display:inline-block;
	color:#fff;
	border-radius:10px;
}

.pdfb:hover{
  opacity: 0.7;
}

.corce tbody td:nth-child(1) {
	
	}
@media screen and (max-width: 768px) {

	
  .corce thead {
    display:none;
  }
  .corce tr {
    background-color: unset;
  }
  .corce th, .ex_corce td {
    display: block;
    width: 100%;
    border: 0;
    border-bottom: 1px solid #ccc;
  }
  .corce tbody th{
        color: #fff;
    background: #f17816;
    text-align: center;
  }
  .corce tbody tr td {
    display: flex;
    flex-direction: row;
    gap: 5px;
  }
  .corce tbody tr td:before{
    content: attr(data-label);
    width: fit-content;
    padding: 0.2em 1em;
    font-size: 12px;
    background: #808080;
    color:#fff;
	margin-right: 1em;   
  }
	
	.corce tbody td:before {
		 content: attr(data-label);
    display: none;
	}
  .corce tbody td:before{
    content: attr(data-label);
    display: inline-block;
    margin-right: 10px;
  }
  .corce tbody td:last-child{
    display: flex;
  
  }
	

.scwrap {
  margin-top:20px;	
  padding: 0 0px;
}
.subta {
  /*線の種類（二重線）太さ 色*/
  font-size: 100%;
  border-bottom: double 5px #f7931e;
  margin-bottom:10px;
}	
	

  .lessonm{
    font-size: 100%;
  }	
	
	
}
	
	
	

  .yokonarabe50{
   display:flex;
   justify-content: flex-end;	  
    width:100%;
    margin:0;
    padding:0 0px 0 0px;
 

  }	
	
  .yokonarabe50>div.conm12{
    padding:0px 0px 0px 0px;
	width:20%;

  }
  .yokonarabe50>div.conm22{
    padding:0px 0px 0px 0px;
	width:80%;

	  

  } 

.nikoniko1 {
  display: flex;
  justify-content: center;
  margin-bottom:20px;	
}


.nikonikowrap img {
	border: 1px solid #333;}


.speechBubble {
  position: relative;
  display: inline-block;
  margin-left: -30px;
  padding: 16px;
  border: 5px solid #f17816;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: left;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  color: #000000;
}

.speechBubble::before {
  content: "";
  position: absolute;
  top: 52%;
  left: 0;
  border-style: solid;
  border-width: 16px 20px 16px 0;
  border-color: transparent #f17816 transparent transparent;
  translate: -100% -50%;
}

.speechBubble::after {
  content: "";
  position: absolute;
  top: 52%;
  left: 0;
  border-style: solid;
  border-width: 9.6px 12px 9.6px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
}

@media screen and (max-width: 768px) {
.speechBubble {
  margin-left: 20px!important;
	

}

.nikoniko1 {
  margin: -10px 0 0 0!important;	
}	


/*レッスン料SP*/	
.box26 {
    width: 100%;

	position: relative;
    margin: auto;
    padding: 0em 1em;
    border: double 15px #16c4fd;
    border-radius: 15px;
	
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -25px;

    padding: 0 9px;
    line-height: 1;
    font-size: 1.5em;
    background: #FFF;
    color: #16c4fd;
    font-weight: 900;
	  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.box26 p {
    margin: 0; 
    padding: 0;
}


.lessonm {
	font-size: 18%;
	margin-right: 10%;
	text-align: right;
}

.lessone {
	font-size: 15%;
	margin-top:-20px;
	margin-left: 30%;
	margin-bottom: -20px;
	text-align: left;
}


.course-label{
  font-size: 16px; /* 何かしら0以外に戻す */
  display: inline-flex;
  align-items: center;
  gap: 8px;                 /* アイコンと文字の間隔 */
  padding: 4px 6px;         /* 画像の余白感 */
  background: #fff;
}

.course-label__icon{
    display: none;	

}

.course-label__icon svg{
  display: none;
}

.course-label__text{
  font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  font-size: 60%;
  font-weight: 700;
  line-height: 1;
  color: #4A4A4A;
  text-align: left;
}	
	

.box26 .box-title {
    text-align: center;
	width: 70%;
	position: absolute;
    display: inline-block;
    top: -25px;
    margin: 0 10px 0 0px;
    padding: 0 15px 0 px;
    line-height: 1;
    font-size: 2em;
    background: #FFF;
    color: #16c4fd;
    font-weight: 900;
	  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.box26 p {
    margin: 0; 
    padding: 0;
}	
	

.lessone {
	font-size: 60%;

	width: 100%;
	margin: 0 0 1px 30px;
}	
	

	
}

.hogo-box{
  margin: 1em 0;
  padding: 1em;
  border: solid 2px #333;
  border-radius: 10px;
}

.hogo-box p{
  margin: 0;
  padding: 5px 10px 10px 10px;
}
.hogotxt{
  font-weight: 900;	
  font-size:120%;
}


.author {
    display: flex;
    margin-bottom: 45px;
}
.author img{
    margin-right: 20px;
	height: 200px;
    margin-bottom: 0!important;
	border: solid 1px #ccc;
}
.authorname{
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 0!important;
}
.authorname-en{
    font-weight: bold;
    margin-bottom: 10px!important;
}

.authorname span{
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 0px;
}

.voicetxt2 {

margin-top: 0px;line-height:105%;}



@media (max-width: 768px){
.ace-content{
        width: 100%;
        margin-left: 0px;
    }
.ace-area{
        display: block;
    }
.author{
        display: block;
    }
.author img{
        width: auto;
		  display: block;
  margin: 0 auto;
	border: solid 1px #ccc;	
    }
.author p.profe {
	    margin-top:5px;
  		line-height: 120%;
	}
	
.authorname{
     text-align: center;
	 margin: 5px 0px 15px 0px;
	font-size: 100%;
}	
	.voicetxt2 {
margin-top:-20px!important;}	
	

.speechBubble {
  position: relative;
  display: inline-block;
  margin-left: 20px;
  padding: 16px;
  border: 5px solid #f17816;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: left;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
}

.speechBubble::before {
  content: "";
  position: absolute;
  top: 4%;
  left: 0;
  border-style: solid;
  border-width: 12.5px 20px 12.5px 0;
  border-color: transparent #f17816 transparent transparent;
  translate: -100% -50%;
  transform: skew(0, 13deg);
  transform-origin: right;
}

.speechBubble::after {
  content: "";
  position: absolute;
  top: 4%;
  left: 0;
  border-style: solid;
  border-width: 6.6px 10.6px 6.6px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
  transform: skew(0, 13deg);
  transform-origin: right;
}
	
	
/*園詳細*/	
	
  .yokonarabe31{
   display:flex;  
    width:100%;
    margin:0;
    padding:0 0px 0 0px;
 

  }	
	
  .yokonarabe31>div.conm11{
    padding:0px 0px 0px 0px;
	width:50%;

  }
  .yokonarabe31>div.conm21{ 
    padding:0px 0px 0px 0px;
	width:50%;

	  

  } 	

.btnbody2{
  padding: 5px 5px;
  text-align: center;
}
a.call_btn2 {
  display: inline-block;
  width: auto;
  padding: 20px 15px;
  text-align: center;
  text-decoration: none;
  line-height: 100%;
  outline: none;
  color: #FFFFFF;
  background-color: #444;
  -webkit-transition: all .3s;
  transition: all .3s;
  font-size: 100%;
  font-weight: 900;
}
.call_btn2:hover {
  color: #FFFFFF;
  background-color: #444;
  opacity: 0.7;
}	
	
	
	
}


/*フォーム*/
.mw_wp_form dl {
    display: flex;
    flex-wrap: wrap;
    margin: 30px 0px 0px;
    border: 1px solid #333;
    border-top: none;
}

.mw_wp_form dl > dt,
.mw_wp_form dl > dd {
    width: 100%;
    padding: 1em;
    border-top: 1px solid #333;
	gap: 10px;
}


.mw_wp_form dl > dt {
	background: #fce8d5;
	color: #000;
	font-weight: 900;   
}



@media print, (min-width: 768px) {
    .mw_wp_form dl > dt,
    .mw_wp_form dl > dd {
        text-align: left;
    }
    .mw_wp_form dl > dt {
        display: flex;
        align-items: center;
        width: 30%;
		background: #fce8d5;
		color: #000;
		font-weight: 900:
    }
    .mw_wp_form dl > dd {
        width: 70%;
        border-left: 1px solid #999;
		padding: 2em 2em;
    }
}

.mw_wp_form input[type="text"],
.mw_wp_form input[type="email"],
.mw_wp_form input[type="tel"],
.mw_wp_form textarea {
    padding: 1em;
    width: 100%;
    font-size: 15px;
    border: 1px solid #ccc;

}

.mw_wp_form input[type="naiyou"],
.mw_wp_form input[type="en"] {
	
    padding: 1em;
    width: 100%;
    font-size: 15px;
    align-items: center; 
}




.mw_wp_form .form_step {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0px;
    list-style: none;
}

.mw_wp_form .form_step > li {
    display: block;
    position: relative;
    padding: 0.5em;
    width: 22%;
    border: 1px solid currentColor;
    color: #333;
    font-size: 1.5vw;
    font-weight: bold;
    text-align: center;
}
.mw_wp_form .form_step > li:nth-of-type(n + 2) {
    margin: 0px 0px 0px 4%;
}
.mw_wp_form .form_step > li:nth-of-type(n + 2)::before {
    position: absolute;
    top: 50%;
    left: -1.5em;
    width: 0.5em;
    height: 0.5em;
    border-top: 2px solid #999;
    border-left: 2px solid #999;
    transform: translateY(-50%) rotate(135deg);
    content: "";
}

.mw_wp_form_input .form_step > li:nth-of-type(1),
.mw_wp_form_preview .form_step > li:nth-of-type(2),
.mw_wp_form_complete .form_step > li:nth-of-type(4) {
    background-color: #444;
    color: #fff;
}

@media print, (min-width: 992px) {
    .mw_wp_form .form_step > li {
        font-size: 18px;
    }
}

.mw_wp_form_complete div {
    margin: 30px 0px 0px;
    text-align: center;
}








/*フォーム*/
.mw-wp-form__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: -60px;
}


.mw-wp-form dt,
.mw-wp-form dd {
  line-height: 1.75;
}

.mw-wp-form dt:not(:first-of-type),
.mw-wp-form dd:not(:first-of-type) {
  margin-top: 30px;
}

.mw-wp-form dt {
  width: 700px;
  padding-top: 15px;
}

.mw-wp-form dd {
    margin-top: -60px;	
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 1000px;

}

.txtt {
  font-size:16px;	
}

.mw-wp-form__label {
  margin-right: 15px;
  padding: 8px 22px;
  border-radius: 2px;
  color: #fff;
  font-size: 14px;
  vertical-align: 1px;
}

.mw-wp-form__label--req {
  background: #f17816;
}

.mw-wp-form__label--opt {
  background: #878D8E;
}

.mw-wp-form dd input[type="text"],
.mw-wp-form dd input[type="email"],
.mw-wp-form dd textarea {
  box-sizing: content-box;
  width: calc(100% - (20px * 2));
  padding: 15px 20px;
  background: #F5F5F5;
}



.mw-wp-form dd input[type="text"]:nth-child(n + 2) {
  margin-top: 15px;
}

.mw-wp-form dd input[type="tel"] {
  box-sizing: content-box;
  width: 66px;
  padding: 15px 20px;
  background: #F5F5F5;
}

dd.select1 {
  box-sizing: content-box;
  width: calc(100% - (20px * 2));
  padding: 15px 20px;
  font-size: 120%;
}


.mw-wp-form dd textarea {
  height: calc(1.75em * 10);
}

.mw-wp-form dd input[type="text"]::placeholder,
/*.mw-wp-form dd input[type="tel"]::placeholder,*/
.mw-wp-form dd input[type="email"]::placeholder,
.mw-wp-form dd textarea::placeholder {
  color: #797979;
}

/* Microsoft Edge */
.mw-wp-form dd input[type="text"]::-ms-input-placeholder,
/*.mw-wp-form dd input[type="tel"]::-ms-input-placeholder,*/
.mw-wp-form dd input[type="email"]::-ms-input-placeholder,
.mw-wp-form dd textarea::-ms-input-placeholder {
  color: #797979;
}

/* Internet Explorer */
.mw-wp-form dd input[type="text"]:-ms-input-placeholder,
/*.mw-wp-form dd input[type="tel"]:-ms-input-placeholder,*/
.mw-wp-form dd input[type="email"]:-ms-input-placeholder,
.mw-wp-form dd textarea:-ms-input-placeholder {
  color: #797979;
}

.mw-wp-form__automatic {
  margin: 0 0 0 20px;
  font-size: 15px;
}

.mw-wp-form__buttons {
  display: flex;
  justify-content: center;
	
}

.mw-wp-form__buttons button[type="submit"] {
  display: inline-flex; /* ← ここだけ変える */
  position: relative;
  width: 360px;
  height: 60px;
  margin: 0 30px;
  border: 1px solid #1B201A;
  color: #1B201A;
  transition: opacity .6s;
  font-weight: 900;
  font-size:120%;
}

.mw-wp-form__buttons button[type="submit"]:hover {
  opacity: .6;
}

.mw-wp-form__buttons button[type="submit"]:before {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-top: 1px solid #1B201A;
  border-right: 1px solid #1B201A;
  content: '';
}

.mw_wp_form_confirm .mw-wp-form dd {
  padding-top: 15px;
}

@media screen and (max-width:768px) {

  .mw-wp-form__list {
    margin-bottom: 60px;
  }

  .mw-wp-form dt {
    width: 100%;
  }

  .mw-wp-form dd {
    width: 100%;
  }

  .mw-wp-form dd:first-of-type,
  .mw-wp-form dd:not(:first-of-type) {
    margin-top: 15px;
  }

  .mw-wp-form dd input[type="text"]:nth-child(n + 2) {
    margin-top: 10px;
  }

  .mw-wp-form dd textarea {
    height: calc(1.75em * 8);
  }

  .mw-wp-form__automatic {
    margin: 5px 0 0;
    font-size: 14px;
  }

  .mw-wp-form__buttons {
    flex-direction: column;
    align-items: center;
	font-size:120%;
  }

  .mw-wp-form__buttons button[type="submit"] {
        padding-top: 0px;
	
	  width: 300px;
    margin-bottom: 50px;
    font-size:120%;
	font--weight: 900;  
  }

  .mw-wp-form__buttons button[type="submit"]:not(:first-child) {
    padding-top: -10px;
    font-size:120%;
	font-weight: 900;  
  }


  .mw_wp_form_confirm .mw-wp-form dd {
    padding-top: 0;
  }

  .mw-wp-form__label {
    padding: 6px 16px;
  }
	
.mw_wp_form dl {
    border: 1px solid #fce7d4!important;

}

.mw_wp_form dl > dt,
.mw_wp_form dl > dd {

    border-top: 1px solid #fce7d4!important;

}	
	
	

}


/* 親（または親の中の p/div）が縦積みを作ってるケースが多いのでまとめて flex */
.mw-wp-form__buttons,
.mw-wp-form__buttons p,
.mw-wp-form__buttons .mwform-btn,
.mw-wp-form__buttons .mwform-btn-wrap,
.mw-wp-form__buttons .mwform-btns,
.mw-wp-form__buttons div {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap; /* 画面が狭い時は折り返す */
  margin: 0 !important;
}

/* MW WP Form は input を吐くことが多いので button だけだと当たらない */
.mw-wp-form__buttons button,
.mw-wp-form__buttons input[type="submit"],
.mw-wp-form__buttons input[type="button"],
.mw-wp-form__buttons input[type="reset"]{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 360px;
  height: 60px;
  margin: 50px 0 !important;
  border: 1px solid #1B201A;
  color: #1B201A;
  transition: opacity .6s;
  font-weight: 900; /* typo修正 */
  font-size: 120%;
  background: transparent; /* input系で背景が変になる保険 */
}

/* hover */
.mw-wp-form__buttons button:hover,
.mw-wp-form__buttons input[type="submit"]:hover,
.mw-wp-form__buttons input[type="button"]:hover,
.mw-wp-form__buttons input[type="reset"]:hover{
  opacity: .6;
}


@media screen and (max-width:768px) {
	ol.form_step {display: none!important;
	}
	

/* 親（または親の中の p/div）が縦積みを作ってるケースが多いのでまとめて flex */
.mw-wp-form__buttons,
.mw-wp-form__buttons p,
.mw-wp-form__buttons .mwform-btn,
.mw-wp-form__buttons .mwform-btn-wrap,
.mw-wp-form__buttons .mwform-btns,
.mw-wp-form__buttons div {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap; /* 画面が狭い時は折り返す */
  margin: 0 !important;
}

/* MW WP Form は input を吐くことが多いので button だけだと当たらない */

.mw-wp-form__buttons button:not(:first-child) ,
.mw-wp-form__buttons input[type="submit"]:not(:first-child) ,
.mw-wp-form__buttons input[type="button"]:not(:first-child) ,
.mw-wp-form__buttons input[type="reset"]:not(:first-child) {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 270px!important;
  height: 60px!important;
  margin: -80px 0 0px 0 !important;
  border: 1px solid #1B201A;
  color: #1B201A;
  transition: opacity .6s;
  font-weight: 900; /* typo修正 */
  font-size: 120%;
  background: transparent; /* input系で背景が変になる保険 */
}
	
.mw-wp-form__buttons button:first-child ,
.mw-wp-form__buttons input[type="submit"]:first-child ,
.mw-wp-form__buttons input[type="button"]:first-child  ,
.mw-wp-form__buttons input[type="reset"]:first-child {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 270px!important;
  height: 60px!important;
  margin: -30px 0 -10px 0 !important;
  border: 1px solid #1B201A;
  color: #1B201A;
  transition: opacity .6s;
  font-weight: 900; /* typo修正 */
  font-size: 120%;
  background: transparent; /* input系で背景が変になる保険 */
}	

/* hover */
.mw-wp-form__buttons button:hover,
.mw-wp-form__buttons input[type="submit"]:hover,
.mw-wp-form__buttons input[type="button"]:hover,
.mw-wp-form__buttons input[type="reset"]:hover{
  opacity: .6;
}
	
	
	
	
	}


 .contentswrap p {
   	margin-bottom: 1em;	
	}

.sponly {
	display: none!important;	
	}


.addresm {
	margin: -0.5em 0 1em 2.5em;
	font-size: 80%;	
}


@media screen and (max-width:768px) {
	
.addresm {
	margin: -2em 0 -1em 1.2em;
		font-size: 70%;
		
}	
	
 .contents p.sc {
	line-height: 150%!important;
		
	}
	
	div.conm2 p.sc2 {
	 font-size: 1rem;
	 line-heignt: 150%;
	margin-top: 1.2em!important;
	margin-bottom: 1.2em!important;	
	 		
	}	
	
.contents p.sc2 {
	line-height: 150%!important;
	margin-top: 1em!important;	
	}

 .author p {
    line-height: 150%!important;		

}

 .contentswrap p {
   	line-height: 150%!important;	
	}

.fotad {
    text-align: center!important;
    margin: -10px auto 0px auto!important;
	
}
	
	dl.fm {
	margin-bottom: 20px!important;	
	}

.sponly {
	text-align: center;	
		display: block!important;
	}
	
	
}

	



.heading{
  display:flex;
  align-items:center;
  gap:1rem;
}

/* タイトル */
.title-text{
  display:flex;
  align-items:center;
  font-size:clamp(18px, 5vw, 32px);
  line-height: 100%;
  flex:1;          /* ← 残り幅を使う */
  min-width:0;     /* ← これ超重要（ないと折り返さない） */
}

/* オレンジ棒 */
.title-text::before{
  content:"";
  width:.3em;
  height:1.2em;
  background:#f17816;
  margin-right:.5em;
  flex-shrink:0;
}

/* アイコン */
.heading-icons{
  display:flex;
  gap:5px;
  flex-shrink:0;   /* ← アイコンは縮まない */
}

.heading-icons img{
  width:clamp(35px, 6vw, 50px);
  aspect-ratio:1/1;
  object-fit:contain;
  display:block;
}



	
  .yokonarabe31u{
   display:none;
 

  }	
	
  .yokonarabe31u>div.conm11u{
    display:none;

  }
  .yokonarabe31u>div.conm21u{
    display:none;

	  

  } 


@media screen and (max-width:768px) {
	
 	
  .yokonarabe31u{
   display:flex!important;
   justify-content: flex-end;	  
    width:100%;
    margin-left: -5px!important;
    padding:0 0px 0 0px;
 

  }	
	
	
	
	
	}
	


/* 感想セクション */
.voice-section {
  padding: 10px 20px 40px;
}

.voice-inner {
  max-width: 1100px;
  margin: 0 auto;
}

/* タイトル */
.voice-title {
  margin: 0 0 30px 0;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #5c4b3b;
}

/* 一覧 */
.voice-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  align-items: stretch;
}

/* カード */
.voice-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 260px;
  padding: 26px 22px;
  background: #fff;

  border: 1.5px solid #e2d8cc; /* ← 追加 */
  border-radius: 20px;

  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); /* 少し弱めるとバランス良い */
  box-sizing: border-box;
  transition: transform 0.3s ease;
}

.voice-card:hover {
  transform: translateY(-4px);
}

/* 生徒 / 保護者で色分け */
.voice-student .voice-card {
  border-top: 4px solid #ffd36c;
}

.voice-parent .voice-card {
  border-top: 4px solid #a8d8ff;
}

/* 感想文 */
.voice-text {
  margin: 0 0 16px;
  font-size: 0.96rem;
  line-height: 1.8;
  color: #4f4a45;
  flex: 1; /* ここが伸びて名前位置が揃う */
}

/* 名前まわり */
.voice-meta {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #eee4d8;
}

.voice-name {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.5;
  color: #5c4b3b;
}

.voice-info {
  margin: 4px 0 0;
  font-size: 0.85rem;
  line-height: 1.5;
  color: #8a7b6a;
}

/* タブレット */
@media (max-width: 900px) {
  .voice-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .voice-card {
    min-height: 240px;
  }
}

/* スマホ */
@media (max-width: 768px) {
  .voice-section {
    padding: 32px 16px;
  }

  .voice-title {
    margin-bottom: 24px;
    font-size: 1.5rem;
  }

  .voice-list {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .voice-card {
    min-height: auto;
    padding: 22px 18px;
    border-radius: 16px;
  }

  .voice-text {
    font-size: 0.94rem;
  }
}