@charset "UTF-8";
button,
hr,
input {
  overflow: visible;
}
#header .menu h1,
#header .menu li,
#header .menu nav,
#header .menu ul,
.taiou-ryoiki div,
.taiou-ryoiki h3,
.taiou-ryoiki p,
audio,
canvas,
progress,
video {
  display: inline-block;
}
button,
select {
  text-transform: none;
}
#header .menu li,
button,
dl dl,
dl ol,
dl ul,
input,
ol dl,
ol ol,
ol ul,
select,
textarea,
ul dl,
ul ol,
ul ul {
  margin: 0;
}
#main .pagehead .aurora,
[type=checkbox],
[type=radio],
nav ol,
nav ul {
  padding: 0;
}
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}
a[href^="tel:"],
html {
  cursor: default;
}
a,
a:hover {
  color: #007bff;
}
img.left,
img.right {
  margin-bottom: 1rem;
}
.o-fit img,
dialog {
  position: absolute;
}
#footer .copy,
#footer .menu ul,
.center,
.erabareru ul,
.inner .linkbtn,
.linkbtn-l,
.nagare.form h3,
.nav-related,
.topics ul,
footer {
  text-align: center;
}
img,
legend {
  max-width: 100%;
}
.hide-text,
.o-fit,
svg:not(:root) {
  overflow: hidden;
}
.nav-related li::before,
.nav-related li:nth-last-of-type(1)::after {
  content: "|";
  font-size: 1.4rem;
  vertical-align: middle;
}
#main .title h1,
.flex[class*=fc] h3,
.nav-archive-link h3,
[class*=frame-] h2:not(.h2-img) {
  font-family: 'M PLUS 1p',sans-serif;
}
.flex[class*=fc] .c-yellow,
a,
abbr[title] {
  text-decoration: underline;
}
.nagare ol,
.pickup ul,
.service ul,
.topics ul,
li,
nav ol,
nav ul {
  list-style: none;
}
.c-red {
  color: #ff1d25;
}
.c-lime,
.menu-body li a:hover {
  color: #3dbe18;
}
.c-lightblue,
.pickup .article-category .category-name {
  color: #2abfe5;
}
.c-green {
  color: #006837;
}
.c-yellow {
  color: #fbed21;
}
hr,
legend {
  color: inherit;
}
/*! sanitize.css v12.0.1 | CC0 License | github.com/jonathantneal/sanitize.css */
*,
::after,
::before,
::before * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
::after,
::before {
  text-decoration: inherit;
  vertical-align: inherit;
}
html {
  -moz-tab-size: 4;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.5;
  word-break: break-word;
  -o-tab-size: 4;
  tab-size: 4;
}
h1 {
  margin: .67em 0;
  font-size: 2em;
}
code,
kbd,
pre,
samp {
  font-family: monospace,monospace;
  font-size: 1em;
}
hr {
  height: 0;
}
nav li::before {
  content: "\200B";
}
pre {
  -ms-overflow-style: scrollbar;
  overflow: auto;
}
a {
  background-color: transparent;
}
abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
#footer .menu a,
.breadcrumb a,
.menu-body li a,
.nav-related li a,
.pickup a,
.topics .archivelink a {
  text-decoration: none;
}
b,
strong {
  font-weight: bolder;
}
small {
  font-size: 80%;
}
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
.overlay.active,
.sp,
.u320,
details,
dialog,
main {
  display: block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
iframe,
img {
  border-style: none;
}
svg:not([fill]) {
  fill: currentColor;
}
table {
  border-color: inherit;
  border-collapse: collapse;
  text-indent: 0;
}
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
}
fieldset {
  padding: .35em .75em .625em;
  border: 1px solid #a0a0a0;
}
legend {
  display: table;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
  resize: vertical;
  resize: block;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
::-webkit-input-placeholder {
  color: inherit;
  opacity: .54;
}
::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
#header,
#main .title,
.breadcrumb {
  border-bottom: 1px solid #ccc;
}
:-moz-focusring {
  outline: ButtonText dotted 1px;
}
:-moz-ui-invalid {
  box-shadow: none;
}
dialog {
  right: 0;
  left: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  margin: auto;
  padding: 1em;
  border: solid;
  background-color: #fff;
  color: #000;
}
#fixbtn-s.hide,
#main .pagehead .aurora .disc .image,
#main .pagehead .aurora .disc .lead img,
.bar .downloadfile a img,
.menu-body li::before,
.nagare li:last-child::after,
.nav-archive-link .latest li::before,
.pc,
[hidden],
dialog:not([open]),
template {
  display: none;
}
summary {
  display: list-item;
}
[tabindex],
a,
area,
button,
input,
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
}
[aria-busy=true] {
  cursor: progress;
}
[aria-controls] {
  cursor: pointer;
}
[aria-disabled=true],
[disabled] {
  cursor: not-allowed;
}
[aria-hidden=false][hidden] {
  display: initial;
}
[aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0,0,0,0);
  position: absolute;
}
html {
  font-size: 62.5%;
  line-height: normal;
}
body {
  margin: 0;
  min-width: 320px;
  color: #443f38;
  font-family: "Noto Sans JP","Helvetica Neue",Verdana,Meiryo,"M+ 1p",sans-serif;
  font-size: 1.4rem;
  line-height: 1.28571;
}
a:visited {
  color: #551a8b;
}
a:active {
  color: red;
}
#header .menu nav,
ol,
ul {
  margin: 0;
  padding: 0;
}
address {
  font-style: normal;
}
.cnt {
  width: auto;
  margin: 0 1rem;
}
@media (min-width:321px) {
  .u320 {
    display: none;
  }
}
.hide-text {
  text-indent: 100%;
  white-space: nowrap;
}
.cf {
  zoom: 1;
}
.cf:after,
.kyouiku .k-center p:after {
  display: block;
  clear: both;
  content: "";
}
.right {
  float: right;
}
.left {
  float: left;
}
img.right {
  margin-left: 1rem;
}
img.left {
  margin-right: 1rem;
}
.hzt,
.onayami ul {
  font-size: 0;
  list-style-type: none;
}
#footer .menu ul>*,
.hzt>*,
.onayami ul>* {
  display: inline-block;
  font-size: 1.4rem;
}
.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.o-fit {
  display: inline-block;
  position: relative;
}
.global-nav,
.overlay {
  display: none;
  top: 0;
  width: 100%;
}
#fixbtn-s,
#pagetop,
.global-nav,
.overlay {
  position: fixed;
}
.o-fit img {
  top: 50%;
  left: 50%;
  width: auto;
  min-width: 100%;
  height: auto;
  min-height: 100%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}
