@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:200,300,400,500,700&subset=japanese");
.headingModule03 {
  display: block;
  text-align: center;
}

.headingModule03 span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px calc(33px - .1em) 16px 33px;
  min-height: 80px;
  background: #FFF;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.888888889;
  letter-spacing: .1em;
  position: relative;
}

@media screen and (max-width: 374px) {
  .headingModule03 span {
    font-size: 4.8vw;
  }
}

.fadeInUp2 {
  opacity: 0;
  transform: translateY(25px);
  transition: transform .5s ease-out, opacity .5s ease;
}

.fadeInUp2.animated {
  opacity: 1;
  transform: none;
}

@media screen and (max-width: 767px) {
  .pcOnly {
    display: none !important;
  }
  img {
    max-width: 100%;
    /* width: 100%; */
    height: auto;
  }
  #content.min {
    margin: 70px 0 0 !important;
  }
}

@media screen and (min-width: 768px), print {
  .smOnly {
    display: none !important;
  }
  #wrap {
    height: auto;
    width: 100%;
    overflow: hidden;
  }
  body:not(.home) #content {
    margin-top: 240px;
  }
  #content.min {
    margin: 118px 0 0 !important;
  }
  #wrap {
    position: relative;
  }
}

body {
  letter-spacing: 0.05em;
  text-align: justify;
  text-justify: inter-ideograph;
  background-image: url(../img/common/ptn-base.jpg);
  background-size: 547px;
  background-repeat: repeat;
  background-position: 0 0;
}

b, strong {
  font-weight: 700;
}

@keyframes toplogo {
  10% {
    top: -70px;
  }
  70% {
    top: 20px;
  }
  100% {
    top: 0px;
  }
}

@keyframes toplogomin {
  10% {
    top: -40px;
  }
  70% {
    top: 10px;
  }
  100% {
    top: 0px;
  }
}

.locked .header .absoluteSNSLinks {
  opacity: 0;
  transition: 0.5s ease-in-out;
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
}

body.home .headerModule01 {
  opacity: 0;
  /*		top : -100px;*/
  transition: 1.2s ease-in-out;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
}

body.home canvas {
  opacity: 0;
  transition: 1.2s ease-in-out;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
}

body.home .mainVisulalModule .ico01 {
  display: none;
  opacity: 0;
  transition: 1.2s ease-in-out;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
}

body.home.in1 .headerModule01 {
  animation: toplogo 2s ease-out forwards;
  /*			top : 0;*/
}

body.home.in1 canvas {
  opacity: 1;
}

body.home.in1 .mainVisulalModule .ico01 {
  display: block;
}

body.home .headerModule02 {
  right: -100px;
  transition: 1.2s ease-in-out;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
}

body.home .sideNaviModule01 {
  right: -150px;
  transition: 1.2s ease-in-out;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
}

body.home.in2 .headerModule02 {
  right: 0;
}

body.home.in2 .sideNaviModule01 {
  right: 0;
}

body.home.in2 .mainVisulalModule .newsBox, .emgBox {
  display: block;
}

body.home.in2 .copyBox,
body.home.in2 .copyBox2 {
  display: block;
  opacity: 1;
}

body.home .copyBox,
body.home .copyBox2 {
    display: none;
}

body.home .copyBox span {
  position: relative;
}

body.home .copyBox span:nth-of-type(1) {
  opacity: 0;
  top: 30px;
  transform-origin: left bottom;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
}
.mainVisulalModule .copyBox2{
  left: 60%;
  transform-origin: left bottom;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
}

body.home .copyBox span:nth-of-type(2) {
  opacity: 0;
  top: 30px;
  transform-origin: left bottom;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
  -o-transition: 1.2s ease-in-out;
  transition: 1.2s ease-in-out;
  transition-delay: 0.1s;
}

body.home .copyBox span:nth-of-type(3) {
  opacity: 0;
  top: 30px;
  transform-origin: left bottom;
  -webkit-transition: 1.4s ease-in-out;
  -moz-transition: 1.4s ease-in-out;
  -o-transition: 1.4s ease-in-out;
  transition: 1.4s ease-in-out;
  transition-delay: 0.2s;
}

body.home .copyBox span:nth-of-type(4) {
  opacity: 0;
  top: 30px;
  transform-origin: left bottom;
  -webkit-transition: 1.6s ease-in-out;
  -moz-transition: 1.6s ease-in-out;
  -o-transition: 1.6s ease-in-out;
  transition: 1.6s ease-in-out;
  transition-delay: 0.3s;
}

body.home.in3 .copyBox span {
  top: 0px;
  margin: 8px 0 0;
  opacity: 1;
  transform: scale(1, 1);
  transform-origin: left center;
  position: relative;
  padding: .1em .4em calc(.1em + 10px);
}
body.home.in3 .copyBox span::before{
  position: absolute;
    top: -4px;
    left: -4px;
    width: 100%;
    height: 100%;
    content: '';
    border: 5px dotted #009fe8;
}

body.home .mainVisulalModule .newsBox, .emgBox {
  transition: 1.2s ease-in-out;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
  opacity: 0;
}

body.home.in4 .mainVisulalModule .newsBox {
  opacity: 1;
}

body.home.in4 .mainVisulalModule .ico01, body.home.in4 .mainVisulalModule .ico02 {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  body.home .headerModule01 .logo {
    width: 300px;
    max-width: 300px;
    margin: 0 auto;
    height: auto;
    padding: 0 0 50px;
  }
  body.home .headerModule01 .logo img {
    width: 100%;
    max-width: 136px;
    position: relative;
    top: 20px;
  }
  body.home .toggleMenu {
    right: -80px;
    transition: 1.2s ease-in-out;
    -webkit-transition: 1.2s ease-in-out;
    -moz-transition: 1.2s ease-in-out;
  }
  body.home .absoluteSNSLinks {
    position: absolute !important;
    left: -50px;
    transition: 1.2s ease-in-out;
    -webkit-transition: 1.2s ease-in-out;
    -moz-transition: 1.2s ease-in-out;
  }
  body.home .mainVisulalModule .newsBox {
    bottom: 50px;
    opacity: 0;
  }
  body.home .mainVisulalModule .ico02 {
    display: none;
    opacity: 0;
    transition: 1.2s ease-in-out;
    -webkit-transition: 1.2s ease-in-out;
    -moz-transition: 1.2s ease-in-out;
  }
  body.home.in1 .headerModule01 {
    opacity: 1;
    z-index: 5;
  }
  body.home.in1 .mainVisulalModule .ico02 {
    display: block;
  }
  body.home.in1 .absoluteSNSLinks {
    left: 16px;
  }
  body.home.in1 .toggleMenu {
    right: 0px;
  }
  body.home.in2 .copyBox {
    position: absolute;
    top: 65%;
    left: 20px;
    transform: translate(0%, -100%);
  }
  body.home.in4 .mainVisulalModule .newsBox {
    bottom: 30px;
    opacity: 1;
  }
  body.home.in2 .copyBox2{
    position: relative;
    top: 15%;
    left: 8%;
    color: #FFF;
    background: #007FEB;
    padding: .5rem 2rem .5rem 2rem;
    border-radius: 100vh 0 0 100vh;

  }
  body.home.in2 .copyBox2 h2{
    font-size: 14px;
    font-size: 5vw;
    padding: 0 5px;
  }
  body.home.in2 .copyBox2 p{
    font-size: 12px;
    font-size: 4vw;
    padding: 0 5px;
  }

}

@media screen and (max-width: 320px) {
  body.home .headerModule01 .logo {
    width: 210px;
    max-width: 210px;
    margin: 0 auto;
    height: auto;
    padding: 0 0 50px;
  }
  body.home .headerModule01 .logo img {
    width: 100%;
    max-width: 95px;
    position: relative;
    top: 20px;
  }
  body.home .mainVisulalModule .copyBox span {
    font-size: 14px;
    font-size: 5vw;
    padding: 0 10px;
  }
  body.home.in3 .copyBox span::before{
    top: -3px;
    left: -3px;
    border: 2px dotted #009fe8;
  }
  body.home .mainVisulalModule .newsBox .titWrap .tit {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
  body.home .mainVisulalModule .newsBox .titWrap small {
    font-size: 9px;
    font-size: 2.4vw;
  }
  body.home .mainVisulalModule .newsBox .topNewsList {
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
  body.home .mainVisulalModule .newsBox .topNewsList a {
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
  body.home.in1 .headerModule01 {
    animation: toplogomin 2s ease-out forwards;
  }
  body.home.in2 .copyBox {
    transform: translate(0%, -90%);
    top: 60%;
  }
}

@media screen and (min-width: 768px), print {
  body.home.in1 .headerModule01 {
    opacity: 1;
  }
  body.home .mainVisulalModule .newsBox {
    bottom: 100px;
    opacity: 0;
  }
  body.home.in4 .mainVisulalModule .newsBox {
    bottom: 140px;
    opacity: 1;
    padding: 7px 30px 9px;
    bottom: 244px;
    height: 50px;
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 30px;
    position: absolute;
  }
}


/*mainMenu
--------------------------------------------*/

#mainMenu.active {
  top: 50px;
  right: 0;
  display: block;
  opacity: 1;
  height: 100%;
}

#mainMenu::-webkit-scrollbar {
  display: none;
}

#mainMenu {
  opacity: 1;
  z-index: 999;
  transition: all 1s;
  position: fixed;
  top: 50px;
  right: -100%;
  /*   right : 0;*/
  width: 100%;
  background: #E2E54E;
  overflow-y: auto;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  padding: 0 0 70px;
}

#mainMenu.active {
  top: 50px;
  /*
    height: 100vh;
    min-height : calc(100vh + 87px);
    */
}

#mainMenu .inner {
  padding: 30px 20px 0px;
}

#mainMenu .inner .search_box {
  background: #fff;
  font-size: 15px;
  width: 82%;
  height: 36px;
  line-height: 36px;
  border: none;
}

#mainMenu .inner .btn_search {
  height: 36px;
  background: #fff;
  border: none;
}

#mainMenu .inner .list01 {
  overflow: hidden;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

#mainMenu .inner .list01 li {
  width: 50%;
}

#mainMenu .inner .list01 li a {
  position: relative;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 15px;
  color: #111;
  line-height: 2;
  display: block;
  padding: 15px 5px 15px 30px;
}

#mainMenu .inner .list01 li a.icoHome:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin: -9px 0 0 0;
  width: 18px;
  height: 17px;
  background: url(../../assets/img/common/ico_home01.svg) repeat-x top left;
  background-size: 18px 17px;
}

#mainMenu .inner .list01 li a.icoLogin:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin: -9px 0 0 0;
  width: 20px;
  height: 18px;
  background: url(../../assets/img/common/ico_login01.svg) repeat-x top left;
  background-size: 20px 18px;
}

#mainMenu .inner .list02 {
  overflow: hidden;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -21px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

#mainMenu .inner .list02:after {
  content: "";
  display: block;
  width: 50%;
  border: 1px solid #fff;
}

#mainMenu .inner .list02 li {
  width: 50%;
  float: left;
  border: 1px solid #fff;
}

#mainMenu .inner .list02 li a {
  position: relative;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: #111;
  line-height: 2;
  display: block;
  padding: 15px 5px 15px 30px;
}

#mainMenu .inner .list02 li a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 15px;
  margin: -5px 0 0;
  display: block;
  width: 7px;
  height: 12px;
  background: url(../../assets/img/common/ico_arrow01.svg);
  background-size: cover;
}

#mainMenu .inner .list03 {
  overflow: hidden;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 10px 0 0;
}

#mainMenu .inner .list03 li {
  width: 50%;
  float: left;
}

#mainMenu .inner .list03 li a {
  position: relative;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 15px;
  color: #111;
  line-height: 2;
  display: block;
  padding: 15px 5px 15px 30px;
}

#mainMenu .inner .list03 li a.icoAccount:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  margin: -9px 0 0;
  width: 20px;
  height: 18px;
  background: url(../../assets/img/common/ico_account01.svg) repeat-x top left;
  background-size: 20px 18px;
}

#mainMenu .inner .list03 li a.icoMember:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  margin: -9px 0 0;
  width: 20px;
  height: 18px;
  background: url(../../assets/img/common/ico_member01.svg) repeat-x top left;
  background-size: 20px 18px;
}

#mainMenu .inner .menu01 {
  margin: 0;
}


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

@media screen and (max-width: 767px) {
  .header .absoluteSNSLinks {
    position: absolute;
  }
}

@media screen and (min-width: 768px), print {
  .header {
    min-height: 88px;
    z-index: 11;
  }
  .header:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    background: #fff;
    height: 88px;
    width: 100%;
  }
  .header .headerLogo {
    width: 220px;
    height: 189px;
    background: url(../../assets/img/common/bg_header01_pc.png) no-repeat top left;
    background-size: 961px 189px;
  }
}


/*-----------------------
.footNav
-----------------------*/

.footNav.isOpened2, .footNav.isOpened3 {
  bottom: 0px;
}

