@charset "UTF-8";
/*
 Theme Name:   Twenty Twelve Child
 Theme URI:    http://example.com/twenty-twelve-child/
 Description:  Twenty Twelve Child Theme
 Author:       tsurumi
 Template:     twentytwelve
 Version:      1.0.0
*/
html {
  width: 100%;
  height: 100%;
}

body {
  max-width: 1600px;
  min-width: 320px;
  min-height: 100%;
  margin: auto;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 16px;
  color: #40281C;
  letter-spacing: .02rem;
  line-height: 1.75;
  position: relative;
  top: 0 !important;
  /* Google翻訳デザイン崩れ対策 */
}

a {
  color: #40281C;
  text-decoration: none;
}

header > section,
#body,
footer#colophon #foot {
  width: 1000px;
  margin: auto;
}

@media screen and (max-width: 1000px) {
  header > section,
  #body,
  footer#colophon #foot {
    width: 100%;
  }
}

#topimg_sec {
  margin: 0 !important;
  width: 99.5%;
}

#topimg {
  border: 1px solid #d6d6d6;
  position: relative;
}

.fb_area {
  background: #3b5998;
  display: inline-block;
  width: 120px;
  text-align: left;
  border-radius: 2px;
}

.fb_area img {
  margin-top: 5px;
  margin-left: 10px;
}

span.fb_text {
  color: #ffffff;
  font-size: 15px;
  vertical-align: super;
}

/* -- h1 ----------------------------------- */
h1 {
  margin: auto;
  font-size: 1.25rem;
  margin: 25px auto;
  padding: 5px 0;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: normal;
  background: #0BB2D9;
}

h1:before {
  bottom: -30px;
  left: 0;
  position: absolute;
  border-width: 7px 0 23px 13px;
  border-style: solid;
  border-color: #FFBFD6 transparent transparent transparent;
  z-index: 1;
  content: '';
}

h1:after {
  top: 0;
  right: 0;
  position: absolute;
  border-width: 25px 10px 25px 0px;
  border-color: transparent #FFFFFF transparent transparent;
  border-style: solid;
  z-index: 1;
  content: '';
}

h1:after {
  top: auto;
  bottom: -30px;
  right: 0;
  position: absolute;
  border-width: 7px 13px 23px 0;
  border-style: solid;
  border-color: #FFBFD6 transparent transparent transparent;
  z-index: -1;
  content: '';
}

h1 span {
  margin: auto;
  padding: 5px 10px;
  padding-left: 20px;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.1rem;
  font-weight: normal;
  color: #FFFFF3;
  border-top: 2px dashed #FFFFF3;
  border-bottom: 2px dashed #FFFFF3;
}

/* -- h2 ----------------------------------- */
h2 {
  margin: auto;
  padding: 5.5px 10px;
  position: relative;
  font-size: 1rem;
  font-weight: normal;
  color: #7A4B35;
  background-color: #FFDAA5;
}

h2:after {
  bottom: -9px;
  left: 10px;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #FFDAA5 transparent transparent transparent;
  position: absolute;
  z-index: -1;
  content: "";
}

/* -- h3 ----------------------------------- */
h3 {
  margin: auto;
  padding: 0 .5em 0 2em;
  position: relative;
  font-size: 1rem;
  font-weight: normal;
  border-bottom: 1px solid #ccc;
}

h3::before,
h3::after {
  position: absolute;
  border-radius: 100%;
  content: '';
}

h3::before {
  top: .2em;
  left: .2em;
  width: 18px;
  height: 18px;
  background: rgba(255, 143, 208, 0.5);
  z-index: 2;
}

h3::after {
  top: .7em;
  left: .7em;
  width: 13px;
  height: 13px;
  background: rgba(255, 191, 214, 0.5);
}

/* -- input ----------------------------------- */
input[type="submit"],
input[type="reset"] {
  padding: 0;
  border: 0;
  position: relative;
  background: transparent;
  color: inherit;
}

.main-navigation {
  margin-top: 15px;
}

/* -- position ----------------------------------- */
.right {
  text-align: right;
}

.left {
  text-align: left;
}

.center {
  text-align: center;
}

