@charset "utf-8";

/*============

content.css

=============*/

/*============

contents

=============*/

.mainArea {
  padding: 0 2.4rem;
}

.mainArea__inner {
  width: 100%;
  max-width: calc(1200px - 1.6rem);
  margin: 0 auto;
}

/*-------------

font-size

--------------*/

article p,
article li,
article caption,
article th,
article td,
article dt,
article dd,
article pre,
.conFrame h2,
.conFrame h3,
.conFrame h4,
.conFrame h5,
.conFrame h6,
#prArea {
  font-size: 87.5%;
  line-height: 1.8;
}

/*-------------

heading

--------------*/

article a {
  text-decoration: underline;
}

article a .scaleIco {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.3rem;
  font-family: 'icons';
  text-decoration: none;
  cursor: pointer;
}

article a.scaleLink,
article a.scaleLink img {
  position: relative;
  display: block;
}

article a.scaleLink .scaleIco {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  text-align: center;
  line-height: 1.4rem;
  color: #fff !important;
  overflow: hidden;
}

article a.scaleLink .scaleIco:before {
  content: 's';
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  text-align: center;
  line-height: 1.4rem;
}

article strong {
  font-weight: bold;
}

article iframe {
  margin-top: 1rem;
}

article h1 {
  position: relative;
  margin: 0 -0.8rem;
  padding: 0.7rem 20px;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  overflow: hidden;
}

article h1:after {
  position: absolute;
  right: 0;
  bottom: 0;
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  background-color: #f6f6f6;
}

article h1:before,
article h2:before {
  position: absolute;
  bottom: 0;
  right: 0;
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-right-color: #f6f6f6;
  border-bottom-color: #f6f6f6;
}

article h1:before {
  margin-bottom: 2px;
}

article h2,
article h3,
article h4,
article h5,
article h6 {
  position: relative;
  margin: 2.4rem -0.8rem 0;
}

article h3:before,
article h4:before,
article h5:before,
article h6:before,
article h3 a:before,
article h4 a:before,
article h5 a:before,
article h6 a:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 14px;
  height: 100%;
}

article h4:before,
article h5:before,
article h6:before,
article h4 a:before,
article h5 a:before,
article h6 a:before {
  -webkit-box-sizing: border-box;
  -mox-box-sizing: border-box;
  box-sizing: border-box;
}

article h2 {
  padding: 0.5rem 20px;
  border-top-width: 2px;
  border-top-style: solid;
}

article h3 {
  padding: 0.5rem 20px 3px;
  border-top-width: 1px;
  border-top-style: solid;
}

article h3:before,
article h3 a:before {
  left: 4px;
  width: 6px;
  margin-top: -4px;
  border-left: 2px solid #f6f6f6;
}

article h4 {
  padding: 0.3rem 20px;
  font-weight: normal;
  border-width: 1px;
  border-style: solid;
}

article h4:before,
article h4 a:before {
  border-width: 3px;
  border-style: solid;
}

article h5 {
  padding: 0.3rem 20px;
  font-weight: normal;
  border-width: 1px;
  border-style: solid;
}

article h5:before,
article h5 a:before {
  border: 3px solid #fff;
}

article h6 {
  padding: 0 22px;
  font-weight: normal;
}

article h6:before,
article h6 a:before {
  left: 4px;
  width: 8px;
}

article h2 a,
article h3 a,
article h4 a,
article h5 a,
article h6 a {
  display: block;
  position: relative;
  text-decoration: none;
}

article h3 a {
  margin: -0.5rem 0 -3px;
  padding: 0.5rem 0 3px;
}

article h4 a,
article h5 a {
  margin: -0.3rem 0 !important;
  padding: 0.3rem 0;
}

article h3 a:before,
article h4 a:before,
article h5 a:before {
  margin-left: -20px;
  background-color: #f90;
}

article h6 a:before {
  margin-left: -22px;
  background-color: #f90;
}

article h2 a:after,
article h3 a:after,
article h4 a:after,
article h5 a:after,
article h6 a:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 5px;
  width: 8px;
  height: 100%;
  margin-right: -1.6rem;
  background: url(/shared/images/icon_common.png) -75px center no-repeat;
}

article h3 a:after {
  margin-top: 0.15rem;
}

