/* responsive smartphone breakpoint（480px以下） */
/* TOC
 - 全体設定とGrid Systemの設定
 - header
 -- Google検索
 -- グローバルナビゲーション
 - footer
 -- ページトップへ
 - main
 -- クラス 
 -- モジュール
 -- 汎用クラス 
 - ホーム
研修講座					49aae6	d2e8f6
研究助成					2fce2b	a5f4a3
療育・相談				fc550c	ffd6c4
子ども療育相談センター	ffa912	ffe4b6
すこやか育成相談室		fc80a8	feccdc
出版物					ffea39	ddaaf7
その他					a9a3a1	eeebe9
*/
/* ===========================================================
  全体設定とGrid Systemの設定
=========================================================== */
* { box-sizing: border-box; }
html { min-height: 100%; }
body { font: normal 16px/1.7 "メイリオ", Meiryo, sans-serif; color: #333; word-break: break-all; word-wrap: break-word; }
.wrapper { min-width: 960px; padding-bottom: 30px; }
@media only screen and (max-width: 480px) {
body { overflow: hidden; }
.wrapper { min-width: 240px; padding-bottom: 0; }
}
/* grid system 行設定 */
.row { width: 960px; margin: 0 auto; zoom: 1; }
.row:after { display: block; clear: both; content: ""; }
/* 行設定 display:table;*/
.rowTable { width: 960px; margin: 0 auto; display: table; }
/* grid system 列設定*/
.col12 { width: 930px; margin: 0 15px; }
.col11 { width: 850px; margin: 0 15px; float: left; }
.col10 { width: 770px; margin: 0 15px; float: left; }
.col9 { width: 690px; margin: 0 15px; float: left; }
.col8 { width: 610px; margin: 0 15px; float: left; }
.col7 { width: 530px; margin: 0 15px; float: left; }
.col6 { width: 450px; margin: 0 15px; float: left; }
.col5 { width: 370px; margin: 0 15px; float: left; }
.col4 { width: 290px; margin: 0 15px; float: left; }
.col3 { width: 210px; margin: 0 15px; float: left; }
.col3r { width: 210px; margin: 0 15px; float: right; }
.col2 { width: 130px; margin: 0 15px; float: left; }
.col1 { width: 50px; margin: 0 15px; float: left; }
/* インナーカラム */
.rowInner { zoom: 1; }
.rowInner:after { display: block; clear: both; content: ""; }
.colInner12 { width: 930px; float: left; margin-left: 30px; }
.colInner11 { width: 850px; float: left; margin-left: 30px; }
.colInner10 { width: 770px; float: left; margin-left: 30px; }
.colInner9 { width: 690px; float: left; margin-left: 30px; }
.colInner8 { width: 610px; float: left; margin-left: 30px; }
.colInner7 { width: 530px; float: left; margin-left: 30px; }
.colInner6 { width: 450px; float: left; margin-left: 30px; }
.colInner5 { width: 370px; float: left; margin-left: 30px; }
.colInner4-5 { width: 330px; float: left; margin-left: 30px; }/* =4.5 */
.colInner4 { width: 290px; float: left; margin-left: 30px; }
.colInner3 { width: 210px; float: left; margin-left: 30px; }
.colInner2-5 { width: 170px; float: left; margin-left: 30px; }
.colInner2 { width: 130px; float: left; margin-left: 30px; }
.colInner1 { width: 50px; float: left; margin-left: 30px; }
/* インナーカラム margin-left解除用 */
.rowInner>div:first-child,
.rowTable>div:first-child { margin-left: 0; }
.rowTable>div { display: table-cell; float: none; padding: 0 15px; }
@media only screen and (max-width: 480px) {
.row,
.rowTable { width: 100%; }
.col1,
.col2,
.col3,
.col3r,
.col4,
.col4r,
.col5,
.col6,
.col7,
.col8,
.col9,
.col10,
.col11,
.col12,
.colInner1,
.colInner2,
.colInner2-5,
.colInner3,
.colInner4,
.colInner4-5,
.colInner5,
.colInner6,
.colInner7,
.colInner8,
.colInner9,
.colInner10,
.colInner11,
.colInner12 { display: block; width: auto; margin: 0; padding: 0; float: none; }
.rowTable>div { display: block; padding: 0; }
}
section { zoom: 1; }
section:before,
section:after { content: ""; display: table; }
section:after { clear: both; }
@media only screen and (max-width: 480px) {
section { margin-bottom: 0; padding-top: 0; }
article section:nth-child(even) { background: #fafaff; }
}
/* ===========================================================
  header
=========================================================== */
header { height: 100px; min-width:960px; box-shadow: 0 0 5px rgba(0,0,0,.3); margin-bottom: 30px; position: relative; z-index: 10; }
header .wrapper { padding-bottom: 0; }
 @media only screen and (max-width: 480px) {
header { height: 50px; min-width: 240px; background: #fff; margin-bottom:0; }
}
/* ロゴ */
.logo { line-height: 1; margin-left: 30px; }
.logo a { display: inline-block; padding: 12px 0; }
.logo a:link,
.logo a:visited { text-decoration: none; }
.logo a:hover,
.logo a:focus { background: none; }
@media only screen and (max-width: 480px) {
.logo { display: table; width: 100%; height: 50px; padding: 0 100px 0 0; margin-left: 0; }
.logo a { display: table-cell; padding: 5px; vertical-align: middle; }
}
/* Google検索
----------------------------------------------------------- */
.searchBlock { text-align: right; }
.searchBox { display: inline-block; background: #e2e2e2; border-radius: 15px; margin: 15px 30px 0 0; vertical-align: top; overflow: hidden; text-align: left; }
.searchInput { width: 155px; height: 30px; font-size: 16px; line-height: 1; padding: 0px 8px 0px 16px; border-style: none; background: transparent; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.searchInput:focus { width: 300px; outline: none; }
::-webkit-input-placeholder {
color: #666;
font-size:16px;
line-height:1;
padding:4px 0;
}
:-moz-placeholder {
color: #666;
font-size:16px;
line-height:1;
padding:4px 0;
}
:-ms-input-placeholder {
color: #666;
font-size:16px;
line-height:1;
padding:4px 0 4px 12px;
}
placeholder { color: #999; font-size: 14px; line-height: 1; padding: 4px 0; }
.searchBtn { border-radius: 0 15px 15px 0; padding: 0 0 0 5px; vertical-align: bottom; }
.searchBtnSp { display: none; }
/* スマホ表示時 */
@media only screen and (max-width: 480px) {
.searchBlock { text-align: center; position:absolute; right:-100%; width:100%; }
.searchBlock.active { right: 0; }
.searchBtnSp { display: block; width: 50px; height: 50px; position: absolute; top: 0; right: 50px; background: transparent url(/common/image/icon_search.png) no-repeat center center; border-left: 1px solid #ddd; }
.searchBtnSp.active { background-image: url(../image/icon_search_close.png); }
.searchBox { display:block; position: relative; top: auto; right: -100%; margin: 10px auto; transition: all 0.2s ease; box-shadow: 0 0 5px rgba(0,0,0,.3); width: 80%;}
.searchBox.active { right: 0; }
.searchBox .searchInput { width: 80%; }
.searchBox .searchBtn { display: block; position: absolute; top: 0; right: 0; }
}
/* グローバルナビゲーション
----------------------------------------------------------- */
/* ハンバーガーボタン */
.glNavBtn { display: none; }
@media only screen and (max-width: 480px) {
.glNavBtn { display: block; width: 50px; height: 50px; position: absolute; top: 0; right: 0; background: transparent url(/common/image/icon_nav_menu.png) no-repeat 0 0; border-left: 1px solid #ddd; }
.humbergerBtn { width: 100%; height: 50px; padding: 8px 10px 0 10px; transition: all 0.2s ease; }
.humbergerBtn span { display: block; width: 30px; height: 3px; background: #333; margin: 0 0 6px 0; }
/* アクティブ時のアニメーション */
.humbergerBtn.active { position: relative; left: 4px; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
.humbergerBtn.active .bar1 { -webkit-transform: translateY(10px); transform: translateY(10px); }
.humbergerBtn.active .bar2 { opacity: 0; }
.humbergerBtn.active .bar3 { -webkit-transform: rotate(-90deg) translateX(8px); transform: rotate(-90deg) translateX(8px); }
}
/* グローバルナビゲーション */
.glNavBlock { padding: 0; display: table; margin: 0 auto; z-index: 1; }
.glNav { margin-bottom: 0; }
.glNav li { line-height: 1; display: table-cell; text-align: center; padding: 0 .5em; }
.glNav a { color: #333; line-height: 50px; text-decoration: none; height: 50px; vertical-align: middle; padding: 0 1em; display: block; transition: all 0.2s 0s ease; }
.glNav a:visited { color: #333; }
.glNav a:hover { text-decoration: none; }
.glNav a:after { content: ""; display: block; width: 2em; height: 3px; background: #333; position: relative; bottom: 3px; margin: 0 auto; transition: all 0.2s 0s ease; }
.glNav a:hover:after { width: 100%; }
.glNavHome a:after { background: #a9a3a1; }
.glNavProfile a:after { background: #a9a3a1; }
.glNavSeminar a:after { background: #49aae6; }
.glNavConsult a:after { background: #fc550c; }
.glNavAssist a:after { background: #2fce2b; }
.glNavPublish a:after { background: #ffea39; }
.glNavInquiry a:after { background: #a9a3a1; }

.directoryHome .glNavHome a::after,
.directoryProfile .glNavProfile a::after,
.directorySeminar .glNavSeminar a::after,
.seminar_concentration .glNavSeminar a::after,
.directoryConsult .glNavConsult a::after,
.directoryAssist .glNavAssist a::after,
.directoryPublish .glNavPublish a::after,
.directoryInquiry .glNavInquiry a::after{ width: 100%; }

.consult_children .glNav .glNavConsult a:after { width: 100%; }
.consult_children .consultSubNav li:first-child a:after,
.consult_children_forfamily .consultSubNav li:nth-child(2) a:after,
.consult_children_forteacher .consultSubNav li:nth-child(3) a:after,
.consult_children_inquiry .consultSubNav li:nth-child(4) a:after,
.consult_healthy .consultSubNav li:first-child a:after,
.consult_healthy_forapplicant .consultSubNav li:nth-child(2) a:after,
.consult_healthy_forteacher .consultSubNav li:nth-child(3) a:after,
.consult_healthy_inquiry  .consultSubNav li:nth-child(4) a:after{ width: 100%; left: 0; }

@media only screen and (max-width: 480px) {
.consult_children .consultSubNav li:first-child a:after,
.consult_children_forfamily .consultSubNav li:nth-child(2) a:after,
.consult_children_forteacher .consultSubNav li:nth-child(3) a:after,
.consult_children_inquiry .consultSubNav li:nth-child(4) a:after,
.consult_healthy .consultSubNav li:first-child a:after,
.consult_healthy_forapplicant .consultSubNav li:nth-child(2) a:after,
.consult_healthy_forteacher .consultSubNav li:nth-child(3) a:after,
.consult_healthy_inquiry  .consultSubNav li:nth-child(4) a:after{ content:none; }
}

/* サブナビゲーション */
.glNav li ul { margin: 0; padding: 0; position: absolute; display: block; box-shadow: 0 3px 5px rgba(0,0,0,.3); border-radius: 0 0 5px 5px; }
.glSuvProfile { background: #a9a3a1; width: 10em; }
.glSuvSeminar { background: #49aae6; width: 13em; }
.glSuvConsult { background: #fc550c; width: 13em; }
.glSuvPublish { background: #ffea39; width: 16em; }
.glNav li ul li { text-align: left; display: block; margin: 0; height: 0; padding: 0; overflow: hidden; position: relative; transition: all 0.2s ease; }
.glNav li:hover ul li { top: 0; height: 40px; }
.glNav li ul li:first-child a { border: none; }
.glNav li ul li a { display: block; color: #fff; line-height: 40px; border-top: 1px solid #fff; }
.glNav li ul li a:visited { color: #fff; }
.glNav .glSuvPublish li a { color: #666; 1px solid #666; }
.glNav .glSuvPublish li a:visited { color: #666; }

 @media only screen and (max-width: 480px) {
.glNavBlock { position: absolute; top: 50px; right:calc(-100% - 10px ); width: 100%; background: #9cc2d0; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; z-index: 1000; box-shadow: 0 4px 6px rgba(0,0,0,.5); }
.glNavBlock.active { right: 0; }
.glNavBlock { display: block; padding: 0; }
.glNavBlock { display: block; border-radius: 0; margin: 0; width: 100%; }
.glNav { font-size:0; margin: 0; padding: 0; }
.glNav li { margin: 0; text-align: left; display: block; padding: 0; border-top: 1px solid #fff; }
.glNav li:hover ul li { height:auto; }
.glNav li a { font-size:16px; color: #fff; display: block; padding: 10px 20px; line-height: 1; vertical-align: middle; height: auto; }
.glNav li a:after { content: none; }
.glNav li a:visited { color: #fff; }
.glNav .glNavPublish a,
.glNav .glNavPublish a:visited { color:#000; }
.glNavHome,
.glNavInquiry { background: #a9a3a1; }
.glNavProfile { background: #a9a3a1; }
.glNavSeminar { background: #49aae6; }
.glNavConsult { background: #fc550c; }
.glNavAssist { background: #2fce2b; }
.glNavPublish { background: #ffea39; }

/* サブナビゲーション */
.glNav li ul { position: relative; box-shadow: none; margin-left: 20px; border-left: 1px solid #fff; border-radius:0; }
.glNav li ul li { height: auto; }
.glNav li ul li a { border-top: none; line-height:1;}
.glSuvProfile,
.glSuvSeminar,
.glSuvConsult,
.glSuvPublish { width: auto; }
}
/* ===========================================================
  footer
=========================================================== */
footer { background: #eeebe9; min-width: 960px; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.footerNavBlock { padding-bottom: 0; }
@media only screen and (max-width: 480px) {
footer { min-width: 240px; }
}
/* 財団情報
----------------------------------------------------------- */
.addressBlock { color: #666; }
.addressName { font-size: 16px; font-weight: bold; line-height: 1.3; margin-bottom: 8px; }
.addressInfo { font-size: 13px; margin-bottom: 0; border:none; }
.addressInfo dt { float: left; width: auto; clear: left; padding: 8px; }
.addressInfo dd { line-height: 1.4; margin-left: 32px; margin-bottom: 0; padding: 8px 0; border:none; }
.addressBlock p { font-size: 13px; }
.addressTel,
.addressFax { font-size: 22px; font-weight: bold; }
@media only screen and (max-width: 480px) {
.addressBlock { background: #fff; margin: 0; padding: 20px 20px 1px 20px; }
.addressName { margin-bottom: 8px; }
.addressTel,
.addressFax { display: block; margin-left: 0; }
}
/* ページトップへ
----------------------------------------------------------- */
/* 初期位置指定 */
.pagetopPC { position: fixed; right: 80px; bottom: -80px; overflow: hidden; z-index: 2000; text-align: center; padding: 10px; }
.pagetopPC a { font-size: 20px; line-height: 50px; color: #fff; text-decoration: none; padding: auto; background: #262626; border: 3px solid #fff; border-radius: 50%; width: 50px; height: 50px; display: block; position: relative; -webkit-transition: all 0.2s ease 0; transition: all 0.2s ease 0; text-decoration: none; cursor: pointer; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.pagetopPC a:visited { color: #fff; }
.pagetopPC a:active,
.pagetopPC a:focus { text-decoration: none; }
.pagetopPC a:hover { opacity: 0.6; text-decoration: none; }
@media only screen and (max-width: 480px) {
.pagetopPC { display: none; }
}
.pagetopSP { display: none; }
@media only screen and (max-width: 480px) {
.pagetopSP { display: block; text-align: center; background: #262626; margin-bottom: 0; }
.pagetopSP a { color: #fff; display: block; padding: 1em; }
.pagetopSP a:visited { color: #fff; }
}
/* フッターナビゲーション
----------------------------------------------------------- */
.footerNav { font-size: 14px; padding: 0; margin-left: 0; list-style: none; }
.footerNav li { margin: 0; }
.footerNav .firstLevel,
.footerNav .secondLevel { font-weight: bold; margin-top: 1.5em; }
.footerNav .firstLevel:first-child,
.footerNav .secondLevel:first-child { margin-top: 0; }
.footerNav .otherLevel { margin-top: 1.5em; }
.footerNavOther li { display: inline-block; margin-right: 30px; }
.footerNav a { color: #666; text-decoration: none; display: inline-block; }
.footerNav a:visited { color: #666; }
.footerNav a:hover,
.footerNav a:active,
.footerNav a:focus { text-decoration: underline; }
.footerNav a:hover { opacity: 1; }
 @media only screen and (max-width: 480px) {
.footerNav { padding: 0; margin: 10px 0; }
.footerNav li { margin: 0; padding: 0 10px; }
.footerNav .secondLevel,
.footerNav .otherLevel { padding-top:0.5em; margin-top: .5em; border-top:1px solid #ccc; }
.footerNavOther li { display: block; border-top:1px solid #ccc; padding-top:0.5em; margin-top: .5em; }
.footerNav a { display: block; padding: .3em; }
}
/* Copyright
----------------------------------------------------------- */
.copyrightBlock { background: #393131; padding: 15px 0; line-height: 1.3; }
.copyright { color: #fff; font-size: 13px; }
.seminar_concentration:not(.archive) .copyrightBlock,
.seminar_seminar_night:not(.archive) .copyrightBlock { margin-bottom:80px;}
@media only screen and (max-width: 480px) {
.copyrightBlock { text-align: center; padding: 15px 20px; }
.seminar_concentration:not(.archive) .copyrightBlock,
.seminar_seminar_night:not(.archive) .copyrightBlock { margin-bottom:50px;}
}
/* ===========================================================
  main
=========================================================== */
/* コンテンツ */
.contentsCol8Block { border-radius: 5px; box-shadow: 0 0 5px rgba(0,0,0,.3); margin-bottom: 30px; }
.contentsCol10Block { margin-left: 90px; border-radius: 5px; box-shadow: 0 0 5px rgba(0,0,0,.3); margin-bottom: 30px; }
.contentsCol12Block { border-radius: 5px; box-shadow: 0 0 5px rgba(0,0,0,.3); margin-bottom: 30px; }
@media only screen and (max-width: 480px) {
.contentsCol10Block { margin: 30px 15px; padding:1px 0; }
}
/* 本文section内の区切りなどに使用 */
.contents { margin: 20px; }
.rowInner>div .contents { margin: 0; }
.rowInner>div:last-child .contents { margin: 0 20px 0 0; }
.rowInner>div:first-child .contents { margin: 0 0 20px 20px; }
@media only screen and (max-width: 480px) {
.contents { margin: 20px 10px 40px 10px; }
.rowInner>div .contents,
.rowInner>div:first-child .contents,
.rowInner>div:last-child .contents { margin: 10px; }
}
/* text, heading */
h1 { color: #333; font-size: 30px; line-height: 1.3; font-weight: normal; text-align: center; margin: 10px 0; }
h1 a { display:block; padding:80px 0;}
h1 a:link,h1 a:visited { color:#fff; }
.publish_books_research-aid-paper h1 a:link,.publish_books_research-aid-paper h1 a:visited { color:#666; }
[class^="publish"] h1  a:link,
[class^="publish"] h1  a:visited { color:#666; }

h1.small { font-size: 26px; }
h2 { color: #a9a3a1; font-size: 24px; line-height: 1.4; margin: 0 0 20px 0; font-weight: bold; border-bottom: 3px solid #a9a3a1; }
h3 { font-size: 20px; line-height: 1.4; margin: 30px 0 15px 0; color: #333; font-weight: normal; border-bottom: 1px solid #333; }
h2+h3 { margin-top: 0; }
.h4style,
h4 { font-size: 16px; line-height: 1.5; margin: 0 0 15px 0; color: #000; }
h5 { font-size: 14px; line-height: 1.5; margin: 0 0 15px 0; color: #000; }
h6 { font-size: 14px; line-height: 1.5; margin: 0 0 15px 0; color: #000; font-weight: normal; }
p { margin: 0 0 20px 0; }
.lead { margin: 40px 80px 0 80px; }
@media only screen and (max-width: 480px) {
.lead { margin: 20px 10px 0 10px; }
}
::selection { color: #fff; background: #a9a3a1; text-shadow: none; }
/* 文頭に数字等が入ってインデントした場合の見出し */
.numHead { padding-left: 1.7em; text-indent: -2em; }
h2.numHead:after { left: 0; }
.numHead .numHeadNum { display: inline-block; width: 1.7em; margin-right: 0.3em; text-align: right; }
/* ul, ol, dl */
ul,
ol { margin: 0 0 20px 0; padding-left: 1em; }
ol ol,
ul ul,
ol ul,
ul ol { padding-left: 0; padding-top: .5em; margin: 0; }
li { position: relative; margin: 0 0 .3em 1.5em; }
.no-listhead { list-style: none;}
.no-listhead li { margin-left:0;}
.upper-alpha { list-style: upper-alpha; }
/* リストヘッドをオリジナルに変更 */
.originalStyle li { list-style: none; text-indent: -2.5em; padding-left: 2.5em; }
.originalStyle .listhead { display: inline-block; width: 2.5em; text-align: right; padding-right: .5em; }
dl { margin: 0 0 20px 0; border-top: 1px solid #eef1f4; }
dt { font-weight: bold; padding: 8px 0 0 0; }
dd { margin: 0; padding: 8px 0; border-bottom: 1px solid #eef1f4; }
dd ul:last-child,
dd ol:last-child,
dd p:last-child { margin-bottom: 0; }
.floatDl { border-top: 1px solid #ccc; }
.floatDl dt { float: left; width: 7em; clear: left; padding: 8px; }
.floatDl dd { padding: 8px; padding-left: 8em; border-bottom: 1px solid #ccc; }
.floatDl.w5em dt { width: 5em; }
.floatDl.w5em dd { padding-left: 6em; }
.floatDl.w9em dt { width: 9em; }
.floatDl.w9em dd { padding-left: 10em; }
.floatDl.w11em dt { width: 11em; }
.floatDl.w11em dd { padding-left: 12em; }
.floatDl.w15em dt { width: 15em; }
.floatDl.w15em dd { padding-left: 17em; }
dd>*:last-child { margin-bottom: 0; }
@media only screen and (max-width: 480px) {
.floatDl dt { float: none; padding-bottom: 0; }
.floatDl dd { padding: 0 8px 8px 8px; }
.floatDl.w9em dd,
.floatDl.w11em dd,
.floatDl.w15em dd { padding-left: 8px; }
}
/* table */
table { margin: 0 0 20px 0; border-collapse: collapse; word-break: break-all; word-wrap: break-word; }
caption { font-size: 14px; text-align: right; }
th { padding: 4px 6px; vertical-align: middle; }
thead th { color: #333; text-align: center; border-bottom: 1px solid #ccc; border-right: 1px dashed #ccc; }
thead tr:first-child { border-top: 2px solid #333; }
thead tr:last-child { border-bottom: 2px solid #333; }
thead th:last-child { border-right: 0; }
tbody th,
tbody td { border-right: 1px dashed #ccc; border-bottom: 1px solid #ccc; }
tbody th:last-child,
tbody td:last-child { border-right: 0; }
td { padding: 4px 6px; vertical-align: middle; }
tfoot tr:first-child { border-top: 2px solid #333; }
tfoot tr:last-child { border-bottom: 2px solid #333; }
tfoot th { text-align: center; }
tfoot th,
tfoot td { border-right: 1px dashed #ccc; }
tfoot td:last-child { border-right: none; }
@media only screen and (max-width: 480px) {
.tableWrapper { overflow:auto; }
.tableWrapper::-webkit-scrollbar { height:5px;}
.tableWrapper::-webkit-scrollbar-track { background:#eee;}
.tableWrapper::-webkit-scrollbar-thumb { background:#ccc;}
.tableWrapper:before { content:"下の表は左右にスクロールしてご覧ください"; white-space: nowrap; font-size:14px; color:#fc550c; }
.tableWrapper>table { width:800px;}
}
/* other block */
hr { height: 15px; width:15px; margin: 30px auto 10px auto; border:none; background:#eaeaea; -webkit-transform:rotate(45deg); transform:rotate(45deg); }
/* inline */
strong { color: #fc550c; font-weight: normal; }
em { color: #333; font-weight: bold; font-style: normal; }
small { font-size: 85%; } /* small要素は著作社名などを表記する要素のため、文字サイズを縮小したときはspan.smallを使用すること */
cite { font-style: normal; }
/* link */
a { color: #0779ee; }
a:link { text-decoration: none; }
a:visited { color: #0779ee; }
a:hover,
a:focus,
a:active { opacity: .7; text-decoration: underline; }
/* 見出し内にリンクを入れ子するとき */
.linkInHeading { position: relative; float: right; vertical-align: baseline; }
.linkArrow:after { content: ""; display: inline-block; width: .5em; height: .5em; border-right: 1px solid #0779ee; border-bottom: 1px solid #0779ee; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); vertical-align: 2px; margin-left: .25em; }
.linkArrowBottom:after { content: ""; display: inline-block; width: .5em; height: .5em; border-right: 1px solid #0779ee; border-bottom: 1px solid #0779ee; -webkit-transform: rotate(45deg); transform: rotate(45deg); vertical-align: 4px; margin-left: .25em; }
.linkBtn { color:#fff; padding:5px 16px; background:#0779ee; border:1px solid #0779ee; border-radius:3px; box-shadow: 0 0 5px rgba(0,0,0,.3);}
.linkBtn:visited { color:#fff;}
.linkBtn:after { content: ""; display: inline-block; width: .5em; height: .5em; border-right: 1px solid #fff; border-bottom: 1px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); vertical-align: 2px; margin-left: .25em; }
.linkBtn:hover { text-decoration:none; color:#0779ee; background:#fff; }
.linkBtn:hover:after { border-color:#0779ee; }
@media only screen and (max-width: 480px) {
.linkInHeading { display: block; float: none; text-align: right; }
.linkArrow { display:inline-block; vertical-align:top;}
.linkBtn { display:block; text-align:center; width:100%; margin-bottom:8px;}
}
/* フォーム */
input[type=button] { padding: 8px 16px; border: 0; border-radius: 3px; }
input[type="checkbox"], input[type="radio"] { vertical-align:-1px; margin:0 3px;}
/* クラス
----------------------------------------------------------- */
/* ドロップシャドウ */
.boxshadow { box-shadow: 0 0 5px rgba(0,0,0,.3); }
/* 注意書き */
.note { padding: 20px; background: #eaeaea; margin-bottom: 20px; }
/* インデント */
.indent1em { text-indent: -1.5em; padding-left: 1.5em; }
.indentHead { margin-right: .5em; }
.indent1em .indentHead { display: inline-block; float: left; width: 1em; }
.indent2em { text-indent: -2.5em; padding-left: 2.5em; }
.indent2em .indentHead { display: inline-block; float: left; width: 2em; }
/* カテゴリーカラーの摘要 */
.colorProfile { color: #a9a3a1; }
.colorSeminar { color: #49aae6; }
.colorConsult { color: #fc550c; }
.colorChildren { color: #ffa912; }
.colorHealthy { color: #fc80a8; }
.colorAssist { color: #2fce2b; }
.colorPublish { color: #ffea39; }
h3.colorPublish { color:#666; }
.colorOther { color: #a9a3a1; }
/* サブナビゲーション */
.navBlock { padding-bottom: 8px; }
.subNavBlock { border-bottom: 3px solid #a9a3a1; margin-bottom: 8px; position: relative; }
.subNav { margin: 0; padding: 0; line-height: 1; }
/* 第二階層 */
.subNav2ndLevel { width: 100%; margin: 0; }
.subNavBlock .subNav2ndLevel>a { color: #fff; background: #a9a3a1; padding: 8px 16px; border-radius: 5px 5px 0 0; }
/* 第三階層 */
.subNav ul { float: right; margin: 0; padding: 0; right: 0; }
.subNav ul,
.subNav li { display: inline-block; margin-bottom: 0; }
.subNav ul li { text-align: right; display: inline-block; margin: 0 0 0 8px; }
.subNavBlock li a { color: #666; padding: 8px; display: inline-block; }
.subNavBlock li a:hover,
.subNavBlock li a:active { text-decoration: none; }
@media only screen and (max-width: 480px) {
.navBlock { padding-bottom: 0; }
.subNavBlock { display: none; }
}
/* パン屑リスト */
.breadcrumbBlock { margin: 0 15px; }
.breadcrumb { margin: 0; padding: 0; }
.breadcrumb li { font-size: 14px; line-height: 1; display: inline; margin: 0; padding: 0; }
.breadcrumb li:last-child { font-weight: bold; }
.breadcrumb li:after { content: ""; width: 6px; height: 6px; display: inline-block; border-top: 1px solid #333; border-right: 1px solid #333; -webkit-transform: rotate(45deg); transform: rotate(45deg); position: relative; margin: 0 .7em; }
.breadcrumb li:last-child:after { content: none; }
.breadcrumb a { color: #666; text-decoration: none; padding: 4px; }
.breadcrumb img { vertical-align: -4px; padding: 2px 6px; }
@media only screen and (max-width: 480px) {
.breadcrumbBlock { display: none; }
}
/* H1 */
.h1Block { display: table; height: 235px; border-radius: 5px; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.h1BlockColLeft,
.h1BlockColRight { display: table-cell; width: 50%; vertical-align: middle; }
.h1BlockColLeft { border-radius: 5px 0 0 5px; background: #a9a3a1; }
.h1BlockColRight { border-radius: 0 5px 5px 0; }
.h1BlockColLeft h1 { color: #fff; }
[class^="publish"] .h1BlockColLeft h1,
.communication_board .h1BlockColLeft h1 { color: #666; }

.h1BlockColRight h1 { text-align: center; text-shadow:1px 1px 3px #fff, -1px -1px 3px #fff, 1px -1px 3px #fff, -1px 1px 3px #fff, 2px 2px 3px #fff, -2px -2px 3px #fff, 2px -2px 3px #fff, -2px 2px 3px #fff, 3px 3px 3px #fff, -3px -3px 3px #fff, 3px -3px 3px #fff, -3px 3px 3px #fff; padding:0 10px; }
.h1BlockColRight { display: table-cell; vertical-align: middle; }
/* 各ページのキービジュアル */
.profileKeyvisual { background: #fff url(/profile/image/keyvisual_profile.jpg) no-repeat center center;}
.comboardKeyvisual { background: #fff url(/communication-board/image/keyvisual_communicationboard.jpg) no-repeat center center;}
.research-aid-paperKeyvisual { background: #fff url(/publish/books/research-aid-paper/image/keyvisual_research-aid-paper.jpg) no-repeat center center;}
.publishKeyvisual { background: #fff url(/publish/image/keyvisual_publish.png) no-repeat center center;}
.booksKeyvisual { background: #fff url(/publish/books/image/keyvisual_books.jpg) no-repeat center center;}
.enlightenmentKeyvisual { background: #fff url(/publish/enlightenment/image/keyvisual_enlightenment.png) no-repeat center center;}
.seminarKeyvisual { background: #fff url(/seminar/image/keyvisual_seminar.jpg) no-repeat center center;}
.consultKeyvisual { background: #fff url(/consult/image/keyvisual_consult.jpg) no-repeat center center;}
.consult-childrenKeyvisual { background: #fff url(/consult/children/image/keyvisual_consult-children.jpg) no-repeat center center;}
.consult-healthyKeyvisual { background: #fff url(/consult/healthy/image/keyvisual_consult-healthy.jpg) no-repeat center center;}
.assistKeyvisual { background: #fff url(/assist/image/keyvisual_assist.jpg) no-repeat center center;}
.inquiryKeyvisual { background: #fff url(/inquiry/image/keyvisual_inquiry.jpg) no-repeat center center;}
@media only screen and (max-width: 480px) {
.h1Block,
.h1BlockColLeft { display: block; width: 100%; height: auto; border-radius: 0; }
.h1BlockColRight { display:block; width: 100%; height:auto; border-radius: 0; background-size:cover;  }
.h1BlockColLeft h1 { padding: 20px; margin: 0; }
.h1BlockColLeft h1 a { padding:0;}
.h1BlockColRight h1 { display:block; vertical-align:middle; padding: 20px; margin: 0; }
[class$="Keyvisual"].h1BlockColRight { display:table; width: 100%; height:200px; }
[class$="Keyvisual"].h1BlockColRight h1 { display:table-cell; width: 100%; }
}

/* ファイルアイコン追加 ::は2つ入れないとIE8で読み込まれてクラッシュする（IE9の開発者モードで確認）*/
/* filesize getter対象要素には.filesizeを指定すること */
a[target="_blank"]::after { content: url(/common/image/icon_link_blank.png); text-decoration: none; margin: 0 2px 0 6px; }
a[href$=".pdf"]::after { content: url(/common/image/icon_pdf_s.png); margin-left: 4px; position: relative; top: 2px; text-decoration: none; }
a[href$=".doc"]::after,
a[href$=".docx"]::after { content: url(/common/image/icon_word_s.png); margin-left: 4px; position: relative; top: 2px; text-decoration: none; }
a[href$=".xls"]::after,
a[href$=".xlsx"]::after { content: url(/common/image/icon_excel_s.png); margin-left: 4px; position: relative; top: 2px; text-decoration: none; }
a.noIcon::after { content: none !important; }/* アイコンを付けたく無い時 */

/* エラーメッセージ */
.errorMessage { font-size: 20px; text-align: center; color: #f33; }
/* カテゴリートップのH1、キービジュアル
----------------------------------------------------------- */
/* キービジュアル */

/* モジュール
----------------------------------------------------------- */
/* 明治安田こころの健康財団とは */
.mainMdlAbout { background: #eeebe9; }
.mainMdlAbout h2 { position: relative; color: #666 !important; font-size: 20px; font-weight: normal; border-color: #666 !important; }
.mainMdlAbout h2 a { position: absolute; right: 0; bottom: 3px; font-size: 16px; font-weight: normal; }
@media only screen and (max-width: 480px) {
.mainMdlAbout { margin:20px 15px; padding: 10px; }
.mainMdlAbout .contents { margin-bottom: 0; }
.mainMdlAbout h2 a { position: relative; display:inline-block; margin-left:1em; vertical-align:text-bottom; }
}

/* その他の出版物一覧 */
.mainMdlBooks .contents { margin-bottom:0;}
.bookslistImage { text-align:center;}
.bookslistImage img { max-height:150px; margin-bottom:10px;}
.bookslistTitle { font-size:14px; line-height:1.3; text-align:center;}
@media only screen and (max-width: 480px) {
.mainMdlBooks .rowInner { margin-bottom:20px;}
.mainMdlBooks .colInner2-5 .contents { display:table; width:100%; margin:0 !important; border-spacing:10px;}
.bookslistImage { display:table-cell; width:90px;}
.bookslistImage img { max-height:80px; margin-bottom:0;}
.bookslistTitle { display:table-cell; text-align:left;}
}

/* 汎用クラス
----------------------------------------------------------- */
.pcDisplayNone { display: none; }
@media only screen and (max-width: 480px) {
.pcDisplayNone { display: block; }
.spDisplayNone { display: none; }
}
.small { font-size: 85%; }
.smaller { font-size: 80%; }
.smallest { font-size: 70%; }
.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }
.middle { vertical-align: middle; }
.nobr { display: inline-block; }
.nowrap { white-space: nowrap; }/* 改行しないTDなどに設定 */
.mt0 { margin-top: 0; }
.mt20 { margin-top: 20px; }
.mb0 { margin-bottom: 0; }
.mb20 { margin-bottom: 20px; }
.telLink { }/* 電話番号に設定JS用 */
.imgBorder { vertical-align: top; border: 1px solid #a9a3a1; }
/* ===========================================================
  ホーム
=========================================================== */
/* キービジュアル */
.bxslider { margin: 0; padding: 0; list-style: none; }
.bxslider li { margin: 0; }
.bxslider li>div { height: 230px; border-radius: 5px; box-shadow: 0 0 5px rgba(0,0,0,.3); position: relative; }
.keyvisualInner_1 { font-family: "Hiragino Maru Gothic ProN", "HG丸ｺﾞｼｯｸM-PRO", HGMaruGothicMPRO, sans-serif; background: #fff5e2 url(../../image/keyvisual_01_kokoro.png) no-repeat 530px 20px; }
.catchcopy { color: #eb6132; font-size: 40px; line-height: 1.5; text-shadow: 1px 1px 3px #fff, -1px -1px 3px #fff, 1px -1px 3px #fff, -1px 1px 3px #fff, 2px 2px 3px #fff, -2px -2px 3px #fff, 2px -2px 3px #fff, -2px 2px 3px #fff, 3px 3px 3px #fff, -3px -3px 3px #fff, 3px -3px 3px #fff, -3px 3px 3px #fff; padding: 60px 0 0 40px; }
.catchcopy .small { display: inline-block; }
@media only screen and (max-width: 480px) {
.keyvisualBlock { margin-bottom:20px;}
.bxslider li>div { border-radius: 0; height: 190px; }
.keyvisualInner_1 { background-position: center center; background-size: contain; }
.catchcopy { position: absolute; top: 0; right: 0; bottom: 0; left: 0; font-size: 28px; text-align: center; padding: 30px 20px; }
}
/* キャッチコピー */
.catchcopyBlock div { background-color:#fff5e2; padding:15px; margin-bottom:0; }
.catchcopyBlock p { font-size:20px; font-weight:bold; text-align:center; margin-bottom:0; }
.catchcopyBlock strong { font-weight:bold;}
.catchcopyBlock a,
.catchcopyBlock a:link { color:#666; text-decoration:none; }
.linkButton { color:#fff; font-size:14px; font-weight:normal; background-color:#fc550c; padding:4px 20px; border-radius:15px;; }
.linkButton:after { content: ""; display: inline-block; width: .5em; height: .5em; border-right: 1px solid #fff; border-bottom: 1px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); vertical-align: 1px; margin-left: .25em; }



/* カテゴリページへのショートカット */
.shortcutBlock+.shortcutBlock { margin-top:30px; }
.shortcutBlock>div { position: relative; }
.shortcut { vertical-align: top; display:block; height: 130px; overflow:auto; border: 3px solid #000; border-top-width:20px; border-radius: 5px; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.shortcut:hover { text-decoration: none; }
.shortcut h2 { font-size: 22px; text-align: center; padding: 12px 6px; margin-bottom: 0; height: 50px; border-bottom: none; }
.shortcut h2 img { vertical-align: middle; margin-right: 8px; position: relative; }
.shortcut p { color: #666; font-size: 14px; text-align: center; line-height: 1.5; margin-bottom:15px; padding:0 10px; }
.shortcutSeminar { border-color: #49aae6; }
.shortcutSeminar h2 { color: #666; /*background-color: #49aae6;*/ }

.shortcutAssist { border-color: #2fce2b; }
.shortcutAssist h2 { color: #666; /*background-color: #2fce2b;*/ }
.shortcutAssist h2 img { bottom: 2px; }
.shortcutConsult { border-color: #fc550c; }
.shortcutConsult h2 { color: #666;/* background-color: #fc550c;*/ }
.shortcutConsult h2 img { bottom: 4px; }
.shortcutConsult p { display:inline-block; text-align:left; }
.shortcutPublish { border-color: #ffea39; }
.shortcutPublish h2 { color: #666; /*background-color: #ffea39;*/ }
.shortcutPublish h2 img { bottom: 4px; }
.shortcutPublish p { display:inline-block; text-align:left; }
.shortcutPublish em { color:#666; }
.shortcutContribution { border-color: #a9a3a1; border-top-width:3px; }
.shortcutContribution h2 { color: #666; font-size: 22px; font-weight: bold; padding: 17px 6px; }
.shortcutContribution p { margin-top:16px;}
.shortcutComboard { border-color: #ffea39; border-top-width:3px; }
.shortcutComboard img { float: left; margin: 10px; }
.shortcutComboard h2 { color: #666; font-size: 19px; font-weight: bold; line-height: 1.1; margin-bottom: 0; padding: 23px 6px 8px 6px; }
.shortcutComboard p { margin-top: 4px; }
@media only screen and (max-width: 480px) {
.shortcutBlock > div,
.shortcutBlock > div:first-child { min-height:auto; height:auto; margin:15px; }
.shortcutBlock + .shortcutBlock { margin-top:0; }
.shortcut { height:auto; }
.shortcutComboard h2 { height:auto;  }
.shortcutComboard p { margin-top: 0; padding:0 10px 0 100px; }
}
/* ニュース・お知らせ（一覧も） */
.newsBlock>div { padding: 20px; border-radius: 5px; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.newsBlock h2 { font-size: 20px; margin-bottom: 10px; border-bottom: 3px solid #a9a3a1; }
h2.newsSeminar { border-color: #49aae6; }
.newsListBlock { max-height: 480px; overflow: auto; }
.newsDl { font-size: 14px; margin-bottom: 0; border-top: none; }
.newsDl dt { font-weight: normal; }
.newsDl dt img { vertical-align: -2px; margin-left: 8px; }
.newsDl dd { line-height: 1.5; padding: 0 0 8px 0; border-bottom: 1px dotted #666; }
.newsListDl { font-size: 16px; margin-bottom: 0; border-top: none; }
.newsListDl dt { font-weight: normal; float: left; width: 10em; clear: left; padding: 8px; }
.newsListDl dd { line-height: 1.5; border-bottom: 1px dotted #666; padding: 8px; padding-left: 11em; }
 @media only screen and (max-width: 480px) {
.newsBlock>div { margin: 15px; }
.newsListBlock { max-height: none; }
.newsListDl dt { float: none; padding-bottom: 0; }
.newsListDl dd { padding: 0 8px 8px 8px; }
}

/* ニュース・お知らせ内のキャッシュ対応によるアイコン表示補正 2020/09/25  */
a[href*=".pdf?"]::after { content: url(/common/image/icon_pdf_s.png); margin-left: 4px; position: relative; top: 2px; text-decoration: none; }
/* キャッシュ対応によるアイコン表示補正 2020/09/25  */
a[href*=".pdf?"]::after { content: url(/common/image/icon_pdf_s.png); margin-left: 4px; position: relative; top: 2px; text-decoration: none; }
a[href*=".doc?"]::after,
a[href*=".docx?"]::after { content: url(/common/image/icon_word_s.png); margin-left: 4px; position: relative; top: 2px; text-decoration: none; }

/* ===========================================================
  財団について
=========================================================== */
.dlProfile dt { float: left; width: 6em; clear: left; font-weight: normal; }
.dlProfile dd { padding-left: 8em; }
@media only screen and (max-width: 480px) {
.dlProfile dt { float: none; }
.dlProfile dd { padding-left: 1em; }
}
/* 公告 */
.financialTable { width: 100%; font-size: 14px; }
.financialTable tbody th { font-weight: normal; }
.financialTable tbody td { text-align: center; font-size:12px; }
.financialTable a { display:block;}
.legend { text-align: right; font-size: 85%; margin-bottom: 0; }
/* 沿革 */
.historyTable { font-size: 14px; }
.historyTable tr.tablerow { border-top: 1px solid #999; }
.historyTable tbody th,
.historyTable tbody td { border-right: none; vertical-align:top; }
.historyTable tbody tr { border-bottom:1px solid #333; }
.year { width: 4em; text-align: center; }
.month { width: 3.5em; text-align: center; }
/* 50周年 */
dl.symposiumSummary,
dl.assistInfo { margin: 0 15px 15px 0; }
dl.symposiumSummary dt,
dl.assistInfo dt { clear: left; float: left; width: 150px; padding: 8px 6px 8px 20px; margin-bottom: 0; }
dl.symposiumSummary dt:before,
dl.assistInfo dt:before { content: "●"; color: #a9a3a1; position: relative; left: -10px; }
dl.symposiumSummary dt span,
dl.assistInfo dt span { font-size: 11px; margin-left: 3px; }
dl.symposiumSummary dd,
dl.assistInfo dd { padding: 8px 6px; padding-left: 190px; margin-left: 0; margin-bottom: 0; }
dl.symposiumSummary dd:last-child { border-bottom: none; }
 @media only screen and (max-width: 480px) {
dl.symposiumSummary,
dl.assistInfo { margin: 0 0 15px 0; }
dl.symposiumSummary dt,
dl.assistInfo dt { float: none; padding: 8px 0 0 10px; width: auto; }
dl.symposiumSummary dd,
dl.assistInfo dd { padding: 0 0 8px 0; }
}
/* アクセスマップ */
.googleMapBlock { margin-bottom:15px; }
.googleMapFrame { width: 100%; height: 300px; border: 0; }
@media only screen and (max-width: 480px) {
.googleMapFrame { height: 250px; }
}
/* ===========================================================
  研修講座
=========================================================== */
[class^="seminar"] .h1BlockColLeft { background-color: #49aae6; }
[class^="seminar"] h2 { color: #49aae6; border-color: #49aae6; }
/* サブナビゲーション */
[class^="seminar"] .subNavBlock { border-bottom: 3px solid #49aae6; }
[class^="seminar"] .subNavBlock .subNav2ndLevel>a { background: #49aae6; }
 @media only screen and (max-width: 480px) {
.seminarListBlock { border-radius: 0; background: #eee; box-shadow:none; margin-bottom:0; }
.seminarListBlock .contents {margin-bottom:20px;}
}
/* 申込み完了メールについて */
.aboutEmail { border:3px solid #49aae6; padding:17px; margin-bottom:20px; }
.emailBox { color:#49aae6; font-weight:bold; background:#fff; text-align:center; font-size:24px;}

/* 研修講座一覧表 */
.seminarConTable,
.seminarTable { font-size: 14px; border: 1px solid #ccc; width: 100%; line-height:1.4; }
.seminarConTable th,
.seminarConTable td,
.seminarTable th,
.seminarTable td { text-align: center; border: 1px solid #ccc; padding: 0; }
.seminarConTable th div,
.seminarConTable td div,
.seminarTable th div,
.seminarTable td div { padding: 5px 8px; }
/* 各項目設定 */
.seminar-code { width:70px; }
.seminar-title { width: 220px; }
.moreinfo { font-weight:normal; font-size:12px; display:block; }
.moreinfoExam { color:#0779ee; }
.moreinfo img { vertical-align:-2px; }
div.seminar-teacher { width: 220px; border-top: 1px solid #ccc; }
.seminar-dayoftheweek { width:45px; }
div.seminar-times { border-top: 1px solid #ccc; }
span.seminar-schedule-note { display: block; font-weight: normal; }
.seminar-capacity { width:45px; }
.seminar-place { width: 140px; }
.seminar-price { width: 80px; }
td.seminar-price div { text-align: right; }
.seminar-app { width: 140px; }
.seminar-app ul { font-size: 0; padding: 0; margin: 0; list-style: none; }
.seminar-app ul li { font-size: 14px; text-align: center; border-bottom: 1px solid #ccc; margin: 0; padding: 5px 8px; }
.seminar-app ul li:last-child { border: none; }
.seminar-app ul a { display: block; padding: 4px 8px; }
.seminar-note { width: 100px; }
/* 選択時 */
.seminarConTable tr.checked td,
.seminarConTable tr.checked .seminar-title,
.seminarTable tr.checked td,
.seminarTable tr.checked .seminar-title { background: #d2e8f6; }
 @media only screen and (max-width: 480px) {
.seminarConTable,
.seminarTable { border: none; }
.seminarConTable thead,
.seminarTable thead { display: none; }
.seminarConTable tr,
.seminarTable tr { display: block; border-radius: 5px; box-shadow: 1px 1px 6px rgba(0,0,0,0.4); }
.seminarConTable th,
.seminarConTable td,
.seminarTable th,
.seminarTable td { font-size: 14px; font-weight: bold; text-align: left; display: block; background: #fff; transition: all 0.2s; border-top: 0; border-left: 0; }
.seminarConTable td div:before,
.seminarTable td div:before { font-size: 13px; color: #666; font-weight: normal; }
.seminar-code div,.seminar-title div:first-child { color: #fff; background: #49aae6; }

.seminarTable .seminar-code div:before { content: "コード"; color: #fff; display: inline-block; width: 5em; padding-bottom: 4px; }
.seminar-code,
.seminar-title,
.seminar-dayoftheweek,
.seminar-capacity,
.seminar-price { width: 100%; }
.seminarConTable .seminar-title div:first-child:before,
.seminarTable .seminar-title div:first-child:before { content: "講座名"; display: block; color: #fff; }
.seminar-title a,.seminar-title a:visited { color:#fff;}
.seminar-title div:first-child:after { content:"※詳細は上記講座名をクリックしてください"; font-weight:normal; font-size:12px; text-align:center; display:block; padding: 3px; }
div.seminar-teacher { text-align: center; width: 100%; }
div.seminar-teacher:before { content: "企画講師"; display: block; text-align: left; }
.seminar-dayoftheweek div { width: 49%; display: inline-block; }
.seminar-dayoftheweek div:first-child { border-right: 1px solid #ccc; }
.seminar-dayoftheweek div:first-child:before { content: "曜日"; display: inline-block; width: 5em; }
.seminar-dayoftheweek div:first-child:after { content: "曜日"; }
div.seminar-times { border-top: none; }
div.seminar-times:before { content: "回数"; display: inline-block; width: 5em; }
div.seminar-times:after { content: "回"; }
.seminar-schedule div:before { content: "日程"; display: inline-block; width: 5em; }
.seminar-capacity div:first-child { border-bottom:1px solid #ccc;}
.seminar-capacity div:first-child:before { content: "定員"; display: inline-block; width: 5em; }
.seminar-capacity div:first-child:after { content: "人"; }
div.openInfo:before { content: "詳細を表示する ↓"; }
div.openInfo.active:before { content: "詳細を閉じる ↑"; }
.seminar-place { width: 100%; }
.seminar-place div:before { content: "開催場所"; display: inline-block; width: 5em; }
td.seminar-price.active { padding: 0; }
td.seminar-price div { text-align: left; }
.seminar-price div:before { content: "受講料"; display: inline-block; width: 5em; }
.seminar-app { width: 100%; padding: 0 8px; }
.seminar-app ul { width: 100%; }
.seminar-app ul:before { content: "申込書・講座選択"; display: block; font-weight: normal; font-size: 13px; color: #666; }
.seminar-note { margin-bottom: 30px; }
.seminar-note div:before { content: "備考"; display: block; padding-bottom: 4px; }
/* 講座選択ボタンチェック時 */
.openInfo { text-align: center; display: block; border: 1px solid #999; border-radius: 3px; padding: 5px 8px; margin: 10px; background: #eaeaea; cursor: pointer; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.seminar-app ul { width: 100%; }
.seminar-app ul li { padding: 5px 0; }
.seminar-app ul li:nth-child(1) { display: inline-block; width: 49%; margin-right: 2%; border: none; }
.seminar-app ul li:nth-child(2) { display: inline-block; width: 49%; border: none; }
.seminar-app ul li a { display: block; color: #fff; background: #39c; border-radius: 3px; padding: 8px; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.seminar-app ul label { display: block; color: #fff; background: #39c; border-radius: 3px; padding: 8px; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.seminar-app ul label.checked { background: #ffa912; }
.seminar-app ul input { margin-right: 4px; vertical-align: -2px; }
.seminar-note { width: 100%; }
.seminarConTable td.seminar-price,
.seminarConTable td.seminar-app,
.seminarConTable td.seminar-place,
.seminarTable td.seminar-price,
.seminarTable td.seminar-app { height: 0; padding: 0; overflow: hidden; border-bottom: none; }
.seminarConTable td.seminar-app,
.seminarTable td.seminar-app { padding: 0 8px; }
.seminarConTable td.seminar-price.active,
.seminarConTable td.seminar-app.active,
.seminarConTable td.seminar-place.active,
.seminarTable td.seminar-price.active,
.seminarTable td.seminar-app.active,
.seminarTable td.seminar-note.active { height: auto; border-bottom: 1px solid #ccc; }
.seminarConTable td.seminar-app.active,
.seminarTable td.seminar-app.active { padding: 5px 8px; }
.seminarTable tr.checked td.seminar-code { background: #49aae6; }
.seminarTable tr.checked td.seminar-code div:before { color: #fff; }
}

/* 2022年度対応追加 */

.seminaListUL { list-style: none; display: flex; flex-wrap: wrap; justify-content: space-between; border-top: 3px solid #0779ee; border-bottom:3px solid #0779ee; margin: 30px 0 60px 0; padding: 0; }
.seminaListUL li { margin: 0; display: flex; align-items: center; }
.seminarTitle { font-size: 20px; font-weight: bold; line-height:1.2; width: 690px; padding:12px 4px; }
.seminarTitle a[href*="showpdf.php"]::after { content: url(/common/image/icon_pdf_s.png); margin-left: 4px; position: relative; top: 2px; text-decoration: none; }
.seminarKind { font-size:13px; text-align:center; line-height:1; text-align: center; width: 100px; padding: 4px; }
.kind_online:before,
.kind_in-person:before,
.more-detail:before { content:""; display:block; width:30px; height:30px; background-size:contain; margin:0 auto 4px auto; background-repeat:no-repeat; background-position:center center; }
.kind_online:before { background-image:url(../../common/image/icon_kind_online.png); }
.kind_in-person:before { background-image:url(../../common/image/icon_kind_in-person.png);}
.more-detail:before { background-image:url(../../common/image/icon_more-detail.png); }
.seminarTeacher { line-height:1.3; width: 430px; padding: 4px; border-top: 1px solid #ccc; }
.seminarCapacity { text-align: center; line-height:1.3; width: 80px; padding: 4px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; }
.seminarPlace { line-height:1.3; width: 280px; padding: 4px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; }
.seminarPrice { text-align: center; width: 100px; padding: 4px; border-top: 1px solid #ccc; border-left: 1px solid #ccc; }
.seminarSchedule { }
.scheduleUL { list-style: none; font-weight: normal; line-height: 1.2; width: 730px; margin: 0; padding: 0; border-top: 1px solid #ccc; border-right: 1px solid #ccc; }
.scheduleUL li { display: flex; justify-content: stretch; align-items:stretch; border-bottom: 1px solid #ccc; margin: 0; padding: 0; }
.scheduleUL li:last-child { border-bottom: none; }
.scheduleUL li span { text-align: center; line-height:1; padding: 8px 4px; }
.scheduleUL li span:first-child { color: #000; width: 80px; background-color: #ddd; }
.scheduleUL li span:nth-child(2) { width: 320px; text-align: left; border-left: 1px solid #ccc; }
.scheduleUL li span:nth-child(3) { color: #000; width: 80px; border-left: 1px solid #ccc; background-color: #ddd; }
.scheduleUL li span:nth-child(4) { width: 140px; border-left: 1px solid #ccc; }
.scheduleUL li span:nth-child(5) { width: 110px; border-left: 1px solid #ccc; }
.scheduleUL label.checked { color:#0779ee; }
.seminarApplication { border-top: 1px solid #ccc; }
.applicationUL { list-style: none; display: flex; justify-content: stretch; padding-top: 0; }
.applicationUL li { width: 80px; }
.applicationUL li a { width: 100%; text-align: center; }
.applicationUL li img { vertical-align:-2px; margin-right: 4px; }
.seminaListUL .seminarNotes { display: block; width:100%; padding: 8px; border-top: 1px solid #ccc; }
.questionnaireDL { line-height: 1; display: inline-block; margin: 0; border-radius: 5px; border:1px solid #333; }
.questionnaireDL dt { color: #333; font-weight: normal; display: inline-block; padding: 8px; }
.questionnaireDL dd { color: #333; display: inline-block; border-left: 1px solid #333; border-bottom: none; }
.questionnaireDL a { color: #0779ee; padding: 8px; }
.questionnaireDL img { margin-right: 4px; }
.seminarListInner { width: 100%; }

/* 日程・申込みはこちら */
li.openMoreInfoBox { display:none; border-top:1px solid #ccc; }
.openMoreInfo { text-align: center; display: block; border: 1px solid #999; border-radius: 3px; padding: 5px 8px; margin: 10px; background: #eaeaea; cursor: pointer; box-shadow: 0 0 5px rgba(0,0,0,.3); }
div.openMoreInfo:after { content:""; display:inline-block; vertical-align:4px; margin-left:10px; width:8px; height:8px; border-right:1px solid #333; border-bottom:1px solid #333; transform:rotate(45deg); transition: all 0.2s; }
div.openMoreInfo.open:after { vertical-align:-2px; transform:rotate(-135deg); }

/* 項目名 */
.data-label { color:#666; font-size: 13px; font-weight: normal; line-height:1; text-align:left; display: none; border-radius:3px; margin-bottom:4px; }
.seminarTeacher .data-label,
.seminarCapacity .data-label,
.seminarPlace .data-label,
.seminarPrice .data-label { display: block; }
.scheduleUL .data-label { display: block; font-size: 16px; border-radius:0; margin-bottom:0; }
.seminaListUL.checked,
.seminarMoreInfo.checked,
.seminarDays.checked,
.seminarNotes.checked { background-color: #d2e8f6; }
.scheduleUL.checked { background-color: #d2e8f6; }
.end-of-reception,
.end-of-reception .scheduleUL.checked span { background-color: #ddd; }
@media only screen and (max-width: 480px) {
.seminaListUL { font-size:14px; background-color:#fff; box-shadow:1px 1px 6px rgb(0 0 0 / 40%); border-top:none; }
.seminaListUL li { transition: all .2s; }
.seminarTitle { color:#fff; font-size:16px; font-weight:normal; background-color:#0779ee; width:calc(100% - 80px); }
.seminarTitle a { color:#fff; }
.data-label { font-size:12px; }
.seminarKind { color:#fff; font-size:12px; width:80px; background-color:#0779ee; }
.seminarCapacity { width:25%; border-left:none; }
.seminarPrice { width:32%; }
.seminarPlace { width:43%; }
li.seminarSchedule,
li.seminarApplication { width:100%; display:block; height:0; overflow:hidden; border-top:none; transition: all .2s; }
li.seminarSchedule.open { height:auto; }
li.seminarApplication.open { height:auto; border-top:1px solid #ccc; }
.scheduleUL { border-left:none; border-right:none; width:100%; }
.scheduleUL li { width:100%; flex-wrap:wrap; border-top:3px solid #0779ee; }
.scheduleUL li span:first-child { color:#fff; font-size:12px; width:80px; padding:10px 4px; background-color:#0779ee; border-bottom:1px solid #ccc; }
.scheduleUL li span:nth-child(2) { width:calc(100% - 80px); text-align:center; border-left:none; border-bottom:1px solid #ccc; }
.scheduleUL li span:nth-child(3) { font-size:12px; width:70px; padding:10px 4px; border-left:none; background-color:transparent; }
.scheduleUL li span:nth-child(4) { width: 120px; border-left:none; }
.scheduleUL li span:nth-child(5) { width:calc(100% - 190px); text-align:center; }
.applicationUL { width:100%; }
.applicationUL li:first-child { width:50%; padding:10px 5px 10px 10px; }
.applicationUL li:nth-child(2) { width:50%; padding:10px 10px 10px 5px; }
.applicationUL li a { padding:16px; display: block; color: #fff; background: #39c; border-radius: 3px; padding: 8px; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.applicationUL li:first-child a:after { content:"（Word）"; font-size:12px; }
.applicationUL li:nth-child(2) a:after { content:"（PDF）"; font-size:12px; }
.questionnaireDL { display:flex; flex-wrap:wrap; margin-bottom:10px; }
.questionnaireDL dt { display:block; width:100%; border-bottom:1px solid #333; }
.questionnaireDL dd { text-align:center; width:50%; padding:0; border-left:none; }
.questionnaireDL dd:nth-child(2) { border-right:1px solid #333; }
.questionnaireDL dd a { display:block; }
.seminaListUL li.openMoreInfoBox { display:block; width:100%; }
.kind_online,
.kind_in-person { display:block; }
.kind_online:before,
.kind_in-person:before { display:block; width:20px; height:20px; vertical-align:middle; margin:4px auto; }
.kind_online:before { background-image:url(../../common/image/icon_kind_online_sp.png); }
.kind_in-person:before { background-image:url(../../common/image/icon_kind_in-person_sp.png);}
}



/* 申込フォームへボタン */
.submitBlock { box-shadow: none; position: fixed;left:0; bottom: 0;width: 100%;  z-index: 1900; margin:0; background-color:rgba(255,255,255,.8);}

 @media only screen and (max-width: 480px) {
.submitBlock { position: fixed; bottom: 0; width: 100%; height: 50px; z-index: 100000; margin: 0; background: #fff; border-radius: 0; box-shadow: 0 0 5px rgba(0,0,0,.3); }
.submitBlock .contents { margin: 0; }
}
.entryBtn button[type=submit] { color: #fff; background: #ffa912; width: 300px; box-shadow:0 0 5px rgba(0,0,0,.3); padding: 8px 16px; border: 0; border-radius: 3px;}
@media only screen and (max-width: 480px) {
.entryBtn button[type=submit] { display: block; margin: 5px auto; min-width: 90%; }
}
/* ===========================================================
  研究助成
=========================================================== */
[class^="assist"] .h1BlockColLeft { background-color: #2fce2b; }
[class^="assist"] h2 { color: #2fce2b; border-color: #2fce2b; }
/* ===========================================================
  出版・啓発
=========================================================== */
[class^="publish"] .h1BlockColLeft { background-color: #ffea39; }
[class^="publish"] h2 { color: #666; border-color: #ffea39; }
/* サブナビゲーション */
[class^="publish"] .subNavBlock { border-bottom: 3px solid #ffea39; }
[class^="publish"] .subNavBlock .subNav2ndLevel>a { color:#666; background: #ffea39; }
.h1BlockText { color:#666; text-align:center; padding:0 20px; margin-bottom:0; }
.booksBlock { padding: 20px 0 0 0; }
.booksBlock h3 { margin: 0; }
.booksDl { font-size: 14px; }
.booksDl dt { float: left; clear: left; width: 5em; }
.booksDl dd { padding-left: 6em; }
@media only screen and (max-width: 480px) {
.booksBlock { padding:0; }
.h1BlockText { padding-bottom:16px;}
}
/* 研究助成論文集 */
.soldout { font-size:13px; line-height:1; vertical-align:middle; padding:4px 8px; background:#eaeaea; border-radius:3px; margin-left:1em; display:inline-block; }
.rapTitle { margin: 0 0 5px 0; }
.rapSubTitle { font-size: 85%; display: block; }
.authors { font-size: 85%; padding-left: 3em; text-indent: -3em; }
.authors .labelAuthors { display: inline-block; width: 3em; padding-right: 1em; text-align: right; }

/* 啓発事業 */
.figureBlock { display:flex; }
.figureBlock p { margin-bottom:0;}
.figureBlock img { line-height:1; vertical-align:bottom; }
.seminarImageBlock { margin:0 20px 20px 0; gap:10px;}
.youtubeImageBlock { align-items:flex-end; gap:10px;  margin:20px; }
.schoolImageBlock { align-items:flex-end; gap:10px;  margin:20px; }
.schoolImageBlock > p:first-child { width470px; }
.schoolImageBlock > p:nth-child(2) { width:240px; }
.enlightenmentTelBox { color:#666; font-size:20px; line-height:1.4; background-color: #ffea39; padding:20px; border-radius:5px; }
.enlightenmentTelNum { font-size:30px; font-weight:bold; line-height:1; text-align:center;}
.enlightenmentTelNum img { margin-right:8px; vertical-align:baseline; }
@media only screen and (max-width: 480px) {
.figureBlock { flex-flow:column; }
.seminarImageBlock { margin:20px; }
.schoolImageBlock > p:first-child,
.schoolImageBlock > p:nth-child(2) { width:auto; }
.enlightenmentTelBox { font-size:18px; margin:10px; }
.enlightenmentTelBox p { margin-bottom:10px; }
.enlightenmentTelNum { font-size:24px; }
.enlightenmentTelNum img { vertical-align:-3px; }
}
/* ===========================================================
  療育・相談
=========================================================== */
[class^="consult"] .h1BlockColLeft { background-color: #fc550c; }
[class^="consult_children"] .h1BlockColLeft { background-color: #ffa912; }
[class^="consult_healthy"] .h1BlockColLeft { background-color: #fc80a8; }
[class^="consult_"] .h1BlockColLeft h1 { padding-bottom:0; }
[class^="consult_"] .h1BlockColLeft h1 a { padding:0; }
.h1BlockTel { color:#fff; font-size:20px; text-align:center; padding:0 20px 16px 20px; }
.h1BlockTel:before { content:url(../image/icon_tel.png); vertical-align:middle; line-height:1; margin-right:5px; }
.h1BlockTel a { color:#fff; }
[class^="consult"] h2 { color: #fc550c; border-color: #fc550c; }
[class^="consult_children"] h2 { color: #ffa912; border-color: #ffa912; }
[class^="consult_healthy"] h2 { color: #fc80a8; border-color: #fc80a8; }
/* サブナビゲーション */
[class^="consult"] .subNavBlock { border-bottom: 3px solid #fc550c; }
[class^="consult"] .subNavBlock .subNav2ndLevel>a { background: #fc550c; }
.colorChildren { color: #ffa912; }
.colorHealthy { color: #fc80a8; }
.colorAssist { color: #2fce2b; }

/* 第三階層のナビゲーション */
.consultSubNav { font-size:14px; margin:0 auto; padding:0; text-align:center;}
.consultSubNav li { display:inline-block; margin:2px;}
.consultSubNav li:first-child { font-weight:bold;}
.consultSubNav a { color:#333; padding:8px 4px; position:relative;}
.consultSubNav a:after { content:""; display:block; width:0; height: 3px; position:absolute; bottom:0; left:50%;  transition: all 0.2s 0s ease; }
[class*="children"] .consultSubNav a:after { background: #ffa912; }
[class*="healthy"] .consultSubNav a:after { background: #fc80a8; }
.consultSubNav a:hover { text-decoration:none;}
.consultSubNav a:hover:after { width:100%; left:0; }
@media only screen and (max-width: 480px) {
[class*="children"] .consultSubNavBlock { padding:15px 0; background: #ffe4b6; }
[class*="healthy"] .consultSubNavBlock { padding:15px 0; background: #feccdc; }
.consultSubNav li { display:block; text-align:left; margin-bottom:8px;}
.consultSubNav li:first-child {font-size:16px; text-align:center; }
.consultSubNav li:last-child { margin-bottom:0;}
.consultSubNav a { padding:5px 8px;} 
.consultSubNav a:after { content: ""; display: inline-block; width: .5em; height: .5em; border-right: 1px solid #333; border-bottom: 1px solid #333; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); vertical-align: 2px; margin-left: .25em; position:relative; left:4px;}
[class*="children"] .consultSubNav a:after { background: none; }
[class*="healthy"] .consultSubNav a:after { background: none; }
.consultSubNav a:hover:after { width:.5em; left:8px; }
}
/* 相談メニュー */
.consultListBlock { padding:20px 20px 0 20px;}
.consultListBlock h3 { margin-top:0; text-align:center; font-weight:bold;}
.consultList { padding-left:0; }
@media only screen and (max-width: 480px) {
.consultListBlock { padding:20px 10px 0 10px;}
}
/* フロー */
.childFlowBlock { display:flex; justify-content:space-between; width:100%; padding:0 20px; }
.childFlowStep { width:233px; border:1px solid #ffa912; border-radius:3px 3px 0 0; position:relative; }
.childFlowStep::after { content:""; display:block; border-top: 15px solid transparent; border-bottom: 15px solid transparent; border-left: 15px solid #ffa912; position:absolute; top:45%; right:-15px; }
.childFlowStep:last-child::after { content:none; }
.childFlowTitle { color:#fff; font-size:18px; font-weight:bold; text-align:center; padding:8px; background:#ffa912; position:relative;}
.childFlowText { font-size:14px; padding:10px; }
.childFlowText p { margin-bottom:0; }
@media only screen and (max-width: 480px) {
.childFlowBlock { display:block; padding:0 10px; }
.childFlowStep { width:100%; margin-bottom:30px; }
.childFlowStep::after { border-top: 15px solid  #ffa912; border-right: 15px solid transparent; border-bottom: 15px solid transparent; border-left: 15px solid transparent; top:auto; bottom:-31px; right:calc(50% - 15px); }
}
/* 保育園・幼稚園・学校・相談機関の先生方へ */
.covoid-tel { font-weight:bold; color:#0010d2; }
/* ===========================================================
  よくお問合せをいただく内容
=========================================================== */
.faqDl dt,
.faqDl dd { text-indent:-2em; padding-left:2em; }
.faqDl dt { color:#fc80a8;  font-weight:bold; margin-top:12px;}
.faqDl dd { padding-bottom:20px; margin-bottom:12px;}
.icon_q:after,
.icon_a:after { text-indent:0; color:#fff; font-weight:bold; display:inline-block; width:1.5em; margin-right:.5em; text-align:center; border-radius:3px; }
.icon_q:after { content:"Q"; background:#fc80a8;}
.icon_a:after { content:"A"; background:#a9a3a1;}

/* ===========================================================
  コミュニケーション支援ボード
=========================================================== */
[class^="communication_board"] .h1BlockColLeft { background-color: #ffea39; }
[class^="communication_board"] h2 { color: #000; border-color: #ffea39; }
/* サブナビゲーション */
[class^="communication_board"] .subNavBlock { border-bottom: 3px solid #ffea39; }
[class^="communication_board"] .subNavBlock .subNav2ndLevel>a { color:#000; background: #ffea39; }

.aboutComboardUL { padding:15px; margin-bottom:30px; border:5px solid #ffea39; }
.aboutComboardUL li:last-child { margin-bottom:0; }
/* ===========================================================
  サイトマップ
=========================================================== */
.sitemapList { list-style:disc; list-style-position:inside; margin-left:0;}
.sitemapList ul { padding:0 0 0 25px; margin:0; }
.sitemapList li { padding:5px 0; margin:0; }
.level2nd { padding-left:0;}
.level2nd>li { font-size:20px; padding: 0 0 15px 15px; margin-bottom:15px; border-bottom:1px solid #ccc;}
.level2nd>li:last-child { border:none;}
.level3rd { list-style:disc; padding-left:20px;}
.level3rd li { font-size:16px;}
.level4th { list-style:disc; padding-left:20px;}