.inline-block {
  display: inline-block;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

/* -- size ----------------------------------- */
.small {
  text-indent: .7rem;
  font-size: .8rem;
  color: #717171;
}

.pmax_50 {
  width: 50%;
}

/* -- .line-up ----------------------------------- */
.line-up article {
  display: inline-block;
  vertical-align: top;
}

.line-up dl {
  margin: 1.5vh 1vw;
  margin-left: 2vw;
}

.line-up dl dt,
.line-up dl dd {
  display: inline-block;
}

.line-up dl dt {
  width: 110px;
}

/* -- .title ----------------------------------- */
.title img {
  width: 200px;
  height: auto;
  vertical-align: middle;
}

.title aside {
  margin-left: 1%;
  display: inline-block;
  text-align: left;
  vertical-align: middle;
  font-size: 1.3rem;
}

.title h1,
.title h2 {
  margin: auto;
  padding: 0;
  color: #40281C;
  font-size: 1.3rem;
  background: transparent;
}

.title h1:before,
.title h1:after,
.title h2:after {
  content: none;
}

.title h1 {
  line-height: 2.4rem;
}

.title h2 {
  font-size: 1.1rem;
  line-height: 1.3rem;
}

/* -- button ----------------------------------- */
.btn_area,
.btn-area {
  margin: 2vh auto;
}

.btn_area .button,
.btn-area .button {
  padding: 10px 15px;
  display: inline-block;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  font-size: 1.05rem;
  cursor: pointer;
  background: #FFBFD6;
}

.btn_area .button,
.btn_area .button a,
.btn-area .button,
.btn-area .button a {
  text-decoration: none;
  color: #7A4B35;
}

.btn_area .button:hover,
.btn_area .button:hover a,
.btn-area .button:hover,
.btn-area .button:hover a {
  text-decoration: none;
  color: #FFF8FB;
}

.btn_area .button:before,
.btn-area .button:before {
  top: 5px;
  bottom: 5px;
  right: 5px;
  left: 5px;
  position: absolute;
  border-right: 2px dashed #FFFFF3;
  border-left: 2px dashed #FFFFF3;
  content: "";
}

.btn_area .button:hover:before,
.btn-area .button:hover:before {
  border-right: 2px dashed #7A4B35;
  border-left: 2px dashed #7A4B35;
}

.btn_area.inline-block + .btn_area.inline-block,
.btn-area.inline-block + .btn_area.inline-block {
  margin-left: 2%;
}

.btn_area.inline-block + .btn_area.inline-block:last-of-type,
.btn-area.inline-block + .btn_area.inline-block:last-of-type {
  margin-right: 1%;
}

/* .btn-small */
.btn-small.button {
  padding: 5px 15px;
  font-size: .9rem;
}

/* .search-box */
.search-box .button {
  background: #B7ECFF;
}

.search-box .button.reset {
  padding: 2px 13px;
}

.search-box .button a {
  font-size: 1.05rem;
  color: #7A4B35;
}

.search-box .button.reset {
  padding: 2px 13px;
}

/* -- .cat-icon ----------------------------------- */
.cat-icon {
  width: 80px;
  padding: 6px 3px 3px;
  display: inline-block;
  line-height: 1;
  font-size: .8rem;
  text-align: center;
  border: 1px solid #FF8FD0;
  color: #FF8FD0;
  background: #FFFFFF;
}

.cat-icon a,
.content-box h3 + article .cat-icon a,
.content-box h2 + article .cat-icon a {
  color: #FF8FD0;
}

/* -- .scroll-top ----------------------------------- */
.scroll-top {
  width: 1000px;
  margin: 30px auto -25px;
  text-align: right;
}

.scroll-top a {
  width: 50px;
  padding: 5px 13px;
  position: relative;
  text-align: center;
  color: #fff;
  border-radius: 1px;
  background: #FF6691;
}

.scroll-top a:before {
  bottom: -16px;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -10px;
  position: absolute;
  border-width: 9px 10px 7px 10px;
  border-style: solid;
  border-color: #FF6691 transparent transparent transparent;
  z-index: 0;
  content: '';
}

.scroll-top a:after {
  top: 5px;
  bottom: 5px;
  right: 5px;
  left: 5px;
  position: absolute;
  border-right: 2px dashed #FFFFF3;
  border-left: 2px dashed #FFFFF3;
  content: "";
}

.scroll-top a:hover:after {
  border-color: #A8694A;
}

/* -- .searchform ----------------------------------- */
.searchform input[type="text"] {
  padding: 3px 5px;
  vertical-align: middle;
  font-size: 1.02rem;
  border: 1px solid #AAA4A4;
}

.searchform input[type="submit"] {
  padding: 4px 8px;
  vertical-align: middle;
  border: 0;
  background: #0BB2D9;
  color: #FFFFF3;
}

/*-- header --------------------------------------- */
#header {
  margin-bottom: 16px;
}

#header .nots a {
  color: #40281C;
}

header section article {
  width: 50%;
  display: inline-block;
}

header section article:last-of-type {
  width: 49%;
  margin-bottom: 7px;
  text-align: right;
  vertical-align: bottom;
}

/* .menu-sub */
.menu-sub {
  margin-top: 1vh;
}

.menu-sub span {
  margin-left: 1%;
}

.menu-sub a {
  padding: 0;
  padding-right: 2px;
  padding-left: 10px;
  position: relative;
}

.menu-sub a:before {
  top: 5px;
  bottom: 5px;
  left: 0px;
  position: absolute;
  border-left: 3px solid #FF9534;
  content: "";
}

.menu-sub a:hover {
  text-decoration: underline;
}

/* .menu */
#menu-open {
  display: none;
}

header #s-menu {
  border-bottom: 1px solid #C4C3C3;
}

header .menu {
  width: 980px;
  margin: auto;
  position: relative;
  letter-spacing: 0;
}

header .menu::before,
header .menu::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