aside h2:before,
aside h2 a:after,
#catTop h2:before,
#catTop h2:before,
.indexList h2:before,
.indexList h3 a:before,
.indexList a h3:before {
  display: none;
}

/*-------------

column wide

--------------*/
.widMax {
	margin: 0 -20px;
}
.widMax > h2,
.widMax > h3,
.widMax > h4,
.widMax > h5,
.widMax > h6 {
	margin-left: 0;
	margin-right: 0;
}
.widMax > div:first-child,
.widMax > ul:first-child,
.widMax > pl:first-child,
.widMax > p:first-child,
.widMax > table:first-child {
	margin-top: 2.5em;
}

.widMax > h3,
.widMax > h4,
.widMax > h5,
.widMax > h6,
.widMin > h3,
.widMin > h4,
.widMin > h5,
.widMin > h6,
article .short,
article .short > h3,
article .short > h4,
article .short > h5,
article .short > h6 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

article .wide,
article .wide > h3,
article .wide > h4,
article .wide > h5,
article .wide > h6 {
  margin-left: -1.6rem !important;
  margin-right: -1.6rem !important;
}

/*-------------

paragraph

--------------*/

/* paragraph */

article p {
  margin-top: 1rem;
}

article p .underline {
  display: block;
  margin-bottom: -.8em;
  padding-bottom: .2em;
  color: #000;
  border-bottom: 2px solid #b0c2d6;
}

/*-------------

wm-border

--------------*/

.wm-border, 
.wm-background, 
.wm-border-background {
  margin: 1rem -20px 0;
  background-image: url(../../shared/images/bg_dot.png);
  background-repeat: repeat;
}

.widMax > .wm-border, 
.widMax > .wm-background, 
.widMax > .wm-border-background, 
.widMin > .wm-border, 
.widMin > .wm-background, 
.widMin > .wm-border-background {
  margin: 1rem 0 0;
}

.wm-border {
  padding: 5px;
}

.wm-background, 
.wm-border-background {
  padding: 5px;
}

.wm-border div, 
.wm-background div {
  padding: 1rem;
}

.wm-border-background div {
  padding: 1rem;
}

.wm-border div *, 
.wm-background div *, 
.wm-border-background div * {
  margin-left: 0;
  margin-right: 0;
}

.wm-border div *:first-child, 
.wm-background div *:first-child, 
.wm-border-background div *:first-child {
  margin-top: 0;
}

h2 + .wm-border, 
h2 + .wm-background, 
h2 + .wm-border-background, 
h3 + .wm-border, 
h3 + .wm-background, 
h3 + .wm-border-background, 
h4 + .wm-border, 
h4 + .wm-background, 
h4 + .wm-border-background, 
h5 + .wm-border, 
h5 + .wm-background, 
h5 + .wm-border-background, 
h6 + .wm-border, 
h6 + .wm-background, 
h6 + .wm-border-background {
  margin-top: 0.6rem;
}

