@charset "UTF-8";
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  word-break: break-all;
  word-wrap: break-word;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

/***** ↓smartphone chrome用 *****/
@media (max-width: 640px) {
  * {
    -webkit-text-size-adjust: none;
  }
}
/***** ↑smartphone chrome用 *****/

html {
  height: 100%;
  width: 100%;
}

body {
  background: #fcfaf2;
  color: #6f5436;
  font-family: "TazuganeGothicStdN-Thin";
  font-size: 14px;
  letter-spacing: .05em;
  line-height: 1.75;
  position: relative;
  width: 100%;
  zoom: 1;
}

/***** ↓pc *****/
@media only screen and (min-width: 640px) {
  body {
    font-size: 16px;
  }
}
/***** ↑pc *****/

img {
  border: none;
}

ul, li {
  list-style-type: none;
}

a {
  color: #946c45;
  text-decoration: none;
  transition-property: all;
  transition-duration: .5s;
  transition-delay: 0s;
  transition-timing-function: ease-in-out;
}

a:hover {
  color: #be8f68;
  text-decoration: none;
}

p {
  line-height: 1.9;
  text-indent: 1em;
}

address {
  font-style: normal;
}

.browserhappy {
  border: 2px dotted #f00;
  color: #f00;
  margin: 20px auto;
  padding: 10px;
  max-width: 930px;
}

.box-w100vw {
  height: 0;
  left: 0;
  position: fixed;
  top: 0;
  visibility: hidden;
  width: 100vw;
}

.wrp {
  padding-top: 65px;
  overflow: hidden;
  position: relative;
}

@media only screen and (min-width: 640px) {
  .wrp {
    padding-top: 70px;
  }
}

/***** ↓pc *****/
@media only screen and (min-width: 1070px) {
  .wrp {
    padding-top: 110px;
  }

  p {
    line-height: 1.75;
  }
}
/***** ↑pc *****/


/*********************************************************************************************
 header
*********************************************************************************************/
.header {
  font-family: "SkipProN-M";
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 5000;
}

.header-inner {
  background: #fcfaf2;/*rgba(255, 255, 255, 1);*/
  margin: 0 auto;
  position: relative;
  transition-property: background;
  transition-duration: .5s;
  transition-timing-function: ease-in-out;
  width: 100%;
}

.header-inner.nav-visible {
  height: 100vh;
  overflow: auto;
}

.header-logo {
  font-size: 100%;
  font-weight: normal;
  line-height: 1;
  padding: 20px;
  text-align: left;
  z-index: 5;
}

.nav-visible .header-logo {
  left: 0;
  top: 0;
  width: 100%;
}

.header-logo-a {
  background: url(../img/logo.png) left center no-repeat;
  background-size: auto 21px;
  color: #e23411;
  display: inline-block;
  height: 25px;
  line-height: 1;
  padding: 2px 0 2px 35px;
  position: relative;
  text-align: left;
  text-decoration: none;
  transition-property: background, color;
  transition-duration: .5s, .5s;
  transition-timing-function: ease-in-out, ease-in-out;
  z-index: 5;
}

.header-logo-a:hover {
  color: #e23411;
}

.header-logo-a-name-s {
  display: inline-block;
  font-family: "SkipProN-M";
  font-size: 85.7%;
  letter-spacing: .25em;
  line-height: 1.5;
  vertical-align: baseline;
}

.header-logo-a-name-l {
  display: inline-block;
  font-size: 150%;
  letter-spacing: .25em;
  line-height: 1;
  vertical-align: baseline;
}

@media only screen and (min-width: 640px) {
  .header-inner.nav-visible {
    /*padding-top: 70px;*/
  }

  .header-logo {
    padding: 20px;
  }

  .header-logo-a {
    background-size: auto 30px;
    height: 30px;
    padding: 1px 0 1px 50px;
  }

  .header-logo-a-name-l {

  }
}


/***** ↓pc *****/
@media only screen and (min-width: 1070px) {
  .header {
    background: #fcfaf2;
    transform-origin: 0 0;
    width: 100%;
  }

  .header-inner {
    background: #fcfaf2;
    display: table;
    margin: 0 auto;
    max-width: 1300px;
    padding: 0 50px;
    width: 100%;
  }

  .nav-float .header-inner {
    height: auto;
    padding-top: 0;
  }

  .header-logo {
    display: table-cell;
    padding: 40px 30px 40px 0;
    transition-property: all;
    transition-duration: .5s;
    transition-timing-function: ease-in-out;
    width: 270px;
  }

  .nav-float .header-logo {
    background: transparent;
    padding: 20px 30px 20px 0;
    position: static;
  }

  .header-logo-a {

  }

  .nav-visible .header-logo-a {

  }

  .header-logo-a:hover,
  .nav-visible .header-logo-a:hover {

  }

}

@media only screen and (min-width: 1440px) {
  .header {
  }

  .header-logo {
  }
}
/***** ↑pc *****/


/*********************************************************************************************
 nav
/*********************************************************************************************/
.nav {
  display: none;
  overflow: auto;
  padding: 0;
  position: relative;
  top: 0;
  width: 100%;
}

.nav-inner {
  position: relative;
}

.nav-toggle {
  color: #e23411;
  cursor: pointer;
  display: block;
  padding: 22px;/*10px 0;*/
  position: absolute;
  right: 6px;/*20px;*/
  top: 10.5px;/*20px;*/
  transition-property: transform;
  transition-duration: .5s;
  transition-timing-function: ease-in-out;
  /*width: 16px;*/
  text-align: center;
  z-index: 5;
}

.nav-toggle-open {

}

.nav-toggle-close .nav-toggle {

}

.nav-toggle-bar {
  background: #e23411;
  display: block;
  height: 2px;
  line-height: 0;
  position: absolute;
  left: calc(50% - 8px);
  text-align: center;
  text-decoration: none;
  transition-property: all;
  transition-duration: .5s;
  transition-timing-function: ease-in-out;
  transition-delay: 0s;
  width: 16px;
}

.nav-toggle-bar:nth-of-type(1) {
  top: calc(50% - 8px);
}

.nav-toggle-bar:nth-of-type(2) {
  top: calc(50% - 1px);
}

.nav-toggle-bar:nth-of-type(3) {
  top: calc(50% + 6px);
}

.nav-toggle-close .nav-toggle-bar {
  width: 19.2px;
}

.nav-toggle-close .nav-toggle-bar:nth-of-type(1) {
  background: #e23411;
  -webkit-transform: translate(-1px, 8px) rotate(-315deg);
  transform: translate(-1px, 8px) rotate(-315deg);
}

.nav-toggle-close .nav-toggle-bar:nth-of-type(2) {
  background: #e23411;
  opacity: 0;
}

.nav-toggle-close .nav-toggle-bar:nth-of-type(3) {
  background: #e23411;
  -webkit-transform: translate(-1px, -6px) rotate(315deg);
  transform: translate(-1px, -6px) rotate(315deg);
}

/*.nav-toggle-text {
  color: #e23411;
  font-size: 80%;
  text-align: center;
  width: 5em;
}

.nav-toggle-close .nav-toggle-text {
  color: #e23411;
}*/

/*.nav-toggle-text::before {
  content: 'MENU';
}

.nav-toggle-close .nav-toggle-text::before {
  content: 'CLOSE';
}*/

.nav-ul-1 {
  border-bottom: 1px solid #ddd;
  transition-property: opacity;
  transition-duration: .5s;
  transition-timing-function: ease-in-out;
}

.nav-ul-1-li {
  border-top: 1px solid #ddd;
}

.nav-ul-1-li-a {
  color: #6f5436;
  display: block;
  padding: 20px;
  position: relative;
  text-decoration: none;
  transition-property: background;
  transition-duration: .2s;
  transition-timing-function: ease-in-out;
  vertical-align: middle;
}

.nav-ul-1-li-a:hover {
  background: rgba(250,197,89,.2);
  color: #6f5436;
}

.nav-ul-1-li-a-2 {
  /*background: #d8a373;*//*rgba(226,52,17,.7);*/
  /*color: #fff;*/
}

.nav-ul-1-li-a-2:hover {
  /*background: rgba(216,163,115,.8);*//*rgba(226,52,17,.5);*/
  /*color: #fff;*/
}

.nav-toggle-2 {
  height: 100%;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 54px;
}

.nav-toggle-2::before {
  background: #e23411;
  content: '';
  height: 10px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 1px;
}

.nav-toggle-2::after {
  background: #e23411;
  content: '';
  height: 1px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
}

.nav-toggle-2.nav-toggle-2-close::before {
  display: none;
}

.nav-ul-2 {
  background-color: #e8c59c;
  background-image: radial-gradient(rgba(216,163,115,.3) 20%, transparent 20%), radial-gradient(rgba(216,163,115,.3) 20%, transparent 20%);
  background-size: 40px 40px;
  background-position: 10px 10px, 30px 30px;
  display: none;
  padding: 0;
}

.nav-2-open {
  display: block;
}

.nav-ul-2-li {
  border-top: 1px dotted #8a8a8a;
  padding: 10px;
}

.nav-ul-2-li-a {
  background-color: #fcfaf2;
  border-radius: 5px;
  color: #6f5436;
  cursor: pointer;
  display: table;
  padding: 10px;
  position: relative;
  text-decoration: none;
  transition-property: all;
  transition-duration: .5s;
  transition-timing-function: ease-in-out;
  width: 100%;
  z-index: 3;
}

.nav-ul-2-li-a:hover {
  background-color: #f3e9de;
  color: #6f5436;
}

.nav-ul-2-li-a-span {
  display: table-cell;
  line-height: 1.2;
  text-decoration: none;
  transition-property: all;
  transition-duration: .5s;
  transition-timing-function: ease-in-out;
  vertical-align: middle;
}

.nav-ul-1-sp {
  padding: 15px 0 100px;
}

.nav-ul-1-sp-li {
  padding: 15px 20px 0;
}


.nav-ul-1-li-a-nursery {
  border: 1px solid #ccc;
  border-radius: 28px;
  color: #6f5436;
  display: table;
  height: 50px;
  line-height: 1;
  padding: 0 20px;
  position: relative;
  transition-property: all;
  transition-duration: .5s;
  transition-timing-function: ease-in-out;
  vertical-align: middle;
  width: 100%;
}

.nav-ul-1-li-a-nursery:hover {
  color: #6f5436;
}

.nav-ul-1-li-a-nursery-1:hover {
  background: rgba(101, 171, 49, .2);
}

.nav-ul-1-li-a-nursery-2:hover {
  background: rgba(243, 152, 29, .2);
}

.nav-ul-1-li-a-nursery-3:hover {
  background: rgba(64, 169, 200, .2);
}

.nav-ul-1-li-a-nursery-4:hover {
  background: rgba(218, 83, 110, .2);
}

.nav-ul-1-li-a-nursery-span {
  display: table-cell;
  vertical-align: middle;
}

.nav-square {
  border: 1px solid #ccc;
  font-size: 0;
  display: block;
  height: 10px;
  line-height: 0;
  padding: .42em;
  position: absolute;
  right: 30px;
  top: calc(50% - 3px);
  width: 10px;
}

.nav-square-r {
  border: 1px solid #ccc;
  content: '';
  display: block;
  font-size: 0;
  height: 10px;
  line-height: 0;
  padding: .42em;
  position: absolute;
  left: 4px;
  top: -5px;
  width: 10px;
}