header .menu > ul {
  margin: auto;
  padding: 0;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  list-style-type: none;
}

header .menu > ul:before,
header .menu > ul:after {
  content: "";
  display: table;
}

header .menu > ul:after {
  clear: both;
}

header .menu > ul > li {
  margin: auto;
  padding: 0 3px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* Safari */
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: center;
  font-size: 14px;
}

header .menu > ul > li:first-of-type:before,
header .menu > ul > li:after {
  top: 0.5rem;
  width: 1px;
  height: 25px;
  position: absolute;
  content: "";
  background: #FFFFF3;
}

header .menu > ul > li:first-of-type:before {
  left: 0;
}

header .menu > ul > li:after {
  right: 0;
}

header .menu > ul > li > a {
  margin: auto;
  padding: 15px 15px 11px;
  display: block;
  line-height: 1;
  font-size: 14px;
}

header .menu > ul > li > a,
header .menu > ul > li:hover > a {
  color: #FFFFF3;
}

header .menu > ul li ul {
  top: 50%;
  left: 0;
  width: 120%;
  margin: 0;
  padding: 0;
  visibility: hidden;
  position: absolute;
  list-style: none;
  z-index: 9999;
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s;
  background: rgba(255, 250, 255, 0.95);
}

header .menu > ul li:nth-last-child(4) ul {
  left: auto;
  right: 0;
  width: 205%;
}

header .menu > ul li ul li {
  padding: 5px;
  border-left: 5px solid #FFDAA5;
}

header .menu > ul li ul li:last-of-type {
  border-bottom: 0;
}

header .menu > ul li ul li:hover {
  /*border-left: 5px solid #FF9534;*/
}

header .menu > ul li ul li a {
  padding: 8px;
  display: block;
  text-align: left;
  border-bottom: 1px dashed #9D9898;
}

header .menu ul li ul li a,
header .menu ul li ul li:hover a {
  color: #40291C;
}

header .menu > ul li:hover ul {
  top: 100%;
  visibility: visible;
  opacity: 1;
}

header .menu > ul > li:hover > a,
header .menu ul li ul > li:hover > a {
  text-decoration: underline;
}

header #menu ul.menu_left {
  width: 150%;
}

/*-- menu --------------------------------------- */
/*-- footer#colophon --------------------------------------- */
#colophon a {
  color: #40281C;
}

footer#colophon {
  margin-top: 40px;
  border-top: 2px double #7A4B35;
}

footer#colophon #foot {
  padding-top: 30px;
}

footer#colophon .menu {
  margin: 10px 7px 20px;
}

footer#colophon .menu ul {
  margin: auto;
  padding: 0;
  list-style: none;
}

footer#colophon .menu ul li {
  display: block;
  vertical-align: top;
  font-size: 90%;
}

footer#colophon .menu > ul > li {
  width: 31%;
  margin: auto;
  margin-left: 10px;
  margin-bottom: 15px;
  margin-left: 1%;
  display: inline-block;
  text-align: left;
}

footer#colophon .menu > ul > li > a {
  width: 90%;
  padding-left: 10px;
  display: block;
  font-weight: bold;
  border-bottom: 1px solid #C7C0C0;
}

footer#colophon .menu ul li ul li {
  margin: 4px 7px auto;
  display: block;
}

footer#colophon .menu ul li a:hover {
  color: #FF6691;
  text-decoration: underline;
}

footer#colophon .title img {
  width: 130px;
}

footer#colophon .title h1 {
  font-size: 1.1rem;
}

footer#colophon .title h2 {
  font-size: 1rem;
}

footer#colophon .title aside {
  margin: auto;
  margin-left: 1%;
  margin-right: 2%;
}

footer#colophon #copyright {
  display: block;
  margin: auto;
  padding-top: 3px;
  text-align: center;
  font-size: 80%;
  border-top: 1px solid #ECE4E4;
}

footer .address {
  margin-left: 20px;
  margin-bottom: 10px;
}

/*-- #body --------------------------------------- */
#body > section {
  margin: 15px auto auto;
}

#body > section:first-of-type {
  margin: 10px auto auto;
}

/*-- .content-box --------------------------------------- */
.content-box {
  width: 97%;
  margin: 0 auto 16px;
  border: 1px solid #FFDAA5;
}

.content-box:nth-of-type(3n+2) {
  border: 1px solid #B3FFCE;
}

.content-box:nth-of-type(3n+3) {
  border: 1px solid #B7ECFF;
}

.content-box:nth-of-type(3n+2) h2:after {
  border-color: #B3FFCE transparent transparent transparent;
}

.content-box:nth-of-type(3n+3) h2:after {
  border-color: #B7ECFF transparent transparent transparent;
}

.content-box:nth-of-type(3n+2) h2 {
  background-color: #B3FFCE;
}

.content-box:nth-of-type(3n+3) h2 {
  background-color: #B7ECFF;
}

.content-box h3 {
  margin: 20px 1.8% auto;
}

.content-box article {
  margin: 20px 2.5% 20px 2.5%;
}