/*-------------

.wm-border > .clearfix

--------------*/
.wm-border > .clearfix {
  margin: 0;
}
.wm-border > .clearfix table {
  width: 50%;
  min-width: 0;
  float: left;
  margin: 0;
}
.wm-border > .clearfix th,
.wm-border > .clearfix td,
.wm-border .spec th,
.wm-border .spec td {
  padding: 0;
  vertical-align: top;
  font-size: 78%;
  line-height: 1.2em;
  background-color: #f6f6f6;
  border-style: none;
}
.wm-border > .clearfix tr+tr th,
.wm-border > .clearfix tr+tr td,
.wm-border .spec tr+tr th,
.wm-border .spec tr+tr td {
  padding-top: .4em;
}
.wm-border > .clearfix th,
.wm-border .spec th {
  width: 1%;
  padding-right: 1em;
  white-space: nowrap;
}
.wm-border > .clearfix th[colspan],
.wm-border .spec th[colspan] {
  white-space: normal;
}
.wm-border > .clearfix td,
.wm-border .spec td {
  width: 99%;
  padding-right: .5em;
  word-break: break-all;
}
.wm-border > .clearfix td:before,
.wm-border .spec td:before {
  content: ':';
  display: inline-block;
  width: 1em;
  margin-left: -1em;
  text-align: center;
  vertical-align: middle;
}
.clearfix .wm-border > .clearfix table {
  width: auto;
  float: none;
}
.wm-border .spec + p,
.wm-border .spec + ul,
.wm-border .spec + ol {
  clear: both;
  padding-top: 1em;
}
.clearfix .wm-border > .clearfix table,
.clearfix .wm-border .spec {
  margin: -.2em 0;
}
.sep3 .wm-border > .clearfix table,
.sep3 .wm-border > .clearfix thead,
.sep3 .wm-border > .clearfix tbody,
.sep3 .wm-border > .clearfix tr,
.sep3 .wm-border > .clearfix th,
.sep3 .wm-border > .clearfix td
.sep3 .wm-border .spec table,
.sep3 .wm-border .spec thead,
.sep3 .wm-border .spec tbody,
.sep3 .wm-border .spec tr,
.sep3 .wm-border .spec th,
.sep3 .wm-border .spec td {
  display: block;
}
.sep3 .wm-border > .clearfix tr+tr th,
.sep3 .wm-border .spec tr+tr th {
  margin-top: .62em;
  padding-top: 0;
}
.sep3 .wm-border > .clearfix tr+tr td,
.sep3 .wm-border .spec tr+tr td {
  padding-top: 0;
}
.sep3 .wm-border > .clearfix th,
.sep3 .wm-border .spec th {
  width: auto;
  padding-right: 0;
  white-space: normal;
}
.sep3 .wm-border > .clearfix td,
.sep3 .wm-border .spec td {
  width: auto;
  padding-right: 0;
}
.sep3:not(:target) .wm-border > .clearfix th:after,
.sep3:not(:target) .wm-border .spec th:after {
  content: ':';
  display: inline-block;
  width: 1em;
  text-align: center;
  vertical-align: middle;
}
.sep3 .wm-border > .clearfix th[colspan]:after,
.sep3 .wm-border .spec th[colspan]:after,
.sep3:not(:target) .wm-border > .clearfix td:before,
.sep3:not(:target) .wm-border .spec td:before {
  display: none;
}


/*-------------

conFrame

--------------*/

.conFrame {
  margin: 4.0rem -0.8rem 0;
  padding: 19px;
  border: 1px solid #ccc;
}

.conFrame h2,
.conFrame h3,
.conFrame h4,
.conFrame h5,
.conFrame h6,
.conFrame h2 a,
.conFrame h3 a,
.conFrame h4 a,
.conFrame h5 a,
.conFrame h6 a {
  color: #000;
  font-weight: normal;
}

.conFrame h2:first-child,
.conFrame h3:first-child,
.conFrame h4:first-child,
.conFrame h5:first-child,
.conFrame h6:first-child {
  margin: -19px -19px 0 !important;
  padding: 8px 19px;
  border-style: none;
}

.conFrame h2:first-child a,
.conFrame h3:first-child a,
.conFrame h4:first-child a,
.conFrame h5:first-child a,
.conFrame h6:first-child a {
  margin: -8px -19px !important;
  padding: 8px 19px;
  border-style: none;
}

.conFrame h2:first-child:before,
.conFrame h3:first-child:before,
.conFrame h4:first-child:before,
.conFrame h5:first-child:before,
.conFrame h6:first-child:before,
.conFrame h2:first-child a:before,
.conFrame h3:first-child a:before,
.conFrame h4:first-child a:before,
.conFrame h5:first-child a:before,
.conFrame h6:first-child a:before {
  top: 4px;
  left: 4px;
  right: auto;
  width: 8px;
  height: 100%;
  margin: -8px 0 0;
  clip: rect(8px, 8px, 300px, 0);
  border-style: none;
}

.conFrame h2:first-child a:before {
  content: '';
  position: absolute;
  display: block;
  background-color: #f90;
}

.conFrame h6:first-child:before,
.conFrame h2:first-child:before,
.conFrame h3:first-child:before,
.conFrame h4:first-child:before,
.conFrame h5:first-child:before,
.conFrame h6:first-child:before {
  background-color: #fff;
}

.conFrame * + h3,
.conFrame * + h4,
.conFrame * + h5,
.conFrame * + h6 {
  margin: 1rem 0 0;
  padding: .3rem 0;
  background-color: transparent;
  border-style: none none solid;
  border-width: 0 0 5px;
  border-color: #ededed;
}