.footNav.isOpened3 .pic01 {
  background: url(../../assets/img/common/ico_nav01_close.png) no-repeat top center !important;
  background-size: contain !important;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .footNav {
    position: fixed;
    bottom: -60px;
    left: 0;
    width: 100%;
    height: 60px;
    background: #009fe8;
    z-index: 9999;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .footNav .menu01 {
    width: 100%;
    height: 60px;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .footNav .menu01 li {
    position: relative;
    width: 20%;
  }
  .footNav .menu01 li span {
    display: inline-block;
    text-indent: -9999px;
  }
  .footNav .menu01 li a {
    position: relative;
    display: block;
    width: 100%;
    height: 60px;
  }
  .footNav .menu01 li a.pic01 {
    background: url(../img/common/ico_nav01.png) no-repeat top center;
    background-size: contain;
    z-index: 1;
  }
  .footNav .menu01 li a.pic02 {
    background: url(../img/common/ico_nav02.png) no-repeat top center;
    background-size: contain;
    z-index: 1;
  }
  .footNav .menu01 li a.pic03 {
    background: url(../img/common/ico_nav03.png) no-repeat top center;
    background-size: contain;
    z-index: 1;
  }
  .footNav .menu01 li a.pic04 {
    background: url(../img/common/ico_nav04.png) no-repeat top center;
    background-size: contain;
    z-index: 1;
  }
  .footNav .menu01 li a.pic05 {
    background: url(../img/common/ico_nav05.png) no-repeat top center;
    background-size: contain;
    z-index: 1;
  }
  .footNav .menu01 li:after {
    content: "";
    display: block;
    position: absolute;
    top: 10px;
    right: -1px;
    width: 2px;
    height: 40px;
    background: url(../../assets/img/common/border02_white.png) repeat-y left top;
  }
  .footNav .menu01 li:last-of-type:after {
    display: none;
  }
}


/*-----------------------
.headerModule01
-----------------------*/

.headerModule01 {
  position: relative;
}

.headerModule01 .logo {
  margin: 0 auto;
  width: 187px;
  background: url(../../assets/img/common/bg_header-logo_sp.svg) no-repeat top center;
  background-size: contain;
  z-index: 9;
  position: absolute;
  top: 0px;
  right: 0;
  left: 0;
}

@media screen and (max-width: 320px) {
  .headerModule01 {
    top: 14px;
  }
  .headerModule01 .logo {
    margin: 0 auto;
    width: 49.8666666667vw;
    height: 34.6666666667vh;
    max-width: 187px;
  }
  .headerModule01 .logo img {
    display: block;
    width: 25.6506666667vw;
    margin: 10px auto;
    max-width: 96px;
  }
}

@media screen and (max-width: 767px) {
  .headerModule01 {
    top: 14px;
  }
  .headerModule01 .logo {
    height: 130px;
  }
  .headerModule01 .logo img {
    display: block;
    width: 96px;
    margin: 10px auto 0;
  }
}

@media screen and (min-width: 768px), print {
  .headerModule01 {
    z-index: 2;
  }
  .headerModule01 .logo {
    /* margin: 0 auto;
    height: 260px;
    width: 300px;
    background: url(../../assets/img/common/bg_header-logo02_pc.svg) no-repeat top 20px center; */
    z-index: 1;
    /* position: absolute;
    top: 0px;
    right: 0;
    left: 0;
    max-width: auto !important; */
    text-align: center;
  }
  .headerModule01 .logo img {
    margin: 15px 0 0;
    width: 190px;
  }
  .headerModule01 .menuList01 {
    position: absolute;
    display: flex;
    justify-content: space-between;
    top: 30px;
    left: 50%;
    width: 1100px;
    margin: 0 0 0 -550px;
  }
  .headerModule01 .menuList01 li {
    display: block;
    /* float: left; */
    width: 15%;
    position: relative;
    /* margin: 0 70px 0 0; */
  }
  .headerModule01 .menuList01 > li:first-child > a {
    border-left: 2px dotted #009fe8;
  }
  .headerModule01 .menuList01 > li:nth-of-type(3) {
    margin: 0 300px 0 0;
  }
  .headerModule01 .menuList01 > li:nth-of-type(4) > a {
    border-left: 2px dotted #009fe8;
  }
  .headerModule01 .menuList01 > li:nth-of-type(6) {
    margin: 0 0px 0 0;
  }
  .headerModule01 .menuList01 > li > a {
    position: relative;
    display: flex;
    flex-direction: column;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.1em;
    border-right: 2px dotted #009fe8;
    padding: 0 5px;
    top: 0;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .headerModule01 .menuList01 > li > a:hover {
    opacity: .5;
    /* top: -10px;
    padding: 0 0 10px; */
  }
  .headerModule01 .menuList01 > li a img{
    width: 70%;
    margin: 0 auto;
  }
  .headerModule01 .menuList01 > li a span{
    font-size: 16px;
  }
  .headerModule01 .menuList01 > li a em{
    display: block;
    color: #493f39;
    font-style: normal;
    font-family: Quicksand, sans-serif;
    font-size: 12px;
    text-transform: uppercase;    
  }
  .headerModule01 .menuList01 > li > ul{
  }
  .headerModule01 .menuList01 > li > ul li{
      display: block;
      width: 160px;
  }
  .headerModule01 .menuList01 > li > ul li a{
    padding: 10px 8px;
    background: #fff;
    display: block;
    border-bottom: 2px dotted #009fe8;
  }
  .headerModule01 .menuList01 > li > ul li a:hover{
    opacity: .8;
  }
  .headerModule01 .menuList01 > li > ul{
    display: none;
  }
  .headerModule01 .menuList01 > li:hover ul{
      display: block;
      position: absolute;
  }


}


/*-----------------------
.headerModule02
-----------------------*/

.headerModule02 {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
}

.headerModule02 .snsLink01 {
  position: relative;
  margin: 40px 20px 0 0;
}

.headerModule02 .snsLink01 li {
  width: 15px;
  margin: 0 0 20px;
}
.headerModule02 .snsLink01 li:last-child {
  width: 15px;
  margin: 0;
}
.headerModule02 .snsLink01 li a {
  display: block;
  position: relative;
  top: 0;
  padding: 10px 0 0px;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.headerModule02 .snsLink01 li a:hover {
  top: 0px;
  padding: 0 0 10px;
}

.headerModule02 .snsLink01 li img {
  width: 100%;
}


/*-----------------------
.sideNaviModule01
-----------------------*/

.sideNaviModule01 {
  position: fixed;
  bottom: 40px;
  right: 0;
  z-index: 4;
}

.sideNaviModule01 .sideLink01 {
  position: relative;
  margin: 0px 0 0 20px;
  overflow: hidden;
}

.sideNaviModule01 .sideLink01 li {
  width: 90px;
  margin: 0 0 10px;
}

.sideNaviModule01 .sideLink01 li a {
  display: block;
  position: relative;
  right: -10px;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.sideNaviModule01 .sideLink01 li a:hover {
  right: 0;
}

.sideNaviModule01 .sideLink01 li img {
  width: 100%;
}


/*-----------------------
.sideNaviModule02
-----------------------*/

.sideNaviModule02 {
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 9px;
  color: #fff;
  position: absolute;
  display: block;
  text-align: center;
  letter-spacing: 0.1em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  top: 420px;
  left: 20px;
  margin: 0px 0px 0 0px;
  line-height: 1.4;
  z-index: 4;
  height: 350px;
}


/*-----------------------
.mainVisulalModule
-----------------------*/

.mainVisulalModule {
  position: relative;
}

.mainVisulalModule .mask01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.mainVisulalModule .mask02 {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.mainVisulalModule .newsBox {
  display: none;
  background: #fff;
  border-radius: 30px;
  position: absolute;
}

.mainVisulalModule .newsBox .titWrap {
  background: url(../../assets/img/common/border01.png) repeat-x left top 12px;
}

.mainVisulalModule .newsBox .titWrap .tit {
  font-size: 13px;
  background: #fff;
  display: inline-block;
}

.mainVisulalModule .newsBox .titWrap .tit small {
  position: relative;
  top: -1px;
  padding: 0 12px 0 10px;
  font-size: 9px;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
}

.mainVisulalModule .newsBox .txt01 {
  display: block;
  margin: 2px 0 0;
  font-size: 13px;
  line-height: 2;
}

.mainVisulalModule .ico01 {
  width: 76px;
  height: 80px;
  background: url(../../assets/img/top/pic_top01.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 10px;
  left: 12px;
  margin: 0 0px 0 0;
  z-index: 2;
}

.mainVisulalModule .ico02 {
  width: 48px;
  height: 82px;
  background: url(../../assets/img/top/pic_top02.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 30px;
  right: 0;
  margin: 0;
  z-index: 2;
}

.mainVisulalModule .slick-slide {
  outline: none;
}

@media screen and (max-width: 767px) {
  .mainVisulalModule {
    /*	height : calc(100vh - 130px);*/
    height: calc(100vh - 100px);
    margin: 100px 0 0;
    overflow: hidden;
  }
  .mainVisulalModule .newsBox {
    display: none;
    background: #fff;
    margin: 0 20px;
    padding: 15px 20px;
    border-radius: 30px;
    position: absolute;
    bottom: 110px;
    width: 92%;
  }
  .mainVisulalModule .newsBox div {
    width: 100%;
  }
  .mainVisulalModule .copyBox {
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translate(0%, -100%);
  }
  .mainVisulalModule .copyBox span {
    font-size: 4vw;
    font-weight: 700;
    background: #fff;
    padding: 0 5px;
    line-height: 2;
    letter-spacing: 0.1em;
    display: inline-block;
    margin: 2px 0;
  }
  .mainVisulalModule .slider .slick-track .box01 {
    background: url(../../assets/img/top/mainimg_top01.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box02 {
    background: url(../../assets/img/top/mainimg_top02.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box03 {
    background: url(../../assets/img/top/mainimg_top03.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box04 {
    background: url(../../assets/img/top/mainimg_top04.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box05 {
    background: url(../../assets/img/top/mainimg_top05.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box06 {
    background: url(../../assets/img/top/mainimg_top06.jpg) no-repeat center;
    background-size: cover;
  }
}

@media screen and (min-width: 768px), print {
  .mainVisulalModule {
    /*		height : calc(100vh - 100px);*/
    height: calc(100vh);
    margin: 180px 0 0;
    overflow: hidden;
  }
  .mainVisulalModule .ico01 {
    width: 142px;
    height: 150px;
    background: url(../../assets/img/top/pic_top01.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 10px;
    left: 8%;
    margin: 0 0px 0 0px;
    z-index: 1;
  }
  .mainVisulalModule .mask01 {
    z-index: 1;
    width: 100%;
  }
  .mainVisulalModule .mask01 img {
    max-width: 100%;
    width: 100%;
  }
  .mainVisulalModule .mask02 {
    z-index: 1;
    width: 100%;
  }
  .mainVisulalModule .mask02 img {
    max-width: 100%;
    width: 100%;
  }
  .mainVisulalModule .copyBox {
    position: absolute;
    top: 30%;
    left: 4%;
    transform: translate(0%, -50%);
    z-index: 1;
  }
  .mainVisulalModule .copyBox2 {
    position: absolute;
    left: 65%;
    z-index: 1;
    right: 0;
  }
  .mainVisulalModule .arrow_box{
    opacity: 0;
    padding: 1rem 2rem 1rem 3rem;
    color: #fff;
    border-radius: 100vh 0 0 100vh;
    background: #007FEB;
  }
  .mainVisulalModule .copyBox span {
    font-size: 26px;
    font-weight: 700;
    background: #fff;
    padding: 0 10px;
    line-height: 1.8;
    letter-spacing: 0.2em;
    display: inline-block;
    margin: 8px 0;
  }
  .mainVisulalModule .copyBox span.copy01 {
    padding: 0 0 0 10px;
  }
  .mainVisulalModule .copyBox span.copy02 {
    padding: 0 10px 0 0;
  }
  .mainVisulalModule .newsBox {
    bottom: 140px;
    width: 882px;
    padding: 7px 30px 9px;
    left: 50%;
    margin: 0 0 0 -560px;
  }
  .mainVisulalModule .newsBox .txt01 {
    /*				padding-left : 240px;*/
    /* width: 780px; */
    /*overflow : hidden;*/
    background: #fff;
    z-index: 2;
    /*
          .slick-track{
          	width : 100%!important;
          }
          */
  }
  .mainVisulalModule .newsBox .titWrap {
    background: none;
    /* width: 220px; */
    z-index: 10;
  }
  .mainVisulalModule .newsBox .titWrap:after {
    /* content: "";
    display: block;
    width: 2px;
    background: url(../../assets/img/common/border02.png) repeat-y left top;
    height: 20px;
    position: absolute;
    left: 212px;
    top: 5px; */
  }
  .mainVisulalModule .slider .slick-track .box01 {
    background: url(../../assets/img/top/mainimg_top01_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box02 {
    background: url(../../assets/img/top/mainimg_top02_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box03 {
    background: url(../../assets/img/top/mainimg_top03_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box04 {
    background: url(../../assets/img/top/mainimg_top04_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box05 {
    background: url(../../assets/img/top/mainimg_top05_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .mainVisulalModule .slider .slick-track .box06 {
    background: url(../../assets/img/top/mainimg_top06_pc.jpg) no-repeat center;
    background-size: cover;
  }
}

.slider {
  display: none;
  height: 100vh;
}

.slider .slick-list {
  height: 100vh !important;
}

.slider .slick-list .slick-track {
  height: 100vh !important;
}

.slider.slick-initialized {
  display: block;
}

.topNewsList .prev {
  display: block;
  position: absolute;
  top: 3px;
  right: -50px;
  width: 9px !important;
  height: 9px !important;
}

.topNewsList .prev img {
  width: 9px;
  height: 9px;
}

.topNewsList .next {
  display: block;
  position: absolute;
  top: 8px;
  right: -50px;
  width: 9px !important;
  height: 9px !important;
}

.topNewsList .next img {
  width: 9px;
  height: 9px;
}

@media screen and (max-width: 767px) {
  .topNewsList .prev {
    display: block;
    position: absolute;
    top: 3px;
    right: -5px;
    width: 9px !important;
    height: 9px !important;
  }
  .topNewsList .prev img {
    width: 9px;
    height: 9px;
  }
  .topNewsList .next {
    display: block;
    position: absolute;
    top: 8px;
    right: -5px;
    width: 9px !important;
    height: 9px !important;
  }
  .topNewsList .next img {
    width: 9px;
    height: 9px;
  }
  .topNewsList .slick-list {
    width: 90% !important;
  }
}

@media screen and (min-width: 768px), print {
  .topNewsList .slick-list {
    /* width: 550px;
    left: 240px; */
    overflow: hidden;
  }
}


/*-----------------------
.topModule01
-----------------------*/

@keyframes bird {
  50% {
    display: block;
    opacity: 1;
    top: 130px;
  }
  100% {
    opacity: 1;
    top: -9px;
  }
}

@keyframes birdsp {
  0% {
    top: 160px;
  }
  50% {
    display: block;
    opacity: 1;
    top: 160px;
  }
  100% {
    opacity: 1;
    top: 40px;
  }
}

.topModule01 {
  position: relative;
}

.topModule01 .tit01 {
  text-align: center;
  position: relative;
}

.topModule01 .tit01 b {
  position: relative;
  display: block;
  z-index: 2;
  width: 200px;
  left: -30px;
  margin: 0 auto;
  letter-spacing: 0.1em;
}

.topModule01 .tit01 small {
  margin-top: 11px;
  font-family: Quicksand, sans-serif;
  font-size: 12px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  position: absolute;
  top: 12px;
  left: 50%;
  margin: 0 0 0 40px;
}

.topModule01 .list01 a {
  overflow: hidden;
  position: relative;
}

.topModule01 .list01 .cate {
  display: block;
  float: left;
  color: #FFF;
  font-size: 11px;
  line-height: 2;
  padding: 0 5px;
  width: 60px;
  text-align: center;
  font-weight: 700;
  background: #009fe8;
}

.topModule01 .list01 .cate.event {
  background: #9ED800;
}

.topModule01 .list01 .cate.saiyo {
  background: #007FEB;
}

.topModule01 .list01 .cate.recruit {
  background: #FABC32;
}

.topModule01 .list01 .txtBox {
  margin: 20px 0 0;
}

.topModule01 .list01 .txtBox .name {
  font-size: 14px;
}

.topModule01 .list01 .txtBox .date {
  display: block;
  margin: 10px 0 0;
  font-size: 12px;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
}

.topModule01 .list01 .photoBox {
  position: relative;
  clear: both;
}

.topModule01 .list01 .photoBox .photo {
  position: relative;
}

.topModule01 .list01 .photoBox .photo:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  border: 0px solid #fff;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.topModule01 .list01 a:hover .photo {
  position: relative;
}

.topModule01 .list01 a:hover .photo:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  border: 10px solid #fff;
}

.topModule01 .ico01 {
  width: 55px;
  height: 68px;
  background: url(../img/top/pic_top03.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 10px;
  left: 50%;
  margin: 0 0px 0 -140px;
  z-index: 0;
}

.topModule01 .ico02 {
  width: 73px;
  height: 140px;
  background: url(../img/top/pic_top04.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 40px;
  left: 46%;
  margin: 0 0px 0 95px;
  z-index: 0;
}

@media screen and (max-width: 767px) {
  .emgBox{
    background: #fff;
    margin: 0 20px;
    padding: 15px 20px;
    width: 92%;
    border: 2px solid red;
  }
  .emgBox .tit{
    display: block;
    font-size: 13px;
    margin-right: 10px;
    color: red;
  }
  .emgBox .txt01{
    display: block;
    margin: 2px 0 0;
    font-size: 13px;
    line-height: 2;
    z-index: 2;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
    color: red;
  }
  .marquee p{
    animation: marquee 10s linear infinite;
    display: inline-block
  }
  @keyframes marquee {
    0% { transform: translateX(0) }
    100% { transform: translateX(-100%) }
  }
  .emgBox .moreBtnWrap{
    text-align: right;
  }
  .emgBox .moreBtn{
    position: relative;
    display: inline-block;
    z-index: 8;
    font-size: 13px;
    font-weight: 700;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .emgBox .moreBtn::after{
    content: "";
    margin: auto 0;
    height: 8px;
    width: 9px;
    background: url(../../assets/img/common/ico_arrow02.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -4px;
    right: -10px;
    bottom: 0;
  }

  .topModule01 {
    padding: 50px 20px;
  }
  .topModule01 .list01 li {
    margin: 30px 0 0;
  }
  .topModule01 .moreBtn {
    position: relative;
    display: block;
    top: 10px;
    width: 140px;
    z-index: 8;
    font-size: 14px;
    font-weight: 700;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
    padding: 0 50px 10px 12px;
    margin: 30px auto;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule01 .moreBtn:after {
    content: "";
    margin: auto 0;
    height: 8px;
    width: 9px;
    background: url(../../assets/img/common/ico_arrow02.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -12px;
    right: 12px;
    bottom: 0;
  }
  .topModule01 .ico02 {
    top: 150px;
    z-index: -1;
    opacity: 0;
  }
  .topModule01 .ico02[data-scroll="in"] {
    animation: birdsp 1s ease-out forwards;
  }
}

@media screen and (min-width: 768px), print {
  .emgBox{
    display: none;
    padding: 7px 30px 9px;
    height: 50px;
    display: flex;
    align-items: center;
    background: #fff;
    width: 68%;
    border: 4px solid red;
    margin: 40px auto 0;
  }
  .emgBox .tit{
    width: 10%;
    margin-right: 20px;
    color: red;
  }
  .emgBox .txt01{
    display: block;
    margin: 2px 0 0;
    font-size: 13px;
    line-height: 2;
    z-index: 2;
    white-space: nowrap;
    width: 80%;
    overflow: hidden;
    color: red;
  }
  .marquee p{
    animation: marquee 10s linear infinite;
    display: inline-block
  }
  @keyframes marquee {
    0% { transform: translateX(0) }
    100% { transform: translateX(-100%) }
  }
  .emgBox .moreBtn{
    position: relative;
    display: block;
    z-index: 8;
    font-size: 14px;
    font-weight: 700;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .emgBox .moreBtn::after{
    content: "";
    margin: auto 0;
    height: 8px;
    width: 9px;
    background: url(../../assets/img/common/ico_arrow02.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -4px;
    right: -20px;
    bottom: 0;
  }
  .topModule01 {
    width: 1126px;
    /* margin: 120px auto; */
    margin: 80px auto 120px;
  }
  .topModule01 .tit01 {
    text-align: left;
    width: 100%;
  }
  .topModule01 .tit01 b {
    text-align: left;
    width: auto;
    left: 70px;
    font-size: 28px;
  }
  .topModule01 .tit01 small {
    top: 15px;
    left: 220px;
    margin: 0 0 0 0px;
  }
  .topModule01 .ico01 {
    width: 70px;
    height: 80px;
    background: url(../img/top/pic_top03.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -40px;
    left: 0;
    margin: 0 0px 0 0px;
    z-index: 0;
  }
  .topModule01 .ico02 {
    width: 145px;
    height: 136px;
    background: url(../img/top/pic_top04.png) no-repeat center;
    background-size: contain;
    position: absolute;
    /*top: -9px;*/
    opacity: 0;
    top: 140px;
    left: 97%;
    margin: 0 0px 0 -120px;
    z-index: 0;
  }
  .topModule01 .ico02[data-scroll="in"] {
    animation: bird 2s ease-out forwards;
    opacity: 1;
  }
  .topModule01 .list01 {
    margin: 50px 0 0;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .topModule01 .list01::after{
    display: block;
    content:"";
    width: 334px;
  }
  .topModule01 .list01 li {
    width: 334px;
  }
  .topModule01 .list01 li .txtBox .date {
    margin: 18px 0 0;
  }
  .topModule01 .list01 li .photo img {
    width: 334px;
    height: 200px;
    object-fit: cover;
    object-position: center;
  }
  .topModule01 .moreBtn {
    position: absolute;
    display: block;
    top: 10px;
    left: 320px;
    z-index: 8;
    font-size: 14px;
    font-weight: 700;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
    padding: 0 50px 10px 12px;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule01 .moreBtn:after {
    content: "";
    margin: auto 0;
    height: 8px;
    width: 9px;
    background: url(../../assets/img/common/ico_arrow02.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -12px;
    right: 12px;
    bottom: 0;
  }
  .topModule01 .moreBtn:hover {
    left: 330px;
  }
}


/*-----------------------
.topModule02
-----------------------*/

@keyframes dog {
  50% {
    display: block;
    opacity: 1;
    top: 0px;
  }
  100% {
    opacity: 1;
    top: -75px;
  }
}

@keyframes dogsp {
  50% {
    display: block;
    opacity: 1;
    top: 0px;
  }
  100% {
    opacity: 1;
    top: -70px;
  }
}

.topModule02 {
  /* position: relative;
  background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 260px auto; */
  background-image: url(../img/common/ptn-beige.jpg);
  background-size: 547px;
  background-repeat: repeat;
  background-position: center;
}

.topModule02 .txt01 {
  font-size: 16px;
  font-weight: 700;
  line-height: 2;
  text-align: center;
}

.topModule02 .txt01 span {
  font-size: 16px;
  font-weight: 700;
  background: #fff;
  padding: 0 5px;
  line-height: 2;
  letter-spacing: 0.1em;
  display: inline-block;
  margin: 2px 0;
}

.topModule02 .txt02 {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
}

.topModule02 .copy01 span:nth-of-type(1) {
  transform-origin: left bottom;
  -webkit-transition: 1.2s ease-in-out;
  -moz-transition: 1.2s ease-in-out;
  -o-transition: 1.2s ease-in-out;
  transition: 1.2s ease-in-out;
  transition-delay: 0.1s;
  opacity: 0;
}

.topModule02 .copy01 span:nth-of-type(2) {
  transform-origin: left bottom;
  -webkit-transition: 1.4s ease-in-out;
  -moz-transition: 1.4s ease-in-out;
  -o-transition: 1.4s ease-in-out;
  transition: 1.4s ease-in-out;
  transition-delay: 0.2s;
  opacity: 0;
}

.topModule02 .copy01 span:nth-of-type(3) {
  transform-origin: left bottom;
  -webkit-transition: 1.6s ease-in-out;
  -moz-transition: 1.6s ease-in-out;
  -o-transition: 1.6s ease-in-out;
  transition: 1.6s ease-in-out;
  transition-delay: 0.3s;
  opacity: 0;
}

.topModule02 .copy01 span:nth-of-type(4) {
  transform-origin: left bottom;
  -webkit-transition: 1.8s ease-in-out;
  -moz-transition: 1.8s ease-in-out;
  -o-transition: 1.8s ease-in-out;
  transition: 1.8s ease-in-out;
  transition-delay: 0.4s;
  opacity: 0;
}

.topModule02 .copy01 span:nth-of-type(5) {
  transform-origin: left bottom;
  -webkit-transition: 2.0s ease-in-out;
  -moz-transition: 2.0s ease-in-out;
  -o-transition: 2.0s ease-in-out;
  transition: 2.0s ease-in-out;
  transition-delay: 0.4s;
  opacity: 0;
}

.topModule02 .copy01[data-scroll="in"] span {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .topModule02 {
    margin: 80px 0 0;
    padding: 50px 20px;
  }
  .topModule02 .photoWrap01 {
    margin: 30px -20px;
    position: relative;
  }
  .topModule02 .txt02 {
    margin: 40px 0 0;
  }
  .topModule02 .ico01 {
    width: 138px;
    height: 108px;
    background: url(../../assets/img/top/pic_top09.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -90px;
    left: 50%;
    margin: 0 0px 0 -170px;
    z-index: 0;
  }
  .topModule02 .ico02 {
    width: 105px;
    height: 135px;
    background: url(../../assets/img/top/pic_top10_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    opacity: 0;
    /*
        top: -70px;
        */
    left: 50%;
    margin: 0 0px 0 40px;
    z-index: -1;
  }
  .topModule02 .ico02[data-scroll="in"] {
    animation: dogsp 1.2s ease-out forwards;
    opacity: 1;
  }
  .topModule02 .ico03 {
    width: 107px;
    height: 111px;
    background: url(../../assets/img/top/pic_top10.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin: 0 0px 0 80px;
    z-index: 1;
    display: none;
  }
}

@media screen and (min-width: 768px), print {
  .topModule02 {
    width: 100%;
    max-width: 1246px;
    margin: 150px auto 0;
    padding: 100px 0 80px;
    position: relative;
  }
  .topModule02 .ico01 {
    width: 1053px;
    height: 532px;
    background: url(../../assets/img/top/pic_top09_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -50px;
    left: 50%;
    margin: 0 0px 0 -540px;
    z-index: 0;
  }
  .topModule02 .ico02 {
    width: 114px;
    height: 146px;
    background: url(../../assets/img/top/pic_top10_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    opacity: 0;
    /*
        top: -75px;
        */
    top: 100px;
    left: 50%;
    margin: 0 0px 0 150px;
    z-index: -1;
  }
  .topModule02 .ico02[data-scroll="in"] {
    animation: dog 1.2s ease-out forwards;
    opacity: 1;
  }
  .topModule02 .txt01 span {
    font-size: 20px;
    margin: 10px 0 0;
    line-height: 1.8;
  }
  .topModule02 .txt01 span.txt01_1 {
    padding: 0 0px 0 5px;
  }
  .topModule02 .txt01 span.txt01_2 {
    padding: 0 5px 0 0;
  }
  .topModule02 .txt02 {
    width: 916px;
    margin: 55px auto 0;
    font-size: 15px;
    line-height: 2.4;
    columns: 2 12em;
    column-gap: 4em;
  }
  .topModule02 .photoWrap01 {
    margin: 60px -60px 0;
  }
  .topModule02 .photoWrap01 img {
    width: 100%;
  }
}


/*-----------------------
.topModule03
-----------------------*/

.topModule03 {
  position: relative;
}

.topModule03 .tit01 {
  color: #fff;
}

.topModule03 .tit01 b {
  display: inline-block;
  font-size: 22px;
  font-weight: 700;
  background: #007FEB;
  padding: 7px 15px;
  letter-spacing: 0.2em;
}

.topModule03 .tit01 small {
  display: inline-block;
  font-size: 12px;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  background: #007FEB;
  padding: 7px 15px;
  position: relative;
  top: -2px;
  letter-spacing: 0.2em;
}

.topModule03 .txtBox .name {
  font-size: 14px;
  /* font-weight: 700; */
}

.topModule03 .list01 li {
  margin: 40px 0 0;
}

.topModule03 .list01 li a .photo {
  position: relative;
}

.topModule03 .list01 li a .photo:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  border: 0px solid #fff;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.topModule03 .list01 li a:hover .photo {
  position: relative;
}

.topModule03 .list01 li a:hover .photo:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  border: 10px solid #fff;
}

.topModule03 .list01 li:nth-of-type(2) b {
  background:#fdd000;
  color: #493f39;
}

.topModule03 .list01 li:nth-of-type(2) small {
  background: #fdd000;
  color: #493f39;
}

@media screen and (max-width: 767px) {
  .topModule03 {
    padding: 30px 20px;
  }
  .topModule03 .tit01 {
    position: relative;
    top: -20px;
  }
}

@media screen and (min-width: 768px), print {
  .topModule03 .list01 {
    width: 1200px;
    margin: 100px auto 0;
    padding: 0px 0 0px;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .topModule03 .list01 li {
    width: 362px;
    margin: 0;
  }
  .topModule03 .list01 li:nth-of-type(odd) {
    margin: 80px 0 0;
  }
  .topModule03 .list01 li .tit01 {
    position: relative;
    top: -23px;
    left: 0;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule03 .list01 li a:hover .tit01 {
    left: -10px;
  }
}


/*-----------------------
.topModule04
-----------------------*/

.topModule04 {
  background: url(../../assets/img/common/bg_lunchroom.jpg) repeat left top;
  background-size: 240px auto;
  margin: 50px 0 70px;
  color: #fff;
  overflow: hidden;
  background: #009fe8;
}

.topModule04 .list01 li a {
  position: relative;
}

.topModule04 .list01 li a.photoBox:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.topModule04 .list01 li a:hover .photoBox {
  /*
    img{
    	position : absolute;
    	top : 0;
    	left : 0;
    	display : block;
    }
    */
}

.topModule04 .list01 li .photo {
  position: relative;
}

.topModule04 .list01 li .photo:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  border: 0px solid #fff;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.topModule04 .list01 li:hover .photo {
  position: relative;
}

.topModule04 .list01 li:hover .photo:before {
  content: "";
  display: block;
  position: absolute;
  height: 100%;
  width: 100%;
  border: 10px solid #fff;
}

.topModule04 .list01 .photoBox {
  overflow: hidden;
}

.topModule04 .moreBtn {
  position: relative;
  display: block;
  top: 10px;
  left: 0;
  width: 140px;
  z-index: 8;
  font-size: 14px;
  font-weight: 700;
  background: url(../../assets/img/common/border01_white.png) repeat-x left bottom;
  padding: 0 50px 10px 12px;
  margin: 30px auto;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.topModule04 .moreBtn:after {
  content: "";
  margin: auto 0;
  height: 8px;
  width: 9px;
  background: url(../../assets/img/common/ico_arrow01.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -12px;
  right: 12px;
  bottom: 0;
}

@media screen and (max-width: 767px) {
  .topModule04 {
    padding: 0 0 30px;
  }
  .topModule04 .list01 {
    margin: 10px 0 10px;
    padding: 0 20px;
  }
  .topModule04 .list01 li {
    margin: 30px 0 0;
  }
  .topModule04 .list01 li .cover-image {
    position: relative;
  }
  .topModule04 .list01 li .cover-image:before {
    content: "";
    display: block;
    padding-top: 60%;
  }
  .topModule04 .list01 li .txtBox .name {
    display: block;
    font-size: 14px;
    font-weight: 700;
    margin: 18px 0 0;
    line-height: 2;
  }
  .topModule04 .list01 li .txtBox .date {
    display: block;
    margin: 5px 0 0;
    font-size: 12px;
    letter-spacing: 0.2em;
    font-family: 'Quicksand', sans-serif;
    font-weight: 700;
  }
}

@media screen and (min-width: 768px), print {
  .topModule04 {
    width: 100%;
    margin: 50px auto 0;
    padding: 0 0 60px;
    overflow: hidden;
    /*border-bottom : solid 14px #C9A063;*/
  }
  .topModule04 .lunchroomModule01 .box01 {
    background: none;
  }
  .topModule04 .lunchroomHead img {
    max-width: 100%;
    display: none;
  }
  .topModule04 .list01 {
    width: 1126px;
    margin: 0 auto;
    padding: 0px 0 20px;
    overflow: hidden;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .topModule04 .list01:after {
    content: "";
    display: block;
    width: 334px;
  }
  .topModule04 .list01 li {
    width: 334px;
  }
  .topModule04 .list01 li a {
    display: block;
  }
  .topModule04 .list01 li a:before {
    content: "";
    display: block;
    padding-top: 200px;
  }
  .topModule04 .list01 li a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 334px;
    height: 200px;
    border: solid 0px #fff;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule04 .list01 li a:hover:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 334px;
    height: 200px;
    border: solid 10px #fff;
  }
  .topModule04 .list01 li .cover-image {
    width: 334px;
    height: 200px;
    overflow: hidden;
    position: absolute;
  }
  .topModule04 .list01 li .photoBox {
    width: 334px;
    height: 200px;
    overflow: hidden;
    /*
            &:before{
            	content : "";
            	padding-top : 100%;
            	display : block;
            }
            */
  }
  .topModule04 .list01 li .photoBox .photo {
    position: absolute;
    width: 334px;
    height: 200px;
  }
  .topModule04 .list01 li a:hover {
    /*
            					.photoBox{
            						width : 324px;
            						height : 190px;
            						.photo{
            							position : absolute;
            							width : 334px;
            							height : 200px;
            						}
            
            					}
            					*/
  }
  .topModule04 .list01 li .txtBox .name {
    display: block;
    font-size: 14px;
    font-weight: 700;
    margin: 18px 0 0;
    line-height: 2;
  }
  .topModule04 .list01 li .txtBox .date {
    display: block;
    margin: 10px 0 0;
    font-size: 12px;
    font-family: 'Quicksand', sans-serif;
    font-weight: 700;
  }
  .topModule04 .moreBtn:hover {
    left: 10px;
  }
}


/*-----------------------
.topModule05
-----------------------*/

.topModule05 .inner01 .txt01 {
  text-align: center;
  font-size: 14px;
  /* font-weight: 700; */
  position: relative;
}

.topModule05 .inner01 .txt01 span {
  display: inline-block;
  padding: 0 5px;
  margin: 7px 0 0;
  line-height: 1.6;
  background: #E3E9EC;
}

.topModule05 .inner02 .tit01 {
  display: inline-block;
  padding: 5px 15px;
  margin: 7px 0 0;
  line-height: 1.6;
  font-size: 18px;
  color: #fff;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  background: #75909F;
}

@media screen and (max-width: 767px) {
  .topModule05 {
    padding: 0 20px 20px;
  }
  .topModule05 .inner01 .snsBox {
    margin: 50px -20px 0;
    position: relative;
  }
  .topModule05 .inner01 .snsBox .fb {
    display: block;
    width: 50%;
    position: relative;
    float: left;
    left: 15px;
    height: 127px;
  }
  .topModule05 .inner01 .snsBox .fb .bg {
    /*
          width: 184px;
          height: 127px;
          */
    width: 100%;
    background: url(../../assets/img/top/btn_fb01.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 0px;
    left: 0;
    margin: 0 0px 0 0px;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule05 .inner01 .snsBox .fb:hover .bg {
    width: 172px;
  }
  .topModule05 .inner01 .snsBox .fb img {
    /*width : 94px;*/
    display: block;
  }
  .topModule05 .inner01 .snsBox .ig {
    display: block;
    width: 50%;
    position: relative;
    float: right;
    margin: 30px 0 0;
    left: -15px;
  }
  .topModule05 .inner01 .txt01:after {
    content: "";
    position: absolute;
    border-top: 4px solid #333;
    width: 42px;
    height: 1px;
    display: block;
    top: 60px;
    left: -5px;
    transform: rotate(55deg);
  }
  .topModule05 .inner01 .txt01:before {
    content: "";
    position: absolute;
    border-top: 4px solid #333;
    width: 42px;
    height: 1px;
    display: block;
    top: 55px;
    right: -5px;
    transform: rotate(-55deg);
  }
  .topModule05 .inner01 .txt01 span:nth-of-type(2) {
    padding: 0 0 0 7px;
  }
  .topModule05 .inner01 .txt01 span:nth-of-type(3) {
    padding: 0 7px 0 0;
  }
  .topModule05 .inner02 .photo01 {
    position: relative;
    display: block;
    top: 30px;
    z-index: -1;
  }
  .topModule05 .inner02 .photo01 .ico02 {
    width: 82px;
    height: 80px;
    background: url(../../assets/img/top/pic_top11_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    bottom: -10px;
    right: 0;
    display: none;
    margin: 0 0px 0 0px;
    z-index: 0;
  }
  .topModule05 .inner02 .tit01 {
    position: relative;
    z-index: 2;
    top: -10px;
  }
  .topModule05 .inner02 .txt02 {
    font-size: 14px;
    /* font-weight: 700; */
    line-height: 2;
  }
  .topModule05 .moreBtn {
    position: relative;
    display: block;
    top: 10px;
    width: 140px;
    z-index: 8;
    font-size: 14px;
    font-weight: 700;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
    padding: 0 50px 10px 12px;
    margin: 10px auto;
  }
  .topModule05 .moreBtn:after {
    content: "";
    margin: auto 0;
    height: 8px;
    width: 9px;
    background: url(../../assets/img/common/ico_arrow02.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -12px;
    right: 12px;
    bottom: 0;
  }
}

@media screen and (min-width: 768px), print {
  .topModule05 {
    width: 1140px;
    margin: 60px auto 0;
    overflow: hidden;
  }
  .topModule05 .inner01 {
    width: 540px;
    float: left;
    position: relative;
  }
  .topModule05 .inner01 .ico02 {
    width: 96px;
    height: 94px;
    background: url(../../assets/img/top/pic_top11_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 57px;
    left: 104px;
    margin: 0 0px 0 0px;
    z-index: 0;
  }
  .topModule05 .inner01 .txt01 {
    position: absolute;
    top: 120px;
    left: 320px;
    width: 240px;
    text-align: left;
  }
  .topModule05 .inner01 .txt01:after {
    content: "";
    position: absolute;
    border-top: 4px solid #333;
    width: 42px;
    height: 1px;
    display: block;
    top: -20px;
    left: -20px;
    transform: rotate(155deg);
  }
  .topModule05 .inner01 .txt01:before {
    content: "";
    position: absolute;
    border-top: 4px solid #333;
    width: 42px;
    height: 1px;
    display: block;
    top: 115px;
    left: -20px;
    transform: rotate(205deg);
  }
  .topModule05 .inner01 .snsBox .fb {
    width: 275px;
    height: 191px;
    position: absolute;
    top: 150px;
    left: 0;
  }
  .topModule05 .inner01 .snsBox .fb .bg {
    width: 275px;
    height: 191px;
    background: url(../../assets/img/top/btn_fb01_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 0px;
    left: 0;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule05 .inner01 .snsBox .fb:hover .bg {
    transform: scale(0.95, 0.95);
  }
  .topModule05 .inner01 .snsBox .fb img {
    width: 112px;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
  .topModule05 .inner01 .snsBox .ig {
    width: 284px;
    height: 176px;
    position: absolute;
    top: 300px;
    left: 250px;
  }
  .topModule05 .inner01 .snsBox .ig .bg {
    width: 284px;
    height: 176px;
    background: url(../../assets/img/top/btn_yt01_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 0px;
    left: 0;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule05 .inner01 .snsBox .ig:hover .bg {
    transform: scale(0.95, 0.95);
  }
  .topModule05 .inner01 .snsBox .ig img {
    width: 124px;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
  .topModule05 .inner02 {
    width: 540px;
    float: right;
    position: relative;
  }
  .topModule05 .inner02 .ico01 {
    width: 95px;
    height: 88px;
    background: url(../../assets/img/top/pic_top12_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 290px;
    right: 70px;
    margin: 0 0px 0 0px;
    z-index: 0;
  }
  .topModule05 .inner02 .photo01 img {
    width: 100%;
  }
  .topModule05 .inner02 .tit01 {
    font-size: 18px;
    padding: 10px 15px;
    position: relative;
    top: -20px;
  }
  .topModule05 .inner02 .txt02 {
    font-size: 14px;
    font-weight: 700;
    line-height: 2;
    margin: 0px 0 0;
  }
  .topModule05 .inner02 .moreBtn {
    position: relative;
    display: block;
    top: 10px;
    left: 0;
    width: 140px;
    z-index: 8;
    font-size: 14px;
    font-weight: 700;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
    padding: 0 50px 10px 12px;
    margin: 0px 0 10px;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .topModule05 .inner02 .moreBtn:after {
    content: "";
    margin: auto 0;
    height: 8px;
    width: 9px;
    background: url(../../assets/img/common/ico_arrow02.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -12px;
    right: 12px;
    bottom: 0;
  }
  .topModule05 .inner02 .moreBtn:hover {
    left: 10px;
  }
}


/*-----------------------
.mainimgModule01
-----------------------*/

@keyframes dogup {
  0% {
    display: block;
    opacity: 1;
    transform: translate(0%, 200%);
  }
  100% {
    opacity: 1;
    transform: translate(0%, 0%);
  }
}

.mainimgModule01[data-scroll="in"]:after {
  opacity: 1;
  animation: dogup 1.5s ease-out forwards;
  transition-delay: 4s;
}

.mainimgModule01 {
  position: relative;
}

.mainimgModule01 .cover-image2 {
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .mainimgModule01 {
    margin: 50px 0 0;
    height: 290px;
  }
}

@media screen and (min-width: 768px), print {
  .mainimgModule01 {
    margin: 50px 0 0;
    height: 460px;
  }
}


/*-----------------------
.mainimgModule02
-----------------------*/

.mainimgModule02 {
  position: relative;
}

@media screen and (max-width: 767px) {
  .mainimgModule02 {
    margin: 50px 0 0;
    height: 253px;
  }
  .mainimgModule02.news {
    margin: 157px 0 0;
    height: 183px;
  }
}

@media screen and (min-width: 768px), print {
  .mainimgModule02 {
    height: 260px;
  }
}


/*-----------------------
.maintxtModule01
-----------------------*/

@keyframes icoup {
  50% {
    display: block;
    opacity: 1;
    transform: translate(0%, -50%);
  }
  100% {
    opacity: 1;
    transform: translate(0%, 0%);
  }
}

.maintxtModule01[data-scroll="in"] .ico, .maintxtModule01[data-scroll="in"] .ico01, .maintxtModule01[data-scroll="in"] .ico02, .maintxtModule01[data-scroll="in"] .ico03 {
  /*animation: icoup 2s ease-out forwards;*/
  opacity: 1;
}

.maintxtModule01 {
  padding: 24px 0 24px;
  text-align: center;
  z-index: 1;
  position: relative;
}

.maintxtModule01 b, .maintxtModule01 small {
  position: relative;
  display: block;
  z-index: 2;
}

.maintxtModule01 b {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.2em;
}

.maintxtModule01 small {
  margin-top: 11px;
  font-family: Quicksand, sans-serif;
  font-size: 12px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.maintxtModule01 .ico01 {
  opacity: 0;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
  transition-delay: 0.5s;
}

.maintxtModule01 .ico02 {
  opacity: 0;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
  transition-delay: 0.7s;
}

.maintxtModule01 .ico03 {
  opacity: 0;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
  transition-delay: 0.9s;
}

.maintxtModule01 .js-heading {
  opacity: 0;
}

.maintxtModule01 .js-heading[data-scroll="in"] {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .maintxtModule01 {
    padding: 44px 0 4px;
  }
  .maintxtModule01.privacy:before {
    content: "";
    margin: 0 0 0 -145px;
    height: 118px;
    width: 312px;
    background: url(../../assets/img/privacy/ico_privacy03.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -15px;
    left: 50%;
    z-index: 0;
  }
  .maintxtModule01 .ico {
    position: absolute;
    display: block;
  }
  .maintxtModule01.concept .ico01 {
    width: 85px;
    height: 80px;
    background: url(../../assets/img/concept/pic_concept01.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 30px;
    left: 50%;
    margin: 0 0px 0 -158px;
    z-index: 0;
  }
  .maintxtModule01.concept .ico02 {
    width: 56px;
    height: 46px;
    background: url(../../assets/img/concept/pic_concept02.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -10px;
    left: 50%;
    margin: 0 0px 0 90px;
    z-index: 0;
  }
  .maintxtModule01.staff .ico01 {
    width: 85px;
    height: 80px;
    background: url(../../assets/img/concept/pic_concept01.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 30px;
    left: 50%;
    margin: 0 0px 0 -158px;
    z-index: 0;
  }
  .maintxtModule01.staff .ico02 {
    width: 56px;
    height: 46px;
    background: url(../../assets/img/concept/pic_concept02.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -10px;
    left: 50%;
    margin: 0 0px 0 90px;
    z-index: 0;
  }
}

@media screen and (min-width: 768px), print {
  .maintxtModule01 {
    width: 400px;
    margin: 0 auto;
  }
  .maintxtModule01 b {
    font-size: 28px;
  }
  .maintxtModule01 small {
    margin: 20px 0 0;
  }
  .maintxtModule01 .ico {
    position: absolute;
    display: block;
  }
  .maintxtModule01.privacy .ico01 {
    height: 90px;
    width: 105px;
    background: url(../../assets/img/privacy/pic_privacy01_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -40px;
    left: -230px;
    z-index: 0;
  }
  .maintxtModule01.privacy .ico02 {
    height: 98px;
    width: 87px;
    background: url(../../assets/img/privacy/pic_privacy02_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -100px;
    right: -240px;
    z-index: 0;
  }
  .maintxtModule01.privacy .ico03 {
    height: 76px;
    width: 81px;
    background: url(../../assets/img/privacy/pic_privacy03_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    bottom: -10px;
    right: -90px;
    z-index: 0;
  }
  .maintxtModule01.concept .ico01 {
    width: 142px;
    height: 150px;
    background: url(../../assets/img/concept/pic_concept01_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -70px;
    left: 50%;
    margin: 0 0px 0 -568px;
    z-index: 0;
  }
  .maintxtModule01.concept .ico02 {
    width: 101px;
    height: 82px;
    background: url(../../assets/img/concept/pic_concept02_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 120px;
    left: 50%;
    margin: 0 0px 0 -400px;
    z-index: 0;
  }
  .maintxtModule01.concept .ico03 {
    width: 118px;
    height: 121px;
    background: url(../../assets/img/concept/pic_concept03_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin: 0 0px 0 300px;
    z-index: 0;
  }
  .maintxtModule01.staff .ico01 {
    width: 142px;
    height: 150px;
    background: url(../../assets/img/concept/pic_concept01_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -70px;
    left: 50%;
    margin: 0 0px 0 -568px;
    z-index: 0;
  }
  .maintxtModule01.staff .ico02 {
    width: 101px;
    height: 82px;
    background: url(../../assets/img/concept/pic_concept02_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 120px;
    left: 50%;
    margin: 0 0px 0 -400px;
    z-index: 0;
  }
  .maintxtModule01.staff .ico03 {
    width: 118px;
    height: 121px;
    background: url(../../assets/img/concept/pic_concept03_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    margin: 0 0px 0 300px;
    z-index: 0;
  }
}


/*-----------------------
.maintxtModule02
-----------------------*/

.maintxtModule02.news[data-scroll="in"] .ico, .maintxtModule02.news[data-scroll="in"] .ico01, .maintxtModule02.news[data-scroll="in"] .ico02, .maintxtModule02.news[data-scroll="in"] .ico03, .maintxtModule02.news[data-scroll="in"] .ico04 {
  opacity: 1;
}

.maintxtModule02 {
  padding: 78px 0 24px;
  text-align: center;
  z-index: 1;
  position: relative;
}

.maintxtModule02 b, .maintxtModule02 small {
  position: relative;
  display: block;
  z-index: 2;
}

.maintxtModule02 b {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.2em;
}

.maintxtModule02 b.en {
  font-size: 28px;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
}

.maintxtModule02 small {
  margin: 20px 0 0;
  font-family: Quicksand, sans-serif;
  font-size: 12px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.maintxtModule02.news b {
  font-size: 24px;
}

.maintxtModule02.news small {
  font-size: 12px;
}

.maintxtModule02.news .ico01 {
  opacity: 0;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
  transition-delay: 0.5s;
}

.maintxtModule02.news .ico02 {
  opacity: 0;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
  transition-delay: 0.7s;
}

.maintxtModule02.news .ico04 {
  opacity: 0;
  -webkit-transition: 1.0s ease-in-out;
  -moz-transition: 1.0s ease-in-out;
  -o-transition: 1.0s ease-in-out;
  transition: 1.0s ease-in-out;
  transition-delay: 0.9s;
}

.maintxtModule02.notfound .ico01 {
  width: 55px;
  height: 49px;
  background: url(../../assets/img/contact/pic_contact01.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 64px;
  left: 50%;
  margin: 0 0px 0 104px;
  z-index: 0;
  transform: translateY(0);
}

.maintxtModule02.notfound .ico02 {
  width: 68px;
  height: 61px;
  background: url(../../assets/img/contact/pic_contact02.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -30px;
  left: 50%;
  margin: 0 0px 0 -160px;
  z-index: 0;
}

@media screen and (max-width: 767px) {
  .maintxtModule02 {
    padding: 60px 0 4px;
  }
  .maintxtModule02 small {
    margin: 14px 0 0;
    font-family: Quicksand, sans-serif;
    font-size: 12px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
  }
}

@media screen and (min-width: 768px), print {
  .maintxtModule02 {
    width: 400px;
    margin: 0 auto;
  }
  .maintxtModule02 b {
    font-size: 28px;
  }
  .maintxtModule02.notfound .ico01 {
    width: 78px;
    height: 70px;
    background: url(../../assets/img/contact/pic_contact01.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 70px;
    left: 50%;
    margin: 0 0px 0 -448px;
    z-index: 0;
  }
  .maintxtModule02.notfound .ico02 {
    width: 98px;
    height: 87px;
    background: url(../../assets/img/contact/pic_contact02.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -40px;
    left: 50%;
    margin: 0 0px 0 -240px;
    z-index: 0;
  }
  .maintxtModule02.notfound .ico03 {
    width: 81px;
    height: 95px;
    background: url(../../assets/img/contact/pic_contact03.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 60px;
    left: 50%;
    margin: 0 0px 0 390px;
    z-index: 0;
  }
}

.btnGrey {
  background: #75909F;
  color: #FFF;
}

.overlayMenu {
  padding: 10px 10px 60px;
  /*	    display: block!important;*/
}

.overlayMenu .inner {
  padding: 0px 10px 30px;
  background-image: url(../img/common/ptn-beige.jpg);
  background-repeat: repeat;
  background-position: center;
}

.overlayMenu .absoluteLogo {
  margin: 0 -10px;
  z-index: 1;
  position: relative;
  top: 0px;
  right: 0;
  left: 0;
}

.overlayMenu .absoluteLogo .logo {
  margin: 0 auto;
  height: 140px;
  width: 187px;
  background: url(../../assets/img/common/bg_header-logo02_new.svg) no-repeat top center;
  background-size: contain;
  z-index: 1;
  max-width: 187px;
}

.overlayMenu .absoluteLogo img {
  display: block;
  width: 96px;
  padding: 14px 0 0;
  margin: 0 auto;
}

.overlayMenu .menuBox {
  margin: 0px 0 0;
}

.overlayMenu .menuBox .menu01 {
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}

.overlayMenu .menuBox .menu01>li {
  width: 48%;
  margin: 0 0 25px;
  position: relative;
}

.overlayMenu .menuBox .menu01>li>a {
  min-height: 94px;
  padding: 12px 0 0;
  display: block;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}

.overlayMenu .menuBox .menu01>li>a span {
  display: block;
  padding: 0 0 6px;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(3) a {
  min-height: 243px;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(6) a {
  min-height: 243px;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(1), .overlayMenu .menuBox .menu01>li:nth-of-type(4), .overlayMenu .menuBox .menu01>li:nth-of-type(5) {
  background: #ffee37;
  color: #493f39;
}
.overlayMenu .menuBox .menu01>li:nth-of-type(1) .menu02 a, .overlayMenu .menuBox .menu01>li:nth-of-type(4) .menu02 a, .overlayMenu .menuBox .menu01>li:nth-of-type(5) .menu02 a{
  color: #493f39;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(1)>a, .overlayMenu .menuBox .menu01>li:nth-of-type(4)>a, .overlayMenu .menuBox .menu01>li:nth-of-type(5)>a {
  background: #F6FF4C;
  color: #493f39;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(2), .overlayMenu .menuBox .menu01>li:nth-of-type(3), .overlayMenu .menuBox .menu01>li:nth-of-type(6) {
  background: #0066BC;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(2)>a, .overlayMenu .menuBox .menu01>li:nth-of-type(3)>a, .overlayMenu .menuBox .menu01>li:nth-of-type(6)>a {
  background: #007FEB;
  color: #FFF;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(3) {
  background: #007FEB;
}

.overlayMenu .menuBox .menu01>li:nth-of-type(6) {
  background: #007FEB;
}

.overlayMenu .menuBox .menu01 .nameBox {
  min-width: 120px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.overlayMenu .menuBox .menu01 .ico01 {
  width: 50px;
  display: block;
  margin: 0 auto;
}

.overlayMenu .menuBox .menu01 .ico02 {
  width: 50px;
  display: block;
  margin: 0 auto;
}

.overlayMenu .menuBox .menu01 .ico03 {
  width: 55px;
  display: block;
  margin: 0 auto;
}

.overlayMenu .menuBox .menu01 .ico04 {
  width: 50px;
  display: block;
  margin: 0 auto;
}

.overlayMenu .menuBox .menu01 .ico05 {
  width: 47px;
  display: block;
  margin: 0 auto;
}

.overlayMenu .menuBox .menu01 .ico06 {
  width: 65px;
  display: block;
  margin: 0 auto;
}

.overlayMenu .menuBox .menu02 {
  padding: 20px 0;
}

.overlayMenu .menuBox .menu02 a {
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  display: block;
  padding: 10px 0 10px 25px;
  position: relative;
}

.overlayMenu .menuBox .menu02 a:before {
  content: "";
  margin: auto 0;
  height: 8px;
  width: 9px;
  background: url(../../assets/img/common/ico_arrow01.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -2px;
  left: 10px;
  bottom: 0;
}

.overlayMenu .menuBox .menu02 a.min {
  letter-spacing: 0;
}

.overlayMenu .menuBox .btn {
  font-size: 16px;
}

.overlayMenu .menuSns {
  margin: 45px 0 0;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}

.overlayMenu .menuSns li {
  width: 50%;
  text-align: center;
}

.overlayMenu .menuSns li img {
  height: 24px;
  width: auto;
}
.overlayMenu .menuBox .menuOther>li {
  margin: 0 0 20px;
}
.overlayMenu .menuBox .menuOther>li:last-child {
  margin: 0;
}

@media screen and (max-width: 320px) {
  .overlayMenu {
    /*
      .absoluteLogo{
      	.logo{
      		margin: 0 auto;
      		@include get_size2(187);
      		max-width : 187px;
      		min-height : auto!important;
      	}
      }
      .absoluteLogo img{
      	display : block;
      	@include get_size2(96.19);
      	margin : 0 auto;
      	max-width : 96px;
      }
      .menuBox{
      	margin : 20px 0;
      }
      */
  }
}

@media screen and (max-width: 767px) {
  .overlayMenu {
    /*
      .absoluteLogo{
      	min-height : 130px;	
      }
      */
  }
}


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

#footer {
  position: relative;
}

#footer .footer01 {
  /* background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 240px auto; */
  position: relative;
  background-image: url(../img/common/ptn-beige.jpg);
  background-size: 547px;
  background-repeat: repeat;
  background-position: center;
}

#footer .footer01:before {
  content: "";
  margin: auto 0;
  height: 51px;
  width: 100%;
  background: url(../img/common/bg_footer02_pc.png) bottom center;
  background-size: 602px 51px;
  position: absolute;
  left: 0px;
  bottom: 0px;
}

#footer .footer01 .logo {
  width: 132px;
  position: absolute;
  display: block;
  top: -60px;
  left: 50%;
  margin: 0 0 0 -66px;
}

#footer .footer01 .footer01_inner {
  width: 1100px;
  margin: 0 auto;
  min-height: 347px;
}

#footer .footer01 .footer01_inner .menuList01 {
  padding: 110px 0 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

#footer .footer01 .footer01_inner .menuList01 li a {
  display: block;
  position: relative;
  padding: 0 10px 0 0;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

#footer .footer01 .footer01_inner .menuList01>li>a {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
}

#footer .footer01 .footer01_inner .menuList01>li>a:hover {
  padding: 0 0 0 10px;
}

#footer .footer01 .footer01_inner .menuList01>li .first {
  margin: 10px 0 0;
  display: block;
}

#footer .footer01 .footer01_inner .menuList01 .menuList02 {
  margin: 10px 0 0;
}

#footer .footer01 .footer01_inner .menuList01 .menuList02 li a {
  display: block;
  position: relative;
  font-size: 13px;
  line-height: 2;
  padding: 0 10px 0 20px;
}

#footer .footer01 .footer01_inner .menuList01 .menuList02 li a:before {
  content: "";
  margin: auto 0;
  height: 8px;
  width: 9px;
  background: url(../../assets/img/common/ico_arrow02.svg) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -2px;
  left: 0;
  bottom: 0;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

#footer .footer01 .footer01_inner .menuList01 .menuList02 li a:hover {
  padding: 0 0px 0 30px !important;
}

#footer .footer01 .footer01_inner .menuList01 .menuList02 li a:hover:before {
  left: 10px;
}

@media screen and (max-width: 767px) {
  #footer {
    padding: 0 0 80px;
  }
  #footer .logo {
    display: block;
    margin: 0 auto;
    position: relative;
    top: -35px;
  }
  #footer .inner01Wrap {
    margin: 80px 0 0;
    background-image: url(../img/common/ptn-beige.jpg);
    background-size: 547px;
    background-repeat: repeat;
    background-position: center;
  }
  #footer .inner01Wrap .inner01 {
    padding: 0 20px 30px;
  }
  #footer .inner01Wrap .inner01 .logo {
    width: 132px;
  }
  #footer .inner01Wrap .inner01 .txtBox {
    margin: 5px 0 0;
  }
  #footer .inner01Wrap .inner01 .txtBox .tit01 {
    font-size: 14px;
    font-weight: 700;
    display: inline-block;
    padding: 5px;
    letter-spacing: 0.1em;
  }
  #footer .inner01Wrap .inner01 .txtBox .txt01 {
    font-size: 13px;
    font-weight: 700;
    display: block;
    margin: 15px 0 0;
    line-height: 2;
  }
  #footer .inner01Wrap .inner01 .txtBox .txt01 .min {
    font-size: 12px;
  }
  #footer .inner01Wrap .inner01 .txtBox .txt02 {
    font-size: 13px;
    display: block;
    margin: 15px 0 0;
    line-height: 2;
  }
  #footer .inner02Wrap {
    padding: 30px 20px;
  }
  #footer .inner02Wrap .inner02 {
    position: relative;
    padding: 25px 20px 25px;
    background: url(../../assets/img/common/border01.png) repeat-x left top, url(../../assets/img/common/border01.png) repeat-x left bottom, url(../../assets/img/common/border02.png) repeat-y left top, url(../../assets/img/common/border02.png) repeat-y right top;
  }
  #footer .inner02Wrap .inner02 .tit01 {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
    padding: 0 0 5px;
  }
  #footer .inner02Wrap .inner02 .tel {
    display: block;
    font-family: 'Quicksand', sans-serif;
    font-weight: 700;
    font-size: 24px;
    padding: 10px 0 5px;
  }
  #footer .inner02Wrap .inner02 .txt01 {
    font-size: 13px;
    font-weight: 700;
  }
  #footer .inner02Wrap .inner02 .btn {
    margin: 15px 0 0;
  }
}

@media screen and (min-width: 768px), print {
  #footer {
    margin: 130px 0 0;
  }
  #footer .footer02 {
    overflow: hidden;
    width: 100%;
    /* background: url(../../assets/img/common/bg_footer01_pc.png) left bottom;
    background-size: 240px 203px; */
    padding: 50px 0;
    background: #009fe8;;
  }
  #footer .footer02 .footer02_inner {
    width: 1226px;
    margin: 0 auto;
  }
  #footer .footer02 .footer02_inner .inner01Wrap {
    width: 464px;
    float: left;
    margin: 0 0 0 170px;
  }
  #footer .footer02 .footer02_inner .inner01Wrap .inner01 {
    position: relative;
  }
  /* #footer .footer02 .footer02_inner .inner01Wrap .inner01:before {
    content: "";
    margin: auto 0;
    height: 228px;
    width: 190px;
    background: url(https://placehold.jp/381x457.png) no-repeat center;
    background-size: contain;
    position: absolute;
    left: -180px;
    bottom: -53px;
  } */
  #footer .footer02 .footer02_inner .inner01Wrap .inner01 .txtBox .tit01 {
    font-size: 18px;
    font-weight: 700;
    display: inline-block;
    color: #fff;
    letter-spacing: 0.1em;
  }
  #footer .footer02 .footer02_inner .inner01Wrap .inner01 .txtBox .txt01 {
    font-size: 13px;
    font-weight: 700;
    display: block;
    margin: 15px 0 0;
    padding: 0 0 20px;
    line-height: 2;
    color: #fff;
    background: url(../../assets/img/common/border01_white.png) repeat-x left bottom;
  }
  #footer .footer02 .footer02_inner .inner01Wrap .inner01 .txtBox .txt01 .min {
    font-size: 12px;
  }
  #footer .footer02 .footer02_inner .inner01Wrap .inner01 .txtBox .txt02 {
    font-size: 13px;
    display: block;
    margin: 15px 0 0;
    line-height: 2;
    color: #fff;
  }
  #footer .footer02 .footer02_inner .inner02Wrap {
    width: 580px;
    position: relative;
    float: left;
    top: 10px;
  }
  #footer .footer02 .footer02_inner .inner02Wrap:before {
    content: "";
    margin: auto 0;
    height: 208px;
    width: 628px;
    background: url(../../assets/img/common/bg_footer03_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 0;
  }
  #footer .footer02 .footer02_inner .inner02Wrap .inner02 {
    position: relative;
    z-index: 2;
    padding: 58px 0 0 90px;
  }
  #footer .footer02 .footer02_inner .inner02Wrap .inner02 .tit01 {
    position: relative;
    display: inline-block;
    font-size: 13px;
    line-height: 2;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
  }
  #footer .footer02 .footer02_inner .inner02Wrap .inner02 .tit01:before {
    content: "";
    margin: auto 0;
    height: 31px;
    width: 40px;
    background: url(../../assets/img/common/ico_tel01.svg) no-repeat center;
    background-size: contain;
    position: absolute;
    right: -50px;
    top: -10px;
    z-index: 0;
  }
  #footer .footer02 .footer02_inner .inner02Wrap .inner02 .tel {
    display: block;
    font-size: 24px;
    font-family: 'Quicksand', sans-serif;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin: 10px 0 0;
  }
  #footer .footer02 .footer02_inner .inner02Wrap .inner02 .txt01 {
    display: block;
    font-size: 13px;
    font-weight: 700;
    margin: 5px 0 0;
  }
  #footer .footer02 .footer02_inner .inner02Wrap .inner02 .btn {
    width: 230px;
    position: absolute;
    top: 82px;
    right: 44px;
  }
  #footer .inner {
    position: relative;
    width: 1100px;
    margin: 0 auto;
    padding: 50px 0 80px;
    overflow: hidden;
  }
}


/*-----------------------
.privacyModule01
-----------------------*/

.privacyModule01 {
  margin: 40px 20px;
  padding: 40px 20px 20px;
  border: solid 3px #009fe8;
  position: relative;
}

.privacyModule01 .leaf {
  display: block;
  position: absolute;
  height: 66px;
  width: 70px;
  background-image: url(../../assets/img/privacy/ico_privacy01.svg);
  top: 18px;
  left: -25px;
}

.privacyModule01 .tit01 {
  font-size: 20px;
  font-weight: 700;
  display: block;
  text-align: center;
}

.privacyModule01 .txt01 {
  margin: 20px 0 0;
  font-size: 14px;
  /* font-weight: 700; */
  line-height: 2;
}

.privacyModule01 .btn {
  margin: 20px 0 0;
  height: 50px;
  line-height: 50px;
}

@media screen and (min-width: 768px), print {
  .privacyModule01 {
    width: 1136px;
    margin: 110px auto 0;
  }
  .privacyModule01 .tit01 {
    width: 350px;
    float: left;
    display: block;
    letter-spacing: 0.1em;
  }
  .privacyModule01 .txt01 {
    width: 400px;
    float: left;
    margin: 0;
    position: relative;
  }
  .privacyModule01 .btn {
    width: 280px;
    margin: 0;
    position: relative;
    top: -10px;
  }
}


/*-----------------------
.othersModule01
-----------------------*/

.othersModule01 .tit01 {
  position: relative;
  text-align: center;
  color:#009fe8;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.1em;
  display: block;
}

.othersModule01 .tit01 small {
  font-size: 12px;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  margin: 15px 0 0;
}

.othersModule01 .menu01 {
  margin: 0px 0 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-evenly;
}

.othersModule01 .menu01 li {
  width: 50%;
  position: relative;
  margin: 20px 0 0;
}

.othersModule01 .menu01 li:nth-of-type(even) .name {
  background: #fdd000;
  color: #493f39;
}

.othersModule01 .menu01 li .name {
  display: block;
  background: #009fe8;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  position: absolute;
  bottom: 0;
  z-index: 4;
}

.othersModule01 .menu01 li .photo01 {
  display: block;
  width: 100%;
  height: 100%;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.othersModule01 .menu01 li .photo01:hover {
  transform: rotate(5deg);
}

@media screen and (max-width: 767px) {
  .othersModule01 {
    margin: 50px 0 0;
  }
  .othersModule01.facility {
    margin: 0px 0 0;
  }
  .othersModule01 .inner {
    padding: 70px 20px 30px;
  }
  .othersModule01 .inner .tit01 {
    width: 260px;
    margin: 0 auto;
  }
  .othersModule01 .inner .tit01 small {
    display: block;
    font-size: 12px;
    margin: 15px 0 0;
  }
  .othersModule01 .menu01 li {
    margin: 40px 0 0;
    padding: 0 10px 0 0;
  }
  .othersModule01 .menu01 li:nth-of-type(even) {
    padding: 0 0 0 10px;
  }
  .othersModule01 .menu01 li .name {
    position: absolute;
    display: block;
    bottom: -25px;
    left: 50%;
    transform: translate(-50%, 0%);
    padding: 5px 2px;
    min-width: 90%;
  }
}

@media screen and (min-width: 768px), print {
  .othersModule01 {
    padding: 70px 0 0;
  }
  .othersModule01 .tit01 {
    width: 380px;
    margin: 0 auto;
    font-size: 22px;
    letter-spacing: 0.15em;
  }
  .othersModule01 .tit01 small {
    font-size: 12px;
    position: relative;
    left: 15px;
    top: -3px;
    letter-spacing: 0.15em;
  }
  .othersModule01 .tit01:before {
    content: "";
    width: 46px;
    height: 60px;
    left: 10px;
    top: -14px;
    z-index: 0;
  }
  .othersModule01 .tit01:after {
    content: "";
    width: 53px;
    height: 54px;
    right: -10px;
    top: -10px;
    z-index: 0;
  }
  .othersModule01 .menu01 {
    width: 1160px;
    margin: 10px auto 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
  }
  .othersModule01 .menu01 li {
    width: 23%;
  }
  .othersModule01 .menu01 li .name {
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translate(-50%, 0%);
    padding: 5px 10px;
    min-width: 60%;
  }
}


/*-----------------------
.notfoundModule01
-----------------------*/

.notfoundModule01 .txt01 {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .notfoundModule01 {
    margin: 60px 0 0;
    padding: 0 20px;
  }
  .notfoundModule01 .btn {
    margin: 50px 0 80px;
  }
}

@media screen and (min-width: 768px), print {
  .notfoundModule01 {
    width: 700px;
    margin: 45px auto 60px;
    text-align: center;
  }
  .notfoundModule01 .btn {
    width: 400px;
    margin: 70px auto;
    height: 60px;
    line-height: 60px;
  }
}

@media screen and (max-width: 767px) {
  .contactIntro {
    font-size: 14px;
  }
  .mw_wp_form {
    margin: 0 20px 90px;
  }
}

.cover-image {
  height: 100%;
  width: 100%;
  background: no-repeat center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
}

.cover-image2 {
  height: 100%;
  width: 100%;
  background: no-repeat center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
}


/*-----------------------
.conceptModule01
-----------------------*/

.conceptModule01 .inner {
  background: url(../../assets/img/common/ptn-beige.jpg) repeat;
  background-size: 547px auto;
  position: relative;
}

.conceptModule01 .inner .txt01 {
  font-size: 14px;
  /* font-weight: 700; */
  line-height: 2.2;
}
.conceptModule01 .principalImageWrap {
  position: relative;
  z-index: 1;
  padding: 0 15px 15px 0;
  margin: 41px 53px 0;
}

.conceptModule01 .principalImageWrap::after {
  content: "";
  position: absolute;
  top: 15px;
  right: 0;
  bottom: 0;
  left: 15px;
  z-index: -1;
  background-color: #009fe8;
}

.conceptModule01 .principalIcon {
  position: absolute;
  top: -15px;
  left: -33px;
  width: 64px;
}

.conceptModule01 .principalTit {
  margin: 36px 0 0 0;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 24px;
}

.conceptModule01 .principalTit span {
  padding-bottom: 4px;
  border-bottom: 2px dotted #000;
}

.conceptModule01 .principalName {
  margin: 16px 0 0 0;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.5;
  text-align: center;
}

.conceptModule01 .principalYomi {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 30px;
  display: block;
}
@media screen and (min-width: 768px), print{
  .conceptModule01 .principalName {
    display: block;
    margin-top: 26px;
  }
  .conceptModule01 .principalYomi {
      display: inline-block;
      width: 100%;
      margin: 0;
  }
}
@media screen and (max-width: 767px) {
  .conceptModule01 {
    padding: 20px;
  }
  .conceptModule01 .inner {
    padding: 15px;
  }
  .conceptModule01 .tit01 {
    position: relative;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    line-height: 2;
    margin: 46px 0 0;
    z-index: 2;
  }
  .conceptModule01 .tit01 span {
    background: #fff;
    display: inline-block;
    margin: 5px 0;
    padding: 0 5px;
  }
  .conceptModule01 .txt01 {
    margin: 20px 0 0;
  }
  .conceptModule01 .photo01 {
    position: relative;
    top: 10px;
    max-width: 180px;
    margin: 0 auto;
  }
  .conceptModule01 .photo02Wrap {
    position: relative;
    min-height: 220px;
    margin: 30px 0 0;
  }
  .conceptModule01 .photo02Wrap .photo02 {
    position: absolute;
    top: 20px;
    left: -35px;
    width: 160px;
    margin: 0 0px 0 0;
  }
  .conceptModule01 .photo02Wrap .photo02.type2 {
    width: 143px;
    left: 110px;
    top: 30px;
    z-index: 2;
  }
  .conceptModule01 .photo03Wrap {
    position: relative;
    min-height: 376px;
    margin: 50px 0 0;
  }
  .conceptModule01 .photo03Wrap .photo03 {
    position: absolute;
    top: 50px;
    left: -35px;
    width: 140px;
    margin: 0 0px 0 0;
  }
  .conceptModule01 .photo03Wrap .photo03.type3 {
    width: 53.3333333333vw;
    /*					width : 200px;*/
    max-width: 200px;
    left: auto;
    top: 120px;
    right: -35px;
    z-index: 2;
  }
  .conceptModule01 .photo03Wrap .photo03.type2 {
    width: 130px;
    top: 0;
    left: 50%;
    margin: 0 0 0 -65px;
  }
  .conceptModule01 .photo03Wrap .photo03.type4 {
    width: 160px;
    top: 220px;
    left: 0;
    margin: 0 0 0 0;
    z-index: 3;
  }
  .conceptModule01 .photo04Wrap {
    position: relative;
    min-height: 246px;
    margin: 0px 0 0;
  }
  .conceptModule01 .photo04Wrap .photo04 {
    position: absolute;
    top: 40px;
    right: 0px;
    width: 242px;
    margin: 0 0px 0 0;
  }
}

@media screen and (min-width: 768px), print {
  .conceptModule01 {
    padding: 60px 0 50px;
  }
  .conceptModule01 .inner {
    width: 1246px;
    margin: 0 auto;
    padding: 120px 235px 250px;
    text-align: center;
  }
  .conceptModule01 .inner .txt01 {
    font-size: 15px;
    line-height: 2.4;
    margin: 60px 0 0;
  }
  .conceptModule01 .inner .txt01.type2 {
    margin: 34px 0 0;
  }
  .conceptModule01 .inner .txt01.type3 {
    margin: 34px 0 0;
  }
  .conceptModule01 .inner .txt01.type4 {
    margin: 34px 0 0;
  }
  .conceptModule01 .photo01 {
    position: absolute;
    top: 75px;
    right: 135px;
    width: 230px;
  }
  .conceptModule01 .photo01 img {
    width: 100%;
  }
  .conceptModule01 .photo02Wrap .photo02 {
    position: absolute;
    top: 500px;
    left: 30px;
    width: 200px;
    margin: 0 0px 0 0;
  }
  .conceptModule01 .photo02Wrap .photo02.type2 {
    width: 208px;
    left: 108px;
    top: 247px;
    z-index: 2;
  }
  .conceptModule01 .photo02Wrap .photo02 img {
    width: 100%;
  }
  .conceptModule01 .photo03Wrap .photo03 {
    position: absolute;
    top: 620px;
    right: -20px;
    width: 200px;
    margin: 0 0px 0 0;
  }
  .conceptModule01 .photo03Wrap .photo03 img {
    width: 100%;
  }
  .conceptModule01 .photo03Wrap .photo03.type3 {
    width: 240px;
    right: auto;
    top: 924px;
    left: 60px;
    z-index: 2;
  }
  .conceptModule01 .photo03Wrap .photo03.type2 {
    width: 180px;
    top: 355px;
    right: 60px;
    margin: 0;
  }
  .conceptModule01 .photo03Wrap .photo03.type4 {
    width: 187px;
    top: auto;
    bottom: -80px;
    left: 378px;
    margin: 0;
    z-index: 3;
  }
  .conceptModule01 .photo04Wrap .photo04 {
    position: absolute;
    /* top: 900px; */
    right: 143px;
    width: 380px;
    margin: 0 0px 0 0;
  }
  .conceptModule01 .photo04Wrap .photo04 img {
    width: 100%;
  }
  .conceptModule01 .tit01 {
    position: relative;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 2;
    margin: 0px;
    z-index: 2;
  }
  .conceptModule01 .tit01 span {
    background: #fff;
    display: inline-block;
    margin: 5px 0;
    padding: 0 5px;
    letter-spacing: 0.12em;
  }
}

/*-----------------------
.conceptModule02Middle
-----------------------*/
.conceptModule02Middle {
  padding: 59px 0 40px;
  background: url(../../assets/img/common/ptn-beige.jpg) repeat;
  background-size: 547px auto;
}
@media screen and (min-width: 768px), print{
  .conceptModule02Middle {
      padding: 150px 0 150px;
  }
}
.conceptModule02Middle__heading {
  margin: 0 34px 0 45px;
}
/*-----------------------
.conceptModule02
-----------------------*/

.conceptModule02 .tit01 {
  font-size: 20px;
  font-weight: 700;
  position: relative;
  padding: .5rem 1rem .5rem 0px;
  border-bottom: 3px solid #009fe8;
  color: #009fe8;
}
.conceptModule02 .tit01 > span{
  font-family: 'Roboto', sans-serif;
  font-size: 35px;
  line-height: 1;
  position: absolute;
  left: 0;
}

.conceptModule02 .txt01 {
  font-size: 14px;
  line-height: 2.2;
}

.conceptModule02 .photo01Wrap {
  position: relative;
  margin: 25px 0 0;
}

.conceptModule02 .photo01Wrap .ico01 {
  display: block;
  width: 123px;
  height: 142px;
  background: url(../../assets/img/concept/pic_concept07.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -40px;
  right: -40px;
  z-index: 0;
}

.conceptModule02 .photo01Wrap .ico02 {
  display: block;
  width: 80px;
  height: 92px;
  background: url(../../assets/img/concept/pic_concept08.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -40px;
  right: -20px;
  z-index: 0;
}

@media screen and (max-width: 767px) {
  .conceptModule02 {
    padding: 20px;
    margin: 0px 0 0;
  }
  .conceptModule02 .txt01 {
    margin: 20px 0 0;
  }
  .conceptModule02 .box01 {
    margin: 45px 0 0;
  }
}

@media screen and (min-width: 768px), print {
  .conceptModule02 {
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    margin: 67px auto 0;
    width: 1126px;
  }
  .conceptModule02 .box01 {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
   }
   .conceptModule02 .box01 > div:first-child{
     width: 32%;
   }
    .conceptModule02 .box01 > div:not(first-child){
      width: 65%;
   }

  .conceptModule02 .box01.type2 {
    position: relative;
  }
  .conceptModule02 .box01 .txt01 {
    margin: 10px 0 0;
    width: 92%;
  }
  .conceptModule02 .box01 .photo01Wrap {
    position: relative;
    margin: 0;
  }
}

.maintxtModule02.news .ico01 {
  display: block;
  width: 55px;
  height: 57px;
  background: url(../../assets/img/news/pic_news01.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 100px;
  left: 50%;
  z-index: 0;
  margin: 0 0 0 -170px;
}

.maintxtModule02.news .ico02 {
  display: block;
  width: 69px;
  height: 75px;
  background: url(../../assets/img/news/pic_news02.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 0px;
  left: 50%;
  z-index: 0;
  margin: 0 0 0 100px;
}

.maintxtModule02.news .ico03 {
  display: block;
  width: 61px;
  height: 84px;
  background: url(../../assets/img/news/pic_news03.png) no-repeat center;
  background-size: contain;
  position: absolute;
  bottom: -55px;
  right: 15px;
  z-index: 0;
}

@media screen and (max-width: 767px) {
  .maintxtModule02.news {
    padding: 55px 0 8px;
  }
}

@media screen and (min-width: 768px), print {
  .maintxtModule02.news b {
    font-size: 28px;
  }
  .maintxtModule02.news small {
    font-size: 12px;
  }
  .maintxtModule02.news .ico01 {
    width: 78px;
    height: 70px;
    background: url(../../assets/img/contact/pic_contact01.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 70px;
    left: 50%;
    margin: 0 0px 0 -448px;
    z-index: 0;
  }
  .maintxtModule02.news .ico02 {
    width: 98px;
    height: 87px;
    background: url(../../assets/img/contact/pic_contact02.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -40px;
    left: 50%;
    margin: 0 0px 0 -240px;
    z-index: 0;
  }
  .maintxtModule02.news .ico04 {
    width: 81px;
    height: 95px;
    background: url(../../assets/img/contact/pic_contact03.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 60px;
    left: 50%;
    margin: 0 0px 0 390px;
    z-index: 0;
  }
  .maintxtModule02.news .ico03 {
    width: 93px;
    height: 128px;
    background: url(../../assets/img/news/pic_news03_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    bottom: -47px;
    right: -40px;
    z-index: 0;
    margin: 0 0px 0 390px;
    z-index: 0;
  }
}

.maintxtModule02.newsDetail .ico01 {
  display: block;
  width: 70px;
  height: 70px;
  background: url(../../assets/img/news/pic_news06_pc.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 60px;
  left: 50%;
  z-index: 0;
  margin: 0 0 0 -170px;
}

.maintxtModule02.newsDetail .ico02 {
  display: block;
  width: 80px;
  height: 75px;
  background: url(../../assets/img/news/pic_news07_pc.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -20px;
  left: 50%;
  z-index: 0;
  margin: 0 0 0 80px;
}

@media screen and (max-width: 767px) {
  .maintxtModule02.newsDetail b {
    font-size: 18px;
  }
  .maintxtModule02.newsDetail small {
    font-size: 12px;
  }
}

@media screen and (min-width: 768px), print {
  .maintxtModule02.newsDetail {
    width: 1158px;
    text-align: left;
    position: relative;
    padding: 58px 0 24px;
  }
  .maintxtModule02.newsDetail b {
    display: inline-block;
    left: 20px;
    font-size: 26px;
  }
  .maintxtModule02.newsDetail small {
    position: absolute;
    top: 50px;
    left: 170px;
  }
  .maintxtModule02.newsDetail .ico01 {
    display: block;
    width: 80px;
    height: 80px;
    background: url(../../assets/img/news/pic_news06_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 130px;
    left: 50%;
    z-index: 0;
    margin: 0 0 0 430px;
  }
  .maintxtModule02.newsDetail .ico02 {
    margin: 0 0 0 230px;
  }
}

@media screen and (min-width: 768px), print {
  .newsWrapModule {
    width: 1130px;
    margin: 0 auto;
    padding: 40px 0 0;
    overflow: hidden;
  }
  .emgnewsWrapModule {
    width: 1130px;
    margin: 0 auto;
    padding: 40px 0 0;
    overflow: hidden;
  }
  .movieWrapModule {
    width: 1130px;
    margin: 0 auto;
    padding: 40px 0 0;
    overflow: hidden;
  }
}

/*-----------------------
.movieModule01
-----------------------*/

.movieModule01 .list01 li {
  margin: 30px 0 0;
  width: 46%;
}
.movieModule01 .list01{
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.movieModule01 .list01 .tit01 {
  display: block;
  font-size: 20px;
  line-height: 2;
  margin: 10px 0 0;
  padding: 0 0 10px;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom;
}

.movieModule01 .list01 .date {
  display: block;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 12px;
  margin: 15px 0;
}

@media screen and (max-width: 767px) {
  .movieModule01 {
    padding: 20px;
    margin: 0px 0 0;
  }
  .movieModule01 .list01{
    flex-direction: column;
  }
  .movieModule01 .list01 li {
    width: 100%;
  }
  
}

@media screen and (min-width: 768px), print {
  .movieModule01 {
    width: 855px;
    float: right;
  }
  .movieModule01 .list01 li {
    overflow: hidden;
    margin: 0 0 80px;
  }
  .movieModule01 .list01 li a:hover .photo01:after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border: solid #fff 10px;
  }
  .movieModule01 .list01 .txtBox .tit01 {
    margin: 20px 0 0;
  }
  .movieModule01 .list01 .txtBox .date {
    margin: 20px 0;
  }
  .emgnewsWrapModule .movieModule01 .list01 .txtBox {
    width: 100%;
  }

}
.videoWrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}
 
.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*-----------------------
.movieModule02
-----------------------*/

.movieModule02 .tit01 {
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: 0.1em;
}

.movieModule02 .tit02 {
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: 0.1em;
}

.movieModule02 .en {
  position: relative;
  z-index: 1;
}

.movieModule02 .btn {
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
}

.movieModule02 .ico01 {
  display: block;
  width: 136px;
  height: 123px;
  background: url(../../assets/img/news/pic_news04.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -60px;
  left: -40px;
  z-index: 0;
}

.movieModule02 .ico02 {
  display: block;
  width: 53px;
  height: 61px;
  background: url(../../assets/img/news/pic_news05.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -19px;
  left: -28px;
  z-index: 0;
}

.movieModule02 .monthlist01 {
  margin: 25px 0 0;
}

.movieModule02 .monthlist01 li a {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  position: relative;
  display: block;
  padding: 8px 0;
}

.movieModule02 .monthlist01 li a:before {
  content: "- ";
  display: inline-block;
  font-size: 14px;
  padding: 0 5px 0 0;
}

.movieModule02 .inner02 {
  margin: 30px 0 0;
}

.movieModule02 .catelist01 {
  margin: 25px 0 0;
}

.movieModule02 .catelist01 li a {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  display: block;
  padding: 8px 0;
}

.movieModule02 .catelist01 li a:before {
  content: "- ";
  display: inline-block;
  font-size: 14px;
  padding: 0 5px 0 0;
}

@media screen and (max-width: 767px) {
  .movieModule02 {
    padding: 20px;
    margin: 50px 0 0;
  }
  .movieModule02.detail {
    margin: 100px 0 0;
  }
  .movieModule02 .tit01 {
    padding: 0 0 0 20px;
  }
  .movieModule02 .tit02 {
    padding: 0 0 0 10px;
  }
  .movieModule02 .monthlist01 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .movieModule02 .monthlist01 li {
    width: 50%;
  }
  .movieModule02 .inner02 {
    margin: 60px 0 0 20px;
  }
  .movieModule02 .btn {
    margin: 25px 0 0;
    height: 50px;
    line-height: 50px;
  }
}

@media screen and (min-width: 768px), print {
  .movieModule02 {
    width: 230px;
    float: left;
    padding: 0 0 0 30px;
  }
  .movieModule02 .ico01 {
    top: -60px;
    left: -60px;
    z-index: 0;
  }
  .movieModule02 .ico02 {
    top: -20px;
    left: -36px;
  }
  .movieModule02 .monthlist01 {
    margin: 25px 0 0;
  }
  .movieModule02 .monthlist01 li a {
    padding: 3px 0;
    position: relative;
    display: block;
    left: 0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .movieModule02 .monthlist01 li a:hover {
    left: 10px;
  }
  .movieModule02 .catelist01 {
    margin: 25px 0 0;
  }
  .movieModule02 .catelist01 li a {
    padding: 3px 0;
    position: relative;
    display: block;
    left: 0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .movieModule02 .catelist01 li a:hover {
    left: 10px;
  }
  .movieModule02 .inner02 {
    margin: 70px 0 0;
  }
  .movieModule02 .btn {
    margin: 20px 0 0;
    height: 30px;
    line-height: 30px;
  }
}

/*-----------------------
.newsModule01
-----------------------*/

.newsModule01 .list01 li {
  margin: 30px 0 0;
}
.newsModule01 .list01 li > a{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.newsModule01 .list01 .cate {
  font-size: 13px;
  font-weight: 700;
  background: #009fe8;
  color: #fff;
  width: 80px;
  text-align: center;
  display: inline-block;
  line-height: 1.8;
  margin: 15px 0 0;
}

.newsModule01 .list01 .tit01 {
  display: block;
  font-size: 20px;
  line-height: 2;
  margin: 10px 0 0;
  padding: 0 0 10px;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom;
}

.newsModule01 .list01 .date {
  display: block;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 12px;
  margin: 15px 0 0;
}

.newsModule01 .list01 .desc {
  display: block;
  margin: 20px 0 0;
  font-size: 14px;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .newsModule01 {
    padding: 20px;
    margin: 0px 0 0;
  }
  .newsModule01 .list01 li > a{
    flex-direction: column;
  }
}

@media screen and (min-width: 768px), print {
  .newsModule01 {
    width: 855px;
    float: right;
  }
  .newsModule01 .list01 li {
    overflow: hidden;
    margin: 0 0 80px;
  }
  .newsModule01 .list01 li a:hover .photo01:after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border: solid #fff 10px;
  }
  .newsModule01 .list01 .photo01 {
    width: 32%;
    position: relative;
    display: block;
  }
  .newsModule01 .list01 .photo01:after {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border: solid #fff 0px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .newsModule01 .list01 .txtBox {
    width: 65%;
  }
  .newsModule01 .list01 .txtBox .tit01 {
    margin: 20px 0 0;
  }
  .newsModule01 .list01 .txtBox .date {
    margin: 20px 0 0;
  }
  .emgnewsWrapModule .newsModule01 .list01 .txtBox {
    width: 100%;
  }

}


/*-----------------------
.newsModule02
-----------------------*/

.newsModule02 .tit01 {
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: 0.1em;
}

.newsModule02 .tit02 {
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: 0.1em;
}

.newsModule02 .en {
  position: relative;
  z-index: 1;
}

.newsModule02 .btn {
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
}

.newsModule02 .ico01 {
  display: block;
  width: 136px;
  height: 123px;
  background: url(../../assets/img/news/pic_news04.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -60px;
  left: -40px;
  z-index: 0;
}

.newsModule02 .ico02 {
  display: block;
  width: 53px;
  height: 61px;
  background: url(../../assets/img/news/pic_news05.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -19px;
  left: -28px;
  z-index: 0;
}

.newsModule02 .monthlist01 {
  margin: 25px 0 0;
}

.newsModule02 .monthlist01 li a {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  position: relative;
  display: block;
  padding: 8px 0;
}

.newsModule02 .monthlist01 li a:before {
  content: "- ";
  display: inline-block;
  font-size: 14px;
  padding: 0 5px 0 0;
}

.newsModule02 .inner02 {
  margin: 30px 0 0;
}

.newsModule02 .catelist01 {
  margin: 25px 0 0;
}

.newsModule02 .catelist01 li a {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  display: block;
  padding: 8px 0;
}

.newsModule02 .catelist01 li a:before {
  content: "- ";
  display: inline-block;
  font-size: 14px;
  padding: 0 5px 0 0;
}

@media screen and (max-width: 767px) {
  .newsModule02 {
    padding: 20px;
    margin: 50px 0 0;
  }
  .newsModule02.detail {
    margin: 100px 0 0;
  }
  .newsModule02 .tit01 {
    padding: 0 0 0 20px;
  }
  .newsModule02 .tit02 {
    padding: 0 0 0 10px;
  }
  .newsModule02 .monthlist01 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .newsModule02 .monthlist01 li {
    width: 50%;
  }
  .newsModule02 .inner02 {
    margin: 60px 0 0 20px;
  }
  .newsModule02 .btn {
    margin: 25px 0 0;
    height: 50px;
    line-height: 50px;
  }
}

@media screen and (min-width: 768px), print {
  .newsModule02 {
    width: 230px;
    float: left;
    padding: 0 0 0 30px;
  }
  .newsModule02 .ico01 {
    top: -60px;
    left: -60px;
    z-index: 0;
  }
  .newsModule02 .ico02 {
    top: -20px;
    left: -36px;
  }
  .newsModule02 .monthlist01 {
    margin: 25px 0 0;
  }
  .newsModule02 .monthlist01 li a {
    padding: 3px 0;
    position: relative;
    display: block;
    left: 0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .newsModule02 .monthlist01 li a:hover {
    left: 10px;
  }
  .newsModule02 .catelist01 {
    margin: 25px 0 0;
  }
  .newsModule02 .catelist01 li a {
    padding: 3px 0;
    position: relative;
    display: block;
    left: 0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .newsModule02 .catelist01 li a:hover {
    left: 10px;
  }
  .newsModule02 .inner02 {
    margin: 70px 0 0;
  }
  .newsModule02 .btn {
    margin: 20px 0 0;
    height: 30px;
    line-height: 30px;
  }
}


/*-----------------------
.newsDetailModule01
-----------------------*/

.newsDetailModule01 .cate {
  font-size: 13px;
  font-weight: 700;
  background: #009fe8;
  color: #fff;
  width: 80px;
  text-align: center;
  display: inline-block;
  line-height: 1.8;
  margin: 15px 0 0;
}

.newsDetailModule01 .inner>.titBox>.tit01 {
  display: block;
  font-size: 20px;
  line-height: 2;
  margin: 20px 0 0;
  padding: 0 0 10px;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom;
}

.newsDetailModule01 .date {
  display: block;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 12px;
  margin: 15px 0 0;
  letter-spacing: 0.1em;
}

.newsDetailModule01 .honbun {
  display: block;
  margin: 40px 0 0;
  font-size: 14px;
  line-height: 2;
  /*
  img{
  	margin : 0 0 20px;
  }
  */
}

.newsDetailModule01 .honbun a {
  text-decoration: underline;
}

.newsDetailModule01 .honbun p {
  margin: 0 0 20px;
}

.newsDetailModule01 .honbun .wp-block-image {
  margin: 0 0 20px;
}

.newsDetailModule01 .honbun h2, .newsDetailModule01 .honbun h3, .newsDetailModule01 .honbun h4, .newsDetailModule01 .honbun .tit01 {
  display: block;
  font-size: 18px;
  margin: 0 0 20px;
}

.newsDetailModule01 .honbun .columns-center-block p {
  font-size: 13px;
}

.newsDetailModule01 .honbun .columns-center-block .image01-block__image-wrap {
  margin: 0 0 20px;
}

.newsDetailModule01 .honbun .background-color, .newsDetailModule01 .honbun .marker {
  background: -webkit-linear-gradient(transparent 40%, #D8EA4B 30%) !important;
  background: -o-linear-gradient(transparent 40%, #D8EA4B 30%) !important;
  background: linear-gradient(transparent 40%, #D8EA4B 30%) !important;
}

.newsDetailModule01 .honbun .wp-block-spicato-image01 {
  margin: 0 0 20px;
}

.newsDetailModule01 .honbun .greyBox {
  background: #F5F8FA;
  padding: 20px;
  margin: 0 0 20px;
}

.newsDetailModule01 .honbun .greyBox .wp-block-image, .newsDetailModule01 .honbun .greyBox img {
  margin: 0 auto !important;
}

.newsDetailModule01 .honbun ul, .newsDetailModule01 .honbun .list01 {
  dislay: block;
  margin: 0 0 20px;
}

.newsDetailModule01 .honbun ul li, .newsDetailModule01 .honbun .list01 li {
  padding: 0 0 0 35px;
  display: block;
  position: relative;
}

.newsDetailModule01 .honbun ul li:before, .newsDetailModule01 .honbun .list01 li:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 28px;
  background: url(../../assets/img/news/ico_list01.png) no-repeat left bottom;
  background-size: cover;
}

.newsDetailModule01 .honbun ul li a, .newsDetailModule01 .honbun .list01 li a {
  text-decoration: underline !important;
}

.newsDetailModule01 .shareBox {
  margin: 30px 0 30px;
  width: 100%;
  text-align: center;
}

.newsDetailModule01 .shareBox strong {
  display: inline-block;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 0 3px 10px;
  letter-spacing: 0.1em;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom;
}

.newsDetailModule01 .shareBox .snsList01 {
  margin: 0 0 0 10px;
  display: inline-block;
}

.newsDetailModule01 .shareBox .snsList01 li {
  display: inline-block;
  padding: 0 5px;
}

.newsDetailModule01 .shareBox .snsList01 li img {
  width: 30px;
}

@media screen and (max-width: 767px) {
  .newsDetailModule01 {
    margin: 20px 20px;
  }
  .newsDetailModule01 .inner {
    padding: 20px;
    border: #F5F8FA solid 3px;
    position: relative;
    background-image: url(../img/common/ptn-beige.jpg);
  }
  .newsDetailModule01 .inner .honbun .columns-left-block img {
    margin: 0;
  }
  .newsDetailModule01 .inner .honbun .columns-center-block .image01-block__image-wrap {
    height: auto;
  }
  .newsDetailModule01 .inner .honbun .columns-center-block .image01-block__image-wrap:before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 75%;
  }
  
}

@media screen and (min-width: 768px), print {
  .newsDetailModule01 {
    width: 855px;
    float: right;
    position: relative;
    top: -40px;
  }
  .newsDetailModule01 .inner {
    padding: 80px 80px 20px;
    border: #F5F8FA solid 3px;
    position: relative;
    background-image: url(../img/common/ptn-beige.jpg);
  }
  .newsDetailModule01 .inner .titBox {
    text-align: center;
  }
  .newsDetailModule01 .inner .titBox .tit01 {
    display: inline-block;
    margin: 0;
  }
  .newsDetailModule01 .inner .titBox .date {
    margin: 30px 0 0;
  }
  .newsDetailModule01 .honbun {
    display: block;
    margin: 50px 0 0;
    font-size: 14px;
    line-height: 2;
  }
  .newsDetailModule01 .honbun p {
    margin: 0 0 40px;
  }
  .newsDetailModule01 .honbun img {
    /*	margin : 0 0 40px;*/
    max-width: 100%;
    height: auto;
  }
  .newsDetailModule01 .honbun .wp-block-image {
    margin: 0 0 40px;
  }
  .newsDetailModule01 .honbun .columns-center-block .image01-block__image-wrap {
    height: 250px;
  }
  .newsDetailModule01 .honbun .columns-right-block .wp-block-column {
    flex-basis: auto;
  }
  .newsDetailModule01 .honbun .columns-right-block .wp-block-column p {
    margin: 0 0 20px;
  }
  .newsDetailModule01 .honbun .columns-right-block .wp-block-column:nth-of-type(1) {
    display: block;
    float: left;
    width: 375px;
  }
  .newsDetailModule01 .honbun .columns-right-block .wp-block-column:nth-of-type(2) {
    display: block;
    float: right;
    width: 280px;
  }
  .newsDetailModule01 .honbun .columns-left-block .wp-block-column {
    flex-basis: auto;
  }
  .newsDetailModule01 .honbun .columns-left-block .wp-block-column p {
    margin: 0 0 20px;
  }
  .newsDetailModule01 .honbun .columns-left-block .wp-block-column:nth-of-type(1) {
    display: block;
    float: left;
    width: 280px;
  }
  .newsDetailModule01 .honbun .columns-left-block .wp-block-column:nth-of-type(2) {
    display: block;
    float: right;
    width: 375px;
  }
  .newsDetailModule01 .honbun ul, .newsDetailModule01 .honbun .list01 {
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .newsDetailModule01 .honbun ul li, .newsDetailModule01 .honbun .list01 li {
    width: 322px;
  }
  .newsDetailModule01 .honbun ul li img, .newsDetailModule01 .honbun .list01 li img {
    width: 100%;
    margin: 0 0 20px;
  }
  .newsDetailModule01 .honbun ul li .txt02, .newsDetailModule01 .honbun .list01 li .txt02 {
    font-size: 13px;
  }
  .newsDetailModule01 .honbun .leftBox {
    overflow: hidden;
  }
  .newsDetailModule01 .honbun .leftBox .txt01 {
    display: block;
    float: left;
    width: 375px;
  }
  .newsDetailModule01 .honbun .leftBox .photo01 {
    display: block;
    float: right;
    width: 280px;
  }
  .newsDetailModule01 .honbun .rightBox {
    overflow: hidden;
  }
  .newsDetailModule01 .honbun .rightBox .txt01 {
    display: block;
    float: right;
    width: 375px;
  }
  .newsDetailModule01 .honbun .rightBox .photo01 {
    display: block;
    float: left;
    width: 280px;
  }
  .newsDetailModule01 .honbun .greyBox {
    padding: 50px;
  }
  .newsDetailModule01 .honbun .greyBox .wp-block-image, .newsDetailModule01 .honbun .greyBox img, .newsDetailModule01 .honbun .greyBox .photo01 {
    display: block;
    width: 360px;
    margin: 0 auto 40px;
  }
  .newsDetailModule01 .honbun ul, .newsDetailModule01 .honbun .list01 {
    width: 100%;
  }
  .newsDetailModule01 .honbun ul li, .newsDetailModule01 .honbun .list01 li {
    width: 100%;
    margin: 0 0 10px;
  }
  .newsDetailModule01 .honbun ul li strong, .newsDetailModule01 .honbun .list01 li strong {
    padding: 0 20px 0 0;
  }
  .newsDetailModule01 .honbun ul li p, .newsDetailModule01 .honbun .list01 li p {
    margin: 0;
    display: inline-block;
  }
  .newsDetailModule01 .shareBox {
    margin: 50px 0 50px;
  }
  .newsDetailModule01 .shareBox strong {
    font-size: 14px;
    padding: 0 3px 10px;
    letter-spacing: 0.1em;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
  }
  .newsDetailModule01 .shareBox .snsList01 {
    margin: 0 0 0 10px;
    display: inline-block;
    position: relative;
    top: 5px;
  }
  .newsDetailModule01 .shareBox .snsList01 li {
    display: inline-block;
    padding: 0 3px;
  }
  .newsDetailModule01 .shareBox .snsList01 li img {
    width: 20px;
  }
}


/*-----------------------
pageNaviModule01
-----------------------*/

.pageNaviModule01 {
  text-align: center;
  clear: both;
}
.wp-pagenavi {/* 全体 */
  margin: 20px 0;
  font-size: 14px;
}
.wp-pagenavi a {/* フォント色 */
  color: #4a4a4a;
}
.pages {/* 左の表記 */
  margin-right: 20px;
}
.wp-pagenavi .current,
.wp-pagenavi a.page {/* ボタン */
  margin: 0 6px 6px 0;
  display: inline-block;
  border: solid 1px #eee;
  width: 40px;
  height: 40px;
  border-radius: 2px;
  line-height: 40px;
  text-align: center;
}
.wp-pagenavi .current {/* カレント数字 */
  border: none;
  background: #fdd000;
  color: #493f39;
}
.wp-pagenavi a.page:hover {/* マウスオーバー */
  background: #fdd000;
  color: #493f39;
}
.wp-pagenavi .first,
.wp-pagenavi .extend {/* ... */
  margin-right: 10px;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {/* 記号の削除 */
  display: none;
}
.pageNaviModule01 .wp-pagenavi .page-numbers:not(.next), .pageNaviModule01 .wp-pagenavi .page-numbers:not(.prev) {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  padding: 0;
  margin: 0;
  font-size: 18px;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-weight: 700;
  border-radius: 50%;
  line-height: 50px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.pageNaviModule01 .wp-pagenavi .page-numbers:not(.next).current, .pageNaviModule01 .wp-pagenavi .page-numbers:not(.next):hover, .pageNaviModule01 .wp-pagenavi .page-numbers:not(.prev).current, .pageNaviModule01 .wp-pagenavi .page-numbers:not(.prev):hover {
  border-radius: 50%;
  color: #fff;
  background: #75909F;
}

.pageNaviModule01 .wp-pagenavi .next, .pageNaviModule01 .wp-pagenavi .prev {
  display: none;
}

.pageNaviModule01 .naviSet {
  width: 100%;
  min-height: 50px;
  position: relative;
}

.pageNaviModule01 .naviSet .page-numbers {
  width: 50%;
  display: block;
  margin: 0;
  font-size: 18px;
  letter-spacing: 0.1em;
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-weight: 700;
}

.pageNaviModule01 .naviSet .page-numbers.prev {
  float: left;
  width: 80px;
  position: relative;
  left: 0;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.pageNaviModule01 .naviSet .page-numbers.prev .btn02 {
  text-align: right;
  width: 107px;
  height: 70px;
  background: url("../../assets/img/news/btn_prev01.png") center center;
  background-size: cover;
}

.pageNaviModule01 .naviSet .page-numbers.prev:hover {
  left: -10px;
}

.pageNaviModule01 .naviSet .page-numbers.next {
  float: right;
  width: 80px;
  position: relative;
  left: -20px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.pageNaviModule01 .naviSet .page-numbers.next .btn02 {
  text-align: right;
  width: 107px;
  height: 70px;
  background: url("../../assets/img/news/btn_next01.png") center center;
  background-size: cover;
}

.pageNaviModule01 .naviSet .page-numbers.next:hover {
  left: -10px;
}

.pageNaviModule01 .wp-pagenavi {
  margin: 0 0 20px;
}

@media screen and (max-width: 767px) {
  .pageNaviModule01 {
    margin: 50px 0 20px;
    position: relative;
  }
  .pageNaviModule01.detail {
    margin: 30px 0 40px;
    min-height: 100px;
  }
  .pageNaviModule01.detail .naviSet {
    margin: 30px 0 0;
  }
  .pageNaviModule01 .arrowBtn {
    margin: 0 0 40px;
  }
}

@media screen and (min-width: 768px), print {
  .pageNaviModule01 {
    margin: 70px auto 0px;
    width: 850px;
    position: relative;
  }
  .pageNaviModule01.detail {
    margin: 110px auto 0px;
  }
  .pageNaviModule01.detail .naviSet {
    top: 0px;
  }
  .pageNaviModule01.detail .btnGrey {
    width: 280px;
    position: relative;
    z-index: 10;
    margin: 0 auto;
    top: -20px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .pageNaviModule01.detail .btnGrey:hover {
    background: #A0B7C4;
  }
  .pageNaviModule01 .wp-pagenavi {
    width: 600px;
    margin: 0 auto;
    position: relative;
    z-index: 3;
  }
  .pageNaviModule01 .wp-pagenavi .page-numbers {
    width: 50px !important;
    height: 50px !important;
    line-height: 50px !important;
  }
  .pageNaviModule01 .naviSet {
    width: 100%;
    margin: 0 auto;
    min-height: auto;
    top: 17px;
    position: absolute;
  }
  .pageNaviModule01 .naviSet .page-numbers.prev {
    top: -34px;
  }
  .pageNaviModule01 .naviSet .page-numbers.next {
    top: -34px;
  }
  .pageNaviModule01 .naviSet .page-numbers.next, .pageNaviModule01 .naviSet .page-numbers.prev {
    width: 105px;
    /*    .btn02{
                  width : 75px;
              }*/
  }
}

.newsWrapModule.lunchroom {
  background: url(../../assets/img/common/bg_lunchroom.jpg) repeat left top;
  background-size: 240px auto;
  margin: 200px 0 70px;
  color: #fff;
  border-bottom: solid 10px #C9A063;
}

@media screen and (max-width: 767px) {
  .newsWrapModule.lunchroom .newsWrapModule_inner.detail {
    margin: 50px 0 0;
  }
}

@media screen and (min-width: 768px), print {
  .newsWrapModule.lunchroom {
    width: 100%;
    margin: 229px auto 0;
    padding: 0;
    overflow: hidden;
    border-bottom: solid 14px #C9A063;
  }
  .newsWrapModule.lunchroom .lunchroomHead img {
    max-width: 100%;
  }
  .newsWrapModule.lunchroom .newsWrapModule_inner {
    width: 1160px;
    margin: 0 auto;
    padding: 90px 0 170px;
    overflow: hidden;
  }
  .newsWrapModule.lunchroom .newsWrapModule_inner.detail {
    padding: 90px 0 80px;
  }
}

@media screen and (min-width: 768px), print {
  .privacyModule01.lunchroom {
    margin: 90px auto 0;
  }
}

.maintxtModule02.lunchroom .ico01 {
  display: block;
  width: 52px;
  height: 50px;
  background: url(../../assets/img/lunchroom/pic_lunchroom01_pc.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 60px;
  left: 50%;
  z-index: 0;
  margin: 0 0 0 -160px;
}

.maintxtModule02.lunchroom .ico02 {
  display: block;
  width: 76px;
  height: 61px;
  background: url(../../assets/img/lunchroom/pic_lunchroom02_pc.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: 30px;
  left: 50%;
  z-index: 0;
  margin: 0 0 0 90px;
}

@media screen and (min-width: 768px), print {
  .maintxtModule02.lunchroom {
    padding: 24px 0 24px !important;
    width: 800px;
  }
  .maintxtModule02.lunchroom b {
    display: inline-block;
  }
  .maintxtModule02.lunchroom small {
    display: inline-block;
    position: relative;
    top: -15px;
    left: 15px;
  }
  .maintxtModule02.lunchroom .ico01 {
    display: block;
    width: 81px;
    height: 80px;
    background: url(../../assets/img/lunchroom/pic_lunchroom01_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 0px;
    left: 50%;
    z-index: 0;
    margin: -10px 0 0 -290px;
  }
  .maintxtModule02.lunchroom .ico02 {
    display: block;
    width: 105px;
    height: 84px;
    background: url(../../assets/img/lunchroom/pic_lunchroom02_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -20px;
    left: 50%;
    z-index: 0;
    margin: 0 0 0 220px;
  }
}


/*-----------------------
.lunchroomModule01
-----------------------*/

.lunchroomModule01 .box01 {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  text-align: center;
  background: url(../../assets/img/common/border01_white.png) repeat-x left bottom;
  padding: 0 0 40px;
}

.lunchroomModule01 .box02 {
  margin: 40px 0 0;
}

.lunchroomModule01 .box02 .copy {
  text-align: center;
}

.lunchroomModule01 .box02 span {
  display: inline-block;
  margin: 12px 0px 0;
  padding: 0px 5px;
  line-height: 1.8;
  font-size: 18px;
  font-weight: 700;
  background: linear-gradient(transparent 0%, #fff 0%);
  color: #3B4131;
}

.lunchroomModule01 .box02 .txt01 {
  margin: 40px 0 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .lunchroomModule01 {
    margin: 25px 20px 0;
  }
  .lunchroomModule01 .box02 span {
    margin: 12px -20px 0;
  }
}

@media screen and (min-width: 768px), print {
  .lunchroomModule01 {
    width: 800px;
    margin: 0 auto;
  }
  .lunchroomModule01 .copy {
    position: relative;
  }
  .lunchroomModule01 .copyBtn {
    display: block;
    width: 175px;
    height: 201px;
    position: absolute;
    top: -123px;
    right: -70px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .lunchroomModule01 .copyBtn img {
    width: 100%;
  }
  .lunchroomModule01 .copyBtn:hover {
    right: -80px;
  }
  .lunchroomModule01 .box01 {
    padding: 0 0 60px;
  }
  .lunchroomModule01 .box02 {
    margin: 50px 0 0;
  }
  .lunchroomModule01 .box02 .txt01 {
    text-align: center;
  }
  .lunchroomModule01 .box02 span.first {
    padding: 0 0 0 5px;
  }
  .lunchroomModule01 .box02 span.second {
    padding: 0 5px 0 0;
  }
}


/*-----------------------
.lunchroomModule02
-----------------------*/

.lunchroomModule02 .list01 li {
  margin: 50px 0 0;
}

.lunchroomModule02 .list01 .tit01 {
  display: block;
  font-size: 20px;
  line-height: 2;
  margin: 10px 0 0;
  padding: 0 0 10px;
  background: url(../../assets/img/common/border01_white.png) repeat-x left bottom;
}

.lunchroomModule02 .list01 .date {
  display: block;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 12px;
  margin: 18px 0 0;
  letter-spacing: 0.1em;
}

.lunchroomModule02 .list01 .desc {
  display: block;
  margin: 20px 0 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .lunchroomModule02 {
    padding: 0px 20px;
    margin: 0px 0 0;
  }
  .lunchroomModule02 .list01 .photo01 {
    width: 100%;
  }
  .lunchroomModule02 .list01 .photo01 svg {
    width: 100%;
  }
}

@media screen and (min-width: 768px), print {
  .lunchroomModule02 {
    width: 855px;
    float: right;
  }
  .lunchroomModule02 .list01 li {
    overflow: hidden;
    margin: 0 0 50px;
    padding: 20px 0 0px;
  }
  .lunchroomModule02 .list01 .photo01 {
    width: 520px;
    height: 100%;
    position: relative;
    display: block;
    float: left;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
  }
  .lunchroomModule02 .list01 a:hover .photo01 {
    transform: rotate(3deg);
  }
  .lunchroomModule02 .list01 .txtBox {
    width: 285px;
    float: right;
  }
  .lunchroomModule02 .list01 .txtBox .tit01 {
    margin: 20px 0 0;
  }
  .lunchroomModule02 .list01 .txtBox .date {
    margin: 20px 0 0;
  }
}


/*-----------------------
.lunchroomModule03
-----------------------*/

.lunchroomModule03 .tit01 {
  position: relative;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: 0.1em;
}

.lunchroomModule03 .en {
  position: relative;
  z-index: 1;
}

.lunchroomModule03 .btn {
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  background: #fff;
  color: #3B4131;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.lunchroomModule03 .btn:hover {
  background: #3B4131;
  color: #fff;
}

.lunchroomModule03 .ico01 {
  display: block;
  width: 67px;
  height: 58px;
  background: url(../../assets/img/lunchroom/pic_lunchroom03_pc.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -20px;
  left: 120px;
  z-index: 0;
}

.lunchroomModule03 .monthlist01 {
  margin: 25px 0 0;
}

.lunchroomModule03 .monthlist01 li a {
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  position: relative;
  display: block;
  padding: 8px 0;
}

.lunchroomModule03 .monthlist01 li a:before {
  content: "- ";
  display: inline-block;
  font-size: 14px;
  padding: 0 5px 0 0;
}

@media screen and (max-width: 767px) {
  .lunchroomModule03 {
    padding: 20px 20px 70px;
    margin: 80px 0 0;
  }
  .lunchroomModule03 .tit01 {
    padding: 0px 0 0 10px;
  }
  .lunchroomModule03 .monthlist01 {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  .lunchroomModule03 .monthlist01 li {
    width: 50%;
  }
  .lunchroomModule03 .btn {
    margin: 25px 0 0;
    height: 50px;
    line-height: 50px;
  }
}

@media screen and (min-width: 768px), print {
  .lunchroomModule03 {
    width: 230px;
    float: left;
    padding: 0 0 0 30px;
  }
  .lunchroomModule03 .ico01 {
    display: block;
    width: 93px;
    height: 81px;
    background: url(../../assets/img/lunchroom/pic_lunchroom03_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -35px;
    left: 120px;
    z-index: 0;
  }
  .lunchroomModule03 .monthlist01 {
    margin: 25px 0 0;
  }
  .lunchroomModule03 .monthlist01 li a {
    padding: 3px 0;
    position: relative;
    display: block;
    left: 0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .lunchroomModule03 .monthlist01 li a:hover {
    left: 10px;
  }
  .lunchroomModule03 .btn {
    margin: 20px 0 0;
    height: 30px;
    line-height: 30px;
  }
}


/*-----------------------
.lunchroomDetailModule01
-----------------------*/

.lunchroomDetailModule01 {
  color: #111;
}

.lunchroomDetailModule01 .inner>.titBox>.tit01 {
  font-size: 20px;
  width: 100%;
  padding: 25px 0 25px;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom, url(../../assets/img/common/border01.png) repeat-x left top;
}

.lunchroomDetailModule01 .inner {
  background: #fff;
}

.lunchroomDetailModule01 .inner .titBox {
  position: relative;
  text-align: left;
}

.lunchroomDetailModule01 .inner .titBox .ico01 {
  display: block;
  width: 75px;
  height: 77px;
  background: url(../../assets/img/lunchroom/pic_lunchroom05_pc.png) no-repeat center;
  background-size: contain;
  position: absolute;
  bottom: -6px;
  right: -10px;
  z-index: 0;
}

.lunchroomDetailModule01 .inner .date {
  text-align: left;
}

.lunchroomDetailModule01 .date {
  display: block;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 12px;
  margin: 15px 0 0;
  letter-spacing: 0.1em;
}

.lunchroomDetailModule01 .honbun {
  display: block;
  margin: 40px 0 0;
  font-size: 14px;
  line-height: 2;
}

.lunchroomDetailModule01 .honbun a {
  text-decoration: underline;
}

.lunchroomDetailModule01 .honbun p {
  margin: 0 0 20px;
}

.lunchroomDetailModule01 .honbun .wp-block-image {
  margin: 0 0 20px;
}

.lunchroomDetailModule01 .honbun h2, .lunchroomDetailModule01 .honbun h3, .lunchroomDetailModule01 .honbun h4, .lunchroomDetailModule01 .honbun .tit01 {
  display: block;
  font-size: 18px;
  margin: 0 0 20px;
}

.lunchroomDetailModule01 .honbun .columns-center-block p {
  font-size: 13px;
}

.lunchroomDetailModule01 .honbun .columns-center-block .image01-block__image-wrap {
  margin: 0 0 20px;
}

.lunchroomDetailModule01 .honbun .background-color, .lunchroomDetailModule01 .honbun .marker {
  background: -webkit-linear-gradient(transparent 40%, #D8EA4B 30%) !important;
  background: -o-linear-gradient(transparent 40%, #D8EA4B 30%) !important;
  background: linear-gradient(transparent 40%, #D8EA4B 30%) !important;
}

.lunchroomDetailModule01 .honbun .wp-block-spicato-image01 {
  margin: 0 0 20px;
}

.lunchroomDetailModule01 .honbun .greyBox {
  position: relative;
  background: #FFFCF0;
  padding: 50px 20px 40px;
  margin: 0 0 20px;
}

.lunchroomDetailModule01 .honbun .greyBox img {
  margin: 0 auto;
}

.lunchroomDetailModule01 .honbun .greyBox:after {
  content: "";
  display: block;
  height: 2px;
  width: 100%;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom #FFFCF0;
  position: absolute;
  top: 10px;
  left: 0;
}

.lunchroomDetailModule01 .honbun .greyBox:before {
  content: "";
  display: block;
  height: 2px;
  width: 100%;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom #FFFCF0;
  position: absolute;
  bottom: 10px;
  left: 0;
}

.lunchroomDetailModule01 .honbun .greyBox h2, .lunchroomDetailModule01 .honbun .greyBox h3, .lunchroomDetailModule01 .honbun .greyBox h4, .lunchroomDetailModule01 .honbun .greyBox .tit01 {
  background: #fff;
  color: #333;
}

.lunchroomDetailModule01 .honbun .greyBox .ico01 {
  display: block;
  width: 92px;
  height: 80px;
  background: url(../../assets/img/lunchroom/pic_lunchroom06_pc.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -8px;
  right: 5px;
  z-index: 2;
}

.lunchroomDetailModule01 .honbun ul, .lunchroomDetailModule01 .honbun .list01 {
  margin: 0 0 20px;
}

.lunchroomDetailModule01 .honbun ul li, .lunchroomDetailModule01 .honbun .list01 li {
  padding: 0 0 0 35px;
  display: block;
  position: relative;
}

.lunchroomDetailModule01 .honbun ul li:before, .lunchroomDetailModule01 .honbun .list01 li:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 25px;
  height: 28px;
  background: url(../../assets/img/lunchroom/ico_list02.png) no-repeat left bottom;
  background-size: cover;
}

.lunchroomDetailModule01 .honbun ul li a, .lunchroomDetailModule01 .honbun .list01 li a {
  text-decoration: underline !important;
}

.lunchroomDetailModule01 .shareBox {
  margin: 30px 0 30px;
  width: 100%;
  text-align: center;
}

.lunchroomDetailModule01 .shareBox strong {
  display: inline-block;
  font-family: 'Quicksand', sans-serif;
  font-weight: 700;
  font-size: 16px;
  padding: 0 3px 10px;
  letter-spacing: 0.1em;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom;
}

.lunchroomDetailModule01 .shareBox .snsList01 {
  margin: 0 0 0 10px;
  display: inline-block;
}

.lunchroomDetailModule01 .shareBox .snsList01 li {
  display: inline-block;
  padding: 0 5px;
}

.lunchroomDetailModule01 .shareBox .snsList01 li img {
  width: 30px;
}

@media screen and (max-width: 767px) {
  .lunchroomDetailModule01 {
    margin: 20px 20px;
  }
  .lunchroomDetailModule01 .inner {
    padding: 60px 20px 20px;
    border: #F5F8FA solid 3px;
  }
  .lunchroomDetailModule01 .inner .honbun .columns-left-block img {
    margin: 0;
  }
  .lunchroomDetailModule01 .inner .honbun .columns-center-block .image01-block__image-wrap {
    height: auto;
    /*min-height: 240px;*/
  }
  .lunchroomDetailModule01 .inner .honbun .columns-center-block .image01-block__image-wrap:before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 75%;
  }
}

@media screen and (min-width: 768px), print {
  .lunchroomDetailModule01 {
    width: 855px;
    float: right;
    position: relative;
    top: -40px;
  }
  .lunchroomDetailModule01 .inner {
    padding: 60px 80px 20px;
    border: #F5F8FA solid 3px;
  }
  .lunchroomDetailModule01 .inner .titBox {
    text-align: center;
  }
  .lunchroomDetailModule01 .inner .titBox .ico01 {
    display: block;
    width: 115px;
    height: 117px;
    background: url(../../assets/img/lunchroom/pic_lunchroom05_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    bottom: 5px;
    right: -50px;
    z-index: 0;
  }
  .lunchroomDetailModule01 .inner .titBox .tit01 {
    display: inline-block;
    margin: 0;
  }
  .lunchroomDetailModule01 .inner .titBox .date {
    margin: 30px 0 0;
  }
  .lunchroomDetailModule01 .honbun {
    display: block;
    margin: 50px 0 0;
    font-size: 14px;
    line-height: 2;
  }
  .lunchroomDetailModule01 .honbun .tit01 {
    font-size: 18px;
  }
  .lunchroomDetailModule01 .honbun p {
    margin: 0 0 40px;
  }
  .lunchroomDetailModule01 .honbun img {
    /*	margin : 0 0 40px;*/
    max-width: 100%;
  }
  .lunchroomDetailModule01 .honbun .columns-center-block .image01-block__image-wrap {
    height: 250px;
  }
  .lunchroomDetailModule01 .honbun .columns-right-block .wp-block-column {
    flex-basis: auto;
  }
  .lunchroomDetailModule01 .honbun .columns-right-block .wp-block-column p {
    margin: 0 0 20px;
  }
  .lunchroomDetailModule01 .honbun .columns-right-block .wp-block-column:nth-of-type(1) {
    display: block;
    float: left;
    width: 375px;
  }
  .lunchroomDetailModule01 .honbun .columns-right-block .wp-block-column:nth-of-type(2) {
    display: block;
    float: right;
    width: 280px;
  }
  .lunchroomDetailModule01 .honbun .columns-left-block .wp-block-column {
    flex-basis: auto;
  }
  .lunchroomDetailModule01 .honbun .columns-left-block .wp-block-column p {
    margin: 0 0 20px;
  }
  .lunchroomDetailModule01 .honbun .columns-left-block .wp-block-column:nth-of-type(1) {
    display: block;
    float: left;
    width: 280px;
  }
  .lunchroomDetailModule01 .honbun .columns-left-block .wp-block-column:nth-of-type(2) {
    display: block;
    float: right;
    width: 375px;
  }
  .lunchroomDetailModule01 .honbun .list01 {
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .lunchroomDetailModule01 .honbun .list01 li {
    width: 322px;
  }
  .lunchroomDetailModule01 .honbun .list01 li img {
    width: 100%;
    margin: 0 0 20px;
  }
  .lunchroomDetailModule01 .honbun .list01 li .txt02 {
    font-size: 13px;
  }
  .lunchroomDetailModule01 .honbun .leftBox {
    overflow: hidden;
  }
  .lunchroomDetailModule01 .honbun .leftBox .txt01 {
    display: block;
    float: left;
    width: 375px;
  }
  .lunchroomDetailModule01 .honbun .leftBox .photo01 {
    display: block;
    float: right;
    width: 280px;
  }
  .lunchroomDetailModule01 .honbun .rightBox {
    overflow: hidden;
  }
  .lunchroomDetailModule01 .honbun .rightBox .txt01 {
    display: block;
    float: right;
    width: 375px;
  }
  .lunchroomDetailModule01 .honbun .rightBox .photo01 {
    display: block;
    float: left;
    width: 280px;
  }
  .lunchroomDetailModule01 .honbun .greyBox {
    padding: 50px;
    position: relative;
  }
  .lunchroomDetailModule01 .honbun .greyBox .wp-block-image {
    margin: 0 auto 40px auto !important;
  }
  .lunchroomDetailModule01 .honbun .greyBox img, .lunchroomDetailModule01 .honbun .greyBox .photo01 {
    display: block;
    width: 360px;
    margin: 0 auto 40px auto !important;
  }
  .lunchroomDetailModule01 .honbun .greyBox:after {
    content: "";
    display: block;
    height: 2px;
    width: 100%;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom #FFFCF0;
    position: absolute;
    top: 10px;
    left: 0;
  }
  .lunchroomDetailModule01 .honbun .greyBox:before {
    content: "";
    display: block;
    height: 2px;
    width: 100%;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom #FFFCF0;
    position: absolute;
    bottom: 10px;
    left: 0;
  }
  .lunchroomDetailModule01 .honbun .greyBox .ico01 {
    display: block;
    width: 142px;
    height: 120px;
    background: url(../../assets/img/lunchroom/pic_lunchroom06_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -18px;
    right: -30px;
    z-index: 2;
  }
  .lunchroomDetailModule01 .honbun .greyBox .photo01 {
    display: block;
    width: 360px;
    margin: 0 auto;
  }
  .lunchroomDetailModule01 .honbun ul, .lunchroomDetailModule01 .honbun .list01 {
    margin: 0 0 20px;
    width: 100%;
  }
  .lunchroomDetailModule01 .honbun ul li, .lunchroomDetailModule01 .honbun .list01 li {
    width: 100%;
    margin: 0 0 10px;
  }
  .lunchroomDetailModule01 .honbun ul li strong, .lunchroomDetailModule01 .honbun .list01 li strong {
    padding: 0 20px 0 0;
  }
  .lunchroomDetailModule01 .honbun ul li p, .lunchroomDetailModule01 .honbun .list01 li p {
    margin: 0;
    display: inline-block;
  }
  .lunchroomDetailModule01 .shareBox {
    margin: 50px 0 50px;
  }
  .lunchroomDetailModule01 .shareBox strong {
    font-size: 14px;
    padding: 0 3px 10px;
    letter-spacing: 0.1em;
    background: url(../../assets/img/common/border01.png) repeat-x left bottom;
  }
  .lunchroomDetailModule01 .shareBox .snsList01 {
    margin: 0 0 0 10px;
    display: inline-block;
    position: relative;
    top: 5px;
  }
  .lunchroomDetailModule01 .shareBox .snsList01 li {
    display: inline-block;
    padding: 0 3px;
  }
  .lunchroomDetailModule01 .shareBox .snsList01 li img {
    width: 20px;
  }
}

.newsDetailModule01 .honbun .greyBox .wp-block-image {
  margin: 0 auto 40px auto !important;
}


/*-----------------------
pageNaviModule01.lunchroom
-----------------------*/

.pageNaviModule01.lunchroom .wp-pagenavi .page-numbers:not(.next).current, .pageNaviModule01.lunchroom .wp-pagenavi .page-numbers:not(.next):hover, .pageNaviModule01.lunchroom .wp-pagenavi .page-numbers:not(.prev).current, .pageNaviModule01.lunchroom .wp-pagenavi .page-numbers:not(.prev):hover {
  color: #000111;
  background: #fff;
}

.pageNaviModule01.lunchroom .wp-pagenavi .next, .pageNaviModule01.lunchroom .wp-pagenavi .prev {
  display: none;
}

.pageNaviModule01.lunchroom .naviSet .page-numbers.prev .btn02 {
  text-align: right;
  width: 107px;
  height: 70px;
  background: url("../../assets/img/lunchroom/btn_prev01.png") center center;
  background-size: cover;
}

.pageNaviModule01.lunchroom .naviSet .page-numbers.next .btn02 {
  text-align: right;
  width: 107px;
  height: 70px;
  background: url("../../assets/img/lunchroom/btn_next01.png") center center;
  background-size: cover;
}

.pageNaviModule01.lunchroom .naviSet .page-numbers.next:hover {
  left: -10px;
}

.pageNaviModule01.lunchroom .btnWhite {
  background: #fff;
}

@media screen and (max-width: 767px) {
  .pageNaviModule01.lunchroom .btnWhite {
    margin: 0 0 20px;
  }
}

@media screen and (min-width: 768px), print {
  .pageNaviModule01.lunchroom .btnWhite {
    width: 280px;
    position: relative;
    z-index: 10;
    margin: 0 auto;
    top: -20px;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .pageNaviModule01.lunchroom .btnWhite:hover {
    background: #FFFCF0;
  }
}

@media screen and (max-width: 767px) {
  .maintxtModule01.outline .ico01 {
    display: block;
    width: 78px;
    height: 72px;
    background: url(../../assets/img/outline/ico_outline01.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 0px;
    left: 50%;
    z-index: 0;
    margin: 0 0 0 -170px;
  }
  .maintxtModule01.outline .ico02 {
    display: block;
    width: 49px;
    height: 60px;
    background: url(../../assets/img/outline/ico_outline02.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 30px;
    left: 50%;
    z-index: 0;
    margin: 0 0 0 110px;
  }
}

@media screen and (min-width: 768px), print {
  .maintxtModule01.outline .ico01 {
    display: block;
    width: 121px;
    height: 113px;
    background: url(../../assets/img/outline/ico_outline05_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -60px;
    left: 50%;
    z-index: 0;
    margin: 0 0 0 -470px;
  }
  .maintxtModule01.outline .ico02 {
    display: block;
    width: 93px;
    height: 113px;
    background: url(../../assets/img/outline/ico_outline06_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 100px;
    left: 50%;
    z-index: 0;
    margin: 0 0 0 -310px;
  }
  .maintxtModule01.outline .ico03 {
    display: block;
    width: 106px;
    height: 130px;
    background: url(../../assets/img/outline/ico_outline07_pc.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: -70px;
    left: 50%;
    z-index: 0;
    margin: 0 0 0 310px;
  }
}


/*-----------------------
.outlineModule01
-----------------------*/

.outlineModule01 {
  background: url(../../assets/img/common/ptn-beige.jpg) repeat;
  background-size: 547px auto;
}

.outlineModule01 .inner01 .tit01 {
  background: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 50px;
  text-align: center;
  position: relative;
}

.outlineModule01 .inner01 .box01 dd {
  display: block;
  font-size: 14px;
  padding: 10px 3px 10px 20px;
  letter-spacing: 0.1em;
}

.outlineModule01 .inner01 .box01 dd .txt02 {
  font-size: 13px;
  font-weight: normal;
  padding: 0 0 0 1em;
  line-height: 2;
  position: relative;
}

.outlineModule01 .inner01 .box01 dd .txt02:before {
  content: "※";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 13px;
}

.outlineModule01 .inner02 {
  background: #fff;
  padding: 25px;
}

.outlineModule01 .inner02 .titWrap {
  text-align: center;
}

.outlineModule01 .inner02 .tit01 {
  display: inline-block;
  font-size: 18px;
  padding: 0 3px 10px;
  letter-spacing: 0em;
  text-align: center;
  background: url(../../assets/img/common/border01.png) repeat-x left bottom;
}

.outlineModule01 .inner02 .txt01 {
  margin: 20px 0 0;
  font-size: 14px;
  line-height: 2.5;
}

.outlineModule01 .inner02 .txt02 {
  margin: 20px 0 0;
  padding: 0 0 0 1.2em;
  font-size: 13px;
  line-height: 2;
  position: relative;
}

.outlineModule01 .inner02 .txt02:before {
  content: "※";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 13px;
}

@media screen and (max-width: 767px) {
  .outlineModule01 {
    padding: 50px 20px 100px;
    margin: 0px 0 0;
  }
  .outlineModule01 .inner01 .photo01 {
    margin: 30px 0 0;
  }
  .outlineModule01 .inner01 .box01 {
    position: relative;
    top: 20px;
  }
  .outlineModule01 .inner02 {
    margin: 0px 0 0;
    padding: 25px 25px 75px;
    position: relative;
  }
  .outlineModule01 .inner02 .btn {
    margin: 20px 17px 0;
    font-size: 16px;
  }
  .outlineModule01 .inner02 .photo01 {
    position: absolute;
    width: 240px;
    bottom: -135px;
    left: 50%;
    margin: 0 0 0 -120px;
  }
}

@media screen and (min-width: 768px), print {
  .outlineModule01 {
    overflow: hidden;
    margin: 60px auto 0;
    padding: 0 0 100px;
    width: 1246px;
  }
  .outlineModule01 .inner01 {
    width: 1030px;
    margin: 0 auto;
    padding: 70px 0px;
    position: relative;
  }
  .outlineModule01 .inner01 .tit01 {
    width: 320px;
    font-size: 22px;
  }
  .outlineModule01 .inner01 .box01 {
    margin: 20px 0 0;
    position: relative;
    display: flex;
  }
  .outlineModule01 .inner01 .box01 dl {
    width: 32%;
  }
  .outlineModule01 .inner01 .box01 dl.type2 {
    display: block;
    position: absolute;
    top: 0;
    left: 350px;
    width: 330px;
  }
  .outlineModule01 .inner01 .box01 dt {
    font-size: 16px;
    margin: 20px 0 0;
    font-weight: 700;
  }
  .outlineModule01 .inner01 .box01 dd {
    display: block;
    font-size: 16px;
    padding: 15px 3px 10px 10px;
    letter-spacing: 0em;
  }
  .outlineModule01 .inner01 .box01 dd .txt02 {
    font-size: 14px;
    font-weight: normal;
    padding: 0 0 0 1em;
    position: relative;
  }
  .outlineModule01 .inner01 .box01 dd .txt02:before {
    content: "※";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 14px;
  }
  .outlineModule01 .inner01 .photo02 {
    position: absolute;
    display: block;
    bottom: 180px;
    right: -55px;
    width: 357px;
  }
  .outlineModule01 .inner01 .photo02 img {
    max-width: 100%;
  }
  .outlineModule01 .inner01 .photo03 {
    position: absolute;
    display: block;
    bottom: 280px;
    right: -125px;
    width: 192px;
  }
  .outlineModule01 .inner01 .photo03 img {
    max-width: 100%;
  }
  .outlineModule01 .inner02 {
    width: 1000px;
    background: #fff;
    margin: 0 auto;
    padding: 70px 80px;
    position: relative;
  }
  .outlineModule01 .inner02 .titWrap {
    text-align: left;
  }
  .outlineModule01 .inner02 .titWrap .tit01 {
    display: inline-block;
    font-size: 20px;
    padding: 0 3px 15px;
    letter-spacing: 0em;
    text-align: left;
  }
  .outlineModule01 .inner02 .txt01 {
    margin: 30px 0 0;
  }
  .outlineModule01 .inner02 .btn {
    margin: 50px 0 0;
    width: 350px;
    height: 60px;
    line-height: 60px;
    font-size: 16px;
  }
  .outlineModule01 .inner02 .photo02 {
    position: absolute;
    display: block;
    bottom: -50px;
    right: -105px;
    width: 323px;
  }
  .outlineModule01 .inner02 .photo02 img {
    max-width: 100%;
  }
  .outlineModule01 .ico02 {
    display: block;
    width: 90px;
    height: 102px;
    background: url(../../assets/img/concept/pic_concept08.png) no-repeat center;
    background-size: contain;
    position: absolute;
    top: 220px;
    right: -40px;
    z-index: 0;
  }
}

.accessSection {
  margin: 100px 15px 0;
}

.accessSection .text03 {
  font-size: 15px;
  font-weight: normal;
}

.accessSection .text03 small {
  font-size: 12px;
}

.accessSection .tit03 {
  background: #fff;
  font-weight: 700;
  line-height: 50px;
  text-align: center;
  position: relative;
  width: 320px;
  font-size: 22px;
}

@media screen and (min-width: 768px), print {
  .accessSection {
    overflow: hidden;
    margin: 60px auto 0;
    padding: 0 0 100px;
    width: 1030px;
  }
  .accessSection .inner {
    width: 1000;
  }
  .accessSection .accessInfo .text01 {
    font-size: 15px;
    letter-spacing: 0;
  }
  .accessSection .accessInfo .text02 {
    font-size: 15px;
    letter-spacing: 0;
  }
  .accessSection .accessInfo .text03 {
    font-size: 15px;
    letter-spacing: 0;
  }
}

.maintxtModule01.schedule .ico {
  background: no-repeat center;
  background-size: contain;
}

.maintxtModule01.schedule .ico01 {
  height: 57px;
  width: 64px;
  background-image: url(../../assets/img/schedule/img_jumbotron-leaf01.png);
  top: -29px;
  right: 46px;
}

.maintxtModule01.schedule .ico02 {
  height: 65px;
  width: 60px;
  background-image: url(../../assets/img/schedule/img_jumbotron-leaf02.png);
  top: 62px;
  left: 39px;
}

.maintxtModule01.schedule .ico03 {
  background-image: url(../../assets/img/schedule/img_jumbotron-leaf03.png);
}

.mainimgModule01.schedule::after {
  content: "";
  background: url(../../assets/img/common/img_jumbotron-character.png) no-repeat center;
  background-size: contain;
  height: 47px;
  width: 74px;
  position: absolute;
  right: 35px;
  bottom: 100%;
}

@media screen and (max-width: 374px) {
  .mainimgModule01.schedule::after {
    height: 12.5333333333vw;
    width: 19.7333333333vw;
    right: 9.3333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .mainimgModule01.schedule::after {
    height: 61px;
    width: 97px;
    right: 100px;
  }
}

.class-rooms-module {
  padding: 55px 20px 60px;
  background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 240px 203px;
}

.class-room-module {
  margin-top: 40px;
}

.class-room-module__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 28px 38px 23px;
}

.class-room-module__name {
  padding-bottom: 7px;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .1em;
  position: relative;
}

.class-room-module__name::after {
  content: "";
  height: 2px;
  width: 100%;
  background: url(../../assets/img/common/border01.png) repeat-x left top;
  position: absolute;
  bottom: 0;
  left: 0;
}

.class-room-module__age {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 35px;
  padding: 0 15px;
  color: #FFF;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
}

.class-room-module__texts {
  align-self: flex-start;
}

.class-room-module__text {
  margin-top: 15px;
  font-size: 14px;
  line-height: 2;
  letter-spacing: .1em;
}

.class-room-module__illust {
  width: 259px;
}

.class-room-module:nth-of-type(odd) .class-room-module__age {
  background: #9ED800;
}

.class-room-module:nth-of-type(even) .class-room-module__age {
  background: #007FEB;
}

.class-room-module__strong {
  display: block;
  margin-top: 32px;
  font-size: 16px;
  line-height: 2;
  letter-spacing: .1em;
}

.schedule-intro-module {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: 90px;
}

.schedule-intro-module__heading {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 12px;
  position: relative;
}

.schedule-intro-module__heading::after {
  content: "";
  height: 2px;
  width: 100%;
  background: url(../../assets/img/common/border01.png) repeat-x left top;
  position: absolute;
  bottom: 0;
  left: 0;
}

.schedule-intro-module__heading small, .schedule-intro-module__heading span {
  line-height: 1;
  letter-spacing: .1em;
}

.schedule-intro-module__heading small {
  font-size: 16px;
}

.schedule-intro-module__heading span {
  margin-top: 20px;
  font-size: 20px;
  font-weight: 700;
}

.schedule-intro-module__text {
  margin-top: 26px;
  font-size: 14px;
  font-weight: 700;
  line-height: 2.142857143;
  letter-spacing: .1em;
  text-align: center;
}

.schedule-module__body {
  position: relative;
}

.schedule-module__body::before {
  content: "";
  width: 20px;
  position: absolute;
  top: 10px;
  bottom: 0;
}

.schedule-module__title {
  font-size: 16px;
  font-weight: 700;
  color: #FFF;
  line-height: 60px;
  letter-spacing: .1em;
  position: relative;
}

.schedule-module:not(:first-of-type) .schedule-module__title::before {
  content: "";
  width: 18px;
  z-index: -1;
  position: absolute;
}

.schedule-module__text {
  font-size: 14px;
  line-height: 2;
  letter-spacing: .1em;
}

.schedule-module:nth-of-type(odd) .schedule-module__body::before {
  background: url(../../assets/img/schedule/bg_schedule03.svg) repeat;
}

.schedule-module:nth-of-type(even) .schedule-module__body::before {
  background: url(../../assets/img/schedule/bg_schedule04.svg) repeat;
}

.schedule-module:nth-of-type(odd) .schedule-module__title {
  background: url(../../assets/img/schedule/bg_schedule01.svg)repeat;
}

.schedule-module:nth-of-type(odd) .schedule-module__title::before {
  background: url(../../assets/img/schedule/bg_schedule04.svg) repeat;
}

.schedule-module:nth-of-type(even) .schedule-module__title {
  background: url(../../assets/img/schedule/bg_schedule02.svg) repeat;
  /* background-size: 100% 100%; */
}

.schedule-module:nth-of-type(even) .schedule-module__title::before {
  background: url(../../assets/img/schedule/bg_schedule03.svg) repeat;
}

.schedule-module--08 .schedule-module__body::before {
  display: none;
}

.schedule-module__figure {
  position: relative;
}

/* .schedule-module__figure::before {
  content: "";
  background: no-repeat center;
  background-size: 100% 100%;
  position: absolute;
} */

/* .schedule-module--01 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating01.png);
}

.schedule-module--02 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating02.png);
}

.schedule-module--03 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating03.png);
}

.schedule-module--04 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating04.png);
}

.schedule-module--05 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating05.png);
}

.schedule-module--06 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating06.png);
}

.schedule-module--07 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating07.png);
}

.schedule-module--08 .schedule-module__figure::before {
  background-image: url(../../assets/img/schedule/img_floating08.png);
} */

@media screen and (max-width: 767px) {
  .accessSection .tit03{
    width: auto;
  }
  .maintxtModule01.schedule .ico03 {
    display: none;
  }
  .headingModule03 span {
    width: 100%;
  }
  .class-rooms-module__heading {
    margin: 0 20px;
  }
  .class-room-module {
    margin: 40px auto 0;
    padding: 57px 0;
    max-width: 335px;
    position: relative;
  }
  .class-room-module::before, .class-room-module::after {
    content: "";
    height: 57px;
    width: 100%;
    background: no-repeat;
    background-size: 100% 100%;
    backface-visibility: hidden;
    position: absolute;
    left: 0;
  }
  .class-room-module::before {
    top: 0;
    background-position: center bottom;
  }
  .class-room-module::after {
    background-position: center top;
    bottom: 0;
  }
  .class-room-module__inner {
    background: #fff;
  }
  .class-room-module:nth-of-type(odd)::before {
    background-image: url(../../assets/img/schedule/bg_parts01.svg);
  }
  .class-room-module:nth-of-type(odd)::after {
    background-image: url(../../assets/img/schedule/bg_parts02.svg);
  }
  .class-room-module:nth-of-type(odd) .class-room-module__inner {
    border-right: solid 20px #D8EA4B;
  }
  .class-room-module:nth-of-type(even)::before {
    background-image: url(../../assets/img/schedule/bg_parts03.svg);
  }
  .class-room-module:nth-of-type(even)::after {
    background-image: url(../../assets/img/schedule/bg_parts04.svg);
  }
  .class-room-module:nth-of-type(even) .class-room-module__inner {
    border-left: solid 20px #007FEB;
  }
  .schedules-module {
    margin: 52px auto 80px;
    padding: 0 20px;
    max-width: 375px;
  }
  .schedule-module:nth-of-type(even) .schedule-module__body::before{
    background: url(../../assets/img/schedule/bg_schedule04.svg) repeat-y;
    background-size: 26px;
  }
  .schedule-module:nth-of-type(odd) .schedule-module__body::before{
    background: url(../../assets/img/schedule/bg_schedule03.svg) repeat-y;
    background-size: 26px;
    z-index: -1;
  }
  .schedule-module:nth-of-type(odd) .schedule-module__title::before{
    background: url(../../assets/img/schedule/bg_schedule04.svg) repeat-y;
    background-size: 26px;
  }
  .schedule-module:nth-of-type(even) .schedule-module__title::before{
    background: url(../../assets/img/schedule/bg_schedule03.svg) repeat-y;
    background-size: 26px;
  }
  .schedule-module--01 .schedule-module__figure::before {
    height: 52px;
    width: 61px;
    top: -20px;
    left: -20px;
  }
  .schedule-module--01 .schedule-module__body {
    padding-bottom: 62px;
  }
  .schedule-module--01 .schedule-module__body::before {
    right: 22px;
  }
  .schedule-module--01 .schedule-module__title {
    margin-top: 24px;
    padding-left: 20px;
    line-height: 50px;
  }
  .schedule-module--01 .schedule-module__text {
    margin-top: 19px;
  }
  .schedule-module--02 .schedule-module__figure::before {
    height: 73px;
    width: 75px;
    bottom: -24px;
    right: -28px;
  }
  .schedule-module--02 .schedule-module__body {
    padding-bottom: 43px;
  }
  .schedule-module--02 .schedule-module__body::before {
    left: 29px;
  }
  .schedule-module--02 .schedule-module__title {
    margin-top: 25px;
    padding-left: 22px;
    line-height: 50px;
  }
  .schedule-module--02 .schedule-module__title::before {
    height: 30px;
    background-image: url(../../assets/img/schedule/bg_schedule04.svg) !important;
    top: -25px;
    right: 22px;
  }
  .schedule-module--02 .schedule-module__text {
    margin: 19px 0 0 65px;
  }
  .schedule-module--03 {
    padding-left: 20px;
    position: relative;
  }
  .schedule-module--03 .schedule-module__figure::before {
    height: 73px;
    width: 65px;
    top: -1px;
    left: -30px;
  }
  .schedule-module--03 .schedule-module__figure::after {
    content: "";
    background: url(../../assets/img/common/ptn-beige.jpg) repeat;
    background-size: auto;
    z-index: -1;
    position: absolute;
    top: -33px;
    right: -15px;
    bottom: -24px;
    left: -25px;
  }
  .schedule-module--03 .schedule-module__body {
    padding-bottom: 43px;
  }
  .schedule-module--03 .schedule-module__body::before {
    right: 22px;
  }
  .schedule-module--03 .schedule-module__title {
    margin: 21px 0 0 8px;
    padding-left: 22px;
    line-height: 48px;
  }
  .schedule-module--03 .schedule-module__title::before {
    height: 30px;
    top: -21px;
    left: 32px;
  }
  .schedule-module--03 .schedule-module__text {
    margin: 19px 0 0 8px;
  }
  .schedule-module--04 .schedule-module__figure::before {
    height: 61px;
    width: 61px;
    top: -19px;
    right: -20px;
  }
  .schedule-module--04 .schedule-module__body {
    padding-bottom: 44px;
  }
  .schedule-module--04 .schedule-module__body::before {
    left: 22px;
  }
  .schedule-module--04 .schedule-module__title {
    margin-top: 21px;
    padding-left: 18px;
    line-height: 46px;
  }
  .schedule-module--04 .schedule-module__title::before {
    height: 30px;
    top: -21px;
    right: 22px;
  }
  .schedule-module--04 .schedule-module__text {
    margin: 18px 0 0 45px;
  }
  .schedule-module--05 .schedule-module__figure::before {
    height: 62px;
    width: 79px;
    bottom: -17px;
    left: -17px;
  }
  .schedule-module--05 .schedule-module__body {
    padding-bottom: 53px;
  }
  .schedule-module--05 .schedule-module__body::before {
    right: 52px;
  }
  .schedule-module--05 .schedule-module__title {
    margin: 28px 0px 0 0;
    padding-left: 0px;
    line-height: 50px;
  }
  .schedule-module--05 .schedule-module__title::before {
    height: 35px;
    top: -28px;
    left: 22px;
  }
  .schedule-module--05 .schedule-module__text {
    margin: 19px 0 0 0;
  }
  .schedule-module--06 {
    padding-right: 20px;
  }
  .schedule-module--06 .schedule-module__figure::before {
    height: 67px;
    width: 60px;
    top: -18px;
    right: -10px;
  }
  .schedule-module--06 .schedule-module__figure::after {
    content: "";
    background: url(../../assets/img/common/ptn-beige.jpg) repeat;
    background-size: auto;
    z-index: -1;
    position: absolute;
    top: -31px;
    right: -20px;
    bottom: -31px;
    left: 0;
  }
  .schedule-module--06 .schedule-module__body {
    padding-bottom: 45px;
  }
  .schedule-module--06 .schedule-module__body::before {
    left: 61px;
  }
  .schedule-module--06 .schedule-module__title {
    margin: 26px 0 0 0;
    padding-left: 5px;
    line-height: 46px;
  }
  .schedule-module--06 .schedule-module__title::before {
    height: 35px;
    top: -26px;
    right: 32px;
  }
  .schedule-module--06 .schedule-module__text {
    margin: 19px 0 0 122px;
  }
  .schedule-module--07 {
    /* padding-left: 40px; */
  }
  .schedule-module--07 .schedule-module__figure::before {
    height: 48px;
    width: 72px;
    left: -50px;
    bottom: 52px;
  }
  .schedule-module--07 .schedule-module__body {
    padding-bottom: 14px;
  }
  .schedule-module--07 .schedule-module__body::before {
    right: 42px;
  }
  .schedule-module--07 .schedule-module__text {
    margin: 20px 0 0 4px;
  }
  .schedule-module--07 .schedule-module__title {
    margin: 20px 0 0 4px;
    padding-right: 1px;
    text-align: right;
    line-height: 46px;
    }
  .schedule-module--07 .schedule-module__title::before {
    height: 35px;
    top: -20px;
    left: 21px;
  }
  .schedule-module--08 {
    margin-right: 13px;
  }
  .schedule-module--08 .schedule-module__figure::before {
    height: 71px;
    width: 77px;
    right: -38px;
    bottom: -27px;
  }
  .schedule-module--08 .schedule-module__title {
    margin: 22px 6px 0 0;
    padding-left: 10px;
    line-height: 46px;
  }
  .schedule-module--08 .schedule-module__title::before {
    height: 35px;
    top: -22px;
    right: 29px;
  }
  .schedule-module--08 .schedule-module__text {
    margin: 20px 0 0 0;
  }
}

@media screen and (max-width: 374px) {
  .schedules-module {
    padding: 0 5.3333333333vw;
  }
  .class-room-module {
    padding: 15.2vw 0;
  }
  .class-room-module::before, .class-room-module::after {
    height: 16vw;
  }
  .class-room-module__inner {
    border-right-width: 5.333333333vw;
  }
  .schedule-intro-module__text {
    font-size: 3.733333333vw;
  }
  .schedule-intro-module{
    margin: 20px 20px 0;
  }
  .schedule-module__title {
    font-size: 12px;
  }
  .schedule-module__text {
    font-size: 3.733333333vw;
  }
  .schedule-module--04 .schedule-module__body::before {
    left: 5.866666667vw;
  }
  .schedule-module--05 .schedule-module__body::before {
    right: 13.866666667vw;
  }
  .schedule-module--06 .schedule-module__title::before {
    right: 8.533333333vw;
  }
  .schedule-module--06 .schedule-module__text {
    margin-left: 32.533333333vw;
  }
  .schedule-intro-module__heading small {
    font-size: 4.2666666667vw;
  }
  .schedule-intro-module__heading span {
    font-size: 5.3333333333vw;
  }
  .schedule-intro-module__heading small::before {
    height: 18.4vw;
    width: 16.2666666667vw;
    top: -12.2666666667vw;
    left: -12.8vw;
  }
  .schedule-intro-module__heading small::after {
    height: 19.4666666667vw;
    width: 13.8666666667vw;
    top: -13.3333333333vw;
    right: -11.2vw;
  }
}

@media screen and (min-width: 768px) {
  .class-rooms-module {
    padding: 91px 0 90px;
  }
  .maintxtModule01.schedule .ico01 {
    height: 87px;
    width: 98px;
    top: -105px;
    right: -261px;
  }
  .maintxtModule01.schedule .ico02 {
    height: 105px;
    width: 97px;
    top: -74px;
    left: -203px;
  }
  .maintxtModule01.schedule .ico03 {
    height: 81px;
    width: 76px;
    top: 59px;
    right: -117px;
  }
  .headingModule03 span {
    min-width: 356px;
    font-size: 20px;
  }
  .class-rooms-module__inner {
    display: flex;
    align-items: flex-start;
    margin: 8px auto 0;
    width: 1216px;
  }
  .class-room-module {
    margin: 0;
  }
  .class-room-module__age {
    padding: 0;
    width: 80px;
  }
  .class-room-module__text {
    width: 239px;
  }
  .class-room-module--01 {
    margin-top: 22px;
    height: 658px;
    width: 320px;
    background: url(../../assets/img/schedule/bg_class-room01.png) no-repeat;
    background-size: contain;
  }
  .class-room-module--01 .class-room-module__name {
    margin: 47px 0 0 -17px;
  }
  .class-room-module--01 .class-room-module__age {
    margin-left: -18px;
  }
  .class-room-module--01 .class-room-module__texts {
    margin-left: -6px;
  }
  .class-room-module--02 {
    margin: 68px 0 0 97px;
    height: 648px;
    width: 333px;
    background: url(../../assets/img/schedule/bg_class-room02.png) no-repeat;
    background-size: contain;
  }
  .class-room-module--02 .class-room-module__inner {
    margin-left: -2px;
  }
  .class-room-module--02 .class-room-module__name {
    margin: 46px 0 0 24px;
  }
  .class-room-module--02 .class-room-module__age {
    margin-left: 20px;
  }
  .class-room-module--02 .class-room-module__texts {
    margin-left: 21px;
  }
  .class-room-module--03 {
    margin: 2px 0 0 101px;
    height: 682px;
    width: 342px;
    background: url(../../assets/img/schedule/bg_class-room03.png) no-repeat;
    background-size: contain;
  }
  .class-room-module--03 .class-room-module__inner {
    margin-left: 16px;
  }
  .class-room-module--03 .class-room-module__name {
    margin-top: 55px;
  }
  .class-room-module--03 .class-room-module__illust {
    margin-left: 27px;
  }
  .class-room-module--03 .class-room-module__age {
    margin-left: 9px;
  }
  .class-room-module--03 .class-room-module__texts {
    margin-left: 10px;
  }
  .schedules-module {
    margin: 93px auto 164px;
    width: 1126px;
  }
  .schedule-module {
    display: flex;
  }
  .schedule-module__figure {
    z-index: 1;
    position: relative;
  }
  .schedule-module__title {
    text-align: center;
  }
  .schedule-module__text {
    text-align: left;
  }
  .schedule-module:nth-of-type(odd) .schedule-module__title {
    margin-right: auto;
  }
  .schedule-module:nth-of-type(even) {
    flex-direction: row-reverse;
  }
  .schedule-module:nth-of-type(even) .schedule-module__title {
    margin-left: auto;
  }
  .schedule-module--01 .schedule-module__figure {
    margin-right: 65px;
    width: 461px;
  }
  .schedule-module--01 .schedule-module__figure::before {
    height: 76px;
    width: 90px;
    top: -28px;
    left: -45px;
  }
  .schedule-module--01 .schedule-module__body::before {
    height: 300px;
    top: 160px;
    left: 8px;
  }
  .schedule-module--01 .schedule-module__title {
    margin-top: 105px;
    width: 420px;
  }
  .schedule-module--01 .schedule-module__text {
    margin: 19px 0 0 52px;
  }
  .schedule-module--02 {
    margin-top: 19px;
  }
  .schedule-module--02 .schedule-module__figure {
    margin-left: 107px;
    width: 461px;
  }
  .schedule-module--02 .schedule-module__figure::before {
    height: 88px;
    width: 90px;
    right: -46px;
    bottom: -24px;
  }
  .schedule-module--02 .schedule-module__body::before {
    height: 260px;
    top: 160px;
    right: 4px;
  }
  .schedule-module--02 .schedule-module__title {
    margin-top: 108px;
    width: 344px;
  }
  .schedule-module--02 .schedule-module__text {
    margin: 19px 48px 0 0;
  }
  .schedule-module--03 {
    margin: 89px 0 0 161px;
  }
  .schedule-module--03 .schedule-module__figure {
    margin-right: 65px;
    width: 423px;
  }
  .schedule-module--03 .schedule-module__figure::before {
    height: 98px;
    width: 87px;
    top: 0;
    left: -43px;
  }
  .schedule-module--03 .schedule-module__figure::after {
    content: "";
    background: url(../../assets/img/common/ptn-beige.jpg) repeat;
    background-size: auto;
    z-index: -1;
    position: absolute;
    top: -51px;
    right: 125px;
    bottom: -78px;
    left: -161px;
  }
  .schedule-module--03 .schedule-module__body::before {
    height: 276px;
    top: 170px;
    left: 6px;
  }
  .schedule-module--03 .schedule-module__title {
    margin-top: 121px;
    width: 338px;
  }
  .schedule-module--03 .schedule-module__title::before {
    height: 172px;
    transform: rotate(-41deg);
    top: -120px;
    left: -48px;
  }
  .schedule-module--03 .schedule-module__text {
    margin: 19px 0 0 53px;
  }
  .schedule-module--04 {
    margin: 83px 161px 0 0;
  }
  .schedule-module--04 .schedule-module__figure {
    margin-left: 81px;
    width: 346px;
  }
  .schedule-module--04 .schedule-module__figure::before {
    height: 89px;
    width: 89px;
    top: -22px;
    right: -32px;
  }
  .schedule-module--04 .schedule-module__body::before {
    height: 276px;
    top: 140px;
    right: 9px;
  }
  .schedule-module--04 .schedule-module__title {
    margin-top: 84px;
    width: 420px;
  }
  .schedule-module--04 .schedule-module__title::before {
    height: 135px;
    transform: rotate(55deg);
    top: -87px;
    right: -48px;
  }
  .schedule-module--04 .schedule-module__text {
    margin: 19px 53px 0 0;
  }
  .schedule-module--05 {
    margin: 25px 0 0 68px;
  }
  .schedule-module--05 .schedule-module__figure {
    margin-right: 85px;
    width: 341px;
  }
  .schedule-module--05 .schedule-module__figure::before {
    height: 73px;
    width: 88px;
    bottom: -26px;
    left: -43px;
  }
  .schedule-module--05 .schedule-module__body::before {
    height: 311px;
    top: 150px;
    left: 15px;
  }
  .schedule-module--05 .schedule-module__title {
    margin-top: 98px;
    width: 430px;
  }
  .schedule-module--05 .schedule-module__text {
    margin: 19px 0 0 61px;
  }
  .schedule-module--06 {
    margin: 76px 33px 0 0;
  }
  .schedule-module--06 .schedule-module__figure {
    margin-left: 65px;
    width: 461px;
  }
  .schedule-module--06 .schedule-module__figure::before {
    height: 98px;
    width: 87px;
    top: -41px;
    right: -33px;
  }
  .schedule-module--06 .schedule-module__figure::after {
    content: "";
    background: url(../../assets/img/common/ptn-beige.jpg) repeat;
    background-size:auto;
    z-index: -1;
    position: absolute;
    top: -74px;
    right: -153px;
    bottom: -77px;
    left: 153px;
  }
  .schedule-module--06 .schedule-module__body::before {
    height: 243px;
    top: 150px;
    right: 4px;
  }
  .schedule-module--06 .schedule-module__title {
    margin-top: 110px;
    width: 400px;
  }
  .schedule-module--06 .schedule-module__text {
    margin: 19px 49px 0 0;
  }
  .schedule-module--07 {
    margin: 64px 0 0 154px;
  }
  .schedule-module--07 .schedule-module__figure {
    margin-right: 61px;
    width: 406px;
  }
  .schedule-module--07 .schedule-module__figure::before {
    height: 66px;
    width: 99px;
    z-index: -1;
    left: -67px;
    bottom: 71px;
  }
  .schedule-module--07 .schedule-module__body::before {
    height: 244px;
    top: 164px;
    left: 6px;
  }
  .schedule-module--07 .schedule-module__title {
    margin-top: 111px;
    width: 415px;
  }
  .schedule-module--07 .schedule-module__title::before {
    height: 123px;
    transform: rotate(-36deg);
    top: -92px;
    left: -37px;
  }
  .schedule-module--07 .schedule-module__text {
    margin: 23px 0 0 53px;
  }
  .schedule-module--08 {
    margin-top: 70px;
  }
  .schedule-module--08 .schedule-module__figure {
    margin-left: 53px;
    width: 494px;
  }
  .schedule-module--08 .schedule-module__figure::before {
    height: 109px;
    width: 119px;
    right: -57px;
    bottom: -39px;
  }
  .schedule-module--08 .schedule-module__title {
    margin-top: 148px;
    width: 400px;
  }
  .schedule-module--08 .schedule-module__title::before {
    height: 179px;
    transform: rotate(35deg);
    top: -155px;
    right: -33px;
  }
  .schedule-module--08 .schedule-module__text {
    margin-top: 19px;
  }
  .schedule-intro-module__heading small {
    font-size: 20px;
  }
  .schedule-intro-module__heading span {
    margin-top: 43px;
    font-size: 28px;
  }
  .schedule-intro-module__heading small::before {
    top: -8px;
    left: -68px;
  }
  .schedule-intro-module__heading small::after {
    top: 8px;
    right: -61px;
  }
  .schedule-intro-module__text {
    margin: 31px 0 0 53px;
  }
}

/* .mainimgModule01.approach::after {
  content: "";
  background: url(../../assets/img/common/img_jumbotron-character.png) no-repeat center;
  background-size: contain;
  height: 47px;
  width: 74px;
  position: absolute;
  right: 35px;
  bottom: 100%;
} */

/* @media screen and (max-width: 374px) {
  .mainimgModule01.approach::after {
    height: 12.5333333333vw;
    width: 19.7333333333vw;
    right: 9.3333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .mainimgModule01.approach::after {
    height: 61px;
    width: 97px;
    right: 100px;
  }
} */

.maintxtModule01.approach .ico {
  background: no-repeat center;
  background-size: contain;
}

.maintxtModule01.approach .ico01 {
  height: 64px;
  width: 71px;
  background-image: url(../../assets/img/approach/img_jumbotron-leaf01.png);
  top: -26px;
  left: 37px;
}

.maintxtModule01.approach .ico02 {
  height: 65px;
  width: 68px;
  background-image: url(../../assets/img/approach/img_jumbotron-leaf02.png);
  top: 40px;
  right: 21px;
}

.maintxtModule01.approach .ico03 {
  background-image: url(../../assets/img/approach/img_jumbotron-leaf03.png);
}

.approach-intro-module {
  background: url(../../assets/img/common/ptn-beige.jpg) repeat;
  background-size: 547px auto;
  position: relative;
}

.approach-section01-module__heading {
  font-size: 18px;
  line-height: 1.555555556;
  letter-spacing: .1em;
}

.approach-section01-module__text {
  font-size: 14px;
  line-height: 2;
  letter-spacing: .1em;
}

.approach-lunch-intro-module {
  margin: 68px 20px 0;
}

.approach-lunch-intro-module__heading {
  font-size: 18px;
  letter-spacing: .1em;
  text-align: center;
}

.approach-lunch-intro-module__heading>span {
  display: block;
}

.approach-lunch-intro-module__heading>span>span {
  position: relative;
}

.approach-lunch-intro-module__heading>span>span::after {
  content: "";
  height: 2px;
  width: 100%;
  background: url(../../assets/img/common/border01.png) repeat-x left top;
  position: absolute;
  bottom: 0;
  left: 0;
}

.approach-lunch-intro-module__text {
  font-size: 14px;
  font-weight: 700;
  line-height: 2.142857143;
  letter-spacing: .1em;
}

.approach-lunch-module {
  margin-top: 33px;
  padding: 64px 0 49px;
  clear: both;
  background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 240px 203px;
}

.approach-lunch-module__heading {
  margin: 45px 0 0 45px;
  font-size: 18px;
  letter-spacing: .1em;
  position: relative;
}

.approach-lunch-module__heading::before {
  content: "";
  height: 76px;
  width: 89px;
  background: url(../../assets/img/approach/img_leaf03.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -24px;
  left: -45px;
}

.approach-lunch-module__heading span {
  z-index: 1;
  position: relative;
}

.approach-lunch-module__list {
  margin: 22px 20px 0;
  font-size: 16px;
  line-height: 2.2;
  letter-spacing: .1em;
}
.approach-section01-module__list{
  padding: 1em 0;
}
.approach-section01-module__list > li{
  padding-bottom: .5em;
}

.approach-section02-module, .approach-section03-module {
  padding: 0 20px;
  clear: both;
}

.approach-section02-module__heading, .approach-section03-module__heading {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
  position: relative;
}

.approach-section02-module__heading span, .approach-section03-module__heading span {
  z-index: 1;
  position: relative;
}

.approach-section02-module__heading::before, .approach-section03-module__heading::before {
  content: "";
  background: no-repeat center;
  background-size: contain;
  position: absolute;
}

.approach-section02-module__text, .approach-section03-module__text {
  font-size: 14px;
  line-height: 2;
  letter-spacing: .1em;
}

.approach-section02-module__heading {
  margin: 28px 0 0 16px;
}

.approach-section02-module__heading::before {
  height: 141px;
  width: 132px;
  background-image: url(../../assets/img/approach/img_leaf04.png);
  top: -58px;
  left: -67px;
}

.approach-section02-module__text {
  margin-top: 23px;
}

.approach-section03-module {
  margin-top: 56px;
}

.approach-section03-module__heading {
  margin-left: 75px;
}

.approach-section03-module__heading::before {
  height: 35px;
  width: 38px;
  background-image: url(../../assets/img/approach/img_leaf05.png);
  top: -2px;
  left: -42px;
  z-index: 1;
}

.approach-section03-module__column--01 .approach-section03-module__figure {
  margin-left: 33px;
}

.approach-section03-module__column--02 .approach-section03-module__figure {
  margin-right: 62px;
}

.approach-section03-module__column--01 .approach-section03-module__figure::before {
  top: -45px;
  right: 31px;
  bottom: 60px;
  left: -53px;
}

.approach-section03-module__column--02 .approach-section03-module__figure::before {
  top: 25px;
  right: -82px;
  bottom: -52px;
  left: 58px;
}

.approach-section03-module__figure {
  position: relative;
}

.approach-section03-module__figure img {
  z-index: 1;
  position: relative;
}

.approach-section03-module__column--01 .approach-section03-module__figure::before, .approach-section03-module__column--02 .approach-section03-module__figure::before {
  content: "";
  background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 240px 203px;
  position: absolute;
}

.approach-section03-module__text {
  margin-top: 23px;
  z-index: 1;
  position: relative;
}

.approach-section03-module__btn-wrap {
  margin: 39px 8px 0 0;
  position: relative;
}

.approach-section03-module__btn-wrap::before {
  content: "";
  background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 240px 203px;
  position: absolute;
  top: 10px;
  left: 7px;
  bottom: -10px;
  right: -8px;
}

.approach-section03-module__btn-icon {
  height: 31px;
  width: 33px;
  margin-left: 10px;
}

.approach-section03-module__btn {
  z-index: 1;
  font-size: 16px;
  position: relative;
}

.approach-senior-module {
  margin: 60px 0 81px;
  padding: 57px 20px 45px;
}

.approach-senior-module__heading {
  font-size: 18px;
  letter-spacing: .1em;
}

.approach-senior-module__text {
  margin-top: 23px;
  font-size: 14px;
  line-height: 2;
  letter-spacing: .1em;
}

.approach-intro-module__heading {
  margin: 0 34px 0 45px;
}

.approach-intro-module__picture {
  display: block;
  margin-top: 16px;
}

.approach-lunch-intro-module__heading::before, .approach-lunch-intro-module__heading::after {
  content: "";
  background: no-repeat center;
  background-size: contain;
  position: absolute;
}

.approach-lunch-intro-module__heading {
  position: relative;
}

.approach-lunch-intro-module__heading::before {
  background-image: url(../../assets/img/approach/img_heading01.png);
}

.approach-lunch-intro-module__heading::after {
  background-image: url(../../assets/img/approach/img_heading02.png);
}

.approach-senior-module__figures {
  position: relative;
}

.approach-senior-module__figure {
  margin-top: 36px;
}

.approach-senior-module__heading {
  position: relative;
}

.approach-senior-module__heading span {
  z-index: 1;
  position: relative;
}

.approach-senior-module__heading::before {
  content: "";
  height: 52px;
  width: 48px;
  background: url(../../assets/img/approach/img_leaf06.png) no-repeat center;
  background-size: contain;
  position: absolute;
  top: -27px;
  left: -30px;
}

.approach-lunch-slider-module {
  position: relative;
}

.approach-lunch-slider-module__bg {
  width: 100%;
}

.approach-lunch-slider-module__slides {
  width: 100%;
  position: relative;
}

.approach-lunch-slider-module__slide {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.approach-lunch-slider-module__stars::before, .approach-lunch-slider-module__stars::after {
  content: "";
  background: no-repeat center;
  background-size: contain;
  position: absolute;
}

.approach-lunch-slider-module__dots {
  display: flex;
  justify-content: center;
  width: 100%;
  position: absolute;
  bottom: 27px;
  left: 0;
}

.approach-lunch-slider-module__dots span {
  height: 6px;
  width: 6px;
  border-radius: 100%;
  background: #fff;
  opacity: .5;
  transition: opacity .5s ease;
}

.approach-lunch-slider-module__dots span.is-current {
  opacity: 1;
}

.approach-lunch-slider-module__dots span+span {
  margin-left: 22px;
}

.approach-lunch-slider-module__button {
  width: 40px;
  position: absolute;
}

.approach-lunch-slider-module__button img {
  width: 100%;
}

.approach-lunch-slider-module__button--previous {
  top: 86px;
  left: -13px;
}

.approach-lunch-slider-module__button--next {
  top: 101px;
  right: -13px;
}

@media screen and (min-width: 768px), print {
  .approach-senior-module {
    position: relative;
  }
  .approach-senior-module::before {
    content: "";
    width: 100%;
    background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
    background-size: 240px 203px;
    position: absolute;
    top: 155px;
    left: 0;
    bottom: 0;
  }
  .approach-intro-module {
    padding: 91px 0 65px;
    margin-top: 67px;
  }
  .approach-intro-module__picture {
    display: block;
    margin: 30px auto 0;
    width: 1126px;
  }
  .approach-intro-module__picture img {
    width: 100%;
  }
  .approach-sections01-module {
    display: flex;
    margin: 67px auto 0;
    width: 1080px;
    justify-content: center;
  }
  .approach-section01-module {
    width: 500px;
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
  }
  .approach-section01-module+.approach-section01-module {
    display: flex;
    margin-left: 80px;
  }
  .approach-section01-module__text {
    margin-top: 28px;
  }
  .approach-section01-module__figure {
    flex: none;
  }
  .approach-section01-module--01 .approach-section01-module__heading {
    /* margin-top: 35px; */
  }
  .approach-section01-module--02 .approach-section01-module__figure {
    /* margin-top: 33px; */
  }
  .approach-lunch-intro-module__heading {
    font-size: 20px;
    position: relative;
  }
  .approach-lunch-intro-module__heading>span {
    display: block;
  }
  .approach-lunch-intro-module__heading>span span {
    display: inline-block;
    padding-bottom: 22px;
    line-height: 1;
  }
  .approach-lunch-intro-module__heading>span+span {
    margin-top: 14px;
  }
  .approach-lunch-intro-module__text {
    margin-top: 51px;
    text-align: center;
  }
  .approach-lunch-module {
    margin-top: 39px;
    padding: 50px 0 46px;
  }
  .approach-lunch-module__content {
    display: flex;
    align-items: center;
    padding: 48px 0;
    justify-content: center;
  }
  .approach-lunch-module__heading {
    flex: none;
    margin: 89px 50px 0 61px;
    width: 138px;
    white-space: nowrap;
  }
  .approach-lunch-module__list {
    margin: 0;
    width: 780px;
  }
  .approach-lunch-module__list li.textB,
  .approach-lunch-module__list li span{
    font-weight: bold;
  }

  .approach-section02-module {
    display: flex;
    margin: 88px auto 0;
    padding: 0 37px 0 0;
    width: 1066px;
  }
  .approach-section02-module__figure {
    flex: none;
    margin-right: 79px;
    width: 500px;
  }
  .approach-sections02-module__heading {
    margin: 42px 0 0;
  }
  .approach-sections02-module__text {
    margin-top: 27px;
  }
  .approach-section03-module {
    margin: 71px auto 0;
    padding-left: 41px;
    width: 980px;
  }
  .approach-section03__row {
    display: flex;
  }
  .approach-section03-module__column {
    flex: none;
  }
  .approach-section03-module__heading {
    margin-left: 50px;
  }
  .approach-section03-module__text {
    margin: 32px 0 0 7px;
    width: 450px;
  }
  .approach-section03-module__column--01 {
    margin: 97px 85px 0 0;
    width: 403px;
  }
  .approach-section03-module__column--01 .approach-section03-module__figure {
    margin: 46px 0 0;
    width: 100%;
  }
  .approach-section03-module__column--02 {
    width: 450px;
  }
  .approach-section03-module__column--02 .approach-section03-module__figure {
    width: 362px;
  }
  .approach-section03-module__btn-wrap {
    margin: 83px auto 0;
    width: 500px;
  }
  .approach-section03-module__btn-wrap::before {
    top: 10px;
    right: -10px;
    left: 10px;
  }
  .approach-section03-module__btn {
    height: 60px;
  }
  .approach-senior-module__inner {
    display: flex;
    align-items: flex-start;
    z-index: 1;
    position: relative;
  }
  .approach-senior-module {
    margin-top: 126px;
    margin-bottom: 180px;
    padding: 0 0 81px;
  }
  .approach-senior-module__inner {
    margin: 0 auto;
    width: 1126px;
  }
  .approach-senior-module__figures {
    flex: none;
    margin-right: 71px;
    width: 476px;
  }
  .approach-senior-module__heading {
    font-size: 20px;
  }
  .approach-senior-module__text {
    margin-top: 48px;
  }
  .approach-lunch-intro-module {
    margin: 174px auto 0;
    width: 700px;
  }
  .approach-lunch-intro-module__heading::before {
    height: 117px;
    width: 115px;
    background-image: url(../../assets/img/approach/img_heading01_pc.png);
    top: -87px;
    left: -106px;
  }
  .approach-lunch-intro-module__heading::after {
    height: 91px;
    width: 85px;
    background-image: url(../../assets/img/approach/img_heading02_pc.png);
    right: -80px;
    bottom: -54px;
  }
  .approach-section01-module__heading {
    position: relative;
    /* margin-top: 33px; */
  }
  .approach-section01-module__heading::before {
    content: "";
    background: no-repeat center;
    background-size: contain;
    position: absolute;
  }
  .approach-senior-module__heading::before {
    height: 52px;
    width: 48px;
    top: -26px;
  }
  .approach-section03-module__heading::before {
    height: 46px;
    width: 51px;
    top: -9px;
    left: -50px;
  }
  .approach-section04-module__heading::before {
    height: 141px;
    width: 132px;
  }
  .approach-lunch-slider-module {
    margin: 0 auto;
    width: 665px;
  }
  .approach-lunch-slider-module__stars::before {
    height: 118px;
    width: 91px;
    background-image: url(../../assets/img/approach/img_stars01_pc.png);
    top: -10px;
    left: -100px;
  }
  .approach-lunch-slider-module__stars::after {
    height: 129px;
    width: 95px;
    background-image: url(../../assets/img/approach/img_stars02_pc.png);
    right: -118px;
    bottom: -33px;
  }
  .approach-lunch-slider-module__dots {
    bottom: 39px;
  }
  .approach-lunch-slider-module__dots span+span {
    margin-left: 26px;
  }
  .approach-lunch-slider-module__button {
    width: 46px;
  }
  .approach-lunch-slider-module__button--previous {
    top: 202px;
    left: -63px;
  }
  .approach-lunch-slider-module__button--next {
    top: 202px;
    right: -60px;
  }
  .maintxtModule01.approach .ico01 {
    height: 89px;
    width: 99px;
    top: -90px;
    left: -256px;
  }
  .maintxtModule01.approach .ico02 {
    height: 82px;
    width: 78px;
    top: 49px;
    right: auto;
    left: -68px;
  }
  .maintxtModule01.approach .ico03 {
    height: 125px;
    width: 134px;
    top: -51px;
    right: -270px;
  }
  .approach-section03-module__column--01 .approach-section03-module__figure::before {
    top: -61px;
    right: 42px;
    bottom: 81px;
    left: -71px;
  }
  .approach-section03-module__column--02 .approach-section03-module__figure::before {
    top: 67px;
    right: -41px;
    bottom: -93px;
    left: 21px;
  }
  .approach-section02-module__heading {
    margin: 42px 0 0;
  }
  .approach-section02-module__text {
    margin-top: 27px;
  }
}

@media screen and (max-width: 767px) {
  .approach-senior-module {
    background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
    background-size: 240px 203px;
  }
  .approach-intro-module__inner {
    margin: 0 auto;
    max-width: 375px;
  }
  .approach-sections01-module {
    margin: 45px 20px 0;
  }
  .approach-intro-module{
    padding: 45px 20px;
  }
  .approach-intro-module__heading{
    margin: 0;
  }
  .approach-lunch-module__list{
    margin: 22px 0;
    font-size: 14px;
    line-height: 2;
  }
  .approach-lunch-module__list li.textB, .approach-lunch-module__list li span {
    font-weight: bold;
  }
  .approach-section01-module+.approach-section01-module {
    margin-top: 45px;
  }
  .approach-section01-module__heading {
    margin-top: 25px;
  }
  .approach-section01-module__text {
    margin-top: 13px;
  }
  .approach-lunch-intro-module__heading span {
    line-height: 2.5;
  }
  .approach-lunch-intro-module__heading>span>span {
    display: inline-block;
  }
  .approach-lunch-intro-module__text {
    margin-top: 61px;
  }
  .approach-section03-module__column--01 .approach-section03-module__figure {
    margin-top: 33px;
  }
  .approach-section03-module__column--02 {
    margin-top: 26px;
  }
  .approach-senior-module__heading {
    margin: 0 0 0 23px;
  }
  .approach-lunch-intro-module__heading::before {
    height: 69px;
    width: 67px;
    bottom: -29px;
    left: -2px;
  }
  .approach-lunch-intro-module__heading::after {
    height: 60px;
    width: 57px;
    top: -41px;
    right: -3px;
  }
  .approach-section01-module__figure {
    position: relative;
  }
  .approach-section01-module__figure::before {
    content: "";
    background: no-repeat center;
    background-size: contain;
    position: absolute;
  }
  /* .approach-section01-module--01 .approach-section01-module__figure::before {
    height: 57px;
    width: 50px;
    background-image: url(../../assets/img/approach/img_leaf01.png);
    top: -28px;
    right: -11px;
  }
  .approach-section01-module--02 .approach-section01-module__figure::before {
    height: 90px;
    width: 109px;
    background-image: url(../../assets/img/approach/img_leaf02.png);
    top: -35px;
    left: -34px;
  } */
  .approach-lunch-slider-module {
    margin: 0 20px;
  }
  /* .approach-lunch-slider-module__stars::before {
    height: 69px;
    width: 78px;
    background-image: url(../../assets/img/approach/img_stars01.png);
    position: absolute;
    top: -28px;
    left: -11px;
  }
  .approach-lunch-slider-module__stars::after {
    height: 65px;
    width: 81px;
    background-image: url(../../assets/img/approach/img_stars02.png);
    position: absolute;
    bottom: -36px;
    right: -15px;
  } */
}

@media screen and (max-width: 374px) {
  .maintxtModule01.approach .ico01 {
    height: 17.0666666667vw;
    width: 18.9333333333vw;
    top: -6.9333333333vw;
    left: 9.8666666667vw;
  }
  .maintxtModule01.approach .ico02 {
    height: 17.3333333333vw;
    width: 18.1333333333vw;
    top: 10.6666666667vw;
    right: 5.6vw;
  }
  .approach-lunch-intro-module__heading {
    font-size: 4.8vw;
  }
  .approach-lunch-intro-module__heading::before {
    height: 18.4vw;
    width: 17.8666666667vw;
    bottom: -7.7333333333vw;
    left: -0.5333333333vw;
  }
  .approach-lunch-intro-module__heading::after {
    height: 16vw;
    width: 15.2vw;
    top: -10.9333333333vw;
    right: -0.8vw;
  }
  .approach-lunch-slider-module__stars::before {
    height: 18.4vw;
    width: 20.8vw;
    top: -7.4666666667vw;
    left: -2.9333333333vw;
  }
  .approach-lunch-slider-module__stars::after {
    height: 17.3333333333vw;
    width: 21.6vw;
    bottom: -9.6vw;
    right: -4vw;
  }
  .approach-lunch-slider-module__button {
    width: 10.6666666667vw;
  }
  .approach-lunch-slider-module__button--previous {
    top: 22.9333333333vw;
    left: -3.4666666667vw;
  }
  .approach-lunch-slider-module__button--next {
    top: 26.9333333333vw;
    right: -3.4666666667vw;
  }
}


/*-----------------------
.admission
-----------------------*/

.admission .tit {
  background: #fff;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 80px);
  height: 80px;
  margin: 0 auto;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
}

.admission .tit::after {
  content: "";
  position: absolute;
  top: -14px;
  left: -10px;
  width: 42px;
  height: 37px;
  background-image: url("../../assets/img/admission/ico_admission_ribbon.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 42px 37px;
}

@media screen and (min-width: 768px), print {
  .admission .tit {
    width: 480px;
    height: 80px;
    font-size: 20px;
  }
}


/* admissionNavModule */

.admissionNavModule {
  padding: 5px 20px 0;
}

.admissionNavModule .list {
  display: flex;
  flex-wrap: wrap;
}

.admissionNavModule .listItem {
  flex-basis: 45%;
  flex-grow: 1;
  flex-shrink: 1;
  height: 60px;
  margin-top: 15px;
}

.admissionNavModule .listItem:nth-of-type(2n+1) {
  background: #009fe8;
}
.admissionNavModule .listItem:nth-of-type(2n) {
  background: #fdd000;
}
.admissionNavModule .listItem:nth-of-type(2n) {
  margin-left: 15px;
}

.admissionNavModule .listItem a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #FFF;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 16px;
}

@media screen and (min-width: 768px), print {
  .admissionNavModule {
    padding: 5px 0 0;
    margin: 0 20px;
  }
  .admissionNavModule .list {
    justify-content: center;
    margin-top: 65px;
  }
  .admissionNavModule .listItem {
    flex-basis: 14%;
    flex-grow: 0;
    flex-shrink: 0;
    margin: 0;
    transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out;
  }
  .admissionNavModule .listItem+.listItem {
    margin-left: 45px;
  }
  .admissionNavModule .listItem:nth-of-type(2n+1) {
    background: #009fe8;
  }
  .admissionNavModule .listItem:nth-of-type(2n) {
    background: #fdd000;
  }
  .admissionNavModule .listItem:nth-of-type(2n)  a{
    color: #493f39;
  }
  .admissionNavModule .listItem a {
    font-size: 15px;
  }
  .admissionNavModule .listItem:hover {
    opacity: .7;
    transition: 0.5s ease-in-out;
    -webkit-transition: 0.5s ease-in-out;
  }
}


/* admissionCourseModule */

.admissionCourseModule {
  padding: 49px 20px 46px;
}
#enrolled.admissionCourseModule{
  position: relative;
  background-image: url(../../assets/img/common/ptn-beige.jpg);
}
.admissionCourseModule .list {
  margin-top: 40px;
}
.admissionCourseModule .tit{
  background: #fff;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  text-align: center;
  font-weight: 700;
  letter-spacing: .1em;
  width: 480px;
  height: 80px;
  font-size: 20px;
}
.admissionCourseModule .listTit {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F7FAFC;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 26px;
}

.admissionCourseModule .listTxt {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FFF;
  text-align: center;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .08em;
  line-height: 24px;
}

.admissionCourseModule .courseWrap {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-top: 4px;
}

.admissionCourseModule .course {
  flex-basis: 40%;
  flex-grow: 1;
  flex-shrink: 1;
}

.admissionCourseModule .course.blue .courseTit {
  background-color: #0D89CE;
}

.admissionCourseModule .course.blue .courseTxt {
  background-color: #F0F8FA;
}

.admissionCourseModule .course.blue .courseList {
  background-color: #F0F8FA;
}

.admissionCourseModule .course.green .courseTit {
  background-color: #9ED800;
}

.admissionCourseModule .course.green .courseTxt {
  background-color: #F8FCDF;
}

.admissionCourseModule .course.green .courseList {
  background-color: #F8FCDF;
}

.admissionCourseModule .course+.course {
  margin-left: 35px;
}

.admissionCourseModule .course.block {
  flex-basis: 100%;
  flex-grow: 0;
  flex-shrink: 0;
  margin: 0;
}

.admissionCourseModule .course.block+.block {
  margin-top: 18px;
}

.admissionCourseModule .courseTit {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  text-align: center;
  color: #FFF;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 20px;
}

.admissionCourseModule .courseTit.hs {
  height: 40px;
}

.admissionCourseModule .courseTxt {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
}

.admissionCourseModule .courseNumberTxt {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  margin-top: 15px;
  margin-bottom: 6px;
  border: 3px solid #F5F8FA;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
}

.admissionCourseModule .courseList {
  padding: 16px 20px 16px 10px;
}

.admissionCourseModule .courseListItem {
  display: flex;
  text-align: left;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .03em;
  line-height: 24px;
}

.admissionCourseModule .courseListItem::before {
  content: "・";
}

.admissionCourseModule .msg {
  padding: 6px 28px 0 28px;
  background-color: #FFF;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: 28px;
}

.admissionCourseModule .msg span {
  letter-spacing: .026em;
}

.admissionCourseModule .about {
  position: relative;
  height: 1206px;
  padding: 92px 20px 0 20px;
  margin: 0 auto;
  background-color: #FFF;
  background-image: url("../../assets/img/admission/img_admission_about_bg.png");
  background-position: center 36px;
  background-repeat: no-repeat;
  background-size: 295px 1126px;
  color: #FFF;
}

.admissionCourseModule .aboutTit {
  margin-top: 38px;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 52px;
}

.admissionCourseModule .aboutTit span {
  display: inline-block;
  border-bottom: 2px dotted #FFF;
}

.admissionCourseModule .aboutTit:first-of-type {
  margin-top: 0;
}

.admissionCourseModule .aboutTxt {
  width: 250px;
  margin: 24px auto 0 auto;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .03em;
  line-height: 30px;
}

.admissionCourseModule .aboutImage {
  position: absolute;
  width: 375px;
  top: 38px;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
  .admissionCourseModule .tit {
    background: #fff;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(100% - 80px);
    height: 80px;
    margin: 0 auto;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .1em;
  }
  .admissionCourseModule .listTit {
    width: 100%;
    height: 50px;
    border-top: 2px dotted #000;
  }
  .admissionCourseModule .listTxt {
    padding: 14px 14px 24px 14px;
    border-top: 2px dotted #000;
    text-align: left;
  }
  .admissionModule01{
    margin: 20px 0;
    padding: 20px;
    border: solid 3px #009fe8;
    position: relative;
  }
  .admissionModule01 .tit01 {
    font-size: 20px;
    font-weight: 700;
    display: block;
    text-align: center;
  }
  .admissionModule01 .txt01 {
    margin: 20px 0 0;
    font-size: 14px;
    /* font-weight: 700; */
    line-height: 2;
  }



}

@media screen and (min-width: 768px), print {
  .admissionCourseModule .list {
    display: flex;
    flex-wrap: wrap;
    width: 1000px;
    margin: 30px auto 0;
    padding: 32px 70px 32px;
    background-color: #FFF;
  }
  .admissionCourseModule .listTit {
    min-height: 109px;
    position: relative;
    justify-content: center;
    width: 180px;
    background-color: #FFF;
    font-size: 15px;
  }
  .admissionCourseModule .listTit::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 860px;
    height: 2px;
    border-top: 2px dotted #000;
  }
  .admissionCourseModule .listTit::after {
    content: "";
    position: absolute;
    top: 10px;
    right: 0;
    bottom: 10px;
    width: 2px;
    border-right: 2px dotted #000;
  }
  .admissionCourseModule .listTxt {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 680px;
    text-align: left;
    min-height: 109px;
    padding: 10px;
    font-size: 16px;
    /* font-weight: 700; */
    letter-spacing: .1em;
    line-height: 28px;
  }
  .admissionCourseModule .listTxt:last-of-type {
    position: relative;
    margin-top: 2px;
  }
  .admissionCourseModule .listTxt:last-of-type::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 860px;
    height: 2px;
    border-top: 2px dotted #000;
  }
  .admissionCourseModule .courseWrap {
    position: relative;
  }
  .admissionCourseModule .course {
    display: flex;
    margin: 0;
  }
  .admissionCourseModule .course.block {
    flex-basis: 312px;
  }
  .admissionCourseModule .course.block+.block {
    margin-top: 0;
  }
  .admissionCourseModule .course+.course {
    margin-left: 10px;
  }
  .admissionCourseModule .courseTit {
    font-size: 15px;
    line-height: 26px;
  }
  .admissionCourseModule .courseTxt {
    width: 312px;
    height: 90px;
    padding-bottom: 38px;
  }
  .admissionCourseModule .courseList {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 312px;
    padding: 14px 20px;
  }
  .admissionCourseModule .courseListItem {
    line-height: 26px;
  }
  .admissionCourseModule .msg {
    width: 1000px;
    padding: 0 70px;
    margin: 0 auto;
    font-size: 14px;
    line-height: 30px;
  }
  .admissionCourseModule .balloonWrap {
    display: flex;
    width: 1000px;
    padding: 68px 0 0 286px;
    margin: 60px auto 0 auto;
    background-color: #FFF;
  }
  .admissionCourseModule .balloonItem {
    width: 300px;
    height: 70px;
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: 18px 18px0;
  }
  .admissionCourseModule .balloonItem+.balloonItem {
    margin-left: 30px;
  }
  .admissionCourseModule .balloonItem.blue {
    background-image: url("../../assets/img/admission/ico_admission_balloon_arrow_blue_pc.png");
  }
  .admissionCourseModule .balloonItem.blue .balloonTit {
    background-color: #007FEB;
  }
  .admissionCourseModule .balloonItem.green {
    background-image: url("../../assets/img/admission/ico_admission_balloon_arrow_green_pc.png");
  }
  .admissionCourseModule .balloonItem.green .balloonTit {
    background-color: #9ED800;
  }
  .admissionCourseModule .balloonTit {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 60px;
    color: #FFF;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .1em;
  }
  .admissionCourseModule .balloonItem {
    width: 300px;
    height: 70px;
  }
  .admissionCourseModule .courseNumberTxt {
    position: absolute;
    top: 44px;
    right: 0;
    left: 0;
    width: 600px;
    height: 26px;
    margin: 0 auto;
    border: 0;
    background-color: #FFF;
  }
  .admissionCourseModule .about {
    width: 1000px;
    height: 720px;
    padding: 94px 20px 0;
    margin: 0 auto;
    background-image: url("../../assets/img/admission/img_admission_about_bg_pc.png");
    background-size: 1000px 631px;
  }
  .admissionCourseModule .aboutTit {
    width: 720px;
    margin: 24px auto 0 auto;
    text-align: left;
    font-size: 20px;
    line-height: 54px;
  }
  .admissionCourseModule .aboutTxt {
    width: 720px;
    margin: 24px auto 0 auto;
  }
  
}


/* admissionFeeModule */

.admissionFeeModule {
  padding: 36px 20px 58px;
  margin-top: 25px;
  background-image: url("../../assets/img/admission/img_admission_bg02.jpg");
  background-position: center center;
  background-repeat: repeat;
  background-size: 375px 1433px;
}

.admissionFeeModule .list {
  margin-top: 40px;
  background-color: #FFF;
}

.admissionFeeModule .listTit {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  margin-top: 10px;
  background-color: #75909F;
  color: #FFF;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
}

.admissionFeeModule .listTit:first-of-type {
  margin-top: 0;
}

.admissionFeeModule .listTxt {
  padding: 20px 21px 10px;
  background-color: #F5F8FA;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 24px;
}

.admissionFeeModule .listTxt small {
  display: inline-block;
  padding-bottom: 15px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .03em;
  line-height: 24px;
}

.admissionFeeModule .listDetail {
  width: calc(100% + 22px);
  padding: 10px 12px;
  margin-top: 6px;
  margin-bottom: 10px;
  transform: translateX(-11px);
  background-color: #FFF;
}

.admissionFeeModule .listDetail.temp {
  padding-top: 18px;
}

.admissionFeeModule .listDetailTit {
  margin-top: 15px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1;
}

.admissionFeeModule .listDetailTit:first-of-type {
  margin-top: 0;
}

.admissionFeeModule .temp .listDetailTit {
  margin-top: 12px;
}

.admissionFeeModule .temp .listDetailTit:first-of-type {
  margin-top: 0;
}

.admissionFeeModule .listDetailTxt {
  margin-top: 10px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .03em;
  line-height: 24px;
}

.admissionFeeModule .listDetailTxt:first-of-type {
  margin-top: 0;
}

.admissionFeeModule .temp .listDetailTxt {
  margin-top: 4px;
}

.admissionFeeModule .listDetailList {
  padding-top: 14px;
  padding-bottom: 4px;
  padding-left: 16px;
  margin-top: 14px;
  border-top: 2px dotted #000;
  list-style-type: decimal;
}

.admissionFeeModule .listDetailListItem {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .03em;
  line-height: 24px;
}

@media screen and (min-width: 768px), print {
  .admissionFeeModule {
    padding: 86px 0 72px;
    margin: 25px 20px 0;
  }
  .admissionFeeModule .list {
    display: flex;
    flex-wrap: wrap;
    width: 1000px;
    padding: 70px 69px 68px 70px;
    margin: 58px auto 0 auto;
    background-color: #FFF;
  }
  .admissionFeeModule .listTit {
    display: flex;
    width: 260px;
    height: auto;
    min-height: 60px;
    margin-top: 4px;
  }
  .admissionFeeModule .listTit:first-of-type {
    margin-top: 0;
  }
  .admissionFeeModule .listTxt {
    width: 596px;
    min-height: 60px;
    padding-left: 30px;
    margin-top: 4px;
    margin-left: 4px;
  }
  .admissionFeeModule .listTxt:first-of-type {
    margin-top: 0;
  }
  .admissionFeeModule .listDetail {
    width: 536px;
    padding: 20px;
    margin-left: 10px;
  }
  .admissionFeeModule .listDetail.temp {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 10px;
  }
  .admissionFeeModule .temp .listDetailTit {
    width: 120px;
    margin-top: 0;
    line-height: 24px;
  }
  .admissionFeeModule .temp .listDetailTxt {
    width: calc(100% - 120px);
    margin-top: 0;
  }
  .admissionFeeModule .listDetailList {
    padding-top: 10px;
  }
}


/* admissionAvailabilityModule */

.admissionAvailabilityModule {
  padding: 36px 20px 43px;
  margin-top: 25px;
  background-image: url("../../assets/img/admission/img_admission_bg01.jpg");
  background-position: center center;
  background-repeat: repeat;
  background-size: 375px 2812px;
}

.admissionAvailabilityModule .tit {
  height: 100px;
}

.admissionAvailabilityModule .msgWrap {
  padding: 42px 19px 40px;
  margin-top: 38px;
  background-color: #FFF;
}

.admissionAvailabilityModule .msg {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .03em;
  line-height: 32px;
  padding: 15px;
  background-color: #D8EA4B;
}

.admissionAvailabilityModule .msg span {
  position: relative;
  z-index: 1;
  /*
                  &::after {
                      content: "";
                      position: absolute;
                      bottom: -4px;
                      left: 0;
                      z-index: -1;
                      width: 100%;
                      height: 10px;
                      background-color: #D8EA4B;
                  }
      			*/
}

.admissionAvailabilityModule .list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 14px;
}

.admissionAvailabilityModule .listTit {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 22px;
}

.admissionAvailabilityModule .listTit span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 62px;
  height: 30px;
  background-color: #007FEB;
  color: #FFF;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .03em;
}

.admissionAvailabilityModule .listTxt {
  width: calc(100% - 62px);
  padding-left: 21px;
  margin-top: 22px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .03em;
  line-height: 1.8;
}

@media screen and (min-width: 768px), print {
  .admissionAvailabilityModule {
    padding: 84px 0 72px;
    margin: 25px 20px 0;
  }
  .admissionAvailabilityModule .tit {
    height: 80px;
    width: 418px;
  }
  .admissionAvailabilityModule .msgWrap {
    width: 1000px;
    padding-top: 48px;
    padding-bottom: 52px;
    margin: 60px auto 0;
  }
  .admissionAvailabilityModule .msg {
    text-align: center;
    width: 850px;
    margin: 0 auto;
  }
  .admissionAvailabilityModule .msg span::after {
    bottom: -6px;
  }
  .admissionAvailabilityModule .list {
    width: 600px;
    margin: 28px auto 0;
  }
  .admissionAvailabilityModule .listTit {
    margin-top: 14px;
  }
  .admissionAvailabilityModule .listTxt {
    margin-top: 14px;
  }
}

@media screen and (max-width: 374px) {
  .admissionAvailabilityModule .msg {
    font-size: 13px;
  }
}


/* admissionFlowchartsModule */

.admissionFlowchartsModule {
  padding: 36px 20px 43px;
  margin-top: 20px;
  background-image: url("../../assets/img/common/ptn-beige.jpg");
  background-position: center center;
  background-repeat: repeat;
}
.admissionFlowchartsModule h2{
  width: 480px;
  height: 80px;
  font-size: 20px;
  background: #fff;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
}
.admissionFlowchartsModule .inner {
  padding: 36px 19px 0 19px;
  margin-top: 36px;
}
.admissionFlowchartsModule .list{
  display: flex;
  flex-direction: column;
}

.admissionFlowchartsModule .txt {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .03em;
  line-height: 30px;
}

.admissionFlowchartsModule .balloon {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: 44px;
}

.admissionFlowchartsModule .balloonItem {
  flex-basis: 40%;
  flex-grow: 1;
  flex-shrink: 1;
}

.admissionFlowchartsModule .balloonItem+.balloonItem {
  margin-left: 32px;
}

.admissionFlowchartsModule .balloonItem:first-of-type .balloonImage {
  width: 116px;
}

.admissionFlowchartsModule .balloonItem:last-of-type .balloonImage {
  width: 132px;
}

.admissionFlowchartsModule .balloonImage {
  display: block;
  margin: 0 auto;
}

.admissionFlowchartsModule .balloonTit {
  font-size: 11px;
}

.admissionFlowchartsModule .balloonTxt {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  height: 82px;
  text-align: center;
  color: #FFF;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 17px;
}

.admissionFlowchartsModule .balloonTxt span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 60px;
}

.admissionFlowchartsModule .balloonTxt.blue {
  margin-top: 12px;
}

.admissionFlowchartsModule .balloonTxt.blue span {
  background-color: #007FEB;
}

.admissionFlowchartsModule .balloonTxt.blue::after {
  background-image: url("../../assets/img/admission/ico_admission_balloon_arrow_blue.png");
}

.admissionFlowchartsModule .balloonTxt.green {
  margin-top: 10px;
}

.admissionFlowchartsModule .balloonTxt.green span {
  background-color: #9ED800;
}

.admissionFlowchartsModule .balloonTxt.green::after {
  background-image: url("../../assets/img/admission/ico_admission_balloon_arrow_green.png");
}

.admissionFlowchartsModule .balloonTxt::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: -1;
  margin: 0 auto;
  width: 51px;
  height: 52px;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: 51px 51px;
}

.admissionFlowchartsModule .listItem {
  position: relative;
  background: #FFF;
  padding: 20px 50px;
  margin-bottom: 20px;
}

.admissionFlowchartsModule .listItem.step4 {
  width: calc(100% * .718120805369128);
  margin-bottom: 50px;
}

.admissionFlowchartsModule .listImage {
  position: absolute;
  width: 97px;
  top: -13px;
  left: -25px;
}

.admissionFlowchartsModule .step7 .listImage {
  width: 299px;
  top: -64px;
  right: 0;
  left: 0;
  margin: 0 auto;
}

.admissionFlowchartsModule .listBox {
  /* padding: 24px 0; */
}

.admissionFlowchartsModule .step4 .listBox {
  height: 80px;
}

.admissionFlowchartsModule .step7 .listBox {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 109px;
  background-color: #D8EA4B;
}

.admissionFlowchartsModule .listTit {
  /* padding-left: calc(100% * 0.278); */
}

.admissionFlowchartsModule .listTit span {
  position: relative;
  z-index: 1;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 26px;
}
.admissionFlowchartsModule .listTit span {
  font-size: 18px;
  position: relative;
  padding: 1rem 0;
  display: block;
  color: #009fe8;
}
.admissionFlowchartsModule .listTit span::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #009fe8, #009fe8 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #009fe8, #009fe8 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.admissionFlowchartsModule .step4 .listTit {
  padding-left: calc(100% * 0.38);
}

.admissionFlowchartsModule .step7 p {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 61px;
  height: 30px;
  background-color: #007FEB;
  color: #FFF;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
}

.admissionFlowchartsModule .listTxt {
  /* padding-left: calc(100% * 0.278); */
  margin-top: 2px;
  font-size: 13px;
  /* font-weight: 700; */
  letter-spacing: .03em;
  line-height: 30px;
}
.linkPdf,
.linkSite{
  background: #fdd000;
  font-weight: 700;
  color: #493f39;
  font-weight: 700;
  display: inline-block;
  padding: 5px 11px;
  margin: 0 5px 0;
  line-height: 1.8;
  position: relative;
}
.gg-file-document{
  display: inline-block!important;
  background: url("../../assets/img/common/ico_docs.png");
  width: 20px;
  height: 20px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 20px;
}
.gg-file-document:hover{
  background: url("../../assets/img/common/ico_docs-bl.png");
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: center center;
}

.gg-external{
  margin-left: 10px!important;
  display: inline-block!important;
  background: url("../../assets/img/common/ico_external.png");
  width: 16px;
  height: 16px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 16px;
}

.admissionFlowchartsModule .step4 .listTxt {
  padding-left: calc(100% * 0.228);
  transform: translateY(48px);
}
.admissionModule01{
  margin: 40px 20px;
  padding: 30px 20px 20px;
  border: solid 3px #009fe8;
  position: relative;
}
.downloadModule01{
  margin: 40px 20px;
  padding: 20px;
  border: solid 3px #009fe8;
  position: relative;
}
@media screen and (max-width: 767px) {
  .linkPdf,
  .linkSite{
    margin: 20px 0 auto;
    /* height: 50px;
    line-height: 50px; */
    display: flex;  
  }
  .admissionModule01{
    margin: 20px 0;
    padding: 20px;
  }
  .downloadModule01{
    margin: 20px 0;
    padding: 20px;
  }
  .admissionFlowchartsModule h2{
    width: calc(100% - 80px);
    font-size: 18px;
  }
  .admissionFlowchartsModule .inner{
    padding: 0;
  }
  .admissionFlowchartsModule .listItem{
    padding: 20px;
  }
  .listTxt .linkPdf, .listTxt .linkSite{
    display: inline;
    line-height: 2.5;
  }
  .admissionCourseModule .tit{
    width: calc(100% - 80px);
    font-size: 18px;
  }

  

}

.admissionFlowchartsModule .listAttention {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 198px;
  height: 23px;
  margin: 4px auto 0 auto;
  background-image: url("../../assets/img/admission/ico_admission_attention.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 198px 23px;
  color: #FFF;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
}

.admissionFlowchartsModule .listArrowItem {
  display: flex;
  align-items: center;
  justify-content: space-around;
  height: 41px;
}

.admissionFlowchartsModule .listArrowImage {
  width: 18px;
}

.admissionFlowchartsModule .listArrowImage.long {
  width: 23px;
  transform: translate(40px, 100px);
}

@media screen and (min-width: 768px), print {
  .admissionModule01{
    width: 1136px;
    margin: 60px auto 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
  }
  .admissionModule01 .txt01{
    width: 400px;
    margin: 0;
    position: relative;
    font-size: 14px;
    /* font-weight: 700; */
    line-height: 2;
  }
  .admissionModule01 .btn{
    /* height: 50px;
    line-height: 50px; */
    width: 280px;
    margin: 0;
    position: relative;
    display: flex;
    align-items: center;
  }
  .downloadModule01{
    width: 1136px;
    margin: 60px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .downloadModule01 .txt01{
    width: 400px;
    margin: 0;
    position: relative;
    font-size: 14px;
    font-weight: 700;
    line-height: 2;
  }
  .downloadModule01 .btn{
    /* height: 50px;
    line-height: 50px; */
    width: 280px;
    margin: 0;
    position: relative;
    display: flex;
    align-items: center;
  }

  .admissionFlowchartsModule {
    padding: 84px 0 68px;
    margin: 60px 20px 114px;
  }
  .admissionFlowchartsModule .inner {
    width: 1000px;
    margin: 56px auto 0;
    padding: 0;
  }
  .admissionFlowchartsModule .txt {
    text-align: center;
  }
  .admissionFlowchartsModule .balloon {
    margin-top: 56px;
  }
  .admissionFlowchartsModule .balloonItem:first-of-type .balloonImage {
    width: 159px;
  }
  .admissionFlowchartsModule .balloonItem:last-of-type .balloonImage {
    width: 189px;
  }
  .admissionFlowchartsModule .listItem.step4 {
    width: 415px;
    margin-bottom: 64px;
  }
  .admissionFlowchartsModule .listBox {
    position: relative;
    margin: 0 10px;
  }
  .admissionFlowchartsModule .step4 .listBox {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    height: 109px;
  }
  .admissionFlowchartsModule .listImage {
    position: absolute;
    width: 124px;
    top: -13px;
    left: -8px;
    z-index: 1;
  }
  .admissionFlowchartsModule .step7 .listImage {
    width: 1000px;
    top: -87px;
    right: 0;
    left: -70px;
    margin: 0;
  }
  .admissionFlowchartsModule .listTit {
    padding-left: 0;
  }
  .admissionFlowchartsModule .listTit span {
    font-size: 18px;
    position: relative;
    padding: 1rem 0;
    display: block;
    color: #009fe8;
  }
  .admissionFlowchartsModule .listTit span::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10px;
    content: '';
    background-image: -webkit-repeating-linear-gradient(135deg, #009fe8, #009fe8 1px, transparent 2px, transparent 5px);
    background-image: repeating-linear-gradient(-45deg, #009fe8, #009fe8 1px, transparent 2px, transparent 5px);
    background-size: 7px 7px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .admissionFlowchartsModule .step4 .listTit {
    width: 100%;
    padding-left: 0;
    margin-top: 18px;
    text-align: center;
  }
  .admissionFlowchartsModule .listTxt {
    padding-left: 0;
    margin-top: 10px;
    font-size: 16px;
  }
  .admissionFlowchartsModule .step4 .listTxt {
    padding-left: 0;
    margin-top: 26px;
  }
  .admissionFlowchartsModule .listAttention {
    position: absolute;
    top: -22px;
    right: 40px;
    width: 139px;
    height: 145px;
    margin: 4px auto 0 auto;
    background-image: url("../../assets/img/admission/ico_admission_attention_pc.png");
    background-size: 139px 145px;
    font-size: 14px;
    line-height: 25px;
  }
  .admissionFlowchartsModule .listArrowImage {
    width: 22px;
  }
  .admissionFlowchartsModule .listArrowImage.long {
    width: 22px;
    transform: translate(0, 122px);
  }
  .admissionFlowchartsModule .listArrowImage:first-of-type {
    margin-right: 30px;
  }
}

@media screen and (max-width: 374px) {
  .admissionFlowchartsModule .balloonItem {
    width: calc(100% / 2 - 8px);
    flex-basis: calc(100% / 2 - 8px);
    flex-grow: 0;
    flex-shrink: 0;
  }
  .admissionFlowchartsModule .balloonItem+.balloonItem {
    margin-left: 16px;
  }
  .admissionFlowchartsModule .balloonItem:first-of-type .balloonImage {
    width: 100%;
  }
  .admissionFlowchartsModule .balloonItem:last-of-type .balloonImage {
    width: 100%;
  }
  .admissionFlowchartsModule .balloonTxt {
    font-size: 13px;
  }
  .admissionFlowchartsModule .listImage {
    width: calc(100vw * 0.259);
  }
  .admissionFlowchartsModule .step7 .listImage {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  .admissionFlowchartsModule .listTit {
    padding-left: 0;
  }
  .admissionFlowchartsModule .listTxt {
    padding-left: 0;
    font-size: 13px;
  }
  .admissionFlowchartsModule .step4 .listTxt {
    padding-left: calc(100% * 0.2);
  }
}


/*-----------------------
.recruit
-----------------------*/

.p_recruit-box {
  background: #F0F8FA;
  padding: 20px;
}

.p_recruit-box__tit01 {
  font-size: 14px;
  font-family: "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
  font-weight: 500;
}

.p_recruit-box__txt01 {
  font-size: 13px;
  line-height: 2;
  display: block;
  margin: 10px 0 0;
}

@media screen and (max-width: 767px) {
  .p_recruit-box {
    padding: 30px 20px;
    margin: 0 0 20px;
  }
}

@media screen and (min-width: 768px), print {
  .p_recruit-box {
    text-align: center;
    width: 700px;
    margin: 70px auto 50px;
    padding: 40px;
  }
  .p_recruit-box__txt01 {
    display: block;
    margin: 20px 0 0;
  }
}


/* recruitModule */

.recruitModule {
  padding: 0 15px;
}

.recruitModule .tit {
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 24px;
}

.recruitModule .tit span {
  padding-bottom: 6px;
  border-bottom: 2px dotted #000;
}

.recruitModule .txt {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 30px;
}
.recruitModule .list{
  position: relative;
  background-image: url(../img/common/ptn-beige.jpg);
}
.recruitModule .listTabs {
  display: flex;
  align-items: flex-end;
}

.recruitModule .listTab {
  background-color: #75909F;
  text-align: center;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
}

.recruitModule .listTab.current {
  position: relative;
  background: #009fe8;
}

.recruitModule .listTab li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
}

.recruitModule .listTab a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
}

.recruitModule .list {
  border: 3px solid #F5F8FA;
}

.recruitModule .listTit {
  display: flex;
  align-items: center;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 26px;
}

.recruitModule .listTxt {
  font-weight: 500;
}
.passModule{
  display: flex;
  justify-content: center;
  margin-top: 20px;
}
.passModule input[type="password"]{
  width: 100%;
  font-size: 16px;
  background-color: #F5F8FA;
  border: none;
  height: 40px;
  border-radius: 0;
  padding: 0 20px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.passModule .formActions{
  margin: 20px auto 0;
  width: 320px;
}
.passModule .btn{
  width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", sans-serif;
}
@media screen and (max-width: 767px) {
  .recruitModule {
    padding: 0 15px 24px;
    margin-top: 54px;
  }
  .recruitModule .tit {
    padding: 0 5px;
    font-size: 19px;
    line-height: 58px;
  }
  .recruitModule .tit span {
    display: inline-block;
    line-height: 44px;
  }
  .recruitModule .txt {
    padding: 0 5px;
    margin-top: 33px;
  }
  .recruitModule .listWrap {
    margin-top: 87px;
  }
  .recruitModule .listWrap .btn {
    margin: 20px 0 0;
  }
  .recruitModule .listTab {
    height: 74px;
    flex-basis: 84px;
    flex-grow: 1;
    flex-shrink: 1;
  }
  .recruitModule .listTab+.listTab {
    margin-left: 3px;
  }
  .recruitModule .listTab.current {
    height: 84px;
  }
  .recruitModule .listTab a {
    line-height: 20px;
  }
  .recruitModule .list {
    padding: 37px 15px 12px 15px;
  }
  .recruitModule .listTit {
    padding-left: 10px;
    justify-content: flex-start;
    width: 100%;
    height: 50px;
    background: #F7FAFC;
    border-top: 2px dotted #000;
  }
  .recruitModule .listTxt {
    padding: 14px 0 24px 0;
    border-top: 2px dotted #000;
    font-size: 13px;
    letter-spacing: .08em;
    line-height: 24px;
  }
  .passModule .formActions{
    width: 100%;
  }
}

@media screen and (min-width: 768px), print {
  .recruitModule {
    padding-bottom: 110px;
  }
  .recruitModule .tit {
    margin-top: 78px;
    text-align: center;
    font-size: 20px;
    line-height: 60px;
  }
  .recruitModule .tit span {
    /* padding-bottom: 20px; */
  }
  .recruitModule .txt {
    margin-top: 54px;
    text-align: center;
  }
  .recruitModule .listWrap {
    width: 1000px;
    margin: 94px auto 0;
  }
  .recruitModule .listWrap .btn {
    width: 315px;
    margin: 40px auto 0;
  }
  .recruitModule .listTab {
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    width: 247px;
    height: 50px;
  }
  .recruitModule .listTab+.listTab {
    margin-left: 4px;
  }
  .recruitModule .listTab.current {
    height: 60px;
  }
  .recruitModule .listTab.current::after {
    top: -46px;
    left: 8px;
    width: 19px;
    height: 46px;
    background-size: 19px 46px;
  }
  .recruitModule .listTab:hover {
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    height: 60px;
    background: #009fe8;
  }
  .recruitModule .listTab a {
    line-height: 26px;
  }
  .recruitModule .list {
    display: flex;
    flex-wrap: wrap;
    width: 1000px;
    margin: 0 auto 0;
    padding: 52px 70px 62px;
  }
  .recruitModule .listTit {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70px;
    position: relative;
    justify-content: center;
    width: 180px;
  }
  .recruitModule .listTit::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 880px;
    height: 2px;
    border-top: 2px dotted #000;
  }
  .recruitModule .listTit::after {
    content: "";
    position: absolute;
    top: 10px;
    right: 0;
    bottom: 10px;
    width: 2px;
    border-right: 2px dotted #000;
  }
  .recruitModule .listTxt {
    display: flex;
    align-items: center;
    width: 674px;
    padding: 24px 0 16px 30px;
    font-size: 13px;
    letter-spacing: .1em;
    line-height: 28px;
  }
  .recruitModule .listTxt:last-of-type {
    position: relative;
  }
  .recruitModule .listTxt:last-of-type::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -180px;
    width: 880px;
    height: 2px;
    border-top: 2px dotted #000;
  }
}

@media screen and (max-width: 374px) {
  .recruitModule .tit {
    font-size: 15px;
  }
  .recruitModule .txt {
    font-size: 12px;
  }
  .recruitModule .listTab a {
    font-size: 12px;
  }
}

/*-----------------------
.staff
-----------------------*/

.staff .quicksand {
  font-family: 'Quicksand', sans-serif;
}

.staff .tit {
  background: #fff;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 40px);
  height: 80px;
  margin: 0 auto;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
}

.staff .tit::after {
  content: "";
  position: absolute;
  top: -14px;
  left: -10px;
  width: 42px;
  height: 37px;
  background-image: url("../../assets/img/admission/ico_admission_ribbon.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 42px 37px;
}

@media screen and (min-width: 768px), print {
  .staff .tit {
    width: 480px;
    height: 80px;
    font-size: 20px;
  }
}

.staffGreetingModule .principalImageWrap {
  position: relative;
  z-index: 1;
  padding: 0 15px 15px 0;
  margin: 41px 53px 0;
}

.staffGreetingModule .principalImageWrap::after {
  content: "";
  position: absolute;
  top: 15px;
  right: 0;
  bottom: 0;
  left: 15px;
  z-index: -1;
  background-color: #009fe8;
}

.staffGreetingModule .principalIcon {
  position: absolute;
  top: -15px;
  left: -33px;
  width: 64px;
}

.staffGreetingModule .principalTit {
  margin: 36px 0 0 0;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 24px;
}

.staffGreetingModule .principalTit span {
  padding-bottom: 4px;
  border-bottom: 2px dotted #000;
}

.staffGreetingModule .principalName {
  display: flex;
  align-items: center;
  margin: 16px 0 0 0;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.5;
  text-align: center;
}

.staffGreetingModule .principalYomi {
  margin: 2px 0 0 12px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 30px;
}

.staffGreetingModule .msg {
  margin: 36px 0 0 0;
  font-size: 14px;
  /* font-weight: 700; */
  letter-spacing: .03em;
  line-height: 30px;
}

.staffGreetingModule .msg span {
  display: inline-block;
}

.staffGreetingModule .msg span+span {
  margin: 14px 0 0 0;
}

@media screen and (min-width: 768px), print {
  .staffGreetingModule {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 120px 0 112px;
    margin: 60px 60px 0;
  }
  .staffGreetingModule .tit {
    background: #fff;
    display: inline-block;
    margin: 5px 0;
    padding: 0 5px;
    letter-spacing: 0.12em;
  }
  .staffGreetingModule .principalWrap {
    order: 1;
    width: 320px;
  }
  .staffGreetingModule .principalImageWrap {
    width: 320px;
    padding: 0 20px 20px 0;
    margin: 0;
  }
  .staffGreetingModule .principalImage {
    width: 100%;
  }
  .staffGreetingModule .principalIcon {
    top: -24px;
    left: -35px;
    width: 75px;
  }
  .staffGreetingModule .principalTit {
    margin-top: 48px;
    text-align: center;
  }
  .staffGreetingModule .principalName {
    display: block;
    margin-top: 26px;
  }
  .staffGreetingModule .principalYomi {
    display: inline-block;
    width: 100%;
    margin: 0;
  }
  .staffGreetingModule .greetingWrap {
    order: 2;
    width: 600px;
    margin-left: 81px;
  }
  .staffGreetingModule .msg {
    margin-top: 52px;
  }
  .staffGreetingModule .msg span+span {
    margin-top: 30px;
  }
}

.staffMemberModule {
  padding: 80px 20px 0;
}

.staffMemberModule .memberTit {
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: .15em;
  line-height: 26px;
}

.staffMemberModule .memberTit span {
  position: relative;
}

.staffMemberModule .memberTit span::after {
  content: "";
  position: absolute;
  top: -94px;
  left: -75px;
  width: 108px;
  height: 112px;
  background-image: url("../../assets/img/staff/ico_staff_member.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 108px 112px;
}

.staffMemberModule .listImageWrap {
  position: relative;
  z-index: 1;
  margin: 110px 35px 0;
}

.staffMemberModule .listImageWrap::after {
  content: "";
  position: absolute;
  top: 15px;
  right: 0;
  bottom: 0;
  left: 15px;
  z-index: -1;
  background-color: #009fe8;
}

.staffMemberModule .listIcon {
  position: absolute;
}

.staffMemberModule .listIcon.type01 {
  top: -15px;
  left: -33px;
  width: 64px;
}

.staffMemberModule .listIcon.type02 {
  right: -36px;
  bottom: -35px;
  width: 71px;
}

.staffMemberModule .listName {
  display: flex;
  align-items: center;
  padding-bottom: 12px;
  margin: 26px 0 0 0;
  border-bottom: 2px dotted #000;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.5;
  text-align: left;
}

.staffMemberModule .listYomi {
  margin: 0 0 0 12px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 30px;
}

.staffMemberModule .listMsg {
  margin: 22px 0 0 0;
  font-size: 14px;
  /* font-weight: 700; */
  letter-spacing: .03em;
  line-height: 30px;
}

.staffMemberModule .listMsg span {
  display: inline-block;
}

.staffMemberModule .listMsg span+span {
  margin: 30px 0 0 0;
}

.staffMemberModule .shirtsWrap {
  position: relative;
  padding: 0 10px;
  margin: 100px 0 0 0;
}

.staffMemberModule .shirtsIcon {
  position: absolute;
  top: -39px;
  right: -16px;
  width: 69px;
}

.staffMemberModule .shirtsTxt {
  transform: translate(-15px, -14px);
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% + 30px);
  height: calc(100vw * 0.41104);
  background-image: url("../../assets/img/staff/ico_staff05_txt.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  color: #FFF;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 2;
}

@media screen and (min-width: 768px), print {
  .staffMemberModule {
    position: relative;
    z-index: 1;
    padding: 0;
  }
  .staffMemberModule .memberTit span::after {
    left: -106px;
  }
  .staffMemberModule .list {
    display: flex;
    align-items: flex-start;
    width: 1005px;
    margin: 100px auto 0;
    flex-direction: column;
  }
  .staffMemberModule .listItem {
    width: 100%;
    display: flex;
    justify-content: space-between;
    background-image: url(../../assets/img/common/ptn-beige.jpg);
    background-position: center center;
    background-repeat: repeat;
    padding: 30px;
    margin-bottom: 30px;
  }
  .staffMemberModule .listItem+.listItem {
    /* margin-left: 60px; */
  }
  .staffMemberModule .listTxtWrap {
    width: 65%;
  }
  .staffMemberModule .listImageWrap {
    width: 32%;
    padding: 0 20px 20px 0;
  }
  .classTit span:not(:first-child){
    margin-left: .5em;
  }
  span.classLv01{
    position: relative;
    padding: .5rem 1rem;
    color: #493f39;
    border-radius: 10px;
    background: #fdd000;
  }
  span.classLv01::after{
    position: absolute;
    bottom: -6px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #fdd000 transparent transparent transparent;
  }
  span.classLv02{
    position: relative;
    padding: .5rem 1rem;
    color: #493f39;
    border-radius: 10px;
    background: #9FD9F6;
  }
  span.classLv02::after{
    position: absolute;
    bottom: -6px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #9FD9F6 transparent transparent transparent;
  }
  span.classLv03{
    position: relative;
    padding: .5rem 1rem;
    color: #FFF;
    border-radius: 10px;
    background: #0068B7;
  }
  span.classLv03::after{
    position: absolute;
    bottom: -6px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #0068B7 transparent transparent transparent;
  }
  .staffMemberModule .listImage {
    width: 100%;
  }
  .staffMemberModule .listIcon {
    position: absolute;
  }
  .staffMemberModule .listIcon.type01 {
    top: -31px;
    left: -42px;
    width: 88px;
  }
  .staffMemberModule .listIcon.type02 {
    right: -39px;
    bottom: -36px;
    width: 91px;
  }
  .staffMemberModule .listIcon.type03 {
    top: -83px;
    left: -24px;
    width: 114px;
  }
  .staffMemberModule .listName {
    display: block;
    margin-top: 20px;
  }
  .staffMemberModule .listYomi {
    display: inline-block;
    width: 100%;
    margin-left: 0;
  }
  .staffMemberModule .listYomi > span{
    margin-left: 1em;
    padding: .5em 1em;
    background: #FFF;
  }
  .staffMemberModule .listMsg {
    margin-top: 32px;
  }
  .staffMemberModule .shirtsWrap {
    display: flex;
    align-items: flex-start;
    width: 1000px;
    padding: 0 38px 0 0;
    margin: 132px auto 0;
  }
  .staffMemberModule .shirtsImage {
    order: 2;
    width: 450px;
  }
  .staffMemberModule .shirtsIcon {
    top: -47px;
    right: 70px;
    width: 85px;
  }
  .staffMemberModule .shirtsTxt {
    order: 1;
    transform: translateX(48px);
    width: 454px;
    height: 195px;
    padding-left: 34px;
    margin-top: 44px;
    background-size: 454px 195px;
    font-size: 15px;
    line-height: 34px;
  }
  .staffMemberModule .groundPattern {
    position: absolute;
    top: 424px;
    right: 0;
    left: 0;
    z-index: -1;
    height: 340px;
    background-image: url("../../assets/img/common/ptn-beige.jpg");
    background-position: center center;
    background-repeat: repeat;
  }
}

@media screen and (max-width: 767px) {
  .staffMemberModule .shirtsTxt {
    font-size: 12px;
  }
  .staffMemberModule{
    padding: 0 20px;
  }
  .staffMemberModule .listImageWrap{
    margin: 20px;
  }
  .staffMemberModule .listName{
    flex-direction: column;
    margin: 0;
  }
  .classTit span:not(:first-child){
    margin-left: .5em;
  }
  .listTxtWrap .classTit{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  span.classLv01{
    position: relative;
    padding: .5rem 1rem;
    color: #493f39;
    border-radius: 10px;
    background: #fdd000;
    margin-bottom: 1rem;
  }
  span.classLv01::after{
    position: absolute;
    bottom: -6px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #fdd000 transparent transparent transparent;
  }
  span.classLv02{
    position: relative;
    padding: .5rem 1rem;
    color: #493f39;
    border-radius: 10px;
    background: #9FD9F6;
    margin-bottom: 1rem;
  }
  span.classLv02::after{
    position: absolute;
    bottom: -6px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #9FD9F6 transparent transparent transparent;
  }
  span.classLv03{
    position: relative;
    padding: .5rem 1rem;
    color: #FFF;
    border-radius: 10px;
    background: #0068B7;
    margin-bottom: 1rem;
  }
  span.classLv03::after{
    position: absolute;
    bottom: -6px;
    left: 1em;
    width: 0;
    height: 0;
    content: '';
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #0068B7 transparent transparent transparent;
  }
  .staffGreetingModule {
    padding: 20px;
    margin: 0px 0 0;
  }
  .staffGreetingModule .tit {
    background: #fff;
    font-size: 18px;
    font-weight: 700;
    line-height: 50px;
    text-align: center;
    position: relative;
  }


}


/*-----------------------
.event
-----------------------*/

.event .page-inner {
  background-image: url(../img/common/ptn-beige.jpg);
  background-size: 547px;
  background-repeat: repeat;
  position: relative;
}

@media screen and (max-width: 767px) {
  .event .page-inner {
    margin: 20px 20px 0;
  }
}

@media screen and (min-width: 768px), print {
  .event .page-inner {
    min-width: 1246px;
    width: calc(100% - 120px);
    margin: 60px auto 0;
    padding: 0 123px 120px 200px;
    text-align: center;
  }
}


/*-----------------------
.eventModule01
-----------------------*/

.eventModule01 .tit01 {
  background: #fff;
}

.eventModule01 .tit01 span {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.eventModule01 .txt01 {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .06em;
  line-height: 2.2;
}

@media screen and (max-width: 767px) {
  .eventModule01 {
    padding: 14px 0 0;
  }
  .eventModule01 .tit01 {
    position: relative;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    height: 100px;
    line-height: 2;
    margin: 20px 20px 0;
  }
  .eventModule01 .tit01 span::after {
    top: -14px;
    left: -10px;
    background-size: 42px 37px;
    width: 42px;
    height: 37px;
  }
  .eventModule01 .txt01 {
    margin: 32px 10px 0;
  }
}

@media screen and (min-width: 768px), print {
  .eventModule01 {
    padding: 60px 0 50px;
  }
  .eventModule01 .tit01 {
    width: 480px;
    height: 80px;
    margin: 0 auto;
    font-size: 20px;
    letter-spacing: .1em;
  }
  .eventModule01 .tit01 span::after {
    top: -14px;
    left: -10px;
    background-size: 42px 37px;
    width: 42px;
    height: 37px;
  }
  .eventModule01 .txt01 {
    margin: 38px 0 0;
  }
  .eventModule01 .ico01 {
    width: 52px;
  }
}


/*-----------------------
.eventMonthlyModule
-----------------------*/

.eventMonthlyModule .monthlyWrap {
  position: relative;
}

.eventMonthlyModule .monthlyWrap .tit {
  position: absolute;
  top: 0;
  z-index: 1;
}

.eventMonthlyModule .monthlyWrap .list {
  margin-top: 22px;
}

.eventMonthlyModule .monthlyWrap .listItem::before {
  content: "・";
}

.eventMonthlyModule .monthlyWrap .listItem+.listItem {
  margin-top: 13px;
}

.eventMonthlyModule .monthlyWrap .listItem span {
  padding-bottom: 8px;
  border-bottom: 2px dotted #000;
}

.eventMonthlyModule .monthlyWrap .imageWrap {
  position: relative;
}

.eventMonthlyModule .monthlyWrap .imageWrap .ico {
  position: absolute;
}

.eventMonthlyModule .msgWrap {
  position: relative;
}

.eventMonthlyModule .msgWrap .msg {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("../../assets/img/event/pic_msg_bg.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  color: #FFF;
}

.eventMonthlyModule .msgWrap .msg .msg-txt {
  text-align: center;
  font-weight: 700;
  letter-spacing: .06em;
}

.eventMonthlyModule .msgWrap .msg .msg-tit {
  width: 100%;
  text-align: center;
  font-size: 15px;
  letter-spacing: .1em;
}

.eventMonthlyModule .msgWrap .msg .msg-tit span {
  padding-bottom: 8px;
  border-bottom: 2px dotted #FFF;
}

.eventMonthlyModule .msgWrap .msg .ico {
  position: absolute;
}

.eventMonthlyModule .msgWrap .msg.plans {
  flex-wrap: wrap;
  background-image: url("../../assets/img/event/pic_msg_plans_bg.png");
}

.eventMonthlyModule .msgWrap .msg.plans .msg-txt {
  text-align: left;
}

.eventMonthlyModule .msgWrap .mask {
  position: absolute;
  bottom: -52px;
  left: 0;
  z-index: 0;
  width: 100%;
  height: calc(100% - 40px);
  background-color: #FFF;
}

@media screen and (max-width: 767px) {
  .eventMonthlyModule {
    padding-bottom: 52px;
    margin-top: 60px;
  }
  .eventMonthlyModule .monthlyWrap {
    padding: 26px 10px 0;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n+1) {
    padding-top: 48px;
    margin-top: 22px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n+1) .tit {
    left: -8px;
    width: 117px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n) {
    padding-top: 80px;
    margin-top: 18px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n) .tit {
    right: -12px;
    width: 140px;
  }
  .eventMonthlyModule .monthlyWrap .txt {
    margin-top: 25px;
    font-size: 14px;
    line-height: 2;
  }
  .eventMonthlyModule .monthlyWrap .listItem {
    font-size: 18px;
    font-weight: 700;
    line-height: 2;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0401 {
    top: -47px;
    right: 0;
    width: 59px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0402 {
    right: 2px;
    bottom: -42px;
    width: 40px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0501 {
    right: -6px;
    bottom: -34px;
    width: 99px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0601 {
    right: 3px;
    bottom: -36px;
    width: 86px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0701 {
    top: -57px;
    left: 0;
    width: 87px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0702 {
    right: -20px;
    bottom: -40px;
    width: 116px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0801 {
    right: -11px;
    bottom: -30px;
    width: 91px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0901 {
    top: -57px;
    left: 0;
    width: 101px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0902 {
    right: 0;
    bottom: -36px;
    width: 68px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico1001 {
    top: -27px;
    right: 40px;
    width: 63px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico1002 {
    right: 4px;
    bottom: -26px;
    width: 69px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico1101 {
    right: -10px;
    bottom: -50px;
    width: 108px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico1201 {
    top: -27px;
    right: -10px;
    width: 58px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico1202 {
    right: 9px;
    bottom: -18px;
    width: 57px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0101 {
    top: -34px;
    left: 10px;
    width: 65px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0102 {
    right: 0;
    bottom: -30px;
    width: 64px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0201 {
    top: -30px;
    right: -3px;
    width: 73px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0202 {
    right: 8px;
    bottom: -23px;
    width: 62px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0301 {
    top: -51px;
    left: -11px;
    width: 116px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap .ico0302 {
    right: -11px;
    bottom: -18px;
    width: 53px;
  }
  .eventMonthlyModule .msgWrap {
    margin-top: 58px;
  }
  .eventMonthlyModule .msgWrap .msg {
    transform: translateX(-5px);
    width: calc(100% + 10px);
    height: calc(100vw * 0.488);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .eventMonthlyModule .msgWrap .msg .msg-txt {
    font-size: 14px;
    line-height: 2;
  }
  .eventMonthlyModule .msgWrap .msg .ico {
    width: 81px;
    top: 0;
    left: 0;
  }
  .eventMonthlyModule .msgWrap .msg.plans {
    transform: none;
    width: 100%;
    height: calc(100vw * 0.7306666666666667);
  }
  .eventMonthlyModule .msgWrap .msg.plans .msg-txt {
    margin: 30px 15px 38px;
  }
  .eventMonthlyModule .msgWrap .msg.plans .ico {
    width: 158px;
    top: auto;
    right: 28px;
    bottom: -50px;
    left: auto;
  }
}

@media screen and (min-width: 768px), print {
  .eventMonthlyModule .monthlyWrap {
    width: 923px;
    padding: 84px 0 62px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .eventMonthlyModule .monthlyWrap.odd {
    justify-content: flex-end;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n+1) .imageWrap {
    margin-right: 50px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n+1) .tit {
    left: -38px;
    width: 190px;
    top: -14px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n+1) .tit img {
    width: 190px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n) .imageWrap {
    order: 2;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n) .txtWrap {
    order: 1;
    margin-right: 50px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n) .tit {
    right: -40px;
    width: 198px;
    top: -10px;
  }
  .eventMonthlyModule .monthlyWrap:nth-of-type(2n) .tit img {
    width: 198px;
  }
  .eventMonthlyModule .monthlyWrap .imageWrap {
    width: 500px;
    height: 350px;
  }
  .eventMonthlyModule .monthlyWrap .list {
    width: 372px;
  }
  .eventMonthlyModule .monthlyWrap .listItem {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .1em;
    line-height: 2;
  }
  .eventMonthlyModule .monthlyWrap .tit {
    width: 223px;
  }
  .eventMonthlyModule .monthlyWrap .txt {
    width: 372px;
    margin-top: 32px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .1em;
    line-height: 2;
  }
  .eventMonthlyModule .monthlyWrap .txtWrap {
    text-align: left;
  }
  .eventMonthlyModule .imageWrap .ico04 {
    top: -74px;
    left: -100px;
    width: 1018px;
  }
  .eventMonthlyModule .imageWrap .ico05 {
    top: -38px;
    left: -128px;
    width: 165px;
  }
  .eventMonthlyModule .imageWrap .ico06 {
    top: 286px;
    left: -94px;
    width: 165px;
  }
  .eventMonthlyModule .imageWrap .ico07 {
    top: -56px;
    left: -180px;
    width: 854px;
  }
  .eventMonthlyModule .imageWrap .ico08 {
    top: 218px;
    left: -63px;
    width: 152px;
  }
  .eventMonthlyModule .imageWrap .ico09 {
    top: -62px;
    left: -166px;
    width: 685px;
  }
  .eventMonthlyModule .imageWrap .ico10 {
    top: -30px;
    left: -70px;
    width: 601px;
  }
  .eventMonthlyModule .imageWrap .ico11 {
    top: -54px;
    left: -50px;
    width: 170px;
  }
  .eventMonthlyModule .imageWrap .ico12 {
    top: -54px;
    left: -50px;
    width: 597px;
  }
  .eventMonthlyModule .imageWrap .ico01 {
    top: -2px;
    left: -134px;
    width: 675px;
  }
  .eventMonthlyModule .imageWrap .ico02 {
    top: -38px;
    left: -36px;
    width: 579px;
  }
  .eventMonthlyModule .imageWrap .ico03 {
    top: -56px;
    left: -74px;
    width: 614px;
  }
  .eventMonthlyModule .msgWrap {
    transform: translateX(-48px);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin-top: 30px;
  }
  .eventMonthlyModule .msgWrap .msg {
    position: relative;
    z-index: 2;
    width: 451px;
    height: 219px;
    margin-top: 26px;
    background-size: 451px 219px;
  }
  .eventMonthlyModule .msgWrap .msg .msg-txt {
    font-size: 15px;
  }
  .eventMonthlyModule .msgWrap .msg .ico {
    top: 26px;
    left: 8px;
    width: 97px;
  }
  .eventMonthlyModule .msgWrap .msg.plans {
    position: relative;
    z-index: 1;
    width: 480px;
    height: 257px;
    margin: 0 0 0 -38px;
    background-size: 480px 257px;
  }
  .eventMonthlyModule .msgWrap .msg.plans .msg-tit {
    font-size: 15px;
  }
  .eventMonthlyModule .msgWrap .msg.plans .msg-txt {
    width: 340px;
    margin-top: 30px;
    font-size: 14px;
    line-height: 2;
  }
  .eventMonthlyModule .msgWrap .msg.plans .ico {
    width: 185px;
    top: 180px;
    left: 396px;
  }
  .eventMonthlyModule .msgWrap .mask {
    height: calc(100% - -44px);
    margin-top: 40px;
    background-color: #FFF;
    width: 100vw;
    bottom: -120px;
    z-index: 0;
    transform: translateX(-214px);
  }
}

.mainimgModule01.facility::after {
  content: "";
  background: url(../../assets/img/common/img_jumbotron-character.png) no-repeat center;
  background-size: contain;
  height: 47px;
  width: 74px;
  position: absolute;
  right: 35px;
  bottom: 100%;
}

@media screen and (max-width: 374px) {
  .mainimgModule01.facility::after {
    height: 12.5333333333vw;
    width: 19.7333333333vw;
    right: 9.3333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .mainimgModule01.facility::after {
    height: 61px;
    width: 97px;
    right: 100px;
  }
}

.maintxtModule01.facility .ico {
  background: no-repeat center;
  background-size: contain;
}

.maintxtModule01.facility .ico01 {
  height: 58px;
  width: 69px;
  background-image: url(../../assets/img/facility/img_jumbotron-leaf01.png);
  top: -29px;
  left: 41px;
}

.maintxtModule01.facility .ico02 {
  background-image: url(../../assets/img/facility/img_jumbotron-leaf02.png);
}

.maintxtModule01.facility .ico03 {
  height: 59px;
  width: 56px;
  background-image: url(../../assets/img/facility/img_jumbotron-leaf03.png);
  top: 21px;
  right: 34px;
}

.facility-intro-module {
  padding: 75px 20px 59px;
  background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 240px 203px;
}

.facility-intro-module__heading {
  display: block;
  text-align: center;
}

.facility-intro-module__heading span {
  display: inline-block;
  padding-bottom: 16px;
  font-size: 20px;
  letter-spacing: .1em;
  position: relative;
}

.facility-intro-module__heading span::after {
  content: "";
  height: 2px;
  width: 100%;
  background: url(../../assets/img/common/border01.png) repeat-x left top;
  position: absolute;
  bottom: 0;
  left: 0;
}

.facility-intro-module__text {
  margin-top: 31px;
  font-size: 16px;
  /* font-weight: 700; */
  line-height: 2.2;
  letter-spacing: .03em;
}

.facility-container-module {
  margin: 0 5.3333333333vw;
  position: relative;
}

.facility-section-module__heading {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
}

.facility-section-module__relative {
  position: relative;
}

.facility-comment-module {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px 0;
  background: url(../../assets/img/facility/bg_comment.png) no-repeat 5px 5px, url(../../assets/img/facility/bg_comment.png) no-repeat top 5px right 5px, url(../../assets/img/facility/bg_comment.png) no-repeat right 5px bottom 5px, url(../../assets/img/facility/bg_comment.png) no-repeat left 5px bottom 5px, #007FEB;
  background-size: 5px 5px;
  color: #FFF;
  font-size: 14px;
  font-weight: 700;
  line-height: 2.428571429;
  letter-spacing: .06em;
  z-index: 1;
  position: relative;
}

.book-house-module {
  margin-top: 86px;
  position: relative;
}

.book-house-module__figure {
  height: 100%;
  width: 100%;
}

.facility-bottom-sections-module {
  background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
  background-size: 240px 203px;
}

.facility-center-sections-module {
  margin-top: 50px;
  padding-top: 65px;
}

.facility-bottom-sections-module {
  margin-top: 40px;
  padding: 68px 0 71px;
}

.facility-garden-module__heading {
  font-size: 18px;
}

.facility-garden-module__text {
  margin-top: 17px;
  font-size: 14px;
  line-height: 2.142857143;
  letter-spacing: .1em;
}

.facility-parking-module {
  margin-top: 58px;
}

.facility-garden-module__figure {
  margin-top: 25px;
}

.facility-parking-module__heading {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .1em;
}

.facility-parking-module__illust {
  margin: 25px -20px 0;
}

.facility-parking-module__illust img {
  width: 100%;
}

.facility-elevator-module {
  margin-top: 31px;
}

.facility-elevator-module__text {
  margin-top: 15px;
  padding: 18px 21px;
  background: #FFF;
  border: solid 4px #F5F8FA;
  font-size: 14px;
  font-weight: 700;
  line-height: 2.142857143;
  letter-spacing: .1em;
}

.facility-section-module__heading span, .facility-garden-module__heading span {
  z-index: 1;
  position: relative;
}

.facility-section-module--03 .facility-comment-module--01 {
  z-index: 1;
}

.facility-garden-module {
  position: relative;
}

.facility-garden-pictures-module {
  position: relative;
}

@media screen and (max-width: 767px) {
  .facility-center-sections-module {
    position: relative;
  }
  .facility-center-sections-module::before {
    content: "";
    width: 100%;
    background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
    background-size: 240px 203px;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 243px;
  }
  .maintxtModule01.facility .ico02 {
    display: none;
  }
  .facility-section-module--01 {
    margin-top: 16vw;
  }
  .facility-section-module--01 .facility-section-module__figure--01 {
    margin-top: 6.1333333333vw;
  }
  .facility-section-module--01 .facility-section-module__figure--02 {
    margin: 19.2vw 17.3333333333vw 0 0;
    z-index: 1;
    position: relative;
  }
  .facility-section-module--01 .facility-section-module__figure--03 {
    margin: 5.6vw 0 0 49.8666666667vw;
  }
  .facility-section-module--01 .facility-comment-module--01 {
    margin: -3.2vw 10.4vw 0 0;
  }
  .facility-section-module--01 .facility-section-module__figure--04 {
    margin-top: 69.3333333333vw;
    margin-left: 10.1333333333vw;
  }
  .facility-section-module--01 .facility-section-module__figure--05 {
    margin: 2.9333333333vw 8vw 0 0;
  }
  .facility-section-module--01 .facility-comment-module--02 {
    margin: -8.5333333333vw 0 0 10.4vw;
  }
  .facility-section-module--01 .facility-section-module__heading {
    margin-left: 14.6666666667vw;
  }
  .facility-section-module--02 {
    margin-top: 11.4666666667vw;
  }
  .facility-section-module--02 .facility-section-module__heading {
    margin-left: 16.5333333333vw;
  }
  .facility-section-module--02 .facility-section-module__figure--01 {
    margin-top: 6.1333333333vw;
  }
  .facility-section-module--02 .facility-comment-module--01 {
    margin-top: 19.2vw;
  }
  .facility-garden-pictures-module {
    margin: 4vw -5.3333333333vw 0;
  }
  .facility-garden-pictures-module__figure--01 {
    margin-right: 23.7333333333vw;
  }
  .facility-garden-pictures-module__figure--02 {
    margin: 4vw 5.0666666667vw 0 36.2666666667vw;
  }
  .facility-garden-pictures-module__figure--03 {
    margin: 4vw 0 0 21.3333333333vw;
  }
  .facility-parking-module__heading {
    margin-left: 10.4vw;
  }
  .facility-section-module--03 {
    margin-top: 9.8666666667vw;
  }
  .facility-section-module--03 .facility-section-module__heading {
    margin-left: 1.6vw;
  }
  .facility-section-module--03 .facility-section-module__figure--01 {
    margin: 6.1333333333vw 17.3333333333vw 0 0;
  }
  .facility-section-module--03 .facility-comment-module--01 {
    margin: -4.2666666667vw -5.3333333333vw 0 9.8666666667vw;
    position: relative;
  }
  .facility-section-module--04 {
    margin-top: 19.2vw;
  }
  .facility-section-module--04 .facility-section-module__heading {
    margin-left: 21.3333333333vw;
  }
  .facility-section-module--04 .facility-section-module__figure--01 {
    margin: 6.1333333333vw 0 0 8vw;
    z-index: 2;
    position: relative;
  }
  .facility-section-module--04 .facility-section-module__figure--02 {
    margin: 5.3333333333vw 37.0666666667vw 0 0;
  }
  .facility-section-module--04 .facility-comment-module--01 {
    margin-top: 8vw;
  }
  .facility-section-module--05 {
    margin-top: 17.6vw;
  }
  .facility-section-module--05 .facility-section-module__heading {
    text-align: right;
  }
  .facility-section-module--05 .facility-section-module__figure--01 {
    margin-top: 5.3333333333vw;
  }
  .facility-section-module--05 .facility-section-module__figure--02 {
    margin: 2.6666666667vw 44.5333333333vw 0 7.2vw;
    position: relative;
    z-index: 2;
  }
  .facility-section-module--05 .facility-comment-module--01 {
    margin: -3.4666666667vw 0 0 18.4vw;
  }
  .facility-section-module--06 .facility-section-module__heading {
    margin-left: 13.6vw;
  }
  .facility-section-module--06 .facility-section-module__figure--01 {
    margin: 5.6vw 24.2666666667vw 0 0;
  }
  .facility-section-module--06 .facility-comment-module--01 {
    margin: 10.9333333333vw 0 0 2.9333333333vw;
  }
  .facility-section-module--07 {
    margin: 9.0666666667vw 0 0 24vw;
  }
  .facility-section-module--07 .facility-section-module__heading {
    margin-left: 10.1333333333vw;
  }
  .facility-section-module--07 .facility-section-module__figure--01 {
    margin-top: 3.7333333333vw;
  }
  .facility-comment-module {
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .facility-center-sections-module {
    background: url(../../assets/img/common/bg.png) repeat left top, #F5F8FA;
    background-size: 240px 203px;
  }
  .maintxtModule01.facility .ico01 {
    height: 112px;
    width: 132px;
    top: -52px;
    left: -182px;
  }
  .maintxtModule01.facility .ico02 {
    height: 87px;
    width: 98px;
    top: -105px;
    right: -258px;
  }
  .maintxtModule01.facility .ico03 {
    height: 81px;
    width: 76px;
    top: 59px;
    right: -115px;
  }
  .facility-intro-module {
    padding: 108px 0 94px;
  }
  .facility-intro-module__heading span {
    font-size: 22px;
  }
  .facility-intro-module__text {
    margin-top: 39px;
    text-align: center;
  }
  .facility-container-module {
    margin: 0 auto;
    max-width: 1126px;
  }
  .facility-section-module--01 {
    padding-top: 78px;
  }
  .facility-comment-module {
    padding: 23px 0;
    font-size: 16px;
    line-height: 1.875;
  }
  .facility-section-module--01 .facility-section-module__heading {
    margin-left: 66px;
  }
  .facility-section-module--01 .facility-section-module__figure--01 {
    margin: 25px auto 0 0;
    width: 668px;
  }
  .facility-section-module--01 .facility-section-module__figure--02 {
    width: 321px;
    z-index: 1;
    position: absolute;
    top: 142px;
    left: 734px;
  }
  .facility-section-module--01 .facility-section-module__figure--03 {
    width: 185px;
    position: absolute;
    top: 407px;
    left: 981px;
  }
  .facility-section-module--01 .facility-section-module__figure--04 {
    width: 448px;
    position: absolute;
    top: 332px;
    right: 670px;
  }
  .facility-section-module--01 .facility-section-module__figure--05 {
    margin: 235px 11px 0 auto;
    width: 530px;
  }
  .facility-section-module--01 .facility-comment-module--02 {
    width: 521px;
    line-height: 2.375;
    position: absolute;
    top: 540px;
    right: 57px;
  }
  .facility-section-module--01 .facility-comment-module--01 {
    width: 601px;
    position: absolute;
    top: 459px;
    left: 399px;
  }
  .book-house-module {
    margin: 316px 0 0;
    height: 400px;
    position: relative;
  }
  .book-house-module img {
    height: 100%;
    width: auto;
    transform: translateX(-50%);
    position: absolute;
    top: 0;
    left: 50%;
  }
  .facility-section-module--02 {
    margin-top: 76px;
  }
  .facility-section-module--02 .facility-section-module__heading {
    margin-left: 82px;
  }
  .facility-section-module--02 .facility-section-module__figure--01 {
    margin-top: 25px;
    width: 450px;
  }
  .facility-section-module--02 .facility-comment-module--01 {
    width: 521px;
    position: absolute;
    top: 100px;
    left: 532px;
  }
  .facility-section-module--04 .facility-section-module__heading {
    margin-left: 71px;
  }
  .facility-section-module--04 .facility-section-module__figure--01 {
    margin: 25px 0 0 25px;
    width: 620px;
    z-index: 2;
    position: relative;
  }
  .facility-section-module--04 .facility-section-module__figure--02 {
    width: 300px;
    position: absolute;
    top: 313px;
    right: -1px;
  }
  .facility-section-module--04 .facility-comment-module--01 {
    width: 538px;
    z-index: 3;
    position: absolute;
    top: 400px;
    left: 233px;
  }
  .facility-section-module--05 {
    margin: 252px auto 0;
    width: 846px;
  }
  .facility-section-module--05 .facility-section-module__heading {
    text-align: right;
  }
  .facility-section-module--05 .facility-section-module__figure--01 {
    margin: 26px 0 0 auto;
    width: 600px;
  }
  .facility-section-module--05 .facility-section-module__figure--02 {
    width: 209px;
    position: absolute;
    top: 290px;
    right: 644px;
  }
  .facility-section-module--05 .facility-comment-module--01 {
    width: 538px;
    position: absolute;
    top: 3px;
    right: 315px;
  }
  .facility-bottom-sections-module {
    margin-top: 150px;
    padding: 60px 0 215px;
  }
  .facility-garden-module {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 0;
    width: 1060px;
  }
  .facility-garden-module__heading {
    margin: 29px 0 0 23px;
  }
  .facility-garden-module__text {
    margin-top: 47px;
  }
  .facility-garden-module__figure {
    margin: 0 62px 0 0;
    width: 380px;
  }
  .facility-garden-pictures-module {
    margin: 70px auto 0;
    width: 958px;
    position: relative;
  }
  .facility-garden-pictures-module__figure--01 {
    width: 400px;
    position: absolute;
    top: 59px;
    left: 0;
  }
  .facility-garden-pictures-module__figure--02 {
    margin: 0 289px 0 auto;
    width: 220px;
  }
  .facility-garden-pictures-module__figure--03 {
    margin: 40px 2px 0 auto;
    width: 345px;
  }
  .facility-parking-module {
    margin: 75px 1px 0 0;
    position: relative;
  }
  .facility-parking-module__heading {
    position: absolute;
    top: 7px;
    left: 77px;
  }
  .facility-elevator-module {
    margin: 71px auto 0;
    padding-left: 151px;
    width: 892px;
    position: relative;
  }
  .facility-elevator-module__figure {
    width: 277px;
    position: absolute;
    top: -31px;
    left: 1px;
  }
  .facility-elevator-module__text {
    padding: 28px 0 28px 158px;
  }
  .facility-comment-module {
    text-align: left;
  }
  .facility-center-sections-module {
    padding: 0;
    height: 750px;
  }
  .facility-section-module--06, .facility-section-module--07, .facility-section-module--03 {
    width: 330px;
    position: absolute;
  }
  .facility-section-module--06 .facility-section-module__figure, .facility-section-module--07 .facility-section-module__figure {
    margin-top: 26px;
  }
  .facility-section-module--06 {
    top: 75px;
    left: 530px;
  }
  .facility-section-module--06 .facility-section-module__heading {
    margin-left: 54px;
  }
  .facility-section-module--07 {
    top: 188px;
    left: 140px;
  }
  .facility-section-module--07 .facility-section-module__heading {
    margin-left: 29px;
  }
  .facility-section-module--06 .facility-comment-module--01 {
    width: 489px;
    position: absolute;
    bottom: -115px;
    left: 70px;
  }
  .facility-section-module--03 {
    position: absolute;
    right: 128px;
    bottom: -193px;
  }
  .facility-section-module--03 .facility-comment-module--01 {
    width: 478px;
  }
  .facility-section-module--03 .facility-section-module__heading {
    margin-left: 14px;
  }
  .facility-section-module--03 .facility-section-module__figure {
    margin-top: 27px;
  }
  .facility-section-module--03 .facility-comment-module--01 {
    position: absolute;
    top: 102px;
    left: -529px;
  }
  .facility-center-sections-module .facility-container-module {
    height: 100%;
  }
  .facility-section-module--04 {
    margin-top: 317px;
  }
  .facility-intro-module__heading span::before {
    top: -38px;
    left: -46px;
  }
  .facility-parking-module__illust {
    margin: 75px -2px 0 0;
  }
}

.facility #footer, .facility #footer .inner01Wrap {
  margin-top: 0;
}

@media screen and (max-width: 374px) {
  .maintxtModule01.facility .ico01 {
    height: 15.4666666667vw;
    width: 18.4vw;
    top: -7.7333333333vw;
    left: 10.9333333333vw;
  }
  .maintxtModule01.facility .ico03 {
    height: 15.7333333333vw;
    width: 14.9333333333vw;
    top: 5.6vw;
    right: 9.0666666667vw;
  }
  .facility-container-module {
    margin: 0 5.3333333333vw;
  }
  .facility-comment-module {
    font-size: 3.7333333333vw;
  }
}

@media screen and (min-width: 1366px) {
  .book-house-module {
    margin: 316px auto 0;
    width: 1366px;
  }
}

@media screen and (min-width: 375px) and (max-width: 767px) {
  .facility-section-module--01 .facility-section-module__figure--04 {
    margin-top: calc(69.33333vw + 13.333333333vw - 50px);
  }
}

.facility-section-module__heading, .facility-garden-module__heading {
  position: relative;
}

.facility-section-module__heading::before, .facility-garden-module__heading::before, .facility-parking-module__heading::before {
  content: "";
  background: no-repeat center;
  background-size: contain;
  position: absolute;
}

.facility-section-module--01 .facility-section-module__heading::before {
  background-image: url(../../assets/img/facility/img_deco01.png);
}

.facility-section-module--02 .facility-section-module__heading::before {
  background-image: url(../../assets/img/facility/img_deco02.png);
}

.facility-section-module--07 .facility-section-module__heading::before {
  background-image: url(../../assets/img/facility/img_deco03.png);
}

.facility-section-module--06 .facility-section-module__heading::before {
  background-image: url(../../assets/img/facility/img_deco04.png);
}

.facility-section-module--03 .facility-section-module__heading::before {
  background-image: url(../../assets/img/facility/img_deco05.png);
}

.facility-section-module--04 .facility-section-module__heading::before {
  background-image: url(../../assets/img/facility/img_deco06.png);
}

.facility-section-module--05 .facility-section-module__heading::before {
  background-image: url(../../assets/img/facility/img_deco07.png);
}

.facility-deco {
  background: no-repeat center;
  background-size: contain;
  position: absolute;
  z-index: 1;
}

.facility-deco--01 {
  background-image: url(../../assets/img/facility/img_deco10.png);
}

.facility-deco--02 {
  background-image: url(../../assets/img/facility/img_deco11.png);
}

.facility-deco--03 {
  background-image: url(../../assets/img/facility/img_deco12.png);
}

.facility-deco--04 {
  background-image: url(../../assets/img/facility/img_deco13.png);
}

.facility-deco--05 {
  background-image: url(../../assets/img/facility/img_deco14.png);
}

.facility-deco--06 {
  background-image: url(../../assets/img/facility/img_deco15.png);
}

.facility-deco--07 {
  background-image: url(../../assets/img/facility/img_deco16.png);
}

.facility-deco--08 {
  background-image: url(../../assets/img/facility/img_deco17.png);
}

.facility-deco--09 {
  background-image: url(../../assets/img/facility/img_deco18.png);
}

.facility-deco--10 {
  background-image: url(../../assets/img/facility/img_deco19.png);
}

.facility-deco--11 {
  background-image: url(../../assets/img/facility/img_deco20.png);
}

.facility-deco--12 {
  background-image: url(../../assets/img/facility/img_deco21.png);
}

.facility-deco--13 {
  background-image: url(../../assets/img/facility/img_deco22.png);
}

.facility-deco--14 {
  background-image: url(../../assets/img/facility/img_deco23.png);
}

@media screen and (max-width: 767px) {
  .facility-parking-module__heading {
    position: relative;
  }
  .facility-deco--01 {
    height: 18.9333333333vw;
    width: 33.3333333333vw;
    right: 15.2vw;
    bottom: -22.1333333333vw;
  }
  .facility-deco--02 {
    height: 75.2vw;
    width: 92.2666666667vw;
    top: -75.2vw;
    right: 0;
  }
  .facility-deco--03 {
    height: 15.7333333333vw;
    width: 16vw;
    top: -16vw;
    left: 9.0666666667vw;
  }
  .facility-deco--04 {
    height: 13.3333333333vw;
    width: 11.4666666667vw;
    top: -6.6666666667vw;
    right: 10.6666666667vw;
  }
  .facility-deco--05 {
    height: 18.4vw;
    width: 56.5333333333vw;
    top: -12.8vw;
    left: -1.3333333333vw;
  }
  .facility-deco--06 {
    height: 52.2666666667vw;
    width: 50.4vw;
    top: -34.6666666667vw;
    right: -12vw;
  }
  .facility-deco--07 {
    height: 17.8666666667vw;
    width: 22.6666666667vw;
    top: -16.8vw;
    right: 0;
  }
  .facility-deco--08 {
    height: 15.7333333333vw;
    width: 13.8666666667vw;
    top: 13.3333333333vw;
    left: -4vw;
  }
  .facility-deco--09 {
    height: 57.6vw;
    width: 37.6vw;
    top: -57.3333333333vw;
    right: -2.6666666667vw;
  }
  .facility-deco--10 {
    height: 15.7333333333vw;
    width: 14.4vw;
    z-index: 3;
    top: 73.8666666667vw;
    left: -1.3333333333vw;
  }
  .facility-deco--11 {
    display: none;
  }
  .facility-deco--12 {
    height: 17.0666666667vw;
    width: 18.6666666667vw;
    right: -5.6vw;
    bottom: 44.5333333333vw;
  }
  .facility-deco--13 {
    height: 18.4vw;
    width: 17.0666666667vw;
    top: 49.3333333333vw;
    left: 26.4vw;
  }
  .facility-deco--14 {
    display: none;
  }
  .facility-section-module--01 .facility-section-module__heading::before {
    height: 47px;
    width: 50px;
    top: -10px;
    left: -60px;
  }
  .facility-section-module--02 .facility-section-module__heading::before {
    height: 55px;
    width: 52px;
    top: -18px;
    left: -62px;
  }
  .facility-section-module--07 .facility-section-module__heading::before {
    height: 56px;
    width: 58px;
    top: -24px;
    left: -38px;
  }
  .facility-section-module--06 .facility-section-module__heading::before {
    height: 48px;
    width: 41px;
    top: -10px;
    left: -51px;
  }
  .facility-section-module--03 .facility-section-module__heading::before {
    height: 56px;
    width: 52px;
    top: -16px;
    left: -26px;
  }
  .facility-section-module--04 .facility-section-module__heading::before {
    height: 50px;
    width: 43px;
    top: -13px;
    left: -51px;
  }
  .facility-section-module--05 .facility-section-module__heading::before {
    height: 37px;
    width: 46px;
    right: 35px;
    top: -5px;
  }
  .facility-garden-module__heading::before {
    height: 51px;
    width: 45px;
    top: -14px;
    left: -37px;
  }
  .facility-parking-module__heading::before {
    height: 45px;
    width: 41px;
    top: -14px;
    left: -44px;
  }
}

@media screen and (min-width: 768px) {
  .facility-section-module--01 .facility-section-module__heading::before {
    height: 74px;
    width: 80px;
    top: -33px;
    left: -85px;
  }
  .facility-section-module--02 .facility-section-module__heading::before {
    height: 103px;
    width: 97px;
    top: -56px;
    left: -62px;
  }
  .facility-section-module--07 .facility-section-module__heading::before {
    height: 77px;
    width: 80px;
    top: -41px;
    left: -47px;
  }
  .facility-section-module--06 .facility-section-module__heading::before {
    height: 61px;
    width: 52px;
    top: -21px;
    left: -55px;
  }
  .facility-section-module--03 .facility-section-module__heading::before {
    height: 69px;
    width: 64px;
    top: -29px;
    left: -35px;
  }
  .facility-section-module--04 .facility-section-module__heading::before {
    height: 50px;
    width: 43px;
    top: -12px;
    left: -51px;
  }
  .facility-section-module--05 .facility-section-module__heading::before {
    height: 37px;
    width: 46px;
    right: 35px;
    top: -5px;
  }
  .facility-garden-module__heading::before {
    height: 51px;
    width: 45px;
    top: -12px;
    left: -36px;
  }
  .facility-parking-module__heading::before {
    height: 58px;
    width: 54px;
    top: -15px;
    left: -56px;
  }
  .facility-deco--01 {
    height: 84px;
    width: 148px;
    top: 9px;
    right: 62px;
  }
  .facility-deco--02 {
    height: 489px;
    width: 564px;
    background-image: url(../../assets/img/facility/img_deco11_pc.png);
    top: -156px;
    left: -1px;
  }
  .facility-deco--03 {
    height: 120px;
    width: 121px;
    top: -131px;
    left: 205px;
  }
  .facility-deco--04 {
    height: 107px;
    width: 93px;
    top: -12px;
    right: 165px;
  }
  .facility-deco--05 {
    height: 69px;
    width: 212px;
    top: -51px;
    left: -12px;
  }
  .facility-deco--06 {
    height: 196px;
    width: 189px;
    top: -130px;
    right: -58px;
  }
  .facility-deco--07 {
    height: 67px;
    width: 85px;
    bottom: 100%;
    left: 10px;
  }
  .facility-deco--08 {
    height: 101px;
    width: 89px;
    top: 52px;
    left: -56px;
  }
  .facility-deco--09 {
    height: 349px;
    width: 227px;
    bottom: 100%;
    right: -64px;
  }
  .facility-deco--10 {
    height: 106px;
    width: 97px;
    top: 119px;
    left: -156px;
  }
  .facility-deco--11 {
    height: 107px;
    width: 93px;
    right: -77px;
    top: 344px;
  }
  .facility-deco--12 {
    height: 97px;
    width: 106px;
    top: 42px;
    right: -90px;
  }
  .facility-deco--13 {
    height: 114px;
    width: 106px;
    top: -94px;
    left: -149px;
  }
  .facility-deco--14 {
    height: 132px;
    width: 117px;
    top: 590px;
    right: -3px;
  }
}