.content-box article:first-of-type {
  margin-top: 25px;
}

.content-box h3 + article,
.content-box h3 + article:first-of-type {
  margin-top: 5px;
}

.content-box article > p:first-of-type {
  margin: 5px auto;
}

.content-box h3 + article a,
.content-box h2 + article a,
.blue_link,
article.entry-content div a {
  color: #4787ED;
}

.content-box h3 + article a:hover,
.content-box h2 + article a:hover {
  text-decoration: underline;
}

.content-box article .btn_area {
  margin-top: 1vh;
}

.content-box article .btn_area a {
  /*color: #40281C;*/
}

.content-box article figure {
  margin: 35px auto;
}

.content-box article figure.certificate {
  width: 240px;
  height: 339px;
  float: right;
  margin: 5px;
}

#file_area h3 a {
  color: #40281C;
  pointer-events: none;
}

/* blog-parts */
.blog-parts {
  margin-top: -10px;
  text-align: right;
  font-size: .85rem;
}

.blog-parts span {
  margin: auto;
  margin-left: 2%;
  display: inline-block;
}

.blog-parts .cat-icon {
  width: auto;
}

/*-- page --------------------------------------- */
.lcp_paginator {
  padding: 0;
  text-align: center;
}

.lcp_paginator .lcp_currentpage {
  padding: 0 5px;
  border: 1px solid #40281C;
  background: #ff6691;
  color: #FFFAFD;
}

.lcp_paginator li {
  display: inline-block;
  border: 1px solid;
  margin: 2px;
}

.lcp_paginator li a {
  padding: 0 5px;
}

.nav-single {
  margin: 15px 3% 10px;
  text-align: center;
}

.nav-previous a,
.nav-next a {
  margin: .5% 1%;
  padding: 2px 7px;
  display: inline-block;
  border: 1px solid;
}

/*-- .blog-block --------------------------------------- */
.blog-block {
  width: 97%;
  border: 1px solid #FFDAA5;
}

.blog-block h2 {
  padding: 5px 10px;
  position: relative;
  font-weight: normal;
  background-color: #FFDAA5;
  color: #7A4B35;
}

.blog-block h2:after {
  bottom: -10px;
  left: 10px;
  position: absolute;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #FFDAA5 transparent transparent transparent;
  z-index: -1;
  content: "";
}

.blog-block article {
  margin: 20px 2%;
}

.blog-block dl {
  margin: 0 auto 5px;
  padding-left: 1%;
  display: block;
  line-height: 1.5;
  border-bottom: 1px dashed #9D9898;
}

.blog-block dl dt,
.blog-block dl dd {
  vertical-align: middle;
}

.blog-block dl dt {
  width: 15%;
  margin: auto;
  display: inline-block;
  text-align: center;
}

.blog-block dl dt span {
  width: 80px;
  padding: 6px 3px 3px;
  display: inline-block;
  line-height: 1;
  font-size: .8rem;
}

.blog-block dl dd {
  margin: auto;
  margin-left: 2%;
  padding: 8px 10px;
  display: inline-block;
}

.blog-block dl dd:last-of-type {
  width: 65%;
}

.blog-block dl dd a:hover {
  text-decoration: underline;
}

.blog-block > div {
  margin: 5px auto 20px;
}

.blog-block .cat-icon + .cat-icon {
  display: block;
  margin-top: 5px;
}

.top_blog_block {
  width: 685px;
  display: inline-block;
  float: left;
}

.top_blog_block dl dt {
  width: 21%;
}

.top_blog_block dl dd:last-of-type {
  width: 54%;
}

div#top_area {
  display: inline-block;
  margin-top: 20px;
}

#fb_block {
  display: inline;
  margin-left: 10px;
}

/*-- .search-box --------------------------------------- */
.search-box dl dt {
  float: left;
}

.search-box dl dd {
  margin-left: 120px;
}

.search-box dl dd label + label {
  margin-left: 1.5%;
}

.search-box dl dd label:nth-of-type(4n+4):after {
  white-space: pre;
  content: '\A';
}

.search-box dl dd label:nth-of-type(5n+5) {
  margin-left: auto;
}

.search-box dl dd .small {
  margin-left: 1%;
}

.search-box.group dl dd {
  margin-left: 240px;
}

.content-box h3 + .search-box a:hover,
.content-box h2 + .search-box a:hover {
  text-decoration: none;
}

