@charset "UTF-8";
/* ====================================================
reset style
==================================================== */
html {
  overflow-y: scroll;
  font-size: 10px;
  /* Base font size, change to 14px or 16px if needed */
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

img {
  vertical-align: middle;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

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

q:before, q:after {
  content: '';
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

/*to enable resizing for IE*/
input, textarea, select {
  *font-size: 100%;
}

/*because legend doesn't inherit in IE */
legend {
  color: #000;
}

del, ins {
  text-decoration: none;
}

/* ====================================================
Font
==================================================== */
@font-face {
  font-family: hirakakustd-w8;
  src: url("../fonts/hirakakustd-w8.otf");
}

@font-face {
  font-family: listuart;
  src: url("../fonts/lilStuartAlt.ttf");
}

@font-face {
  font-family: HelveticaCondensedBlack;
  src: url("../fonts/HelveticaCondensedBlack.ttf");
}

/* ====================================================
Position & transform
==================================================== */
/* ====================================================
Color
==================================================== */
/* ====================================================
Sizing
==================================================== */
/* ====================================================
Misc
==================================================== */
/* ====================================================
Transiton
==================================================== */
/* ====================================================
Media Quary
==================================================== */
/* ====================================================
Base style & container
==================================================== */
body {
  color: black;
  font-size: 100%;
  -webkit-font-smoothing: antialiased;
  line-height: 1.4;
  font-size: 14px;
  font-size: 1.4rem;
  overflow: hidden;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .sp {
    display: none;
  }
}

@media screen and (max-width: 800px) {
  .pc-800 {
    display: none;
  }
}

@media screen and (min-width: 420px) {
  .sp-420 {
    display: none;
  }
}

@media screen and (min-width: 1100px) {
  .sp-1100 {
    display: none;
  }
}

@media screen and (max-width: 420px) {
  .pc-420 {
    display: none;
  }
}

.inner {
  max-width: 1230px;
  padding: 0px 15px;
  margin: auto;
}

.inner-1162 {
  max-width: 1192px;
  padding: 0px 15px;
  margin: auto;
}

.inner-960 {
  max-width: 990px;
  padding: 0px 15px;
  margin: auto;
}

.mb150 {
  margin-bottom: 150px !important;
}

@media screen and (max-width: 768px) {
.mb150 {
    margin-bottom: 75px;
  }
}

.mb80{
  margin-bottom: 80px;
}

@media screen and (max-width: 768px) {
.mb80 {
    margin-bottom: 40px;
  }
}

.mb20{
  margin-bottom: 20px;
}
.mt20{
  margin-top: 40px;
}


.red-b {
  font-weight: bold;
  color: #c8161d;
}

.gray-c {
  color: #cccccc;
}

.pur-c {
  color: #934080;
}

.fwbold {
  font-weight: bold;
}
.yellow-c {
  color: #ebc766;
}




/* ====================================================
Float & clear
==================================================== */
.clearfix {
  *zoom: 1;
}

.clearfix:before {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
  content: "";
  display: table;
}


/* ====================================================
header
==================================================== */

#main-header {
  background: #ffffff;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 999;
}

@media screen and (min-width: 768px) {
  #main-header.on .logo {
    padding: 15px 0px 5px !important;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
}

#main-header .header {
  position: relative;
  z-index: 1;
}

#main-header .navGlobal {
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  #main-header .navGlobal .logo_wrap {
    text-align: center;
  }
}

#main-header .navGlobal .logo_wrap .logo {
  padding: 28px 0px 25px;
  display: block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  display: inline-block;
}

#main-header .navGlobal .logo_wrap .logo img {
  max-width: 320px;
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .logo_wrap .logo {
    padding: 8px 0px 7px 0px;
  }
  #main-header .navGlobal .logo_wrap .logo img {
    max-width: 200px;
  }
}

@media screen and (max-width: 360px) {
  #main-header .navGlobal .logo_wrap .logo {
    padding-bottom: 12px;
  }
  #main-header .navGlobal .logo_wrap .logo img {
    max-width: 170px;
  }
}

#main-header .navGlobal .logo_wrap .logo-alliance {
  margin-left: 5px;
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .logo_wrap .logo-alliance img {
    max-width: 68px;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap {
    background: #934080;
    position: absolute;
    width: 100%;
    height: 100vh;
    top: 50px;
    padding: 0px 0px 100px;
    overflow-x: hidden;
    z-index: 999;
    right: -100%;
    opacity: 0;
    -webkit-transition: opacity 1000ms ease 0s, right 0.5s ease;
    -o-transition: opacity 1000ms ease 0s, right 0.5s ease;
    transition: opacity 1000ms ease 0s, right 0.5s ease;
  }
  #main-header .navGlobal .nav_wrap.on {
    right: 0;
    opacity: 1;
    -webkit-transition: opacity 1000ms ease 0s, right 0.5s ease;
    -o-transition: opacity 1000ms ease 0s, right 0.5s ease;
    transition: opacity 1000ms ease 0s, right 0.5s ease;
  }
}

#main-header .navGlobal .nav_wrap .navGlobalIn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0px -25px;
}

@media screen and (max-width: 1200px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn {
    margin: 0px -15px;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn {
    display: block;
    margin: 0;
  }
}

#main-header .navGlobal .nav_wrap .navGlobalIn .navItem {
  font-size: 17px;
  font-size: 1.7rem;
  position: relative;
}

