.cp_navi07{
z-index: 1000;
}

.cp_navi07 .menu07 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin: 0 auto;
  cursor: pointer;
  transition: all 0.5s ease-in-out;
  border-radius: 50%;
  background-color: #ffffff;
}
.cp_navi07 .menu07 div.menubar {
  width: 30px;
  height: 30px;
}
.cp_navi07 .menu07 div.menubar .bar {
  display: block;
  width: 100%;
  height: 5px;
  margin-top: 3px;
  margin-bottom: 5px;
  border-radius: 2px;
  background-color: #1b2538;
}
.cp_navi07 .menu07 ul {
  position: relative;
  display: none;
  margin: 0;
  padding: 0;
  list-style-type: none;
  text-align: center;
  opacity: 0;
  z-index: 1000;
  transition: all 0.5s ease;
  background-color: #4F3A93;
}
.cp_navi07 .menu07 ul li {
  display: flex;
}
.cp_navi07 .menu07 ul li a {
  display: flex;
  align-items: center;
  height: 50px;
  padding: 0 0.5em;
  color: #ffffff;
  text-decoration: none;
  transition: all 0.3s ease-in;
}
.cp_navi07 .menu07 ul li a:hover {
  color: #1b2538;
  background: #ffffff;
}
/* クリックした時の動き */
.cp_navi07 #cp_navimenuid {
  display: none;
}
.cp_navi07 #cp_navimenuid:checked ~ .menu07 {
  width: 100%;
  height: 50px;
  border: none;
  border-radius: 5px;
  background-color: transparent;
}
.cp_navi07 #cp_navimenuid:checked ~ .menu07 > ul {
  display: flex;
  opacity: 1;
}
.cp_navi07 #cp_navimenuid:checked ~ .menu07 > .menubar {
  display: none;
}
.menu07 li::before {display: none;}
/* 新しく背景のdivを追加して、チェックが入っている時のみ表示 */
.cp_navi07 #cp_navimenuid:checked ~ .background_overlay {
  display: flex;
}
.background_overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0);
  z-index: 0;
}



.footer-001 {
    display: flex;
    align-items: center;
    flex-direction: column;
    padding: 25px 10px 10px;
    background-color: #4F3A93;
}

.footer-001__logo {
    width: 130px;
    height: 30px;
}

.footer-001__list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 1.5em;
    list-style-type: none;
    margin: 0 0 .5em;
    padding: .5em;
}

.footer-001__link {
    color: #fff;
    font-weight: 200;
    text-decoration: none;
}

.footer-001__copyright {
    margin: 0;
    color: #ffffffb3;
    font-weight: 200;
    font-size: .8em;
}

/*--------------------------------------------
	SP設定
--------------------------------------------*/

@media (max-width: 800px) {

.footer-001__list {
    display: block;
    justify-content: center;
    gap: 0 1.5em;
    list-style-type: disc;
    margin: 0 0 .5em;
    padding: .5em;
	color: #fff;
}

}

.breadcrumb-004 {
    display: flex;
    gap: 0 20px;
    list-style: none;
    padding: 6px 0 6px 18px;
    border-radius: 3px;
    overflow: hidden;
    background-color: #2589d0;
    font-size: .9em;
}

.breadcrumb-004 li {
    display: flex;
    align-items: center;
    position: relative;
    padding-right: 20px;
}

.breadcrumb-004 li:first-child a::before {
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: 4px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 20C20 20.5523 19.5523 21 19 21H5C4.44772 21 4 20.5523 4 20V11L1 11L11.3273 1.6115C11.7087 1.26475 12.2913 1.26475 12.6727 1.6115L23 11L20 11V20ZM11 13V19H13V13H11Z' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    vertical-align: text-bottom;
    content: '';
}

.breadcrumb-004 li:not(:last-child)::before,
.breadcrumb-004 li:not(:last-child)::after{
    position: absolute;
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    content:'';
}

.breadcrumb-004 li:not(:last-child)::before{
    right: 0;
    border-left: 10px solid #fff;
}

.breadcrumb-004 li:not(:last-child)::after{
    right: 2px;
    border-left: 10px solid #2589d0;
}

.breadcrumb-004 a {
    color: #fff;
    text-decoration: none;
}



.heading-29 {
    display: inline-block;
    position: relative;
    margin: calc(3.5em / 2) 0 calc(3.5em / 4) calc(3.5em / 2);
    color: #333333;
    line-height: 1;
}

.heading-29::before {
    position: absolute;
    bottom: calc(-3.5em / 4);
    left: calc(-3.5em / 2);
    z-index: -1;
    width: 3.5em;
    height: 3.5em;
    border-radius: 50%;
    background: #bbdbfb;
    content: '';
}