/*-- .result-box --------------------------------------- */
.result-box article {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.result-box .prof,
.result-box .prof-group {
  width: 85%;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.result-box dl {
  margin: 1.2vh 1%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  border-bottom: 1px dotted #C0C0C0;
}

.result-box dl dt,
.result-box dl dd {
  margin: auto;
  margin-left: .7vw;
  display: inline-block;
  vertical-align: top;
}

.result-box dl dt {
  width: 11%;
}

.result-box dl dd {
  width: 85%;
}

.result-box .prof dl {
  width: 48%;
}

.result-box .prof dl.prof-long {
  width: 100%;
}

.result-box .prof dl dt, .result-box .prof dl:nth-of-type(2n+0).prof-long dt {
  width: 30%;
}

.result-box .prof dl dd, .result-box .prof dl:nth-of-type(2n+0).prof-long dd {
  width: 60%;
}

.result-box .prof dl:nth-of-type(2n+0) dt {
  width: 11%;
}

.result-box .prof dl:nth-of-type(2n+0) dd {
  width: 80%;
}

.result-box .prof dl:nth-of-type(2n+1):last-of-type dt {
  width: 15%;
}

.result-box .btn {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

/*-- .detail-box --------------------------------------- */
.detail-box dl {
  border-bottom: 1px dotted #C0C0C0;
}

.detail-box dl dt,
.detail-box dl dd {
  margin: auto;
  margin-left: .5vw;
  display: inline-block;
  vertical-align: top;
}

.detail-box dl dt {
  width: 20%;
}

.detail-box dl dd {
  width: 75%;
}

/** .top *********************************************************************/
/*-- .content-box --------------------------------------- */
.top .content-box {
  text-align: center;
  border: 0;
}

.top .content-box > article {
  width: 30%;
  margin: 20px auto;
  display: inline-block;
}

.top .content-box > article:nth-of-type(3n+2) {
  margin: 20px 2%;
}

.top .content-box > article figure {
  height: 180px;
  margin: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: solid #ECECEC;
  border-width: 1px 1px 0 1px;
  background-position: center bottom;
  background-size: auto 180px !important;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.top .content-box > article figure:before {
  content: '';
  background: inherit;
  -webkit-filter: blur(1.5px);
          filter: blur(1.5px);
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  z-index: -1;
}

.top .content-box article figcaption {
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0);
  background: rgba(50, 50, 50, 0);
}

.top .content-box article:hover figcaption {
  border: 1px solid #ECECEC;
  background: rgba(255, 255, 255, 0.75);
}

.top .content-box article figcaption p {
  margin: auto;
  padding: 15px 5.5%;
  text-align: left;
  color: #000000;
  text-shadow: white 0px 0px 3px, white 0px 0px 3px, white 0px 0px 3px, white 0px 0px 3px;
}

.top .content-box article:hover figcaption p {
  color: #000000;
}

.top .content-box article .btn_area {
  margin: auto;
}

.top .content-box .button {
  width: 100%;
  padding: 15px 0;
  background: #B7ECFF;
}

.top .content-box article:nth-of-type(2n+1) .button {
  background: #B5FFC3;
}

.top .content-box article .btn_area:hover .button {
  color: #FFFFFF;
  background: #0BB2D9;
}

.top .content-box article:nth-of-type(2n+1) .btn_area:hover .button {
  background: #04AC60;
}

.top .content-box article .btn_area .button:before {
  border: 0;
  border-right: 7px solid #FFFFFA;
  border-left: 7px solid #FFFFFA;
}

.top .content-box article .btn_area:hover .button:before {
  border: 0;
  border-right: 7px solid #EEEAEA;
  border-left: 7px solid #EEEAEA;
}

.img-1 {
  background: url("/wp-content/image/question.png");
}

.img-2 {
  background: url("/wp-content/image/card.png");
}

.img-3 {
  background: url("/wp-content/image/search.png");
}

.img-4 {
  background: url("/wp-content/image/school.png");
}

.img-5 {
  background: url("/wp-content/image/team.png");
}

.img-6 {
  background: url("/wp-content/image/hand.png");
}

.mimg-1 {
  background: url("/wp-content/uploads/2017/11/top_logo.png");
}

.mimg-2 {
  background: url("/wp-content/uploads/2017/11/top_acc2.jpg");
}

.mimg-3 {
  background: url("/wp-content/uploads/2017/11/top_card.png");
}

.mimg-4 {
  background: url("/wp-content/uploads/2017/11/top_acc6.jpg");
}

.mimg-5 {
  background: url("/wp-content/uploads/2017/11/top_teacher1.jpg");
}

.mimg-6 {
  background: url("/wp-content/uploads/2017/11/top_acc5-3.jpg");
}

/*-- .sub --------------------------------------- */
.top .sub article {
  margin: 10px auto;
}

.top .sub .button {
  width: 170px;
  padding: 10px 0;
  color: #7A4B35;
  border: 0;
  background: #FFBFD6;
}

.top .sub .btn_area .button:before {
  border: 0;
  border-right: 2px dashed #EEEAEA;
  border-left: 2px dashed #EEEAEA;
}

/** .detail *********************************************************************/
/*-- syui --------------------------------------- */
.detail .content-box article .founder {
  width: 48%;
  display: inline-block;
}

.detail .content-box article .founder dt {
  font-weight: bold;
}

.detail .content-box article .founder dd {
  margin-bottom: 10px;
}

/*-- syui --------------------------------------- */
/*-- support --------------------------------------- */
.detail .content-box article .support dt {
  float: left;
}

.detail .content-box article .support dd {
  margin-left: 100px;
}

/*-- support --------------------------------------- */
/*-- table ---------------*/
table {
  width: 100%;
  border-collapse: collapse;
  width: 100%;
}

table th,
table td {
  padding: 5px;
}

table th {
  background-color: #71d1ef;
  text-align: left;
}

table td a span.qua_list {
  display: inline-block;
  width: 149px;
  height: 103px;
  float: left;
  text-align: center;
}

table#qua_list_top {
  width: 750px;
  display: inline-table;
}

table#qua_list_top td {
  text-align: center;
}

table#qua_list_top,
table#qua_list_top th,
table#qua_list_top td {
  border: none;
  border-top: none;
  border-right: none;
  border-　bottom: none;
}