.conFrame * + h3 a,
.conFrame * + h4 a,
.conFrame * + h5 a,
.conFrame * + h6 a {
  margin: -.3rem 0;
  padding: .3rem 0;
}

.conFrame * + h3:before,
.conFrame * + h4:before,
.conFrame * + h5:before,
.conFrame * + h6:before,
.conFrame * + h3 a:before,
.conFrame * + h4 a:before,
.conFrame * + h5 a:before,
.conFrame * + h6 a:before {
  display: none;
}

.conFrame h2 a:after,
.conFrame h3 a:after,
.conFrame h4 a:after,
.conFrame h5 a:after,
.conFrame h6 a:after {
  margin: 0;
}

.conFrame * + h3 + *,
.conFrame * + h4 + *,
.conFrame * + h5 + *,
.conFrame * + h6 + * {
  margin-top: 0.5rem;
}

/*-------------

table

--------------*/
/* table */

article table {
  margin-top: 1rem;
  min-width: 99.9%;
}

article table.full {
  width: 100%;
}

article table.auto {
  width: auto;
}

article caption {
  width: 100%;
  padding-bottom: 0.3rem;
  text-align: left;
}

article th {
  padding: 0.3rem 0.5rem;
  text-align: left;
  font-weight: normal;
  border-width: 1px;
  border-style: solid;
}

article td {
  padding: 0.3rem 0.5rem;
  border-width: 1px;
  border-style: solid;
}

article th *:first-child,
article td *:first-child {
  margin-top: 0;
}

/*-------------

list

--------------*/

article ol {
  margin-top: 1rem;
  padding-left: 1.5rem;
}

article ul {
  margin-top: 1rem;
  list-style: disc;
  padding-left: 1.2rem;
}

article li {
  margin-top: 0.2rem;
}

article li ol,
article li ul {
  margin: 0.5rem 0 0;
}

/*-------------

pageNav

--------------*/

.pageNav {
  text-align: right;
  line-height: 20px;
  border-right: 1px solid #ccc;
}

.pageNav li {
  display: inline-block;
  margin: 0 !important;
  padding: 0 .7em;
  vertical-align: middle;
  line-height: 20px;
  border-left: 1px solid #ccc;
}

.pageNav li a {
  white-space: nowrap;
}

.pageNav .current a {
  padding-left: 0;
  font-weight: bold;
  text-decoration: none;
  cursor: text;
}

.pageNav .current a:before {
  display: none;
}

/*-------------

icon

--------------*/

article .icon,
article .icon li {
  list-style: none;
}

article li.icon,
article .icon li {
  margin-left: -1.2em;
}

article .icon ul {
  margin-left: 20px;
}

article .icon a,
.infoIR a {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  min-height: 16px;
}

article .icon a:before,
.infoIR a:before {
  content: '';
  position: absolute;
  top: 12px;
  left: 0;
  display: block;
  width: 20px;
  height: 16px;
  margin-top: -8px;
  background: url(/shared/images/icon_common.png) 3px center no-repeat;
}

article .icon a[target='_blank']:before {
  background-position: -275px center;
}

article .icon a[href*='.pdf']:before,
.infoIR a[href*='.pdf']:before {
  background: url(/shared/images/pdf.png) 0 0 no-repeat;
}

article .icon a[href*='.doc']:before,
.infoIR a[href*='.doc']:before {
  background: url(/shared/images/doc.png) 0 0 no-repeat;
}

article .icon a[href*='.xls']:before,
.infoIR a[href*='.xls']:before {
  background: url(/shared/images/xls.png) 0 0 no-repeat;
}

article .icon a[href*='.ppt']:before,
.infoIR a[href*='.ppt']:before {
  background: url(/shared/images/ppt.png) 0 0 no-repeat;
}

article .icon a[href*='.txt']:before,
.infoIR a[href*='.txt']:before {
  background: url(/shared/images/txt.png) 0 0 no-repeat;
}

article .icon a[href*='.zip']:before,
.infoIR a[href*='.zip']:before {
  background: url(/shared/images/zip.png) 0 0 no-repeat;
}

/*-------------

ancor

--------------*/

article .ancor {
  padding-left: 0;
}

