@charset "UTF-8";



/* 
-------------------------------------------------------------------------------- */

body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
  font-size: 16px;
  font-style: normal;
  line-height: 1.75;
  font-feature-settings: "palt";/*文字詰め*/
  /*font-feature-settings: "pkna";*//*文字詰め プロポーショナルかな*/
  /*font-feature-settings: "pwid";*//*文字詰め プロポーショナル字形*/
  color: #000000;
  background-color: #fffff0;
  margin: 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  body {
    letter-spacing: 0.05em;
  }
}


body {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  body {
    width: 750px;
  }
}
@media (min-width: 992px) {
  body {
    width: 970px;
  }
}
/*@media (min-width: 1200px) {
  body {
    width: 1170px;
  }
}*/


/* コンテンツが少ない量でもフッタを一番下に配置する
https://coliss.com/articles/build-websites/operation/css/clever-sticky-footer-technique.html*/
html, body {
  height: 100%;
}
body > footer {
  position: sticky;
  top: 100vh;
}
/*@media (min-width: 768px) {
  html, body {
    height: 100%;
  }
  body > footer {
    position: sticky;
    top: 100vh;
  }
}*/



/* リセット
-------------------------------------------------------------------------------- */

h1,h2,h3,h4,h5,h6 {
  margin: 30px 0px 0px;
  padding: 0px;
  font-size: 16px;
  font-style: normal;
  font-weight: normal;
  line-height: 1.2;
}

/*h1に上マージンあるとフッタを一番下に配置した時マージン分下にずれてしまうので*/
h1 {
  margin: 0px;
}


nav {
  margin: 15px 0px 0px;
  padding: 0px;
}
p {
  margin: 15px 0px 0px;
  padding: 0px;
  text-align: justify;
  text-justify: inter-ideograph;
}
figure {
  margin: 15px 0px 0px;
  /*margin: 21px 0px 0px;*//*21px＝15px＋0.375em*/
  padding: 0px;
  text-align: center;
}
figcaption {
  font-size: 14px;
  line-height: 1.5;
}

img {
  border-width: 0px;
}
ul {
  margin: 15px 0px 0px;
  padding: 0px;
  list-style-type: none;
}
li {
  margin: 0px;
  padding: 0px;
}
/*dl,dt,dd {
  margin: 0px;
  padding: 0px;
}*/
table {
  margin: 15px 0px 0px;
  padding: 0px;
  border-collapse: collapse;
  width: 100%;
}
th {
  font-weight: normal;
  text-align: left;
  vertical-align: top;
  white-space: nowrap;
  padding: 0.75em 0px;
}
th::after {
  content: "　";
}
td {
  vertical-align: top;
  text-align: justify;
  text-justify: inter-ideograph;
  padding: 0.75em 0px;
}
td p {
  margin: 0px;
}
td ul {
  margin: 0px;
}
address {
  margin: 0px;
  padding: 0px;
  font-style: normal;
}
small {
  margin: 0px;
  padding: 0px;
  font-size: 16px;
}



/* 
-------------------------------------------------------------------------------- */

a:link {
  color: #06f;
  text-decoration: none;
}
a:visited {
  color: #009;
  text-decoration: none;
}
a:hover {
  color: #09f;
  text-decoration: underline;
}
a:active {
  color: #03f;
  text-decoration: none;
}



/* header
-------------------------------------------------------------------------------- */

header {
  text-align: center;
  padding-top: 15px;/*フッタを一番下に配置を効かそうとするとここに上余白つけるしかなく*/
}
@media (min-width: 768px) {
  header {
    padding-top: 25px;
  }
}

header h1 {
  text-align: left;
  margin: 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  header h1 {
    width: 519px;
    margin: 0px;/*左揃え*/
  }
}
@media (min-width: 992px) {
  header h1 {
    width: 519px;
    margin: 0px auto;/*センター揃え*/
  }
}

header h1 img:first-of-type {
  width: 50%;
  margin: 0px;
  padding: 0px;
}
header h1 img:last-of-type {
  width: 100%;
  margin: 0px;
  padding: 0px;
}
@media (min-width: 768px) {
  header h1 img:first-of-type {
    width: 173px;
    vertical-align: top;
  }
  header h1 img:last-of-type {
    width: 346px;
    vertical-align: top;
  }
}



/* メガメニュー（w992px以上　w991以下は右肩ボタン）
-------------------------------------------------------------------------------- */

/*w991以下　右肩ボタン*/

#comlNavCheck {
  display: none;
}
.comlNavButton {
  width: 100px;
  height: 35px;
  border-radius: 35px;
  position: absolute;
  top: 25px;
  right: 15px;
  background-color: #009933;
  z-index: 10;
}
@media (min-width: 768px) {
  .comlNavButton {
    top: 40px;
    right: 15px;
  }
}
.comlNavButton::before {
  /*font-family: "Font Awesome 5 Free";
  content: "\f0c9";*//*三本線*/
  /*font-weight: 900;*/
  content: "メニュー";
  font-size: 12px;
  position: absolute;
  color: #ffffff;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
#comlNavCheck:checked + .comlNavButton::before {
  /*content: "\f00d";*//*バツ印*/
  content: "とじる";
  font-size: 12px;
}
#comlNavCheck:checked + .comlNavButton {
  background-color: #006600;
  position: fixed;
}
@media (min-width: 768px) {
  #comlNavCheck:checked + .comlNavButton {
    top: 40px;
    right: 15px;
  }
}
.comlGlobalNav {
  visibility: hidden;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  padding: 0px;
  color: #ffffff;
  background: rgba(51,204,102,0.95);/*#33cc66の不透明度95％*/
  overflow-y: scroll;
  text-align: left;
  margin: 0px auto;
  line-height: 1.2;
}
@media (max-width: 991px) {
  .comlGlobalNav {
    margin-top: 0px;/*navに上マージン15px設定済みなので打ち消し*/
  }
}
#comlNavCheck:checked ~ .comlGlobalNav {
  visibility: visible;
  z-index: 9;/*カルーセルより手前に表示するように（ボタンが10）*/
}
.comlGlobalNav a {
  display: block;
  width: 100%;
  color: #ffffff;
  text-decoration: none;
}
/*.comlGlobalNav a:hover {
  background-color: #006600;
}*//*スマホではhover効かないので*/
.comlGlobalNav a:active {/*スマホ用*/
  background-color: #006600;
}
.comlNavParent {
  padding-top: 1.125em;
  border-top: 2px solid #11aa44;
}
.comlNavParent:not(:last-child) {
  margin-bottom: 20px;
}
.comlNavParent:last-child {
  margin-bottom: 100px;
}
.comlNavParent > a {
  font-weight: bold;
  padding: 0.75em 2em;
}
.comlNavChild {
  margin-top: 0.35em;
}
.comlNavChild > li > a {
  padding: 0.75em 4em;
  font-size: 1em;
}
@media (max-width: 991px) {
  .comlNavParent > a br {
    display: none;
  }
}


/*w992以上　メガメニュー */