@media screen and (max-width: 1080px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

@media only screen and (max-width: 1024px) and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem {
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem:hover .subMenu {
    opacity: 1;
    pointer-events: auto;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem:hover .subMenu {
    opacity: 0;
  }
}

@media screen and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.active > a {
    color: #907e00;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem:first-child a {
    border-top: 0;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub > a.on:before {
    display: none;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub > a:after {
    content: '';
    position: absolute;
    width: 18px;
    height: 2px;
    background: #ffffff;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 99;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub > a:before {
    content: '';
    position: absolute;
    width: 2px;
    height: 18px;
    background: #ffffff;
    right: 23px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 99;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub .subMenu .hasSubMenu > a.on:before {
    display: none;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub .subMenu .hasSubMenu > a:after {
    content: '';
    position: absolute;
    width: 18px;
    height: 2px;
    background: #ffffff;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 99;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub .subMenu .hasSubMenu > a:before {
    content: '';
    position: absolute;
    width: 2px;
    height: 18px;
    background: #ffffff;
    right: 23px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 99;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub .subMenu .hasSubMenu .subMenu_child {
    display: none;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem.navItem_hasSub .subMenu .hasSubMenu .subMenu_child li a {
    padding-left: 40px;
    background: #6b2f67;
  }
}

#main-header .navGlobal .nav_wrap .navGlobalIn .navItem > a {
  display: block;
  padding: 20px 25px 18px;
  letter-spacing: -1px;
}

@media screen and (max-width: 1200px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem > a {
    padding: 20px 15px;
  }
}

@media screen and (max-width: 1080px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem > a {
    padding: 20px 2vw;
  }
}

@media screen and (max-width: 900px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem > a {
    padding: 20px 1vw;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem > a {
    padding: 20px 20px 20px 15px;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    border-right: 0;
    border-top: 1px solid #ffffff;
    color: #ffffff;
    position: relative;
  }
}

@media screen and (max-width: 767px) and (max-width: 340px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem > a {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem > a:before {
    position: absolute;
    top: 50%;
    right: -8px;
    display: block;
    content: '';
    background-image: url(../img/common/icon_arrow_btn_w.svg);
    background-size: 10px 11px;
    width: 10px;
    height: 11px;
    -webkit-transform: translate(-25px, -50%);
        -ms-transform: translate(-25px, -50%);
            transform: translate(-25px, -50%);
  }
}

@media screen and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem:last-child .subMenu li a {
    max-width: 250px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1400px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem:last-child .subMenu {
    right: 0;
    left: inherit;
  }
}

#main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu {
  position: absolute;
  top: 100%;
  display: none;
}

@media screen and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu {
    display: block;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: .7s;
    -o-transition: .7s;
    transition: .7s;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu.on {
    opacity: 1;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li {
    list-style: none;
    padding: 0;
    position: relative;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li a {
    border: solid 1px #fff;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.5;
    width: 300px;
    border-top: 0;
    padding: 12px 18px 12px 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: #934080;
    color: #fff;
    position: relative;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li a:before {
    content: "\f0da";
    font: normal normal normal 14px/1 FontAwesome;
    display: inline-block;
    margin-right: 17px;
    position: absolute;
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    top: 18px;
    /* left: 35px; */
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li a:hover {
    opacity: 1;
    background: #833A7E;
  }
}

@media screen and (min-width: 768px) and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li.no-ico > a {
    padding-left: 16px;
    -webkit-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li.no-ico > a:hover {
    opacity: 1;
    background-color: #833A7E;
    -webkit-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li.no-ico > a:before {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu li:last-child a {
    border-bottom: solid 1px #fff;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu {
    left: -10px;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu {
    position: static;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu > li:last-child a {
    border-bottom: 0 !important;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu.on {
    display: block;
  }
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu a {
    padding: 20px 40px 20px 30px;
    border-bottom: 1px solid #ffffff !important;
    display: block;
    width: 100%;
    color: #ffffff;
    font-size: 16px;
    font-size: 1.6rem;
    background: #833A7E;
    position: relative;
  }
}

@media screen and (max-width: 767px) and (max-width: 340px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu a {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem .subMenu a:after {
    position: absolute;
    top: 50%;
    right: -6px;
    display: block;
    content: '';
    background-image: url("../img/common/icon_arrow_btn_w.svg");
    background-size: 10px 11px;
    width: 10px;
    height: 11px;
    -ms-transform: translate(-25px, -50%);
    -webkit-transform: translate(-25px, -50%);
            transform: translate(-25px, -50%);
  }
}

@media only screen and (max-width: 1024px) and (min-width: 768px) {
  #main-header .navGlobal .nav_wrap .navGlobalIn .navItem:last-child .subMenu {
    right: 0;
  }
}

#main-header .menuBar {
  display: none;
}

#main-header .menubar-wrap {
  display: none;
}

#main-header .lst_btn {
  position: fixed;
  top: 30px;
  right: 0;
}

@media screen and (min-width: 768px) {
  #main-header .lst_btn {
    z-index: 2;
  }
}

@media only screen and (max-width: 1300px) {
  #main-header .lst_btn {
    top: 190px;
  }
}

@media screen and (max-width: 767px) {
  #main-header .lst_btn {
    position: fixed;
    left: 0;
    top: auto;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-top: 2px solid #fff;
    width: 100%;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
}

#main-header .lst_btn li {
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  #main-header .lst_btn li {
    width: 50%;
    margin-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  #main-header .lst_btn li:nth-child(1) {
    width: 40%;
  }
  #main-header .lst_btn li:nth-child(2) {
    width: 60%;
  }
}

@media screen and (max-width: 340px) {
  #main-header .lst_btn li:nth-child(1) {
    width: 35%;
  }
  #main-header .lst_btn li:nth-child(2) {
    width: 65%;
  }
}

#main-header .lst_btn li a {
  -webkit-writing-mode: vertical-lr;
      -ms-writing-mode: tb-lr;
          writing-mode: vertical-lr;
  text-align: center;
  font-weight: bold;
  background: #934080;
  color: #fff;
  padding: 22px 12px 26px;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1.55;
  width: 50px;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}

@media screen and (max-width: 767px) {
  #main-header .lst_btn li a {
    padding: 12px 10px;
    -webkit-writing-mode: inherit;
        -ms-writing-mode: inherit;
            writing-mode: inherit;
    font-size: 15px;
    font-size: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
  }
}

@media screen and (max-width: 767px) and (-ms-high-contrast: active), screen and (max-width: 767px) and (-ms-high-contrast: none) {
  #main-header .lst_btn li a {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    padding: 15px 10px 10px;
  }
}

#main-header .lst_btn li.active a {
  background: #934080 !important;
}

@media screen and (max-width: 767px) {
  #main-header .lst_btn li.active a {
    border-right: 2px solid #fff;
  }
}


@media screen and (max-width: 767px) {
  #main-header .menubar-wrap {
    display: block;
  }
  #main-header .menubar-wrap {
    position: absolute;
    top: 0px;
    right: 0px;
    background: #934080;
    padding-right: 10px;
    width: 50px;
    height: 50px;
  }
  #main-header .menubar-wrap .menubar-txt {
    font-size: 8px;
    font-size: 0.8rem;
    color: #ffffff;
    font-weight: bold;
    text-align: center;
    padding-left: 12px;
  }
  #main-header .menubar-wrap .menuBar {
    display: block !important;
    height: 35px;
    width: 44px;
    z-index: 1000;
  }
  #main-header .menubar-wrap .menuBar span {
    height: 3px;
    display: block;
    width: 30px;
    border-radius: 25px;
    background: #ffffff;
    position: absolute;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    right: 10px;
  }
  #main-header .menubar-wrap .menuBar span:nth-child(1) {
    top: 11px;
  }
  #main-header .menubar-wrap .menuBar span:nth-child(2) {
    top: 20px;
  }
  #main-header .menubar-wrap .menuBar span:nth-child(3) {
    top: 28px;
  }
  #main-header .menubar-wrap.on .menuBar {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  #main-header .menubar-wrap.on .menuBar span:nth-child(1) {
    top: 18px;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    width: 25px;
  }
  #main-header .menubar-wrap.on .menuBar span:nth-child(2) {
    opacity: 0;
  }
  #main-header .menubar-wrap.on .menuBar span:nth-child(3) {
    top: 18px;
    width: 25px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

#main-footer {
  padding: 65px 0px 0px;
}

@media screen and (max-width: 767px) {
  #main-footer {
    padding: 50px 0px 45px;
  }
}

#main-footer .logoF {
  text-align: center;
  margin-bottom: 66px;
  display: block;
}

@media screen and (max-width: 767px) {
  #main-footer .logoF {
    margin-bottom: 50px;
  }
}

#main-footer .logoF img {
  max-width: 272px;
  margin: auto;
  display: block;
}

@media screen and (max-width: 767px) {
  #main-footer .logoF img {
    max-width: 220px;
  }
}

#main-footer .listF {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0px 19px 66px;
}

@media screen and (max-width: 1000px) {
  #main-footer .listF {
    margin: 0px 0px 96px;
  }
}

@media screen and (max-width: 767px) {
  #main-footer .listF {
    margin: 0;
    display: block;
  }
}

#main-footer .listF .item {
  padding: 0px 23px;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  #main-footer .listF .item {
    padding: 0;
  }
}

#main-footer .listF .item > a {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 6px;
  display: block;
  font-weight: bold;
}

#main-footer .listF .item .listF-sub {
  margin-bottom: 15px;
}

#main-footer .listF .item .listF-sub li a {
  font-size: 15px;
  font-size: 1.5rem;
  margin-bottom: 3px;
  display: block;
  font-weight: normal;
}

#main-footer .f-bot {
  text-align: center;
  position: relative;
  margin-bottom: 70px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

#main-footer .f-bot span {
  position: absolute;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  display: inline-block;
  text-align: center;
  color: #ffffff;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #666666;
  left: 5px;
  top: 50%;
  width: 104px;
  height: 40px;
  line-height: 40px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-weight: normal;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  #main-footer .f-bot span {
    padding-top: 3px;
  }
}

@media screen and (max-width: 767px) {
  #main-footer .f-bot span {
    position: static;
    display: block;
    -webkit-transform: inherit;
        -ms-transform: inherit;
            transform: inherit;
    margin: 20px auto 0;
  }
}

#main-footer .coppyRight {
  text-align: center;
  color: #ffffff;
  font-size: 12px;
  font-size: 1.2rem;
  background: #907e00;
  padding: 19px 0px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  #main-footer .coppyRight {
    padding: 22px 0px 16px;
  }
}

.breadcrumb {
  margin-bottom: 48px;
}

.breadcrumb .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.5;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .breadcrumb .inner {
    font-size: 10px;
    font-size: 1rem;
  }
}

.breadcrumb .inner i {
  margin: 0 7px;
  color: transparent;
  background: url(../img/feature/ico-right.png) no-repeat center center;
  min-width: 9px;
}

@media screen and (max-width: 767px) {
  .breadcrumb {
    margin-bottom: 50px;
  }
}

.main_content {
  display: block;
}

.backTop {
  width: 86px;
  height: 81px;
  position: fixed;
  right: 0px;
  bottom: 100px;
  background: #000000 url(../img/common/backtop.png) no-repeat;
  background-size: 38px 38px;
  background-position: center center;
  cursor: pointer;
  z-index: 1000;
}

@media screen and (max-width: 767px) {
  .backTop {
    width: 40px;
    height: 40px;
    right: 0px;
    bottom: 21px;
    background-size: 24px 24px;
  }
}