article .ancor > li {
  display: inline-block;
  margin: 0.2rem 1.6rem 0 0;
}

article .ancor > li a[href^='#']:before {
  background-position: -350px center;
  top: 0.8rem;
}

/*-------------

image layout

--------------*/

.img-clear {
  mix-blend-mode: multiply;
}

article figure {
  margin-top: 1rem;
  text-align: center;
}

article figure:last-child {
  margin-bottom: 0;
}

article figure a {
  text-decoration: none;
}

article figcaption {
  padding-top: 0.5rem;
  color: #666;
  text-align: left;
  font-size: 14px;
}

article div figure img {
  vertical-align: bottom;
}

.wid320 figure {
  margin-top: 0;
  max-width: 320px;
}

.wid320 .sentence {
  width: calc(100% - 350px);
}

.wid210 figure {
  margin-top: 0;
  max-width: 210px;
}

.wid210 .sentence {
  width: calc(100% - 240px);
}

.wid120 figure {
  margin-top: 0;
  max-width: 120px;
}

.wid120 .sentence {
  width: calc(100% - 150px);
}

.parallelL,
.parallelR,
.roundL,
.roundR {
  margin-top: 1rem;
}

.parallelL:after,
.parallelR:after,
.roundL:after,
.roundR:after {
  content: '';
  display: block;
  clear: both;
}

.parallelL *,
.parallelR *,
.roundL *,
.roundR * {
  margin-left: 0;
  margin-right: 0;
}

.parallelL figure,
.parallelR .sentence,
.roundL figure {
  float: left;
}

.parallelR figure,
.parallelL .sentence,
.roundR figure {
  float: right;
}

.roundL figure {
  margin: 0 1rem 0.5rem 0;
}

.roundR figure {
  margin: 0 0 0.5rem 1rem;
}

.roundL figure + *,
.roundR figure + * {
  margin-top: 0;
}

.parallelL .sentence > *:first-child,
.parallelR .sentence > *:first-child {
  margin-top: 0;
}

.parallelL .sentence > h2,
.parallelL .sentence > h3,
.parallelL .sentence > h4,
.parallelL .sentence > h5,
.parallelL .sentence > h6 {
  margin-right: -1.6rem;
}

.parallelR .sentence > h2,
.parallelR .sentence > h3,
.parallelR .sentence > h4,
.parallelR .sentence > h5,
.parallelR .sentence > h6 {
  margin-left: -1.6rem;
}

/*-------------

wide

--------------*/
.widMax > h3,
.widMax > h4,
.widMax > h5,
.widMax > h6,
.widMin > h3,
.widMin > h4,
.widMin > h5,
.widMin > h6,
article .short,
article .short > h3,
article .short > h4,
article .short > h5,
article .short > h6 {
	margin-left: 0 !important;
	margin-right: 0 !important;
}
article .wide,
article .wide > h3,
article .wide > h4,
article .wide > h5,
article .wide > h6 {
	margin-left: -20px !important;
	margin-right: -20px !important;
}

/*-------------

column half

--------------*/

.title-link::before {
  background-color: transparent;
}