@media (min-width: 992px) {
  .comlNavButton {
    display: none;
  }
  .comlGlobalNav {
    position: relative;
    padding: 0px;
    color: #ffffff;
    background-color: #009933;
    visibility: visible;
    overflow-y: visible;
    text-align: center;
    border-radius: 9px;
    letter-spacing: 0;/*bodyに設定した字間を打ち消し*/
  }
  .comlNavParent, .comlNavChild > li {
    display: inline-block;
  }
  .comlNavParent {
    padding-top: 0px;/*打ち消し*/
    border-top: none;/*打ち消し*/
  }
  .comlNavParent:first-child {
    line-height: 2.4;
    vertical-align: top;
  }
  .comlNavParent:not(:last-child) {
    margin-bottom: 0;
  }
  .comlNavParent:last-child {
    margin-bottom: 0px;/*打ち消し*/
  }
  .comlNavParent > a {
    font-weight: normal;
    padding: 0.75em 12px;
    display: block;
    width: 6em;
  }
  .comlNavParent:hover > a {
    background-color: #006600;
  }
  .comlNavChild {
    width: 970px;
    position: absolute;
    top: 100%;
    left: 0;
    padding: 0px;
    margin-top: 0px;
    color: #ffffff;
    background: rgba(0,102,0,0.95);/*#006600の不透明度95％*/
    visibility: hidden;
    border-radius: 9px;
    line-height: 2.4;
  }
  .comlNavParent:hover .comlNavChild {
    visibility: visible;
  }
  .comlNavChild > li > a {
    padding: 0.75em 20px;
    display: block;
    width: auto;
  }
  .comlNavChild > li > a:hover {
      background-color: #003300;
      color: #ffffff;
  }
 
}



/* タブメニュー（トップページ 活動報告とメディア掲載情報）
-------------------------------------------------------------------------------- */
/* サブページ用のタブメニューが下方にあり */

.comlTabContainer {
  display: flex;
  flex-wrap: wrap;
}
.comlTabContainer > label {
  order: -1;
  margin: 20px 8px 0px 0px;
  padding: 0.75em;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  color: #ffffff;
  background-color: #33cc66;
  cursor: pointer;
  border-radius: 9px 9px 0px 0px;
}
.comlTabContent {
  width: 100%;
  display: none;
}

/*開いているタブ*/
.comlTabContainer > input[type="radio"]:checked + label {
  background-color: #009933;
}
.comlTabContainer > input[type="radio"]:checked + label + .comlTabContent {
  display: block;
}
.comlTabContainer > input[type="radio"] {
  display: none;
}

@media (min-width: 768px) {
  .comlTabContainer {
    margin: 0px auto;
  }
  .comlTabContent {
    margin: 0px auto;
  }
}

/*トップページの活動報告のところ専用　2タブ*/
@media (min-width: 768px) {
  body#comlHome .comlTabContainer {
    justify-content: space-between;
  }
  body#comlHome .comlTabContainer > label {
    margin: 30px 0px 0px 0px;
    display: inline-block;
    width: 343px;/*計算では出せず1pxずつ確認しながら確定*/
  }
}
@media (min-width: 992px) {
  body#comlHome .comlTabContainer > label {
    width: 453px;/*計算では出せず1pxずつ確認しながら確定*/
  }
}

/*活動報告とメディア掲載情報は見出し非表示*/
.comlTabContainer h3 {
  display: none;
}



/* 
-------------------------------------------------------------------------------- */

h2 {
  margin: 30px 0px 0px;
  padding: 0px;
  font-size: 24px;
  font-weight: bold;
  color: #009933;
  text-align: center;
}
@media (min-width: 768px) {
  h2 {
    letter-spacing: 0.25em;
    text-indent: 0.25em;/*letter-spacingで最後の文字にも字間が付いてセンターがずれるため*/
  }
}

@media (min-width: 768px) {
  body#comlHome h2:first-of-type {
    letter-spacing: 0.05em;
    text-indent: 0.05em;
  }
}

body#comlHome h2:not(:first-of-type) {
  margin-top: 45px;
}


h2.comlLines {
  line-height: 1.5;
  margin-top: calc(30px - 0.15em);
  margin-bottom: calc(0px - 0.15em);
}


h3 {
  margin: 30px 0px 0px;
  padding: 0px;
  font-size: 20px;
  font-weight: bold;
  color: #000000;
  text-align: center;
}

.comlEventSection h3 {
  display: none;
}

/*「主な活動内容」の見出しはh2にあわす*/
body#comlHome .comlFeatureSection h3 {
  margin: 30px 0px 0px;
  padding: 0px;
  font-size: 24px;
  font-weight: bold;
  color: #009933;
  text-align: center;
}
@media (min-width: 768px) {
  body#comlHome .comlFeatureSection h3 {
    letter-spacing: 0.25em;
    text-indent: 0.25em;/*letter-spacingで最後の文字にも字間が付いてセンターがずれるため*/
  }
}

body#comlHome .comlMapSection h3 {
  display: none;
}


body#comlHome p {
  text-align: center;
}


.comlLink {
  font-weight: bold;
}
ul.comlLink li.linkForward a::before {
  content: "\025b6\00a0";/*右向き三角＋スペース*/
}
ul.comlLink li.linkBackward a::before {
  content: "\025c0\00a0";/*左向き三角＋スペース*/
}

/*右端揃え用（R=Right）*/
.comlLinkR {
  font-weight: bold;
}
ul.comlLinkR li.linkForward a::after {
  content: "\00a0\025b6";/*スペース＋右向き三角*/
}
ul.comlLinkR li.linkBackward a::after {
  content: "\00a0\025c0";/*スペース＋左向き三角*/
}

/*トップページ過去の情報へのリンク*/
body#comlHome .comlInfoSection .comlLinkR {
  font-weight: normal;
  font-size: 14px;
  text-align: right;
  margin-top: 6px;/*6px=0.375em*/
}


/*sectionなどulの外側をaで囲む場合*//*blog.html*/
a ul.comlLink li.linkForward::before {
  content: "\025b6\00a0";/*右向き三角＋スペース*/
}
a ul.comlLink li.linkBackward::before {
  content: "\025c0\00a0";/*左向き三角＋スペース*/
}
a ul.comlLinkR li.linkForward::after {
  content: "\00a0\025b6";/*スペース＋右向き三角*/
}
a ul.comlLinkR li.linkBackward::after {
  content: "\00a0\025c0";/*スペース＋左向き三角*/
}


/*ページ内リンク*/
.comlInpageLink {
  font-weight: bold;
}
ul.comlInpageLink li.linkForward a::before {
  content: "\025bc\00a0";/*下向き三角＋スペース*/
  /*content: "\025bd\00a0";*//*下向き三角中抜き＋スペース*/
}
ul.comlInpageLink li.linkBackward a::before {
  content: "\025bc\00a0";/*下向き三角＋スペース*/
  /*content: "\025bd\00a0";*//*下向き三角中抜き＋スペース*/
}
@media (min-width: 768px) {
  ul.comlInpageLink li {
    display: inline-block;
    margin-right: 1em;
  }
}


/* 
-------------------------------------------------------------------------------- */

@media (min-width: 768px) {
  .comlInfoSection {
    margin: 0px auto;
  }
}

/*ホームページ更新情報の見出し*/
.comlInfoSection h3 {
  margin: 30px 0px 0px;
  padding: 0.75em;
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  background-color: #009933;
  text-align: left;
  border-radius: 9px 9px 0px 0px;
}