/*
#overview
モジュールスタイルガイド

これはサイト全体に適用されるモジュールのパーツ群です。
必ずこちらのパーツを使用してコーディングするようにお願いします。
*/
/*
#colors
@背景色 #996600
@文字色 #333
@リンク #ccc
*/
/*
#styleguide
パンくずモジュール

パンくずのモジュールです。

@depulicated
@非推奨
@todo
@common

```
<div class="breadcrumb">
<a href='/'>トップページ</a> <i class='fa fa-angle-right' aria-hidden='true'></i> <span>ページ1</span>
</div>

```

*/
/*
#styleguide
見出しモジュール　識別子はttl

見出しモジュールは、セクションごとの見出しとなる要素（HTML5の分類で、「ヘッディングコンテンツ(Heading Content)」となるh1やh2などの要素、見出しとみなすことが出来そうなp要素の事です。
クラス名として識別子、「 ttl 」をつけて管理します。

```
<h1 class="ttlCom01"><span class="ttlCom01In">見出しモジュール</span></h1>
<h2 class="ttlCom02">見出しモジュール</h2>
<h3 class="ttlCom03">見出しモジュール</h3>

```

*/
/*
#styleguide
テキストモジュール　識別子はtxt

テキストモジュールは、p要素やテキストに該当するspan要素などのコンテンツ内の本文のことです。
基本的に、サイト内のテキストはテキストモジュールに該当します。クラス名として識別子「txt」をつけます。

```
<p class="txtBasic">テキストモジュール、識別子は～</p>

```

*/
/*
#styleguide
リンクモジュール　識別子はlink

リンクモジュールは、基本的にa要素のようにリンクが関係するモジュールの事です。クラス名として識別子「link」をつけます。
通常は、テキスト内にリンクが存在する場合にモジュールとして分ける事が多いです。

```
<a href="" class="linkCmn">OOCSS</a>

```

*/
/*
#styleguide
ボタンモジュール　識別子はbtn

ボタンモジュールは、見た目や役割がボタン上の要素の事です。クラス名をつける要素は特に指定はありませんが、button要素やa要素、a要素を囲むdiv要素に付与するパターンが多いです。
クラス名として識別子「btn」をつけます。

```
<div class="btn btnRed">ボタン</div>
<br>
<div class="btn btnBlue">ボタン</div>

```

*/
/*
#styleguide
リストモジュール　識別子はlist

リストモジュールは、リスト状の同じものが連続して並ぶものが該当します。基本的には、ul、ol、dl要素の様な明確にリスト分けされるものが該当しますが、div要素でも構いません。クラス名として識別子「list」をつけます。
また、クラス名を付与する場所はリストの親要素、つまり連続するリストの子要素がliだとすると、ul要素やol要素に識別子「list」を付与したクラス名をつけます。

```
<ul class="listOption">
	<li class="item">HTML</li>
	<li class="item">CSS</li>
	<li class="item">JavaScript</li>
</ul>

```

*/
/*
#styleguide
ボックスモジュール　識別子はbox

ボックスモジュールは、ボックス状のものが該当します。基本的には見出しやテキストなどの要素を含み込むボーダー付きの箱をボックスモジュールとしてみなします。クラス名として識別子「box」をつけます。

```
<div class="boxReading">
	<h2 class="ttlCom01">ボックスモジュールとは</h2>
		<p class="txtCom01">モジュールコーディングという考え方～</p>
		<a href="" class="linkCom01">続きを読む</a>
</div>

```

*/
/*
#styleguide
グリッドモジュール　識別子はgrid（子要素にはcol)

2カラムや3カラムなど、カラム分けするレイアウトのモジュールが該当します。識別子「grid」を付与します。
子要素には「col」を付与します。基本的に、親に「gridXXX」というメインクラスを付与して、「column-2」や「column-3」などカラム数と対応する数字込みのサブクラスを付与します。

```

<div class="gridCom column-3">
	<div class="col">
		<img class="imageCodingDetail" src="img/XXX.jpg">
	<h2 class="ttlCodingDetail">コーディングの秘訣その1</h2>
	<p class="txtCodingDetail">モジュールコーディングという考え方は～</p>
	</div>
	<div class="col">
		<img class="imageCodingDetail" src="img/XXX.jpg">
	<h2 class="ttlCodingDetail">コーディングの秘訣その1</h2>
	<p class="txtCodingDetail">モジュールコーディングという考え方は～</p>
	</div>
	<div class="col">
		<img class="imageCodingDetail" src="img/XXX.jpg">
	<h2 class="ttlCodingDetail">コーディングの秘訣その1</h2>
	<p class="txtCodingDetail">モジュールコーディングという考え方は～</p>
	</div>
</div>


```

*/
/*
#styleguide
FORMモジュール　

フォーム用の部品になります。

```

<form actione="">
<dl>
	<dt>テキスト</dt>
	<dd><input type="text" name="" value=""></dd>
	<dt>パスワード</dt>
	<dd><input type="password" name="passwd" value=""></dd>
	<dt>ラジオボタン</dt>
	<dd><input type="radio" name="" value="" checked="checked" />テスト1
	<input type="radio" name="" value="" />テスト2
	<input type="radio" name="" value="" />テスト3</dd>
	<dt>チェックボックス</dt>
	<dd><input type="checkbox" name="" value="" checked="checked" />テスト1
	<input type="checkbox" name="" value="" />テスト2
	<input type="checkbox" name="" value="" checked="checked" />テスト3</dd>
	<dt>プルダウン</dt>
	<dd><select name="">
	<option value="" selected="selected">テスト1</option>
	<option value="">テスト2</option>
	<option value="">テスト3</option>
	</select></dd>
	<dt>テキストエリア</dt>
	<dd><textarea name="" rows="5" cols="20">テキストエリア</textarea></dd>
</dl>
<div>
	<input type="button" name="btn1" value="汎用ボタン">
	<input type="reset" name="btn2" value="リセット" >
	<input type="submit" name="btn3" value="送信" >
</div>
</form>


```

*/
/* ====================================================
MODULE
==================================================== */
/*パンくずMODULE*/
/*見出しMODULE*/
.ttl_style01 {
  text-align: center;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  margin-bottom: 32px;
}

.ttl_style01 .txt_en {
  display: block;
  font-size: 20px;
  font-size: 2rem;
  color: #934080;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  margin-top: 13px;
  font-weight: bold;
}

.ttl_style01 .txt_small {
  font-size: 28px;
  font-size: 2.8rem;
  display: block;
  margin-bottom: 13px;
}

@media screen and (max-width: 767px) {
  .ttl_style01 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.2;
    margin-bottom: 20px;
  }
  .ttl_style01 .txt_en {
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 8px;
  }
  .ttl_style01 .txt_small {
    font-size: 20px;
    font-size: 2rem;
  }
}

@media screen and (max-width: 374px) {
  .ttl_style01 {
    font-size: 28px;
    font-size: 2.8rem;
  }
  .ttl_style01 .txt_small {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

.ttl_style02 {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1;
  margin-bottom: 24px;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  letter-spacing: -3px;
}

@media screen and (max-width: 767px) {
  .ttl_style02 {
    font-size: 34px;
    font-size: 3.4rem;
    margin-bottom: 20px;
  }
}

.ttl_style02 span {
  font-size: 20px;
  font-size: 2.0rem;
}

@media screen and (max-width: 767px) {
  .ttl_style02 span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.ttl_type01 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
  color: #934080;
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .ttl_type01 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0;
    line-height: 2;
    margin-bottom: 20px;
  }
}

@media (max-width: 340px) {
  .ttl_type01 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.ttl_type02 {
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.64;
  font-weight: bold;
  color: #934080;
  margin-bottom: 10px;
}

@media screen and (max-width: 990px) {
  .ttl_type02 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .ttl_type02 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0;
    line-height: 2;
    margin-bottom: 10px;
  }
}

@media (max-width: 340px) {
  .ttl_type02 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.ttl_type03 {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 36px;
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", YuMincho, "Yu Mincho", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  letter-spacing: -2px;
}

.ttl_type03 span {
  color: #95840c;
  font-size: 20px;
  font-size: 2rem;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: bold;
}

@media screen and (max-width: 990px) {
  .ttl_type03 {
    font-size: 30px;
    font-size: 3rem;
  }
  .ttl_type03 span {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 767px) {
  .ttl_type03 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 20px;
  }
  .ttl_type03 span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.ttl_type04 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 15px;
  font-weight: bold;
}

@media screen and (max-width: 990px) {
  .ttl_type04 {
  font-size: 24px;
  font-size: 2.4rem;
  }
}

@media screen and (max-width: 767px) {
  .ttl_type04 {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 20px;
  }
}

.ttl_type06 {
  font-size: 20px;
  font-size: 2.0rem;
  line-height: 1.3;
  text-align: left;
  margin-bottom: 15px;
  font-weight: bold;
}

@media screen and (max-width: 990px) {
  .ttl_type06 {
  font-size: 20px;
  font-size: 2.0rem;
  }
}

@media screen and (max-width: 767px) {
  .ttl_type06 {
    font-size: 20px;
    font-size: 2.0rem;
    margin-bottom: 20px;
  }
}



/*テキストMODULE*/
.txtBasic, .list_style02 .item .item_content, .sec_intro .txt01, .sec_about .about_item .box01, .sec_favorite .favorite_item, .sec_contact .contact_content {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.87;
}

@media screen and (max-width: 767px) {
  .txtBasic, .list_style02 .item .item_content, .sec_intro .txt01, .sec_about .about_item .box01, .sec_favorite .favorite_item, .sec_contact .contact_content {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
}

.txtBasic01 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 2;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
}

@media screen and (max-width: 767px) {
  .txtBasic01 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6;
  }
}

.txt-bold {
  font-weight: bold;
}

.txt-gold {
  background-color:#ffcc99;
}

.txt-green {
  background-color:#4b9841;
}

.txt-blue {
  color:#3e52b7;
}



.txt-center {
  text-align: center;
}

.txt-right {
  text-align: right;
}

.txt-left {
  text-align: left;
}

/*リンクMODULE*/
.btn_type01 {
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  min-width: 112px;
  text-align: center;
  background: #d58511;
  border-radius: 5px;
  color: #fff;
  padding: 8px 5px;
  font-weight: bold;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_type01 {
    padding: 11px 5px 4px;
  }
}

@media screen and (max-width: 767px) {
  .btn_type01 {
    font-size: 14px;
    font-size: 1.4rem;
    min-width: 90px;
    padding: 5px;
  }
}

/*ボタンMODULE*/
/*リストMODULE*/
/*ボックスMODULE*/
/*グリッドMODULE*/
/*フォームMODULE*/
a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.7;
  }
}

img {
  max-width: 100%;
}

.article-content img {
  max-width: 100%;
 height: auto;
}

.main_content img {
  max-width: 100%;
 height: auto;
}



.btn_style01 {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  color: #ffffff;
  position: relative;
  max-width: 211px;
  width: 100%;
  height: 39px;
  line-height: 39px;
  letter-spacing: -1px;
  background: none;
  border: 1px solid #fff;
  cursor: pointer;
  outline: none;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_style01 {
    padding-top: 3px;
  }
}