/*-- /table ---------------*/
/*-- tab -----------------*/
.tab {
  margin: 0px;
  margin-top: 15px;
  display: inline-block;
  text-align: center;
  padding: 10px;
  color: #7A4B35;
}

/*-- /tab -----------------*/
/*-- .design2 --------------------------------------- */
/* .design2 */
.design2 header section article:last-of-type {
  margin-bottom: auto;
}

.design2 header section article:last-of-type > div {
  margin-bottom: 5px;
}

/*-- color --------------------------------------- */
.pink {
  background: #FF6691;
}

/** ******************************************************************* **/
@media screen and (max-width: 980px) {
  body {
    max-width: 100%;
    word-break: break-all;
  }
  h1 {
    margin-top: 0;
  }
  .inline {
    display: inline-block;
  }
  .nots,
  .notsm {
    display: none;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  #img_head span {
    font-size: 2.3rem;
  }
  #page_title {
    font-size: 1.5rem;
  }
  .pmax_50 {
    width: 95%;
  }
  body #body,
  body #top,
  body #news,
  body #list,
  body #detail,
  header#masthead > section,
  body header .menu {
    width: 97%;
    display: block;
  }
  #top #category {
    margin-bottom: 10px;
  }
  #top #category article {
    width: 62%;
  }
  #translate {
    margin-left: 59%;
    float: none;
  }
  #topimg_sec {
    margin: 0;
    width: 100%;
  }
  .top_blog_block {
    width: 100%;
    float: none;
  }
  .top_blog_block dl dt {
    width: 15%;
  }
  .top_blog_block dl dd:last-of-type {
    width: 65%;
  }
  div#top_area {
    display: block;
    text-align: center;
  }
  #fb_block {
    margin-left: 0px;
  }
  /* #menu */
  body #menu-open {
    display: block;
    text-align: center;
    padding: 8px;
    color: white;
    position: fixed;
    top: 10px;
    right: 5px;
    font-size: 1em;
    z-index: 5000;
  }
  #menu-open:before {
    /*content: "Menu";*/
  }
  #menu ul {
    width: 100%;
    display: none;
  }
  #menu > ul > li {
    text-align: left;
    border: 1px solid #ffffff;
    background: #FF6691;
  }
  #menu.on_menu {
    width: 95%;
    margin: 5px auto;
    display: block;
    position: relative;
  }
  #menu.on_menu > ul {
    top: 0;
    width: 100%;
    height: 99%;
    margin: 0 auto;
    padding-right: 10px;
    display: block;
    position: fixed;
    overflow-y: scroll;
    z-index: 8888;
    letter-spacing: 0.1em;
  }
  #menu > ul > li > ul {
    overflow-y: scroll;
    position: static;
  }
  #menu.on_menu > ul > li {
    width: auto;
    height: auto;
    display: block;
    padding-top: 3px;
    padding-bottom: 3px;
  }
  #menu.on_menu > ul > li > ul {
    padding: 0;
  }
  #menu.on_menu > ul > li > ul > li > ul {
    padding: 0;
    display: block;
  }
  #menu.on_menu > ul > li > ul > li {
    width: auto;
    margin: 0;
    float: none;
  }
  #menu.on_menu > ul > li.notev_o > a, #menu.on_menu > ul > li.notev > a {
    pointer-events: none;
  }
  #menu.on_menu > ul > li > a, span.to_en {
    margin-left: 1.5%;
  }
  #menu > ul > li > ul > li:first-child a {
    margin-left: 1%;
  }
  #menu.on_menu .notpc, #menu .m_top, #menu .m_close {
    display: block;
  }
  #menu li:hover ul {
    display: none;
  }
  #menu a:after {
    content: ">";
    float: right;
    font-size: large;
  }
  #menu > ul > li > ul > li > ul > li {
    padding-left: 0;
  }
  #menu li.notev > a:after {
    float: right;
    font-size: large;
    content: "+";
  }
  #menu li.notev_o > a:after {
    float: right;
    font-size: large;
    content: '－';
  }
  #menu li.m_close a:after, #menu li.m_top a:after {
    float: right;
    font-size: large;
    content: '×';
  }
  #menu li ul li a {
    margin-left: 4.5%;
  }
  #menu li ul li ul li a {
    margin-left: 8.5%;
  }
  #menu > ul > li > ul > li:first-child a {
    font-size: 14px;
    padding: 13px 10px;
  }
  img.fb_sm {
    vertical-align: middle;
  }
  /* header */
  header #s-menu {
    border-bottom: none;
  }
  header .menu > ul li ul {
    top: 100%;
    visibility: visible;
    opacity: 1;
  }
  header .menu > ul > li:first-of-type:before,
  header .menu > ul > li:after {
    background: none;
  }
  /* footer */
  footer #footer_inner nav ul li {
    margin: 5px 7px;
  }
  footer #footer_inner nav ul li:first-child {
    width: 13rem;
  }
  .notpc {
    display: block;
  }
  /* /#menu */
  /* header  */
  header .title {
    width: 78vw;
    margin-top: 14px;
    margin-left: 2px;
  }
  header .title a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  header .title img {
    width: 30%;
  }
  header .title h2 {
    font-size: 3.5vw;
  }
  header .title h1 {
    font-size: 4vw;
  }
  header section article:last-of-type {
    width: 97%;
    display: block;
  }
  /* /header*/
  /* scroll */
  .dscroll {
    width: 100%;
    overflow: scroll;
  }
  /* scroll */
  /* .content */
  .content article {
    margin: 15px 0 30px;
  }
  .content .about figure,
  .content figure + div {
    margin: 10px;
    padding: 0;
    display: block;
  }
  .content .about figure, .content figure {
    text-align: center;
  }
  .content section.inline {
    width: 95%;
  }
  .content dl dd {
    margin: auto;
    margin-bottom: 5px;
    padding-left: 6%;
  }
  .content dl dt {
    float: none;
  }
  .content dl {
    margin: 5px 1%;
  }
  .content img {
    width: 100%;
  }
  article#not_dd dd {
    margin: 0;
    margin-bottom: 5%;
  }
  /* /.content */
  /* .new */
  #main .new dl {
    display: -webkit-inline-box;
  }
  #main .new.mark dl dt {
    width: auto;
  }
  #main .new dl dd.date {
    width: auto;
    padding: 8px 10px 0;
    margin-right: 36%;
  }
  #news #left_sub section dl, #news #left_sub section ul {
    margin: auto 11%;
    text-align: left;
  }
  #news .content article {
    margin: 0;
  }
  #news .content {
    padding: 0;
  }
  #news .content article div p img {
    float: none !important;
  }
  /* /.new */
  /*------ #left_sub ------*/
  #top #main,
  #news #main, #left_sub {
    width: 100%;
    margin: 0;
    float: none;
  }
  #left_sub > section {
    text-align: center;
  }
  #news #left_sub section dl dd, #news #left_sub section ul li {
    margin-bottom: 4%;
  }
  /*------ #left_sub ------*/
  /*------ .arrow .step------*/
  #detail div.arrow {
    margin-left: 37%;
  }
  section.step figure.inline {
    text-align: center;
  }
  section.step div figure.inline {
    text-align: center;
  }
  section.step div p {
    text-align: left;
  }
  section.step div {
    text-align: center;
  }
  /*------/.arrow .step ------*/
  /*-- syui ------------------------------------------*/
  .detail .content-box article .founder {
    width: 100%;
    margin: 0 auto;
  }
  /*-- /syui -----------------------------------------*/
  /* -- back -------------------------------- */
  #list section > article {
    margin: 5px auto 10px;
  }
  #list article article {
    width: auto;
    margin: 10px 2% 15px;
    display: block;
  }
  #list article aside {
    width: auto;
    display: block;
    text-align: center;
  }
  #list article aside .btn_area {
    margin: 20px 3%;
    display: inline-block;
  }
  #list article dt {
    float: none;
    padding: 0;
  }
  #list article dd {
    margin: auto;
    /* margin-left: 3%; */
    padding: 0;
    padding-left: 10px;
  }
  /* -- /back ------------------------------- */
  /* -- blog -------------------------------- */
  .blog-block article dl dt {
    width: auto;
  }
  .blog-block dl dd:last-of-type {
    width: 90%;
  }
  /* -- /blog ------------------------------- */
  /* -- top ------------------------------- */
  body .top .content-box > article,
  body .top .content-box > article:nth-of-type(3n+2) {
    width: 97%;
    margin: 0;
    margin-top: 8px;
    margin-bottom: 8px;
  }
  body .top .content-box > article figure {
    height: 120px;
    background-size: auto 100% !important;
  }
  body .top .content-box > article figure.all_width {
    background-size: 100% auto !important;
  }
  /* -- /top ------------------------------ */
  /* -- footer -------------------------------- */
  footer#colophon #foot {
    text-align: center;
    width: 97% !important;
  }
  body .scroll-top,
  body footer#colophon #foot .menu > ul > li,
  footer#colophon #foot .menu > ul > li > a {
    display: block;
    width: 97%;
  }
  /* -- /footer ------------------------------- */
  /* -- form ----------------------------------*/
  section.content-box article iframe {
    width: 99%;
  }
  /* -- /form ---------------------------------*/
  /*-- search ---------------------------------------*/
  .search-box #r_btn_area {
    float: none;
    text-align: right;
  }
  .search-box dl {
    padding-bottom: 3%;
    border-bottom: 1px dotted #F8F8F8;
  }
  .search-box dl dt {
    float: none;
  }
  .search-box dl dd, .search-box.group dl dd {
    margin-left: 20px;
  }
  .result-box .prof,
  .result-box .prof-group {
    width: 97%;
  }
  .result-box .prof dl,
  .result-box .prof dl dt,
  .result-box .prof-group dl,
  .result-box .prof-group dl dt,
  .result-box .prof dl:nth-of-type(2n+0) dt,
  .result-box .prof dl:nth-of-type(2n+0).prof-long dt,
  .result-box .prof dl:nth-of-type(2n+1):last-of-type dt {
    width: 100%;
  }
  .result-box .prof dl dd, .result-box .prof-group dl dd {
    width: 90%;
    margin-left: 10%;
    margin-top: 8px;
  }
  .search-box dl dd label:nth-of-type(4n+4):after {
    white-space: pre;
    content: '';
  }
  /*-- /search --------------------------------------*/
  /* -- detail ----------------------------------*/
  #body .detail-box dl dt {
    width: 100%;
  }
  #body .detail-box dl dd {
    width: 90%;
    margin-left: 10%;
    margin-top: 8px;
  }
  /* -- /detail ---------------------------------*/
}