@supports ((-o-object-fit: cover) or (object-fit: cover)) {
  .o-fit img {
    position: static;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform: none;
    transform: none;
  }
}
#footer .pagetop,
.topics > div {
  position: relative;
}
.overlay {
  left: 0;
  height: 100%;
  background-color: rgba(0,0,0,.5);
  cursor: pointer;
}
.wrap [class*=col] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.wrap [class*=col] > * {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
#header .menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 1.4rem;
  padding-bottom: 1.2rem;
}
#header .menu h1 {
  margin: 0;
  padding-left: 1.5rem;
}
#header .menu h1 img,
.flex.menu-header>img {
  width: auto;
  height: 3.3146rem;
}
#header .menu ul {
  padding-right: .6rem;
}
#header .menu li img {
  width: 3rem;
  height: 3rem;
}
@media (min-width:600px) {
  #header .menu {
    padding-top: 1.65rem;
    padding-bottom: 1.65rem;
  }
  #header .menu h1 {
    padding-left: .5rem;
  }
  #header .menu h1 img {
    width: 19.85rem;
    height: 4.4rem;
  }
  #header .menu nav {
    margin: 0;
    padding: 0;
  }
  #header .menu li {
    margin: 0 .2rem;
  }
  #header .menu li img {
    width: 4.4rem;
    height: 4.4rem;
  }
}
#pagetop {
  display: block;
  right: 1rem;
  bottom: 7.1rem;
  width: 4rem;
  height: 4rem;
}
@media (min-width:1120px) {
  #pagetop {
    right: calc(50vw - 55rem);
  }
}
#footer {
  margin-top: 4rem;
  border-top: 1px solid #ccc;
}
#footer .footerlogo {
  margin-top: 6rem;
  text-align: center;
}
#footer .footerlogo img {
  width: 31.7rem;
  height: 8.7rem;
}
#footer .menu {
  margin: 6rem auto 0;
  padding: 1.6rem;
  background-color: #e4f7cf;
}
#footer .menu ul {
  font-size: 0;
  list-style-type: none;
}
#footer .menu li {
  padding: 0 2rem;
  border-left: 1px solid #443f38;
}
#footer .menu li:first-child {
  border-left: none;
}
#footer .menu a {
  color: #443f38;
  font-size: 1.3rem;
  line-height: 1.3rem;
}
#footer .copy {
  padding: .3rem;
  background-color: #443f38;
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.3rem;
}
.global-nav {
  z-index: 100;
  right: 0;
  max-width: 37.5rem;
}
.global-nav .nav-wrap {
  padding-top: 1.9rem;
  padding-bottom: 17.3rem;
  background-color: #fff;
  background-image: url(../img/top-copy01.svg);
  background-position: right 2rem bottom 13rem;
  background-repeat: no-repeat;
  background-size: 22.5rem 4.3rem;
}
.global-nav .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.flex.menu-header {
  padding-right: 1.6rem;
  padding-left: 2.5rem;
}
.flex.menu-header img {
  display: block;
  width: auto;
}
.col2 li,
.col3-1 li,
.topics li,
.topics li .info,
[class^=col3] li {
  display: inline-block;
}
.flex.btn-wrap a img {
  height: 3rem;
}
.flex.btn-wrap a:nth-of-type(2) {
  margin-left: .5rem;
}
.menu-body {
  margin-top: 5rem;
  margin-bottom: 2.2rem;
  padding-right: 2rem;
  padding-left: 1.6rem;
}
.menu-body li {
  border-top: .1rem solid #443f38;
}
.menu-body li a {
  display: block;
  padding-top: .885rem;
  padding-bottom: .885rem;
  color: #443f38;
  font-size: 1.4rem;
}
.menu-body li > ul > li {
  padding-left: 1.9rem;
}
.menu-body > li:nth-last-of-type(1) {
  border-bottom: .1rem solid #443f38;
}
.breadcrumb {
  padding: .6rem 1.5rem;
  color: #999;
}
@media (min-width:600px) {
  #footer {
    margin-top: 3.5rem;
  }
  .global-nav {
    max-width: 33vw;
  }
  .global-nav .nav-wrap {
    padding-top: 1.65rem;
  }
  .flex.menu-header {
    padding-left: 1.5rem;
  }
  .flex.btn-wrap a img,
  .flex.menu-header>img {
    height: 44px;
  }
  .flex.btn-wrap a:nth-of-type(2) {
    margin-left: .7rem;
  }
  .breadcrumb {
    padding: 1.45rem .5rem;
  }
}
.breadcrumb .hzt div {
  font-size: 1rem;
}
@media (min-width:600px) {
  .breadcrumb .hzt div {
    font-size: 1.1rem;
  }
}
.breadcrumb .top {
  margin-left: 0;
  color: #3dbe18;
}
.breadcrumb a {
  margin: 0 1rem;
  color: #999;
}
#main .title h1 {
  padding: 2.5rem 1.5rem;
  color: #999;
  font-size: 2rem;
  font-weight: 400;
}
#main .pagehead .aurora .disc,
#main .pagehead>.disc {
  width: calc(100% - 2rem);
  background-color: #fff;
  font-size: 1.4rem;
}
#main .pagehead .aurora .disc .lead,
#main .pagehead>.disc .lead {
  margin: 1.6rem 0;
  padding: 0 1rem;
  line-height: 1.6;
}
#main .pagehead .aurora .disc .lead .notice,
#main .pagehead>.disc .lead .notice {
  font-size: 1.3rem;
  font-weight: 700;
}
#main .pagehead+.frame-lime,
.nav-related+.frame-lime {
  margin-top: 3rem;
}
@media (min-width:600px) {
  .breadcrumb a {
    margin-right: .6rem;
    margin-left: .6rem;
  }
  #main .pagehead .title h1,
  #main .title h1 {
    padding-right: .5rem;
    padding-left: .5rem;
    font-size: 3rem;
  }
  #main .pagehead .aurora {
    padding-top: 6rem;
    padding-bottom: 6rem;
    background: linear-gradient(45deg,#94dff2 0,#cae9b5 70%,#ecef90 100%);
  }
  #main .pagehead .aurora .disc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-right: 3.5rem;
    padding-left: 6rem;
    border-radius: 3rem;
  }
  #main .pagehead .aurora .disc .image,
  #main .pagehead .aurora .disc .lead {
    margin-top: 2rem;
    overflow: hidden;
  }
  #main .pagehead .aurora .disc .lead {
    width: 47%;
    padding-right: 4.5rem;
    padding-left: 0;
    line-height: 1.8;
  }
  #main .pagehead .aurora .disc .lead img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  #main .pagehead .aurora .disc .image {
    display: block;
    width: 53%;
    max-height: 34.5rem;
    padding: 8px 0 0;
  }
  #main .pagehead .aurora .disc .image img {
    width: calc(100% - 8px);
    height: auto;
  }
  #main .pagehead > .disc {
    padding-right: 3rem;
    padding-left: 3rem;
    border-radius: 0;
  }
  #main .pagehead > .disc .lead {
    width: 100%;
    margin-top: 5.7rem;
    padding-right: 0;
    padding-left: 0;
    line-height: 1.8;
  }
}
.topics {
  width: 100%;
  margin: 3.2rem 0 5.1rem;
  padding-right: 0;
  padding-left: 0;
  background: linear-gradient(45deg,rgba(42,191,229,.25) 0,rgba(227,245,234,.25) 40%,rgba(217,224,33,.25) 100%);
}
.topics > div {
  padding-top: 3.5rem;
  padding-bottom: 2rem;
  border-radius: 0;
}
.topics h2 {
  position: absolute;
  top: -4rem;
  right: 0;
  bottom: 0;
  left: 0;
  width: 11.2rem;
  height: 3.7rem;
  margin-right: auto;
  margin-left: auto;
}
.topics ul {
  margin: 0;
  padding: .8rem 0 0;
}
.topics li {
  width: calc(100% - 2rem);
  margin: auto 0 1.2rem;
  font-size: 0;
  vertical-align: top;
}
.topics li img {
  width: 9rem;
  margin-right: 1rem;
  border-radius: .5rem;
  vertical-align: top;
}
.topics li .info {
  width: calc(100% - 10rem);
  margin-top: .7rem;
  text-align: left;
}
.topics li .info .date {
  padding: .3rem 1.2rem;
  border-radius: 2rem;
  background-color: #3dbe18;
  color: #fff;
  font-size: 1.2rem;
}
.topics li .info .category {
  margin-left: 1rem;
  color: #3dbe18;
  font-size: 1.1rem;
  line-height: 2;
}
.topics li .info .title {
  margin-top: .6rem;
  margin-bottom: 0;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 1.4;
}
.topics .archivelink {
  z-index: 100;
  position: absolute;
  right: 0;
  bottom: -1rem;
}
.topics .archivelink a {
  display: block;
  padding: .4rem 1.4rem;
  border-radius: 2.2rem;
  background-color: #fff;
  color: #443f38;
  font-size: 1.3rem;
}
.topics .archivelink img {
  width: 1.2rem;
  height: 1.2rem;
}
@media (max-width:320px) {
  .topics li .info .date {
    padding: .3rem .9rem;
    font-size: 1rem;
  }
  .topics li .info .category {
    font-size: 1rem;
  }
  .topics .archivelink a,
  .topics li .info .title {
    font-size: 1.2rem;
  }
}
@media (min-width:600px) {
  .topics li img,
  .topics li:nth-last-of-type(1) {
    margin-right: 0;
  }
  .topics {
    width: 100%;
    max-width: 100%;
    margin-top: 4.4rem;
    margin-bottom: 6.7rem;
  }
  .topics > div {
    width: calc(100% - 2rem);
    margin-right: auto;
    margin-left: auto;
    padding-top: 1rem;
    padding-bottom: 3rem;
  }
  .topics h2 {
    top: -4.6rem;
    width: 15.1351rem;
    height: 5rem;
  }
  .topics ul {
    padding-top: 5rem;
  }
  .topics li {
    width: calc((100% - 8rem)/ 3);
    margin-right: 3rem;
    margin-left: 0;
  }
  .topics li img {
    width: 100%;
    border-radius: 2rem;
  }
  .topics li .info {
    display: block;
    width: 100%;
    margin-top: .8rem;
  }
  .topics li .info .date {
    padding: .4rem 1.4rem;
  }
  .topics li .info .category {
    font-size: 1.3rem;
  }
  .topics li .info .title {
    margin-top: 1.4rem;
    margin-bottom: 1.4rem;
    font-size: 1.4rem;
  }
  .topics .archivelink {
    right: 0;
  }
  .topics .archivelink a {
    padding-top: .8rem;
  }
  .topics .archivelink img {
    margin-top: -.4rem;
  }
}
.frame-lime,
.frame-white,
.kyouiku .k-center,
.kyouiku .k-naiyou {
  margin-top: 4rem;
}
.frame-lime > div {
  background-color: #3dbe18;
  color: #fff;
}
.frame-lime>.inner,
.frame-white>.inner,
body:not(#home) .frame-lime>div:not(.service),
body:not(#home) .frame-white>div:not(.service) {
  padding-right: 2rem;
  padding-left: 2rem;
}
.frame-lime h2 {
  border-top: .2rem solid #fff;
  border-bottom: .2rem solid #fff;
  color: #fff;
}
.frame-lime .col2 li .logo,
.frame-lime .col3 li .logo,
.frame-lime li .logo {
  background-color: #fff;
}
.frame-lime .col5 li {
  background: #fff;
}
.frame-lime .linkbtn a,
.frame-lime .linkbtn input[type=submit] {
  border: 2px solid #fff;
  background-color: #3dbe18;
  color: #fff;
}
.frame-lime .linkbtn a::after {
  content: url(../img/icon-arrow-white.svg);
}
.frame-lime .linkbtn.exlink a::after {
  content: url(../img/icon-exlink-white.svg);
}
.frame-white > div {
  border: .3rem dotted #3dbe18;
  background-color: #fff;
  color: #443f38;
}
.frame-white h2 {
  border-top: .2rem solid #3dbe18;
  border-bottom: .2rem solid #3dbe18;
  color: #3dbe18;
}
.frame-no h2,
.nav-archive-link h3 {
  border-bottom: .2rem solid #443f38;
}
.frame-no .linkbtn a,
.frame-no .linkbtn input[type=submit],
.frame-white .linkbtn a,
.frame-white .linkbtn input[type=submit] {
  border: 2px solid #3dbe18;
  background-color: #fff;
  color: #3dbe18;
}
.frame-no .linkbtn a::after,
.frame-white .linkbtn a::after {
  content: url(../img/icon-arrow-lime.svg);
}
.frame-no .linkbtn.exlink a::after,
.frame-white .linkbtn.exlink a::after {
  content: url(../img/icon-exlink-lime.svg);
}
.frame-no > .inner {
  padding-right: 0;
  padding-left: 0;
}
.frame-no h2 {
  border-top: .2rem solid #443f38;
  color: #443f38;
}
[class*=frame-] {
  width: calc(100% - 4rem);
  margin-right: 2rem;
  margin-left: 2rem;
}
[class*=frame-] h2:not(.h2-img) {
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  margin: 0 auto 1.4rem;
  padding: .6rem .9rem;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: .1rem;
}
[class*=frame-] h2.h2-img,
[class*=frame-] h2.h2-imgh {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border: none;
}
[class*=frame-] h2 + img {
  display: block;
  margin-right: auto;
  margin-left: auto;
}
[class*=frame-] h2.h2-img img {
  width: auto;
  height: 4rem;
}
[class*=frame-] h2.h2-imgh {
  margin: 0 auto;
}
[class*=frame-] h2.h2-imgh img {
  width: auto;
  height: 8.7rem;
}
@media (min-width:600px) {
  .frame-lime {
    margin-top: 8rem;
  }
  .frame-lime > * {
    width: 76rem;
  }
  .frame-white {
    margin-top: 6rem;
  }
  [class*=frame-] h2:not(.h2-img) {
    margin-bottom: 3rem;
    padding: .8rem 1.8rem;
    font-size: 2.2rem;
  }
  [class*=frame-] h2.h2-img img {
    height: 5rem;
  }
  [class*=frame-] h2.h2-imgh img {
    height: 8rem;
  }
  .frame-no {
    margin-right: auto;
    margin-left: auto;
  }
  body:not(#home) .frame-no > div:not(.service) {
    padding-right: 2rem;
    padding-left: 2rem;
  }
}
.service {
  width: 100%;
  margin: 0 auto;
  border-radius: 2rem;
  padding: 3rem 1rem;
}
.service > * {
  max-width: calc(100% - 4rem);
  margin-right: auto;
  margin-left: auto;
}
.service h2 {
  margin-top: 0;
}
.service p,
.service span {
  font-size: 1.3rem;
  line-height: 1.6;
}
.service ul {
  margin: 0 auto;
  font-size: 0;
  text-align: left;
}
.service li .logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 10rem;
  overflow: hidden;
  border-radius: 1rem;
}
.service li .logo > a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: calc(100% - 2rem);
  height: 100%;
  padding-right: 1vw;
  padding-left: 1vw;
}
.col2 li .logo img,
.service li .logo img,
[class^=col3] li .logo img {
  width: auto;
  max-height: 10rem;
}
@media (min-width:600px) {
  .service {
    max-width: 100rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
    border-radius: 3rem;
  }
  .service > * {
    width: 76rem;
  }
  .service p,
  .service span {
    font-size: 1.4rem;
    line-height: 1.8;
  }
}
.inner address,
.inner p,
.inner small {
  margin-bottom: 2.3rem;
  line-height: 1.6;
}
.inner {
  width: 100%;
  margin: 0 auto;
  padding-top: 3rem;
  padding-bottom: 3rem;
  border-radius: 2rem;
}
.inner :last-child {
  margin-bottom: 0;
}
.inner address,
.inner p {
  font-size: 1.3rem;
}
.inner small {
  font-size: 1.2rem;
}
.inner .linkbtn a,
.inner .linkbtn input[type=submit] {
  letter-spacing: .1rem;
}
.inner .fmd {
  font-size: 1.6rem;
}
.inner .flg {
  font-size: 2rem;
  font-weight: 700;
}
.inner .bold {
  font-weight: 700;
}
.feature .recommended.inner {
  padding-bottom: 1.5rem;
}
.feature .recommended .catch {
  display: block;
  width: auto;
  height: 1.18rem;
  margin: 1.6rem auto 2rem;
}
.pickup {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding-top: .5rem;
}
.pickup img,
.pickup ul {
  width: 100%;
  height: auto;
}
.pickup ul {
  padding-top: .7rem;
}
.pickup a {
  color: #443f38;
}
.pickup .article-category {
  padding: 1.3rem 4rem 1.3rem 0;
  border-bottom: .1rem solid #999;
  color: #999;
  font-size: 1.1rem;
}
.pickup .article-category .title {
  display: block;
  margin-bottom: .4rem;
  font-size: 1.4rem;
  font-weight: 700;
}
.pickup .article-category time {
  margin-right: 1rem;
}
.article-category.gourmet,
.article-category.travel {
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 3.5rem;
}
.article-category.travel {
  background-image: url(../img/icon-travel.svg);
}
.article-category.gourmet {
  background-image: url(../img/icon-gourmet.svg);
}
.col2 li {
  width: 100%;
  margin: 1.8rem 0 1.4rem;
  text-align: left;
  vertical-align: top;
}
.col3 li,
.col3-1 li {
  margin: 1.8rem 2rem 1.4rem 0;
}
.col2 li .logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 10rem;
  border-radius: 1rem;
}
[class^=col3] li {
  text-align: left;
  vertical-align: top;
}
.col3 li {
  width: calc((100% - 2rem)/ 2);
}
.col3 li:nth-of-type(2n),
.col5 li:nth-of-type(3n) {
  margin-right: 0;
}
.col3-1 li {
  width: 100%;
  text-align: left;
  vertical-align: top;
}
.col5 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 2.5rem;
}
.col5 li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: calc((100% - 2rem)/ 3);
  height: calc((100vw - 10rem)/ 3 * .65);
  margin-right: 1rem;
  margin-bottom: 1rem;
  border-radius: 1rem;
  text-align: center;
}
.col5 li span {
  color: #443f38;
  font-size: 1.3rem;
}
.linkbtn a,
.linkbtn input[type=submit] {
  display: inline-block;
  padding: .6rem 1rem .4rem 1.2rem;
  border-radius: 3rem;
  font-size: 1.3rem;
  font-weight: 700;
  text-decoration: none;
}
.linkbtn a::after {
  display: inline-block;
  width: 1.2rem;
  height: 1.2rem;
  margin-left: 1rem;
  vertical-align: top;
}
.linkbtn.exlink a::after {
  width: 1.8rem;
  height: 1.8rem;
  vertical-align: middle;
}
.linkbtn-l a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto;
  height: 31vw;
  margin-right: auto;
  margin-left: auto;
  border-radius: 1rem;
  background: no-repeat #3dbe18;
}
.linkbtn-l a img {
  display: block;
  width: auto;
  height: 100%;
}
@media (min-width:600px) {
  .inner {
    max-width: 100rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
    border-radius: 3rem;
  }
  .inner address,
  .inner p,
  .inner small {
    margin-bottom: 3.2rem;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .inner .flg {
    font-size: 2.4rem;
  }
  .feature .recommended.inner {
    padding-top: 8.5rem;
    padding-bottom: 5.5rem;
  }
  .feature .recommended .catch {
    height: 1.635rem;
    margin-bottom: 3rem;
  }
  .feature .recommended h2 {
    margin-bottom: 4.5rem;
  }
  .feature .recommended .pickup ul {
    padding-top: .5rem;
  }
  .feature .recommended .pickup .sp {
    display: none;
  }
  .feature .recommended .pickup .pc {
    display: block;
  }
  .pickup {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding-top: .5rem;
  }
  .pickup > * {
    width: 50%;
  }
  .pickup ul {
    padding-top: .7rem;
  }
  .pickup .article-category {
    padding: 1.6rem 5rem 1.6rem 1rem;
    font-size: 1.2rem;
  }
  .pickup .article-category:nth-of-type(1) {
    padding-top: 0;
  }
  .pickup .article-category .title {
    margin-bottom: .4rem;
  }
  .pickup .article-category time {
    margin-right: 1.2rem;
  }
  .col2 li,
  [class^=col3] li {
    width: calc((100% - 4rem)/ 2);
  }
  .article-category.gourmet,
  .article-category.travel {
    background-position: right .5rem center;
    background-size: auto 3.9rem;
  }
  .col2,
  [class^=col3] {
    width: 52rem;
  }
  .col2 li {
    margin: 3rem 1rem 1rem;
  }
  [class^=col3] li {
    margin: 3rem 1rem;
  }
  [class^=col3] li:nth-of-type(2n) {
    margin-right: 1rem;
  }
  .col5 li,
  .col5 li:nth-of-type(3n) {
    margin-right: 2rem;
  }
  .col5 li {
    width: calc((100% - 8rem)/ 5);
    height: 6.5rem;
    margin-bottom: 2rem;
    border-radius: 1rem;
    text-align: center;
  }
  .col5 li:nth-of-type(5n) {
    margin-right: 0;
  }
  .col5 li span {
    font-size: 1.4rem;
  }
  .linkbtn-l a {
    width: 49.7rem;
    height: 17.2rem;
  }
}
.bar,
.flex.fcol2 > div,
.flex.fcol3 > div {
  width: 100%;
}
.nav-related ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: calc(100% - 4rem);
  margin: 2.2rem auto 2.5rem;
}
.nav-related li {
  color: #3dbe18;
  font-size: 1.3rem;
}
.nav-related li > * {
  display: inline;
}
.nav-related li:nth-last-of-type(1)::after {
  margin-left: .6rem;
}
.nav-related li a {
  margin-right: .6rem;
  margin-left: .6rem;
  color: #3dbe18;
  text-align: center;
  vertical-align: bottom;
}
@media (max-width:320px) {
  .service {
    padding-right: 2rem;
    padding-left: 2rem;
  }
  .col5 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 2.5rem;
  }
  .col5 li span {
    font-size: 1rem;
  }
  .nav-related li {
    font-size: 1.1rem;
  }
  .nav-related li::before {
    font-size: 1.2rem;
  }
  .nav-related li:nth-last-of-type(1)::after {
    margin-left: .4rem;
    font-size: 1.2rem;
  }
  .nav-related li a {
    margin-right: .4rem;
    margin-left: .4rem;
    vertical-align: bottom;
  }
}
.nav-archive-link h3 {
  padding-bottom: .6rem;
  color: #443f38;
  font-size: 1.7rem;
  font-weight: 400;
  text-transform: uppercase;
}
.nav-archive-link ul {
  margin-bottom: 2.6rem;
}
.nav-archive-link ul:nth-last-of-type(1) {
  margin-bottom: 1.5rem;
}
.nav-archive-link .latest li,
.onayami ul li {
  margin-bottom: 2rem;
}
.nav-archive-link li {
  margin-bottom: .6rem;
}
.nav-archive-link a {
  color: #443f38;
  font-size: 1.4rem;
}
.nav-archive-link .latest {
  margin-top: -1.8rem;
}
.nav-archive-link .latest a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.nav-archive-link .latest a .info {
  padding: 0 0 0 1.2rem;
  border-radius: 0;
  background: 0 0;
}
.nav-archive-link .latest a .info span {
  padding: .4rem .8rem;
  border-radius: 1.6rem;
  background: #3dbe18;
  color: #fff;
  font-size: 1.2rem;
}
.nav-archive-link .latest a .info h3 {
  margin-top: .8rem;
  border: none;
  font-size: 1.3rem;
}
@media (min-width:600px) {
  .nav-related ul {
    max-width: calc(100% - 4rem);
    margin-top: 4rem;
    margin-bottom: 5.2rem;
  }
  .nav-related li {
    font-size: 1.6rem;
  }
  .nav-related li::before {
    font-size: 1.7rem;
  }
  .nav-related li:nth-last-of-type(1)::after {
    margin-left: .7rem;
    font-size: 1.7rem;
  }
  .nav-related li a {
    margin-right: .7rem;
    margin-left: .7rem;
  }
  .nav-related + .frame-lime {
    margin-top: 5rem;
  }
  .nav-archive-link {
    padding-top: 1.4vw;
    padding-right: 3vw;
    padding-left: 3vw;
    border-radius: 2.5rem;
    background-color: #3dbe18;
    background-repeat: no-repeat;
    color: #fff;
  }
  .nav-archive-link h3 {
    margin-bottom: 1.4rem;
    border-bottom-color: #fff;
    color: #fff;
  }
  .nav-archive-link ul {
    margin-bottom: 3.6rem;
  }
  .nav-archive-link .latest li,
  .nav-archive-link ul:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  .nav-archive-link li {
    margin-bottom: .8rem;
  }
  .nav-archive-link a {
    color: #fff;
  }
  .nav-archive-link .latest {
    margin-top: 1.8rem;
  }
  .nav-archive-link .latest a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .nav-archive-link .latest a .info {
    margin-bottom: 0;
    padding: 1.2rem 0 1.4rem;
    border-radius: 0;
    background: 0 0;
  }
  .nav-archive-link .latest a .info span {
    padding: .3rem .8rem;
    border-radius: 1.6rem;
    background: #fff;
    color: #3dbe18;
    font-size: 1.2rem;
  }
  .nav-archive-link .latest a .info h3 {
    margin-bottom: 0;
    border: none;
    font-size: 1.3rem;
  }
}
#fixbtn-s a,
.eyecatch .copies .toiawase a {
  background-color: #e75a24;
  -webkit-box-shadow: 10px 10px 20px -10px rgba(0,0,0,.8);
  box-shadow: 10px 10px 20px -10px rgba(0,0,0,.8);
  color: #fff;
  text-decoration: none;
}
@media (min-width:1024px) {
  #header .menu h1 {
    padding-left: 4rem;
  }
  .breadcrumb {
    padding: 1.45rem 4rem;
  }
  .breadcrumb .hzt div {
    font-size: 1.2rem;
  }
  #main .title h1 {
    padding-right: 4rem;
    padding-left: 4rem;
  }
  #main .pagehead .aurora .disc {
    width: 100rem;
  }
  #main .pagehead>.disc,
  body:not(#home) .frame-lime>div:not(.service),
  body:not(#home) .frame-no>div:not(.service),
  body:not(#home) .frame-white>div:not(.service) {
    width: 100rem;
    padding-right: 12rem;
    padding-left: 12rem;
  }
  .topics {
    width: 100%;
    max-width: 100%;
  }
  .topics > div {
    width: 100rem;
    margin-right: auto;
    margin-left: auto;
  }
  .topics li img {
    width: 100%;
    margin-right: 0;
    border-radius: 2rem;
  }
  .topics li .info {
    width: 30rem;
  }
  .topics li .info .title {
    margin-top: .6rem;
    margin-bottom: 1.4rem;
  }
  .topics .archivelink {
    bottom: -1rem;
  }
  .topics .archivelink img {
    width: 1.3rem;
    height: 1.3rem;
  }
  .service {
    padding-bottom: 1rem;
  }
  .service ul {
    width: 79rem;
  }
  .service li .logo {
    width: 24rem;
    border-radius: 1.5rem;
  }
  .service li .logo img {
    width: 20rem;
  }
  .col2 li {
    width: 35.5rem;
    margin: 3rem 2rem 1rem;
  }
  .col2 li .logo {
    height: 11rem;
    border-radius: 1.5rem;
  }
  [class^=col3] li {
    width: 24rem;
    margin: 3rem 1rem;
  }
  [class^=col3] li .logo {
    height: 10rem;
  }
  .linkbtn a,
  .linkbtn input[type=submit] {
    padding: 1rem 1.5rem .8rem 2.5rem;
    font-size: 1.4rem;
  }
  .nav-archive-link {
    padding-top: 1.7rem;
    padding-right: 3.7rem;
    padding-left: 3.7rem;
  }
}
.flex[class*=fc] {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.flex[class*=fc] h3 {
  margin-top: 2.8rem;
  margin-bottom: 1.4rem;
  padding-bottom: .8rem;
  border-bottom: .2rem solid #fff;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 400;
}
#fixbtn-s a,
.flex[class*=fc] small {
  font-size: 1.3rem;
}
.flex[class*=fc] p,
.flex[class*=fc] small {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.75;
}
.flex[class*=fc] img {
  margin-top: 1.6rem;
}
.flex[class*=fc] .linkbtn {
  margin-top: 2rem;
}
.flex.fcol2 > div:nth-of-type(1) h3 {
  margin-top: .4rem;
}
.flex.fcol3 {
  padding-bottom: 2.5rem;
}
@media (min-width:600px) {
  .flex[class*=fc] {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .flex[class*=fc] h3 {
    margin-top: 2.8rem;
    padding-bottom: .4rem;
    font-size: 1.6rem;
  }
  .flex[class*=fc] p,
  .flex[class*=fc] small {
    margin-top: 0;
    margin-bottom: 0;
  }
  .flex[class*=fc] small {
    font-size: 1.4rem;
  }
  .flex[class*=fc] img {
    margin-bottom: 1.6rem;
  }
  .flex[class*=fc] .linkbtn {
    margin-top: 2rem;
  }
  .flex.fcol2 {
    padding-bottom: .6rem;
  }
  .flex.fcol2 > div:nth-of-type(1) h3 {
    margin-top: 2.8rem;
  }
  .flex.fcol2 > div {
    width: calc((100% - 4rem)/ 2);
    max-width: 35.5rem;
  }
  .flex.fcol3 {
    padding-bottom: 3.6rem;
  }
  .flex.fcol3 > div {
    width: calc((100% - 3rem)/ 3);
    max-width: 24rem;
  }
}
.marker.yellow {
  background-image: -webkit-gradient(linear,left top, left bottom,color-stop(40%, transparent),color-stop(0, #fbed21));
  background-image: linear-gradient(transparent 40%,#fbed21 0);
}
.bar {
  display: table;
  height: 4.5rem;
  margin: 0 auto;
}
.bar .downloadfile,
.bar .logo,
.bar .toiawase {
  display: table-cell;
}
.bar .logo {
  padding: 1.12841rem 1.5rem;
}
.bar .logo img {
  width: 9.742rem;
}
.bar .downloadfile,
.bar .toiawase {
  width: 11.52381rem;
}
.bar .downloadfile a,
.bar .toiawase a {
  display: block;
  background-color: #004280;
  color: #fff;
  font-size: 1.1rem;
  line-height: 4.5rem;
  text-align: center;
  text-decoration: none;
}
.bar .downloadfile a,
.companyinfo .btn.downloadfile {
  background-color: #85a523;
}
.eyecatch {
  height: 87.9vw;
  margin-bottom: 3rem;
  background-image: url(../img/SP-main.jpg),linear-gradient(30deg,rgba(194,207,221,0) 0,rgba(194,207,221,.16) 20%,rgba(0,66,128,.64) 80%,rgba(0,66,128,.8) 100%),url(../img/bg-pattern.png);
  background-position: top right,right,left;
  background-repeat: no-repeat,no-repeat,repeat;
  background-size: 95.8vw,100vw,auto;
}
.eyecatch .copies {
  position: relative;
  height: 87.9vw;
}
.eyecatch .copies img {
  position: absolute;
  top: 42.2vw;
  left: 4.5vw;
  width: 81.3vw;
}
.eyecatch .copies .toiawase {
  position: absolute;
  right: 0;
  bottom: -.5vw;
}
.eyecatch .copies .toiawase a {
  display: block;
  width: 14vw;
  height: 6.4vw;
  padding-left: 3.2vw;
  border-top-left-radius: 3.2vw;
  border-bottom-left-radius: 3.2vw;
  font-size: 1.3vw;
  line-height: 6.4vw;
}
#fixbtn-s {
  display: block;
  z-index: 1000;
  right: 0;
  bottom: 4rem;
}
#fixbtn-s a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 8rem;
  height: 6rem;
  padding-left: 1.2rem;
  border-top-left-radius: 3rem;
  border-bottom-left-radius: 3rem;
  line-height: 1.2;
}
.onayami {
  margin: 0 2rem 2rem;
}
.onayami h2 {
  margin: 0 auto 2.5rem;
}
.onayami ul li {
  position: relative;
  border-top: 1px solid #000;
  background-color: #efeeee;
  font-size: 1.5rem;
  line-height: 2.4rem;
}
.onayami ul li::after {
  display: block;
  width: 70vw;
  height: 1px;
  background-color: #000;
  content: "";
}
.onayami ul li span {
  display: block;
  padding: 1.1rem 7rem 2rem 1rem;
}
.onayami ul li img {
  position: absolute;
  right: 0;
  bottom: -1rem;
  width: 6.7rem;
  height: 7.1rem;
}
.onayami .no-problem {
  color: #85a523;
  font-size: 10.5vw;
  font-weight: 700;
  text-align: center;
}
.kyouiku .jissikoumoku {
  position: relative;
  height: 65rem;
  background: url(../img/ikusei-sp.jpg) 50% 100%/contain no-repeat #004280;
  color: #fff;
}
.kyouiku .jissikoumoku::before {
  display: block;
  width: 0;
  height: 0;
  margin: 0 auto;
  border-width: 25px 55px 0;
  border-style: solid;
  border-color: #fff transparent transparent;
  content: "";
}
.kyouiku .jissikoumoku .text h2,
.kyouiku .jissikoumoku .text p {
  margin: 2rem;
}
.kyouiku .jissikoumoku .text h2 {
  font-size: 3.1rem;
  letter-spacing: -1px;
}
.kyouiku .jissikoumoku .text p {
  font-size: 1.5rem;
  line-height: 2.4rem;
}
.kyouiku .jissikoumoku .yajirusi {
  position: absolute;
  right: 0;
  bottom: -5.7rem;
  left: 0;
  width: 90%;
  margin: auto;
}
.kyouiku .mesh {
  background: url(../img/bg-pattern.png);
}
.kyouiku .kekka {
  width: 90%;
  margin: 0 auto;
  padding-top: 7.7rem;
  text-align: center;
}
.kyouiku .kekka li {
  margin: 1rem 0;
  padding: 1.4rem;
  border-radius: 4.8rem;
  background-color: #004280;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
}
.kyouiku .k-center h3 {
  font-size: 2.9rem;
  text-align: center;
}
.kyouiku .k-center h3 .g {
  color: #85a523;
}
.kyouiku .k-center h3 .b {
  color: #004280;
}
.kyouiku .k-center p {
  zoom: 1;
  margin: 0 2rem;
  font-size: 1.3rem;
  line-height: 2rem;
}
.kyouiku .k-center p::before {
  display: block;
  width: 6rem;
  height: 6rem;
  margin-right: 1rem;
  float: left;
  content: url(../img/img-kenshu-center.svg);
}
.kyouiku .k-naiyou h3,
.kyouiku .koushi h3 {
  font-size: 2.7rem;
  letter-spacing: .2rem;
  text-align: center;
}
.kyouiku .k-center ul.hzt,
.kyouiku .k-naiyou ul.hzt {
  margin-top: 0;
  text-align: center;
}
.kyouiku .k-center ul.hzt li {
  margin: 2rem 0 0;
  border-radius: .5rem;
  background-color: #efeeee;
}
.kyouiku .k-center ul.hzt div,
.kyouiku .k-center ul.hzt img {
  display: inline-block;
  vertical-align: top;
}
.kyouiku .k-center ul.hzt img {
  width: 10.4rem;
  margin-left: 1rem;
}
.kyouiku .k-center ul.hzt div {
  padding: 3rem 2rem 0;
  text-align: left;
}
.kyouiku .k-center ul.hzt strong {
  font-size: 1.8rem;
}
.kyouiku .k-center ul.hzt small {
  color: grey;
  font-size: 1.4rem;
  line-height: 2.1rem;
}
.kyouiku .k-naiyou h3 {
  margin-bottom: 2.5rem;
  color: #004280;
}
.kyouiku .k-naiyou ul.hzt li {
  margin: 2rem 0 0;
  padding: 1.5rem 2rem;
  border-radius: .5rem;
  background-color: #efeeee;
  vertical-align: top;
}
.kyouiku .k-naiyou ul.hzt h4 {
  margin: 0;
  font-size: 2.2rem;
  letter-spacing: .2rem;
}
.kyouiku .k-naiyou ul.hzt small,
.kyouiku .koushi ul.hzt small {
  color: #004280;
  font-size: 1.2rem;
}
.kyouiku .k-naiyou ul.hzt img {
  width: 29rem;
  height: 9.4rem;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 0 0;
  object-position: 0 0;
}
.kyouiku .k-naiyou ul.hzt p {
  margin: .6rem 0;
  color: #004280;
  text-align: left;
}
.kyouiku .koushi {
  margin-top: 4rem;
  padding-bottom: 3rem;
}
.kyouiku .koushi h3 {
  margin-bottom: 1rem;
  color: #004280;
}
.kyouiku .koushi > p {
  font-size: 1.4rem;
  line-height: 2rem;
  text-align: center;
}
.kyouiku .koushi > p strong {
  color: #004280;
  font-size: 1.6rem;
  font-weight: 400;
}
.kyouiku .koushi ul.hzt {
  max-width: 90rem;
  margin: 0 auto;
  text-align: center;
}
.kyouiku .koushi ul.hzt li {
  margin: 0 2rem 1rem;
  padding: 2rem 1rem;
  border-radius: .5rem;
  background-color: #efeeee;
  vertical-align: top;
}
.kyouiku .koushi ul.hzt h4 {
  margin: 0;
  font-size: 2.2rem;
}
.kyouiku .koushi ul.hzt div p {
  display: inline-block;
  margin: 1rem .2rem;
  color: #004280;
  font-size: 1.4rem;
  letter-spacing: -.02rem;
  line-height: 2rem;
  text-align: left;
  vertical-align: top;
}
.kyouiku .koushi ul.hzt div p:last-child {
  width: 19rem;
}
.kyouiku .koushi ul.hzt img {
  width: 11rem;
  height: 12rem;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 0 0;
  object-position: 0 0;
}
.taiou-ryoiki {
  padding: 0 2rem 1rem;
  background: url(../img/bg-taiouryouiki.jpg) 50% 50%/cover no-repeat #004280;
}
.taiou-ryoiki h2 {
  margin: 0;
  padding: 3rem 0 2rem;
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
}
.nagare h2,
.soudan-btn a {
  font-size: 3rem;
  text-align: center;
  font-weight: 700;
}
.taiou-ryoiki ul {
  width: 100%;
  margin: 0 auto;
}
.taiou-ryoiki li {
  width: 100%;
  margin-bottom: 2rem;
  padding: 1.8rem 0;
  border-radius: .5rem;
  background-color: #fff;
}
.taiou-ryoiki h3 {
  width: 14.5rem;
  text-align: center;
}
.taiou-ryoiki div {
  width: 100%;
  text-align: center;
}
.taiou-ryoiki .software h3 img {
  width: 11.86777rem;
  height: 7.86955rem;
}
.taiou-ryoiki .software p img {
  width: 17.06198rem;
  height: 15.37584rem;
}
.taiou-ryoiki .denki div img,
.taiou-ryoiki .kikai div img,
.taiou-ryoiki .software div img {
  width: 33.5rem;
  height: 18.14583rem;
}
.taiou-ryoiki .kikai h3 img {
  width: 8.63389rem;
  height: 7.74272rem;
}
.taiou-ryoiki .kikai p img {
  width: 17.05455rem;
  height: 15.28368rem;
}
.taiou-ryoiki .denki h3 img {
  width: 9.3876rem;
  height: 7.88227rem;
}
.taiou-ryoiki .denki p img {
  width: 17.05455rem;
  height: 14.97913rem;
}
.soudan-btn {
  padding: 3rem 2rem;
}
.soudan-btn a {
  display: block;
  width: 100%;
  height: 7rem;
  margin: 0 auto;
  border-radius: .5rem;
  background-color: #e75a24;
  -webkit-box-shadow: 5px 5px 15px -5px rgba(0,0,0,.5);
  box-shadow: 5px 5px 15px -5px rgba(0,0,0,.5);
  color: #fff;
  line-height: 7rem;
  text-decoration: none;
}
.nagare {
  padding: 3rem 2rem;
  background-color: #f6f8fa;
}
.nagare h2 {
  margin: 0;
  padding: 0 0 1rem;
  color: #004280;
}
.nagare p {
  margin: 0 auto;
  line-height: 2.2rem;
}
.nagare ol {
  margin-top: 2rem;
}
.nagare li {
  display: block;
  position: relative;
  margin-bottom: 5rem;
  padding: 2rem 0;
  border: 1px solid #004280;
  border-radius: .5rem;
  background-color: #fff;
  color: #004280;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 2.4rem;
  text-align: center;
}
.nagare li::after {
  display: block;
  position: absolute;
  right: 0;
  bottom: -3.9rem;
  left: 0;
  width: 10rem;
  height: 2.5rem;
  margin: auto;
  content: url(../img/arrow.svg);
}
.nagare li:nth-of-type(odd) {
  padding: 1rem 0;
}
.nagare li:nth-last-of-type(2) {
  background-color: #004280;
  color: #fff;
}
.nagare li:last-child {
  margin-bottom: 0;
  border: none;
  background-color: #85a523;
  color: #fff;
}
.erabareru {
  padding: 3rem 2rem;
  background: url(../img/w-bg.svg) 50% 20px/82rem no-repeat #fff;
}
.erabareru h2 {
  margin: 0;
  padding: 0 0 1rem;
  color: #004280;
  font-size: 3.4rem;
  font-weight: 700;
  text-align: center;
}
.erabareru li {
  width: 100%;
  padding: 0;
  text-align: left;
  vertical-align: top;
}
.erabareru p {
  line-height: 2.2rem;
}
.companyinfo {
  padding: 2rem 0;
  background: url(../img/sp-bg-img.jpg) 0 0/cover no-repeat #fff;
}
.companyinfo div {
  width: auto;
  margin: 0 2rem;
  font-size: 1.3rem;
  text-align: center;
}
.companyinfo h2 {
  width: 24.88165rem;
  margin: 0 auto;
}
.companyinfo table {
  border-collapse: separate;
  border-spacing: 0 .5rem;
}
.companyinfo td,
.companyinfo th {
  line-height: 1.5;
  text-align: left;
}
.companyinfo th {
  width: 6rem;
  color: #004280;
  font-weight: 400;
  text-align: left;
  vertical-align: top;
}
.companyinfo .btn {
  display: inline-block;
  position: relative;
  width: 24.4rem;
  height: 4.4rem;
  margin-top: 2rem;
  border-radius: .5rem;
  background-color: #004280;
  color: #fff;
  line-height: 4.4rem;
  text-align: center;
  text-decoration: none;
}
.companyinfo .btn::after {
  display: inline-block;
  position: absolute;
  right: 2rem;
  width: .7rem;
  height: 1.1rem;
  content: url(../img/arrow-small.svg);
}
.companyinfo .btn.downloadfile::after {
  width: .9rem;
  height: 1.1rem;
  content: url(../img/dl-icon.svg);
}
footer h2 {
  margin: 5rem 0 1rem;
  color: #004280;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 3.4rem;
}
footer p {
  margin: 0 0 3rem;
  color: grey;
  font-size: 1.6rem;
  line-height: 1;
}
footer img {
  width: 14rem;
  height: 2.93596rem;
}
footer .copy {
  height: 3rem;
  background-color: #000;
  color: #fff;
  font-size: 1.2rem;
  line-height: 3rem;
}
.nagare.form {
  padding: 3rem 1rem;
}
.nagare.form .txtArea {
  width: auto;
}
@media (min-width:500px) {
  .cnt {
    width: 100rem;
    margin: 0 auto;
  }
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
  .bar {
    display: table;
    height: 6rem;
    margin: 0 auto;
  }
  .bar .logo {
    padding: 1.14344rem 0 1.14344rem 3rem;
  }
  .bar .logo img {
    width: 15.7984rem;
  }
  .bar .downloadfile,
  .bar .toiawase {
    width: 24rem;
  }
  .bar .downloadfile a,
  .bar .toiawase a {
    font-size: 1.4rem;
    line-height: 6rem;
  }
  .bar .downloadfile .pc,
  .bar .toiawase .pc {
    display: inline;
  }
  .bar .downloadfile a img {
    display: inline;
    width: .9rem;
    padding: 0 0 .2rem .5rem;
  }
  .eyecatch {
    margin-bottom: 5rem;
    height: 51.5vw;
    background-image: url(../img/PC-main.jpg),linear-gradient(30deg,rgba(194,207,221,0) 0,rgba(194,207,221,.16) 20%,rgba(0,66,128,.64) 80%,rgba(0,66,128,.8) 100%),url(../img/bg-pattern.png);
    background-position: top right,right,left;
    background-repeat: no-repeat,no-repeat,repeat;
    background-size: 85.58vw,100vw,auto;
  }
  .eyecatch .copies {
    height: 51.5vw;
  }
  .eyecatch .copies img {
    top: 21.1vw;
    left: 6.9vw;
    width: 45.8vw;
  }
  #fixbtn-s {
    right: 0;
    bottom: 2rem;
  }
  #fixbtn-s a {
    width: 7vw;
    height: 6.4vw;
    padding-left: 1.2vw;
    border-top-left-radius: 3.2vw;
    border-bottom-left-radius: 3.2vw;
    font-size: 1.3vw;
    line-height: 1.2;
  }
  .onayami {
    margin-bottom: 6rem;
  }
  .onayami h2 {
    width: 54.4rem;
    margin-bottom: 5rem;
  }
  .onayami ul {
    width: 93rem;
    margin: 0 auto;
  }
  .onayami ul li::after {
    width: 20rem;
    height: 1px;
  }
  .onayami ul li {
    width: 29rem;
    margin: 0 1rem 6rem;
    font-size: 1.8rem;
    line-height: 2.6rem;
  }
  .onayami ul li span {
    padding: 1.5rem 2rem 4rem;
  }
  .onayami ul li img {
    right: 1rem;
    bottom: -2.5rem;
    width: 8rem;
    height: 8.4776rem;
  }
  .onayami .no-problem {
    font-size: 4.6rem;
  }
  .kyouiku .jissikoumoku {
    height: 56rem;
    background: url(../img/ikusei-pc.jpg) 43vw 50% no-repeat #004280;
  }
  .kyouiku .jissikoumoku::before {
    border-width: 50px 110px 0;
  }
  .kyouiku .jissikoumoku .text {
    width: 100rem;
    margin: 0 auto;
    padding-top: 5rem;
  }
  .kyouiku .jissikoumoku .text h2,
  .kyouiku .jissikoumoku .text p {
    width: 48.5rem;
    margin: 0 0 2rem;
  }
  .kyouiku .jissikoumoku .text h2 {
    font-size: 4.4rem;
  }
  .kyouiku .jissikoumoku .text p,
  .kyouiku .k-center ul.hzt small {
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  .kyouiku .jissikoumoku .yajirusi {
    bottom: -7rem;
    width: 82rem;
  }
  .kyouiku .kekka {
    width: 82rem;
    margin: 0 auto;
    padding-top: 9rem;
  }
  .kyouiku .kekka li {
    margin: 2rem 0;
    padding: 2rem;
    border-radius: 6.2rem;
    font-size: 2.6rem;
  }
  .kyouiku .k-center {
    margin-top: 8rem;
  }
  .kyouiku .k-center h3 {
    font-size: 3.6rem;
  }
  .kyouiku .k-center p {
    width: 62rem;
    margin: 0 auto;
    font-size: 1.6rem;
    line-height: 2.6rem;
  }
  .kyouiku .k-center p::before {
    width: 5.5rem;
    height: 5.5rem;
    margin-right: 2rem;
  }
  .kyouiku .k-center ul.hzt {
    margin-top: 4rem;
  }
  .kyouiku .k-center ul.hzt li {
    margin: 0 1.5rem;
  }
  .kyouiku .k-center ul.hzt img {
    width: auto;
    margin-left: 3rem;
  }
  .kyouiku .k-center ul.hzt div {
    padding: 4rem 3rem 0 2rem;
  }
  .kyouiku .k-center ul.hzt strong {
    font-size: 2.2rem;
  }
  .kyouiku .k-naiyou {
    margin-top: 5rem;
  }
  .kyouiku .k-naiyou h3 {
    margin-bottom: 3rem;
  }
  .kyouiku .k-naiyou ul.hzt li {
    height: 33rem;
    margin: 0 1.5rem;
  }
  .kyouiku .k-naiyou ul.hzt img {
    width: 22.7rem;
    height: 10.9rem;
    margin-top: .6rem;
  }
  .kyouiku .k-naiyou ul.hzt p {
    margin: 1rem 0;
  }
  .kyouiku .koushi {
    margin-top: 5rem;
    padding-bottom: 5rem;
  }
  .kyouiku .koushi h3 {
    margin-bottom: 2.5rem;
  }
  .kyouiku .koushi > p {
    font-size: 1.6rem;
    line-height: 1;
  }
  .kyouiku .koushi ul.hzt li {
    margin: 1.5rem 2.5rem .5rem;
    padding: 2rem 1.2rem;
  }
  .kyouiku .koushi ul.hzt li:nth-of-type(1),
  .kyouiku .koushi ul.hzt li:nth-of-type(2) {
    height: 27.5rem;
  }
  .kyouiku .koushi ul.hzt li:nth-of-type(3),
  .kyouiku .koushi ul.hzt li:nth-of-type(4) {
    height: 25.5rem;
  }
  .kyouiku .koushi ul.hzt div p {
    margin: 1rem .5rem;
    letter-spacing: -.02rem;
  }
  .kyouiku .koushi ul.hzt div p:last-child,
  .taiou-ryoiki h3 {
    width: 19rem;
  }
  .kyouiku .koushi ul.hzt img {
    width: 15.4rem;
    height: 17.2rem;
    margin-top: .6rem;
  }
  .taiou-ryoiki {
    padding: 0 0 4rem;
  }
  .nagare h2,
  .taiou-ryoiki h2 {
    padding: 4rem 0 3rem;
    font-size: 4rem;
  }
  .taiou-ryoiki ul {
    width: 82rem;
  }
  .taiou-ryoiki div {
    width: 39rem;
  }
  .taiou-ryoiki .software h3 img {
    width: 15.58765rem;
    height: 10.33604rem;
  }
  .taiou-ryoiki .software p img {
    width: 22.40976rem;
    height: 20.07409rem;
  }
  .taiou-ryoiki .denki div img,
  .taiou-ryoiki .kikai div img,
  .taiou-ryoiki .software div img {
    width: 38.4rem;
    height: 20.8rem;
  }
  .taiou-ryoiki .kikai h3 img {
    width: 11.34004rem;
    height: 10.16957rem;
  }
  .taiou-ryoiki .kikai p img {
    width: 22.4rem;
    height: 20.07408rem;
  }
  .taiou-ryoiki .denki h3 img {
    width: 12.32998rem;
    height: 10.35294rem;
  }
  .taiou-ryoiki .denki p img {
    width: 22.4rem;
    height: 19.67408rem;
  }
  .soudan-btn {
    padding: 4rem;
  }
  .soudan-btn a {
    width: 42.3rem;
    height: 7.7rem;
    line-height: 7.7rem;
  }
  .erabareru,
  .nagare {
    padding: 3rem 2rem 5rem;
  }
  .nagare p {
    width: 82rem;
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  .nagare ol {
    width: 82rem;
    margin: 2rem auto 0;
  }
  .nagare li {
    margin-bottom: 6rem;
    font-size: 2.1rem;
    line-height: 2.6rem;
  }
  .nagare li::after {
    bottom: -5rem;
    width: 15rem;
    height: 3.7rem;
  }
  .nagare li:nth-of-type(odd) {
    padding: 2rem 0;
  }
  .erabareru h2 {
    padding: 2rem 0 3rem;
    font-size: 4rem;
  }
  .erabareru li {
    width: 26rem;
    padding: 0 1rem;
  }
  .companyinfo {
    padding: 5rem 0;
    background-image: url(../img/bg-img.jpg);
  }
  .companyinfo div {
    width: 82rem;
    margin: 0 auto;
    text-align: left;
  }
  .companyinfo h2 {
    margin: .83em 0;
  }
  .companyinfo table {
    border-spacing: 0 1.5rem;
  }
  .companyinfo th {
    width: 10rem;
  }
  .companyinfo .btn {
    margin-top: 3rem;
    margin-right: 2rem;
  }
  footer h2 {
    font-size: 3.4rem;
    line-height: normal;
  }
  footer p {
    margin: 0 0 2rem;
  }
  footer img {
    width: 19rem;
    height: 3.98452rem;
    margin-bottom: 3rem;
  }
  footer .copy {
    height: 5rem;
    line-height: 5rem;
  }
  .nagare.form p {
    width: auto;
  }
  .nagare.form .txtArea {
    width: 60%;
    margin: 0 auto;
  }
}
.nagare.form h2 {
  padding-bottom: 0;
}
.nagare.form p {
  margin-bottom: 1.4rem;
}
/*# sourceMappingURL=map/style.css.map */