ul.comlFeature {
  margin-top: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
ul.comlFeature li {
  flex-basis: 9em;
}
ul.comlFeature li {
  margin: 5px;
  padding: 0px;
  text-align: center;
  border: 2px solid #009933;
  border-radius: 9px;
  background-color: #ffffff;
}
ul.comlFeature li a {
  display: block;
  margin: 0px;
  padding: 1.125em 0px 0.75em;
  text-align: center;
}
ul.comlFeature li a img {
  width: 5em;
  height: auto;
}


ul.comlInfo {
  margin: 0px;
  padding: 0px;
  background-color: #ffffff;
  border-top: 2px solid #009933;
  border-bottom: 2px solid #009933;
  /*height: 300px;
  overflow-y: scroll;*//*天地は内容に合わせて都度増減しスクロールなしに*/
}
ul.comlInfo li {
  padding: 0.75em;
  border-bottom: 2px solid #ccccaa;
}
ul.comlInfo li:last-of-type {
  border-bottom: none;
}
ul.comlInfo li span.comlInfoDate {
  display: block;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 2px;
}
@media (min-width: 768px) {
  ul.comlInfo li span.comlInfoDate {
    font-weight: normal;
    margin-bottom: 0px;
  }
}
ul.comlInfo li span.comlInfoCategory {
  display: block;
  margin-bottom: 4px;
  margin-left: 0px;
  padding: 0px;
  text-align: left;
}
ul.comlInfo li span.comlInfoCategory span {
  font-size: 14px;
  display: inline-block;
  width: 3.5em;/*会議 講演など2文字用*//*3文字以上の場合は下の ctg 追加*/
  margin-left: 0px;
  padding: 0px;
  background-color: #eeeecc;
  border-radius: 3px;
  text-align: center;
}
@media (min-width: 768px) {
  ul.comlInfo li {
    display: table;
    /*width: 100%;*/
    width: calc(100% - 1.5em);
  }
  ul.comlInfo li span.comlInfoDate {
    display: table-cell;
    width: 14em;
  }
  ul.comlInfo li span.comlInfoCategory {
    display: table-cell;
    width: 4em;/*会議 講演など2文字用*//*3文字以上の場合は下の ctg 追加*/
    text-align: left;
    padding-left: 0px;
  }
  ul.comlInfo li span.comlInfoCategory span {
    font-size: 14px;
    display: inline-block;
    width: 3.5em;/*会議 講演など2文字用*//*3文字以上の場合は下の ctg 追加*/
    margin-left: 0px;
    padding: 0px;
    background-color: #eeeecc;
    border-radius: 3px;
    text-align: center;
  }
}

/*カテゴリー 3文字用*//*座談会 分科会など*/
ul.comlInfo li span.ctg3 span {
  width: 4.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg3 {
    width: 5em;
  }
  ul.comlInfo li span.ctg3 span {
    width: 4.5em;
  }
}

/*カテゴリー 4文字用*//*セミナーなど*/
ul.comlInfo li span.ctg4 span {
  width: 5.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg4 {
    width: 6em;
  }
  ul.comlInfo li span.ctg4 span {
    width: 5.5em;
  }
}

/*カテゴリー 5文字用*//*病院探検隊 テレビ出演など*/
ul.comlInfo li span.ctg5 span {
  width: 6.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg5 {
    width: 7em;
  }
  ul.comlInfo li span.ctg5 span {
    width: 6.5em;
  }
}

/*カテゴリー 6文字用*//*シンポジウムなど*/
ul.comlInfo li span.ctg6 span {
  width: 7.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg6 {
    width: 8em;
  }
  ul.comlInfo li span.ctg6 span {
    width: 7.5em;
  }
}

/*カテゴリー 7文字用*//*ワークショップなど*/
ul.comlInfo li span.ctg7 span {
  width: 8.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg7 {
    width: 9em;
  }
  ul.comlInfo li span.ctg7 span {
    width: 8.5em;
  }
}

/*カテゴリー 8文字用*//*模擬患者（SP） ハーフ病院探検隊など*/
ul.comlInfo li span.ctg8 span {
  width: 9.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg8 {
    width: 10em;
  }
  ul.comlInfo li span.ctg8 span {
    width: 9.5em;
  }
}

/*カテゴリー 9文字用*//*講演・シンポジウムなど*/
ul.comlInfo li span.ctg9 span {
  width: 10.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg9 {
    width: 11em;
  }
  ul.comlInfo li span.ctg9 span {
    width: 10.5em;
  }
}

/*カテゴリー 10文字用*/
ul.comlInfo li span.ctg10 span {
  width: 11.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg10 {
    width: 12em;
  }
  ul.comlInfo li span.ctg10 span {
    width: 11.5em;
  }
}

/*カテゴリー 11文字用*//*パネルディスカッションなど*/
ul.comlInfo li span.ctg11 span {
  width: 12.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg11 {
    width: 13em;
  }
  ul.comlInfo li span.ctg11 span {
    width: 12.5em;
  }
}

/*カテゴリー 12文字用*/
ul.comlInfo li span.ctg12 span {
  width: 13.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg12 {
    width: 14em;
  }
  ul.comlInfo li span.ctg12 span {
    width: 13.5em;
  }
}

/*カテゴリー 13文字用*/
ul.comlInfo li span.ctg13 span {
  width: 14.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg13 {
    width: 15em;
  }
  ul.comlInfo li span.ctg13 span {
    width: 14.5em;
  }
}

/*カテゴリー 14文字用*//*講演とパネルディスカッションなど*/
ul.comlInfo li span.ctg14 span {
  width: 15.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg14 {
    width: 16em;
  }
  ul.comlInfo li span.ctg14 span {
    width: 15.5em;
  }
}

/*カテゴリー 15文字用*/
ul.comlInfo li span.ctg15 span {
  width: 16.5em;
}
@media (min-width: 768px) {
  ul.comlInfo li span.ctg15 {
    width: 17em;
  }
  ul.comlInfo li span.ctg15 span {
    width: 16.5em;
  }
}



/* iframe
-------------------------------------------------------------------------------- */

.comlMap iframe {
  width: 100%;
  height: 240px;
  margin: 0px;
  padding: 0px;
  border-radius: 9px;
}
@media (min-width: 768px) {
  .comlMap iframe {
    height: 480px;
  }
}


.comlForm iframe {
  width: 100%;
  height: 560px;
  margin: 0px;
  padding: 0px;
  background-color: #eeeecc;
  border-radius: 9px;
}



/* footer
-------------------------------------------------------------------------------- */

footer {
  margin: 30px 0px 0px;
  padding: 15px 0px 10px;
  background-color: #009933;
  color: #ffffff;
  text-align: center;
  border-radius: 9px 9px 0px 0px;
}
footer p {
  margin: 0px;
  text-align: center;
}
footer address a:link,
footer address a:visited,
footer address a:hover,
footer address a:active {
  color: #ffffff;
}
footer small {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 12px;
}
footer p:last-of-type {
  font-size: 12px;
}



/* Button（サブページ）
-------------------------------------------------------------------------------- */

/*section内でボタンの下にpなどがある場合*/
ul.comlButton {
  margin: 15px 0px -6px;/*li aに下マージン6px追加した分*/
  padding: 0px;
}
/*ここまで*/

/*section内でボタンの下に何もない場合*/
ul:last-child.comlButton {
  margin: 15px 0px 36px;
  padding: 0px;
}
/*ここまで*/

ul.comlButton li {
  margin: 0px auto;
  padding: 0px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  color: #ffffff;
  text-align: center;
  width: 80%;
}
@media (min-width: 768px) {
  ul.comlButton li {
    width: 360px;
  }
}
ul.comlButton li a {
  display: block;
  margin: 0px 0px 21px;/*6+15*/
  padding: 16px;
  color: #ffffff;
  border-radius: 48px;
  text-decoration: none;
  outline: none;
  position: relative;
}
ul.comlButton li a:link {
  background-color: #3399ff;
  box-shadow: 0px 6px #003399;
  top: 0px;
}
ul.comlButton li a:visited {
  background-color: #3399ff;
  box-shadow: 0px 6px #003399;
  top: 0px;
}
ul.comlButton li a:hover {
  background-color: #66ccff;
  box-shadow: 0px 4px #003399;
  top: 2px;
}
ul.comlButton li a:active {
  background-color: #0066cc;
  box-shadow: 0px 0px #003399;
  top: 6px;
}



/* Table（サブページ）
-------------------------------------------------------------------------------- */

body.comlSub table,
body.comlSub table th,
body.comlSub table td {
  border-style: none;
}
body.comlSub table {
  border-bottom: 2px solid #ccccaa;
}
body.comlSub table th {
  border-top: 2px solid #ccccaa;
}
body.comlSub table td {
  border-top: 2px solid #ccccaa;
}
@media (max-width: 767px) {
  body.comlSub table th,
  body.comlSub table td {
    display: block;
  }
  body.comlSub table th {
    background-color: #eeeecc;
    padding-left: 1em;
  }
  body.comlSub table tr td:nth-child(2) {
    border-top: none;
  }
}



/* Table（サブページ）　通常表組（上記設定上書き含む）
-------------------------------------------------------------------------------- */

/*スマホ表示の時だけTableの上にテキスト表示*/
body.comlSub p.comlTableHint {
  font-size: 14px;
  line-height: 1.2;
}
@media (min-width: 768px) {
  body.comlSub p.comlTableHint {
    display: none;
  }
}
/*ここまで*/

/*スマホ表示の時だけ横スクロールバー表示*/
@media (max-width: 767px) {
  body.comlSub div.comlTableStandard {
    overflow: auto;
  }
  body.comlSub div.comlTableStandard table {
    margin-bottom: 10px;/*横スクロールバー上余白*/
  }
}
/*ここまで*/

body.comlSub div.comlTableStandard table,
body.comlSub div.comlTableStandard table th,
body.comlSub div.comlTableStandard table td {
  border: 1px solid #999977;
}
body.comlSub div.comlTableStandard table th {
  text-align: right;
  vertical-align: middle;
  padding: 2px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.1;
  white-space: nowrap;
  background-color: #eeeecc;
}
body.comlSub div.comlTableStandard table th::after {
  content: "";/*上記設定上書きのため*/
}
body.comlSub div.comlTableStandard table td {
  vertical-align: middle;
  text-align: right;
  padding: 2px;
  font-size: 14px;
  line-height: 1.1;
  white-space: nowrap;
}
@media (max-width: 767px) {
  body.comlSub div.comlTableStandard table th,
  body.comlSub div.comlTableStandard table td {
    display: table-cell;/*上記設定上書きのため*/
  }
  body.comlSub div.comlTableStandard table th {
    background-color: #eeeecc;
    padding-left: 0px;/*上記設定を上書きのため*/
  }
}
body.comlSub div.comlTableStandard table tfoot td {
  font-weight: bold;
}
body.comlSub div.comlTableStandard table colgroup col:nth-child(odd) {
  background-color: #ffffff;
}


/*電話相談ページのTable限定*/
body.comlSub div.comlTableStandard table.comlSodanKensu {
  table-layout: fixed;
}
body.comlSub div.comlTableStandard table.comlSodanKensu th.comlTableHeader {
  width: 3.5em;
}
body.comlSub div.comlTableStandard table.comlSodanKensu td span {
  font-size: 12px;
}
/*ここまで*/



/* サブページ
-------------------------------------------------------------------------------- */

@media (min-width: 768px) {
  body.comlSub main {
    width: 704px;
    margin: 0px auto;
  }
}

/*過去の情報ページだけは幅いっぱいに広げる*/
@media (min-width: 768px) {
  body.comlSubKako main {
    width: 100%;
  }
}
@media (min-width: 992px) {
  body.comlSubKako main {
    width: 100%;
  }
}

body.comlSub h3 {
  margin: 30px 0px 0px;
  /*margin: 30px 0px 21px;*//*21px＝15px＋0.375em*/
  padding: 0.75em;
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  background-color: #ff8800;
  text-align: left;
  border-radius: 9px;
}
body.comlSub section:first-of-type h3 {
  display: none;
}

body.comlSub section.comlButtonSection {
  background-color: #ffffaa;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px;
}
body.comlSub section.comlButtonSection h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}