@media screen and (max-width: 400px) {
  /* header  */
  header .title img {
    width: 65px;
  }
  header .title h2 {
    font-size: 0.7rem;
  }
  header .title h1 {
    font-size: 0.8rem;
  }
  /* /header*/
}

/*-- notpc --------------------------------------- */
.notpc {
  display: none;
}

li.notpc {
  display: none;
}

/*-- view_loading --------------------------------------- */
#view_loading {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(80, 80, 80, 0.4);
  z-index: 9999;
}

#view_loading .sk-fading-circle {
  margin: 100px auto;
  width: 40px;
  height: 40px;
  position: relative;
}

#view_loading .sk-fading-circle .sk-circle {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

#view_loading .sk-fading-circle .sk-circle:before {
  content: '';
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #fff;
  border-radius: 100%;
  -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
  animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}

#view_loading .sk-fading-circle .sk-circle2 {
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

#view_loading .sk-fading-circle .sk-circle3 {
  -webkit-transform: rotate(60deg);
  transform: rotate(60deg);
}

#view_loading .sk-fading-circle .sk-circle4 {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

#view_loading .sk-fading-circle .sk-circle5 {
  -webkit-transform: rotate(120deg);
  transform: rotate(120deg);
}

#view_loading .sk-fading-circle .sk-circle6 {
  -webkit-transform: rotate(150deg);
  transform: rotate(150deg);
}