.nav-square-1 {
  border-color: #65ab31;
}

.nav-square-2 {
  border-color: #f08300;
}

.nav-square-3 {
  border-color: #008db7;
}

.nav-square-4 {
  border-color: #c82c55;
}

.nav-square-eng {
  border-color: #e23411;
}


@media only screen and (min-width: 640px) {
  .nav {
    padding: 0;
  }

  .nav-toggle {
    padding: 10px 0;
    right: 20px;
    top: 24px;
    width: 20px;
  }

  .nav-toggle-bar {
    left: calc(50% - 10px);
    width: 20px;
  }

  .nav-toggle-bar:nth-of-type(1) {
    top: calc(50% - 10px);
  }

  .nav-toggle-bar:nth-of-type(2) {
    top: calc(50% - 1px);
  }

  .nav-toggle-bar:nth-of-type(3) {
    top: calc(50% + 8px);
  }

  .nav-toggle-close .nav-toggle-bar {
    width: 24px;
  }

  .nav-toggle-close .nav-toggle-bar:nth-of-type(1) {
    -webkit-transform: translate(-1px, 10px) rotate(-315deg);
    transform: translate(-1px, 10px) rotate(-315deg);
  }

  .nav-toggle-close .nav-toggle-bar:nth-of-type(3) {
    -webkit-transform: translate(-1px, -8px) rotate(315deg);
    transform: translate(-1px, -8px) rotate(315deg);
  }

  .nav-ul-1-li-a {
    /*padding: 20px;*/
  }

  .nav-ul-1-li-a:hover {
    /*text-shadow: 0 0 5px #fff;*/
  }

  .nav-ul-2-li-a {
    padding: 10px 20px;
  }

  .nav-toggle-2 {
    background-size: 1em auto;
    width: 56px;
  }

  .nav-toggle-2::before {
    height: 10px;
  }

  .nav-toggle-2::after {
    width: 10px;
  }

  .nav-ul-1-li-a-nursery {
    height: 60px;
    padding: 0 40px;
  }
}

/***** ↓pc *****/
@media only screen and (min-width: 1070px) {
  .nav {
    background: transparent;
    display: table-cell;
    max-height: 100%;
    overflow: visible;
    padding: 0;
    position: static;
    vertical-align: middle;
    width: calc(100% - 270px);
  }

  .nav-inner {
    display: block;
    position: static;
    width: 100%;
  }

  .nav-toggle {
    display: none;
  }

  .nav-ul-1 {
    border-bottom: 0;
    display: table;
    float: right;
    padding: 0;
  }

  .nav-ul-1-li {
    border: 0;
    display: table-cell;
    padding: 20px 0;
    position: relative;
    text-align: left;
    vertical-align: top;
  }

/*  .has-submenu.show-tri::after {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
  }

  .has-submenu.hide-tri::after {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
  }*/

  .nav-ul-1-li-a {
    border: 0;
    cursor: pointer;
    display: block;
    line-height: 1;
    padding: 20px 20px 20px 35px;
    position: relative;
    text-align: left;
    text-decoration: none;
    transition-property: all;
    transition-duration: .5s;
    transition-delay: 0s;
    transition-timing-function: ease-in-out;
  }

  .nav-ul-1-li:first-child .nav-ul-1-li-a {
    border-left: none;
  }

  .nav-ul-1-li-a:hover {
    background: transparent;
    color: #e23411;
  }

  .nav-ul-1-li-a::before {
    border-bottom: 5px solid transparent;
    border-left: 6px solid #e23411;
    border-top: 5px solid transparent;
    content: '';
    position: absolute;
    left: 20px;
    top: calc(50% - 5px);
  }

  .nav-float .nav-ul-1-li {
    padding-bottom: 0;
    padding-top: 0;
  }

  .nav-ul-1-li-a-2 {
    padding-right: 50px;
  }

  .nav-ul-1-li-a-2:hover {
    /*background: rgba(216,163,115,.8);*//*rgba(226,52,17,.5);*/
    /*color: #fff;*/
  }

  .nav-ul-1-li-a-2::before {
    /*border-left-color: #fff;*/
  }

  .nav-toggle-2 {
    display: none;
  }

  .nav-ul-2 {
    border-radius: 10px;
    clear: both;
    left: 50%;
    opacity: 0;
    padding: 0 0 10px;
    position: absolute;
    top: 100px;
    transform: translateX(-50%);
    transition-property: all;
    transition-delay: 0s;
    transition-duration: .5s;
    transition-timing-function: ease-in-out;
    visibility: hidden;
    width: 200px;
    z-index: 1;
  }

  .has-submenu .nav-ul-2::before {
    content: '';
    /*display: none;*/
    height: 50px;
    left: 0;
    opacity: 0;
    position: absolute;
    top: -15px;
    width: 100%;
  }

  .has-submenu:hover .nav-ul-2 {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    display: block;
    opacity: 1;
    visibility: visible;
    z-index: 2;
  }

  .has-submenu:hover .nav-ul-2::before {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    display: block;
  }

  .has-submenu .nav-ul-2::after {
    border-bottom: 17px solid #e8c59c;
    border-left: 13px solid transparent;
    border-right: 13px solid transparent;
    /*bottom: -7px;*/
    content: '';
    font-size: 0;
    left: calc(50% - 13px);
    line-height: 0;
    margin: 0;
    opacity: 0;
    padding: 0;
    position: absolute;
    top: -15px;
    transition-property: all;
    transition-delay: 0s;
    transition-duration: .5s;
    transition-timing-function: ease-in-out;
    visibility: hidden;
  }

  .has-submenu:hover .nav-ul-2::after {
    opacity: 1;
    visibility: visible;
  }


  .nav-float .nav-ul-2 {
    top: 70px;
  }

  .nav-2-open {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
  }

  .nav-2-close {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
  }

  .nav-ul-2-li {
    border: 0;
    padding: 10px 10px 0;
  }

  .nav-ul-2-li-a {
    display: block;
    font-size: 86.7%;
    height: 100%;
    padding: 15px;
    text-align: center;
    text-decoration: none;
  }

  .nav-ul-2-li-a:hover {
    /*background: rgba(255, 255, 255, .3);*/
    /*color: #fff;*/
  }

  .nav-ul-2-li-a-span {
    display: block;
    /*padding-top: 15px;*/
    text-align: center;
  }

  .nav-ul-1-sp {
    display: none;
  }
}
/***** ↑pc *****/


/*********************************************************************************************
 footer
/*********************************************************************************************/
.footer {
  padding: 25px;
}

.footer-copyright {
  font-size: 12px;
  font-style: normal;
  letter-spacing: .25em;
  text-align: center;
}


/***** ↓pc *****/
@media only screen and (min-width: 1070px) {
  .footer {
    padding: 50px;
  }

  .footer-copyright {
    font-size: 14px;
  }
}
/***** ↑pc *****/


/*********************************************************************************************
 common
*********************************************************************************************/
/***********************************************
 btn-to-top
************************************************/
.btn-to-top-float-box {
  bottom: 15px;
  position: fixed;
  width: 100%;
  z-index: 100;
}

.btn-to-top {
  background: url(../img/logo.png) center top no-repeat;
  background-size: 50px auto;
  bottom: 0;
  color: #e23411;
  display: inline-block;
  font-size: 10px;
  height: 60px;
  line-height: 1;
  opacity: 0;
  outline: none;
  padding: 40px 0 0;
  position: absolute;
  right: 20px;
  text-align: center;
  text-decoration: none;
  transition-property: all;
  transition-duration: .5s;
  transition-timing-function: ease;
  transition-delay: 0s;
  width: 60px;
}

.btn-to-top:hover {
  color: #e23411;
}

.btn-to-top-visible {
  opacity: 1;
}

.anchor {
  display: block;
  font-size: 0;
  height: 0;
  line-height: 0;
  margin-top: -65px;
  padding-top: 65px;
}

@media only screen and (min-width: 640px) {
  .btn-to-top {
    right: 50px;
  }

  .anchor {
    margin-top: -70px;
    padding-top: 70px;
  }
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .btn-to-top {
    right: 50px;
  }

  /*.anchor {
    margin-top: -110px;
    padding-top: 110px;
  }*/

}
/***** ↑tablet, pc *****/


/***********************************************
 scnd
************************************************/
.scnd-section {}

.scnd-contents-inner {
  padding: 25px;
}

.scnd-section-h3 {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 24px;
}

.scnd-section-h3-sub {
  font-family: "TazuganeGothicStdN-Light";
  font-size: 16px;
  margin: 0 0 30px;
}

.scnd-section-h4 {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 18px;
}