body.comlSub section.comlSpecialSection {
  background-color: transparent;/*#fffff0*/
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  /*padding: 0px 16px;*/
  padding: 0px 16px 30px;
}
body.comlSub section.comlSpecialSection h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body.comlSub section.comlSpecialSection h4 {
  margin: 15px 0px 0px;
  padding: 0.75em;
  font-size: 16px;
  font-weight: bold;
  color: #ff6600;
  background-color: #ffee66;
  text-align: left;
  border-radius: 9px;
}

body.comlSub main img {
  border-radius: 9px;
  /*width: 100%;*/
}
@media (max-width: 767px) {
  body.comlSub main img {
    width: 100%;
  }
}
@media (min-width: 768px) {
  img.comlImgMainFullWidth {
    width: 704px;
  }
}


.comlRed {
  color: #ff0000;
}
.comlOrange {
  color: #ff6600;
}
.comlGreen {
  color: #009933;
}

.comlNone {
  display: none;
}
@media (max-width: 767px) {
  .comlNoneSP {
    display: none;
  }
}
@media (min-width: 768px) {
  .comlNonePC {
    display: none;
  }
}

@media (min-width: 768px) {
  .comlBr {
    display: none;
  }
}

.comlNote {
  font-size: 14px;
  padding-top: 0.5em;
  border-top: 1px solid #aaaa88;
}
.comlNote2 {
  font-size: 14px;
}
.comlNote3 {
  font-weight: normal;
}

/*Margin Top 0*/
.comlMt0 {
  margin-top: 0px;
}

/*Margin Top 0.5-2em*/
.comlMt05 {
  margin-top: 0.5em;
}
.comlMt1 {
  margin-top: 1em;
}
.comlMt15 {
  margin-top: 1.5em;
}
.comlMt2 {
  margin-top: 2em;
}

/*Padding Top 0.5-2em*/
.comlPdt05 {
  padding-top: 0.5em;
}
.comlPdt1 {
  padding-top: 1em;
}
.comlPdt15 {
  padding-top: 1.5em;
}
.comlPdt2 {
  padding-top: 2em;
}

/*Paragraph Center*/
/*.comlPC {
  text-align: center;
}*/
@media (min-width: 768px) {
  .comlPC {
    text-align: center;
  }
}

.comlMaintenance {
  text-align: center;
}

.comlSignature {
  text-align: right;
  font-size: 20px;
  font-weight: bold;
}
.comlSignature2 {
  text-align: right;
  font-size: 16px;
  font-weight: normal;
}

.comlYakuin {
  display: inline-block;
  width: 6.5em;
}

.comlKatagaki {
  font-size: 14px;
  display: block;
}
@media (min-width: 768px) {
  .comlKatagaki {
    display: inline;
  }
}


@media (min-width: 768px) {
  body#comlSubAisatsu figure {
    float: right;
    /*width: 308px;*//*yamaguchi3_new.jpg*/
    /*margin: 21px 0px 1.75em 1.75em;*//*21px＝15px＋0.375em*/
    width: 228px;/*yamaguchi4_new.jpg*/
    margin: 21px 0px 0.75em 1.75em;/*21px＝15px＋0.375em*/
  }
  body#comlSubAisatsu figure img {
    /*width: 308px;*//*yamaguchi3_new.jpg*/
    width: 228px;/*yamaguchi4_new.jpg*/
  }
  /*以下clearfix*/
  body#comlSubAisatsu main section:first-of-type::after {
    content: "";
    display: block;
    clear: both;
    height: 0px;
    width: 0px;
  }
}