@supports (-ms-ime-align: auto) {
  .btn_style01 {
    line-height: 36px;
  }
}

.btn_style01:after {
  content: '';
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
  width: 12px;
  height: 12px;
  background: url("../img/common/ico-r.png") no-repeat center/cover;
}

@media screen and (max-width: 767px) {
  .btn_style01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.btn_style02 {
  display: block;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  text-align: center;
  color: #ffffff;
  position: relative;
  max-width: 291px;
  width: 100%;
  height: 40px;
  line-height: 40px;
  letter-spacing: -1px;
  background: #95840c;
  margin-top: 27px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_style02 {
    padding-top: 4px;
  }
}

.btn_style02:after {
  content: '';
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
  width: 12px;
  height: 12px;
  background: url("../img/common/ico-r.png") no-repeat center/cover;
}

@media screen and (max-width: 767px) {
  .btn_style02 {
    font-size: 14px;
    font-size: 1.4rem;
    margin: auto;
  }
}

.btn_style04 {
  display: block;
  max-width: 200px;
  margin: 28px auto 0px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  height: 40px;
  line-height: 40px;
  text-align: center;
  background: #f2d40b;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #000000;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_style04 {
    padding-top: 4px;
  }
}

@media screen and (max-width: 767px) {
  .btn_style04 {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

@media screen and (min-width: 768px) {
  .btn_style04:hover {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 1;
    background: #000000;
    color: #f2d40b;
  }
}


.btn_style05 {
  display: block;
  font-size: 30px;
  font-size: 3.0rem;
  text-align: center;
  font-weight: bold;
  color: #ffffff;
  position: relative;
  max-width: 700px;
  width: 100%;
  height: 70px;
  line-height: 70px;
  letter-spacing: -1px;
  background: #934080;
  border-radius: 8px;
  margin: 80px auto 120px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_style05 {
    padding-top: 4px;
  }
}

.btn_style05:after {
  content: '';
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
  width: 12px;
  height: 12px;
  background: url("../img/common/ico-r.png") no-repeat center/cover;
}

@media screen and (max-width: 767px) {
  .btn_style05 {
    max-width: 100%;
    font-size: 18px;
    font-size: 1.8rem;
    margin: 30px auto 45px;

  }
}


.btn_style06 {
  display: block;
  font-size: 15px;
  font-size: 1.5rem;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  text-align: center;
  color: #ffffff;
  position: relative;
  max-width: 420px;
  width: 100%;
  height: 40px;
  line-height: 40px;
  letter-spacing: -1px;
  background: #95840c;
  margin-top: 27px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_style06 {
    padding-top: 4px;
  }
}

.btn_style06:after {
  content: '';
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
  width: 12px;
  height: 12px;
  background: url("../img/common/ico-r.png") no-repeat center/cover;
}

@media screen and (max-width: 767px) {
  .btn_style06 {
    font-size: 14px;
    font-size: 1.4rem;
    margin: auto;
  }
}




.list_style01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: top;
      -ms-flex-align: top;
          align-items: top;
  margin-top: 45px;
}

@media screen and (max-width: 767px) {
  .list_style01 {
    display: block;
    margin-top: 50px;
  }
}

.list_style01 .item {
  margin-right: 45px;
  width: calc(33.33% - 30px);
}

.list_style01 .item img {
  margin-bottom: 20px;
}


.list_style01 .col2 {
  margin-right: 45px;
  width: calc(50% - 30px);
}

@media screen and (max-width: 767px) {
  .list_style01 .item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .list_style01 .item:last-child {
    margin-bottom: 0;
  }
}


.list_style01 .col2 {
  margin-right: 45px;
  width: calc(50% - 30px);
}

@media screen and (max-width: 767px) {
  .list_style01 .col2 {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .list_style01 .item:last-child {
    margin-bottom: 0;
  }
}



.list_style01 .item a {
  position: relative;
  display: block;
}

.list_style01 .item a img {
  width: 100%;
}

.list_style01 .item a p {
  position: absolute;
  color: #ffffff;
  top: 50%;
  width: 100%;
  padding: 10px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
  z-index: 2;
  font-size: 22px;
  font-size: 2.2rem;
  text-align: center;
}

.list_style01 .item-gray a p {
  color: #010101;
}

.list_style01 .item:nth-child(3n) {
  margin-right: 0;
}

.list_style02 {
  overflow: hidden;
}

.list_style02 .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  background: #934080;
}

@media screen and (max-width: 767px) {
  .list_style02 .item {
    display: block;
    margin-bottom: 20px;
  }
  .list_style02 .item:last-child {
    margin-bottom: 0;
  }
}

.list_style02 .item:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.list_style02 .item:nth-child(odd) .item_content {
  padding: 26px 10px 30px 8.6%;
}

@media screen and (max-width: 1000px) {
  .list_style02 .item:nth-child(odd) .item_content {
    padding: 26px 10px 30px 6.6%;
  }
}

@media screen and (min-width: 1416px) {
  .list_style02 .item:nth-child(odd) .item_content {
    padding: 26px 10px 30px 120px;
    max-width: 700px;
  }
}

.list_style02 .item:nth-child(odd) .item_content .txt {
  position: relative;
  left: -18%;
  margin-bottom: -39px;
  display: block;
  z-index: 1;
}

@media screen and (max-width: 1000px) {
  .list_style02 .item:nth-child(odd) .item_content .txt {
    left: -14%;
  }
}

@media screen and (max-width: 767px) {
  .list_style02 .item:nth-child(odd) .item_content .txt {
    position: static;
  }
}

.list_style02 .item:nth-child(odd) .item_content .ttl {
  margin-bottom: 43px;
}

@media screen and (min-width: 768px) {
  .list_style02 .item:nth-child(even) .btn_style02 {
    margin-top: 57px;
  }
}

.list_style02 .item .img {
  width: 50%;
}

@media screen and (max-width: 767px) {
  .list_style02 .item .img {
    width: 100%;
  }
}

.list_style02 .item .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover;';
}

.list_style02 .item .item_content {
  width: 50%;
  background: #934080;
  color: #ffffff;
  padding: 36px 10px 30px 5.6%;
}

@media screen and (max-width: 767px) {
  .list_style02 .item .item_content {
    padding: 20px 15px 30px !important;
    width: 100%;
  }
}

.list_style02 .item .item_content > * {
  position: relative;
  z-index: 2;
}

.list_style02 .item .item_content .txt {
  position: relative;
  left: -10.1%;
  margin-bottom: 13px;
  display: block;
}

@media screen and (max-width: 767px) {
  .list_style02 .item .item_content .txt {
    position: static;
  }
}

.list_style02 .item .item_content .ttl {
  font-size: 34px;
  font-size: 3.4rem;
  line-height: 1.35;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  margin-bottom: 23px;
}

@media screen and (max-width: 1000px) {
  .list_style02 .item .item_content .ttl {
    font-size: 25px;
    font-size: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .list_style02 .item .item_content .ttl {
    margin-bottom: 20px !important;
  }
}

.list_style03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

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

.list_style03 .item {
  margin-right: 40px;
  width: calc(33.33% - 30px);
  font-size: 16px;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .list_style03 .item {
    width: 100%;
    margin-right: 0;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 0;
  }
}

.list_style03 .item .img {
  position: relative;
}

.list_style03 .item.voice{
  margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
  .list_style03 .item.voice {
    margin-bottom: 25px;
  }
}

.list_style03 .item .movie{
  position:relative;
  width:100%;
  padding-top:50%;
}
.list_style03 .item .movie iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

.list_style03 .item .movie-name {
  padding: 6px 6px 6px 5px;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #ffffff;
  background: #934080;
}



.list_style03 .item .img a {
  display: block;
}

.list_style03 .item .img img {
  width: 100%;
}



.list_style03 .item .img p {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
  z-index: 2;
  font-size: 24px;
  font-size: 2.4rem;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  width: 100%;
  color: #ffffff;
  text-align: center;
}

@media screen and (max-width: 900px) {
  .list_style03 .item .img p {
    font-size: 20px;
    font-size: 2rem;
  }
}

.list_style03 .item .item_content {
  padding: 15px 9px 40px 9px;
}

.list_style03 .item .item_content ul li {
  position: relative;
}

.list_style03 .item .item_content ul li a {
  padding-left: 14px;
  margin-bottom: 5px;
  font-weight: 500;
  display: block;
}

.list_style03 .item .item_content ul li a:before {
  content: '';
  position: absolute;
  top: 8px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #95840c;
  left: 0;
}

.list_style03 .item:nth-child(3n) {
  margin-right: 0;
}

.list_style04 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 29px;
}

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

.list_style04 .item {
  width: 47%;
  padding: 24px 0px;
  border-top: 1px dotted;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .list_style04 .item {
    width: 100%;
    padding: 15px 0px;
  }
}

@media screen and (min-width: 768px) {
  .list_style04 .item:nth-child(1), .list_style04 .item:nth-child(2) {
    border-top: 0;
  }
}

@media screen and (max-width: 767px) {
  .list_style04 .item:first-child {
    border-top: 0;
  }
}

.list_style04 .item .date {
  width: 90px;
  height: 90px;
  background: #934080;
  border-radius: 50%;
  position: relative;
}