/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .scnd-section {}

  .scnd-contents-inner {
    margin: 0 auto;
    max-width: 1300px;
    padding: 50px;
  }

  .scnd-section-h3 {
    font-size: 28px;
  }

  .scnd-section-h3-sub {
    font-size: 20px;
    margin: 0 0 50px;
  }

  .scnd-section-h4 {
    font-size: 22px;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 contents
************************************************/
.contents {
  position: relative;
  width: 100%;
}

/* check */
.bg-check-orange {
  background-image: linear-gradient(-90deg, rgba(238,120,0,.1) 50%, transparent 50%), linear-gradient(rgba(238,120,0,.1) 50%, transparent 50%);
  background-size: 20px 20px;
}

.bg-check-pink {
  background-image: linear-gradient(-90deg, rgba(200,44,85,.1) 50%, transparent 50%), linear-gradient(rgba(200,44,85,.1) 50%, transparent 50%);
  background-size: 20px 20px;
}

.bg-check-green {
  background-image: linear-gradient(-90deg, rgba(101,171,49,.1) 50%, transparent 50%), linear-gradient(rgba(101,171,49,.1) 50%, transparent 50%);
  background-size: 20px 20px;
}

.bg-check-blue {
  background-image: linear-gradient(-90deg, rgba(0,141,183,.1) 50%, transparent 50%), linear-gradient(rgba(0,141,183,.1) 50%, transparent 50%);
  background-size: 20px 20px;
}

.bg-check-violet {
  background-image: linear-gradient(-90deg, rgba(112,88,163,.1) 50%, transparent 50%), linear-gradient(rgba(112,88,163,.1) 50%, transparent 50%);
  background-size: 20px 20px;
}

.bg-check-yellow {
  background-image: linear-gradient(-90deg, rgba(255,217,0,.1) 50%, transparent 50%), linear-gradient(rgba(255,217,0,.1) 50%, transparent 50%);
  background-size: 20px 20px;
}

/* check-2 */
.bg-check-2-orange {
  background-image: repeating-linear-gradient(-45deg, rgba(238,120,0,.1) 0, rgba(238,120,0,.1) 10px, transparent 0, transparent 20px), repeating-linear-gradient(45deg, rgba(238,120,0,.1) 0, rgba(238,120,0,.1) 10px, transparent 0, transparent 20px);
}

.bg-check-2-pink {
  background-image: repeating-linear-gradient(-45deg, rgba(200,44,85,.1) 0, rgba(200,44,85,.1) 10px, transparent 0, transparent 20px), repeating-linear-gradient(45deg, rgba(200,44,85,.1) 0, rgba(200,44,85,.1) 10px, transparent 0, transparent 20px);
}

.bg-check-2-green {
  background-image: repeating-linear-gradient(-45deg, rgba(101,171,49,.1) 0, rgba(101,171,49,.1) 10px, transparent 0, transparent 20px), repeating-linear-gradient(45deg, rgba(101,171,49,.1) 0, rgba(101,171,49,.1) 10px, transparent 0, transparent 20px);
}

.bg-check-2-blue {
  background-image: repeating-linear-gradient(-45deg, rgba(0,141,183,.1) 0, rgba(0,141,183,.1) 10px, transparent 0, transparent 20px), repeating-linear-gradient(45deg, rgba(0,141,183,.1) 0, rgba(0,141,183,.1) 10px, transparent 0, transparent 20px);
}

.bg-check-2-violet {
  background-image: repeating-linear-gradient(-45deg, rgba(112,88,163,.1) 0, rgba(112,88,163,.1) 10px, transparent 0, transparent 20px), repeating-linear-gradient(45deg, rgba(112,88,163,.1) 0, rgba(112,88,163,.1) 10px, transparent 0, transparent 20px);
}

.bg-check-2-yellow {
  background-image: repeating-linear-gradient(-45deg, rgba(255,217,0,.1) 0, rgba(255,217,0,.1) 10px, transparent 0, transparent 20px), repeating-linear-gradient(45deg, rgba(255,217,0,.1) 0, rgba(255,217,0,.1) 10px, transparent 0, transparent 20px);
}

/* stripe */
.bg-stripe-orange {
  background-image: repeating-linear-gradient(-45deg, rgba(238,120,0,.1) 0, rgba(238,120,0,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-pink {
  background-image: repeating-linear-gradient(-45deg, rgba(200,44,85,.1) 0, rgba(200,44,85,.1) 7px, transparent 0, transparent 50%);
  background-size: 20px 20px;
}

.bg-stripe-green {
  background-image: repeating-linear-gradient(-45deg, rgba(101,171,49,.1) 0, rgba(101,171,49,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-blue {
  background-image: repeating-linear-gradient(-45deg, rgba(0,141,183,.1) 0, rgba(0,141,183,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-violet {
  background-image: repeating-linear-gradient(-45deg, rgba(112,88,163,.1) 0, rgba(112,88,163,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-yellow {
  background-image: repeating-linear-gradient(-45deg, rgba(255,217,0,.1) 0, rgba(255,217,0,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

/* stripe-2 */
.bg-stripe-2-orange {
  background-image: repeating-linear-gradient(45deg, rgba(238,120,0,.1) 0, rgba(238,120,0,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-2-pink {
  background-image: repeating-linear-gradient(45deg, rgba(200,44,85,.1) 0, rgba(200,44,85,.1) 7px, transparent 0, transparent 50%);
  background-size: 20px 20px;
}

.bg-stripe-2-green {
  background-image: repeating-linear-gradient(45deg, rgba(101,171,49,.1) 0, rgba(101,171,49,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-2-blue {
  background-image: repeating-linear-gradient(45deg, rgba(0,141,183,.1) 0, rgba(0,141,183,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-2-violet {
  background-image: repeating-linear-gradient(45deg, rgba(112,88,163,.1) 0, rgba(112,88,163,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

.bg-stripe-2-yellow {
  background-image: repeating-linear-gradient(45deg, rgba(255,217,0,.1) 0, rgba(255,217,0,.1) 7px, transparent 0, transparent 14px);
  background-size: 20px 20px;
}

/* dot */
.bg-dot-orange {
  background-image: radial-gradient(rgba(238,120,0,.2) 20%, transparent 20%), radial-gradient(rgba(238,120,0,.2) 20%, transparent 20%);
  background-size: 40px 40px;
  background-position: 0 0, 20px 20px;
}

.bg-dot-pink {
  background-image: radial-gradient(rgba(200,44,85,.2) 20%, transparent 20%), radial-gradient(rgba(200,44,85,.2) 20%, transparent 20%);
  background-size: 40px 40px;
  background-position: 0 0, 20px 20px;
}

.bg-dot-green {
  background-image: radial-gradient(rgba(101,171,49,.2) 20%, transparent 20%), radial-gradient(rgba(101,171,49,.2) 20%, transparent 20%);
  background-size: 40px 40px;
  background-position: 0 0, 20px 20px;
}

.bg-dot-blue {
  background-image: radial-gradient(rgba(0,141,183,.2) 20%, transparent 20%), radial-gradient(rgba(0,141,183,.2) 20%, transparent 20%);
  background-size: 40px 40px;
  background-position: 0 0, 20px 20px;
}

.bg-dot-violet {
  background-image: radial-gradient(rgba(112,88,163,.2) 20%, transparent 20%), radial-gradient(rgba(112,88,163,.2) 20%, transparent 20%);
  background-size: 40px 40px;
  background-position: 0 0, 20px 20px;
}

.bg-dot-yellow {
  background-image: radial-gradient(rgba(255,217,0,.2) 20%, transparent 20%), radial-gradient(rgba(255,217,0,.2) 20%, transparent 20%);
  background-size: 40px 40px;
  background-position: 0 0, 20px 20px;
}



.dottedline {
  -webkit-animation-delay: 86400s;
  animation-delay: 86400s;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  opacity: 0;
}

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

.dottedline-box {
  align-items: center;
  box-sizing: content-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  flex-flow: row nowrap;
  -ms-flex-align: center;
  -ms-flex-flow: row nowrap;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.dottedline-circle-s {
  border-radius: 50%;
  display: inline-block;
  font-size: 0;
  height: 5px;
  line-height: 0;
  width: 5px;
}

.dottedline-circle-l {
  border-radius: 50%;
  display: inline-block;
  font-size: 0;
  height: 7px;
  line-height: 0;
  width: 7px;
}

.dottedline-square-s {
  display: inline-block;
  font-size: 0;
  height: 5px;
  line-height: 0;
  width: 5px;
}

.dottedline-square-l {
  display: inline-block;
  font-size: 0;
  height: 6px;
  line-height: 0;
  width: 6px;
}


.dottedline-orange {
  background: #f08300;
}

.dottedline-pink {
  background: #c82c55;
}

.dottedline-green {
  background: #65ab31;
}

.dottedline-darkgreen {
  background: #417038;
}

.dottedline-blue {
  background: #008db7;
}

.dottedline-violet {
  background: #7058a3;
}

.dottedline-yellow {
  background: #ffd900;
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {

}
/***** ↑tablet, pc *****/



/***********************************************
 pagetitle
************************************************/
.pagetitle-box {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  font-family: "TazuganeGothicStdN-Regular";

  padding: 30px 20px;
  text-align: center;
}

.pagetitle-text {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  font-size: 28px;
  position: relative;
  z-index: 1;
}

.pagetitle-line-1 {
  padding: 0 15px;
  position: relative;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(1) {
  animation-delay: .2s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(2) {
  animation-delay: .4s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(3) {
  animation-delay: .6s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(4) {
  animation-delay: .8s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(5) {
  animation-delay: 1s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(6) {
  animation-delay: 1.2s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(7) {
  animation-delay: 1.4s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(8) {
  animation-delay: 1.6s;
}

.pagetitle-line-1 .pagetitle-text:nth-of-type(9) {
  animation-delay: 1.8s;
}


.pagetitle-dottedline {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  opacity: 0;
}

/* .pagetitle-dottedline-box-01 */
.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(1) {
  animation-delay: .1s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(2) {
  animation-delay: .2s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(3) {
  animation-delay: .3s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(4) {
  animation-delay: .4s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(5) {
  animation-delay: .5s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(6) {
  animation-delay: .6s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(7) {
  animation-delay: .7s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(8) {
  animation-delay: .8s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(9) {
  animation-delay: .9s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(10) {
  animation-delay: 1s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(11) {
  animation-delay: 1.1s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(12) {
  animation-delay: 1.2s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(13) {
  animation-delay: 1.3s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(14) {
  animation-delay: 1.4s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(15) {
  animation-delay: 1.5s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(16) {
  animation-delay: 1.6s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(17) {
  animation-delay: 1.7s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(18) {
  animation-delay: 1.8s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(19) {
  animation-delay: 1.9s;
}

.pagetitle-dottedline-box-01 .pagetitle-dottedline:nth-last-of-type(20) {
  animation-delay: 2s;
}

/* .pagetitle-dottedline-box-02 */
.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(1) {
  animation-delay: .1s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(2) {
  animation-delay: .2s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(3) {
  animation-delay: .3s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(4) {
  animation-delay: .4s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(5) {
  animation-delay: .5s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(6) {
  animation-delay: .6s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(7) {
  animation-delay: .7s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(8) {
  animation-delay: .8s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(9) {
  animation-delay: .9s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(10) {
  animation-delay: 1s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(11) {
  animation-delay: 1.1s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(12) {
  animation-delay: 1.2s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(13) {
  animation-delay: 1.3s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(14) {
  animation-delay: 1.4s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(15) {
  animation-delay: 1.5s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(16) {
  animation-delay: 1.6s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(17) {
  animation-delay: 1.7s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(18) {
  animation-delay: 1.8s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(19) {
  animation-delay: 1.9s;
}

.pagetitle-dottedline-box-02 .pagetitle-dottedline:nth-of-type(20) {
  animation-delay: 2s;
}

.pagetitle-dottedline-outer {
  display: table;
  margin: 0 auto;
}

.pagetitle-dottedline-box {
  align-items: center;
  box-sizing: content-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  flex-flow: row nowrap;
  -ms-flex-align: center;
  -ms-flex-flow: row nowrap;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.pagetitle-dottedline-circle-s {
  border-radius: 50%;
  display: inline-block;
  font-size: 0;
  height: 5px;
  line-height: 0;
  width: 5px;
}

.pagetitle-dottedline-circle-l {
  border-radius: 50%;
  display: inline-block;
  font-size: 0;
  height: 7px;
  line-height: 0;
  width: 7px;
}

.pagetitle-dottedline-square-s {
  display: inline-block;
  font-size: 0;
  height: 5px;
  line-height: 0;
  width: 5px;
}

.pagetitle-dottedline-square-l {
  display: inline-block;
  font-size: 0;
  height: 6px;
  line-height: 0;
  width: 6px;
}

.pagetitle-logo-fig {
  display: block;
  position: absolute;
  z-index: 20;
}

.pagetitle-logo-fig-01 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: migiKurukuru;
  animation-name: migiKurukuru;
  right: 0;
  top: 0;
  width: 30px;
}

.pagetitle-logo-fig-02 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 16s;
  animation-duration: 16s;
  animation-iteration-count: infinite;
  -webkit-animation-name: hidariKurukuru;
  animation-name: hidariKurukuru;
  bottom: 0;
  left: 0;
  width: 40px;
}

.pagetitle-logo-fig-03 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 10s;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  -webkit-animation-name: downAndUp;
  animation-name: downAndUp;
  left: -20px;
  position: absolute;
  top: 0;
  width: 40px;
  z-index: 20;
}

.pagetitle-logo-fig-04 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 10s;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  -webkit-animation-name: upAndDown;
  animation-name: upAndDown;
  bottom: 0;
  position: absolute;
  right: -20px;
  width: 40px;
  z-index: 20;
}

.pagetitle-logo-fig-05 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: hidariKurukuru;
  animation-name: hidariKurukuru;
  bottom: 0;
  right: 0;
  width: 30px;
}

.pagetitle-logo-fig-06 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 16s;
  animation-duration: 16s;
  animation-iteration-count: infinite;
  -webkit-animation-name: migiKurukuru;
  animation-name: migiKurukuru;
  left: 0;
  top: 0;
  width: 30px;
}

.pagetitle-logo-fig-07 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 10s;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  -webkit-animation-name: upAndDown;
  animation-name: upAndDown;
  bottom: 0;
  position: absolute;
  right: -20px;
  width: 30px;
  z-index: 20;
}

.pagetitle-logo-fig-08 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 10s;
  animation-duration: 10s;
  animation-iteration-count: infinite;
  -webkit-animation-name: downAndUp;
  animation-name: downAndUp;
  left: -20px;
  position: absolute;
  top: 0;
  width: 30px;
  z-index: 20;
}

.pagetitle-logo-img {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  display: block;
  width: 100%;
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .pagetitle-box {
    padding: 50px;
  }

  .pagetitle-text {
    font-size: 32px;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 section-title
************************************************/
.section-h3 {
  font-family: "TazuganeGothicStdN-Thin";
  font-size: 200%;
  font-weight: normal;
  line-height: 1.5;
  padding-bottom: 20px;
}

.section-h4 {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 128.6%;
  font-weight: normal;
  padding-bottom: 10px;
}

.section-h4-line {
  background: linear-gradient(transparent 0%, transparent 49%, #e0ea48 50%, #e0ea48 100%);
  display: inline-block;
  line-height: 1;
  padding: 0 0 .2em .2em;
  position: relative;
}

.section-h5 {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 106.7%;
  font-weight: normal;
}


@media only screen and (min-width: 640px) {
  .section-h3 {
    padding-bottom: 30px;
  }

  .section-h4 {
    padding-bottom: 15px;
  }

}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .section-h3 {
    padding-bottom: 40px;
  }

  .section-h4 {
    padding-bottom: 20px;
  }
}
/***** ↑tablet, pc *****/



/***********************************************
 table-simple
************************************************/
.tbl-simple {
  border-collapse: collapse;
  border-left: 1px solid transparent;
  border-top: 1px solid transparent;
  display: block;
  margin: 0 auto;
  width: auto;
}

.tbl-simple.tbl-simple-right {
  border-top: 0;
}

.tbl-simple > tbody,
.tbl-simple > tbody > tr {
  display: block;
}

.tbl-simple > tbody > tr > th {
  background: url(../img/bg-stripe-white-02.png) 0 0 repeat rgba(255, 255, 255, .8);
  background-size: 11px auto;
  border-bottom: 1px solid transparent;
  border-right: 1px solid transparent;
  display: block;
  padding: 10px 15px;
}

.tbl-simple > tbody > tr.tr-pc {
  display: none;
}

.tbl-simple > tbody > tr > td {
  background: url(../img/bg-stripe-white-02.png) 0 0 repeat rgba(255, 255, 255, .9);
  background-size: 11px auto;
  border-bottom: 1px solid transparent;
  border-right: 1px solid transparent;
  display: block;
  padding: 10px 15px;
}

.tbl-simple-100prc {
  width: 100%;
}

.td-nowrap {
  white-space: nowrap;
}


@media only screen and (min-width: 640px) {
  .tbl-simple > tbody > tr > th {
    padding: 15px;
  }

  .tbl-simple > tbody > tr > td {
    padding: 15px;
  }
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1250px) {
  .tbl-simple {
    border-collapse: separate;
    border-spacing: 1px;
    display: table;
  }

  .tbl-simple > tbody {
    display: table-row-group;
  }

  .tbl-simple > tbody > tr {
    display: table-row;
  }

  .tbl-simple > tbody > tr.tr-pc {
    display: table-row;
  }

  .tbl-simple > tbody > tr > th {
    display: table-cell;
    padding: 15px 25px;
  }

  .tbl-simple > tbody > tr > th.th-sp {
    display: none;
  }

  .tbl-simple > tbody > tr > td {
    display: table-cell;
    padding: 15px 25px;
  }

  .tbl-simple-cell-w6 {
    width: 6em;
  }

  .tbl-simple-cell-w8 {
    width: 8em;
  }

  .tbl-simple-cell-w10 {
    width: 10em;
  }

  .tbl-simple-cell-w12 {
    width: 12em;
  }

  .tbl-simple-cell-w13 {
    width: 13em;
  }

  .tbl-simple-cell-w20 {
    width: 20em;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 list-kome
************************************************/
.list-kome-ul {}

.list-kome-ul-li {
  padding-left: 1.5em;
  position: relative;
}

.list-kome-ul-li::before {
  content: '※';
  left: 0;
  position: absolute;
  top: 0;
}


/***********************************************
 list-nomark
************************************************/
.list-nomark-ul {
  list-style-type: none;
}

.list-nomark-ul-li {
  list-style-type: none;
  padding-left: 1.5em;
  position: relative;
}

.list-nomark-ul-li-num {
  float: left;
}

.list-nomark-ul-li-text {
  display: block;
  padding-left: 1.5em;
}

/***** ↓tablet, pc *****/
@media only screen and (min-width: 769px) {

}
/***** ↑tablet, pc *****/


/***********************************************
 list-circle
************************************************/
.list-circle-ul {
  margin-left: 20px;
}

.list-circle-ul-li {
  list-style-type: circle;
  position: relative;
}

/***********************************************
 list-disc
************************************************/
.list-disc-ul {
  margin-left: 20px;
}

.list-disc-ul-li {
  list-style-type: disc;
  position: relative;
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 769px) {

}
/***** ↑tablet, pc *****/


/***********************************************
 list-dot
************************************************/
.list-dot-ul {}

.list-dot-ul-li {
  padding-left: 1.5em;
  position: relative;
}

.list-dot-ul-li::before {
  content: '・';
  left: 0;
  position: absolute;
  top: 0;
}

/***** ↓tablet, pc *****/
@media only screen and (min-width: 769px) {

}
/***** ↑tablet, pc *****/


/***********************************************
 list-maruno
************************************************/
.list-maruno-ul {}

.list-maruno-ul-li {
  padding-left: 1.5em;
  position: relative;
}

.list-maruno-ul-li-1::before {
  content: '\02460';
  left: 0;
  position: absolute;
  top: 0;
}

.list-maruno-ul-li-2::before {
  content: '\02461';
  left: 0;
  position: absolute;
  top: 0;
}

.list-maruno-ul-li-3::before {
  content: '\02462';
  left: 0;
  position: absolute;
  top: 0;
}

.list-maruno-ul-li-4::before {
  content: '\02463';
  left: 0;
  position: absolute;
  top: 0;
}

.list-maruno-ul-li-5::before {
  content: '\02464';
  left: 0;
  position: absolute;
  top: 0;
}

/***** ↓tablet, pc *****/
@media only screen and (min-width: 769px) {

}
/***** ↑tablet, pc *****/



/*********************************************************************************************
 toppage
*********************************************************************************************/
.top-section {}

.top-contents-inner {
  padding: 25px;
}

.top-section-h3 {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 24px;
  text-align: center;
}

.top-section-h3-ja {
  font-size: 20px;
}

.top-section-h3-sub {
  font-family: "TazuganeGothicStdN-Light";
  font-size: 16px;
  margin: 5px 0 30px;
}

.top-section-h4 {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 18px;
}



/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .top-section {}

  .top-contents-inner {
    margin: 0 auto;
    max-width: 1300px;
    padding: 50px;
  }

  .top-section-h3 {
    font-size: 28px;
    text-align: left;
  }

  .top-section-h3-ja {
    font-size: 24px;
  }

  .top-section-h3-sub {
    font-size: 20px;
    margin: 10px 0 50px;
  }

  .top-section-h4 {
    font-size: 22px;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 top-mainimage
************************************************/
.top-mainimage-outer {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  padding: 20px;
  position: relative;
  text-align: center;
}

.top-mainimage-box {
  height: calc(50vh - 30px);
  left: 0;
  overflow: hidden;
  width: 100%;
}

.top-mainimage-box-inner {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  overflow: hidden;
  width: 100%;
}

.top-mainimage-box-inner-01 {
  background-image: url(../img/top-main-image-01.jpg);
}

.top-mainimage-box-inner-02 {
  background-image: url(../img/top-main-image-02.jpg);
}

.top-mainimage-box-inner-03 {
  background-image: url(../img/top-main-image-03.jpg);
}

.top-catch-box {
  position: relative;
}


.top-catch {
  display: block;
  font-family: "SkipProN-M";
  line-height: 2.167;
  padding: 40px 0 50px;
  text-align: left;
  vertical-align: middle;
}

.top-catch-2 {
  padding: 0 0 60px;
}

.top-catch-text {
  -webkit-animation-delay: 86400s;
  animation-delay: 86400s;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  opacity: 0;
}

.top-catch-strong {
  font-size: 171.4%;
  padding-bottom: 20px;
}

.top-catch-line-1 {
  position: relative;
  z-index: 1;
}

.top-catch-line-1 .top-catch-text:nth-of-type(1) {
  -webkit-animation-delay: .2s;
  animation-delay: .2s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(2) {
  -webkit-animation-delay: .4s;
  animation-delay: .4s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(3) {
  -webkit-animation-delay: .6s;
  animation-delay: .6s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(4) {
  -webkit-animation-delay: .8s;
  animation-delay: .8s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(5) {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(6) {
  -webkit-animation-delay: 1.2s;
  animation-delay: 1.2s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(7) {
  -webkit-animation-delay: 1.4s;
  animation-delay: 1.4s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(8) {
  -webkit-animation-delay: 1.6s;
  animation-delay: 1.6s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(9) {
  -webkit-animation-delay: 1.8s;
  animation-delay: 1.8s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(10) {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(11) {
  -webkit-animation-delay: 2.2s;
  animation-delay: 2.2s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(12) {
  -webkit-animation-delay: 2.4s;
  animation-delay: 2.4s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(13) {
  -webkit-animation-delay: 2.6s;
  animation-delay: 2.6s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(14) {
  -webkit-animation-delay: 2.8s;
  animation-delay: 2.8s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(15) {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(16) {
  -webkit-animation-delay: 3.2s;
  animation-delay: 3.2s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(17) {
  -webkit-animation-delay: 3.4s;
  animation-delay: 3.4s;
}

.top-catch-line-1 .top-catch-text:nth-of-type(18) {
  -webkit-animation-delay: 3.6s;
  animation-delay: 3.6s;
}



.top-catch-logo {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  width: 50px;
}

.top-catch-line-2 {
  position: relative;
  z-index: 1;
}

.top-catch-line-2 .top-catch-text:nth-of-type(1) {
  -webkit-animation-delay: 2.4s;
  animation-delay: 2.4s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(2) {
  -webkit-animation-delay: 2.6s;
  animation-delay: 2.6s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(3) {
  -webkit-animation-delay: 2.8s;
  animation-delay: 2.8s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(4) {
  -webkit-animation-delay: 3.0s;
  animation-delay: 3.0s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(5) {
  -webkit-animation-delay: 3.2s;
  animation-delay: 3.2s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(6) {
  -webkit-animation-delay: 3.4s;
  animation-delay: 3.4s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(7) {
  -webkit-animation-delay: 3.6s;
  animation-delay: 3.6s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(8) {
  -webkit-animation-delay: 3.8s;
  animation-delay: 3.8s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(9) {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(10) {
  -webkit-animation-delay: 4.2s;
  animation-delay: 4.2s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(11) {
  -webkit-animation-delay: 4.4s;
  animation-delay: 4.4s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(12) {
  -webkit-animation-delay: 4.6s;
  animation-delay: 4.6s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(13) {
  -webkit-animation-delay: 4.8s;
  animation-delay: 4.8s;
}

.top-catch-line-2 .top-catch-text:nth-of-type(14) {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
}


.top-catch-line-3 {
  position: relative;
  z-index: 1;
}

.top-catch-line-3 .top-catch-text:nth-of-type(1) {
  -webkit-animation-delay: 4.6s;
  animation-delay: 4.6s;
}

.top-catch-line-3 .top-catch-text:nth-of-type(2) {
  -webkit-animation-delay: 4.8s;
  animation-delay: 4.8s;
}

.top-catch-line-3 .top-catch-text:nth-of-type(3) {
  -webkit-animation-delay: 5.0s;
  animation-delay: 5.0s;
}

.top-catch-line-3 .top-catch-text:nth-of-type(4) {
  -webkit-animation-delay: 5.2s;
  animation-delay: 5.2s;
}

.top-catch-line-3 .top-catch-text:nth-of-type(5) {
  -webkit-animation-delay: 5.4s;
  animation-delay: 5.4s;
}

.top-catch-line-3 .top-catch-text:nth-of-type(6) {
  -webkit-animation-delay: 5.6s;
  animation-delay: 5.6s;
}

.top-catch-line-3 .top-catch-text:nth-of-type(7) {
  -webkit-animation-delay: 5.8s;
  animation-delay: 5.8s;
}

.top-catch-line-3::before {
  -webkit-animation-delay: 6.0s;
  animation-delay: 6.0s;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  background: url(../img/bg-underline-pink-03.png) left bottom no-repeat;
  background-size: auto 20px;
  content: '';
  height: 1.7em;
  left: -.8em;
  position: absolute;
  bottom: 0;
  width: calc(100% + 1.423em);
  z-index: -1;
}


@media only screen and (min-width: 640px) {
  .top-mainimage-outer {

  }

  .top-catch-box {

  }

  .top-catch {
    bottom: calc(50% - 85px);
    left: 50px;
    width: auto;
  }

  .top-catch-text {

  }

  .top-catch-line-1::before {
    background-size: auto 30px;
  }

  .top-catch-line-2::before {
    background-size: auto 30px;
  }

  .top-catch-line-3::before {
    background-size: auto 30px;
  }
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .top-mainimage-outer {
    display: table;
    height: 400px;
    padding: 0;
    width: 100%;
  }

  .top-mainimage-box {
    display: table-cell;
    padding: 30px;
    vertical-align: middle;
    width: 60%;
  }

  .top-mainimage-box-inner {
    height: 400px;
  }

  .top-catch-box {
    display: table-cell;
    height: auto;
    padding: 30px;
    vertical-align: middle;
    width: 40%;
  }

  .top-catch {
    background-position: right 30px bottom;
    vertical-align: middle;
    width: auto;
  }

  .top-catch-bar {
    padding:0 20px;
  }

  .top-catch-bar::before {
    width: 15px;
  }

}
/***** ↑tablet, pc *****/



/***********************************************
 top-info
************************************************/
.top-info-box {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  margin: 25px 0 0;
  padding: 30px 20px;
  position: relative;
}

.top-info-title {
  padding: 0 0 20px;
  position: relative;
}

.top-info-title-h3 {
  font-size: 22px;
}

.top-tolist-btn {
  background: #ee7800;
  border-radius: 50px;
  color: #fff;
  display: inline-block;
  line-height: 1;
  padding: 5px 15px;
  position: absolute;
  right: 0;
  top: 3px;
  white-space: nowrap;
}

.top-tolist-btn:hover {
  color: #fff;
  opacity: .7;
}

.info-ul {
  border-bottom: 1px solid #ddd;
}

.info-ul-li {
  border-top: 1px solid #ddd;
}

.info-ul-li-a {
  display: block;
  padding: 10px;
}

.info-ul-li-a:hover {
  background-color: rgba(250,197,89,.1);
}

.info-ul-li-date {
  display: block;
}

.info-ul-li-label {
  border-radius: 5px;
  color: #fff;
  display: inline-block;
  font-size: 12px;
  line-height: 1;
  padding: 3px 5px;
  text-align: center;
  width: 120px;
}

.label-minamitsukushino {
  background: #da536e;
}

.label-hidamari {
  background: #f3981d;
}

.label-happy {
  background: #8fc368;
}

.label-heart {
  background: #40a9c8;
}

.info-ul-li-text {
  display: block;
}

.top-info-left-top-fig {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: downAndUp;
  animation-name: downAndUp;
  left: -20px;
  position: absolute;
  top: 0;
  z-index: 20;
}

.top-info-left-top-img {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  display: block;
  width: 30px;
}

.top-info-right-bottom-fig {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: upAndDown;
  animation-name: upAndDown;
  bottom: 0;
  position: absolute;
  right: -20px;
  z-index: 20;
}

.top-info-right-bottom-img {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  display: block;
  width: 30px;
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .top-info-box {
    margin: 50px 0 0;
    padding: 50px;
  }

  .top-info-box-inner {
    display: table;
    table-layout: fixed;
    width: 100%;
  }

  .top-info-title {
    display: table-cell;
    padding: 0 30px 0 0;
    text-align: center;
    vertical-align: middle;
    width: 20%;
  }

  .top-info-title-h3 {
    font-size: 26px;
    margin-bottom: 20px;
  }

  .top-tolist-btn {
    padding: 10px 20px;
    position: static;
  }

  .top-info-body {
    display: table-cell;
    vertical-align: middle;
  }

  .info-ul-li-date {
    display: inline-block;
    padding: 0 10px 0 0;
  }

  .info-ul-li-label {
    font-size: 13px;
    width: 130px;
  }

  .info-ul-li-text {
    display: inline-block;
    overflow: hidden;
    padding: 0 0 0 10px;
    text-overflow: ellipsis;
    vertical-align: middle;
    white-space: nowrap;
    width: calc(100% - 120px);
  }

  .top-info-left-top-img {
    width: 40px;
  }

  .top-info-right-bottom-img {
    width: 40px;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 top-philosophy-box-01
************************************************/
.top-philosophy-box-01-body {
  align-items: stretch;
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  box-sizing: content-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  flex-flow: row wrap;
  -ms-flex-direction: row;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  -webkit-box-align: stretch;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: justify;
  justify-content: space-between;
  /*font-family: "MatisseProN-M";*/
  margin: 25px 0 0;
  padding: 30px 20px;
}

.top-philosophy-box-01-body.first {
  margin-top: 0;
}

.top-philosophy-box-01-body-pht {
  background: url(../img/top-pht-philosophy-01.jpg) center top no-repeat;
  background-size: cover;
  flex-basis: 100%;
  height: 100vw;
  margin: 0 auto;
  max-height: 640px;
  max-width: 640px;
}

.top-philosophy-box-03-body-pht {
  background: url(../img/top-pht-philosophy-03.jpg) center top no-repeat;
  background-size: cover;
  flex-basis: 100%;
  height: 100vw;
  margin: 0 auto;
  max-height: 640px;
  max-width: 640px;
}

.top-philosophy-box-01-body-txt {
  flex-basis: 100%;
  padding: 30px 0 0;
}

.top-philosophy-txt-fig {
  display: block;
}

.top-philosophy-txt-img {
  max-width: 100%;
}

.top-philosophy-box-01-body-lines {
  line-height: 2.67;
}

.top-philosophy-line-sp {
  display: inline-block;
}

.top-philosophy-bird-box {
  position: relative;
}

.top-philosophy-bird-green-01-fig {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: rightToLeft;
  animation-name: rightToLeft;
  height: 55px;
  position: absolute;
  right: -50%;
  top: 0;
  width: 72px;
  z-index: 10;
}

.top-philosophy-bird-green-01-img {
  display: block;
  width: 100%;
}

.top-philosophy-bird-green-02-fig {
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: leftToRight;
  animation-name: leftToRight;
  height: 55px;
  left: -50%;
  position: absolute;
  top: 0;
  width: 72px;
  z-index: 10;
}

.top-philosophy-bird-green-02-img {
  display: block;
  width: 100%;
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .top-philosophy-box-01-body {
    flex-flow: row-reverse nowrap;
    margin: 50px 0 0;
    padding: 50px;
  }

  .top-philosophy-box-01-body-pht {
    flex-basis: 45%;
    height: auto;
  }

  .top-philosophy-box-03-body-pht {
    flex-basis: 45%;
    height: auto;
  }

  .top-philosophy-box-01-body-txt {
    flex-basis: 55%;
    padding: 0 30px 0 0;
  }

  .top-philosophy-bird-box {
    top: 25px;
  }

}
/***** ↑tablet, pc *****/


/***********************************************
 top-philosophy-box-02
************************************************/
.top-philosophy-box-02-body {
  align-items: stretch;
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  box-sizing: content-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  flex-flow: row wrap;
  -ms-flex-direction: row;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  -webkit-box-align: stretch;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: justify;
  justify-content: space-between;
  /*font-family: "MatisseProN-M";*/
  margin: 25px 0 0;
  padding: 30px 20px;
}

.top-philosophy-box-02-body-pht {
  background: url(../img/top-pht-philosophy-02.jpg) center top no-repeat;
  background-size: cover;
  flex-basis: 100%;
  height: 100vw;
  margin: 0 auto;
  max-height: 640px;
  max-width: 640px;
}

.top-philosophy-box-02-body-txt {
  flex-basis: 100%;
  padding: 30px 0 0;
}

.top-philosophy-box-02-body-lines {
  line-height: 2.67;
}

.br-philosophy-pc {
  display: none;
}


@media only screen and (min-width: 640px) {

}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .top-philosophy-box-02-body {
    flex-flow: row nowrap;
    margin: 50px 0 0;
    padding: 50px;
  }

  .top-philosophy-box-02-body-pht {
    flex-basis: 45%;
    height: auto;
  }

  .top-philosophy-box-02-body-txt {
    flex-basis: 55%;
    padding: 0 0 0 30px;
  }

}

@media only screen and (min-width: 1250px) {
  .br-philosophy-pc {
    display: inline-block;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 top-facility-box
************************************************/
.top-facility-box {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.top-facility-ul {

}

.top-facility-ul-li {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  margin: 20px 0 0;
}

.top-facility-ul-li:first-of-type {
  margin-top: 0;
}

.top-facility-ul-li-inner {
  padding: 30px 20px;
  position: relative;
}

.top-facility-name {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 16px;
  text-align: center;
}

.top-facility-fig {
  padding: 20px 0;
}

.top-facility-img {
  display: block;
  width: 100%;
}

.top-facility-btn-box {
  text-align: center;
}

.top-facility-btn {
  border-radius: 50px;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  line-height: 1;
  margin: 10px;
  padding: 10px 20px;
  white-space: nowrap;
}

.top-facility-btn-1 {
  background: #65ab31;
}

.top-facility-btn-2 {
  background: #f3981d;
}

.top-facility-btn-3 {
  background: #40a9c8;
}

.top-facility-btn-4 {
  background: #da536e;
}


.top-facility-btn:hover {
  color: #fff;
  opacity: .7;
}

.top-aboutus-box {
  margin: 25px auto 0;
}

.top-aboutus-btn {
  background: #e65a3e;
  border-radius: 50px;
  color: #fff;
  display: table;
  font-size: 18px;
  line-height: 1;
  padding: 20px 40px;
  text-align: center;
  white-space: nowrap;
  width: 100%;
}

.top-aboutus-btn:hover {
  background: #e97861;
  color: #fff;
}

.top-facility-logo-fig {
  position: absolute;
  z-index: 20;
}

.top-facility-logo-fig-01 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: migiKurukuru;
  animation-name: migiKurukuru;
  right: 0;
  top: 0;
  width: 30px;
}

.top-facility-logo-fig-02 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 16s;
  animation-duration: 16s;
  animation-iteration-count: infinite;
  -webkit-animation-name: hidariKurukuru;
  animation-name: hidariKurukuru;
  bottom: 0;
  left: 0;
  width: 40px;
}

.top-facility-logo-fig-03 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 18s;
  animation-duration: 18s;
  animation-iteration-count: infinite;
  -webkit-animation-name: hidariKurukuru;
  animation-name: hidariKurukuru;
  bottom: 0;
  left: 0;
  width: 30px;
}

.top-facility-logo-fig-04 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 15s;
  animation-duration: 15s;
  animation-iteration-count: infinite;
  -webkit-animation-name: migiKurukuru;
  animation-name: migiKurukuru;
  right: 0;
  top: 0;
  width: 35px;
}

.top-facility-logo-img {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  display: block;
  width: 100%;
}


@media only screen and (min-width: 670px) {
  .top-facility-box-body {

  }

  .top-facility-ul {
    align-items: stretch;
    box-sizing: content-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    flex-flow: row wrap;
    -ms-flex-align: stretch;
    -ms-flex-direction: row;
    -ms-flex-pack: justify;
    -ms-flex-wrap: wrap;
    -webkit-box-align: stretch;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }

  .top-facility-ul-li {
    -ms-flex-preferred-size: calc(50% - 12.5px);
    flex-basis: calc(50% - 12.5px);
    margin: 25px 0 0;
    width: calc(50% - 12.5px);
  }

  .top-facility-ul-li:nth-of-type(2) {
    margin-top: 0;
  }

  .top-facility-name {
    height: 3.5em;
  }
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .top-facility-box-body {

  }

  .top-facility-ul-li {
    -ms-flex-preferred-size: calc(50% - 25px);
    flex-basis: calc(50% - 25px);
    margin: 50px 0 0;
    /*padding: 25px;*/
    width: calc(50% - 25px);
  }

  .top-facility-ul-li-inner {
    padding: 50px;
  }

  .top-facility-name {
    font-size: 21px;
  }

  .top-facility-fig {
    padding: 40px 0;
  }

  .top-facility-btn {
    font-size: 18px;
    padding: 15px 30px;
    position: static;
  }


  .top-aboutus-box {
    margin: 50px auto 0;
  }

  .top-aboutus-btn {
    font-size: 21px;
    padding: 30px 60px;
  }
}

/***** ↑tablet, pc *****/


/*********************************************************************************************
 info
*********************************************************************************************/
.info-box {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  padding: 30px 20px;
  position: relative;
}

.info-left-top-fig {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: downAndUp;
  animation-name: downAndUp;
  left: -20px;
  position: absolute;
  top: 0;
  z-index: 20;
}

.info-left-top-img {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  display: block;
  width: 30px;
}

.info-right-bottom-fig {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: upAndDown;
  animation-name: upAndDown;
  bottom: 0;
  position: absolute;
  right: -20px;
  z-index: 20;
}

.info-right-bottom-img {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  display: block;
  width: 30px;
}


.info-content-title {
  border-bottom: 2px dotted #f3981d;
  font-size: 16px;
  padding: 10px 0;
}

.info-content-text {
  padding: 20px 0 0;
}

.info-content-btn {
  padding: 20px 0 0;
  text-align: center;
}

.info-content-image {
	max-width: 100%;
}

.info-content-pdf {
	display: block;
	margin-top: 2em;
	position: relative;
	line-height: 2em;
	padding-left: 2.5em;
}
.info-content-pdf::before {
	content: "";
	display: block;
	width: 2em;
	height: 2em;
	background: url(/img/icon-pdf.png) no-repeat center top;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
}
.info-content-pdf + .info-content-pdf {
	margin-top: 1em;
}

.info-tolist-btn {
  background: #ee7800;
  border-radius: 50px;
  color: #fff;
  display: inline-block;
  line-height: 1;
  padding: 5px 15px;
  white-space: nowrap;
}

.info-tolist-btn:hover {
  color: #fff;
  opacity: .7;
}

.pagenation-ul {
  align-items: stretch;
  box-sizing: content-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  flex-flow: row wrap;
  -ms-flex-direction: row;
  -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
  -webkit-box-align: stretch;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: center;
  justify-content: center;
  margin: 30px auto 0;
}

.pagenation-ul-li {
  flex-basis: 50px;
}

.pagenation-ul-li-a {
  border: 1px solid #6f5436;
  color: #6f5436;
  display: block;
  height: 40px;
  line-height: 40px;
  position: relative;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  width: 40px;
}

.pagenation-ul-li-a:hover {
  background: #946c45;
  color: #fff;
  text-decoration: none;
}

.pagenation-ul-li-a-active {
  background: rgba(226, 52, 17, .2);
}

.pagenation-ul-li-a-previous::after {
  border-left: 1px solid #6f5436;
  border-top: 1px solid #6f5436;
  content: '';
  display: block;
  height: 6px;
  left: calc(50% - 4.24px);
  position: absolute;
  top: calc(50% - 4.24px);
  transform: rotate(-45deg);
  transition-property: all;
  transition-duration: .5s;
  transition-delay: 0s;
  transition-timing-function: ease-in-out;
  width: 6px;
}

.pagenation-ul-li-a-next::after {
  border-right: 1px solid #6f5436;
  border-top: 1px solid #6f5436;
  content: '';
  display: block;
  height: 6px;
  left: calc(50% - 4.24px);
  position: absolute;
  top: calc(50% - 4.24px);
  transform: rotate(45deg);
  transition-property: all;
  transition-duration: .5s;
  transition-delay: 0s;
  transition-timing-function: ease-in-out;
  width: 6px;
}

.pagenation-ul-li-a-previous:hover::after,
.pagenation-ul-li-a-next:hover::after {
  border-color: #fff;
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .info-box {
    margin: 50px 0 0;
    padding: 50px;
  }

  .info-box-inner {
    display: table;
    table-layout: fixed;
    width: 100%;
  }

  .info-left-top-img {
    width: 40px;
  }

  .info-right-bottom-img {
    width: 40px;
  }

  .info-content-title {
    font-size: 18px;
    padding: 10px 0 20px;
  }

  .info-content-text {
    padding: 30px 0 0;
  }

  .info-content-btn {
    padding: 40px 0 0;
  }

  .info-tolist-btn {
    padding: 10px 20px;
  }
}
/***** ↑tablet, pc *****/


/*********************************************************************************************
 about us
*********************************************************************************************/
/***********************************************
 aboutus-philosophy-box
************************************************/
.aboutus-philosophy-box-ul {

}

.aboutus-philosophy-box-ul-li {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  margin: 20px 0 0;
}

.aboutus-philosophy-box-ul-li:first-of-type {
  margin-top: 0;
}

.aboutus-philosophy-box-body {
  padding: 30px 20px;
  position: relative;
}

.aboutus-philosophy-h3 {
  margin-bottom: 20px;
  text-align: center;
}

.aboutus-philosophy-box-body-lines {
  line-height: 2.67;
}

.aboutus-philosophy-line-sp {
  display: inline-block;
}

.aboutus-philosophy-strong {
  font-family: "TazuganeGothicStdN-Regular";
  font-size: 116.7%;
}

.aboutus-philosophy-fig {
  margin: 0 auto 20px;
  max-width: 450px;
}

.aboutus-philosophy-img {
  display: block;
  width: 100%;
}

@media only screen and (min-width: 640px) {

  .aboutus-philosophy-box-ul {
    align-items: stretch;
    box-sizing: content-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    flex-flow: row wrap;
    -ms-flex-align: stretch;
    -ms-flex-direction: row;
    -ms-flex-pack: justify;
    -ms-flex-wrap: wrap;
    -webkit-box-align: stretch;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }

  .aboutus-philosophy-box-ul-li {
    -ms-flex-preferred-size: calc(50% - 12.5px);
    flex-basis: calc(50% - 12.5px);
    margin: 25px 0 0;
    width: calc(50% - 12.5px);
  }

  .aboutus-philosophy-box-ul-li:nth-of-type(2) {
    margin-top: 0;
  }
}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {

  .aboutus-philosophy-box-ul-li {
    -ms-flex-preferred-size: calc(50% - 25px);
    flex-basis: calc(50% - 25px);
    margin: 50px 0 0;
    /*padding: 25px;*/
    width: calc(50% - 25px);
  }

  .aboutus-philosophy-box-body {
    padding: 50px;
  }

  .aboutus-philosophy-h3 {
    margin-bottom: 40px;
  }

  .aboutus-philosophy-fig {
    margin: 0 auto 40px;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 aboutus-education-box
************************************************/
.aboutus-education-box {
  align-items: center;
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  box-sizing: content-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  flex-flow: row wrap;
  -ms-flex-direction: row;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: justify;
  justify-content: space-between;
  padding: 30px 20px;
}

.aboutus-education-box-pht {
  background: url(../img/aboutus-education-pht-01.jpg) center top no-repeat;
  background-size: cover;
  flex-basis: 100%;
  height: 100vw;
  margin: 0 auto;
  max-height: 640px;
  max-width: 640px;
}

.aboutus-education-fig {
  margin: 20px auto 0;
  max-width: 450px;
}

.aboutus-education-img {
  display: block;
  width: 100%;
}

.aboutus-education-box-txt {
  flex-basis: 100%;
  padding: 30px 0 0;
}

.aboutus-education-h3 {
  margin-bottom: 20px;
  text-align: center;
}

.aboutus-education-box-lines {
  line-height: 2.67;
}



@media only screen and (min-width: 640px) {

}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .aboutus-education-box {
    flex-flow: row-reverse nowrap;
    padding: 50px;
  }

  .aboutus-education-box-pht {
    flex-basis: 45%;
    height: auto;
  }

  .aboutus-education-fig {
    flex-basis: 45%;
    height: auto;
    margin: 0;
  }

  .aboutus-education-box-txt {
    flex-basis: 55%;
    padding: 0 30px 0 0;
  }

  .aboutus-education-h3 {
    margin-bottom: 40px;
  }
}
/***** ↑tablet, pc *****/



/*********************************************************************************************
 education
*********************************************************************************************/
.education-box {
  align-items: center;
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  box-sizing: content-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  flex-flow: row wrap;
  -ms-flex-direction: row;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-box-pack: justify;
  justify-content: space-between;
  padding: 30px 20px;
}

.education-box-pht {
  background: url(../img/education-pht-01.jpg) center top no-repeat;
  background-size: cover;
  flex-basis: 100%;
  height: 100vw;
  margin: 0 auto;
  max-height: 640px;
  max-width: 640px;
}

.education-fig {
  margin: 0 auto;
  /*max-width: 450px;*/
}

.education-fig-mgt {
  margin-top: 30px;
}

.education-fig-mgb {
  margin-bottom: 30px;
}

.education-img {
  display: block;
  width: 100%;
}

.education-box-txt {
  flex-basis: 100%;
}

.education-h3 {
  margin-bottom: 20px;
  text-align: center;
}

.education-box-lines {
  line-height: 2.67;
}

.education-logo-box {
  position: relative;
}

.education-logo-01-fig {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: rightToLeft;
  animation-name: rightToLeft;
  height: 55px;
  position: absolute;
  right: -50%;
  top: 0;
  width: 50px;
  z-index: 10;
}

.education-logo-02-fig {
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  animation-iteration-count: infinite;
  -webkit-animation-name: leftToRight;
  animation-name: leftToRight;
  height: 55px;
  left: -50%;
  position: absolute;
  top: 0;
  width: 50px;
  z-index: 10;
}

.education-logo-img {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
  display: block;
  width: 100%;
}




@media only screen and (min-width: 640px) {

}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .education-box {
    flex-flow: row nowrap;
    padding: 50px;
  }

  .education-box-reverse {
    flex-flow: row-reverse nowrap;
  }

  .education-box-pht {
    flex-basis: 45%;
    height: auto;
  }

  .education-fig {
    flex-basis: 45%;
    height: auto;
    margin: 0;
  }

  .education-box-txt {
    flex-basis: 55%;
  }

  .education-box-txt-pdr {
    padding: 0 50px 0 0;
  }

  .education-box-txt-pdl {
    padding: 0 0 0 50px;
  }

  .education-h3 {
    margin-bottom: 40px;
  }

}
/***** ↑tablet, pc *****/



/*********************************************************************************************
 disclosure
*********************************************************************************************/
/***********************************************
 disclosure-complaint-box
************************************************/
.disclosure-complaint-box {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  padding: 30px 20px;
  position: relative;
  text-align: center;
  width: 100%;
}

.disclosure-complaint-box-pht {
  background: url(../img/aboutus-education-pht-01.jpg) center top no-repeat;
  background-size: cover;
  flex-basis: 100%;
  height: 100vw;
  margin: 0 auto;
  max-height: 640px;
  max-width: 640px;
}

.disclosure-complaint-h3 {
  margin-bottom: 20px;
  text-align: center;
}

.disclosure-complaint-box-lines {
  line-height: 2.67;
}

.disclosure-complaint-box-waku {
  margin: 20px auto;
}

.disclosure-complaint-box-waku-1 {
  font-size: 12px;
}

.disclosure-complaint-box-waku-2 {
  padding: 30px 0 0;
}


.disclosure-complaint-box-body-lines {
  line-height: 2.67;
}

.disclosure-complaint-box-outer-1 {
  position: relative;
}

.disclosure-complaint-box-outer-2 {
  position: relative;
}

.disclosure-complaint-box-white-box {
  background: #fff;
  background-size: 11px auto;
  border: 1px solid #6f5436;
  color: #6f5436;
  margin: 0 30px;
  padding: 20px;
  position: relative;
  text-align: left;
  z-index: 1;
}

.disclosure-complaint-box-white-box-strong {
  display: inline-block;
  font-size: 14px;
}

.disclosure-complaint-box-arr-1 {
  border-bottom: 1px solid #6f5436;
  border-right: 1px solid #6f5436;
  border-top: 1px solid #6f5436;
  height: calc(100% - 68px);
  position: absolute;
  right: 0;
  text-align: right;
  top: 34px;
  width: 30px;
}

.disclosure-complaint-box-arr-1::after {
  border-bottom: 5px solid transparent;
  border-right: 10px solid #6f5436;
  border-top: 5px solid transparent;
  bottom: -5.5px;
  box-sizing: border-box;
  content: '';
  display: block;
  font-size: 0;
  left: 0;
  line-height: 0;
  position: absolute;
}

.disclosure-complaint-box-arr-1-txt {
  display: inline-block;
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  writing-mode: vertical-rl;
}

.disclosure-complaint-box-arr-2 {
  position: relative;
}

.disclosure-complaint-box-arr-2::after {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 10px solid #6f5436;
  bottom: 0;
  box-sizing: border-box;
  content: '';
  display: block;
  font-size: 0;
  left: calc(50% - 5px);
  line-height: 0;
  position: absolute;
}

.disclosure-complaint-box-arr-2-txt {
  border-right: 1px solid #6f5436;
  margin-right: -.5px;
  padding: 20px;
  text-align: right;
  width: 50%;
}


.disclosure-complaint-box-arr-3 {
  border-bottom: 1px solid #6f5436;
  border-left: 1px solid #6f5436;
  border-top: 1px solid #6f5436;
  height: calc(100% - 68px);
  position: absolute;
  left: 0;
  text-align: left;
  top: 34px;
  width: 30px;
}

.disclosure-complaint-box-arr-3::after {
  border-bottom: 5px solid transparent;
  border-left: 10px solid #6f5436;
  border-top: 5px solid transparent;
  bottom: -5.5px;
  box-sizing: border-box;
  content: '';
  display: block;
  font-size: 0;
  right: 0;
  line-height: 0;
  position: absolute;
}

.disclosure-complaint-box-arr-3-txt {
  display: inline-block;
  left: 0px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  writing-mode: vertical-lr;
}

.disclosure-complaint-box-arr-4 {
  position: relative;
}

.disclosure-complaint-box-arr-4::after {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 10px solid #6f5436;
  bottom: 0;
  box-sizing: border-box;
  content: '';
  display: block;
  font-size: 0;
  left: calc(50% - 5px);
  line-height: 0;
  position: absolute;
}

.disclosure-complaint-box-arr-4-txt {
  border-right: 1px solid #6f5436;
  margin-right: -.5px;
  padding: 20px;
  text-align: right;
  width: 50%;
}

.disclosure-complaint-box-arr-5 {
  position: relative;
}

.disclosure-complaint-box-arr-5::after {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 10px solid #6f5436;
  bottom: 0;
  box-sizing: border-box;
  content: '';
  display: block;
  font-size: 0;
  left: calc(50% - 5px);
  line-height: 0;
  position: absolute;
}

.disclosure-complaint-box-arr-5-txt {
  border-right: 1px solid #6f5436;
  margin-right: -.5px;
  padding: 20px;
  text-align: right;
  width: 50%;
}

.disclosure-complaint-box-ul {
  margin: 0 0 0 10px;
}

.disclosure-complaint-box-ul-li {
  line-height: 2;
  margin: 10px 0 0;
  padding-left: 15px;
  position: relative;
}

.disclosure-complaint-box-ul-li::before {
  border-bottom: 5px solid transparent;
  border-left: 7px solid #c82c55;
  border-top: 5px solid transparent;
  box-sizing: border-box;
  content: '';
  left: 0;
  position: absolute;
  top: .6em;
}

.disclosure-complaint-disc-ul-li {
  margin-bottom: 15px;
}


@media only screen and (min-width: 640px) {
  .disclosure-complaint-box-white-box {
    margin: 0 120px;
  }

  .disclosure-complaint-box-white-box-strong {
    font-size: 20px;
  }

  .disclosure-complaint-box-arr-1 {
    height: calc(100% - 75px);
    top: 37px;
    width: 120px;
  }

  .disclosure-complaint-box-arr-1-txt {
    right: 20px;
  }

  .disclosure-complaint-box-arr-3 {
    height: calc(100% - 75px);
    top: 37px;
    width: 120px;
  }

  .disclosure-complaint-box-arr-3-txt {
    left: 20px;
  }

}


/***** ↓tablet, pc *****/
@media only screen and (min-width: 769px) {

}

@media only screen and (min-width: 1070px) {
  .disclosure-complaint-box {
    padding: 50px;
  }

  .disclosure-complaint-h3 {
    margin-bottom: 40px;
  }


  .disclosure-complaint-box-waku {
    display: table;
    margin: 40px auto;
    width: 100%;
  }

  .disclosure-complaint-box-waku-1 {
    display: table-cell;
    font-size: 14px;
    padding: 0 25px 0 0;
  }

  .disclosure-complaint-box-waku-2 {
    display: table-cell;
    padding: 0 0 0 25px;
  }

  .disclosure-complaint-box-outer-1 {

  }

  .disclosure-complaint-box-body-txt {
    flex-basis: 50%;
    padding-top: 200px;
  }

  .disclosure-complaint-box-white-box {
    margin: 0 80px;
  }

  .disclosure-complaint-box-arr-1 {
    width: 80px;
  }

  .disclosure-complaint-box-arr-3 {
    width: 80px;
  }
}
/***** ↑tablet, pc *****/


/***********************************************
 disclosure-report-box
************************************************/
.disclosure-report-box {
  background: #fcfaf2;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  padding: 30px 20px;
  position: relative;
  width: 100%;
}

.disclosure-report-h3 {
  margin-bottom: 20px;
}

.disclosure-report-box-fig {
  margin: 0 auto 20px;
  max-width: 450px;
}

.disclosure-report-box-img {
  display: block;
  width: 100%;
}

.disclosure-report-box-body-txt {
  flex-basis: 100%;
  padding: 80px 30px 0;
}

.disclosure-report-box-h4 {
  font-style: italic;
  /*line-height: 1.8;*/
}

.disclosure-report-box-body-lines {
  line-height: 2.67;
}

.list-disclosure-report-ul {
  list-style-type: none;
}

.list-disclosure-report-ul-li {
  list-style-type: none;
  position: relative;
}

.link-pdf {
  background: url(../img/icon-pdf-red.png) left top .7em no-repeat;
  background-size: auto 1.2em;
  display: inline-block;
  padding-left: 1.5em;
}



/***** ↓tablet, pc *****/
@media only screen and (min-width: 769px) {

}

@media only screen and (min-width: 1070px) {
  .disclosure-report-box {
    display: table;
    padding: 50px;
    width: 100%;
  }

  .disclosure-report-h3 {
    margin-bottom: 40px;
  }

  .disclosure-report-box-body {
    flex-flow: row nowrap;
  }

  .disclosure-report-box-fig {
    display: table-cell;
    padding: 0 50px 0 0;
    vertical-align: middle;
    width: 50%;
  }

  .disclosure-report-box-txt {
    display: table-cell;
    vertical-align: top;
    width: 50%;
  }
}

/***** ↑tablet, pc *****/



/*********************************************************************************************
 misc
*********************************************************************************************/
.clearfix {
  *zoom: 1;
}

.clearfix::before,
.clearfix::after {
  content: "";
  display: table;
  line-height: 0;
}

.clearfix::after {
  clear: both;
}

.color-red {
  color: #dc143c;
}

.talc {
  text-align: center;
}

.tall {
  text-align: left;
}

.talr {
  text-align: right;
}

.ilb {
  display: inline-block;
}

.dspn {
  display: none;
}

.mgnt20 {
  margin-top: 20px;
}

.mgnb5 {
  margin-bottom: 5px;
}

.w100prc {
  width: 100%;
}

.br-pc {
  display: none;
}

.dspb-pc {
  display: none;
}

.dspb-sp {
  display: block;
}

.fszm {
  font-size: 85.7%;
}

.fszs {
  font-size: 75%;
}

/***** ↓tablet, pc *****/
@media only screen and (min-width: 1070px) {
  .br-pc {
    display: inline-block;
  }

  .dspb-pc {
    display: block;
  }

  .dspb-sp {
    display: none;
  }
}
/***** ↑tablet, pc *****/


/*********************************************************************************************
 animation
*********************************************************************************************/
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}

@-webkit-keyframes fadeInOut {
  0% {
    opacity: 0;
  }

  35% {
    opacity: 1;
  }

  70% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeInOut {
  0% {
    opacity: 0;
  }

  35% {
    opacity: 1;
  }

  70% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

.fadeInOut {
  -webkit-animation-name: fadeInOut;
  animation-name: fadeInOut;
}


@-webkit-keyframes fadeInOpen {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

@keyframes fadeInOpen {
  0% {
    display: none;
    opacity: 0;
  }

  1% {
    display: block;
    opacity: 0;
  }

  100% {
    display: block;
    opacity: 1;
  }
}

.fadeInOpen {
  -webkit-animation-name: fadeInOpen;
  animation-name: fadeInOpen;
}


@-webkit-keyframes fadeOutClose {
  0% {
    display: block;
    opacity: 1;
  }

  100% {
    display: none;
    opacity: 0;
  }
}

@keyframes fadeOutClose {
  0% {
    display: block;
    opacity: 1;
  }

  100% {
    display: none;
    opacity: 0;
  }
}

.fadeOutClose {
  -webkit-animation-name: fadeOutClose;
  animation-name: fadeOutClose;
}

/* fuwafuwa */
@-webkit-keyframes fuwafuwa {
  0% {
    transform: translateY(0);
  }

  25% {
    transform: translateY(-20px);
  }

  50% {
    transform: translateY(20px);
  }

  75% {
    transform: translateY(-20px);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes fuwafuwa {
  0% {
    transform: translateY(0);
  }

  25% {
    transform: translateY(-20px);
  }

  50% {
    transform: translateY(20px);
  }

  75% {
    transform: translateY(-20px);
  }

  100% {
    transform: translateY(0);
  }
}

.fuwafuwa {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: fuwafuwa;
  animation-name: fuwafuwa;
}

/* pakapaka */
@-webkit-keyframes pakapaka {
  0% {
    transform: translateY(0) rotate(-5deg);
  }

  10% {
    transform: translateY(-10px) rotate(0deg);
  }

  20% {
    transform: translateY(0) rotate(5deg);
  }

  100% {
    transform: translateY(0) rotate(-5deg);
  }
}

@keyframes pakapaka {
  0% {
    transform: translateY(0) rotate(-5deg);
  }

  10% {
    transform: translateY(-10px) rotate(0deg);
  }

  20% {
    transform: translateY(0) rotate(5deg);
  }

  100% {
    transform: translateY(0) rotate(-5deg);
  }
}

.pakapaka {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: pakapaka;
  animation-name: pakapaka;
}

/* pyonpyon */
@-webkit-keyframes pyonpyon {
  0% {
    transform: translateY(0) rotate(5deg);
  }

  10% {
    transform: translateY(-10px) rotate(0deg);
  }

  20% {
    transform: translateY(0) rotate(-5deg);
  }

  100% {
    transform: translateY(0) rotate(5deg);
  }
}

@keyframes pyonpyon {
  0% {
    transform: translateY(0) rotate(5deg);
  }

  10% {
    transform: translateY(-10px) rotate(0deg);
  }

  20% {
    transform: translateY(0) rotate(-5deg);
  }

  100% {
    transform: translateY(0) rotate(5deg);
  }
}

.pyonpyon {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: pyonpyon;
  animation-name: pyonpyon;
}

/* yurayura */
@-webkit-keyframes yurayura {
  0% {
    transform: rotate(0deg);
  }

  25% {
    transform: rotate(-15deg);
  }

  75% {
    transform: rotate(15deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

@keyframes yurayura {
  0% {
    transform: rotate(0deg);
  }

  25% {
    transform: rotate(-15deg);
  }

  75% {
    transform: rotate(15deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

.yurayura {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: yurayura;
  animation-name: yurayura;
  transform: rotate(-15deg);
}

/* downAndUp */
@-webkit-keyframes downAndUp {
  0% {
    top: 0%;
  }

  10% {
    left: -20px;
  }

  20% {
    left: 0;
  }

  30% {
    left: -20px;
  }

  40% {
    left: 0;
  }

  50% {
    left: -20px;
    top: 100%;
  }

  60% {
    left: 0;
  }

  70% {
    left: -20px;
  }

  80% {
    left: 0;
  }

  90% {
    left: -20px;
  }

  100% {
    top: 0%;
  }
}

@keyframes downAndUp {
  0% {
    top: 0%;
  }

  10% {
    left: -20px;
  }

  20% {
    left: 0;
  }

  30% {
    left: -20px;
  }

  40% {
    left: 0;
  }

  50% {
    left: -20px;
    top: 100%;
  }

  60% {
    left: 0;
  }

  70% {
    left: -20px;
  }

  80% {
    left: 0;
  }

  90% {
    left: -20px;
  }

  100% {
    top: 0%;
  }
}

.downAndUp {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: downAndUp;
  animation-name: downAndUp;
  top: 0%;
}

/* upAndDown */
@-webkit-keyframes upAndDown {
  0% {
    bottom: 0%;
  }

  10% {
    right: -10px;
  }

  20% {
    right: 10px;
  }

  30% {
    right: -10px;
  }

  40% {
    right: 10px;
  }

  50% {
    bottom: 100%;
    right: -10px;
  }

  60% {
    right: 10px;
  }

  70% {
    right: -10px;
  }

  80% {
    right: 10px;
  }

  90% {
    right: -10px;
  }

  100% {
    bottom: 0%;
  }
}

@keyframes upAndDown {
  0% {
    bottom: 0%;
  }

  10% {
    right: -20px;
  }

  20% {
    right: 0;
  }

  30% {
    right: -20px;
  }

  40% {
    right: 0;
  }

  50% {
    bottom: 100%;
    right: -20px;
  }

  60% {
    right: 0;
  }

  70% {
    right: -20px;
  }

  80% {
    right: 0;
  }

  90% {
    right: -20px;
  }

  100% {
    bottom: 0%;
  }
}

.upAndDown {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: upAndDown;
  animation-name: upAndDown;
  bottom: 0%;
}

/* rightToLeft */
@-webkit-keyframes rightToLeft {
  0% {
    right: -50%;
  }

  10% {
    top: -10px;
  }

  20% {
    top: 10px;
  }

  30% {
    top: -10px;
  }

  40% {
    top: 10px;
  }

  50% {
    top: -10px;
  }

  60% {
    top: 10px;
  }

  70% {
    top: -10px;
  }

  80% {
    top: 10px;
  }

  90% {
    top: -10px;
  }

  100% {
    right: 150%;
    top: 0;
  }
}

@keyframes rightToLeft {
  0% {
    right: -50%;
  }

  10% {
    top: -10px;
  }

  20% {
    top: 10px;
  }

  30% {
    top: -10px;
  }

  40% {
    top: 10px;
  }

  50% {
    top: -10px;
  }

  60% {
    top: 10px;
  }

  70% {
    top: -10px;
  }

  80% {
    top: 10px;
  }

  90% {
    top: -10px;
  }

  100% {
    right: 150%;
    top: 0;
  }
}

.rightToLeft {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: rightToLeft;
  animation-name: rightToLeft;
  right: -50%;
}

/* leftToRight */
@-webkit-keyframes leftToRight {
  0% {
    left: -50%;
  }

  10% {
    top: -10px;
  }

  20% {
    top: 10px;
  }

  30% {
    top: -10px;
  }

  40% {
    top: 10px;
  }

  50% {
    top: -10px;
  }

  60% {
    top: 10px;
  }

  70% {
    top: -10px;
  }

  80% {
    top: 10px;
  }

  90% {
    top: -10px;
  }

  100% {
    left: 150%;
    top: 0;
  }
}

@keyframes leftToRight {
  0% {
    left: -50%;
  }

  10% {
    top: -10px;
  }

  20% {
    top: 10px;
  }

  30% {
    top: -10px;
  }

  40% {
    top: 10px;
  }

  50% {
    top: -10px;
  }

  60% {
    top: 10px;
  }

  70% {
    top: -10px;
  }

  80% {
    top: 10px;
  }

  90% {
    top: -10px;
  }

  100% {
    left: 150%;
    top: 0;
  }
}

.leftToRight {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: leftToRight;
  animation-name: leftToRight;
  left: -50%;
}


/* migiKurukuru */
@-webkit-keyframes migiKurukuru {
  0% {
    transform: rotate(0);
    animation-timing-function: linear;
  }

  100% {
    transform: rotate(360deg);
    animation-timing-function: linear;
  }
}

@keyframes migiKurukuru {
  0% {
    transform: rotate(0);
    animation-timing-function: linear;
  }

  100% {
    transform: rotate(360deg);
    animation-timing-function: linear;
  }
}

.migiKurukuru {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: migiKurukuru;
  animation-name: migiKurukuru;
  transform: rotate(0);
}

/* hidariKurukuru */
@-webkit-keyframes hidariKurukuru {
  0% {
    transform: rotate(0);
    animation-timing-function: linear;
  }

  100% {
    transform: rotate(-360deg);
    animation-timing-function: linear;
  }
}

@keyframes hidariKurukuru {
  0% {
    transform: rotate(0);
    animation-timing-function: linear;
  }

  100% {
    transform: rotate(-360deg);
    animation-timing-function: linear;
  }
}

.hidariKurukuru {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: hidariKurukuru;
  animation-name: hidariKurukuru;
  transform: rotate(0);
}

/* dancingHeart */
@-webkit-keyframes dancingHeart {
from,
  20%,
  53%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(5px, -30px, 0) scaleY(1.1);
    transform: translate3d(5px, -30px, 0) scaleY(1.1);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(-5px, -15px, 0) scaleY(1.05);
    transform: translate3d(-5px, -15px, 0) scaleY(1.05);
  }

  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}

@keyframes dancingHeart {
from,
  20%,
  53%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(5px, -30px, 0) scaleY(1.1);
    transform: translate3d(5px, -30px, 0) scaleY(1.1);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(-5px, -15px, 0) scaleY(1.05);
    transform: translate3d(-5px, -15px, 0) scaleY(1.05);
  }

  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}

.dancingHeart {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: dancingHeart;
  animation-name: dancingHeart;
}

/* bounce */
@-webkit-keyframes bounce {
  from,
  20%,
  53%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
    transform: translate3d(0, -30px, 0) scaleY(1.1);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
    transform: translate3d(0, -15px, 0) scaleY(1.05);
  }

  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}
@keyframes bounce {
  from,
  20%,
  53%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
    transform: translate3d(0, -30px, 0) scaleY(1.1);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
    transform: translate3d(0, -15px, 0) scaleY(1.05);
  }

  80% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }

  90% {
    -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}
.animate__bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}


@media screen and (min-width: 768px) {
  .fig2img {
    padding-left: 1em;
    padding-right: 1em;
  }

  .fig2img:not(.two-column) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-left: 1em;
    padding-right: 1em;
  }

  .fig2img:not(.two-column) > img {
    margin: 3.636364% 0 0;
    width: 48.181818%;
  }

  .fig2img:not(.two-column) > img:nth-child(-n+2) {
    margin-top: 0;
  }

  .fig2img:not(.two-column) > img.fullWidth1 {
    max-width: none;
    width: 100%;
  }
}

.fig2img {
  margin: 4em 0 6em;
  padding: 0;
  line-height: 1;
}

.fig2img:last-child {
  margin-bottom: 0;
}

.fig2img > img {
  display: block;
  margin: 0 auto 1.5em;
  border: 4px solid #fe8c8e;
}

.fig2img > img:last-child {
  margin-bottom: 0;
}

.fig2img.two-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.fig2img.two-column > img {
  margin: 3.636364% 0 0;
  width: 48.181818%;
}

.fig2img.two-column > img:nth-child(-n+2) {
  margin-top: 0;
}

.text-link {
	text-decoration: underline;
	color:blue;
}