body#comlSubEnkaku .comlInfoSection h3 {
  margin: 21px 0px 0px;/*21px＝15px＋0.375em*/
  padding: 0px 0px 0.375em;
  font-size: 22px;
  font-weight: bold;
  color: #333333;
  background-color: transparent;
  text-align: center;
  border-radius: none;
}
body#comlSubEnkaku section:first-of-type h3 {
  display: block;/*noneを打ち消し*/
  margin: 0px;
}
body#comlSubEnkaku ul.comlInfo {
  border-top: 2px solid #ccccaa;/*#009933を打ち消し*/
  border-bottom: 2px solid #ccccaa;/*#009933を打ち消し*/
}
body#comlSubEnkaku ul.comlInfo li span.comlInfoDate {
  font-size: 16px;
  font-weight: normal;
  margin-bottom: 0px;
}
@media (min-width: 768px) {
  body#comlSubEnkaku ul.comlInfo li span.comlInfoDate {
    width: 8em;
  }
}
body#comlSubEnkaku figure {
  margin: 6px 0px 0px;
}
@media (min-width: 768px) {
  body#comlSubEnkaku figure {
    width: 424px;/*tsujimoto_new.jpg*//*kinenshi_30th_new.jpg*/
  }
  body#comlSubEnkaku figure img {
    width: 424px;/*tsujimoto_new.jpg*/
  }
  body#comlSubEnkaku figure img.comlEnkakuBookcover {
    width: 256px;/*kinenshi_30th_new.jpg*/
  }
}
@media (max-width: 767px) {
  body#comlSubEnkaku figure img.comlEnkakuBookcover {
    width: 64%;/*kinenshi_30th_new.jpg*/
  }
}


body#comlSubTeikan main article section {
  font-family: "Helvetica Neue", Arial, Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", sans-serif;
}
body#comlSubTeikan main h3 {
  display: block;
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
  color: #000000;
  background-color: transparent;
  text-align: center;
  font-feature-settings: normal;/*文字詰め打ち消し*/
  letter-spacing: 0px;/*字間打ち消し*/
}
body#comlSubTeikan main h4 {
  /*margin-top: 0.375em;*/
  font-size: 16px;
  font-weight: normal;
  line-height: 1.75;
  text-indent: 3em;
  text-align: left;/*両端揃え打ち消し*/
  font-feature-settings: normal;/*文字詰め打ち消し*/
  letter-spacing: 0px;/*字間0.05em打ち消し*/
}
body#comlSubTeikan main h4.teikanFusokuH {
  text-indent: 0px;
}
body#comlSubTeikan main h5 {
  margin-top: 0px;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.75;
  text-indent: 1em;
  text-align: left;/*両端揃え打ち消し*/
  font-feature-settings: normal;/*文字詰め打ち消し*/
  letter-spacing: 0px;/*字間0.05em打ち消し*/
}
body#comlSubTeikan main p {
  margin-top: 0px;
  text-indent: -4em;
  padding-left: 4em;
  text-align: left;/*両端揃え打ち消し*/
  font-feature-settings: normal;/*文字詰め打ち消し*/
  letter-spacing: 0px;/*字間0.05em打ち消し*/
}
body#comlSubTeikan main ul {
  margin-top: 0px;
}
body#comlSubTeikan main ul li {
  text-align: left;/*両端揃え打ち消し*/
  font-feature-settings: normal;/*文字詰め打ち消し*/
  letter-spacing: 0px;/*字間0.05em打ち消し*/
}
body#comlSubTeikan ul.teikanList1 li {
  text-indent: -3em;
  padding-left: 4em;
}
body#comlSubTeikan ul.teikanList2 li {
  text-indent: -2em;
  padding-left: 2em;
}
body#comlSubTeikan ul.teikanList2 li ul.teikanList1 li {
  text-indent: -3em;
  padding-left: 2em;
}
body#comlSubTeikan ul.teikanList3 li {
  padding-left: 5em;
}
body#comlSubTeikan dl.teikanListTeigi dt {
  line-height: 1.75;
  text-indent: 0px;
  padding-left: 0px;
}
body#comlSubTeikan dl.teikanListTeigi dd {
  line-height: 1.75;
  text-indent: 0px;
  padding-left: 5em;
  margin-top: -1.75em;
}


body.comlSubKaihoshi figure img {
  width: calc(100% - 2px);
  border-radius: 0px;
  border: 1px solid #aaaa88;
  vertical-align: top;/*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body.comlSubKaihoshi figure {
    float: right;
    width: 227px;/*225px＋border*/
    margin: -1.375em 0px 0.75em 1.75em;
  }
  body.comlSubKaihoshi figure img {
    width: 225px;
  }
  /*以下clearfix*/
  body.comlSubKaihoshi main section:nth-of-type(2)::after {
    content: "";
    display: block;
    clear: both;
    height: 0px;
    width: 0px;
  }
}
body.comlSubKaihoshi dl {
  margin: 0px;
  padding: 0px;
}
body.comlSubKaihoshi dl dt {
  margin: 0.375em 0px 0px;
  padding: 0.375em 0px 0px;
  font-weight: bold;
  border-top: 1px solid #aaaa88;
}
body.comlSubKaihoshi dl dd {
  margin: 0px;
  padding: 0px;
}
body.comlSubKaihoshi dl dd p {
  margin: 0px;
  padding: 0px;
}
body.comlSubKaihoshi dl dd:last-of-type p {
  margin: 0px 0px 0.375em;
  padding: 0px 0px 0.375em;
  border-bottom: 1px dashed #aaaa88;
}
@media (max-width: 767px) {
  body.comlSubKaihoshi dl dt:first-of-type {
    margin: 9px 0px 0px;
    padding: 0px;
    border-top: none;
  }
}


.comlSodanBox {
  background-color: #00cc66;
  margin: 15px auto 0px;
  padding: 1em;
  border-radius: 9px;
}
@media (min-width: 768px) {
  .comlSodanBox {
    width: 400px;
  }
}
.comlSodanBox h4 {
  /*text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin: 0px;
  padding: 0px;*//*大阪と東京の2箇所で受けていた時*/
  display: none;/*大阪閉所して東京だけになったので*/
}
.comlSodanBox p {
  text-align: center;
  margin: 0px;
  padding: 0px;
}
.comlSodanBox p.comlSodanNumber {
  font-size: 2em;
  line-height: 1;
  font-family: Verdana, Geneva, sans-serif;
  color: #ffffff;
  margin: 0.375em 0px;
  padding: 0px;
}

/*スマホで自動的に電話番号にリンク貼られても白のままになるよう*/
/*電話相談ページに限る*/
.comlSodanBox p.comlSodanNumber a {
  color: #ffffff;
  text-decoration: none;
}
.comlSodanBox p.comlSodanNumber a:link {
  color: #ffffff;
  text-decoration: none;
}
.comlSodanBox p.comlSodanNumber a:visited {
  color: #ffffff;
  text-decoration: none;
}
.comlSodanBox p.comlSodanNumber a:hover {
  color: #ffffff;
  text-decoration: none;
}
.comlSodanBox p.comlSodanNumber a:active {
  color: #ffffff;
  text-decoration: none;
}

.comlSodanKeikoGraph img {
  width: 100%;
  margin: 0px auto;
}
@media (min-width: 768px) {
  .comlSodanKeikoGraph img {
    width: 234px;
    margin: 0px;
  }
}


ul.comlEventHistory {
  margin: 0px;
  padding: 0px;
}
ul.comlEventHistory li {
  padding: 0.75em;
  border-bottom: 2px solid #ccccaa;
}
@media (min-width: 768px) {
  ul.comlEventHistory li {
    display: table;
    /*width: 100%;*/
    width: calc(100% - 1.5em);
  }
}
ul.comlEventHistory li span.comlEhDate {
  display: block;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 2px;
}
ul.comlEventHistory li span.comlEhNumber {
  display: block;
  padding-right: 1em;
}
ul.comlEventHistory li span.comlEhNote {
  font-size: 14px;
  color: #666666;
  padding: 0px 3px;
  border: 1px solid #999999;
  border-radius: 3px;
}
@media (min-width: 768px) {
  ul.comlEventHistory li span.comlEhDate {
    display: table-cell;
    font-weight: normal;
    margin-bottom: 0px;
    width: 15em;
  }
  ul.comlEventHistory li span.comlEhNumber {
    display: table-cell;
    width: 4em;
  }
}