.clearfix .sideL,
.clearfix .sideR {
	width: 49%;
	box-sizing: border-box;
    padding: 0 20px;
}
.clearfix .sideL {
	float: left;
}
.clearfix .sideR {
	float: right;
}
.clearfix .sideL.noSec {
	border-right-style: none;
}
.clearfix .sideR.noSec {
	border-left-style: none;
}
.clearfix.short .sideL,
.clearfix.short .sideR {
	border-right-style: none;
	border-left-style: none;
}
.clearfix .sideL h2,
.clearfix .sideL h3,
.clearfix .sideL h4,
.clearfix .sideL h5,
.clearfix .sideL h6,
.clearfix .sideL .wm-border,
.clearfix .sideL .wm-background,
.clearfix .sideL .wm-border-background,
.clearfix .sideL .parallelL,
.clearfix .sideR h2,
.clearfix .sideR h3,
.clearfix .sideR h4,
.clearfix .sideR h5,
.clearfix .sideR h6,
.clearfix .sideR .wm-border,
.clearfix .sideR .wm-background,
.sideR .wm-border-background,
.clearfix .sideR .parallelL {
	margin-left: -20px;
	margin-right: -20px;
}
.clearfix .noSec .wm-border,
.clearfix .noSec .wm-background,
.clearfix .noSec .wm-border-background,
.clearfix .noSec .parallelL {
	margin-left: 0;
	margin-right: 0;
}
.clearfix .sideL .parallelL,
.clearfix .sideR .parallelL {
	margin-top: 10px;
}
.clearfix .sideL h3+.parallelL,
.clearfix .sideR h3+.parallelL {
	margin-top: 6px;
}
h2+.clearfix .sideL h3:first-child,
h2+.clearfix .sideR h3:first-child,
h3+.clearfix .sideL h4:first-child,
h3+.clearfix .sideR h4:first-child,
h4+.clearfix .sideL h5:first-child,
h4+.clearfix .sideR h5:first-child,
h5+.clearfix .sideL h6:first-child,
h5+.clearfix .sideR h6:first-child {
	/* margin-top: .7em; */
}
.clearfix+.clearfix .sideL h3:first-child,
.clearfix+.clearfix .sideL h4:first-child,
.clearfix+.clearfix .sideL h5:first-child,
.clearfix+.clearfix .sideL h6:first-child,
.clearfix+.clearfix .sideR h3:first-child,
.clearfix+.clearfix .sideR h4:first-child,
.clearfix+.clearfix .sideR h5:first-child,
.clearfix+.clearfix .sideR h6:first-child {
	margin-top: 1em;
}
.clearfix .parallelL figure {
	width: 36%;
	max-width: 122px;
	border: 1px solid #cbcbcb;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.clearfix .parallelL figure * {
	display: block;
	margin: 0 auto;
}
.clearfix .parallelL .sentence {
	width: 62%;
	max-width: 205px;
}
.clearfix .noSec .parallelL figure {
	width: 38%;
	max-width: 120px;
	border-style: none;
}
.clearfix .noSec .parallelL  .sentence {
	width: 60%;
}
.clearfix h2,
.clearfix h3,
.clearfix h4,
.clearfix h5,
.clearfix h6 {
	margin: 1.5em 0 0;
}

/*-------------

column one third

--------------*/
.sep3 {
  float: left;
  width: 32%;
  margin-left: 2%;
  padding: 0 20px;
  box-sizing: border-box;
}

.sep3 h2,
.sep3 h3,
.sep3 h4,
.sep3 h5,
.sep3 h6 {
  margin-left: -20px;
  margin-right: -20px;
}

.sep3:nth-child(3n+1) {
    clear: left;
    margin-left: 0;
}

/*-------------

flexbox 2column

--------------*/

.clearfix.col2 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.clearfix.col2::after {
  content: none;
}

.clearfix.col2 .sep2 {
  width: calc(100%/2 - 1.6rem);
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  box-sizing: border-box;
}

.clearfix.col2 .sep2.noSec:nth-child(odd) {
  border-right-style: none;
}

.clearfix.col2 .sep2.noSec:nth-child(even) {
  border-left-style: none;
}

.clearfix.col2.short .sep2 {
  border-right-style: none;
  border-left-style: none;
}

.clearfix.col2 .noSec .wm-border,
.clearfix.col2 .noSec .wm-background,
.clearfix.col2 .noSec .wm-border-background,
.clearfix.col2 .noSec .parallelL {
  margin-left: 0;
  margin-right: 0;
}

.clearfix.col2 .sep2 .parallelL {
  margin-top: 10px;
}

.clearfix.col2 .sep2 h3 + .parallelL {
  margin-top: 6px;
}

h2 + .clearfix.col2 .sep2 h3:first-child,
h3 + .clearfix.col2 .sep2 h4:first-child,
h4 + .clearfix.col2 .sep2 h5:first-child,
h5 + .clearfix.col2 .sep2 h6:first-child {
  margin-top: 0.7rem;
}

.clearfix + .clearfix.col2 .sep2 h3:first-child,
.clearfix + .clearfix.col2 .sep2 h4:first-child,
.clearfix + .clearfix.col2 .sep2 h5:first-child,
.clearfix + .clearfix.col2 .sep2 h6:first-child {
  margin-top: 1rem;
}