.heading-27 {
    display: flex;
    align-items: center;
    column-gap: 8px;
    color: #333333;
}

.heading-27::before {
    width: 0.8em;
    height: 0.4em;
    border-bottom: 4px solid #2589d0;
    border-left: 4px solid #2589d0;
    transform: rotate(-45deg) translate(2px, -2px);
    content: '';
}




.heading-23 {
    padding: .5em .7em;
    border-left: 5px solid #2589d0;
    border-bottom: 3px solid #d2d2d2;
    background-color: #f2f2f2;
    color: #333333;
}



.button-29 {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 200px;
    margin:0 auto;
    padding: .9em 2em;
    overflow: hidden;
    border: 1px solid #2589d0;
    border-radius: 5px;
    background-color: #fff;
    color: #2589d0;
    font-size: 1em;
}

.button-29:hover {
    background-color: transparent;
    color: #fff;
}

.button-29::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 0;
    height: 100%;
    background-color: #2589d0;
    content: '';
    transition: width .3s ease;
}

.button-29:hover::before {
    width: 100%;
}



.box-004 {
    display: flex;
    grid-gap: 0 .7em;
    margin: 0 auto;
    padding: 1em;
    border-radius: 5px;
    background-color: #ffebee;
    color: #333333;
}

.box-004::before {
    width: 24px;
    height: 24px;
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.8659 3.00017L22.3922 19.5002C22.6684 19.9785 22.5045 20.5901 22.0262 20.8662C21.8742 20.954 21.7017 21.0002 21.5262 21.0002H2.47363C1.92135 21.0002 1.47363 20.5525 1.47363 20.0002C1.47363 19.8246 1.51984 19.6522 1.60761 19.5002L11.1339 3.00017C11.41 2.52187 12.0216 2.358 12.4999 2.63414C12.6519 2.72191 12.7782 2.84815 12.8659 3.00017ZM10.9999 16.0002V18.0002H12.9999V16.0002H10.9999ZM10.9999 9.00017V14.0002H12.9999V9.00017H10.9999Z' fill='%23f06060'%3E%3C/path%3E%3C/svg%3E");
}

.box-004 p {
    margin: 0;
    padding: 0 0 0 .7em;
    border-left: 1px solid #f06060;
}



.heading-31 {
    position: relative;
    padding: .3em 0 .2em 1.5em;
    border-bottom: 3px solid #2589d0;
    color: #333333;
}

.heading-31::before {
    position: absolute;
    top: 0;
    left: .3em;
    transform: rotate(55deg);
    height: 11px;
    width: 12px;
    background: #2589d0;
    content: '';
}

.heading-31::after {
    position: absolute;
    transform: rotate(15deg);
    top: .6em;
    left: 0;
    height: 8px;
    width: 8px;
    background: #2589d0;
    content: '';
}



.box-007 {
    max-width: 100%;
    margin: 0 auto;
    border: 2px solid #ffb36b;
    border-radius: 5px;
    color: #333333;
}

.box-007 div {
    display: inline-flex;
    align-items: center;
    column-gap: 4px;
    position: relative;
    top: -13px;
    left: 10px;
    margin: 0 7px;
    padding: 0 8px;
    background: #fff;
    color: #ffb36b;
    font-weight: 600;
    vertical-align: top;
}

.box-007 div::before {
    width: 22px;
    height: 22px;
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12.8995 6.85453L17.1421 11.0972L7.24264 20.9967H3V16.754L12.8995 6.85453ZM14.3137 5.44032L16.435 3.319C16.8256 2.92848 17.4587 2.92848 17.8492 3.319L20.6777 6.14743C21.0682 6.53795 21.0682 7.17112 20.6777 7.56164L18.5563 9.68296L14.3137 5.44032Z' fill='%23ffb36b'%3E%3C/path%3E%3C/svg%3E");
}

.box-007 p {
    margin: 0;
    padding: 0 1.5em 1em;
}



.heading-33 {
    border-bottom: 3px solid #f2f2f2;
}

.heading-33 span {
    display: inline-block;
    position: relative;
    padding: 0 .4em .2em;
    color: #333333;
}

.heading-33 span::before {
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #2589d0;
    content: '';
}




    .fuchidori {
	font-weight: 900;
      color: #000;
      -webkit-text-stroke: 2px #FFF;
      text-stroke: 2px #FFF;
  paint-order: stroke;
    }




-webkit-text-stroke: 2px black;
  text-stroke: 2px black;
  paint-order: stroke;
}