body.comlSubKoza main ul.comlInpageLink {
  font-size: 14px;
  font-weight: normal;
}
@media (min-width: 768px) {
  body.comlSubKoza main ul.comlInpageLink {
    text-align: center;
  }
}
body.comlSubKoza main ul.comlLinkR {
  text-align: right;
  font-size: 14px;
  font-weight: normal;
}
body.comlSubKoza main p.comlKozaNotice {
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}

body.comlSubKoza section.comlKozaSection {
  background-color: #ffffff;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px 30px;
}
body.comlSubKoza section.comlKozaSection h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body.comlSubKoza section.comlKozaSection h4 {
  margin: 15px 0px 0px;
  padding: 0.75em;
  font-size: 16px;
  font-weight: bold;
  color: #ff6600;
  background-color: #ffee66;
  text-align: left;
  border-radius: 9px;
}

body.comlSubKoza section.comlKozaSection h5 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body.comlSubKoza section.comlKozaSection h5 {
    text-align: center;
  }
}
/*
body.comlSubKoza section#kozaManabiya h5 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body.comlSubKoza section#kozaManabiya h5 {
    text-align: center;
  }
}
body.comlSubKoza section#kozaOsaka h5 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body.comlSubKoza section#kozaOsaka h5 {
    text-align: center;
  }
}
body.comlSubKoza section#kozaKanjajuku h5 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body.comlSubKoza section#kozaKanjajuku h5 {
    text-align: center;
  }
}
*/

body.comlSubKoza div.comlKozaNoticeBox {
  background-color: #fffff0;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 15px 0px 0px;
  /*padding: 16px;*/
  padding: 10px 16px;
}
body.comlSubKoza div.comlKozaNoticeBox p {
  margin: 0px;
  padding: 0px;
  font-weight: bold;
  line-height: 1.75;
}
body.comlSubKoza section.comlKozaSection table th {
  font-weight: bold;
}
body.comlSubKoza section.comlKozaSection table td dl {
  margin: 0px;
  padding: 0px;
}
body.comlSubKoza section.comlKozaSection table td dl dt {
  margin: 0px;
  padding: 0px;
  font-weight: bold;
}
body.comlSubKoza section.comlKozaSection table td dl dd {
  margin: 0px;
  padding: 0px;
}
body.comlSubKoza section.comlKozaSection table td dl dd p {
  margin: 0px;
  padding: 0px;
}

body.comlSubKoza section.comlKozaSection table td dl dt.comlMt05 {
  margin-top: 0.5em;
}
body.comlSubKoza section.comlKozaSection table td dl dt.comlMt1 {
  margin-top: 1em;
}
body.comlSubKoza section.comlKozaSection table td dl dt.comlMt15 {
  margin-top: 1.5em;
}
body.comlSubKoza section.comlKozaSection table td dl dt.comlMt2 {
  margin-top: 2em;
}

.comlZoomMoshikomi ul {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 1em;
  text-indent: -1em;
}
/*
.comlZoomMoshikomi dl dd {
  margin-left: 1em;
}
これでは数行上のddのmargin0の設定を上書きできず以下ピンポイントで上書き*/
body.comlSubKoza section.comlKozaSection table td.comlZoomMoshikomi dl dd {
  margin-left: 1em;
}


body#comlSubKanjajuku section#kozaKanjajuku {
  background-color: #ffffff;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px 30px;
}
body#comlSubKanjajuku section#kozaKanjajuku h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body#comlSubKanjajuku section#kozaKanjajuku h4 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body#comlSubKanjajuku section#kozaKanjajuku h4 {
    text-align: center;
  }
}
body#comlSubKanjajuku section#kozaKanjajuku p.comlKozaNotice {
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}
body#comlSubKanjajuku section#kozaKanjajuku table th {
  font-weight: bold;
}
body#comlSubKanjajuku section#kozaKanjajuku table td dl {
  margin: 0px;
  padding: 0px;
}
body#comlSubKanjajuku section#kozaKanjajuku table td dl dt {
  margin: 0px;
  padding: 0px;
  font-weight: bold;
}
body#comlSubKanjajuku section#kozaKanjajuku table td dl dd {
  margin: 0px;
  padding: 0px;
}
body#comlSubKanjajuku section#kozaKanjajuku table td dl dd p {
  margin: 0px;
  padding: 0px;
}
body#comlSubKanjajuku section#kozaKanjajuku table td.comlZoomMoshikomi ul {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 1em;
  text-indent: -1em;
}
body#comlSubKanjajuku section#kozaKanjajuku table td.comlZoomMoshikomi dl dd {
  margin-left: 1em;
}


body#comlSubSeminar section#seminarManabiya {
  background-color: #ffffff;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px 30px;
}
body#comlSubSeminar section#seminarManabiya h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body#comlSubSeminar section#seminarManabiya h4 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body#comlSubSeminar section#seminarManabiya h4 {
    text-align: center;
  }
}
body#comlSubSeminar section#seminarManabiya p.comlKozaNotice {
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}
body#comlSubSeminar section#seminarManabiya table th {
  font-weight: bold;
}
body#comlSubSeminar section#seminarManabiya table td dl {
  margin: 0px;
  padding: 0px;
}
body#comlSubSeminar section#seminarManabiya table td dl dt {
  margin: 0px;
  padding: 0px;
  font-weight: bold;
}
body#comlSubSeminar section#seminarManabiya table td dl dd {
  margin: 0px;
  padding: 0px;
}
body#comlSubSeminar section#seminarManabiya table td dl dd p {
  margin: 0px;
  padding: 0px;
}
body#comlSubSeminar section#seminarManabiya table td.comlZoomMoshikomi ul {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 1em;
  text-indent: -1em;
}
body#comlSubSeminar section#seminarManabiya table td.comlZoomMoshikomi dl dd {
  margin-left: 1em;
}
body#comlSubSeminar section#seminarManabiya figure img.comlSeminarChirashi {
  width: calc(100% - 2px);
  border-radius: 0px;
  border: 1px solid #aaaa88;
  /*vertical-align: top;*//*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body#comlSubSeminar section#seminarManabiya figure img.comlSeminarChirashi {
    width: 450px;
    margin-top: 6px;
  }
}
body#comlSubSeminar section#seminarManabiya figure img.comlSeminarIllust0 {
  width: 100%;
  border: 0px;
  /*vertical-align: top;*//*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body#comlSubSeminar section#seminarManabiya figure img.comlSeminarIllust0 {
    /*width: 450px;*/
    width: 90%;
    margin-top: 6px;
  }
}