/*-------------

compList

--------------*/
.compImage,
.compData .clearfix {
	margin: 0 0 0 -20px;
}
.compImage li,
.clearfix .compItem {
	float: left;
	width: 50%;
}
.compImage li .inner,
.clearfix .compItem > * {
	margin-left: 20px;
	margin-right: 0;
}
.compImage:after {
	content: '';
	display: block;
	clear: both;
}
.compList {
	margin-top: 1em;
	padding-left: 0;
	list-style: none;
}
.compList img {
  display: block;
  margin: 10px auto;
  max-width: 320px;
}
.compList li {
	margin-top: 3px;
}
.compList li .inner {
  border: 1px solid #bacbdb;
  background-color: #fff;
}
.compList li .inner p,
.compList li .inner .noteR {
	display: block;
	margin: 0 10px;
	color: #99c;
	text-align: right;
	background-color: #fff;
}
.compList li span {
	position: relative;
	display: block;
	padding-left: 32px;
	line-height: 25px;
	background-color: #efefef;
}
.compList li+li span {
	background-color: #eaeaea;
}
.compList li+li+li span,
.compList .last span {
	background-color: #fae5e5;
}
.compItem:nth-child(odd) {
	clear: left;
}
.compItem ul {
	position: relative;
	padding-left: 32px;
	list-style: none;
}
.compItem li {
	margin-top: -5px;
	padding: 5px 0;
	line-height: 25px;
}
.compGraph li {
	background-color: #f6f6f6;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.compItem span {
	display: inline-block;
	vertical-align: top;
}
.compItem .graph {
	width: 0;
	margin: 5px 2px 0 0;
	height: 15px;
	text-indent: 100%;
	white-space: nowrap;
	background-color: #999;
	overflow: hidden;
}
.compGraph+p {
	margin-top: .3em;
	text-align: center;
}
.compGraph+p strong {
	font-weight: normal;
	font-size: 110%;
}
.compList .mark,
.compItem .mark {
	position: absolute;
	left: 0;
	display: block;
	width: 25px;
	padding: 0;
	color: #fff;
	text-align: center;
	background-color: #999;
}
.compItem .mark {
	width: 23px;
	line-height: 23px;
	border: 1px solid #bacbdb;
}
.compList li+li .mark,
.compItem li+li .mark,
.compItem li+li .graph  {
	background-color: #666;
}
.compList li+li+li .mark,
.compList .last .mark,
.compItem li+li+li .mark,
.compItem .last .mark,
.compItem li+li+li .graph,
.compItem .last .graph {
	background-color: #c00;
}


/*-------------

original

--------------*/
.plugin, 
dl.clearfix {
  margin: 1em -20px 0;
  padding: 5px;
  background: #ccc url(/shared/images/bg_dot.png) repeat;
}

.widMax .plugin, 
.widMax dl.clearfix {
  margin: 1em 0 0;
}

.plugin dl {
  margin: 0 !important;
  padding: 1em;
  background-color: #fff;
}

.plugin dl:after {
  content: '';
  display: block;
  clear: both;
}

.plugin dt, 
dl.clearfix dt {
  float: left;
  width: 100px;
}

.plugin dd {
  margin-left: 0 !important;
  padding-left: 100px;
}

dl.clearfix dt {
  padding: 15px;
}

dl.clearfix dd {
  margin-left: 0 !important;
  padding: 15px 15px 15px 115px;
  background-color: #fff;
}

ul.noteK, 
ul.noteA, 
ul.noteKnote01, 
ul.noteKnoteEYE01 {
  list-style: none;
  padding-left: 0;
}

p.noteK, 
ul.noteK li, 
ul.noteKnote01 li, 
ul.noteKnoteEYE01 li {
  text-indent: -1em;
  padding-left: 1em;
  color: #4C4C90;
}

p.noteA, 
ul.noteA li {
  text-indent: -.5em;
  padding-left: .5em;
  color: #4C4C90;
}

p.noteK *, 
ul.noteK li *, 
p.noteA *, 
ul.noteA li * {
  color: #000;
  text-indent: 0;
}

p.noteK sup, 
p.noteK sub, 
ul.noteK li sup, 
ul.noteK li sub, 
p.noteA sup, 
p.noteA sub, 
ul.noteA li sup, 
ul.noteA li sub {
  color: inherit;
}

table + .noteK, 
table + .noteA {
  margin-top: .3em;
}