.list_style04 .item .date .date_content {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 20px;
  font-size: 2rem;
  color: #ffffff;
  text-align: center;
}

.list_style04 .item .date .date_content span {
  color: rgba(255, 255, 255, 0.5);
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
}

.list_style04 .item .item_content {
  width: calc(100% - 90px);
  padding: 0px 0px 0px 15px;
}

.sec_mv {
  position: relative;
}

.sec_mv .slider img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .sec_mv .slider img {
    min-height: 280px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    font-family: 'object-fit: cover;';
  }
}

.sec_mv .slider li {
  position: relative;
}

.sec_mv .slider li:first-child .mv_content {
  text-align: left;
}

.sec_mv .slider li:first-child .mv_content .ttl {
  font-size: 60px;
  font-size: 6rem;
}

@media screen and (max-width: 1200px) {
  .sec_mv .slider li:first-child .mv_content .ttl {
    font-size: 50px;
    font-size: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .sec_mv .slider li:first-child .mv_content .ttl {
    font-size: 30px;
    font-size: 3rem;
  }
}

.sec_mv .mv_content {
  color: #ffffff;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  width: 100%;
  max-width: 1320px;
  position: absolute;
  top: 50%;
  left: 50%;
  text-shadow: 0 0 10px #000;
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  padding: 0 60px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media screen and (max-width: 1200px) {
  .sec_mv .mv_content {
    font-size: 24px;
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 767px) {
  .sec_mv .mv_content {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 0 20px;
  }
}

.sec_mv .mv_content .txt_abs {
  position: absolute;
  top: 0;
  max-width: 538px;
  width: 100%;
  margin-left: 48px;
  margin-top: 0;
}

@media screen and (max-width: 1200px) {
  .sec_mv .mv_content .txt_abs {
    max-width: 440px;
  }
}

@media screen and (max-width: 900px) {
  .sec_mv .mv_content .txt_abs {
    max-width: 350px;
  }
}

@media screen and (max-width: 767px) {
  .sec_mv .mv_content .txt_abs {
    min-height: auto;
    max-width: 250px;
    top: 50%;
    margin-top: -12.369vw;
    margin-left: 0;
  }
}

.sec_mv .mv_content ul {
  position: relative;
}

.sec_mv .mv_content ul li {
  display: inline-block;
  margin-right: 49px;
  letter-spacing: -1px;
}

.sec_mv .mv_content ul li:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .sec_mv .mv_content ul li {
    font-size: 18px;
    font-size: 1.8rem;
    display: block;
  }
}

.sec_mv .mv_content .ttl {
  position: relative;
  font-size: 72px;
  font-size: 7.2rem;
  margin-top: 2px;
  letter-spacing: -6px;
}

@media screen and (max-width: 1200px) {
  .sec_mv .mv_content .ttl {
    font-size: 62px;
    font-size: 6.2rem;
  }
}

@media screen and (max-width: 767px) {
  .sec_mv .mv_content .ttl {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1;
    margin-top: 10px;
  }
}

@media screen and (max-width: 640px) {
  .sec_mv .mv_content .ttl {
    letter-spacing: -5px;
  }
}

.sec_mv .mv_content .ttl .char_r {
  font-size: 40px;
  font-size: 4rem;
  vertical-align: super;
}

@media screen and (max-width: 767px) {
  .sec_mv .mv_content .ttl .char_r {
    font-size: 28px;
    font-size: 2.8rem;
  }
}

.sec_mv .mv_content.content01 {
  padding-top: 38px;
  padding-bottom: 38px;
}

@media screen and (max-width: 1200px) {
  .sec_mv .mv_content.content01 {
    padding-top: 31px;
    padding-bottom: 31px;
  }
}

@media screen and (max-width: 900px) {
  .sec_mv .mv_content.content01 {
    padding-top: 13.5px;
    padding-bottom: 13.5px;
  }
}

@media screen and (max-width: 767px) {
  .sec_mv .mv_content.content01 {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.sec_mv .mv_content.content01 .txt-center {
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .sec_mv .mv_content.content01 .txt-center {
    text-align: left;
  }
}
.sec_intro {
  padding: 46px 0px 84px;
}

@media screen and (max-width: 767px) {
  .sec_intro {
    padding: 50px 0px;
  }
}

.sec_intro > p {
  color: #333333;
}

.sec_intro .ttl {
  text-align: center;
  margin-top: 34px;
  margin-bottom: 30px;
  font-size: 70px;
  font-size: 7rem;
  color: #934080;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .sec_intro .ttl {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}

.sec_intro .ttl img {
  display: block;
  margin: auto;
}

@media screen and (max-width: 1100px) {
  .sec_intro .ttl {
    font-size: 60px;
    font-size: 6rem;
    line-height: 1.4;
  }
}

.sec_intro .ttl .txt_x {
  color: #cacaca;
  display: inline-block;
  font-size: 80px;
  font-size: 8rem;
  position: relative;
  top: 5px;
}

@media screen and (max-width: 1100px) {
  .sec_intro .ttl .txt_x {
    font-size: 60px;
    font-size: 6rem;
    top: 2px;
  }
}

@media screen and (max-width: 640px) {
  .sec_intro .ttl {
    font-size: 45px;
    font-size: 4.5rem;
  }
  .sec_intro .ttl .txt_x {
    font-size: 45px;
    font-size: 4.5rem;
  }
}

@media screen and (max-width: 410px) {
  .sec_intro .ttl {
    font-size: 40px;
    font-size: 4rem;
  }
  .sec_intro .ttl .txt_x {
    font-size: 40px;
    font-size: 4rem;
  }
}

@media screen and (max-width: 374px) {
  .sec_intro .ttl {
    font-size: 35px;
    font-size: 3.5rem;
  }
  .sec_intro .ttl .txt_x {
    font-size: 35px;
    font-size: 3.5rem;
  }
}

.sec_intro .area_mail {
  max-width: 1000px;
  margin: 0px auto 17px;
}

@media screen and (max-width: 767px) {
  .sec_intro .area_mail {
    margin-bottom: 20px;
  }
}

.sec_intro .area_mail2 {
  max-width: 1000px;
  margin: 80px auto 17px;
}

@media screen and (max-width: 767px) {
  .sec_intro .area_mail2 {
    margin-top: 40px;
    margin-bottom: 20px;
  }
}


.sec_intro .mail_banner {
  background: url("../img/index/img01.jpg") no-repeat center/cover;
  font-size: 24px;
  font-size: 2.4rem;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  padding: 52px 0px 43px;
  text-align: center;
  color: #ffffff;
text-shadow: 1px 2px 3px #808080; 
}

@media screen and (max-width: 767px) {
  .sec_intro .mail_banner {
    padding: 30px 15px 30px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 374px) {
  .sec_intro .mail_banner {
    font-size: 13px;
    font-size: 1.3rem;
  }
}

.sec_intro .mail_banner .ttl_banner {
  font-size: 36px;
  font-size: 3.6rem;
}

.sec_intro .mail_banner .ttl_banner span {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  display: block;
}

@media screen and (max-width: 767px) {
  .sec_intro .mail_banner .ttl_banner span {
    font-size: 20px;
    font-size: 2rem;
  }
}

@media screen and (max-width: 374px) {
  .sec_intro .mail_banner .ttl_banner span {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

@media screen and (max-width: 1000px) {
  .sec_intro .mail_banner .ttl_banner {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

@media screen and (max-width: 767px) {
  .sec_intro .mail_banner .ttl_banner {
    font-size: 26px;
    font-size: 2.6rem;
  }
}

@media screen and (max-width: 374px) {
  .sec_intro .mail_banner .ttl_banner {
    font-size: 23px;
    font-size: 2.3rem;
  }
}

.sec_intro .mail_wrap {
  background: #934080;
  padding: 5px 10px 5px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.sec_intro .mail_wrap .ip_mail {
  display: inline-block;
  width: 330px;
  height: 39px;
  margin-right: 10px;
  padding: 0px 10px;
  font-size: 15px;
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .sec_intro .mail_wrap .ip_mail {
    width: 55%;
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.sec_intro .mail_wrap .ip_mail::-webkit-input-placeholder {
  color: #bbbbbb;
}

.sec_intro .mail_wrap .ip_mail::-moz-placeholder {
  color: #bbbbbb;
}

.sec_intro .mail_wrap .ip_mail:-ms-input-placeholder {
  color: #bbbbbb;
}

.sec_intro .mail_wrap .ip_mail:-moz-placeholder {
  color: #bbbbbb;
}

.sec_intro .mail_wrap .btn_style01 {
  padding-right: 18px;
}

@media screen and (max-width: 767px) {
  .sec_intro .mail_wrap .btn_style01 {
    width: 45%;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .sec_intro .mail_wrap .btn_style01:after {
    width: 10px;
    height: 10px;
    right: 5px;
  }
}

@media screen and (max-width: 640px) {
  .sec_intro .mail_wrap .btn_style01 {
    padding-right: 24px;
  }
}

.sec_intro .txt01 {
  color: #666666;
  margin: auto;
  max-width: 676px;
  margin: auto;
  letter-spacing: -1px;
}

.sec_about {
  margin-bottom: 166px;
}

@media screen and (max-width: 990px) {
  .sec_about {
    margin-bottom: 80px;
  }
}

@media screen and (max-width: 767px) {
  .sec_about {
    margin-bottom: 65px;
  }
}

.sec_about .ttl_style01 {
  font-size: 38px;
  font-size: 3.8rem;
}

@media screen and (max-width: 767px) {
  .sec_about .ttl_style01 {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

.sec_about .about_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec_about .about_item {
    display: block;
  }
}

.sec_about .about_item .img {
  width: 90%;
  max-width: 800px;
  height: 469px;
}

@media screen and (max-width: 767px) {
  .sec_about .about_item .img {
    width: 100%;
    height: auto;
  }
}

.sec_about .about_item .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover;';
}

.sec_about .about_item .box01 {
  background: rgba(147, 64, 128, 0.9);
  color: #ffffff;
  padding: 50px 30px 30px 50px;
  position: absolute;
  right: 0;
  top: 50px;
  max-width: 500px;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .sec_about .about_item .box01 {
    position: static;
    padding: 20px 15px 30px;
    max-width: 100%;
  }
}

.sec_about .about_item .box01 .ttl {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.4;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .sec_about .about_item .box01 .ttl {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 10px;
  }
}

.sec_favorite {
  margin-bottom: 150px;
}

@media screen and (max-width: 767px) {
  .sec_favorite {
    margin-bottom: 65px;
  }
}

.sec_favorite .favorite_item {
  background: #f1f3ef url("../img/index/img06.jpg") no-repeat;
  background-position: right top;
  background-size: auto;
  margin-bottom: 100px;
}

@media screen and (max-width: 767px) {
  .sec_favorite .favorite_item {
    background: none;
    margin-bottom: 50px;
  }
}

.sec_favorite .favorite_item-content {
  padding: 0px 0px 65px 23px;
}

@media screen and (max-width: 767px) {
  .sec_favorite .favorite_item-content {
    padding: 0px 0px 0px 0px;
  }
}

.sec_favorite .favorite_item .ttl {
  margin: 0px 0px 0;
  position: relative;
  top: -30px;
}

@media screen and (max-width: 767px) {
  .sec_favorite .favorite_item .ttl {
    margin: 0;
  }
}

.sec_favorite .favorite_item .txt02 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 21px;
}

@media screen and (max-width: 767px) {
  .sec_favorite .favorite_item .txt02 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}

.sec_favorite .favorite_item-content .ttl2 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4;
  margin: 20px 0;
}

@media screen and (max-width: 767px) {
  .sec_favorite .favorite_item-content .ttl2 {
    font-size: 20px;
    font-size: 2.0rem;
   margin: 20px 0;
  }
}

.sec_favorite .favorite_item-content .img {
  width: 45%;
  position: relative;
  top: 20px;
}

.sec_favorite .favorite_item-content .img .mov {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  margin-bottom: 22px;

}

.sec_favorite .favorite_item-content .img .mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .sec_favorite .favorite_item-content .img {
    margin-top: 20px;
    width: 100%;
    position: static;
  }
}

.sec_favorite .favorite_item-content .txt-center {
  margin: 0 auto 0;
}

.sec_favorite .btn_style02 {
  margin-top: 20px;
}

.sec_program .tab-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin-top: 20px;
}

@media screen and (max-width: 767px) {
  .sec_program .tab-menu {
    margin-top: 20px;
  }
}

.sec_program .tab-menu li {
  margin-right: 20px;
  width: calc(33.33% - 13.33px);
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .sec_program .tab-menu li {
    margin-right: 10px;
    width: calc(33.33% - 6.67px);
  }
}

.sec_program .tab-menu li.active span, .sec_program .tab-menu li:hover span {
  background: #934080;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.sec_program .tab-menu li.active span:after, .sec_program .tab-menu li:hover span:after {
  border-top: 10px solid #934080;
}

.sec_program .tab-menu li span {
  display: block;
  color: #ffffff;
  font-size: 15px;
  font-size: 1.5rem;
  text-align: center;
  height: 60px;
  line-height: 60px;
  position: relative;
  background: #b0acac;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  font-weight: 500;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .sec_program .tab-menu li span {
    padding-top: 3px;
  }
}

@media screen and (max-width: 767px) {
  .sec_program .tab-menu li span {
    font-size: 14px;
    font-size: 1.4rem;
    height: 40px;
    line-height: 40px;
  }
}

.sec_program .tab-menu li span:before {
  content: '';
  position: absolute;
  top: 3px;
  bottom: 3px;
  left: 3px;
  right: 3px;
  border: 1px dotted #ffffff;
}

.sec_program .tab-menu li span:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #b0acac;
  bottom: -10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.sec_program .tab-menu li:last-child {
  margin-right: 0;
}

.sec_program .tab-content {
  display: none;
}

.sec_program .tab-content.active {
  display: block;
}

.sec_program .program_banner {
  background: #f6f6f6;
  padding: 81px 0px 78px;
  margin-top: 66px;
}

@media screen and (max-width: 767px) {
  .sec_program .program_banner {
    padding: 40px 0px 40px;
    margin-top: 50px;
  }
}

.sec_program .program_banner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0px -5px;
}

.sec_program .program_banner ul li {
  padding: 0px 5px;
  margin: 5px 0;
  width: 33.33%;
}

.sec_program .program_banner ul li img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .sec_program .program_banner .slick-next {
    right: 0;
    z-index: 22;
    width: 30px;
    height: 30px;
  }
}

.sec_program .program_banner .slick-next:before {
  opacity: 1;
  color: #934080;
    font-size: 30px;
    font-size: 3rem;
}

@media screen and (max-width: 767px) {
  .sec_program .program_banner .slick-next:before {
    font-size: 30px;
    font-size: 3rem;
    right: 0;
    width: 30px;
    height: 30px;
  }
}

@media screen and (max-width: 767px) {
  .sec_program .program_banner .slick-prev {
    left: 0;
    z-index: 22;
    width: 30px;
    height: 30px;
  }
}

.sec_program .program_banner .slick-prev:before {
  opacity: 1;
  color: #934080;
    font-size: 30px;
    font-size: 3rem;
}

@media screen and (max-width: 767px) {
  .sec_program .program_banner .slick-prev:before {
    width: 30px;
    height: 30px;
    font-size: 30px;
    font-size: 3rem;
    left: 0;
  }
}
.sec_program .btn_style02 {
  margin: 28px auto 0;
}

@media screen and (max-width: 767px) {
  .sec_program .btn_style02 {
    margin-top: 15px;
  }
}

.sec_contact {
  background: url("../img/index/img12.png") no-repeat center/cover;
  padding: 78px 0px 80px;
}

@media screen and (max-width: 767px) {
  .sec_contact {
    padding: 40px 0px 40px;
  }
}

.sec_contact .contact_content {
  background: rgba(255, 255, 255, 0.7);
  padding: 50px 30px 30px;
  text-align: center;
  max-width: 720px;
  margin: auto;
}

@media screen and (max-width: 767px) {
  .sec_contact .contact_content {
    padding: 20px;
  }
}

.sec_contact .contact_content .ttl {
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 1.26;
  margin-bottom: 29px;
}

@media screen and (max-width: 767px) {
  .sec_contact .contact_content .ttl {
    font-size: 26px;
    font-size: 2.6rem;
    margin-bottom: 15px;
  }
}

.btn_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin-top: 28px;
  padding: 0px 21px 0px 16px;
}

@media screen and (max-width: 767px) {
  .btn_group {
    display: block;
    padding: 0px 10px 0px 10px;
  }
}

.btn_group li {
  margin-right: 20px;
  width: calc(50% - 10px);
}

.btn_group li:nth-child(2n) {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .btn_group li {
    width: 100%;
    max-width: 350px;
    margin: 0px auto 10px !important;
  }
  .btn_group li:last-child {
    margin-bottom: 0 !important;
  }
}

.btn_group li .btn_style03 {
  display: block;
  width: 100%;
  max-width: 400px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  color: #ffffff;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  background: #95840c;
  border-radius: 8px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_group li .btn_style03 {
    padding-top: 4px;
  }
}


.btn_group2 {
  margin-top: 28px;
  padding: 0px 30px 0px 30px;
}

@media screen and (max-width: 767px) {
  .btn_group2 {
    display: block;
    padding: 0px 10px 0px 10px;
  }
}

.btn_group2 li {
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .btn_group2 li {
    width: 100%;
    max-width: 350px;
    margin: 0px auto 10px !important;
  }
  .btn_group2 li:last-child {
    margin-bottom: 0 !important;
  }
}

.btn_group2 li .btn_style03 {
  display: block;
  width: 100%;
  max-width: 400px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  color: #ffffff;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  background: #95840c;
  border-radius: 8px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn_group2 li .btn_style03 {
    padding-top: 4px;
  }
}

.mainVisual {
  padding: 53px 0 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 15px;
}

.mainVisual2 {
  padding: 0 0 50px;
   margin: 0px auto 15px;
}
.mainVisual2 img {
  width: 100%;
}

.mainVisual {
  background: url(../img/common/mv-img-all.jpg) no-repeat;
  background-size: cover !important;
}
.mainVisual.about {
  background: url(../img/common/mv-img-about.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.method {
  background: url(../img/common/mv-img-method.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.kriyayoga {
  background: url(../img/common/mv-img-kriyayoga.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.feature {
  background: url(../img/common/mv-img-feature.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.online {
  background: url(../img/common/mv-img-online_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.jp_basic {
  background: url(../img/common/mv-img-jp_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.jp_spiritual {
  background: url(../img/common/mv-img-jp_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.jp_training {
  background: url(../img/common/mv-img-jp_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.jp_teaching {
  background: url(../img/common/mv-img-jp_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.ov_retreat {
  background: url(../img/common/mv-img-ov_retreat.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.ov_training_1week {
  background: url(../img/common/mv-img-ov_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.ov_training {
  background: url(../img/common/mv-img-ov_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.howto_dvd {
  background: url(../img/common/mv-img-online_program.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.qa {
  background: url(../img/common/mv-img-qa.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.program {
  background: url(../img/common/mv-img-program.jpg) no-repeat;
  background-size: cover;
}

.mainVisual.voice {
  background: url(../img/common/mv-img-voice.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.active {
  background: url(../img/common/mv-img-active.jpg) no-repeat;
  background-size: cover;
}
.mainVisual.bali {
  background: url(../img/feature/hotel00.jpg) no-repeat;
  background-size: cover;
}

.mainVisual .mv-content {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background: rgba(0, 0, 0, 0.7);
  padding: 0 31px 0 20px;
  min-height: 160px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.mainVisual .mv-content .mv-ttl {
  font-weight: 500;
  color: #fff;
  font-size: 30px;
  font-size: 3rem;
  line-height: 2.4;
  letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
  .mainVisual .mv-content {
    min-height: 120px;
  }
  .mainVisual .mv-content .mv-ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: -1px;
  }
}


.mainVisual .mv-content2 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background: rgba(255,255,255, 0.7);
  padding: 0 31px 0 20px;
  min-height: 160px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.mainVisual .mv-content2 .mv-ttl {
  font-weight: 500;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.8;
  letter-spacing: 0px;
  text-align: center;
}

.mainVisual .mv-content2 .mv-ttl span {
  font-size: 80%;
}



@media screen and (max-width: 767px) {
  .mainVisual .mv-content2 {
    min-height: 120px;
  }
  .mainVisual .mv-content2 .mv-ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: -1px;
  }
}

.mainVisual3 {
  padding: 43px 0 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 15px;
  background: #a57da5;
}

.mainVisual3 .mv-content .mv-ttl {
  font-weight: 500;
  color: #fff;
  font-size: 30px;
  font-size: 3rem;
  line-height: 2.4;
  letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
  .mainVisual3 .mv-content .mv-ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: -1px;
  }
}





.itemPicture {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .itemPicture {
    display: block;
    margin-top: 30px;
  }
}


.itemPicture .item {
  border-radius: 12px;
  border: 2px solid #907e00;
  padding: 25px 20px 30px 31px;
  margin-right: 30px;
  width: calc(50% - 15px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media screen and (max-width: 1000px) {
  .itemPicture .item {
    margin-right: 30px;
    width: calc(50% - 15px);
    padding: 25px 10px 30px 15px;
  }
}

@media screen and (max-width: 767px) {
  .itemPicture .item {
    width: 100%;
    margin: 0px auto 30px;
  }
}


.itemPicture .item img {
  width: 100%;
}

.itemPicture .item_img {
  margin-bottom: 23px;
}

.itemPicture .item_content_ttl {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 25px;
  font-weight: bold;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
}

.itemPicture .item p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
  margin-bottom: 25px;
}

.itemPicture .item .ast {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.6;
}

.itemPicture .item ul {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.6;
}

.itemPicture .item ul li {
  margin-bottom: 2px;
}

.itemPicture .item ul em {
  font-weight: bold;
}


.itemPicture .item--small {
  display: block;
  border: 0px solid #eeeeee;
}

.itemPicture .item--big {
  width: 100%;
  display: block;
  border: 0px solid #eeeeee;
  padding: 0 0;
}

.itemPicture .item--big:after {
  content: "";
  display: block;
  clear: both;
}

.itemPicture .item--big .item_img {
  padding-right: 0;
  width: 50%;
  float: left;
  margin-bottom: 0;
  margin-right: 0;
}

@media screen and (max-width: 990px) {
  .itemPicture .item--big .item_img {
    margin-right: 0;
  }
}


@media screen and (max-width: 767px) {
  .itemPicture .item--big .item_img {
    padding-right: 0;
    margin-bottom: 20px;
    width: 100%;
  }
}

.itemPicture .item--big .item_imgR {
  padding-left: 0;
  width: 50%;
  float: right;
  margin-bottom: 0;
  margin-left: 0;
}

@media screen and (max-width: 990px) {
  .itemPicture .item--big .item_imgR {
    margin-left: 0;
  }
}

@media screen and (max-width: 767px) {
  .itemPicture .item--big .item_imgR {
    padding-right: 0;
    margin-bottom: 20px;
    width: 100%;
  }
}



.itemPicture .item--big p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .itemPicture .item--big p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767px) {
  .itemPicture .item--big .item_content {
    padding-left: 0;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 990px) {
  .itemPicture .item {
    padding: 15px 15px;
  }
  .itemPicture .item_content_ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 767px) {
  .itemPicture .item {
    padding: 15px 15px;
    width: 100%;
    margin-bottom: 30px;
  }
  .itemPicture .item_img {
    width: 100%;
    margin-bottom: 20px;
  }
  .itemPicture .item_content {
    width: 100%;
  }
  .itemPicture .item_content_ttl {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 15px;
  }
  .itemPicture .item_content p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.sec-method {
  padding-bottom: 94px;
}

@media screen and (max-width: 767px) {
  .sec-method {
    padding-bottom: 50px;
  }
}

.sec-yoga {
  position: relative;
}

.sec-yoga .img-main {
  width: 100%;
  min-height: 600px;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}

@media (max-width: 340px) {
  .sec-yoga .img-main {
    -o-object-position: right;
       object-position: right;
  }
}

.sec-yoga .sec-content {
  position: absolute;
  width: 100%;
  top: 0;
  left: -5px;
  color: #fff;
  padding-top: 31px;
}

.sec-yoga .sec-content .img-ttl {
  margin-bottom: 9px;
  font-family: 'listuart';
  color: rgba(71, 45, 0, 0.7);
  font-size: 70px;
  font-size: 7rem;
}

.sec-yoga .sec-content .img-ttl span {
  -webkit-transform: translate(-5px, -20px);
      -ms-transform: translate(-5px, -20px);
          transform: translate(-5px, -20px);
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .sec-yoga .sec-content .img-ttl {
    font-size: 40px;
    font-size: 4rem;
  }
  .sec-yoga .sec-content .img-ttl span {
    -webkit-transform: translate(-5px, -5px);
        -ms-transform: translate(-5px, -5px);
            transform: translate(-5px, -5px);
  }
}

.sec-yoga .sec-content .ttl {
  max-width: 990px;
  margin: 0 auto 20px;
  font-weight: bold;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.67;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.004);
  letter-spacing: -1px;
}

.sec-yoga .sec-content p {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.67;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.004);
  max-width: 990px;
  margin: 0 auto 20px;
}

@media screen and (max-width: 990px) {
  .sec-yoga .img-main {
    min-height: 500px;
  }
  .sec-yoga .sec-content .ttl {
    font-size: 30px;
    font-size: 3rem;
  }
  .sec-yoga .sec-content p {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

@media screen and (max-width: 767px) {
  .sec-yoga {
    font-size: 20px;
    font-size: 2rem;
  }
  .sec-yoga .img-main {
    min-height: 370px;
  }
  .sec-yoga .img-ttl img {
    height: 50px;
  }
  .sec-yoga .sec-content .ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
  }
  .sec-yoga .sec-content p {
    font-size: 14px;
    font-size: 1.4rem;
  }
}

.txtBase {
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .txtBase {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

.sec-step {
  padding-bottom: 100px;
  margin-top: -17%;
  position: relative;
  z-index: 1;
}

@media (max-width: 1100px) {
  .sec-step {
    margin-top: 0;
  }
}

.sec-step .inner {
  background: #ffffff;
  padding-top: 70px;
  padding-left: 0;
  padding-right: 0;
  max-width: 1200px;
}

@media (max-width: 1100px) {
  .sec-step .inner {
    max-width: 1230px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

.sec-step .sec-content {
  max-width: 980px;
  margin: 0 auto;
}

.sec-step .txtBase {
  margin-bottom: 36px;
}

@media screen and (max-width: 767px) {
  .sec-step {
    padding-bottom: 50px;
  }
  .sec-step .inner {
    padding-top: 50px;
  }
  .sec-step .txtBase {
    margin-bottom: 20px;
  }
}

.listStep {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 50px 40px;
  background: url(../img/feature/bg-01.jpg) no-repeat;
  background-size: cover;
  margin-top: 52px;
}

.listStep .item {
  width: 33.33%;
  padding: 0 10px;
}

.listStep .item_inner {
  background: #ffffff;
  padding-top: 13px;
  padding-bottom: 8px;
}

.listStep .item_inner .number {
  text-align: center;
  font-weight: bold;
  display: block;
  color: #907e00;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.2;
  margin-bottom: 5px;
  padding: 0 10px;
}

.listStep .item_inner p {
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
  text-align: center;
  padding: 0 10px;
}

@media screen and (max-width: 767px) {
  .listStep {
    margin-top: 25px;
    padding: 20px 15px;
  }
  .listStep .item_inner {
    padding: 15px 0;
  }
  .listStep .item_inner .number {
    font-size: 25px;
    font-size: 2.5rem;
  }
  .listStep .item_inner p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

@media (max-width: 340px) {
  .listStep {
    padding-left: 10px;
    padding-right: 10px;
  }
  .listStep .item {
    padding: 0 5px;
  }
  .listStep .item_inner p {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.sec-book {
  padding: 100px 0 94px;
  background: #f2f2f2;
}

@media screen and (max-width: 767px) {
  .sec-book {
    padding: 50px 0;
  }
}

.itemBook {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 858px;
  margin: 0 0;
}

.itemBook .item {
  width: 25%;
  padding: 0 24px;
}

@media screen and (max-width: 767px) {
  .itemBook .item {
    width: 50%;
    padding: 0 10px;
  }
}

.itemBook .item img {
  margin-bottom: 10px;
  width: 80%;
}

.itemBook .item .ttl {
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.3125;
  margin-bottom: 10px;
  text-align: center;
  letter-spacing: -2.5px;
  word-break: break-all;
  word-wrap: break-word;
}

.sec-president .intro-col .itemBook .item p{
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3;
}


@media screen and (max-width: 990px) {
  .itemBook {
    margin-left: -15px;
    margin-right: -15px;
  }
  .itemBook .item {
    padding: 0 15px;
  }
}

@media screen and (max-width: 767px) {
  .itemBook {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: -20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .itemBook .item {
    margin-bottom: 20px;
  }
  .itemBook .item .ttl {
    font-size: 14px;
    font-size: 1.4rem;
  }
}


.sec-course02 {
  padding-top: 23px;
}

@media screen and (max-width: 767px) {
  .sec-course02 {
    padding-top: 0;
  }
}

.sec-course02 .course02-inner {
  max-width: 1000px;
  padding: 0px 20px 0px 100px;
}

@media screen and (max-width: 767px) {
  .sec-course02 .course02-inner {
    padding: 0px 20px;
  }
}

.list_schedule {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-top: 30px;
}

.list_schedule .item {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  position: relative;
  margin-right: 120px;
  width: calc(50% - 60px);
  margin-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .list_schedule .item {
    width: 100%;
    padding-bottom: 75px;
    margin: 0px 0px 10px;
    background: url(../img/course02/arr-down.png) no-repeat center bottom;
  }
}

.list_schedule .item.no-arr {
  padding-bottom: 0;
  margin-bottom: 50px;
  background: none;
}

.list_schedule .item.no-arr:before {
  display: none;
}

.list_schedule .item:nth-child(2n+1) {
  margin-right: 0;
}

@media screen and (min-width: 768px) {
  .list_schedule .item:nth-child(even) {
    padding-top: 116px;
  }
  .list_schedule .item:nth-child(even):before {
    content: '';
    position: absolute;
    width: 74px;
    height: 74px;
    background: url("../img/course02/arr-right.png") no-repeat center/cover;
    right: -106px;
    bottom: 62px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .list_schedule .item:nth-child(even):before {
    width: 54px;
    height: 54px;
    right: -80px;
  }
}

@media screen and (min-width: 768px) {
  .list_schedule .item:nth-child(odd):before {
    content: '';
    position: absolute;
    width: 73px;
    height: 75px;
    left: -164px;
    top: 66px;
    background: url("../img/course02/arr-left.png") no-repeat center/cover;
  }
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .list_schedule .item:nth-child(odd):before {
    width: 53px;
    height: 55px;
    left: -140px;
  }
}

.list_schedule .item .ttl {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  margin-bottom: 24px;
  padding-left: 35px;
  padding-right: 15px;
  line-height: 1.3;
}

@media screen and (max-width: 1000px) {
  .list_schedule .item .ttl {
    font-size: 20px;
    font-size: 2rem;
  }
}

@media screen and (max-width: 767px) {
  .list_schedule .item .ttl {
    font-size: 18px;
    font-size: 1.8rem;
    padding-left: 20px;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 340px) {
  .list_schedule .item .ttl {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.list_schedule .item .img img {
  width: 100%;
  margin-top: 13px;
}

@media screen and (max-width: 767px) {
  .list_schedule .item .img img {
    margin-top: 8px;
  }
}

.list_schedule .item .box_ttl {
  position: relative;
}

@media screen and (max-width: 767px) {
  .list_schedule .item .box_ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 15px;
  }
}

.list_schedule .item .box_time {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -80px;
}

@media screen and (max-width: 767px) {
  .list_schedule .item .box_time {
    position: static;
    -webkit-transform: inherit;
        -ms-transform: inherit;
            transform: inherit;
  }
}

.list_schedule .item .box_time span {
  width: 90px;
  height: 90px;
  line-height: 90px;
  text-align: center;
  border-radius: 50%;
  background: #89467d;
  font-size: 20px;
  font-size: 2rem;
  color: #fffffe;
  display: inline-block;
  position: relative;
}

@media screen and (max-width: 767px) {
  .list_schedule .item .box_time span {
    width: 60px;
    height: 60px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 60px;
  }
}


.list_comment {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 70px;
}

@media screen and (max-width: 767px) {
  .list_comment {
    display: block;
    margin-top: 50px;
  }
}

.list_comment .item {
  border-radius: 12px;
  border: 2px solid #907e00;
  padding: 25px 20px 30px 31px;
  margin-right: 60px;
  width: calc(50% - 30px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media screen and (max-width: 1000px) {
  .list_comment .item {
    margin-right: 30px;
    width: calc(50% - 15px);
    padding: 25px 10px 30px 15px;
  }
}

@media screen and (max-width: 767px) {
  .list_comment .item {
    width: 100%;
    margin: 0px auto 30px;
  }
}

.list_comment .item .img {
  width: 35%;
}

@media screen and (max-width: 767px) {
  .list_comment .item .img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 100%;
    margin: 0 auto 20px;
    text-align: center;
  }
}

.list_comment .item .item_content {
  width: 65%;
  padding-right: 20px;
}

@media screen and (max-width: 767px) {
  .item .item_content {
    padding: 0;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .list_comment .item .item_content .ttl_style03 {
    margin-bottom: 22px;
  }
}

.list_comment .item:nth-child(2n) {
  margin-right: 0;
}


.sec_testimonial {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.875;
  color: #333333;
  margin-top: 0;
  margin-bottom: 118px;
}

@media screen and (max-width: 767px) {
  .sec_testimonial {
    margin-top: 0px;
    margin-bottom: 50px;
  }
}

.sec_testimonial .testimonial_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;

}

@media screen and (max-width: 767px) {
  .sec_testimonial .testimonial_item {
    display: block;
  }
}

.sec_testimonial .testimonial_item .img {
  width: 30.85%;
  position: relative;
  top: -5px;
}

.sec_testimonial .testimonial_item .img img {
  width: 100%;
  margin-bottom: 22px;
}

.sec_testimonial .testimonial_item .img img:last-child {
  margin-bottom: 0;
}

.sec_testimonial .testimonial_item .img .mov {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}

.sec_testimonial .testimonial_item .img .mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .sec_testimonial .testimonial_item .img {
    margin-top: 20px;
    width: 100%;
    position: static;
  }
}

.sec_testimonial .testimonial_item .item_content {
  width: calc(100% - 30.85%);
  padding-right: 3.6%;
}

@media screen and (max-width: 767px) {
  .sec_testimonial .testimonial_item .item_content {
    width: 100%;
    padding: 0;
  }
}

.sec_testimonial .testimonial_item .item_content p {
  margin-bottom: 30px;
}

.sec_testimonial .testimonial_item .item_content p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .sec_testimonial .testimonial_item .item_content p {
    margin-bottom: 20px;
  }
}

.ttl_style03 {
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 26px;
  line-height: 1.4;
  font-weight: bold;
}

.ttl_style03.has-decoration {
  border-bottom: 1px solid #907e00;
  padding-bottom: 7px;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
}

.ttl_style03 span {
  display: inline-block;
  font-size: 18px;
  font-size: 1.8rem;
  font-family: YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝", "游明朝体", "ＭＳ 明朝", "MS Mincho", "HiraMinProN-W3", "TakaoEx明朝", TakaoExMincho, "MotoyaLCedar", "Droid Sans Japanese", serif;
}

@media screen and (max-width: 767px) {
  .ttl_style03 {
    margin-bottom: 15px;
    font-size: 20px;
    font-size: 2rem;
  }
  .ttl_style03 span {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.txt_style01 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5;
  color: #89467d;
  margin-bottom: 28px;
  font-weight: bold;
}

@media screen and (max-width: 1000px) {
  .txt_style01 {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

strong {
  font-weight: bold;
}

.sec-content .img,
.method .img {
  width: 700px;
  position: relative;
  margin: 50px auto 0;
}

.sec-content .img .mov,
.method .img .mov {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  margin-bottom: 22px;

}

.sec-content .img .mov iframe,
.method .img .mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .sec-content .img,
  .method .img {
    margin-top: 20px;
    width: 100%;
    position: static;
  }
}


/*# sourceMappingURL=maps/styles.css.map */

.logo_wrap{
    display: flex;
    justify-content: center;
    align-items: center;
}
#main-header .navGlobal .logo_wrap .logo-alliance{
    margin-left: 5px;
}
.sec_favorite.sec_favorite .favorite_item {
    background: #f1f3ef url(../../_img/index/img06.jpg) no-repeat;
    background-position: right top;
    background-size: auto;
    margin-bottom: 100px;
}