body#comlSubSeminar section#seminarOsakaKanjajuku {
  background-color: #ffffff;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px 30px;
}
body#comlSubSeminar section#seminarOsakaKanjajuku h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body#comlSubSeminar section#seminarOsakaKanjajuku h4 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body#comlSubSeminar section#seminarOsakaKanjajuku h4 {
    text-align: center;
  }
}
body#comlSubSeminar section#seminarOsakaKanjajuku p.comlKozaNotice {
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}
body#comlSubSeminar section#seminarOsakaKanjajuku table th {
  font-weight: bold;
}
body#comlSubSeminar section#seminarOsakaKanjajuku table td dl {
  margin: 0px;
  padding: 0px;
}
body#comlSubSeminar section#seminarOsakaKanjajuku table td dl dt {
  margin: 0px;
  padding: 0px;
  font-weight: bold;
}
body#comlSubSeminar section#seminarOsakaKanjajuku table td dl dd {
  margin: 0px;
  padding: 0px;
}
body#comlSubSeminar section#seminarOsakaKanjajuku table td dl dd p {
  margin: 0px;
  padding: 0px;
}
body#comlSubSeminar section#seminarOsakaKanjajuku table td.comlZoomMoshikomi ul {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 1em;
  text-indent: -1em;
}
body#comlSubSeminar section#seminarOsakaKanjajuku table td.comlZoomMoshikomi dl dd {
  margin-left: 1em;
}
body#comlSubSeminar section#seminarOsakaKanjajuku figure img.comlSeminarChirashi {
  width: calc(100% - 2px);
  border-radius: 0px;
  border: 1px solid #aaaa88;
  /*vertical-align: top;*//*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body#comlSubSeminar section#seminarOsakaKanjajuku figure img.comlSeminarChirashi {
    width: 450px;
    margin-top: 6px;
  }
}
body#comlSubSeminar section#seminarOsakaKanjajuku figure img.comlSeminarIllust0 {
  width: 100%;
  border: 0px;
  /*vertical-align: top;*//*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body#comlSubSeminar section#seminarOsakaKanjajuku figure img.comlSeminarIllust0 {
    /*width: 450px;*/
    width: 90%;
    margin-top: 6px;
  }
}


body#comlSubForum section#forumKaisai {
  background-color: #ffffff;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px 30px;
}
body#comlSubForum section#forumKaisai h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body#comlSubForum section#forumKaisai h4 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body#comlSubForum section#forumKaisai h4 {
    text-align: center;
  }
}
body#comlSubForum section#forumKaisai p.comlForumNotice {
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}
body#comlSubForum section#forumKaisai table th {
  font-weight: bold;
}
body#comlSubForum section#forumKaisai table td dl {
  margin: 0px;
  padding: 0px;
}
body#comlSubForum section#forumKaisai table td dl dt {
  margin: 0px;
  padding: 0px;
  font-weight: bold;
}
body#comlSubForum section#forumKaisai table td dl dd {
  margin: 0px;
  padding: 0px;
}
body#comlSubForum section#forumKaisai table td dl dd p {
  margin: 0px;
  padding: 0px;
}
body#comlSubForum section#forumKaisai table td.comlZoomMoshikomi ul {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 1em;
  text-indent: -1em;
}
body#comlSubForum section#forumKaisai table td.comlZoomMoshikomi dl dd {
  margin-left: 1em;
}
body#comlSubForum section#forumKaisai figure img.comlForumChirashi {
  width: calc(100% - 2px);
  border-radius: 0px;
  border: 1px solid #aaaa88;
  /*vertical-align: top;*//*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body#comlSubForum section#forumKaisai figure img.comlForumChirashi {
    width: 450px;
    margin-top: 6px;
  }
}
body#comlSubForum section#forumKaisai figure img.comlForumIllust0 {
  width: 100%;
  border: 0px;
  /*vertical-align: top;*//*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body#comlSubForum section#forumKaisai figure img.comlForumIllust0 {
    /*width: 450px;*/
    width: 90%;
    margin-top: 6px;
  }
}


body#comlSubKokorogamae section:first-of-type h3 {
  display: block;/*noneを打ち消し*/
  margin: 21px 0px 0px;/*21px＝15px＋0.375em*/
  /*margin: 21px 0px;*//*21px＝15px＋0.375em*/
  padding: 0.75em;
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  background-color: #ff8800;
  text-align: left;
  border-radius: 9px;
}
body#comlSubKokorogamae img {
  border-radius: 0px;/*画像に描画済みの囲みケイが欠けるため*/
}
body#comlSubKokorogamae img#shoseki10kajo10 {
  /*width: 227px;*/
  width: 32.244318%;
}
body#comlSubKokorogamae img#shoseki10kajoKanren {
  /*width: 230px;*/
  width: 32.670454%;
}


body#comlSubSp main p.comlSpNotice {
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}
body#comlSubSp section.comlSymposiumSection {
  background-color: #ffffff;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px 30px;
}
body#comlSubSp section.comlSymposiumSection h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body#comlSubSp section.comlSymposiumSection h4 {
  margin: 15px 0px 0px;
  padding: 0.75em;
  font-size: 16px;
  font-weight: bold;
  color: #ff6600;
  background-color: #ffee66;
  text-align: left;
  border-radius: 9px;
}
body#comlSubSp section.comlSymposiumSection h5 {
  margin: 15px 0px 0px;
  padding: 0px;
  font-size: 18px;
  line-height: 1.75;
  font-weight: bold;
  color: #ff6600;
  text-align: left;
}
@media (min-width: 768px) {
  body#comlSubSp section.comlSymposiumSection h5 {
    text-align: center;
  }
}
body#comlSubSp section.comlSymposiumSection table th {
  font-weight: bold;
}
body#comlSubSp section.comlSymposiumSection table td dl {
  margin: 0px;
  padding: 0px;
}
body#comlSubSp section.comlSymposiumSection table td dl dt {
  margin: 0px;
  padding: 0px;
  font-weight: bold;
}
body#comlSubSp section.comlSymposiumSection table td dl dd {
  margin: 0px;
  padding: 0px;
}
body#comlSubSp section.comlSymposiumSection table td dl dd p {
  margin: 0px;
  padding: 0px;
}

body#comlSubSp section.comlSymposiumSection table td dl dt.comlMt05 {
  margin-top: 0.5em;
}
body#comlSubSp section.comlSymposiumSection table td dl dt.comlMt1 {
  margin-top: 1em;
}
body#comlSubSp section.comlSymposiumSection table td dl dt.comlMt15 {
  margin-top: 1.5em;
}
body#comlSubSp section.comlSymposiumSection table td dl dt.comlMt2 {
  margin-top: 2em;
}

body#comlSubSp section.comlSymposiumSection table td.comlZoomMoshikomi dl dd {
  margin-left: 1em;
}


body#comlSubSp main section.comlSpecialSection dl dd {
  margin-left: 1em;
}
@media (min-width: 768px) {
  body#comlSubSp main section.comlSpecialSection dl dd {
    margin-left: 2.8em;
  }
}
body#comlSubSp main section.comlSpecialSection dl dd p {
  margin-top: 0px;
}
body#comlSubSp main section.comlSpecialSection dl dd ul {
  margin-top: 0px;
  list-style-type: disc;
  list-style-position: inside;
}


body#comlSubNyukai section:first-of-type h3 {
  display: block;/*noneを打ち消し*/
  margin: 21px 0px 0px;/*21px＝15px＋0.375em*/
  /*margin: 21px 0px;*//*21px＝15px＋0.375em*/
  padding: 0.75em;
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  background-color: #ff8800;
  text-align: left;
  border-radius: 9px;
}


.comlShienBox {
  background-color: #00cc66;
  margin: 15px auto 0px;
  padding: 1em;
  border-radius: 9px;
}
@media (min-width: 768px) {
  .comlShienBox {
    /*width: 80%;*/
    width: 86%;
  }
}
.comlShienBox h4 {
  display: none;
}
.comlShienBox p {
  text-align: center;
  margin: 0px;
  padding: 0px;
}