pre {
  margin-top: 1.5em;
}

pre + pre {
  margin: 0;
}

.tag {
  margin-top: .5em;
  padding-left: 0;
  list-style-type: none;
}

.tag li {
  display: inline-block;
  margin: 0.5em 0 0 0.2em;
  padding: 0.1em 0.3em;
  white-space: nowrap;
  background-color: #eee;
  border: 1px solid #999;
}

ul.blue li, 
.tag li.blue {
  background-color: #bfd4ea;
  border-style: none;
}

/*============

media queries

=============*/

/*-------------

タブレット・スマホ

--------------*/

@media (max-width: 959px) {
  .mainArea {
      padding: 0 1.6rem;
  }
}

/*-------------

スマホ

--------------*/

@media (max-width: 639px) {
  .mainArea {
      padding: 0 0.8rem;
  }

  article h1 {
    margin: 0 -0.4rem;
  }

  article h2,
  article h3,
  article h4,
  article h5,
  article h6 {
    margin: 1.6rem -0.4rem 0;
  }

  /* column half */
  .clearfix .sideL,
  .clearfix .sideR,
  .clearfix .parallelL figure,
  .clearfix .parallelL .sentence {
    float: none;
    width: 100%;
  }

  .clearfix .parallelL figure {
      border-style: none;
  }

  .clearfix.col2 .sep2,
  .clearfix.col2 .parallelL figure,
  .clearfix.col2 .parallelL .sentence {
    width: 100%;
    max-width: 100%;
  }

  .clearfix.col2 .sep2 {
    border-style: none;
  }

  .clearfix.col2 .parallelL figure {
    border-style: none;
  }

  .conFrame {
    margin: 1.6rem -0.4rem 0;
  }

  /* column one third */
  .sep3 {
    width: 49%;
  }

  .sep3:nth-child(2n+1) {
    clear: left;
    margin-left: 0;
  }

  /* column wide */
  .wid320 figure {
    float: none;
    width: auto;
    margin: 0 0 1em;
    max-width: 100%;
  }

  .wid320 .sentence {
    float: none;
    width: auto;
    margin: 1em 0 0;
  }

  .wid210 figure {
    float: none;
    width: auto;
    margin: 0 0 1em;
    max-width: 100%;
  }

  .wid210 .sentence {
    float: none;
    width: auto;
    margin: 1em 0 0;
  }

  .wid120 figure {
    float: none;
    width: auto;
    margin: 0 0 1em;
    max-width: 100%;
  }

  .wid120 .sentence {
    float: none;
    width: auto;
    margin: 1em 0 0;
  }

  /* .wm-border > .clearfix */
  .wm-border > .clearfix table,
  .wm-border > .clearfix thead,
  .wm-border > .clearfix tbody,
  .wm-border > .clearfix tr,
  .wm-border > .clearfix th,
  .wm-border > .clearfix td
  .wm-border .spec table,
  .wm-border .spec thead,
  .wm-border .spec tbody,
  .wm-border .spec tr,
  .wm-border .spec th,
  .wm-border .spec td {
    display: block;
  }

  .wm-border > .clearfix tr+tr th,
  .wm-border .spec tr+tr th {
    margin-top: .62em;
    padding-top: 0;
  }

  .wm-border > .clearfix tr+tr td,
  .wm-border .spec tr+tr td {
    padding-top: 0;
  }

  .wm-border > .clearfix th,
  .wm-border .spec th {
    width: auto;
    padding-right: 0;
    white-space: normal;
  }

  .wm-border > .clearfix td,
  .wm-border .spec td {
    width: auto;
    padding-right: 0;
  }

  .wm-border > .clearfix th:after,
  .wm-border .spec th:after {
    content: ':';
    display: inline-block;
    width: 1em;
    text-align: center;
    vertical-align: middle;
  }

  .wm-border > .clearfix th[colspan]:after,
  .wm-border .spec th[colspan]:after,
  .wm-border > .clearfix td:before,
  .wm-border .spec td:before {
    display: none;
  }

  .clearfix .wm-border > .clearfix table,
  .clearfix .wm-border .spec {
    margin: 0;
  }

  /* .compList */
  .compImage li,
  .clearfix .compItem {
    float: none;
    width: auto;
  }
}