#view_loading .sk-fading-circle .sk-circle7 {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

#view_loading .sk-fading-circle .sk-circle8 {
  -webkit-transform: rotate(210deg);
  transform: rotate(210deg);
}

#view_loading .sk-fading-circle .sk-circle9 {
  -webkit-transform: rotate(240deg);
  transform: rotate(240deg);
}

#view_loading .sk-fading-circle .sk-circle10 {
  -webkit-transform: rotate(270deg);
  transform: rotate(270deg);
}

#view_loading .sk-fading-circle .sk-circle11 {
  -webkit-transform: rotate(300deg);
  transform: rotate(300deg);
}

#view_loading .sk-fading-circle .sk-circle12 {
  -webkit-transform: rotate(330deg);
  transform: rotate(330deg);
}

#view_loading .sk-fading-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

#view_loading .sk-fading-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}

#view_loading .sk-fading-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

#view_loading .sk-fading-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

#view_loading .sk-fading-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
  animation-delay: -0.7s;
}

#view_loading .sk-fading-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
}

#view_loading .sk-fading-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
}

#view_loading .sk-fading-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
  animation-delay: -0.4s;
}

#view_loading .sk-fading-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
  animation-delay: -0.3s;
}

#view_loading .sk-fading-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
  animation-delay: -0.2s;
}

#view_loading .sk-fading-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
  animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
}

@keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
}

.needs_top_section {
  position: relative;
}

.needs_top_section .ribbon {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 8px;
  margin: 0;
  padding: 8px 4px;
  z-index: 2;
  width: 4.0rem;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.2rem;
  color: white;
  background: #ff785b;
}

.needs_top_section .ribbon .small {
  color: #eee;
}

.top .content-box article .btn-area .button:before {
  border: 0;
  border-right: 7px solid #FFFFFA;
  border-left: 7px solid #FFFFFA;
}

.table_section {
  display: grid;
  margin: 8px 8px 8px;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 16px 2%;
}

@media screen and (max-width: 1000px) {
  .table_section {
    display: block;
  }
}

.table_section .cell {
  display: table-cell;
}

@media screen and (max-width: 1000px) {
  .table_section .cell {
    display: block;
  }
}