@media (min-width: 768px) {
  body#comlSubShoseki ul.comlLink li {
    display: inline-block;
    margin-right: 1em;
  }
}
body#comlSubShoseki main h4 {
  margin: 15px 0px 0px;
  padding: 0.75em;
  font-size: 16px;
  font-weight: bold;
  color: #ff6600;
  background-color: #ffee66;
  text-align: left;
  border-radius: 9px;
}
body#comlSubShoseki ul.comlShosekiList li {
  padding-bottom: 15px;
  border-bottom: 1px solid #aaaa88;
}
@media (min-width: 768px) {
  body#comlSubShoseki ul.comlShosekiList {
    margin: 0px;
    padding: 0px;
  }
  body#comlSubShoseki ul.comlShosekiList li {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  body#comlSubShoseki ul.comlShosekiList li p {
    flex-basis: 587px;
  }
  body#comlSubShoseki ul.comlShosekiList li figure {
    flex-basis: 102px;
  }
  body#comlSubShoseki ul.comlShosekiList li.comlShosekiWide p {
    flex-basis: 487px;
  }
  body#comlSubShoseki ul.comlShosekiList li.comlShosekiWide figure {
    flex-basis: 202px;
  }
}
body#comlSubShoseki figure img {
  /*width: calc(100% - 2px);*/
  width: calc(64% - 2px);
  border-radius: 0px;
  border: 1px solid #aaaa88;
  vertical-align: top;/*imgの下の隙間を消すため*/
}
@media (min-width: 768px) {
  body#comlSubShoseki figure img {
    width: 100px;
  }
}
body#comlSubShoseki li.comlShosekiWide figure img {
  width: calc(100% - 2px);
}
@media (min-width: 768px) {
  body#comlSubShoseki li.comlShosekiWide figure img {
    width: 200px;
  }
}
@media (max-width: 767px) {
  body#comlSubShoseki figure.comlShosekiNoImg {
    display: none;
  }
}


.comlShosekiCaption {
  font-weight: bold;
  text-align: center;
}


body#comlSubKashikoikanja section:first-of-type h3 {
  display: block;/*noneを打ち消し*/
  margin: 21px 0px 0px;/*21px＝15px＋0.375em*/
  /*margin: 21px 0px;*//*21px＝15px＋0.375em*/
  padding: 0.75em;
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  background-color: #ff8800;
  text-align: left;
  border-radius: 9px;
}
body#comlSubKashikoikanja img {
  border-radius: 0px;/*画像に描画済みの囲みケイが欠けるため*/
}


body#comlSub10kajo img {
  border-radius: 0px;/*画像に描画済みの囲みケイが欠けるため*/
}
body#comlSub10kajo img#shoseki10kajo10 {
  /*width: 227px;*/
  width: 32.244318%;
}
body#comlSub10kajo img#shoseki10kajoKanren {
  /*width: 230px;*/
  width: 32.670454%;
}


body#comlSubKodomo10kajo img {
  border-radius: 0px;/*画像に描画済みの囲みケイが欠けるため*/
}
body#comlSubKodomo10kajo img#shosekiKodomo10kajo10 {
  /*width: 227px;*/
  width: 32.244318%;
}


body#comlSubBadge section:first-of-type h3 {
  display: block;/*noneを打ち消し*/
  margin: 21px 0px 0px;/*21px＝15px＋0.375em*/
  /*margin: 21px 0px;*//*21px＝15px＋0.375em*/
  padding: 0.75em;
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  background-color: #ff8800;
  text-align: left;
  border-radius: 9px;
}
body#comlSubBadge img#shosekiBadgeKanren {
  /*width: 230px;*/
  width: 32.670454%;
  border-radius: 0px;/*画像に描画済みの囲みケイが欠けるため*/
}


body#comlSubBlog section.comlBlogSection {
  background-color: #ffffff;
  border: 1px solid #ff8800;
  border-radius: 11px;
  margin: 30px 0px 0px;
  padding: 0px 16px 30px;
}
body#comlSubBlog section.comlBlogSection h3 {
  margin: 0px -16px 0px;
  border-radius: 9px 9px 0px 0px;
}
body#comlSubBlog section:first-of-type h3 {
  display: block;/*noneを打ち消し*/
}
body#comlSubBlog a section.comlBlogSection p {
  color: #000000;
}
body#comlSubBlog main a {
  text-decoration: none;
}
body#comlSubBlog main a section.comlBlogSection:hover ul.comlLink li {
  text-decoration: underline;
}


ul.comlUchideIndexList {
  margin: 0px;
  padding: 0px;
}
ul.comlUchideIndexList li {
  padding: 0.75em;
  border-bottom: 2px solid #ccccaa;
}
@media (min-width: 768px) {
  ul.comlUchideIndexList li {
    display: table;
    width: calc(100% - 1.5em);
  }
}
ul.comlUchideIndexList li span.comlUiNumber {
  display: block;
  font-size: 14px;
  margin-bottom: 2px;
}
ul.comlUchideIndexList li span.comlUiUpdate {
  display: block;
  font-size: 14px;
}
@media (min-width: 768px) {
  ul.comlUchideIndexList li span.comlUiNumber {
    display: table-cell;
    margin-bottom: 0px;
    /*width: 9em;*/
    width: 12em;
  }
  ul.comlUchideIndexList li span.comlUiUpdate {
    display: table-cell;
    width: 12em;
    text-align: right;
  }
}
ul.comlUchideIndexList li a {
  font-weight: bold;
  display: block;
}
@media (min-width: 768px) {
  ul.comlUchideIndexList li a {
    display: table-cell;
  }
}
ul.comlUchideIndexList li a span.linkForward::before {
  content: "\025b6\00a0";/*右向き三角＋スペース*/
}


body#comlSubTakahashi h2 {
  color: #666666;
}
@media (min-width: 768px) {
  body#comlSubTakahashi h2 {
    letter-spacing: 0px;/*打ち消し*/
    text-indent: 0px;/*打ち消し*/
  }
}
body#comlSubTakahashi h3 {
  color: #eeeeee;
  background-color: #666666;
}
body#comlSubTakahashi h4 {
  font-size: 18px;
  font-weight: bold;
  color: #666666;
}
body#comlSubTakahashi ul.comlLink li a {
  color: #000000;
}
body#comlSubTakahashi section p {
  color: #666666;
}
@media (min-width: 768px) {
  body#comlSubTakahashi figure {
    float: right;
    width: 308px;
    /*margin: 21px 0px 1.75em 1.75em;*//*21px＝15px＋0.375em*/
    margin: 34px 0px 0.75em 1.75em;
  }
  body#comlSubTakahashi figure img {
    width: 308px;
  }
  /*以下clearfix*/
  body#comlSubTakahashi main section:first-of-type::after {
    content: "";
    display: block;
    clear: both;
    height: 0px;
    width: 0px;
  }
}
body#comlSubTakahashi figcaption {
  color: #666666;
  text-align: right;
}
/*
@media (max-width: 767px) {
  body#comlSubTakahashi figcaption br {
    display: none;
  }
}
*/



/* タブメニュー（サブページ 過去の更新ページ 沿革ページ セミナーページ）
-------------------------------------------------------------------------------- */
/* トップページ活動報告とメディア掲載情報用のタブメニューが上方にあり */

.comlTabContainer2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 12px auto 0px;
}
.comlTabContainer2 > label {
  order: -1;
  margin: 8px 4px 0px;
  padding: 0.375em 0.75em;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  color: #ffffff;
  background-color: #33cc66;
  cursor: pointer;
  border-radius: 9px;
}
.comlTabContainer2 .comlTabContent {
  width: 100%;
  display: none;
  margin-top: 20px;
}

/*開いているタブ*/
.comlTabContainer2 > input[type="radio"]:checked + label {
  background-color: #009933;
}
.comlTabContainer2 > input[type="radio"]:checked + label + .comlTabContent {
  display: block;
}
.comlTabContainer2 > input[type="radio"] {
  display: none;
}

@media (min-width: 768px) {
  .comlTabContainer2 {
    margin: 12px auto 0px;
  }
  .comlTabContainer2 .comlTabContent {
    margin-top: 20px;
  }
}

.comlTabContainer2 ul.comlInfo {
  background-color: transparent;
}



/* スムーズスクロール（Safari、IE非対応）
-------------------------------------------------------------------------------- */
/*
html {
  scroll-behavior: smooth;
}
*/
